From f4d1d7e20163f093c6fc2f528887ddf96862457d Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 23 Apr 2026 21:00:00 +0000 Subject: [PATCH 1/2] Fix block schema errors and add MDI icon cache MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - section-header: replace invalid title/subtitle fields with intro (markdown) - contact.md: fix contact_form → contact-form type name - home.md + gallery.md: remove unsupported full_width field from video-background and image-background blocks - Add MDI icon SVGs to local cache (ferris-wheel, rotate-3d-variant, music-note, tune-variant, shield-check) to avoid runtime API fetches https://claude.ai/code/session_01JEo9nCdhXJ5GYaeMvNMixX --- pages/contact.md | 8 ++++--- pages/gallery.md | 23 ++++++++++--------- pages/home.md | 8 +++---- src/assets/icons/iconify/mdi/ferris-wheel.svg | 1 + src/assets/icons/iconify/mdi/music-note.svg | 1 + .../icons/iconify/mdi/rotate-3d-variant.svg | 1 + src/assets/icons/iconify/mdi/shield-check.svg | 1 + src/assets/icons/iconify/mdi/tune-variant.svg | 1 + 8 files changed, 26 insertions(+), 18 deletions(-) create mode 100644 src/assets/icons/iconify/mdi/ferris-wheel.svg create mode 100644 src/assets/icons/iconify/mdi/music-note.svg create mode 100644 src/assets/icons/iconify/mdi/rotate-3d-variant.svg create mode 100644 src/assets/icons/iconify/mdi/shield-check.svg create mode 100644 src/assets/icons/iconify/mdi/tune-variant.svg diff --git a/pages/contact.md b/pages/contact.md index 56f7113..b781144 100644 --- a/pages/contact.md +++ b/pages/contact.md @@ -8,10 +8,12 @@ eleventyNavigation: order: 2 blocks: - type: section-header - title: "Get in Touch" - subtitle: "Want to book EnteR 6.0 for your event? Have questions about the ride? Drop us a message." + intro: | + ## Get in Touch - - type: contact_form + Want to book EnteR 6.0 for your event? Have questions about the ride? Drop us a message. + + - type: contact-form content: | ## Book EnteR 6.0 diff --git a/pages/gallery.md b/pages/gallery.md index 368272a..6e31e42 100644 --- a/pages/gallery.md +++ b/pages/gallery.md @@ -8,7 +8,6 @@ meta_title: "Gallery - EnteR 6.0" meta_description: "Photos and videos of the EnteR 6.0 Extreme fairground ride." blocks: - type: video-background - full_width: true video_id: "fOdSi9Uaxds" content: | # Gallery @@ -17,14 +16,15 @@ blocks: video_title: "EnteR 6.0 Gallery" - type: image-background - full_width: true image: "src/images/IMG_2835.jpeg" image_alt: "EnteR 6.0 sound system full setup" content: " " - type: section-header - title: "THE SYSTEM" - subtitle: "Built for the road. Designed for impact." + intro: | + ## THE SYSTEM + + Built for the road. Designed for impact. - type: image-cards image_aspect_ratio: "4/3" @@ -40,14 +40,15 @@ blocks: description: "Mid and top end cabinets ready for deployment." - type: image-background - full_width: true image: "src/images/IMG_2860.jpeg" image_alt: "EnteR 6.0 panoramic view" content: " " - type: section-header - title: "ON THE ROAD" - subtitle: "From build to showground" + intro: | + ## ON THE ROAD + + From build to showground - type: image-cards image_aspect_ratio: "4/3" @@ -66,14 +67,15 @@ blocks: description: "System assembly on the ground." - type: image-background - full_width: true image: "src/images/IMG_2819.jpeg" image_alt: "EnteR 6.0 system close-up" content: " " - type: section-header - title: "THE DETAILS" - subtitle: "Every component purpose-built" + intro: | + ## THE DETAILS + + Every component purpose-built - type: image-cards image_aspect_ratio: "1/1" @@ -99,7 +101,6 @@ blocks: description: "Maximum output at the fair." - type: image-background - full_width: true image: "src/images/IMG_0808.jpeg" image_alt: "EnteR 6.0 system detail" content: " " diff --git a/pages/home.md b/pages/home.md index 7b19e18..2196373 100644 --- a/pages/home.md +++ b/pages/home.md @@ -6,15 +6,16 @@ eleventyNavigation: order: 1 blocks: - type: video-background - full_width: true video_id: "https://iframe.mediadelivery.net/embed/588034/72c13f1f-5200-4268-9061-0f45809df741?autoplay=true&loop=true&muted=true&preload=true&responsive=true" content: | ![Enter 6.0](/assets/logo.png) video_title: "EnteR 6.0 Extreme Ride" - type: section-header - title: "THE EXTREME" - subtitle: "Redefining the limits of excitement" + intro: | + ## THE EXTREME + + Redefining the limits of excitement - type: features items: @@ -35,7 +36,6 @@ blocks: description: "Manufactured in the UK by Tivoli Enterprises. Dual hydraulic and mechanical locking on every seat, continuously monitored by the onboard computer. Thorough daily inspections carried out and recorded." - type: video-background - full_width: true video_id: "https://iframe.mediadelivery.net/embed/588034/a79f990b-d7d7-4bd0-a7e3-af2c875b1580?autoplay=true&loop=true&muted=true&preload=true&responsive=true" content: | ## Coming to a fair near you diff --git a/src/assets/icons/iconify/mdi/ferris-wheel.svg b/src/assets/icons/iconify/mdi/ferris-wheel.svg new file mode 100644 index 0000000..32ed0f6 --- /dev/null +++ b/src/assets/icons/iconify/mdi/ferris-wheel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/iconify/mdi/music-note.svg b/src/assets/icons/iconify/mdi/music-note.svg new file mode 100644 index 0000000..f902f29 --- /dev/null +++ b/src/assets/icons/iconify/mdi/music-note.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/iconify/mdi/rotate-3d-variant.svg b/src/assets/icons/iconify/mdi/rotate-3d-variant.svg new file mode 100644 index 0000000..d80ffe0 --- /dev/null +++ b/src/assets/icons/iconify/mdi/rotate-3d-variant.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/iconify/mdi/shield-check.svg b/src/assets/icons/iconify/mdi/shield-check.svg new file mode 100644 index 0000000..9ba4ee6 --- /dev/null +++ b/src/assets/icons/iconify/mdi/shield-check.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/assets/icons/iconify/mdi/tune-variant.svg b/src/assets/icons/iconify/mdi/tune-variant.svg new file mode 100644 index 0000000..fc2f662 --- /dev/null +++ b/src/assets/icons/iconify/mdi/tune-variant.svg @@ -0,0 +1 @@ + \ No newline at end of file From dd76b4928fba3e626d3bc5fd07680dac4dacf8cd Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 23 Apr 2026 21:03:02 +0000 Subject: [PATCH 2/2] Sync scripts from chobble-client reference repo - Replace rsync shell dependency with pure JS copyDir/mergeTemplateAndSource (fixes build on systems without rsync) - Move templateExcludes/sourceExcludes to consts.js; add _site to sourceExcludes to prevent copying stale output into dev build - Add new scripts: ci-merge.js, fetch-instagram-posts.js - Update test.js: set PLACEHOLDER_IMAGES=1, sync js-toolkit from submodule if present - Update update-pages.js: support copyLocalPageLayouts and --regenerate flag - Update update-scripts.js: use copyDir instead of shell rsync https://claude.ai/code/session_01JEo9nCdhXJ5GYaeMvNMixX --- scripts/ci-merge.js | 26 +++++++ scripts/consts.js | 26 +++++++ scripts/fetch-instagram-posts.js | 118 +++++++++++++++++++++++++++++++ scripts/prepare-dev.js | 57 +++++++-------- scripts/test.js | 10 +++ scripts/update-pages.js | 55 ++++++++++---- scripts/update-scripts.js | 12 ++-- scripts/utils.js | 107 +++++++++++++++++++++++----- 8 files changed, 348 insertions(+), 63 deletions(-) create mode 100644 scripts/ci-merge.js create mode 100644 scripts/fetch-instagram-posts.js diff --git a/scripts/ci-merge.js b/scripts/ci-merge.js new file mode 100644 index 0000000..dd3a976 --- /dev/null +++ b/scripts/ci-merge.js @@ -0,0 +1,26 @@ +import { resolve } from "node:path"; +import { sourceExcludes, templateExcludes } from "./consts.js"; +import { fs, mergeTemplateAndSource } from "./utils.js"; + +const [templateDir, sourceDir, combinedDir] = process.argv.slice(2); + +if (!templateDir || !sourceDir || !combinedDir) { + console.error( + "Usage: bun scripts/ci-merge.js