@riverbankcms/sdk 0.126.0 → 0.128.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/dist/{PreviewEditorSidebar-DcYJxTgc.mjs → PreviewEditorSidebar-Dbvb7GIr.mjs} +64 -68
  2. package/dist/{PreviewEditorUI-Ctt1yTJr.mjs → PreviewEditorUI-e9O9l20X.mjs} +3 -3
  3. package/dist/{PreviewQueryProvider-DgFDIwvK.mjs → PreviewQueryProvider-B1kbhaJD.mjs} +1 -1
  4. package/dist/SdkPreviewModeRuntime-BZHt6e9w.mjs +11006 -0
  5. package/dist/{SiteChromeCustomizeContext-C87qlKWw.mjs → SiteChromeCustomizeContext-CvuGbHJX.mjs} +51247 -20733
  6. package/dist/_dts/ai/src/contracts/proposals.d.ts +486 -36
  7. package/dist/_dts/api/src/bookingClosures.d.ts +19 -3
  8. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +4 -3
  9. package/dist/_dts/api/src/bookingRecords.d.ts +0 -13
  10. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +2 -2
  11. package/dist/_dts/api/src/communications.d.ts +2 -1
  12. package/dist/_dts/api/src/contactFormSummary.d.ts +15 -0
  13. package/dist/_dts/api/src/contentRuntime.d.ts +3 -10
  14. package/dist/_dts/api/src/endpoints.d.ts +1 -1
  15. package/dist/_dts/api/src/footerSettings.d.ts +11 -0
  16. package/dist/_dts/api/src/index.d.ts +2 -1
  17. package/dist/_dts/api/src/occurrenceScheduling.d.ts +48 -0
  18. package/dist/_dts/api/src/participantMessaging.d.ts +5 -3
  19. package/dist/_dts/api/src/publicExperience/siteEndpoints.d.ts +7 -0
  20. package/dist/_dts/api/src/sdkContracts.d.ts +7 -5
  21. package/dist/_dts/api/src/siteOperations.d.ts +12 -3
  22. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +3 -2
  23. package/dist/_dts/block-form/src/backend/store-backend.d.ts +2 -1
  24. package/dist/_dts/block-form/src/blockDraftSaveability.d.ts +1 -0
  25. package/dist/_dts/blocks/src/client/form.d.ts +1 -0
  26. package/dist/_dts/blocks/src/client/newsletter-form.d.ts +1 -0
  27. package/dist/_dts/blocks/src/client/site-chrome.d.ts +1 -0
  28. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +4 -8
  29. package/dist/_dts/blocks/src/index.d.ts +3 -2
  30. package/dist/_dts/blocks/src/lib/media.d.ts +267 -0
  31. package/dist/_dts/blocks/src/rendering/server.d.ts +1 -1
  32. package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +41 -0
  33. package/dist/_dts/blocks/src/system/blocks/newsletter-signup-destination.d.ts +14 -23
  34. package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +1 -1
  35. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +109 -23
  36. package/dist/_dts/blocks/src/system/constants/buttonRoles.d.ts +0 -13
  37. package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
  38. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +42 -108
  39. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +21 -54
  40. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/logic.d.ts +1 -1
  41. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationSurface.d.ts +26 -0
  42. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +8 -0
  43. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +21 -0
  44. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +4 -4
  45. package/dist/_dts/blocks/src/system/runtime/nodes/mergeResolveImageUrlContexts.d.ts +7 -0
  46. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +29 -78
  47. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.server.d.ts +1 -1
  48. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.submission.d.ts +3 -6
  49. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +27 -8
  50. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +2 -2
  51. package/dist/_dts/content-editor/src/FooterComposerOverview.d.ts +21 -0
  52. package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +3 -1
  53. package/dist/_dts/content-editor/src/FooterEngagementEditorFields.d.ts +31 -0
  54. package/dist/_dts/content-editor/src/FooterEngagementEditorPanel.d.ts +17 -0
  55. package/dist/_dts/content-editor/src/footerComposer.d.ts +3 -0
  56. package/dist/_dts/content-editor/src/footerEngagementDraft.d.ts +57 -0
  57. package/dist/_dts/content-editor/src/footerEngagementEditor.d.ts +11 -0
  58. package/dist/_dts/content-editor/src/footerPreviewRuntime.d.ts +13 -0
  59. package/dist/_dts/content-editor/src/index.d.ts +1 -0
  60. package/dist/_dts/content-editor/src/ui/blockValidationManifestRegistry.d.ts +17 -0
  61. package/dist/_dts/content-editor/src/ui/blockValidationView.d.ts +1 -1
  62. package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +4 -0
  63. package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +35 -0
  64. package/dist/_dts/core/src/footer-arrangement.d.ts +2 -0
  65. package/dist/_dts/core/src/footer-composition-types.d.ts +118 -0
  66. package/dist/_dts/core/src/footer-composition.d.ts +7 -116
  67. package/dist/_dts/core/src/footer-engagement.d.ts +30 -0
  68. package/dist/_dts/core/src/index.d.ts +4 -0
  69. package/dist/_dts/core/src/newsletter-signup-destination.d.ts +38 -0
  70. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +200 -159
  71. package/dist/_dts/db/src/index.d.ts +1 -0
  72. package/dist/_dts/db/src/schemas/forms.d.ts +72 -2
  73. package/dist/_dts/db/src/schemas/standard-contact.d.ts +114 -0
  74. package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +4 -0
  75. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockValidationManifests.d.ts +26 -0
  76. package/dist/_dts/editor-blocks/src/widgets/rich-text/imageInsert.d.ts +3 -3
  77. package/dist/_dts/media-editor/src/MediaEditor.d.ts +2 -2
  78. package/dist/_dts/media-editor/src/context.d.ts +1 -2
  79. package/dist/_dts/media-editor/src/index.d.ts +3 -1
  80. package/dist/_dts/media-editor/src/mediaSelection.d.ts +32 -0
  81. package/dist/_dts/media-editor/src/types.d.ts +3 -1
  82. package/dist/_dts/media-editor/src/useMediaSelection.d.ts +26 -0
  83. package/dist/_dts/preview-next/src/client/blocks/previewBatchLoaderParams.d.ts +6 -0
  84. package/dist/_dts/preview-next/src/client/index.d.ts +2 -0
  85. package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +2 -5
  86. package/dist/_dts/preview-next/src/client/preview/EntrySlotBlockEditorPanel.d.ts +2 -5
  87. package/dist/_dts/preview-next/src/client/preview/HeaderMenuControls.d.ts +12 -0
  88. package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +2 -5
  89. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +2 -4
  90. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +13 -2
  91. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +8 -4
  92. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +4 -49
  93. package/dist/_dts/preview-next/src/client/preview/headerInteractionPaletteSurfaceState.d.ts +8 -0
  94. package/dist/_dts/preview-next/src/client/preview/previewThemeRoles.d.ts +15 -0
  95. package/dist/_dts/preview-next/src/client/preview/siteChromeCustomizeTypes.d.ts +54 -0
  96. package/dist/_dts/preview-next/src/client/preview/siteChromeLookRows.d.ts +13 -3
  97. package/dist/_dts/preview-next/src/client/preview/siteChromeNavQuickControlHistory.d.ts +3 -0
  98. package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +6 -3
  99. package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +6 -5
  100. package/dist/_dts/sdk/src/cli/commands/push/execute/footer.d.ts +9 -0
  101. package/dist/_dts/sdk/src/cli/content/footerFile.d.ts +10 -0
  102. package/dist/_dts/sdk/src/cli/content/reader.d.ts +3 -5
  103. package/dist/_dts/sdk/src/cli/site-commands/footerCommands.d.ts +15 -3
  104. package/dist/_dts/sdk/src/client/combineAbortSignals.d.ts +2 -0
  105. package/dist/_dts/sdk/src/client/management/types.d.ts +6 -15
  106. package/dist/_dts/sdk/src/client/types.d.ts +10 -2
  107. package/dist/_dts/sdk/src/client/wholeSeriesReadOperations.d.ts +11 -0
  108. package/dist/_dts/sdk/src/config/types.d.ts +1 -1
  109. package/dist/_dts/sdk/src/config/validation.d.ts +3 -0
  110. package/dist/_dts/sdk/src/contracts/event-registration-content.d.ts +16 -0
  111. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +4 -15
  112. package/dist/_dts/sdk/src/public-api/contracts.d.ts +4 -18
  113. package/dist/_dts/sdk/src/public-api/teamMemberContracts.d.ts +17 -0
  114. package/dist/_dts/sdk/src/public-api/wholeSeriesContracts.d.ts +2 -0
  115. package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +7 -0
  116. package/dist/_dts/sdk/src/rendering/index.d.ts +5 -3
  117. package/dist/_dts/sdk/src/rendering/islands/types.d.ts +2 -2
  118. package/dist/_dts/sdk/src/rendering/mediaAssets.d.ts +8 -2
  119. package/dist/_dts/sdk/src/version.d.ts +1 -1
  120. package/dist/_dts/site-commands/src/commandContract.d.ts +8 -1
  121. package/dist/_dts/site-commands/src/commands.d.ts +16 -2
  122. package/dist/_dts/theme-core/src/buttons/effects/presets/background.d.ts +1 -1
  123. package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +0 -18
  124. package/dist/_dts/theme-core/src/buttons/types.d.ts +1 -3
  125. package/dist/_dts/theme-core/src/header/containerSchema.d.ts +20 -0
  126. package/dist/_dts/theme-core/src/header/generateHeaderCss.d.ts +1 -1
  127. package/dist/_dts/theme-core/src/header/interactionPalette.d.ts +14 -0
  128. package/dist/_dts/theme-core/src/header/legacyNavLinkStyle.d.ts +3 -0
  129. package/dist/_dts/theme-core/src/header/paintTargets.d.ts +31 -0
  130. package/dist/_dts/theme-core/src/header/scrollTreatment.d.ts +11 -0
  131. package/dist/_dts/theme-core/src/header/surfaceRules.d.ts +8 -0
  132. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +15 -0
  133. package/dist/_dts/theme-core/src/palette/colors.d.ts +1 -1
  134. package/dist/_dts/theme-core/src/schema.d.ts +67 -19
  135. package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +3 -51
  136. package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +4 -11
  137. package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +3 -51
  138. package/dist/_dts/theme-core/src/site-styles/headerInteractionPalette.d.ts +32 -0
  139. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +19 -106
  140. package/dist/_dts/theme-core/src/site-styles/headerOpeningForeground.d.ts +22 -0
  141. package/dist/_dts/theme-core/src/site-styles/headerOpeningSection.d.ts +2 -0
  142. package/dist/_dts/theme-core/src/site-styles/headerStyleParts.d.ts +4 -0
  143. package/dist/_dts/theme-core/src/site-styles/index.d.ts +3 -0
  144. package/dist/_dts/theme-core/src/site-styles/lookOptionGroups.d.ts +24 -0
  145. package/dist/_dts/theme-core/src/site-styles/lookResolution.d.ts +1 -2
  146. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +4 -22
  147. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorOptions.d.ts +21 -0
  148. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +1 -1
  149. package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +4 -1
  150. package/dist/cli/index.mjs +6272 -5706
  151. package/dist/client/{courseRegistration-BcemLAdN.mjs → CourseRegistrationWizard-xRmA7REV.mjs} +329 -49
  152. package/dist/client/{DiscountCodeDisclosure-DS0AuFWW.mjs → DiscountCodeDisclosure-B9vriL5C.mjs} +1 -1
  153. package/dist/client/{EventCombined.client-DtMxLr7q.mjs → EventCombined.client-BgVnVTlz.mjs} +2 -2
  154. package/dist/client/{EventListing.client-BdLSRNg1.mjs → EventListing.client-CqdsO7jO.mjs} +2 -2
  155. package/dist/client/{LeafletStaticMap-BrpC6vsT.mjs → LeafletStaticMap-CKPxot9M.mjs} +1 -1
  156. package/dist/client/{StepIndicator-CBYPFVoy.mjs → StepIndicator-DGCYuBJ1.mjs} +2 -2
  157. package/dist/client/{accordion-BqqwPJWM.mjs → accordion-BfN5Eqd-.mjs} +1 -1
  158. package/dist/client/{bookingForm-SneP3yxC.mjs → bookingForm-DOvCpBFP.mjs} +5 -5
  159. package/dist/client/bookings.mjs +126 -23
  160. package/dist/client/{carousel-BTIR9L3I.mjs → carousel-DPNmiH0f.mjs} +1 -1
  161. package/dist/client/{cart-bqiqd8SX.mjs → cart--egVXlrR.mjs} +3 -3
  162. package/dist/client/{checkout-WbTFV5v4.mjs → checkout-DywWtMcq.mjs} +3 -3
  163. package/dist/client/client.mjs +6111 -5794
  164. package/dist/client/courseRegistration-Dk9qFVwt.mjs +46 -0
  165. package/dist/client/{eventCalendar-CsxIw0V_.mjs → eventCalendar-Bkz2HjlS.mjs} +4 -4
  166. package/dist/client/{eventCombined-B6XMoHfa.mjs → eventCombined-D4kipYWg.mjs} +2 -2
  167. package/dist/client/{eventDetails-BJaoPPfo.mjs → eventDetails-Dz_5ix2Q.mjs} +56 -35
  168. package/dist/client/{eventListing-DgwdYHRT.mjs → eventListing-D0vm-zST.mjs} +2 -2
  169. package/dist/client/{eventRegistration-C0O3folu.mjs → eventRegistration-Cw1E4Q4p.mjs} +58 -6
  170. package/dist/client/{form-Bk9txGFt.mjs → form-C2Zf1n3K.mjs} +1 -1
  171. package/dist/client/{headerSection-yIBt0yTv.mjs → headerSection-CP05gzdc.mjs} +2 -2
  172. package/dist/client/hooks.mjs +1013 -935
  173. package/dist/client/{locationMap-C-3KIpv-.mjs → locationMap-Cl3x9PYJ.mjs} +2 -2
  174. package/dist/client/{newsletterForm-CzB8g8h2.mjs → newsletterForm-DyEJoClm.mjs} +26 -20
  175. package/dist/client/{pricing-C1QeDes_.mjs → pricing-DGuNR1W4.mjs} +1 -1
  176. package/dist/client/{productDetail-w7SBp5uc.mjs → productDetail-Cq-HrGew.mjs} +3 -3
  177. package/dist/client/{productList-D0tGKHGf.mjs → productList-DbB3jwqd.mjs} +3 -3
  178. package/dist/client/{propsDecoder-Bcin2DB3.mjs → propsDecoder-CiTuhUwY.mjs} +257 -142
  179. package/dist/client/rendering/client.mjs +1342 -1122
  180. package/dist/client/rendering/islands.mjs +18 -18
  181. package/dist/client/rendering.mjs +6622 -6321
  182. package/dist/client/{scrollToBlock-h-o_STf_.mjs → scrollToBlock-CShkRqab.mjs} +1 -1
  183. package/dist/client/{shop-BGzmL8O_.mjs → shop-Cu4Ib-ZA.mjs} +5 -5
  184. package/dist/client/{shop-commerce-lX8QxjX-.mjs → shop-commerce-BzpsOdh7.mjs} +4 -4
  185. package/dist/client/{shop-commerce-store-CEurARtu.mjs → shop-commerce-store-DaE7Fhj8.mjs} +1 -1
  186. package/dist/client/{shopShared-DXxH8xxw.mjs → shopShared-cF0c20vB.mjs} +2 -2
  187. package/dist/client/{useEventFilters-B591g9vd.mjs → useEventFilters-QZ3HMgaJ.mjs} +2 -2
  188. package/dist/client/{usePolling-BvnChV4m.mjs → usePolling-BKf0GcE-.mjs} +2 -2
  189. package/dist/preview-next/before-render.mjs +1 -1
  190. package/dist/preview-next/client/runtime.mjs +4 -4
  191. package/dist/preview-next/middleware.mjs +1 -1
  192. package/dist/{previewAuthStore-Dev9CdG9.mjs → previewAuthStore-BesgU5Xu.mjs} +1 -1
  193. package/dist/{sdk-runtime-M__i3Jce.mjs → sdk-runtime-Cn_QSCOg.mjs} +2 -2
  194. package/dist/{separator-VSlnI9bc.mjs → separator-CEoGABRc.mjs} +1 -1
  195. package/dist/server/components.mjs +1750 -1614
  196. package/dist/server/config-validation.mjs +1010 -935
  197. package/dist/server/config.mjs +1010 -935
  198. package/dist/server/data.mjs +1013 -935
  199. package/dist/server/index.mjs +40 -16
  200. package/dist/server/next.mjs +1790 -1632
  201. package/dist/server/page-converter.mjs +1012 -938
  202. package/dist/server/prebuild.mjs +1 -1
  203. package/dist/server/rendering/server.mjs +1746 -1601
  204. package/dist/server/rendering.mjs +1759 -1615
  205. package/dist/server/routing.mjs +1123 -975
  206. package/dist/server/server.mjs +1053 -951
  207. package/dist/server/theme-bridge.mjs +151 -118
  208. package/dist/server/theme.mjs +111 -23
  209. package/package.json +1 -1
  210. package/dist/SdkPreviewModeRuntime-CvW1vdQ4.mjs +0 -39468
  211. package/dist/_dts/editor-blocks/src/widgets/rich-text/ensureRichTextImageAssetIdentifier.d.ts +0 -8
  212. package/dist/client/MagicLinkForm-Bt3IuLMy.mjs +0 -327
@@ -2305,7 +2305,16 @@ var init_public_profile = __esmMin((() => {}));
2305
2305
  //#endregion
2306
2306
  //#region ../core/src/rich-text.ts
2307
2307
  var init_rich_text = __esmMin((() => {}));
2308
- var init_footer_composition = __esmMin((() => {
2308
+ //#endregion
2309
+ //#region ../core/src/newsletter-signup-destination.ts
2310
+ function parseNewsletterSignupDestinationProvider(value) {
2311
+ return value === "riverbank" || value === "mailchimp" ? value : null;
2312
+ }
2313
+ var init_newsletter_signup_destination$1 = __esmMin((() => {}));
2314
+ //#endregion
2315
+ //#region ../core/src/footer-engagement.ts
2316
+ var init_footer_engagement = __esmMin((() => {}));
2317
+ var init_footer_arrangement = __esmMin((() => {
2309
2318
  new Map([
2310
2319
  "brand",
2311
2320
  "supporting-text",
@@ -2314,11 +2323,20 @@ var init_footer_composition = __esmMin((() => {
2314
2323
  "business-address",
2315
2324
  "contact",
2316
2325
  "opening-hours",
2326
+ "engagement",
2317
2327
  "legal-navigation",
2318
2328
  "legal"
2319
2329
  ].map((kind, index) => [kind, index]));
2320
2330
  }));
2321
2331
  //#endregion
2332
+ //#region ../core/src/footer-composition.ts
2333
+ var init_footer_composition = __esmMin((() => {
2334
+ init_footer_arrangement();
2335
+ }));
2336
+ //#endregion
2337
+ //#region ../core/src/footer-composition-types.ts
2338
+ var init_footer_composition_types = __esmMin((() => {}));
2339
+ //#endregion
2322
2340
  //#region ../core/src/number-input.ts
2323
2341
  var init_number_input = __esmMin((() => {}));
2324
2342
  //#endregion
@@ -2399,6 +2417,10 @@ var init_src$4 = __esmMin((() => {
2399
2417
  init_public_profile();
2400
2418
  init_rich_text();
2401
2419
  init_footer_composition();
2420
+ init_footer_arrangement();
2421
+ init_footer_composition_types();
2422
+ init_footer_engagement();
2423
+ init_newsletter_signup_destination$1();
2402
2424
  init_number_input();
2403
2425
  init_field_errors();
2404
2426
  init_form_submission_preview();
@@ -4090,7 +4112,7 @@ function canonicalPaletteHashInput(colors, mode) {
4090
4112
  return `${mode}|${paletteColorFingerprint(colors)}`;
4091
4113
  }
4092
4114
  /**
4093
- * The shared TypeScript/SQL protocol. Do not reorder roles: the order comes
4115
+ * Stable curated-catalogue identity. Do not reorder roles: the order comes
4094
4116
  * from PALETTE_TOKEN_NAMES through canonicalPaletteHashInput.
4095
4117
  */
4096
4118
  function paletteValueKey(colors, mode) {
@@ -5649,11 +5671,9 @@ var init_types$13 = __esmMin((() => {
5649
5671
  "secondary",
5650
5672
  "outline",
5651
5673
  "ghost",
5652
- "link",
5653
- "tertiary",
5654
5674
  "accent"
5655
5675
  ];
5656
- buttonVariantIdSchema = z$1.string().min(1).max(50).regex(/^[a-z0-9-]+$/, "Button variant IDs may contain lowercase letters, numbers, and hyphens only");
5676
+ buttonVariantIdSchema = z$1.string().min(1).max(50).regex(/^[a-z0-9-]+$/, "Button variant IDs may contain lowercase letters, numbers, and hyphens only").refine((value) => value !== "link" && value !== "tertiary", { message: "Retired button role IDs are not valid variant IDs" });
5657
5677
  opaqueButtonColourTokenSchema = themeColorTokenSchema.refine((value) => parseOpaqueButtonColourToken(value) !== null, "Button colour tokens must be opaque").transform((value) => {
5658
5678
  const token = parseOpaqueButtonColourToken(value);
5659
5679
  if (token === null) throw new Error("Invariant: opaque button token passed its schema");
@@ -6049,8 +6069,66 @@ var init_classNames = __esmMin((() => {
6049
6069
  init_types$13();
6050
6070
  }));
6051
6071
  //#endregion
6072
+ //#region ../theme-core/src/buttons/effects/presets/background.ts
6073
+ function shadeBackgroundEffect(config) {
6074
+ return {
6075
+ id: config.id,
6076
+ name: config.name,
6077
+ description: config.description,
6078
+ category: "background",
6079
+ pseudoElement: "none",
6080
+ applicableTo: ["button"],
6081
+ customizableOption: {
6082
+ name: "amount",
6083
+ type: "select",
6084
+ label: config.label,
6085
+ default: 100,
6086
+ options: [
6087
+ 0,
6088
+ 100,
6089
+ 200,
6090
+ 300,
6091
+ 400,
6092
+ 500,
6093
+ 600,
6094
+ 700,
6095
+ 800,
6096
+ 900
6097
+ ]
6098
+ },
6099
+ isApplicable: (buttonConfig) => buttonConfig.background.type === "solid",
6100
+ generateCSS: ({ themeId, variantId, options, tokens, buttonConfig }) => {
6101
+ if (buttonConfig.background.type !== "solid") return "";
6102
+ const amount = (options.amount || 100) * config.shadeDirection;
6103
+ const baseToken = buttonConfig.background.colorToken ?? "primary-500";
6104
+ return `
6105
+ :where([data-theme-scope="${themeId}"]) .${variantId}:hover {
6106
+ background-color: ${tokens.getColor(tokens.adjustShade(baseToken, amount))};
6107
+ }
6108
+ `;
6109
+ }
6110
+ };
6111
+ }
6112
+ var init_background$3 = __esmMin((() => {
6113
+ shadeBackgroundEffect({
6114
+ id: "darken-background",
6115
+ name: "Darken on Hover",
6116
+ description: "Darkens the background color on hover",
6117
+ label: "Darken Amount (shade step)",
6118
+ shadeDirection: 1
6119
+ });
6120
+ shadeBackgroundEffect({
6121
+ id: "lighten-background",
6122
+ name: "Lighten on Hover",
6123
+ description: "Lightens the background color on hover",
6124
+ label: "Lighten Amount (shade step)",
6125
+ shadeDirection: -1
6126
+ });
6127
+ }));
6128
+ //#endregion
6052
6129
  //#region ../theme-core/src/buttons/effects/registry.ts
6053
6130
  var init_registry$8 = __esmMin((() => {
6131
+ init_background$3();
6054
6132
  init_effectClassification();
6055
6133
  }));
6056
6134
  //#endregion
@@ -8881,6 +8959,83 @@ var init_tokenOrColor = __esmMin((() => {
8881
8959
  ]);
8882
8960
  }));
8883
8961
  //#endregion
8962
+ //#region ../theme-core/src/responsive/breakpoints.ts
8963
+ function mqUp(px) {
8964
+ return `(min-width: ${px}px)`;
8965
+ }
8966
+ function mqDown(px) {
8967
+ return `(max-width: ${px}px)`;
8968
+ }
8969
+ function mqBetween(minPx, maxPx) {
8970
+ return `${mqUp(minPx)} and ${mqDown(maxPx)}`;
8971
+ }
8972
+ var BREAKPOINT_LG, BREAKPOINT_XL, BREAKPOINT_LG_DOWN;
8973
+ var init_breakpoints = __esmMin((() => {
8974
+ BREAKPOINT_LG = 1024;
8975
+ BREAKPOINT_XL = 1280;
8976
+ BREAKPOINT_LG_DOWN = BREAKPOINT_LG - 1;
8977
+ mqUp(640);
8978
+ mqUp(768);
8979
+ mqUp(BREAKPOINT_LG);
8980
+ mqUp(BREAKPOINT_XL);
8981
+ mqDown(639);
8982
+ mqDown(767);
8983
+ mqDown(BREAKPOINT_LG_DOWN);
8984
+ mqBetween(640, BREAKPOINT_LG_DOWN);
8985
+ mqDown(640);
8986
+ mqDown(768);
8987
+ }));
8988
+ //#endregion
8989
+ //#region ../theme-core/src/header/paintTargets.ts
8990
+ var init_paintTargets = __esmMin((() => {
8991
+ init_breakpoints();
8992
+ }));
8993
+ //#endregion
8994
+ //#region ../theme-core/src/header/scrollTreatment.ts
8995
+ var headerScrollTreatmentSchema;
8996
+ var init_scrollTreatment = __esmMin((() => {
8997
+ init_paintTargets();
8998
+ headerScrollTreatmentSchema = z$1.discriminatedUnion("kind", [z$1.object({
8999
+ kind: z$1.literal("contrast-glass"),
9000
+ backgroundTone: z$1.enum(["light", "dark"])
9001
+ })]).optional();
9002
+ }));
9003
+ //#endregion
9004
+ //#region ../theme-core/src/header/containerSchema.ts
9005
+ var headerContainerSchema;
9006
+ var init_containerSchema = __esmMin((() => {
9007
+ headerContainerSchema = z$1.object({
9008
+ rounded: z$1.enum([
9009
+ "none",
9010
+ "sm",
9011
+ "md",
9012
+ "lg",
9013
+ "xl",
9014
+ "2xl"
9015
+ ]).default("xl"),
9016
+ border: z$1.boolean().default(true),
9017
+ shadow: z$1.boolean().default(true),
9018
+ padding: z$1.enum([
9019
+ "sm",
9020
+ "md",
9021
+ "lg"
9022
+ ]).default("md"),
9023
+ tint: z$1.string().nullable().optional(),
9024
+ opacity: z$1.number().min(0).max(1).default(.12)
9025
+ }).optional();
9026
+ }));
9027
+ //#endregion
9028
+ //#region ../theme-core/src/header/interactionPalette.ts
9029
+ var headerInteractionPaletteValues, headerInteractionPaletteSchema;
9030
+ var init_interactionPalette = __esmMin((() => {
9031
+ headerInteractionPaletteValues = [
9032
+ "primary",
9033
+ "secondary",
9034
+ "accent"
9035
+ ];
9036
+ headerInteractionPaletteSchema = z$1.enum(headerInteractionPaletteValues);
9037
+ }));
9038
+ //#endregion
8884
9039
  //#region ../theme-core/src/schema.ts
8885
9040
  /**
8886
9041
  * Normalises the legacy `navTypography` font-role alias into the canonical
@@ -8896,7 +9051,7 @@ function normaliseHeaderNavFontRole(header) {
8896
9051
  navFontRole: navTypography
8897
9052
  } : rest;
8898
9053
  }
8899
- var axesSchema, typographyStyleSchema, bodyTypographyStyleSchema, headingSizeSchema, headingTypographyOverridesSchema, headingTypographyStyleSchema, proseLinkUnderlineStyleSchema, proseLinkUnderlineThicknessSchema, proseLinkUnderlineOffsetSchema, proseLinkStyleSchema, semanticSpacingSchema, boxRoundedSchema, boxBackgroundOverlaySchema, boxBackgroundSchema, noHeadingDecorationSchema, visibleHeadingDecorationSchema, headingDecorationSchema, headingDecorationOverrideSchema, accordionIconTreatmentSchema, sectionStylesOverrideSchema, containerStylesOverrideSchema, cardBorderOverrideSchema, cardStylesOverrideSchema, blockStyleOverridesSchema, blockThemeOverrideSchema, typographyScaleSchema, eyebrowTypographyStyleSchema, typographySchema, spaceSchema, corners, shadow, border, motion, inputStyle, headerVariant, headerPositioning, headerNavStyle, navFontWeight, headerMaxWidth, headerBarFrame, headerContainerSchema, headerBorderSchema, logoStyleSchema, headerLogoTextSchema, navEffectsSchema, dropdownStyleSchema, headerCtaGapSchema, headerCtaTreatmentSchema, navContainerSchema, headerBackgroundSchema, headerSchema, footerVariant, footerMaxWidth, footerMode, footerNavLayoutMode, footerNavLayoutAlign, footerSpacing, footerLogoPlacement, footerLogoSize, footerLogoMaxHeight, footerBottomTextLinkStyleSchema, footerBottomBarSchema, footerNavLayoutSchema, footerLogoSchema, footerSchema, containerPaddingPresetSchema, layoutSchema, heroTypographySizeSchema, heroTypographyLineHeightSchema, heroResponsiveTypographySchema, heroTypographySchema, heroSchema, bodyTextIntroTypographySizeSchema, bodyTextSchema, gradientsSchema, testimonialQuoteTreatmentSchema, themeSchema;
9054
+ var axesSchema, typographyStyleSchema, bodyTypographyStyleSchema, headingSizeSchema, headingTypographyOverridesSchema, headingTypographyStyleSchema, proseLinkUnderlineStyleSchema, proseLinkUnderlineThicknessSchema, proseLinkUnderlineOffsetSchema, proseLinkStyleSchema, semanticSpacingSchema, boxRoundedSchema, boxBackgroundOverlaySchema, boxBackgroundSchema, noHeadingDecorationSchema, visibleHeadingDecorationSchema, headingDecorationSchema, headingDecorationOverrideSchema, accordionIconTreatmentSchema, sectionStylesOverrideSchema, containerStylesOverrideSchema, cardBorderOverrideSchema, cardStylesOverrideSchema, blockStyleOverridesSchema, blockThemeOverrideSchema, typographyScaleSchema, eyebrowTypographyStyleSchema, typographySchema, spaceSchema, corners, shadow, border, motion, inputStyle, headerVariant, headerPositioning, headerNavStyle, navFontWeight, headerMaxWidth, headerBarFrame, headerBorderSchema, logoStyleSchema, headerLogoTextSchema, navEffectsSchema, dropdownStyleSchema, headerCtaGapSchema, headerCtaTreatmentSchema, navContainerSchema, headerBackgroundSchema, headerSchema, footerVariant, footerMaxWidth, footerMode, footerNavLayoutMode, footerNavLayoutAlign, footerSpacing, footerLogoPlacement, footerLogoSize, footerLogoMaxHeight, footerBottomTextLinkStyleSchema, footerBottomBarSchema, footerNavLayoutSchema, footerLogoSchema, footerSchema, containerPaddingPresetSchema, layoutSchema, heroTypographySizeSchema, heroTypographyLineHeightSchema, heroResponsiveTypographySchema, heroTypographySchema, heroSchema, bodyTextIntroTypographySizeSchema, bodyTextSchema, gradientsSchema, testimonialQuoteTreatmentSchema, themeSchema;
8900
9055
  var init_schema$2 = __esmMin((() => {
8901
9056
  init_media$3();
8902
9057
  init_schema$3();
@@ -8914,6 +9069,9 @@ var init_schema$2 = __esmMin((() => {
8914
9069
  init_rawStyleFields();
8915
9070
  init_themeColorTokens();
8916
9071
  init_tokenOrColor();
9072
+ init_scrollTreatment();
9073
+ init_containerSchema();
9074
+ init_interactionPalette();
8917
9075
  axesSchema = z$1.object({
8918
9076
  tone: z$1.enum([
8919
9077
  "minimal",
@@ -9321,25 +9479,6 @@ var init_schema$2 = __esmMin((() => {
9321
9479
  ]);
9322
9480
  headerMaxWidth = z$1.enum(["container", "full"]);
9323
9481
  headerBarFrame = z$1.enum(["full-bleed", "inset-shell"]);
9324
- headerContainerSchema = z$1.object({
9325
- rounded: z$1.enum([
9326
- "none",
9327
- "sm",
9328
- "md",
9329
- "lg",
9330
- "xl",
9331
- "2xl"
9332
- ]).default("xl"),
9333
- border: z$1.boolean().default(true),
9334
- shadow: z$1.boolean().default(true),
9335
- padding: z$1.enum([
9336
- "sm",
9337
- "md",
9338
- "lg"
9339
- ]).default("md"),
9340
- tint: z$1.string().nullable().optional(),
9341
- opacity: z$1.number().min(0).max(1).default(.12)
9342
- }).optional();
9343
9482
  headerBorderSchema = componentBorderSchema.extend({ position: z$1.enum([
9344
9483
  "bottom",
9345
9484
  "top",
@@ -9462,6 +9601,7 @@ var init_schema$2 = __esmMin((() => {
9462
9601
  shrinkOnScroll: z$1.boolean(),
9463
9602
  maxWidth: headerMaxWidth,
9464
9603
  barFrame: headerBarFrame.optional(),
9604
+ scrollTreatment: headerScrollTreatmentSchema,
9465
9605
  logoOverride: mediaSchema$1.nullable().optional(),
9466
9606
  background: headerBackgroundSchema.default({
9467
9607
  type: "color",
@@ -9474,6 +9614,7 @@ var init_schema$2 = __esmMin((() => {
9474
9614
  navFontRole: z$1.enum(["body", "heading"]).optional(),
9475
9615
  navTypography: z$1.enum(["body", "heading"]).optional(),
9476
9616
  navTextSize: navLinkStyleSchema.shape.textSize,
9617
+ interactionPalette: headerInteractionPaletteSchema.optional(),
9477
9618
  navPlacement: z$1.enum(["end", "center"]).optional(),
9478
9619
  container: headerContainerSchema,
9479
9620
  border: headerBorderSchema,
@@ -9750,781 +9891,679 @@ var init_schema$2 = __esmMin((() => {
9750
9891
  //#region ../theme-core/src/site-styles/accessibleSurfaces.ts
9751
9892
  var init_accessibleSurfaces = __esmMin((() => {}));
9752
9893
  //#endregion
9894
+ //#region ../theme-core/src/site-styles/lookOptionGroups.ts
9895
+ function defineLookOptionGroup(group) {
9896
+ defaultOption(group);
9897
+ return group;
9898
+ }
9899
+ function defaultOption(group) {
9900
+ const option = group.options.find((candidate) => candidate.id === group.defaultOptionId);
9901
+ if (option) return option;
9902
+ throw new Error(`Look option group "${group.id}" defaults to missing option "${group.defaultOptionId}".`);
9903
+ }
9904
+ var init_lookOptionGroups = __esmMin((() => {}));
9905
+ //#endregion
9753
9906
  //#region ../theme-core/src/site-styles/appearancePresetResolution.ts
9754
9907
  function assertValidOptionGroups(preset) {
9755
9908
  preset.optionGroups?.forEach((group) => {
9756
- if (!group.options.find((option) => option.id === group.selectedOptionId)) throw new Error(`Appearance preset "${preset.id}" option group "${group.id}" selects missing option "${group.selectedOptionId}".`);
9909
+ defineLookOptionGroup(group);
9757
9910
  });
9758
9911
  }
9759
9912
  function defineBlockAppearancePreset(preset) {
9760
9913
  assertValidOptionGroups(preset);
9761
9914
  return preset;
9762
9915
  }
9763
- var init_appearancePresetResolution = __esmMin((() => {}));
9764
- //#endregion
9765
- //#region ../theme-core/src/site-styles/blockAppearancePresets.ts
9766
- var blockAppearancePresets;
9916
+ var init_appearancePresetResolution = __esmMin((() => {
9917
+ init_lookOptionGroups();
9918
+ })), brandScrimOptionGroups, microBannerLayoutPatches;
9767
9919
  var init_blockAppearancePresets = __esmMin((() => {
9768
9920
  init_appearancePresetResolution();
9769
9921
  init_types$7();
9770
- blockAppearancePresets = [
9771
- defineBlockAppearancePreset({
9772
- kind: "block-design",
9773
- id: "hero-immersive-image",
9774
- target: "hero",
9775
- label: "Immersive image hero",
9776
- blockKinds: ["block.hero"],
9777
- constraints: { layoutFamilies: ["centered", "compact"] },
9778
- layoutPatches: [{
9779
- constraints: { layoutVariantKeys: ["micro"] },
9780
- designPatch: {
9781
- sectionHeight: "banner",
9782
- heroTypographyScale: "display"
9783
- }
9784
- }],
9785
- design: {
9786
- sectionSurface: "hero-image",
9787
- contentFrame: plainFrame,
9788
- itemSurface: "none",
9789
- sectionHeight: "hero",
9790
- heroComposition: "center",
9791
- heroTypographyScale: "display",
9792
- imageSurfaceTreatment: { kind: "neutral-wash" }
9922
+ brandScrimOptionGroups = [{
9923
+ id: "image-surface-treatment",
9924
+ label: "Treatment",
9925
+ defaultOptionId: "brand-scrim-primary",
9926
+ options: [{
9927
+ id: "brand-scrim-primary",
9928
+ label: "Brand scrim",
9929
+ designPatch: { imageSurfaceTreatment: {
9930
+ kind: "brand-scrim",
9931
+ token: "primary"
9932
+ } }
9933
+ }, {
9934
+ id: "neutral-scrim",
9935
+ label: "Neutral scrim",
9936
+ designPatch: { imageSurfaceTreatment: { kind: "neutral-scrim" } }
9937
+ }]
9938
+ }];
9939
+ microBannerLayoutPatches = [{
9940
+ constraints: { layoutVariantKeys: ["micro"] },
9941
+ designPatch: { sectionHeight: "banner" }
9942
+ }];
9943
+ defineBlockAppearancePreset({
9944
+ id: "hero-immersive-image",
9945
+ target: "hero",
9946
+ label: "Immersive image hero",
9947
+ blockKinds: ["block.hero"],
9948
+ constraints: { layoutFamilies: ["centered", "compact"] },
9949
+ layoutPatches: [{
9950
+ constraints: { layoutVariantKeys: ["micro"] },
9951
+ designPatch: {
9952
+ sectionHeight: "banner",
9953
+ heroTypographyScale: "display"
9793
9954
  }
9794
- }),
9795
- defineBlockAppearancePreset({
9796
- kind: "block-design",
9797
- id: "hero-bottom-left-panel",
9798
- target: "hero",
9799
- label: "Bottom-left panel hero",
9800
- blockKinds: ["block.hero"],
9801
- constraints: { layoutFamilies: ["centered", "compact"] },
9802
- optionGroups: [{
9803
- id: "image-surface-treatment",
9804
- label: "Treatment",
9805
- selectedOptionId: "neutral-scrim",
9806
- options: [{
9807
- id: "neutral-scrim",
9808
- label: "Neutral scrim",
9809
- designPatch: { imageSurfaceTreatment: {
9810
- kind: "neutral-scrim",
9811
- intensity: "balanced"
9812
- } }
9813
- }, {
9814
- id: "brand-scrim-primary",
9815
- label: "Brand scrim",
9816
- designPatch: { imageSurfaceTreatment: {
9817
- kind: "brand-scrim",
9818
- token: "primary",
9819
- intensity: "balanced"
9820
- } }
9821
- }]
9822
- }],
9823
- layoutPatches: [{
9824
- constraints: { layoutVariantKeys: ["micro"] },
9825
- designPatch: {
9826
- sectionHeight: "banner",
9827
- heroTypographyScale: "editorial"
9828
- }
9829
- }],
9830
- design: {
9831
- sectionSurface: "hero-image",
9832
- contentFrame: panelFrame("raised"),
9833
- itemSurface: "none",
9834
- sectionHeight: "immersive",
9835
- heroComposition: "bottom-left",
9836
- heroTypographyScale: "display",
9837
- imageSurfaceTreatment: {
9955
+ }],
9956
+ design: {
9957
+ sectionSurface: "hero-image",
9958
+ contentFrame: plainFrame,
9959
+ itemSurface: "none",
9960
+ sectionHeight: "hero",
9961
+ heroComposition: "center",
9962
+ heroTypographyScale: "display",
9963
+ imageSurfaceTreatment: { kind: "neutral-wash" }
9964
+ }
9965
+ }), defineBlockAppearancePreset({
9966
+ id: "hero-bottom-left-panel",
9967
+ target: "hero",
9968
+ label: "Bottom-left panel hero",
9969
+ blockKinds: ["block.hero"],
9970
+ constraints: { layoutFamilies: ["centered", "compact"] },
9971
+ optionGroups: [{
9972
+ id: "image-surface-treatment",
9973
+ label: "Treatment",
9974
+ defaultOptionId: "neutral-scrim",
9975
+ options: [{
9976
+ id: "neutral-scrim",
9977
+ label: "Neutral scrim",
9978
+ designPatch: { imageSurfaceTreatment: {
9838
9979
  kind: "neutral-scrim",
9839
9980
  intensity: "balanced"
9840
- }
9841
- }
9842
- }),
9843
- defineBlockAppearancePreset({
9844
- kind: "block-design",
9845
- id: "hero-poster-image",
9846
- target: "hero",
9847
- label: "Poster image hero",
9848
- blockKinds: ["block.hero"],
9849
- constraints: { layoutFamilies: ["centered", "compact"] },
9850
- layoutPatches: [{
9851
- constraints: { layoutVariantKeys: ["micro"] },
9852
- designPatch: {
9853
- sectionHeight: "banner",
9854
- heroTypographyScale: "display"
9855
- }
9856
- }],
9857
- design: {
9858
- sectionSurface: "hero-image",
9859
- contentFrame: plainFrame,
9860
- itemSurface: "none",
9861
- sectionHeight: "immersive",
9862
- heroComposition: "center",
9863
- heroTypographyScale: "poster",
9864
- imageSurfaceTreatment: {
9981
+ } }
9982
+ }, {
9983
+ id: "brand-scrim-primary",
9984
+ label: "Brand scrim",
9985
+ designPatch: { imageSurfaceTreatment: {
9865
9986
  kind: "brand-scrim",
9866
9987
  token: "primary",
9867
- intensity: "strong"
9868
- }
9869
- }
9870
- }),
9871
- defineBlockAppearancePreset({
9872
- kind: "block-design",
9873
- id: "hero-brand-scrim",
9874
- target: "hero",
9875
- label: "Brand scrim image hero",
9876
- blockKinds: ["block.hero"],
9877
- constraints: { layoutFamilies: ["centered", "compact"] },
9878
- optionGroups: [{
9879
- id: "image-surface-treatment",
9880
- label: "Treatment",
9881
- selectedOptionId: "brand-scrim-primary",
9882
- options: [{
9883
- id: "brand-scrim-primary",
9884
- label: "Brand scrim",
9885
- designPatch: { imageSurfaceTreatment: {
9886
- kind: "brand-scrim",
9887
- token: "primary"
9888
- } }
9889
- }, {
9890
- id: "neutral-scrim",
9891
- label: "Neutral scrim",
9892
- designPatch: { imageSurfaceTreatment: { kind: "neutral-scrim" } }
9893
- }]
9894
- }],
9895
- layoutPatches: [{
9896
- constraints: { layoutVariantKeys: ["micro"] },
9897
- designPatch: { sectionHeight: "banner" }
9898
- }],
9899
- design: {
9900
- sectionSurface: "hero-image",
9901
- contentFrame: plainFrame,
9902
- itemSurface: "none",
9903
- sectionHeight: "immersive",
9904
- heroComposition: "center",
9905
- heroTypographyScale: "display",
9906
- imageSurfaceTreatment: {
9907
- kind: "brand-scrim",
9908
- token: "primary"
9909
- }
9910
- }
9911
- }),
9912
- defineBlockAppearancePreset({
9913
- kind: "block-design",
9914
- id: "hero-brand-scrim-fixed-frame",
9915
- target: "hero",
9916
- label: "Fixed-frame brand scrim hero",
9917
- blockKinds: ["block.hero"],
9918
- constraints: { layoutFamilies: ["centered", "compact"] },
9919
- optionGroups: [{
9920
- id: "image-surface-treatment",
9921
- label: "Treatment",
9922
- selectedOptionId: "brand-scrim-primary",
9923
- options: [{
9924
- id: "brand-scrim-primary",
9925
- label: "Brand scrim",
9926
- designPatch: { imageSurfaceTreatment: {
9927
- kind: "brand-scrim",
9928
- token: "primary"
9929
- } }
9930
- }, {
9931
- id: "neutral-scrim",
9932
- label: "Neutral scrim",
9933
- designPatch: { imageSurfaceTreatment: { kind: "neutral-scrim" } }
9934
- }]
9935
- }],
9936
- layoutPatches: [{
9937
- constraints: { layoutVariantKeys: ["micro"] },
9938
- designPatch: { sectionHeight: "banner" }
9939
- }],
9940
- design: {
9941
- sectionSurface: "hero-image",
9942
- contentFrame: plainFrame,
9943
- itemSurface: "none",
9944
- sectionHeight: "immersive",
9945
- heroComposition: "center",
9946
- heroTypographyScale: "display",
9947
- imageSurfaceTreatment: {
9948
- kind: "brand-scrim",
9949
- token: "primary"
9950
- },
9951
- imageSurfaceMotion: "fixed-frame",
9952
- eyebrowTreatment: "accent-pill-bounce"
9953
- }
9954
- }),
9955
- defineBlockAppearancePreset({
9956
- kind: "block-design",
9957
- id: "hero-brand-depth-expressive",
9958
- target: "hero",
9959
- label: "Expressive brand-depth hero",
9960
- blockKinds: ["block.hero"],
9961
- constraints: { layoutFamilies: ["centered", "compact"] },
9962
- design: {
9963
- sectionSurface: "brand-depth-band",
9964
- contentFrame: plainFrame,
9965
- itemSurface: "none",
9966
- heroComposition: "center",
9967
- heroTypographyScale: "editorial",
9968
- eyebrowTreatment: "accent-pill-bounce"
9969
- }
9970
- }),
9971
- defineBlockAppearancePreset({
9972
- kind: "block-design",
9973
- id: "hero-contained-intro",
9974
- target: "hero",
9975
- label: "Contained intro hero",
9976
- blockKinds: ["block.hero"],
9977
- design: {
9978
- sectionSurface: "muted-band",
9979
- contentFrame: panelFrame("inset"),
9980
- itemSurface: "none",
9981
- heroComposition: "center",
9982
- heroTypographyScale: "editorial"
9983
- }
9984
- }),
9985
- defineBlockAppearancePreset({
9986
- kind: "block-design",
9987
- id: "hero-split-editorial",
9988
- target: "hero",
9989
- label: "Editorial split hero",
9990
- blockKinds: ["block.hero"],
9991
- constraints: { layoutFamilies: ["split"] },
9992
- design: {
9993
- sectionSurface: "base",
9994
- contentFrame: plainFrame,
9995
- itemSurface: "none",
9996
- heroTypographyScale: "editorial"
9997
- }
9998
- }),
9999
- defineBlockAppearancePreset({
10000
- kind: "block-design",
10001
- id: "hero-split-brand",
10002
- target: "hero",
10003
- label: "Brand split hero",
10004
- blockKinds: ["block.hero"],
10005
- constraints: { layoutFamilies: ["split"] },
10006
- design: {
10007
- sectionSurface: "brand-depth-band",
10008
- contentFrame: plainFrame,
10009
- itemSurface: "none",
10010
- heroTypographyScale: "display",
10011
- eyebrowTreatment: "accent-pill-bounce"
10012
- }
10013
- }),
10014
- defineBlockAppearancePreset({
10015
- kind: "block-design",
10016
- id: "hero-split-soft-panel",
10017
- target: "hero",
10018
- label: "Soft panel split hero",
10019
- blockKinds: ["block.hero"],
10020
- constraints: { layoutFamilies: ["split"] },
10021
- design: {
10022
- sectionSurface: "muted-band",
10023
- contentFrame: panelFrame("raised"),
10024
- itemSurface: "none",
9988
+ intensity: "balanced"
9989
+ } }
9990
+ }]
9991
+ }],
9992
+ layoutPatches: [{
9993
+ constraints: { layoutVariantKeys: ["micro"] },
9994
+ designPatch: {
9995
+ sectionHeight: "banner",
10025
9996
  heroTypographyScale: "editorial"
10026
9997
  }
10027
- }),
10028
- defineBlockAppearancePreset({
10029
- kind: "block-design",
10030
- id: "hero-split-accent",
10031
- target: "hero",
10032
- label: "Accent split hero",
10033
- blockKinds: ["block.hero"],
10034
- constraints: { layoutFamilies: ["split"] },
10035
- design: {
10036
- sectionSurface: "accent-band",
10037
- contentFrame: panelFrame("raised"),
10038
- itemSurface: "none",
9998
+ }],
9999
+ design: {
10000
+ sectionSurface: "hero-image",
10001
+ contentFrame: panelFrame("raised"),
10002
+ itemSurface: "none",
10003
+ sectionHeight: "immersive",
10004
+ heroComposition: "bottom-left",
10005
+ heroTypographyScale: "display",
10006
+ imageSurfaceTreatment: {
10007
+ kind: "neutral-scrim",
10008
+ intensity: "balanced"
10009
+ }
10010
+ }
10011
+ }), defineBlockAppearancePreset({
10012
+ id: "hero-poster-image",
10013
+ target: "hero",
10014
+ label: "Poster image hero",
10015
+ blockKinds: ["block.hero"],
10016
+ constraints: { layoutFamilies: ["centered", "compact"] },
10017
+ layoutPatches: [{
10018
+ constraints: { layoutVariantKeys: ["micro"] },
10019
+ designPatch: {
10020
+ sectionHeight: "banner",
10039
10021
  heroTypographyScale: "display"
10040
10022
  }
10041
- }),
10042
- defineBlockAppearancePreset({
10043
- kind: "block-design",
10044
- id: "intro-editorial-statement",
10045
- target: "intro",
10046
- label: "Editorial intro statement",
10047
- blockKinds: ["block.intro"],
10048
- constraints: { layoutVariantKeys: ["centered-copy", "statement-copy"] },
10049
- design: {
10050
- sectionSurface: "base",
10051
- contentFrame: plainFrame,
10052
- itemSurface: "none",
10053
- composition: {
10054
- kind: "intro",
10055
- treatment: "editorial-statement"
10056
- }
10057
- }
10058
- }),
10059
- defineBlockAppearancePreset({
10060
- kind: "block-design",
10061
- id: "intro-portrait-bio",
10062
- target: "intro",
10063
- label: "Portrait and bio",
10064
- blockKinds: ["block.intro"],
10065
- constraints: { layoutVariantKeys: ["media-copy"] },
10066
- design: {
10067
- sectionSurface: "base",
10068
- contentFrame: plainFrame,
10069
- itemSurface: "none",
10070
- composition: {
10071
- kind: "intro",
10072
- treatment: "portrait-bio"
10073
- }
10074
- }
10075
- }),
10076
- defineBlockAppearancePreset({
10077
- kind: "block-design",
10078
- id: "offerings-preview-default-cards",
10079
- target: "offerings",
10080
- label: "Default offering cards",
10081
- blockKinds: ["block.offerings-preview"],
10082
- design: {
10083
- sectionSurface: "base",
10084
- contentFrame: plainFrame,
10085
- itemSurface: "default"
10086
- }
10087
- }),
10088
- defineBlockAppearancePreset({
10089
- kind: "block-design",
10090
- id: "offerings-preview-secondary-cards",
10091
- target: "offerings",
10092
- label: "Secondary offering cards",
10093
- blockKinds: ["block.offerings-preview"],
10094
- design: {
10095
- sectionSurface: "muted-band",
10096
- contentFrame: plainFrame,
10097
- itemSurface: "inset"
10098
- }
10099
- }),
10100
- defineBlockAppearancePreset({
10101
- kind: "block-design",
10102
- id: "offerings-preview-non-carded",
10103
- target: "offerings",
10104
- label: "Non-carded offerings",
10105
- blockKinds: ["block.offerings-preview"],
10106
- design: {
10107
- sectionSurface: "muted-band",
10108
- contentFrame: plainFrame,
10109
- itemSurface: "editorial"
10110
- }
10111
- }),
10112
- defineBlockAppearancePreset({
10113
- kind: "block-design",
10114
- id: "offerings-preview-paired-feature-cards",
10115
- target: "offerings",
10116
- label: "Paired feature cards",
10117
- blockKinds: ["block.offerings-preview"],
10118
- constraints: { layoutVariantKeys: ["cards"] },
10119
- design: {
10120
- sectionSurface: "base",
10121
- contentFrame: plainFrame,
10122
- itemSurface: "none"
10123
- }
10124
- }),
10125
- defineBlockAppearancePreset({
10126
- kind: "block-design",
10127
- id: "offerings-preview-open-editorial-columns",
10128
- target: "offerings",
10129
- label: "Open editorial columns",
10130
- blockKinds: ["block.offerings-preview"],
10131
- constraints: { layoutVariantKeys: ["cards"] },
10132
- design: {
10133
- sectionSurface: "base",
10134
- contentFrame: plainFrame,
10135
- itemSurface: "none"
10136
- }
10137
- }),
10138
- defineBlockAppearancePreset({
10139
- kind: "block-design",
10140
- id: "offerings-preview-joined-programme-panel",
10141
- target: "offerings",
10142
- label: "Joined programme panel",
10143
- blockKinds: ["block.offerings-preview"],
10144
- constraints: { layoutVariantKeys: ["cards"] },
10145
- design: {
10146
- sectionSurface: "base",
10147
- contentFrame: plainFrame,
10148
- itemSurface: "none"
10149
- }
10150
- }),
10151
- defineBlockAppearancePreset({
10152
- kind: "block-design",
10153
- id: "feature-cards-raised-rule",
10154
- target: "feature-cards",
10155
- label: "Raised cards with rule",
10156
- blockKinds: ["block.feature-cards"],
10157
- design: {
10158
- sectionSurface: "base",
10159
- contentFrame: plainFrame,
10160
- itemSurface: "raised"
10161
- }
10162
- }),
10163
- defineBlockAppearancePreset({
10164
- kind: "block-design",
10165
- id: "feature-cards-bold-colors",
10166
- target: "feature-cards",
10167
- label: "Bold colour-blocked cards",
10168
- blockKinds: ["block.feature-cards"],
10169
- design: {
10170
- sectionSurface: "base",
10171
- contentFrame: plainFrame,
10172
- itemSurface: "color-blocked"
10173
- }
10174
- }),
10175
- defineBlockAppearancePreset({
10176
- kind: "block-design",
10177
- id: "feature-cards-editorial-columns",
10178
- target: "feature-cards",
10179
- label: "Editorial open columns",
10180
- blockKinds: ["block.feature-cards"],
10181
- design: {
10182
- sectionSurface: "base",
10183
- contentFrame: plainFrame,
10184
- itemSurface: "editorial"
10185
- }
10186
- }),
10187
- defineBlockAppearancePreset({
10188
- kind: "block-design",
10189
- id: "feature-cards-asymmetric-emphasis",
10190
- target: "feature-cards",
10191
- label: "Asymmetric emphasis pair",
10192
- blockKinds: ["block.feature-cards"],
10193
- constraints: { layoutFamilies: ["grid"] },
10194
- design: {
10195
- sectionSurface: "base",
10196
- contentFrame: plainFrame,
10197
- itemSurface: "none",
10198
- composition: {
10199
- kind: "feature-cards",
10200
- treatment: "asymmetric-emphasis"
10201
- }
10202
- }
10203
- }),
10204
- defineBlockAppearancePreset({
10205
- kind: "block-design",
10206
- id: "feature-cards-framed-programme",
10207
- target: "feature-cards",
10208
- label: "Framed programme cards",
10209
- blockKinds: ["block.feature-cards"],
10210
- constraints: { layoutFamilies: ["grid"] },
10211
- design: {
10212
- sectionSurface: "brand-depth-band",
10213
- contentFrame: plainFrame,
10214
- itemSurface: "inset",
10215
- composition: {
10216
- kind: "feature-cards",
10217
- treatment: "framed-programme"
10218
- }
10219
- }
10220
- }),
10221
- defineBlockAppearancePreset({
10222
- kind: "block-design",
10223
- id: "feature-cards-soft-panels",
10224
- target: "feature-cards",
10225
- label: "Soft tinted panels",
10226
- blockKinds: ["block.feature-cards"],
10227
- design: {
10228
- sectionSurface: "base",
10229
- contentFrame: plainFrame,
10230
- itemSurface: "inset"
10231
- }
10232
- }),
10233
- defineBlockAppearancePreset({
10234
- kind: "block-design",
10235
- id: "feature-cards-editorial-diptych",
10236
- target: "feature-cards",
10237
- label: "Editorial diptych",
10238
- blockKinds: ["block.feature-cards"],
10239
- constraints: { layoutVariantKeys: ["editorial-diptych"] },
10240
- design: {
10241
- sectionSurface: "base",
10242
- contentFrame: plainFrame,
10243
- itemSurface: "flat"
10244
- }
10245
- }),
10246
- defineBlockAppearancePreset({
10247
- kind: "block-design",
10248
- id: "feature-cards-editorial-pathways",
10249
- target: "feature-cards",
10250
- label: "Editorial pathways",
10251
- blockKinds: ["block.feature-cards"],
10252
- constraints: { layoutVariantKeys: ["editorial-pathways"] },
10253
- design: {
10254
- sectionSurface: "base",
10255
- contentFrame: plainFrame,
10256
- itemSurface: "flat"
10257
- }
10258
- }),
10259
- defineBlockAppearancePreset({
10260
- kind: "block-design",
10261
- id: "feature-cards-photo-tiles",
10262
- target: "feature-cards",
10263
- label: "Photo tiles",
10264
- blockKinds: ["block.feature-cards"],
10265
- design: {
10266
- sectionSurface: "base",
10267
- contentFrame: plainFrame,
10268
- itemSurface: "raised"
10269
- }
10270
- }),
10271
- defineBlockAppearancePreset({
10272
- kind: "block-design",
10273
- id: "events-lined-panel",
10274
- target: "events",
10275
- label: "Raised event panel",
10276
- blockKinds: ["block.event-calendar", "block.event-listing"],
10277
- design: {
10278
- sectionSurface: "base",
10279
- contentFrame: panelFrame("raised"),
10280
- itemSurface: "none"
10281
- }
10282
- }),
10283
- defineBlockAppearancePreset({
10284
- kind: "block-design",
10285
- id: "events-ruled-register",
10286
- target: "events",
10287
- label: "Ruled event register",
10288
- blockKinds: ["block.event-calendar", "block.event-listing"],
10289
- design: {
10290
- sectionSurface: "brand-depth-band",
10291
- contentFrame: plainFrame,
10292
- itemSurface: "none",
10293
- eventListTreatment: "ruled-register"
10294
- }
10295
- }),
10296
- defineBlockAppearancePreset({
10297
- kind: "block-design",
10298
- id: "events-editorial-register",
10299
- target: "events",
10300
- label: "Editorial event register",
10301
- blockKinds: ["block.event-calendar", "block.event-listing"],
10302
- design: {
10303
- sectionSurface: "base",
10304
- contentFrame: plainFrame,
10305
- itemSurface: "none",
10306
- eventListTreatment: "editorial-register"
10307
- }
10308
- }),
10309
- defineBlockAppearancePreset({
10310
- kind: "block-design",
10311
- id: "events-dense-index",
10312
- target: "events",
10313
- label: "Dense event index",
10314
- blockKinds: ["block.event-calendar", "block.event-listing"],
10315
- design: {
10316
- sectionSurface: "accent-band",
10317
- contentFrame: plainFrame,
10318
- itemSurface: "none",
10319
- eventListTreatment: "dense-index"
10320
- }
10321
- }),
10322
- defineBlockAppearancePreset({
10323
- kind: "block-design",
10324
- id: "schedule-details-brand-depth",
10325
- target: "events",
10326
- label: "Brand-depth schedule details",
10327
- blockKinds: ["block.event-details", "block.course-details"],
10328
- design: {
10329
- sectionSurface: "brand-depth-band",
10330
- contentFrame: plainFrame,
10331
- itemSurface: "none",
10332
- tileTreatment: "brand-depth"
10333
- }
10334
- }),
10335
- defineBlockAppearancePreset({
10336
- kind: "block-design",
10337
- id: "media-text-flush-feature",
10338
- target: "media-text",
10339
- label: "Flush media feature",
10340
- blockKinds: ["block.media-text"],
10341
- design: {
10342
- sectionSurface: "muted-band",
10343
- contentFrame: flushPanelFrame({ bleed: "start" }),
10344
- itemSurface: "none"
10345
- }
10346
- }),
10347
- defineBlockAppearancePreset({
10348
- kind: "block-design",
10349
- id: "testimonials-simple-cards",
10350
- target: "testimonials",
10351
- label: "Simple testimonial cards",
10352
- blockKinds: ["block.testimonials"],
10353
- design: {
10354
- sectionSurface: "base",
10355
- contentFrame: plainFrame,
10356
- itemSurface: "default"
10357
- }
10358
- }),
10359
- defineBlockAppearancePreset({
10360
- kind: "block-design",
10361
- id: "testimonials-raised-panel",
10362
- target: "testimonials",
10363
- label: "Raised testimonial panel",
10364
- blockKinds: ["block.testimonials"],
10365
- design: {
10366
- sectionSurface: "muted-band",
10367
- contentFrame: panelFrame("raised"),
10368
- itemSurface: "raised"
10369
- }
10370
- }),
10371
- defineBlockAppearancePreset({
10372
- kind: "block-design",
10373
- id: "testimonials-accent-panel",
10374
- target: "testimonials",
10375
- label: "Accent testimonial panel",
10376
- blockKinds: ["block.testimonials"],
10377
- design: {
10378
- sectionSurface: "accent-band",
10379
- contentFrame: panelFrame("raised"),
10380
- itemSurface: "raised"
10381
- }
10382
- }),
10383
- defineBlockAppearancePreset({
10384
- kind: "block-design",
10385
- id: "testimonials-default-cards",
10386
- target: "testimonials",
10387
- label: "Default cards",
10388
- blockKinds: ["block.testimonials"],
10389
- design: {
10390
- sectionSurface: "base",
10391
- contentFrame: plainFrame,
10392
- itemSurface: "none",
10393
- testimonialCardTreatment: "default"
10394
- }
10395
- }),
10396
- defineBlockAppearancePreset({
10397
- kind: "block-design",
10398
- id: "testimonials-statement-cards",
10399
- target: "testimonials",
10400
- label: "Statement cards",
10401
- blockKinds: ["block.testimonials"],
10402
- design: {
10403
- sectionSurface: "accent-band",
10404
- contentFrame: plainFrame,
10405
- itemSurface: "raised",
10406
- testimonialCardTreatment: "statement"
10407
- }
10408
- }),
10409
- defineBlockAppearancePreset({
10410
- kind: "block-design",
10411
- id: "testimonials-brand-statement-cards",
10412
- target: "testimonials",
10413
- label: "Brand statement cards",
10414
- blockKinds: ["block.testimonials"],
10415
- design: {
10416
- sectionSurface: "brand-depth-band",
10417
- contentFrame: plainFrame,
10418
- itemSurface: "raised",
10419
- testimonialCardTreatment: "statement"
10420
- }
10421
- }),
10422
- defineBlockAppearancePreset({
10423
- kind: "block-design",
10424
- id: "testimonials-non-carded",
10425
- target: "testimonials",
10426
- label: "Non-carded",
10427
- blockKinds: ["block.testimonials"],
10428
- design: {
10429
- sectionSurface: "muted-band",
10430
- contentFrame: plainFrame,
10431
- itemSurface: "none",
10432
- testimonialCardTreatment: "non-carded"
10433
- }
10434
- }),
10435
- defineBlockAppearancePreset({
10436
- kind: "block-design",
10437
- id: "testimonials-evergreen-lead",
10438
- target: "testimonials",
10439
- label: "Evergreen lead",
10440
- blockKinds: ["block.testimonials"],
10441
- constraints: { layoutVariantKeys: ["featured-editorial"] },
10442
- design: {
10443
- sectionSurface: "base",
10444
- contentFrame: plainFrame,
10445
- itemSurface: "none"
10446
- }
10447
- }),
10448
- defineBlockAppearancePreset({
10449
- kind: "block-design",
10450
- id: "testimonials-room-and-response",
10451
- target: "testimonials",
10452
- label: "Room and response",
10453
- blockKinds: ["block.testimonials"],
10454
- constraints: { layoutVariantKeys: ["featured-editorial"] },
10455
- design: {
10456
- sectionSurface: "base",
10457
- contentFrame: plainFrame,
10458
- itemSurface: "none"
10459
- }
10460
- }),
10461
- defineBlockAppearancePreset({
10462
- kind: "block-design",
10463
- id: "testimonials-open-floor",
10464
- target: "testimonials",
10465
- label: "Open floor",
10466
- blockKinds: ["block.testimonials"],
10467
- constraints: { layoutVariantKeys: ["featured-editorial"] },
10468
- design: {
10469
- sectionSurface: "base",
10470
- contentFrame: plainFrame,
10471
- itemSurface: "none"
10472
- }
10473
- }),
10474
- defineBlockAppearancePreset({
10475
- kind: "block-design",
10476
- id: "faq-base-accordion",
10477
- target: "faq",
10478
- label: "Base accordion FAQ",
10479
- blockKinds: ["block.faq"],
10480
- design: {
10481
- sectionSurface: "base",
10482
- contentFrame: plainFrame,
10483
- itemSurface: "default"
10484
- }
10485
- }),
10486
- defineBlockAppearancePreset({
10487
- kind: "block-design",
10488
- id: "faq-contained-help",
10489
- target: "faq",
10490
- label: "Contained help panel",
10491
- blockKinds: ["block.faq"],
10492
- design: {
10493
- sectionSurface: "muted-band",
10494
- contentFrame: panelFrame("inset"),
10495
- itemSurface: "default"
10496
- }
10497
- }),
10498
- defineBlockAppearancePreset({
10499
- kind: "block-design",
10500
- id: "contact-form-panel",
10501
- target: "contact-form",
10502
- label: "Raised form panel",
10503
- blockKinds: ["block.form"],
10504
- design: {
10505
- sectionSurface: "muted-band",
10506
- contentFrame: panelFrame("raised"),
10507
- itemSurface: "none"
10508
- }
10509
- }),
10510
- defineBlockAppearancePreset({
10511
- kind: "block-design",
10512
- id: "cta-accent-band",
10513
- target: "cta",
10514
- label: "Accent CTA band",
10515
- blockKinds: ["block.cta-full"],
10516
- design: {
10517
- sectionSurface: "accent-band",
10518
- contentFrame: plainFrame,
10519
- itemSurface: "none",
10520
- eyebrowTreatment: "accent"
10521
- }
10522
- })
10523
- ];
10524
- }));
10023
+ }],
10024
+ design: {
10025
+ sectionSurface: "hero-image",
10026
+ contentFrame: plainFrame,
10027
+ itemSurface: "none",
10028
+ sectionHeight: "immersive",
10029
+ heroComposition: "center",
10030
+ heroTypographyScale: "poster",
10031
+ imageSurfaceTreatment: {
10032
+ kind: "brand-scrim",
10033
+ token: "primary",
10034
+ intensity: "strong"
10035
+ }
10036
+ }
10037
+ }), defineBlockAppearancePreset({
10038
+ id: "hero-brand-scrim",
10039
+ target: "hero",
10040
+ label: "Brand scrim image hero",
10041
+ blockKinds: ["block.hero"],
10042
+ constraints: { layoutFamilies: ["centered", "compact"] },
10043
+ optionGroups: brandScrimOptionGroups,
10044
+ layoutPatches: microBannerLayoutPatches,
10045
+ design: {
10046
+ sectionSurface: "hero-image",
10047
+ contentFrame: plainFrame,
10048
+ itemSurface: "none",
10049
+ sectionHeight: "immersive",
10050
+ heroComposition: "center",
10051
+ heroTypographyScale: "display",
10052
+ imageSurfaceTreatment: {
10053
+ kind: "brand-scrim",
10054
+ token: "primary"
10055
+ }
10056
+ }
10057
+ }), defineBlockAppearancePreset({
10058
+ id: "hero-brand-scrim-fixed-frame",
10059
+ target: "hero",
10060
+ label: "Fixed-frame brand scrim hero",
10061
+ blockKinds: ["block.hero"],
10062
+ constraints: { layoutFamilies: ["centered", "compact"] },
10063
+ optionGroups: brandScrimOptionGroups,
10064
+ layoutPatches: microBannerLayoutPatches,
10065
+ design: {
10066
+ sectionSurface: "hero-image",
10067
+ contentFrame: plainFrame,
10068
+ itemSurface: "none",
10069
+ sectionHeight: "immersive",
10070
+ heroComposition: "center",
10071
+ heroTypographyScale: "display",
10072
+ imageSurfaceTreatment: {
10073
+ kind: "brand-scrim",
10074
+ token: "primary"
10075
+ },
10076
+ imageSurfaceMotion: "fixed-frame",
10077
+ eyebrowTreatment: "accent-pill-bounce"
10078
+ }
10079
+ }), defineBlockAppearancePreset({
10080
+ id: "hero-brand-depth-expressive",
10081
+ target: "hero",
10082
+ label: "Expressive brand-depth hero",
10083
+ blockKinds: ["block.hero"],
10084
+ constraints: { layoutFamilies: ["centered", "compact"] },
10085
+ design: {
10086
+ sectionSurface: "brand-depth-band",
10087
+ contentFrame: plainFrame,
10088
+ itemSurface: "none",
10089
+ heroComposition: "center",
10090
+ heroTypographyScale: "editorial",
10091
+ eyebrowTreatment: "accent-pill-bounce"
10092
+ }
10093
+ }), defineBlockAppearancePreset({
10094
+ id: "hero-contained-intro",
10095
+ target: "hero",
10096
+ label: "Contained intro hero",
10097
+ blockKinds: ["block.hero"],
10098
+ design: {
10099
+ sectionSurface: "muted-band",
10100
+ contentFrame: panelFrame("inset"),
10101
+ itemSurface: "none",
10102
+ heroComposition: "center",
10103
+ heroTypographyScale: "editorial"
10104
+ }
10105
+ }), defineBlockAppearancePreset({
10106
+ id: "hero-split-editorial",
10107
+ target: "hero",
10108
+ label: "Editorial split hero",
10109
+ blockKinds: ["block.hero"],
10110
+ constraints: { layoutFamilies: ["split"] },
10111
+ design: {
10112
+ sectionSurface: "base",
10113
+ contentFrame: plainFrame,
10114
+ itemSurface: "none",
10115
+ heroTypographyScale: "editorial"
10116
+ }
10117
+ }), defineBlockAppearancePreset({
10118
+ id: "hero-split-brand",
10119
+ target: "hero",
10120
+ label: "Brand split hero",
10121
+ blockKinds: ["block.hero"],
10122
+ constraints: { layoutFamilies: ["split"] },
10123
+ design: {
10124
+ sectionSurface: "brand-depth-band",
10125
+ contentFrame: plainFrame,
10126
+ itemSurface: "none",
10127
+ heroTypographyScale: "display",
10128
+ eyebrowTreatment: "accent-pill-bounce"
10129
+ }
10130
+ }), defineBlockAppearancePreset({
10131
+ id: "hero-split-soft-panel",
10132
+ target: "hero",
10133
+ label: "Soft panel split hero",
10134
+ blockKinds: ["block.hero"],
10135
+ constraints: { layoutFamilies: ["split"] },
10136
+ design: {
10137
+ sectionSurface: "muted-band",
10138
+ contentFrame: panelFrame("raised"),
10139
+ itemSurface: "none",
10140
+ heroTypographyScale: "editorial"
10141
+ }
10142
+ }), defineBlockAppearancePreset({
10143
+ id: "hero-split-accent",
10144
+ target: "hero",
10145
+ label: "Accent split hero",
10146
+ blockKinds: ["block.hero"],
10147
+ constraints: { layoutFamilies: ["split"] },
10148
+ design: {
10149
+ sectionSurface: "accent-band",
10150
+ contentFrame: panelFrame("raised"),
10151
+ itemSurface: "none",
10152
+ heroTypographyScale: "display"
10153
+ }
10154
+ }), defineBlockAppearancePreset({
10155
+ id: "intro-editorial-statement",
10156
+ target: "intro",
10157
+ label: "Editorial intro statement",
10158
+ blockKinds: ["block.intro"],
10159
+ constraints: { layoutVariantKeys: ["centered-copy", "statement-copy"] },
10160
+ design: {
10161
+ sectionSurface: "base",
10162
+ contentFrame: plainFrame,
10163
+ itemSurface: "none",
10164
+ composition: {
10165
+ kind: "intro",
10166
+ treatment: "editorial-statement"
10167
+ }
10168
+ }
10169
+ }), defineBlockAppearancePreset({
10170
+ id: "intro-portrait-bio",
10171
+ target: "intro",
10172
+ label: "Portrait and bio",
10173
+ blockKinds: ["block.intro"],
10174
+ constraints: { layoutVariantKeys: ["media-copy"] },
10175
+ design: {
10176
+ sectionSurface: "base",
10177
+ contentFrame: plainFrame,
10178
+ itemSurface: "none",
10179
+ composition: {
10180
+ kind: "intro",
10181
+ treatment: "portrait-bio"
10182
+ }
10183
+ }
10184
+ }), defineBlockAppearancePreset({
10185
+ id: "offerings-preview-default-cards",
10186
+ target: "offerings",
10187
+ label: "Default offering cards",
10188
+ blockKinds: ["block.offerings-preview"],
10189
+ design: {
10190
+ sectionSurface: "base",
10191
+ contentFrame: plainFrame,
10192
+ itemSurface: "default"
10193
+ }
10194
+ }), defineBlockAppearancePreset({
10195
+ id: "offerings-preview-secondary-cards",
10196
+ target: "offerings",
10197
+ label: "Secondary offering cards",
10198
+ blockKinds: ["block.offerings-preview"],
10199
+ design: {
10200
+ sectionSurface: "muted-band",
10201
+ contentFrame: plainFrame,
10202
+ itemSurface: "inset"
10203
+ }
10204
+ }), defineBlockAppearancePreset({
10205
+ id: "offerings-preview-non-carded",
10206
+ target: "offerings",
10207
+ label: "Non-carded offerings",
10208
+ blockKinds: ["block.offerings-preview"],
10209
+ design: {
10210
+ sectionSurface: "muted-band",
10211
+ contentFrame: plainFrame,
10212
+ itemSurface: "editorial"
10213
+ }
10214
+ }), defineBlockAppearancePreset({
10215
+ id: "offerings-preview-paired-feature-cards",
10216
+ target: "offerings",
10217
+ label: "Paired feature cards",
10218
+ blockKinds: ["block.offerings-preview"],
10219
+ constraints: { layoutVariantKeys: ["cards"] },
10220
+ design: {
10221
+ sectionSurface: "base",
10222
+ contentFrame: plainFrame,
10223
+ itemSurface: "none"
10224
+ }
10225
+ }), defineBlockAppearancePreset({
10226
+ id: "offerings-preview-open-editorial-columns",
10227
+ target: "offerings",
10228
+ label: "Open editorial columns",
10229
+ blockKinds: ["block.offerings-preview"],
10230
+ constraints: { layoutVariantKeys: ["cards"] },
10231
+ design: {
10232
+ sectionSurface: "base",
10233
+ contentFrame: plainFrame,
10234
+ itemSurface: "none"
10235
+ }
10236
+ }), defineBlockAppearancePreset({
10237
+ id: "offerings-preview-joined-programme-panel",
10238
+ target: "offerings",
10239
+ label: "Joined programme panel",
10240
+ blockKinds: ["block.offerings-preview"],
10241
+ constraints: { layoutVariantKeys: ["cards"] },
10242
+ design: {
10243
+ sectionSurface: "base",
10244
+ contentFrame: plainFrame,
10245
+ itemSurface: "none"
10246
+ }
10247
+ }), defineBlockAppearancePreset({
10248
+ id: "feature-cards-raised-rule",
10249
+ target: "feature-cards",
10250
+ label: "Raised cards with rule",
10251
+ blockKinds: ["block.feature-cards"],
10252
+ design: {
10253
+ sectionSurface: "base",
10254
+ contentFrame: plainFrame,
10255
+ itemSurface: "raised"
10256
+ }
10257
+ }), defineBlockAppearancePreset({
10258
+ id: "feature-cards-bold-colors",
10259
+ target: "feature-cards",
10260
+ label: "Bold colour-blocked cards",
10261
+ blockKinds: ["block.feature-cards"],
10262
+ design: {
10263
+ sectionSurface: "base",
10264
+ contentFrame: plainFrame,
10265
+ itemSurface: "color-blocked"
10266
+ }
10267
+ }), defineBlockAppearancePreset({
10268
+ id: "feature-cards-editorial-columns",
10269
+ target: "feature-cards",
10270
+ label: "Editorial open columns",
10271
+ blockKinds: ["block.feature-cards"],
10272
+ design: {
10273
+ sectionSurface: "base",
10274
+ contentFrame: plainFrame,
10275
+ itemSurface: "editorial"
10276
+ }
10277
+ }), defineBlockAppearancePreset({
10278
+ id: "feature-cards-asymmetric-emphasis",
10279
+ target: "feature-cards",
10280
+ label: "Asymmetric emphasis pair",
10281
+ blockKinds: ["block.feature-cards"],
10282
+ constraints: { layoutFamilies: ["grid"] },
10283
+ design: {
10284
+ sectionSurface: "base",
10285
+ contentFrame: plainFrame,
10286
+ itemSurface: "none",
10287
+ composition: {
10288
+ kind: "feature-cards",
10289
+ treatment: "asymmetric-emphasis"
10290
+ }
10291
+ }
10292
+ }), defineBlockAppearancePreset({
10293
+ id: "feature-cards-framed-programme",
10294
+ target: "feature-cards",
10295
+ label: "Framed programme cards",
10296
+ blockKinds: ["block.feature-cards"],
10297
+ constraints: { layoutFamilies: ["grid"] },
10298
+ design: {
10299
+ sectionSurface: "brand-depth-band",
10300
+ contentFrame: plainFrame,
10301
+ itemSurface: "inset",
10302
+ composition: {
10303
+ kind: "feature-cards",
10304
+ treatment: "framed-programme"
10305
+ }
10306
+ }
10307
+ }), defineBlockAppearancePreset({
10308
+ id: "feature-cards-soft-panels",
10309
+ target: "feature-cards",
10310
+ label: "Soft tinted panels",
10311
+ blockKinds: ["block.feature-cards"],
10312
+ design: {
10313
+ sectionSurface: "base",
10314
+ contentFrame: plainFrame,
10315
+ itemSurface: "inset"
10316
+ }
10317
+ }), defineBlockAppearancePreset({
10318
+ id: "feature-cards-editorial-diptych",
10319
+ target: "feature-cards",
10320
+ label: "Editorial diptych",
10321
+ blockKinds: ["block.feature-cards"],
10322
+ constraints: { layoutVariantKeys: ["editorial-diptych"] },
10323
+ design: {
10324
+ sectionSurface: "base",
10325
+ contentFrame: plainFrame,
10326
+ itemSurface: "flat"
10327
+ }
10328
+ }), defineBlockAppearancePreset({
10329
+ id: "feature-cards-editorial-pathways",
10330
+ target: "feature-cards",
10331
+ label: "Editorial pathways",
10332
+ blockKinds: ["block.feature-cards"],
10333
+ constraints: { layoutVariantKeys: ["editorial-pathways"] },
10334
+ design: {
10335
+ sectionSurface: "base",
10336
+ contentFrame: plainFrame,
10337
+ itemSurface: "flat"
10338
+ }
10339
+ }), defineBlockAppearancePreset({
10340
+ id: "feature-cards-photo-tiles",
10341
+ target: "feature-cards",
10342
+ label: "Photo tiles",
10343
+ blockKinds: ["block.feature-cards"],
10344
+ design: {
10345
+ sectionSurface: "base",
10346
+ contentFrame: plainFrame,
10347
+ itemSurface: "raised"
10348
+ }
10349
+ }), defineBlockAppearancePreset({
10350
+ id: "events-lined-panel",
10351
+ target: "events",
10352
+ label: "Raised event panel",
10353
+ blockKinds: ["block.event-calendar", "block.event-listing"],
10354
+ design: {
10355
+ sectionSurface: "base",
10356
+ contentFrame: panelFrame("raised"),
10357
+ itemSurface: "none"
10358
+ }
10359
+ }), defineBlockAppearancePreset({
10360
+ id: "events-ruled-register",
10361
+ target: "events",
10362
+ label: "Ruled event register",
10363
+ blockKinds: ["block.event-calendar", "block.event-listing"],
10364
+ design: {
10365
+ sectionSurface: "brand-depth-band",
10366
+ contentFrame: plainFrame,
10367
+ itemSurface: "none",
10368
+ eventListTreatment: "ruled-register"
10369
+ }
10370
+ }), defineBlockAppearancePreset({
10371
+ id: "events-editorial-register",
10372
+ target: "events",
10373
+ label: "Editorial event register",
10374
+ blockKinds: ["block.event-calendar", "block.event-listing"],
10375
+ design: {
10376
+ sectionSurface: "base",
10377
+ contentFrame: plainFrame,
10378
+ itemSurface: "none",
10379
+ eventListTreatment: "editorial-register"
10380
+ }
10381
+ }), defineBlockAppearancePreset({
10382
+ id: "events-dense-index",
10383
+ target: "events",
10384
+ label: "Dense event index",
10385
+ blockKinds: ["block.event-calendar", "block.event-listing"],
10386
+ design: {
10387
+ sectionSurface: "accent-band",
10388
+ contentFrame: plainFrame,
10389
+ itemSurface: "none",
10390
+ eventListTreatment: "dense-index"
10391
+ }
10392
+ }), defineBlockAppearancePreset({
10393
+ id: "schedule-details-brand-depth",
10394
+ target: "events",
10395
+ label: "Brand-depth schedule details",
10396
+ blockKinds: ["block.event-details", "block.course-details"],
10397
+ design: {
10398
+ sectionSurface: "brand-depth-band",
10399
+ contentFrame: plainFrame,
10400
+ itemSurface: "none",
10401
+ tileTreatment: "brand-depth"
10402
+ }
10403
+ }), defineBlockAppearancePreset({
10404
+ id: "media-text-flush-feature",
10405
+ target: "media-text",
10406
+ label: "Flush media feature",
10407
+ blockKinds: ["block.media-text"],
10408
+ design: {
10409
+ sectionSurface: "muted-band",
10410
+ contentFrame: flushPanelFrame({ bleed: "start" }),
10411
+ itemSurface: "none"
10412
+ }
10413
+ }), defineBlockAppearancePreset({
10414
+ id: "testimonials-simple-cards",
10415
+ target: "testimonials",
10416
+ label: "Simple testimonial cards",
10417
+ blockKinds: ["block.testimonials"],
10418
+ design: {
10419
+ sectionSurface: "base",
10420
+ contentFrame: plainFrame,
10421
+ itemSurface: "default"
10422
+ }
10423
+ }), defineBlockAppearancePreset({
10424
+ id: "testimonials-raised-panel",
10425
+ target: "testimonials",
10426
+ label: "Raised testimonial panel",
10427
+ blockKinds: ["block.testimonials"],
10428
+ design: {
10429
+ sectionSurface: "muted-band",
10430
+ contentFrame: panelFrame("raised"),
10431
+ itemSurface: "raised"
10432
+ }
10433
+ }), defineBlockAppearancePreset({
10434
+ id: "testimonials-accent-panel",
10435
+ target: "testimonials",
10436
+ label: "Accent testimonial panel",
10437
+ blockKinds: ["block.testimonials"],
10438
+ design: {
10439
+ sectionSurface: "accent-band",
10440
+ contentFrame: panelFrame("raised"),
10441
+ itemSurface: "raised"
10442
+ }
10443
+ }), defineBlockAppearancePreset({
10444
+ id: "testimonials-default-cards",
10445
+ target: "testimonials",
10446
+ label: "Default cards",
10447
+ blockKinds: ["block.testimonials"],
10448
+ design: {
10449
+ sectionSurface: "base",
10450
+ contentFrame: plainFrame,
10451
+ itemSurface: "none",
10452
+ testimonialCardTreatment: "default"
10453
+ }
10454
+ }), defineBlockAppearancePreset({
10455
+ id: "testimonials-statement-cards",
10456
+ target: "testimonials",
10457
+ label: "Statement cards",
10458
+ blockKinds: ["block.testimonials"],
10459
+ design: {
10460
+ sectionSurface: "accent-band",
10461
+ contentFrame: plainFrame,
10462
+ itemSurface: "raised",
10463
+ testimonialCardTreatment: "statement"
10464
+ }
10465
+ }), defineBlockAppearancePreset({
10466
+ id: "testimonials-brand-statement-cards",
10467
+ target: "testimonials",
10468
+ label: "Brand statement cards",
10469
+ blockKinds: ["block.testimonials"],
10470
+ design: {
10471
+ sectionSurface: "brand-depth-band",
10472
+ contentFrame: plainFrame,
10473
+ itemSurface: "raised",
10474
+ testimonialCardTreatment: "statement"
10475
+ }
10476
+ }), defineBlockAppearancePreset({
10477
+ id: "testimonials-non-carded",
10478
+ target: "testimonials",
10479
+ label: "Non-carded",
10480
+ blockKinds: ["block.testimonials"],
10481
+ design: {
10482
+ sectionSurface: "muted-band",
10483
+ contentFrame: plainFrame,
10484
+ itemSurface: "none",
10485
+ testimonialCardTreatment: "non-carded"
10486
+ }
10487
+ }), defineBlockAppearancePreset({
10488
+ id: "testimonials-evergreen-lead",
10489
+ target: "testimonials",
10490
+ label: "Evergreen lead",
10491
+ blockKinds: ["block.testimonials"],
10492
+ constraints: { layoutVariantKeys: ["featured-editorial"] },
10493
+ design: {
10494
+ sectionSurface: "base",
10495
+ contentFrame: plainFrame,
10496
+ itemSurface: "none"
10497
+ }
10498
+ }), defineBlockAppearancePreset({
10499
+ id: "testimonials-room-and-response",
10500
+ target: "testimonials",
10501
+ label: "Room and response",
10502
+ blockKinds: ["block.testimonials"],
10503
+ constraints: { layoutVariantKeys: ["featured-editorial"] },
10504
+ design: {
10505
+ sectionSurface: "base",
10506
+ contentFrame: plainFrame,
10507
+ itemSurface: "none"
10508
+ }
10509
+ }), defineBlockAppearancePreset({
10510
+ id: "testimonials-open-floor",
10511
+ target: "testimonials",
10512
+ label: "Open floor",
10513
+ blockKinds: ["block.testimonials"],
10514
+ constraints: { layoutVariantKeys: ["featured-editorial"] },
10515
+ design: {
10516
+ sectionSurface: "base",
10517
+ contentFrame: plainFrame,
10518
+ itemSurface: "none"
10519
+ }
10520
+ }), defineBlockAppearancePreset({
10521
+ id: "faq-base-accordion",
10522
+ target: "faq",
10523
+ label: "Base accordion FAQ",
10524
+ blockKinds: ["block.faq"],
10525
+ design: {
10526
+ sectionSurface: "base",
10527
+ contentFrame: plainFrame,
10528
+ itemSurface: "default"
10529
+ }
10530
+ }), defineBlockAppearancePreset({
10531
+ id: "faq-contained-help",
10532
+ target: "faq",
10533
+ label: "Contained help panel",
10534
+ blockKinds: ["block.faq"],
10535
+ design: {
10536
+ sectionSurface: "muted-band",
10537
+ contentFrame: panelFrame("inset"),
10538
+ itemSurface: "default"
10539
+ }
10540
+ }), defineBlockAppearancePreset({
10541
+ id: "contact-form-panel",
10542
+ target: "contact-form",
10543
+ label: "Raised form panel",
10544
+ blockKinds: ["block.form"],
10545
+ design: {
10546
+ sectionSurface: "muted-band",
10547
+ contentFrame: panelFrame("raised"),
10548
+ itemSurface: "none"
10549
+ }
10550
+ }), defineBlockAppearancePreset({
10551
+ id: "cta-accent-band",
10552
+ target: "cta",
10553
+ label: "Accent CTA band",
10554
+ blockKinds: ["block.cta-full"],
10555
+ design: {
10556
+ sectionSurface: "accent-band",
10557
+ contentFrame: plainFrame,
10558
+ itemSurface: "none",
10559
+ eyebrowTreatment: "accent"
10560
+ }
10561
+ });
10562
+ }));
10563
+ //#endregion
10564
+ //#region ../theme-core/src/site-styles/appearancePresetCatalog.ts
10525
10565
  var init_appearancePresetCatalog = __esmMin((() => {
10526
10566
  init_blockAppearancePresets();
10527
- [...blockAppearancePresets];
10528
10567
  }));
10529
10568
  //#endregion
10530
10569
  //#region ../theme-core/src/site-styles/appearancePresetTypes.ts
@@ -10743,6 +10782,37 @@ var init_backgroundAppearance = __esmMin((() => {
10743
10782
  //#region ../theme-core/src/site-styles/compositionBudget.ts
10744
10783
  var init_compositionBudget = __esmMin((() => {}));
10745
10784
  //#endregion
10785
+ //#region ../theme-core/src/site-styles/headerInteractionPalette.ts
10786
+ var clearSplitInteractionPalette;
10787
+ var init_headerInteractionPalette = __esmMin((() => {
10788
+ init_interactionPalette();
10789
+ init_lookOptionGroups();
10790
+ clearSplitInteractionPalette = defineLookOptionGroup({
10791
+ id: "interaction-palette",
10792
+ label: "Hover colour",
10793
+ defaultOptionId: "accent",
10794
+ options: [
10795
+ {
10796
+ id: "accent",
10797
+ label: "Accent"
10798
+ },
10799
+ {
10800
+ id: "primary",
10801
+ label: "Primary"
10802
+ },
10803
+ {
10804
+ id: "secondary",
10805
+ label: "Secondary"
10806
+ }
10807
+ ]
10808
+ });
10809
+ }));
10810
+ //#endregion
10811
+ //#region ../theme-core/src/site-styles/headerOpeningForeground.ts
10812
+ var init_headerOpeningForeground = __esmMin((() => {
10813
+ init_tokens();
10814
+ }));
10815
+ //#endregion
10746
10816
  //#region ../theme-core/src/site-styles/customizableSurfaces.ts
10747
10817
  var init_customizableSurfaces = __esmMin((() => {}));
10748
10818
  //#endregion
@@ -10761,7 +10831,7 @@ function asHeaderStyleId(value) {
10761
10831
  * optional nested styling fields that would otherwise leak from another Look.
10762
10832
  */
10763
10833
  function baseHeader(theme) {
10764
- const { navLinkStyle: _navLinkStyle, navFontRole: _navFontRole, navTypography: _navTypography, navTextSize: _navTextSize, dropdownStyle: _dropdownStyle, ctaVariant: _ctaVariant, navContainer: _navContainer, container: _container, shadow: _shadow, logo: _logo, logoText: _logoText, border: _border, ...header } = theme.header;
10834
+ const { navLinkStyle: _navLinkStyle, navFontRole: _navFontRole, navTypography: _navTypography, navTextSize: _navTextSize, interactionPalette: _interactionPalette, dropdownStyle: _dropdownStyle, ctaVariant: _ctaVariant, navContainer: _navContainer, container: _container, shadow: _shadow, logo: _logo, logoText: _logoText, border: _border, ...header } = theme.header;
10765
10835
  return {
10766
10836
  ...header,
10767
10837
  navContainer: {
@@ -11120,12 +11190,11 @@ function floatingGlassHeader(theme) {
11120
11190
  }
11121
11191
  };
11122
11192
  }
11123
- function headerConfigurationKey(configuration) {
11124
- return `${configuration.structure}:${configuration.treatment}:${configuration.behavior}`;
11125
- }
11126
11193
  var titleOnlyLogoAccommodation, inlineWordmarkLogoAccommodation, inlineMarkWithTitleLogoAccommodation, logoPlateAccommodation, centeredBadgeAccommodation, popoutBadgeAccommodation, centeredMastheadAccommodation, unbackedOverlayLogoAccommodation, inlineClassicLogoAccommodations, centeredLogoAccommodations, overlayLogoAccommodations, headerLayoutCatalog, headerStyleCatalog, headerStylesById, headerStyleCompatibilityOrder, legacyHeaderLookAliases, legacyHeaderLookAliasesById, headerLookCatalog;
11127
11194
  var init_headerLooks = __esmMin((() => {
11128
11195
  init_headerCtaVariants();
11196
+ init_headerInteractionPalette();
11197
+ init_headerOpeningForeground();
11129
11198
  init_logoBranding();
11130
11199
  init_types$7();
11131
11200
  titleOnlyLogoAccommodation = {
@@ -11251,7 +11320,6 @@ var init_headerLooks = __esmMin((() => {
11251
11320
  id: asHeaderLayoutId("classic"),
11252
11321
  label: "Classic",
11253
11322
  description: "Logo and navigation in one practical horizontal row.",
11254
- structure: "inline-classic",
11255
11323
  variant: "classic",
11256
11324
  defaultPositioning: "sticky",
11257
11325
  shrinkOnScroll: false
@@ -11260,7 +11328,6 @@ var init_headerLooks = __esmMin((() => {
11260
11328
  id: asHeaderLayoutId("centered"),
11261
11329
  label: "Centered",
11262
11330
  description: "Logo centered above a balanced navigation row.",
11263
- structure: "centered-stack",
11264
11331
  variant: "centered",
11265
11332
  defaultPositioning: "static",
11266
11333
  shrinkOnScroll: false,
@@ -11276,7 +11343,6 @@ var init_headerLooks = __esmMin((() => {
11276
11343
  id: asHeaderLayoutId("floating"),
11277
11344
  label: "Floating",
11278
11345
  description: "Detached header chrome that sits over the opening section.",
11279
- structure: "floating-shell",
11280
11346
  variant: "floating",
11281
11347
  defaultPositioning: "sticky",
11282
11348
  shrinkOnScroll: true,
@@ -11435,10 +11501,13 @@ var init_headerLooks = __esmMin((() => {
11435
11501
  label: "Clear Split",
11436
11502
  description: "Floating logo with transparent navigation and no shared shell.",
11437
11503
  supportedLayoutIds: supportedLayouts(["floating"]),
11438
- navInteraction: "color-change",
11504
+ navInteraction: "pill-background",
11439
11505
  surface: "floating",
11440
- defaultDepth: "none",
11506
+ defaultDepth: "line",
11441
11507
  navTypography: "plain",
11508
+ openingForegroundTarget: "all",
11509
+ scrollTreatment: "contrast-glass",
11510
+ interactionPalette: clearSplitInteractionPalette,
11442
11511
  moods: ["editorial", "calm"]
11443
11512
  },
11444
11513
  {
@@ -11461,6 +11530,7 @@ var init_headerLooks = __esmMin((() => {
11461
11530
  surface: "floating",
11462
11531
  defaultDepth: "shadow",
11463
11532
  navTypography: "quiet-caps",
11533
+ openingForegroundTarget: "brand-only",
11464
11534
  moods: ["expressive"]
11465
11535
  },
11466
11536
  {
@@ -11472,6 +11542,7 @@ var init_headerLooks = __esmMin((() => {
11472
11542
  surface: "floating",
11473
11543
  defaultDepth: "shadow",
11474
11544
  navTypography: "heading",
11545
+ openingForegroundTarget: "brand-only",
11475
11546
  moods: ["calm", "editorial"]
11476
11547
  }
11477
11548
  ]);
@@ -11627,13 +11698,6 @@ var init_headerLooks = __esmMin((() => {
11627
11698
  {
11628
11699
  id: asHeaderLookId("clean-base"),
11629
11700
  label: "Clean base",
11630
- visualTreatment: "solid-neutral",
11631
- layoutBehavior: "sticky",
11632
- configuration: {
11633
- structure: "inline-classic",
11634
- treatment: "solid-neutral",
11635
- behavior: "sticky"
11636
- },
11637
11701
  openingRequirement: "none",
11638
11702
  logoAccommodations: inlineClassicLogoAccommodations,
11639
11703
  compile: cleanBaseHeader
@@ -11641,13 +11705,6 @@ var init_headerLooks = __esmMin((() => {
11641
11705
  {
11642
11706
  id: asHeaderLookId("classic-centered-nav"),
11643
11707
  label: "Centered nav",
11644
- visualTreatment: "solid-neutral",
11645
- layoutBehavior: "sticky",
11646
- configuration: {
11647
- structure: "inline-classic",
11648
- treatment: "solid-neutral",
11649
- behavior: "sticky"
11650
- },
11651
11708
  openingRequirement: "none",
11652
11709
  maxRecommendedNavItems: 6,
11653
11710
  logoAccommodations: inlineClassicLogoAccommodations,
@@ -11656,13 +11713,6 @@ var init_headerLooks = __esmMin((() => {
11656
11713
  {
11657
11714
  id: asHeaderLookId("brand-solid"),
11658
11715
  label: "Brand solid",
11659
- visualTreatment: "solid-brand",
11660
- layoutBehavior: "sticky-shrink",
11661
- configuration: {
11662
- structure: "inline-classic",
11663
- treatment: "solid-brand",
11664
- behavior: "sticky-shrink"
11665
- },
11666
11716
  openingRequirement: "none",
11667
11717
  logoAccommodations: inlineClassicLogoAccommodations,
11668
11718
  compile: solidBrandHeader
@@ -11670,13 +11720,6 @@ var init_headerLooks = __esmMin((() => {
11670
11720
  {
11671
11721
  id: asHeaderLookId("serif-line"),
11672
11722
  label: "Serif line",
11673
- visualTreatment: "light-serif",
11674
- layoutBehavior: "sticky",
11675
- configuration: {
11676
- structure: "centered-stack",
11677
- treatment: "light-serif",
11678
- behavior: "sticky"
11679
- },
11680
11723
  openingRequirement: "none",
11681
11724
  maxRecommendedNavItems: 6,
11682
11725
  logoAccommodations: centeredLogoAccommodations,
@@ -11685,13 +11728,6 @@ var init_headerLooks = __esmMin((() => {
11685
11728
  {
11686
11729
  id: asHeaderLookId("centered-calm"),
11687
11730
  label: "Centered calm",
11688
- visualTreatment: "light-serif",
11689
- layoutBehavior: "normal-flow",
11690
- configuration: {
11691
- structure: "centered-stack",
11692
- treatment: "light-serif",
11693
- behavior: "normal-flow"
11694
- },
11695
11731
  openingRequirement: "none",
11696
11732
  maxRecommendedNavItems: 5,
11697
11733
  logoAccommodations: centeredLogoAccommodations,
@@ -11700,13 +11736,6 @@ var init_headerLooks = __esmMin((() => {
11700
11736
  {
11701
11737
  id: asHeaderLookId("practical-utility"),
11702
11738
  label: "Practical utility",
11703
- visualTreatment: "solid-neutral",
11704
- layoutBehavior: "sticky-shrink",
11705
- configuration: {
11706
- structure: "inline-classic",
11707
- treatment: "solid-neutral",
11708
- behavior: "sticky-shrink"
11709
- },
11710
11739
  openingRequirement: "none",
11711
11740
  requiresProminentCta: true,
11712
11741
  logoAccommodations: inlineClassicLogoAccommodations,
@@ -11715,13 +11744,6 @@ var init_headerLooks = __esmMin((() => {
11715
11744
  {
11716
11745
  id: asHeaderLookId("minimal-transparent"),
11717
11746
  label: "Minimal transparent",
11718
- visualTreatment: "minimal-transparent",
11719
- layoutBehavior: "normal-flow",
11720
- configuration: {
11721
- structure: "inline-classic",
11722
- treatment: "minimal-transparent",
11723
- behavior: "normal-flow"
11724
- },
11725
11747
  openingRequirement: "reserved-space-ok",
11726
11748
  logoAccommodations: inlineClassicLogoAccommodations,
11727
11749
  compile: minimalTransparentHeader
@@ -11729,13 +11751,6 @@ var init_headerLooks = __esmMin((() => {
11729
11751
  {
11730
11752
  id: asHeaderLookId("transparent-overlay"),
11731
11753
  label: "Transparent overlay",
11732
- visualTreatment: "transparent-overlay",
11733
- layoutBehavior: "fixed-overlay",
11734
- configuration: {
11735
- structure: "inline-classic",
11736
- treatment: "transparent-overlay",
11737
- behavior: "fixed-overlay"
11738
- },
11739
11754
  openingRequirement: "requires-image-hero-with-contrast-overlay",
11740
11755
  maxRecommendedNavItems: 5,
11741
11756
  logoAccommodations: overlayLogoAccommodations,
@@ -11744,20 +11759,12 @@ var init_headerLooks = __esmMin((() => {
11744
11759
  {
11745
11760
  id: asHeaderLookId("floating-glass"),
11746
11761
  label: "Floating glass",
11747
- visualTreatment: "floating-glass",
11748
- layoutBehavior: "fixed-floating",
11749
- configuration: {
11750
- structure: "floating-shell",
11751
- treatment: "floating-glass",
11752
- behavior: "fixed-floating"
11753
- },
11754
11762
  openingRequirement: "requires-image-hero-with-contrast-overlay",
11755
11763
  maxRecommendedNavItems: 5,
11756
11764
  logoAccommodations: overlayLogoAccommodations,
11757
11765
  compile: floatingGlassHeader
11758
11766
  }
11759
11767
  ]);
11760
- new Set(headerLookCatalog.map((look) => headerConfigurationKey(look.configuration)));
11761
11768
  new Map(headerLookCatalog.map((look) => [look.id, look]));
11762
11769
  }));
11763
11770
  //#endregion
@@ -15272,6 +15279,7 @@ var init_records = __esmMin((() => {}));
15272
15279
  //#region ../theme-core/src/site-styles/headerOpeningSection.ts
15273
15280
  var init_headerOpeningSection = __esmMin((() => {
15274
15281
  init_headerLooks();
15282
+ init_tokens();
15275
15283
  }));
15276
15284
  //#endregion
15277
15285
  //#region ../theme-core/src/site-styles/generatedDesignPipeline.ts
@@ -15492,8 +15500,11 @@ var init_site_styles = __esmMin((() => {
15492
15500
  init_generatedSchemas();
15493
15501
  init_generatedDesignPipeline();
15494
15502
  init_headerLooks();
15503
+ init_headerInteractionPalette();
15504
+ init_headerOpeningForeground();
15495
15505
  init_headerOpeningSection();
15496
15506
  init_lookResolution();
15507
+ init_lookOptionGroups();
15497
15508
  init_logoBranding();
15498
15509
  init_pageDesignAuthority();
15499
15510
  init_pageDesignEditorErrors();
@@ -15548,6 +15559,17 @@ var init_generateInputCss = __esmMin((() => {
15548
15559
  var init_generateNavLinkCSS = __esmMin((() => {
15549
15560
  init_types$8();
15550
15561
  init_generateEffectsCSS();
15562
+ })), NAV_DROPDOWN_SHIFT_PROPERTY, NAV_DROPDOWN_MAX_WIDTH_CSS;
15563
+ var init_navDropdownSizing = __esmMin((() => {
15564
+ NAV_DROPDOWN_SHIFT_PROPERTY = "--nav-dropdown-shift-x";
15565
+ NAV_DROPDOWN_MAX_WIDTH_CSS = `min(22rem, calc(100vw - 2rem))`;
15566
+ `${NAV_DROPDOWN_MAX_WIDTH_CSS}`, `${NAV_DROPDOWN_SHIFT_PROPERTY}`;
15567
+ }));
15568
+ //#endregion
15569
+ //#region ../theme-core/src/header/surfaceRules.ts
15570
+ var init_surfaceRules = __esmMin((() => {
15571
+ init_shared$5();
15572
+ init_colorStyles();
15551
15573
  })), NAV_LINK_PRESETS;
15552
15574
  var init_presets$1 = __esmMin((() => {
15553
15575
  NAV_LINK_PRESETS = {
@@ -15700,45 +15722,21 @@ var init_presets$1 = __esmMin((() => {
15700
15722
  Object.keys(NAV_LINK_PRESETS);
15701
15723
  }));
15702
15724
  //#endregion
15703
- //#region ../theme-core/src/responsive/breakpoints.ts
15704
- function mqUp(px) {
15705
- return `(min-width: ${px}px)`;
15706
- }
15707
- function mqDown(px) {
15708
- return `(max-width: ${px}px)`;
15709
- }
15710
- function mqBetween(minPx, maxPx) {
15711
- return `${mqUp(minPx)} and ${mqDown(maxPx)}`;
15712
- }
15713
- var BREAKPOINT_LG, BREAKPOINT_XL, BREAKPOINT_LG_DOWN;
15714
- var init_breakpoints = __esmMin((() => {
15715
- BREAKPOINT_LG = 1024;
15716
- BREAKPOINT_XL = 1280;
15717
- BREAKPOINT_LG_DOWN = BREAKPOINT_LG - 1;
15718
- mqUp(640);
15719
- mqUp(768);
15720
- mqUp(BREAKPOINT_LG);
15721
- mqUp(BREAKPOINT_XL);
15722
- mqDown(639);
15723
- mqDown(767);
15724
- mqDown(BREAKPOINT_LG_DOWN);
15725
- mqBetween(640, BREAKPOINT_LG_DOWN);
15726
- mqDown(640);
15727
- mqDown(768);
15728
- })), NAV_DROPDOWN_SHIFT_PROPERTY, NAV_DROPDOWN_MAX_WIDTH_CSS;
15729
- var init_navDropdownSizing = __esmMin((() => {
15730
- NAV_DROPDOWN_SHIFT_PROPERTY = "--nav-dropdown-shift-x";
15731
- NAV_DROPDOWN_MAX_WIDTH_CSS = `min(22rem, calc(100vw - 2rem))`;
15732
- `${NAV_DROPDOWN_MAX_WIDTH_CSS}`, `${NAV_DROPDOWN_SHIFT_PROPERTY}`;
15725
+ //#region ../theme-core/src/header/legacyNavLinkStyle.ts
15726
+ var init_legacyNavLinkStyle = __esmMin((() => {
15727
+ init_presets$1();
15733
15728
  }));
15734
15729
  //#endregion
15735
15730
  //#region ../theme-core/src/header/generateHeaderCss.ts
15736
15731
  var init_generateHeaderCss = __esmMin((() => {
15737
15732
  init_generateNavLinkCSS();
15738
- init_presets$1();
15739
15733
  init_shared$5();
15740
15734
  init_breakpoints();
15741
15735
  init_navDropdownSizing();
15736
+ init_scrollTreatment();
15737
+ init_paintTargets();
15738
+ init_surfaceRules();
15739
+ init_legacyNavLinkStyle();
15742
15740
  }));
15743
15741
  //#endregion
15744
15742
  //#region ../theme-core/src/header/index.ts
@@ -20995,23 +20993,14 @@ var init_heroLayoutControls = __esmMin((() => {
20995
20993
  }));
20996
20994
  //#endregion
20997
20995
  //#region ../blocks/src/system/constants/buttonRoles.ts
20998
- /**
20999
- * Temporary rollout boundary for persisted content written before issue #1220.
21000
- * Authoring remains strict through `blockButtonRoleSchema`; this parser exists
21001
- * only until the post-deploy role rewrite has been audited in production.
21002
- */
21003
- function canonicalizePersistedBlockButtonRole(value) {
21004
- return value === "link" || value === "tertiary" ? "ghost" : value;
21005
- }
21006
20996
  function isBlockButtonRole(value) {
21007
20997
  return blockButtonRoleSchema.safeParse(value).success;
21008
20998
  }
21009
- var BLOCK_BUTTON_ROLES, blockButtonRoleSchema, persistedBlockButtonRoleSchema, BLOCK_BUTTON_ROLE_LABELS, BLOCK_BUTTON_ROLE_OPTIONS;
20999
+ var BLOCK_BUTTON_ROLES, blockButtonRoleSchema, BLOCK_BUTTON_ROLE_LABELS, BLOCK_BUTTON_ROLE_OPTIONS;
21010
21000
  var init_buttonRoles = __esmMin((() => {
21011
21001
  init_buttons();
21012
21002
  BLOCK_BUTTON_ROLES = PUBLIC_BUTTON_ROLES;
21013
21003
  blockButtonRoleSchema = z$1.enum(BLOCK_BUTTON_ROLES);
21014
- persistedBlockButtonRoleSchema = z$1.preprocess((value) => typeof value === "string" ? canonicalizePersistedBlockButtonRole(value) : value, blockButtonRoleSchema);
21015
21004
  BLOCK_BUTTON_ROLE_LABELS = {
21016
21005
  primary: "Primary",
21017
21006
  secondary: "Secondary",
@@ -22392,6 +22381,7 @@ var init_newsletterForm = __esmMin((() => {
22392
22381
  }
22393
22382
  ],
22394
22383
  layout: [el$1("newsletter-form", withApiBindings$1({
22384
+ source: "block",
22395
22385
  destinationProvider: { $bind: { from: "destinationProvider" } },
22396
22386
  listId: { $bind: { from: "listId" } },
22397
22387
  preset: { $bind: { from: "preset" } },
@@ -24682,6 +24672,7 @@ var init_contact_newsletter = __esmMin((() => {
24682
24672
  as: "h2",
24683
24673
  className: "newsletter-copy-title"
24684
24674
  }, when("newsletterTitle"), bind$1("newsletterTitle")), richText({ className: "newsletter-copy-subtitle rb-prose rb-max-w-none" }, when("newsletterSubtitle"), bind$1("newsletterSubtitle"))]), el$1("newsletter-form", withApiBindings$1({
24675
+ source: "block",
24685
24676
  listId: { $bind: { from: "listId" } },
24686
24677
  preset: { $bind: { from: "preset" } },
24687
24678
  includePhone: { $bind: { from: "includePhone" } },
@@ -26697,14 +26688,31 @@ var init_site_footer_nav_groups_layout = __esmMin((() => {
26697
26688
  }));
26698
26689
  //#endregion
26699
26690
  //#region ../blocks/src/system/blocks/site-footer.ts
26700
- var brandLogo, navigation, legalNavigation, address, contact, hours, socials, authoredCopy, footerGroup, footerMainRegion, footerBottomRegion, footerLayout, siteFooterManifest, siteFooterBlockDefinition;
26691
+ var footerStandardContactBindings, footerMailingListBindings, footerSpamProtectionBinding, brandLogo, navigation, legalNavigation, address, contact, hours, socials, authoredCopy, footerEngagement, footerGroup, footerMainRegion, footerEngagementRegion, footerBottomRegion, footerLayout, siteFooterManifest, siteFooterBlockDefinition;
26701
26692
  var init_site_footer = __esmMin((() => {
26702
26693
  init_fragments$1();
26703
26694
  init_builder$1();
26704
26695
  init_defineBlock();
26705
26696
  init_site_footer_nav_groups_layout();
26697
+ init_api_bindings();
26706
26698
  init_colorStyles();
26707
26699
  init_surfaces();
26700
+ footerStandardContactBindings = {
26701
+ value: { $bind: { from: "module.engagement.runtime.value" } },
26702
+ submitLabel: { $bind: { from: "module.engagement.runtime.submitLabel" } },
26703
+ successMessage: { $bind: { from: "module.engagement.runtime.successMessage" } }
26704
+ };
26705
+ footerMailingListBindings = {
26706
+ source: { $bind: { from: "module.engagement.runtime.source" } },
26707
+ destinationRef: { $bind: { from: "module.engagement.runtime.destinationRef" } },
26708
+ listId: { $bind: { from: "module.engagement.runtime.listId" } },
26709
+ preset: { $bind: { from: "module.engagement.runtime.preset" } },
26710
+ includePhone: { $bind: { from: "module.engagement.runtime.includePhone" } },
26711
+ buttonLabel: { $bind: { from: "module.engagement.runtime.buttonLabel" } },
26712
+ successMessage: { $bind: { from: "module.engagement.runtime.successMessage" } },
26713
+ privacyNote: { $bind: { from: "module.engagement.runtime.privacyNote" } }
26714
+ };
26715
+ footerSpamProtectionBinding = { spamProtectionEnabled: { $bind: { from: "$root.spamProtectionEnabled" } } };
26708
26716
  brandLogo = link({
26709
26717
  href: "/",
26710
26718
  className: { $bind: {
@@ -26782,6 +26790,23 @@ var init_site_footer = __esmMin((() => {
26782
26790
  id: "content.interpolateRichTextTokens",
26783
26791
  options: { tokens: ["year", "site_name"] }
26784
26792
  }] }));
26793
+ footerEngagement = stack({
26794
+ gap: "md",
26795
+ className: "rb-w-full"
26796
+ }, [
26797
+ text({
26798
+ as: "p",
26799
+ className: "rb-body rb-opacity-80"
26800
+ }, bind$1("module.engagement.intro"), when("module.engagement.intro")),
26801
+ form(withApiBindings$1({
26802
+ ...footerStandardContactBindings,
26803
+ ...footerSpamProtectionBinding
26804
+ }), [], when("module.engagement.kind", { equals: "standard-contact" })),
26805
+ el$1("newsletter-form", withApiBindings$1({
26806
+ ...footerMailingListBindings,
26807
+ ...footerSpamProtectionBinding
26808
+ }), [], when("module.engagement.kind", { equals: "mailing-list" }))
26809
+ ], when("module.kind", { equals: "engagement" }));
26785
26810
  footerGroup = stack({
26786
26811
  gap: "md",
26787
26812
  align: "stretch",
@@ -26807,6 +26832,7 @@ var init_site_footer = __esmMin((() => {
26807
26832
  contact,
26808
26833
  hours,
26809
26834
  socials,
26835
+ footerEngagement,
26810
26836
  stack({ className: "rb-w-full" }, [authoredCopy], when("module.kind", { equals: "supporting-text" })),
26811
26837
  stack({ className: "rb-w-full rb-lg-col-span-3" }, [authoredCopy], when("module.kind", { equals: "legal" }))
26812
26838
  ], repeat("group.modules", "module"))], repeat("region.groups", "group"));
@@ -26814,6 +26840,10 @@ var init_site_footer = __esmMin((() => {
26814
26840
  className: { $bind: { from: "region.className" } },
26815
26841
  "data-footer-region": { $bind: { from: "region.kind" } }
26816
26842
  }, [footerGroup], when("region.kind", { equals: "main" }), repeat("content.footerRuntime.regions", "region"));
26843
+ footerEngagementRegion = stack({
26844
+ className: { $bind: { from: "region.className" } },
26845
+ "data-footer-region": "engagement-row"
26846
+ }, [footerGroup], when("region.kind", { equals: "engagement-row" }), repeat("content.footerRuntime.regions", "region"));
26817
26847
  footerBottomRegion = stack({ className: { $bind: {
26818
26848
  from: "$root.theme.footer",
26819
26849
  transforms: [{ id: "layout.footerBottomBarContainerClass" }],
@@ -26843,7 +26873,11 @@ var init_site_footer = __esmMin((() => {
26843
26873
  fallback: mergeStyles(backgroundColorStyle("surface"), surfaceForegroundStyle({ text: "rgb(var(--tb-text))" }), borderColorStyle("border"))
26844
26874
  } },
26845
26875
  "data-footer-membership": { $bind: { from: "content.footerRuntime.membershipKey" } }
26846
- }, [footerMainRegion, footerBottomRegion]);
26876
+ }, [
26877
+ footerEngagementRegion,
26878
+ footerMainRegion,
26879
+ footerBottomRegion
26880
+ ]);
26847
26881
  siteFooterManifest = createBlockManifest({
26848
26882
  id: "block.site-footer",
26849
26883
  title: "Site Footer",
@@ -29612,10 +29646,7 @@ var init_weekly_slot_availability = __esmMin((() => {
29612
29646
  }));
29613
29647
  //#endregion
29614
29648
  //#region ../blocks/src/system/blocks/events/shared/types.ts
29615
- var init_types$3 = __esmMin((() => {}));
29616
- //#endregion
29617
- //#region ../blocks/src/lib/media.ts
29618
- var PUBLIC_DOWNLOAD_MEDIA_TYPES, hotspotSchema, rotationSchema, rectSchema, aspectCropSchema, transformSchema, mediaPosterSchema, mediaBaseSchema, imageMediaSchema, videoMediaSchema, audioMediaSchema, documentMediaSchema, spreadsheetMediaSchema, archiveMediaSchema, mediaSchema;
29649
+ var init_types$3 = __esmMin((() => {})), PUBLIC_DOWNLOAD_MEDIA_TYPES, hotspotSchema, rotationSchema, rectSchema, aspectCropSchema, transformSchema, mediaPosterSchema, mediaBaseSchema, mediaIdentifierSchema, imageMediaSchema, videoMediaSchema, audioMediaSchema, documentMediaSchema, spreadsheetMediaSchema, archiveMediaSchema, mediaSchema, persistableMediaBaseSchema;
29619
29650
  var init_media$1 = __esmMin((() => {
29620
29651
  PUBLIC_DOWNLOAD_MEDIA_TYPES = [
29621
29652
  "document",
@@ -29681,6 +29712,7 @@ var init_media$1 = __esmMin((() => {
29681
29712
  poster: mediaPosterSchema.optional(),
29682
29713
  transform: transformSchema.optional()
29683
29714
  });
29715
+ mediaIdentifierSchema = z.string().trim().min(1).brand();
29684
29716
  imageMediaSchema = mediaBaseSchema.extend({ type: z.literal("image") });
29685
29717
  videoMediaSchema = mediaBaseSchema.extend({ type: z.literal("video") });
29686
29718
  audioMediaSchema = mediaBaseSchema.extend({ type: z.literal("audio") });
@@ -29695,6 +29727,15 @@ var init_media$1 = __esmMin((() => {
29695
29727
  spreadsheetMediaSchema,
29696
29728
  archiveMediaSchema
29697
29729
  ]);
29730
+ persistableMediaBaseSchema = mediaBaseSchema.extend({ identifier: mediaIdentifierSchema });
29731
+ z.discriminatedUnion("type", [
29732
+ persistableMediaBaseSchema.extend({ type: z.literal("image") }),
29733
+ persistableMediaBaseSchema.extend({ type: z.literal("video") }),
29734
+ persistableMediaBaseSchema.extend({ type: z.literal("audio") }),
29735
+ persistableMediaBaseSchema.extend({ type: z.literal("document") }),
29736
+ persistableMediaBaseSchema.extend({ type: z.literal("spreadsheet") }),
29737
+ persistableMediaBaseSchema.extend({ type: z.literal("archive") })
29738
+ ]);
29698
29739
  }));
29699
29740
  //#endregion
29700
29741
  //#region ../blocks/src/system/manifest/richTextSchema.ts
@@ -30479,9 +30520,9 @@ var init_shop_shared = __esmMin((() => {
30479
30520
  }));
30480
30521
  //#endregion
30481
30522
  //#region ../blocks/src/system/blocks/event-registration.shared.ts
30482
- var occurrenceContextSchema$1;
30523
+ var occurrenceContextSchema;
30483
30524
  var init_event_registration_shared = __esmMin((() => {
30484
- occurrenceContextSchema$1 = z$1.object({
30525
+ occurrenceContextSchema = z$1.object({
30485
30526
  id: z$1.string(),
30486
30527
  seriesId: z$1.string(),
30487
30528
  startsAt: z$1.string(),
@@ -30793,7 +30834,7 @@ var init_contract_schemas = __esmMin((() => {
30793
30834
  init_buttonRoles();
30794
30835
  previewStageSchema = z$1.enum(["preview", "published"]);
30795
30836
  registrationButtonVariantSchema = blockButtonRoleSchema;
30796
- eventButtonVariantSchema = persistedBlockButtonRoleSchema;
30837
+ eventButtonVariantSchema = blockButtonRoleSchema;
30797
30838
  eventLayoutSchema = z$1.enum(eventCalendarListLayoutValues);
30798
30839
  eventCalendarDisplayModeSchema = z$1.enum(eventCalendarDisplayModeValues);
30799
30840
  eventCalendarDefaultViewSchema = z$1.enum(eventCalendarDefaultViewValues);
@@ -30945,9 +30986,10 @@ function normalizeEventRegistrationEventInput(value) {
30945
30986
  function isRecord$7(value) {
30946
30987
  return typeof value === "object" && value !== null && !Array.isArray(value);
30947
30988
  }
30948
- var EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS, EVENT_REGISTRATION_SHELL_STEP_LABELS, eventRegistrationPublicEventSchema, eventRegistrationSourceSchema, eventRegistrationDisplaySchema, eventRegistrationHydrationSchema, eventRegistrationRenderSchema, eventRegistrationBlockRuntime;
30989
+ var EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS, EVENT_REGISTRATION_SHELL_STEP_LABELS, eventRegistrationPublicEventSchema, eventRegistrationHydrationSchemaShape, eventRegistrationSourceSchema, eventRegistrationDisplaySchema, eventRegistrationHydrationSchema, eventRegistrationRenderSchema, eventRegistrationBlockRuntime;
30949
30990
  var init_event_registration_interactive = __esmMin((() => {
30950
30991
  init_schemas();
30992
+ init_schemas$1();
30951
30993
  init_shop_shared();
30952
30994
  init_event_registration_shared();
30953
30995
  init_eventScope();
@@ -30972,28 +31014,37 @@ var init_event_registration_interactive = __esmMin((() => {
30972
31014
  "Payment"
30973
31015
  ];
30974
31016
  eventRegistrationPublicEventSchema = z$1.preprocess(normalizeEventRegistrationEventInput, publicEventSchema);
30975
- eventRegistrationSourceSchema = z$1.object({
30976
- siteId: z$1.string().optional(),
30977
- apiBaseUrl: z$1.string().optional(),
30978
- portalToken: z$1.string().nullable().optional(),
30979
- previewToken: z$1.string().nullable().optional(),
30980
- occurrenceContext: occurrenceContextSchema$1.optional(),
31017
+ eventRegistrationHydrationSchemaShape = {
31018
+ occurrenceContext: occurrenceContextSchema.optional(),
30981
31019
  subject: eventRegistrationPageSurfaceSubjectSchema.nullable().optional(),
30982
31020
  events: z$1.array(eventRegistrationPublicEventSchema).nullable().optional(),
30983
- className: z$1.string().nullable().optional(),
30984
- buttonText: z$1.string().nullable().optional(),
30985
- maxTickets: z$1.string().nullable().optional(),
31021
+ wholeSeriesOfferings: publicCoursesArraySchema.nullable().optional(),
31022
+ wholeSeriesOffering: publicCourseSchema.nullable().optional(),
31023
+ maxTickets: z$1.string().optional(),
30986
31024
  showVenue: z$1.boolean().optional(),
30987
31025
  showCapacity: z$1.boolean().optional(),
31026
+ showSessions: z$1.boolean().optional(),
31027
+ showPrice: z$1.boolean().optional(),
30988
31028
  successMessage: z$1.string().optional(),
30989
31029
  waitlistMessage: z$1.string().optional(),
31030
+ membershipMessage: z$1.string().optional(),
30990
31031
  buttonVariant: registrationButtonVariantSchema.optional(),
30991
31032
  overlayEnabled: z$1.boolean().optional(),
30992
31033
  spamProtectionEnabled: z$1.boolean().optional(),
30993
- stage: previewStageSchema.optional(),
30994
31034
  supportEmail: z$1.string().optional(),
30995
31035
  sitePasses: publicPassProductCollectionSchema.nullable().optional(),
30996
31036
  siteMemberships: publicMembershipProductCollectionSchema.nullable().optional()
31037
+ };
31038
+ eventRegistrationSourceSchema = z$1.object({
31039
+ siteId: z$1.string().optional(),
31040
+ apiBaseUrl: z$1.string().optional(),
31041
+ portalToken: z$1.string().nullable().optional(),
31042
+ previewToken: z$1.string().nullable().optional(),
31043
+ ...eventRegistrationHydrationSchemaShape,
31044
+ className: z$1.string().nullable().optional(),
31045
+ buttonText: z$1.string().nullable().optional(),
31046
+ maxTickets: z$1.string().nullable().optional(),
31047
+ stage: previewStageSchema.optional()
30997
31048
  });
30998
31049
  eventRegistrationDisplaySchema = z$1.object({
30999
31050
  kind: z$1.literal("event-registration"),
@@ -31004,22 +31055,7 @@ var init_event_registration_interactive = __esmMin((() => {
31004
31055
  stepLabels: z$1.array(z$1.enum(EVENT_REGISTRATION_SHELL_STEP_LABELS)).min(1),
31005
31056
  summaryButtonText: z$1.string()
31006
31057
  });
31007
- eventRegistrationHydrationSchema = z$1.object({
31008
- occurrenceContext: occurrenceContextSchema$1.optional(),
31009
- subject: eventRegistrationPageSurfaceSubjectSchema.nullable().optional(),
31010
- events: z$1.array(eventRegistrationPublicEventSchema).nullable().optional(),
31011
- maxTickets: z$1.string().optional(),
31012
- showVenue: z$1.boolean().optional(),
31013
- showCapacity: z$1.boolean().optional(),
31014
- successMessage: z$1.string().optional(),
31015
- waitlistMessage: z$1.string().optional(),
31016
- buttonVariant: registrationButtonVariantSchema.optional(),
31017
- overlayEnabled: z$1.boolean().optional(),
31018
- spamProtectionEnabled: z$1.boolean().optional(),
31019
- supportEmail: z$1.string().optional(),
31020
- sitePasses: publicPassProductCollectionSchema.nullable().optional(),
31021
- siteMemberships: publicMembershipProductCollectionSchema.nullable().optional()
31022
- });
31058
+ eventRegistrationHydrationSchema = z$1.object(eventRegistrationHydrationSchemaShape);
31023
31059
  eventRegistrationRenderSchema = z$1.object({
31024
31060
  display: eventRegistrationDisplaySchema,
31025
31061
  hydration: eventRegistrationHydrationSchema
@@ -31043,11 +31079,16 @@ var init_event_registration_interactive = __esmMin((() => {
31043
31079
  occurrenceContext: source.occurrenceContext ?? null,
31044
31080
  subject: source.subject ?? null,
31045
31081
  events: source.events ?? null,
31082
+ wholeSeriesOfferings: source.wholeSeriesOfferings ?? null,
31083
+ wholeSeriesOffering: source.wholeSeriesOffering ?? null,
31046
31084
  maxTickets: source.maxTickets ?? void 0,
31047
31085
  showVenue: source.showVenue,
31048
31086
  showCapacity: source.showCapacity,
31087
+ showSessions: source.showSessions,
31088
+ showPrice: source.showPrice,
31049
31089
  successMessage: source.successMessage,
31050
31090
  waitlistMessage: source.waitlistMessage,
31091
+ membershipMessage: source.membershipMessage,
31051
31092
  buttonVariant: source.buttonVariant,
31052
31093
  overlayEnabled: source.overlayEnabled,
31053
31094
  spamProtectionEnabled: source.spamProtectionEnabled,
@@ -31059,6 +31100,19 @@ var init_event_registration_interactive = __esmMin((() => {
31059
31100
  });
31060
31101
  }));
31061
31102
  //#endregion
31103
+ //#region ../blocks/src/system/blocks/courses/shared/types.ts
31104
+ var init_types$2 = __esmMin((() => {}));
31105
+ //#endregion
31106
+ //#region ../blocks/src/system/blocks/courses/shared/pricing.ts
31107
+ var init_pricing = __esmMin((() => {}));
31108
+ //#endregion
31109
+ //#region ../blocks/src/system/blocks/courses/shared/index.ts
31110
+ var init_shared$2 = __esmMin((() => {
31111
+ init_types$2();
31112
+ init_schemas$1();
31113
+ init_pricing();
31114
+ }));
31115
+ //#endregion
31062
31116
  //#region ../blocks/src/system/blocks/event-registration.ts
31063
31117
  var eventRegistrationManifest, eventRegistrationBlockDefinition;
31064
31118
  var init_event_registration = __esmMin((() => {
@@ -31072,6 +31126,7 @@ var init_event_registration = __esmMin((() => {
31072
31126
  init_defineBlock();
31073
31127
  init_event_registration_shared();
31074
31128
  init_event_registration_interactive();
31129
+ init_shared$2();
31075
31130
  eventRegistrationManifest = createBlockManifest({
31076
31131
  id: "block.event-registration",
31077
31132
  version: "1.0.0",
@@ -31166,6 +31221,24 @@ var init_event_registration = __esmMin((() => {
31166
31221
  defaultValue: true,
31167
31222
  ui: { intent: "display" }
31168
31223
  },
31224
+ {
31225
+ id: "showSessions",
31226
+ type: "boolean",
31227
+ label: "Show complete schedule",
31228
+ description: "Display every session for whole-series registrations",
31229
+ required: false,
31230
+ defaultValue: true,
31231
+ ui: { intent: "display" }
31232
+ },
31233
+ {
31234
+ id: "showPrice",
31235
+ type: "boolean",
31236
+ label: "Show price",
31237
+ description: "Display the whole-series price",
31238
+ required: false,
31239
+ defaultValue: true,
31240
+ ui: { intent: "display" }
31241
+ },
31169
31242
  {
31170
31243
  id: "successMessage",
31171
31244
  type: "text",
@@ -31176,6 +31249,26 @@ var init_event_registration = __esmMin((() => {
31176
31249
  defaultValue: "Thank you for registering! Check your email for confirmation details.",
31177
31250
  maxLength: 500
31178
31251
  },
31252
+ {
31253
+ id: "waitlistMessage",
31254
+ type: "text",
31255
+ label: "Waitlist message",
31256
+ description: "Message shown after joining a whole-series waitlist",
31257
+ required: false,
31258
+ multiline: true,
31259
+ defaultValue: "You've been added to the waitlist. We'll email you if a place becomes available.",
31260
+ maxLength: 500
31261
+ },
31262
+ {
31263
+ id: "membershipMessage",
31264
+ type: "text",
31265
+ label: "Membership registration message",
31266
+ description: "Message shown when a whole-series place is covered by membership",
31267
+ required: false,
31268
+ multiline: true,
31269
+ defaultValue: "Registered using your membership. Check your email for session details.",
31270
+ maxLength: 500
31271
+ },
31179
31272
  {
31180
31273
  id: "buttonText",
31181
31274
  type: "text",
@@ -31207,8 +31300,11 @@ var init_event_registration = __esmMin((() => {
31207
31300
  } },
31208
31301
  showVenue: { $bind: { from: "content.showVenue" } },
31209
31302
  showCapacity: { $bind: { from: "content.showCapacity" } },
31303
+ showSessions: { $bind: { from: "content.showSessions" } },
31304
+ showPrice: { $bind: { from: "content.showPrice" } },
31210
31305
  successMessage: { $bind: { from: "content.successMessage" } },
31211
31306
  waitlistMessage: { $bind: { from: "content.waitlistMessage" } },
31307
+ membershipMessage: { $bind: { from: "content.membershipMessage" } },
31212
31308
  buttonText: { $bind: {
31213
31309
  from: "content.buttonText",
31214
31310
  fallback: "Complete Registration"
@@ -31222,6 +31318,7 @@ var init_event_registration = __esmMin((() => {
31222
31318
  fallback: false
31223
31319
  } },
31224
31320
  events: { $bind: { from: "data.events" } },
31321
+ wholeSeriesOffering: { $bind: { from: "data.wholeSeriesOffering.offering" } },
31225
31322
  sitePasses: { $bind: { from: "data.sitePasses" } },
31226
31323
  siteMemberships: { $bind: { from: "data.siteMemberships" } },
31227
31324
  stage: { $bind: {
@@ -31237,9 +31334,10 @@ var init_event_registration = __esmMin((() => {
31237
31334
  runtime: eventRegistrationBlockRuntime,
31238
31335
  dataSchemas: {
31239
31336
  events: publicEventsArraySchema.optional(),
31337
+ wholeSeriesOffering: z$1.object({ offering: publicCourseSchema }).optional(),
31240
31338
  sitePasses: publicPassProductCollectionSchema.optional(),
31241
31339
  siteMemberships: publicMembershipProductCollectionSchema.optional(),
31242
- occurrenceContext: occurrenceContextSchema$1.optional()
31340
+ occurrenceContext: occurrenceContextSchema.optional()
31243
31341
  },
31244
31342
  dataLoaders: {
31245
31343
  events: {
@@ -31252,11 +31350,23 @@ var init_event_registration = __esmMin((() => {
31252
31350
  fallback: "published"
31253
31351
  } },
31254
31352
  readProfile: "registration",
31255
- seriesId: { $bind: { from: "$root.occurrenceContext.seriesId" } },
31353
+ seriesId: { $bind: { from: "$root.subject.eventSeriesId" } },
31256
31354
  includeOccurrenceId: { $bind: { from: "$root.occurrenceContext.id" } }
31257
31355
  },
31258
31356
  mode: "server"
31259
31357
  },
31358
+ wholeSeriesOffering: {
31359
+ endpoint: "getPublicWholeSeriesOffering",
31360
+ params: {
31361
+ siteId: { $bind: { from: "$root.siteId" } },
31362
+ eventSeriesId: { $bind: { from: "$root.subject.eventSeriesId" } },
31363
+ stage: { $bind: {
31364
+ from: "$root.previewStage",
31365
+ fallback: "published"
31366
+ } }
31367
+ },
31368
+ mode: "server"
31369
+ },
31260
31370
  sitePasses: {
31261
31371
  endpoint: "listPublicPasses",
31262
31372
  params: { siteId: { $bind: { from: "$root.siteId" } } },
@@ -31271,19 +31381,6 @@ var init_event_registration = __esmMin((() => {
31271
31381
  };
31272
31382
  }));
31273
31383
  //#endregion
31274
- //#region ../blocks/src/system/blocks/courses/shared/types.ts
31275
- var init_types$2 = __esmMin((() => {}));
31276
- //#endregion
31277
- //#region ../blocks/src/system/blocks/courses/shared/pricing.ts
31278
- var init_pricing = __esmMin((() => {}));
31279
- //#endregion
31280
- //#region ../blocks/src/system/blocks/courses/shared/index.ts
31281
- var init_shared$2 = __esmMin((() => {
31282
- init_types$2();
31283
- init_schemas$1();
31284
- init_pricing();
31285
- }));
31286
- //#endregion
31287
31384
  //#region ../blocks/src/system/runtime/nodes/course-registration.interactive.ts
31288
31385
  function buildCourseRegistrationDisplay(source) {
31289
31386
  return {
@@ -31563,7 +31660,7 @@ var init_course_registration = __esmMin((() => {
31563
31660
  }));
31564
31661
  //#endregion
31565
31662
  //#region ../blocks/src/system/blocks/event-details.ts
31566
- var eventDetailsManifest, occurrenceContextSchema, eventAutoApplyDiscountPreviewBaseSchema, eventAutoApplyDiscountPreviewSchema, eventDetailsBlockDefinition;
31663
+ var eventDetailsManifest, eventAutoApplyDiscountPreviewBaseSchema, eventAutoApplyDiscountPreviewSchema, eventDetailsBlockDefinition;
31567
31664
  var init_event_details = __esmMin((() => {
31568
31665
  init_builder$1();
31569
31666
  init_styledSection();
@@ -31571,6 +31668,7 @@ var init_event_details = __esmMin((() => {
31571
31668
  init_shared$3();
31572
31669
  init_shop_shared();
31573
31670
  init_defineBlock();
31671
+ init_event_registration_shared();
31574
31672
  eventDetailsManifest = createBlockManifest({
31575
31673
  id: "block.event-details",
31576
31674
  version: "1.0.0",
@@ -31725,15 +31823,6 @@ var init_event_details = __esmMin((() => {
31725
31823
  })], { gap: "lg" })
31726
31824
  })]
31727
31825
  });
31728
- occurrenceContextSchema = z$1.object({
31729
- id: z$1.string(),
31730
- seriesId: z$1.string(),
31731
- startsAt: z$1.string(),
31732
- endsAt: z$1.string(),
31733
- timeZone: z$1.string(),
31734
- capacityOverride: z$1.number().nullable().optional(),
31735
- overrides: z$1.record(z$1.string(), z$1.unknown()).nullable().optional()
31736
- }).nullable();
31737
31826
  eventAutoApplyDiscountPreviewBaseSchema = z$1.object({
31738
31827
  id: z$1.string(),
31739
31828
  publicLabel: z$1.string(),
@@ -31768,8 +31857,9 @@ var init_event_details = __esmMin((() => {
31768
31857
  from: "$root.previewStage",
31769
31858
  fallback: "published"
31770
31859
  } },
31771
- limit: "25",
31772
- seriesId: { $bind: { from: "$root.occurrenceContext.seriesId" } },
31860
+ limit: "100",
31861
+ readProfile: "details",
31862
+ seriesId: { $bind: { from: "$root.subject.eventSeriesId" } },
31773
31863
  includeOccurrenceId: { $bind: { from: "$root.occurrenceContext.id" } }
31774
31864
  },
31775
31865
  mode: "server"
@@ -38185,9 +38275,6 @@ function parseSignedNewsletterDestinationRef(value) {
38185
38275
  const trimmed = parseTrimmedString(value);
38186
38276
  return trimmed && SIGNED_DESTINATION_REF_PATTERN.test(trimmed) ? trimmed : null;
38187
38277
  }
38188
- function parseNewsletterSignupDestinationProvider(value) {
38189
- return value === "riverbank" || value === "mailchimp" ? value : null;
38190
- }
38191
38278
  function buildNewsletterSignupBlockRef(blockId) {
38192
38279
  const parsed = parseNewsletterSignupBlockId(blockId);
38193
38280
  return parsed ? {
@@ -38248,6 +38335,7 @@ function isRecord$4(value) {
38248
38335
  }
38249
38336
  var BLOCK_ID_PATTERN, SIGNED_DESTINATION_REF_PATTERN;
38250
38337
  var init_newsletter_signup_destination = __esmMin((() => {
38338
+ init_src$4();
38251
38339
  BLOCK_ID_PATTERN = /^[A-Za-z0-9._:-]{1,200}$/;
38252
38340
  SIGNED_DESTINATION_REF_PATTERN = /^[A-Za-z0-9._~-]{16,1000}$/;
38253
38341
  }));
@@ -38354,6 +38442,30 @@ function buildNewsletterDisplay(source) {
38354
38442
  fields: getPresetFields(preset, { includePhone })
38355
38443
  };
38356
38444
  }
38445
+ function projectNewsletterFormHydrationTarget(source) {
38446
+ switch (source.source) {
38447
+ case "block": {
38448
+ const destinationRef = buildNewsletterSignupBlockRef(source.blockId);
38449
+ if (destinationRef?.tag === "block_ref") return {
38450
+ tag: "block-source",
38451
+ destinationRef
38452
+ };
38453
+ return {
38454
+ tag: "legacy-direct-list",
38455
+ listId: source.listId ?? null
38456
+ };
38457
+ }
38458
+ case "signed-footer": return {
38459
+ tag: "signed-footer-source",
38460
+ destinationRef: source.destinationRef
38461
+ };
38462
+ case "legacy-direct-list": return {
38463
+ tag: "legacy-direct-list",
38464
+ listId: source.listId
38465
+ };
38466
+ default: return assertNever$3(source);
38467
+ }
38468
+ }
38357
38469
  function parseRequiredNewsletterSignupBlockId(value) {
38358
38470
  const parsed = parseNewsletterSignupBlockId(value);
38359
38471
  if (!parsed) throw new Error("Newsletter signup block destination ref requires blockId");
@@ -38364,8 +38476,9 @@ function parseRequiredSignedNewsletterDestinationRef(value) {
38364
38476
  if (!parsed) throw new Error("Newsletter signup signed destination ref requires token");
38365
38477
  return parsed;
38366
38478
  }
38367
- var newsletterPresetSchema, newsletterDestinationProviderSchema, newsletterButtonVariantSchema, newsletterFieldSchema, newsletterSignupBlockIdSchema, signedNewsletterDestinationRefSchema, newsletterPublicDestinationRefSchema, newsletterSourceSchema, newsletterDisplaySchema, newsletterHydrationSchema, newsletterRenderSchema, newsletterFormBlockRuntime;
38479
+ var newsletterPresetSchema, newsletterDestinationProviderSchema, newsletterButtonVariantSchema, newsletterFieldSchema, newsletterSignupBlockIdSchema, signedNewsletterDestinationRefSchema, newsletterSourceCommonSchema, newsletterSourceSchema, newsletterDisplaySchema, newsletterHydrationSchema, newsletterRenderSchema, newsletterFormBlockRuntime;
38368
38480
  var init_newsletter_form_interactive = __esmMin((() => {
38481
+ init_src$4();
38369
38482
  init_islands();
38370
38483
  init_runtime$1();
38371
38484
  init_newsletter_signup_destination();
@@ -38388,19 +38501,9 @@ var init_newsletter_form_interactive = __esmMin((() => {
38388
38501
  });
38389
38502
  newsletterSignupBlockIdSchema = z$1.string().trim().min(1).transform(parseRequiredNewsletterSignupBlockId);
38390
38503
  signedNewsletterDestinationRefSchema = z$1.string().trim().min(1).transform(parseRequiredSignedNewsletterDestinationRef);
38391
- newsletterPublicDestinationRefSchema = z$1.discriminatedUnion("tag", [z$1.object({
38392
- tag: z$1.literal("block_ref"),
38393
- blockId: newsletterSignupBlockIdSchema
38394
- }), z$1.object({
38395
- tag: z$1.literal("signed_destination_ref"),
38396
- token: signedNewsletterDestinationRefSchema
38397
- })]);
38398
- newsletterSourceSchema = z$1.object({
38399
- blockId: z$1.string().nullable().optional(),
38504
+ newsletterSourceCommonSchema = z$1.object({
38400
38505
  siteId: z$1.string().optional(),
38401
38506
  apiBaseUrl: z$1.string().optional(),
38402
- listId: z$1.string().nullable().optional(),
38403
- destinationProvider: newsletterDestinationProviderSchema.nullable().optional(),
38404
38507
  preset: newsletterPresetSchema.optional(),
38405
38508
  includePhone: z$1.boolean().optional(),
38406
38509
  buttonLabel: z$1.string().nullable().optional(),
@@ -38411,6 +38514,25 @@ var init_newsletter_form_interactive = __esmMin((() => {
38411
38514
  spamProtectionEnabled: z$1.boolean().optional(),
38412
38515
  className: z$1.string().nullable().optional()
38413
38516
  });
38517
+ newsletterSourceSchema = z$1.discriminatedUnion("source", [
38518
+ newsletterSourceCommonSchema.extend({
38519
+ source: z$1.literal("block"),
38520
+ blockId: z$1.string().nullable().optional(),
38521
+ listId: z$1.string().nullable().optional(),
38522
+ destinationProvider: newsletterDestinationProviderSchema.nullable().optional()
38523
+ }),
38524
+ newsletterSourceCommonSchema.extend({
38525
+ source: z$1.literal("signed-footer"),
38526
+ destinationRef: z$1.object({
38527
+ tag: z$1.literal("signed_destination_ref"),
38528
+ token: signedNewsletterDestinationRefSchema
38529
+ })
38530
+ }),
38531
+ newsletterSourceCommonSchema.extend({
38532
+ source: z$1.literal("legacy-direct-list"),
38533
+ listId: z$1.string().nullable()
38534
+ })
38535
+ ]);
38414
38536
  newsletterDisplaySchema = z$1.object({
38415
38537
  kind: z$1.literal("newsletter-form"),
38416
38538
  className: z$1.string().nullable(),
@@ -38421,8 +38543,26 @@ var init_newsletter_form_interactive = __esmMin((() => {
38421
38543
  fields: z$1.array(newsletterFieldSchema)
38422
38544
  });
38423
38545
  newsletterHydrationSchema = z$1.object({
38424
- destinationRef: newsletterPublicDestinationRefSchema.nullable().optional(),
38425
- listId: z$1.string().nullable().optional(),
38546
+ target: z$1.discriminatedUnion("tag", [
38547
+ z$1.object({
38548
+ tag: z$1.literal("block-source"),
38549
+ destinationRef: z$1.object({
38550
+ tag: z$1.literal("block_ref"),
38551
+ blockId: newsletterSignupBlockIdSchema
38552
+ }).nullable()
38553
+ }),
38554
+ z$1.object({
38555
+ tag: z$1.literal("signed-footer-source"),
38556
+ destinationRef: z$1.object({
38557
+ tag: z$1.literal("signed_destination_ref"),
38558
+ token: signedNewsletterDestinationRefSchema
38559
+ })
38560
+ }),
38561
+ z$1.object({
38562
+ tag: z$1.literal("legacy-direct-list"),
38563
+ listId: z$1.string().nullable()
38564
+ })
38565
+ ]),
38426
38566
  preset: newsletterPresetSchema,
38427
38567
  includePhone: z$1.boolean(),
38428
38568
  tags: z$1.string().nullable().optional(),
@@ -38443,15 +38583,14 @@ var init_newsletter_form_interactive = __esmMin((() => {
38443
38583
  render: createZodCodec(newsletterRenderSchema)
38444
38584
  },
38445
38585
  buildRender: (source) => {
38446
- const runtimeSource = deriveNewsletterSignupRuntimeSource(source);
38586
+ const runtimeSource = source.source === "block" ? deriveNewsletterSignupRuntimeSource(source) : null;
38447
38587
  return {
38448
38588
  display: buildNewsletterDisplay(source),
38449
38589
  hydration: {
38450
- destinationRef: buildNewsletterSignupBlockRef(source.blockId),
38451
- listId: runtimeSource.listId,
38590
+ target: projectNewsletterFormHydrationTarget(source),
38452
38591
  preset: source.preset ?? "emailOnly",
38453
38592
  includePhone: source.includePhone ?? false,
38454
- tags: runtimeSource.tags,
38593
+ tags: runtimeSource ? runtimeSource.tags : source.tags,
38455
38594
  spamProtectionEnabled: source.spamProtectionEnabled
38456
38595
  }
38457
38596
  };
@@ -41370,6 +41509,7 @@ var init_loaderEndpoints = __esmMin((() => {
41370
41509
  "listPublicRecurringSchedule",
41371
41510
  "getPublicEventDetails",
41372
41511
  "listPublicWholeSeriesOfferings",
41512
+ "getPublicWholeSeriesOffering",
41373
41513
  "listPublicRouteCandidates",
41374
41514
  "listPublicTeamMembers",
41375
41515
  "listPublicProducts",
@@ -42873,6 +43013,13 @@ async function listPublicEvents({ client, params }) {
42873
43013
  async function listPublicRecurringSchedule(input) {
42874
43014
  return projectRecurringSchedule(await listPublicEvents(input));
42875
43015
  }
43016
+ async function getPublicWholeSeriesOffering({ client, params }) {
43017
+ return await client.getPublicWholeSeriesOffering({
43018
+ siteId: requireStringParam(params, "siteId", "getPublicWholeSeriesOffering"),
43019
+ eventSeriesId: requireStringParam(params, "eventSeriesId", "getPublicWholeSeriesOffering"),
43020
+ stage: readStringParam(params, "stage")
43021
+ });
43022
+ }
42876
43023
  async function getPublicEventDetails({ client, params }) {
42877
43024
  return await client.getPublicEventDetails({
42878
43025
  siteId: requireStringParam(params, "siteId", "getPublicEventDetails"),
@@ -43038,6 +43185,7 @@ var init_prefetchBlockData = __esmMin((() => {
43038
43185
  listPublicEvents,
43039
43186
  listPublicRecurringSchedule,
43040
43187
  getPublicEventDetails,
43188
+ getPublicWholeSeriesOffering,
43041
43189
  listPublicRouteCandidates,
43042
43190
  listPublicTeamMembers,
43043
43191
  listPublicProducts,