@riverbankcms/sdk 0.138.0 → 0.139.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 (208) hide show
  1. package/README.md +11 -15
  2. package/dist/{PreviewEditorSidebar-BVPur_CU.mjs → PreviewEditorSidebar-BDeenhi3.mjs} +4 -4
  3. package/dist/{PreviewEditorUI-DLhWX8oh.mjs → PreviewEditorUI-DSRhgjF5.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-BguJY1SW.mjs → PreviewQueryProvider-D2K8GLUG.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-Tda6qw4z.mjs → SdkPreviewModeRuntime-CL7wSnYu.mjs} +47 -27
  6. package/dist/{SiteChromeCustomizeContext-BHFgMjde.mjs → SiteChromeCustomizeContext-BhDn-5ir.mjs} +7771 -5863
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +99 -330
  8. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +9 -30
  9. package/dist/_dts/api/src/billing.d.ts +10 -3
  10. package/dist/_dts/api/src/contentRuntime.d.ts +8 -1
  11. package/dist/_dts/api/src/endpoints.d.ts +182 -103
  12. package/dist/_dts/api/src/footerSettings.d.ts +2 -5
  13. package/dist/_dts/api/src/index.d.ts +11 -9
  14. package/dist/_dts/api/src/mailchimpIntegration.d.ts +2 -59
  15. package/dist/_dts/api/src/mailingListIntegration.d.ts +117 -0
  16. package/dist/_dts/api/src/navigation/locations.d.ts +1 -0
  17. package/dist/_dts/api/src/navigation.d.ts +1 -26
  18. package/dist/_dts/api/src/newsletterEndpointDefinitions.d.ts +109 -2
  19. package/dist/_dts/api/src/onboarding/surfaceData.d.ts +185 -0
  20. package/dist/_dts/api/src/privacyPolicy.d.ts +74 -2
  21. package/dist/_dts/api/src/publicBookingAvailabilityEndpointDefinitions.d.ts +6 -6
  22. package/dist/_dts/api/src/publicEventEndpointDefinitions.d.ts +1 -1
  23. package/dist/_dts/api/src/publicExperience/newsletterEndpoints.d.ts +2 -4
  24. package/dist/_dts/api/src/publicExperience/sharedTypes.d.ts +10 -24
  25. package/dist/_dts/api/src/publicReadEndpointDefinitions.d.ts +73 -0
  26. package/dist/_dts/api/src/schemas/site-api-keys.d.ts +1 -1
  27. package/dist/_dts/api/src/sdkContracts.d.ts +2 -10
  28. package/dist/_dts/api/src/sdkThemeWire.d.ts +2 -2
  29. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +0 -29
  30. package/dist/_dts/api/src/siteOnboarding.d.ts +91 -228
  31. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +1 -9
  32. package/dist/_dts/api/src/siteSettings.d.ts +20 -1
  33. package/dist/_dts/api/src/types.d.ts +5 -4
  34. package/dist/_dts/billing/src/membership/index.d.ts +14 -7
  35. package/dist/_dts/billing/src/plans/display.d.ts +15 -0
  36. package/dist/_dts/billing/src/plans/registry.d.ts +2 -0
  37. package/dist/_dts/billing/src/plans/standing.d.ts +19 -0
  38. package/dist/_dts/billing/src/plans/types.d.ts +1 -7
  39. package/dist/_dts/billing/src/subscriptions/evidence.d.ts +12 -0
  40. package/dist/_dts/billing/src/subscriptions/standingEvidence.d.ts +31 -0
  41. package/dist/_dts/billing/src/subscriptions/store.d.ts +23 -5
  42. package/dist/_dts/blocks/src/PageRenderer.d.ts +6 -15
  43. package/dist/_dts/blocks/src/client.d.ts +1 -1
  44. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +32 -16
  45. package/dist/_dts/blocks/src/pageRendererContracts.d.ts +4 -0
  46. package/dist/_dts/blocks/src/pageRenderingMode.d.ts +12 -6
  47. package/dist/_dts/blocks/src/system/blocks/appointment-services.d.ts +11 -0
  48. package/dist/_dts/blocks/src/system/blocks/contact-newsletter.d.ts +39 -66
  49. package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +39 -114
  50. package/dist/_dts/blocks/src/system/blocks/offerings-preview/catalogue.d.ts +18 -0
  51. package/dist/_dts/blocks/src/system/blocks/offerings-preview/fields.d.ts +2 -0
  52. package/dist/_dts/blocks/src/system/blocks/offerings-preview/index.d.ts +4 -0
  53. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +7 -13
  54. package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
  55. package/dist/_dts/blocks/src/system/data/index.d.ts +2 -2
  56. package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
  57. package/dist/_dts/blocks/src/system/data/publicLoaderCachePolicy.d.ts +2 -74
  58. package/dist/_dts/blocks/src/system/fragments/library/newsletterForm.d.ts +33 -100
  59. package/dist/_dts/blocks/src/system/runtime/api/types/newsletter.d.ts +5 -15
  60. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +48 -24
  61. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +24 -12
  62. package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.d.ts +3 -0
  63. package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.state.d.ts +1 -1
  64. package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarToday.d.ts +22 -0
  65. package/dist/_dts/blocks/src/system/runtime/nodes/appointment-services.d.ts +51 -0
  66. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +2 -0
  67. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +0 -1
  68. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +28 -0
  69. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/bookability.d.ts +9 -0
  70. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/dates.d.ts +14 -0
  71. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/duration.d.ts +2 -0
  72. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/index.d.ts +4 -0
  73. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/location.d.ts +2 -0
  74. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/quickDates.d.ts +16 -0
  75. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/AgendaEventCard.d.ts +9 -1
  76. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/CalendarDayCell.d.ts +2 -0
  77. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/CalendarDayHeaders.d.ts +4 -0
  78. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/DayEventsModal.d.ts +2 -1
  79. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.d.ts +5 -0
  80. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventModals.d.ts +2 -1
  81. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventQuickDates.d.ts +15 -0
  82. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekAgendaView.d.ts +7 -3
  83. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekTimetableView.d.ts +1 -0
  84. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/index.d.ts +2 -0
  85. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/timetableModel.d.ts +1 -0
  86. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/useHydrationReady.d.ts +6 -0
  87. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.client.state.d.ts +3 -0
  88. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +56 -33
  89. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.submission.d.ts +3 -3
  90. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +13 -31
  91. package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview-catalogue.d.ts +14 -0
  92. package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview-content.d.ts +23 -0
  93. package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +4 -2
  94. package/dist/_dts/blocks/src/system/transforms/registry/formatting.d.ts +5 -0
  95. package/dist/_dts/commerce/src/purchase/index.d.ts +1 -0
  96. package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +5 -12
  97. package/dist/_dts/commerce/src/purchase/stripeCommissionMetadata.d.ts +34 -0
  98. package/dist/_dts/content-editor/src/footerEngagementDraft.d.ts +6 -24
  99. package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +1 -2
  100. package/dist/_dts/core/src/footer-engagement.d.ts +2 -6
  101. package/dist/_dts/core/src/index.d.ts +9 -1
  102. package/dist/_dts/core/src/mailing-list-identifiers.d.ts +21 -0
  103. package/dist/_dts/core/src/mailing-list-runtime.d.ts +42 -0
  104. package/dist/_dts/core/src/mailing-list-setup-parser.d.ts +14 -0
  105. package/dist/_dts/core/src/mailing-list-setup.d.ts +129 -0
  106. package/dist/_dts/core/src/mailing-list-submission.d.ts +244 -0
  107. package/dist/_dts/core/src/mailing-list-targeting-parser.d.ts +12 -0
  108. package/dist/_dts/core/src/mailing-list-targeting.d.ts +93 -0
  109. package/dist/_dts/core/src/navigation-locations.d.ts +28 -0
  110. package/dist/_dts/core/src/public-profile.d.ts +9 -1
  111. package/dist/_dts/core/src/public-read-cache-contract.d.ts +45 -0
  112. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +529 -373
  113. package/dist/_dts/editor-blocks/src/widgets/index.d.ts +1 -0
  114. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/MailingListTargetingField.d.ts +11 -0
  115. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/context.d.ts +13 -0
  116. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/index.d.ts +3 -0
  117. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/loaders.d.ts +6 -0
  118. package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +1 -0
  119. package/dist/_dts/sdk/src/client/publicAppointmentReadOperations.d.ts +12 -0
  120. package/dist/_dts/sdk/src/client/publicEventReadOperations.d.ts +2 -1
  121. package/dist/_dts/sdk/src/client/publicLoaderCacheAccess.d.ts +11 -4
  122. package/dist/_dts/sdk/src/config/content-types.d.ts +3 -13
  123. package/dist/_dts/sdk/src/config/content-validation.d.ts +5 -8
  124. package/dist/_dts/sdk/src/constants.d.ts +3 -3
  125. package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
  126. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +12 -31
  127. package/dist/_dts/sdk/src/navigation/index.d.ts +11 -29
  128. package/dist/_dts/sdk/src/next/index.d.ts +4 -4
  129. package/dist/_dts/sdk/src/prebuild/types.d.ts +1 -5
  130. package/dist/_dts/sdk/src/public-api/contracts.d.ts +33 -16
  131. package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +3 -0
  132. package/dist/_dts/sdk/src/rendering/client.d.ts +3 -20
  133. package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +3 -0
  134. package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +4 -0
  135. package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +1 -0
  136. package/dist/_dts/sdk/src/rendering/index.d.ts +1 -1
  137. package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
  138. package/dist/_dts/sdk/src/version.d.ts +1 -1
  139. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  140. package/dist/_dts/theme-core/src/hosted-booking-appearance.d.ts +41 -0
  141. package/dist/_dts/theme-core/src/index.d.ts +1 -0
  142. package/dist/_dts/theme-core/src/runtime/buildThemeRuntime.d.ts +0 -1
  143. package/dist/_dts/theme-core/src/tokens/tokens.d.ts +7 -0
  144. package/dist/_dts/ui/src/badge.d.ts +1 -1
  145. package/dist/_dts/ui/src/callout.d.ts +1 -1
  146. package/dist/client/{BookingConsentAgreement-DQUik1Mx.mjs → BookingConsentAgreement-CZvTDtsK.mjs} +2 -2
  147. package/dist/client/{DiscountCodeDisclosure-CU67Q4vH.mjs → DiscountCodeDisclosure-D-DsLCMU.mjs} +1 -1
  148. package/dist/client/{EventCombined.client-a02TXUgg.mjs → EventCombined.client-dWqgd5ZO.mjs} +443 -199
  149. package/dist/client/{EventListing.client-99qx7jFl.mjs → EventListing.client-BMRa9IYp.mjs} +2 -2
  150. package/dist/client/{LeafletStaticMap-CWzcq73L.mjs → LeafletStaticMap-D21W9kBZ.mjs} +1 -1
  151. package/dist/client/{accordion-D1nb3-Oj.mjs → accordion-FxF_ta47.mjs} +1 -1
  152. package/dist/client/{bookingForm-BGrmLhaO.mjs → bookingForm-YnwW4TGw.mjs} +5 -5
  153. package/dist/client/bookings.mjs +43 -2
  154. package/dist/client/{carousel-DSmOx3ad.mjs → carousel-vng7fFT5.mjs} +1 -1
  155. package/dist/client/{cart-COWeOIUk.mjs → cart-DEPDsjNk.mjs} +3 -3
  156. package/dist/client/{checkout-CeysaIJK.mjs → checkout-CZRWu9rW.mjs} +3 -3
  157. package/dist/client/client.mjs +3331 -1407
  158. package/dist/client/{context-DBzX85Xc.mjs → context-DvU_WUmd.mjs} +4 -3
  159. package/dist/client/{dates-DCYhZBlW.mjs → dates-wnPMiRl5.mjs} +21 -3
  160. package/dist/client/{eventCalendar-BgsN73Ul.mjs → eventCalendar-BA3Q5L15.mjs} +80 -78
  161. package/dist/client/{eventCombined-DcZQAMQP.mjs → eventCombined-51wgR-1R.mjs} +3 -3
  162. package/dist/client/{eventDetails-BWwGJ54l.mjs → eventDetails-modaetpm.mjs} +4 -4
  163. package/dist/client/{eventListing-DqYqV8vp.mjs → eventListing-D8t2J3Kv.mjs} +3 -3
  164. package/dist/client/{eventRegistration-DQGDgu_e.mjs → eventRegistration-CYqtkCE_.mjs} +49 -9
  165. package/dist/client/{form-ClfpasVT.mjs → form-CBKXN5In.mjs} +2 -2
  166. package/dist/client/{headerSection-BuOMe98N.mjs → headerSection-DylDqNrs.mjs} +2 -2
  167. package/dist/client/hooks.mjs +1259 -555
  168. package/dist/client/{locationMap-CEqu_sfa.mjs → locationMap-CvWrG0vZ.mjs} +2 -2
  169. package/dist/client/{newsletterForm-IbrHjMxy.mjs → newsletterForm-Btwk70zw.mjs} +117 -38
  170. package/dist/client/{pricing-xj7MPZlK.mjs → pricing-Uzw-GQ6Y.mjs} +1 -1
  171. package/dist/client/{productDetail-vxqTt5Xj.mjs → productDetail-JLcUYKnd.mjs} +3 -3
  172. package/dist/client/{productList-OTdZu8sb.mjs → productList-FM0cbUzj.mjs} +3 -3
  173. package/dist/client/{propsDecoder-CY9gGEF7.mjs → propsDecoder-DYzafZb2.mjs} +592 -152
  174. package/dist/client/rendering/client.mjs +2259 -835
  175. package/dist/client/rendering/islands.mjs +17 -17
  176. package/dist/client/rendering.mjs +3308 -1236
  177. package/dist/client/{scrollToBlock--BFV6kl-.mjs → scrollToBlock-CvXszexS.mjs} +1 -1
  178. package/dist/client/{shop-CP4YbDL9.mjs → shop-BIcjvy5a.mjs} +6 -6
  179. package/dist/client/{shop-commerce-APs4XBXE.mjs → shop-commerce-BZQsy7xw.mjs} +5 -5
  180. package/dist/client/{shop-commerce-store-CAVLxLFr.mjs → shop-commerce-store-D5V7XAb5.mjs} +1 -1
  181. package/dist/client/{shopShared-BnSRrwXI.mjs → shopShared-DowkXevB.mjs} +3 -3
  182. package/dist/client/{useEventFilters-1a1by4c8.mjs → useEventFilters-oMoTw_JE.mjs} +56 -9
  183. package/dist/preview-next/before-render.mjs +238 -111
  184. package/dist/preview-next/client/runtime.mjs +4 -4
  185. package/dist/preview-next/keepAlive.mjs +238 -111
  186. package/dist/preview-next/middleware.mjs +238 -111
  187. package/dist/{previewAuthStore-BkEgnYPP.mjs → previewAuthStore-COUyAKaX.mjs} +238 -111
  188. package/dist/{sdk-runtime-DwGfsT0S.mjs → sdk-runtime-D4k2LSGF.mjs} +2 -2
  189. package/dist/{separator-BeqDLneQ.mjs → separator-UGtpag4Z.mjs} +1 -1
  190. package/dist/server/components.mjs +2697 -1023
  191. package/dist/server/config-validation.mjs +2424 -1720
  192. package/dist/server/config.mjs +2429 -1724
  193. package/dist/server/data.mjs +1164 -454
  194. package/dist/server/index.mjs +364 -280
  195. package/dist/server/navigation.mjs +16 -47
  196. package/dist/server/next.mjs +2915 -1380
  197. package/dist/server/page-converter.mjs +969 -522
  198. package/dist/server/prebuild.mjs +2 -3
  199. package/dist/server/rendering/server.mjs +2704 -1030
  200. package/dist/server/rendering.mjs +2742 -1063
  201. package/dist/server/routing.mjs +1386 -595
  202. package/dist/server/server.mjs +2878 -2324
  203. package/dist/server/theme-bridge.mjs +292 -24
  204. package/dist/styles/index.css +289 -25
  205. package/package.json +1 -1
  206. package/dist/_dts/api/src/navigation/identity.d.ts +0 -59
  207. package/dist/_dts/blocks/src/system/blocks/newsletter-signup-destination.d.ts +0 -291
  208. package/dist/_dts/core/src/newsletter-signup-destination.d.ts +0 -38
package/README.md CHANGED
@@ -689,9 +689,8 @@ items.forEach(item => {
689
689
  ```typescript
690
690
  import {
691
691
  getPrimaryNavItems,
692
- getNavItemsBySlug,
693
692
  getPrimaryNavigation,
694
- getNavigationBySlug,
693
+ getNavigationByLocation,
695
694
  transformToNavItems,
696
695
  } from '@riverbankcms/sdk/navigation';
697
696
 
@@ -703,15 +702,15 @@ const navOptions = {
703
702
  hasPortalSession: false,
704
703
  };
705
704
 
706
- // Get nav items from the primary menu (marked isPrimary, or first menu)
705
+ // Get nav items from the fixed main location
707
706
  const headerNav = getPrimaryNavItems(siteData.navigation, navOptions);
708
707
 
709
- // Get nav items from a specific menu by name/slug
710
- const footerNav = getNavItemsBySlug(siteData.navigation, 'footer', navOptions);
708
+ // Get nav items from the independent footer location
709
+ const footerNav = transformToNavItems(getNavigationByLocation(siteData.navigation, 'footer'), navOptions);
711
710
 
712
711
  // Get the raw menu object (for accessing menu metadata)
713
712
  const primaryMenu = getPrimaryNavigation(siteData.navigation);
714
- const footerMenu = getNavigationBySlug(siteData.navigation, 'footer');
713
+ const footerMenu = getNavigationByLocation(siteData.navigation, 'footer');
715
714
 
716
715
  // Transform a menu object to nav items
717
716
  const items = transformToNavItems(primaryMenu, navOptions);
@@ -849,9 +848,8 @@ function SiteHeader({ siteData }) {
849
848
  import {
850
849
  // Helper functions
851
850
  getPrimaryNavItems,
852
- getNavItemsBySlug,
853
851
  getPrimaryNavigation,
854
- getNavigationBySlug,
852
+ getNavigationByLocation,
855
853
  transformToNavItems,
856
854
  buildMenu,
857
855
  buildLogo,
@@ -2892,9 +2890,7 @@ Put mutable documents in `content/**` instead:
2892
2890
  {
2893
2891
  "menus": [
2894
2892
  {
2895
- "identifier": "main",
2896
- "name": "Main Navigation",
2897
- "isPrimary": true,
2893
+ "location": "main",
2898
2894
  "items": [
2899
2895
  { "label": "Home", "link": { "kind": "page", "identifier": "home" } },
2900
2896
  { "label": "Get Started", "link": { "kind": "url", "href": "/signup" }, "isCta": true }
@@ -3038,14 +3034,14 @@ entries: [
3038
3034
 
3039
3035
  ### Navigation Menus
3040
3036
 
3037
+ Every site has three independent navigation locations: `main`, `footer`, and `legal`. Updating a location replaces its links; an empty item list clears that location without deleting it. Menu names, role flags, and menu deletion are no longer supported.
3038
+
3041
3039
  Define navigation structure with page/entry references:
3042
3040
 
3043
3041
  ```typescript
3044
3042
  navigationMenus: [
3045
3043
  {
3046
- identifier: 'main',
3047
- name: 'Main Navigation',
3048
- isPrimary: true,
3044
+ location: 'main',
3049
3045
  items: [
3050
3046
  // Link to a page by identifier
3051
3047
  { label: 'Home', link: { kind: 'page', identifier: 'home' } },
@@ -3272,7 +3268,7 @@ import { blockOverrides } from '@/lib/block-overrides';
3272
3268
  import { getRiverbankClient } from '@/lib/riverbank-client';
3273
3269
 
3274
3270
  // Next.js route config values must remain statically analyzable literals.
3275
- export const revalidate = 300;
3271
+ export const revalidate = 60;
3276
3272
  export const dynamicParams = true;
3277
3273
  export const generateStaticParams = createGenerateStaticParams({
3278
3274
  getClient: getRiverbankClient,
@@ -1,8 +1,8 @@
1
1
  "use client";
2
- import { $ as FooterComposerPanel, A as markApplySaving, Aa as DropdownMenuLabel, Ai as resolveButtonStyleSelection, Ar as getHeaderLayout, B as setPaletteColors, Ba as assertNever$1, Bi as paletteColorsSchema, Bt as useEditorUiStoreInstance, C as cancelPreview, Ca as Collapsible, D as isPreviewingChange, Da as DropdownMenu, Di as buttonStyleHoverPreferenceValue, E as dismissWarnings, Ea as Surface, En as ThemeScope, Er as getCuratedSiteStyle, F as previewFooterLook, Fi as themeButtonClassName, H as syncStyleConfiguratorState, I as previewHeaderLayout, Ia as cn, Ja as Tablet, L as previewHeaderStyle, Lr as curatedPalettes, M as palettePreviewProjection, Ma as DropdownMenuTrigger, Mi as updateButtonStyleSelectionChoice, N as previewButtonStyle, Ni as buttonStyleSelectionKey, Nt as BlockEditor, O as markApplyFailed, Oa as DropdownMenuContent, Oi as buttonStyleSelectionParameterValue, P as previewCuratedPalette, Pa as Button, Q as resolvePreviewSidebarTab, R as previewSiteStyle, Ra as unsafeAsEditorBlockId, Ri as VARIANT_ROLES, S as applyTypographyDraftPatch, T as deriveStyleConfiguratorCapabilities, Ta as CollapsibleTrigger, U as toggleRow, V as styleConfiguratorHistoryEntryForPersistedSelection, Wa as X$1, X as resolveStyleConfiguratorInitialSnapshot, Xa as Smartphone, Z as createOptimisticActionRunner, Za as SlidersHorizontal, _ as reportPreviewDesignError, _n as listEntryPageContentSlots, aa as SelectValue, an as resolveContentTitle, ao as LoaderCircle, at as useUISelector, b as planSiteChromeSelection, c as selectionSnapshotFromApplySiteStyleSelectionResponse, ca as SearchInput, cn as ManifestForm, ct as useEntryController, da as PopoverTrigger, dn as FormRenderer, do as ChevronLeft, f as usePreviewDesignCoordinator, fa as Input, fo as ChevronDown, g as PREVIEW_DESIGN_SAVE_ERROR_MESSAGE, ga as TabsTrigger, ha as TabsList, ia as SelectTrigger, in as resolvePageRouteSlug, io as Maximize2, it as ContentFieldsForm, j as openRow, ja as DropdownMenuSeparator, ji as updateButtonStyleHoverPreference, jr as getHeaderStyle, k as markApplySaved, ka as DropdownMenuItem, ki as findButtonStyleRecipe, kr as findFooterLook, l as deriveSiteStylePreviewUpdate, la as Popover, ma as TabsContent, n as useSiteChromeCustomizeOptional, na as SelectContent, oa as Callout, pa as Tabs, pn as createStoreBackend, po as Check, ra as SelectItem, rn as deriveRouteMetadataPresentation, ro as Monitor, s as buildApplySiteStyleSelectionBody, sa as CalloutDescription, ta as Select, tn as isAdapterReferenceKind, u as planConfiguratorPreview, ua as PopoverContent, un as createManifestValidation, uo as ChevronRight, v as buildSiteChromeSelectionModels, w as createStyleConfiguratorState, wa as CollapsibleContent, wr as curatedSiteStyles, x as applyResolvedSelections, y as cycleSiteChromeSelectionId, z as resetTypographyToSaved, zi as paletteColorEntries, zt as useEditorUiStore } from "./SiteChromeCustomizeContext-BHFgMjde.mjs";
3
- import { d as unwrapResponse, f as getDashboardUrl, r as usePreviewAuth } from "./previewAuthStore-BkEgnYPP.mjs";
4
- import { t as Separator } from "./separator-BeqDLneQ.mjs";
5
- import { S as getSiteFontsStorageUrl, _ as usePreviewBlockCustomizeSelectionOptional, b as buildFontPreviewUrl, d as buildPreviewDashboardSetupUrl, f as resolvePreviewDashboardSetupHandoff, g as useBlockCustomizeControls, h as usePreviewSiteFontStorageUrl, m as resolvePreviewSidebarChromeModel, p as resolvePreviewEditorGuidanceModel, u as canInspectSiteStyle, v as PreviewFormProvider, x as generateFontFaceCss, y as previewWidgetOverrides } from "./SdkPreviewModeRuntime-Tda6qw4z.mjs";
2
+ import { $ as FooterComposerPanel, $a as Monitor, A as markApplySaving, Aa as DropdownMenu, Ai as buttonStyleHoverPreferenceValue, B as setPaletteColors, Ba as X$1, Br as curatedPalettes, C as cancelPreview, D as isPreviewingChange, Da as CollapsibleContent, Dr as curatedSiteStyles, E as dismissWarnings, Ea as Collapsible, F as previewFooterLook, Fa as DropdownMenuTrigger, Fi as updateButtonStyleSelectionChoice, H as syncStyleConfiguratorState, Hi as paletteColorEntries, Ht as useEditorUiStore, I as previewHeaderLayout, Ii as buttonStyleSelectionKey, It as BlockEditor, Ka as Smartphone, L as previewHeaderStyle, La as Button, M as palettePreviewProjection, Ma as DropdownMenuItem, Mi as findButtonStyleRecipe, Mr as findFooterLook, N as previewButtonStyle, Na as DropdownMenuLabel, Ni as resolveButtonStyleSelection, Nr as getHeaderLayout, O as markApplyFailed, Oa as CollapsibleTrigger, P as previewCuratedPalette, Pa as DropdownMenuSeparator, Pi as updateButtonStyleHoverPreference, Pr as getHeaderStyle, Q as resolvePreviewSidebarTab, R as previewSiteStyle, Ri as themeButtonClassName, S as applyTypographyDraftPatch, T as deriveStyleConfiguratorCapabilities, U as toggleRow, Ui as paletteColorsSchema, Ut as useEditorUiStoreInstance, V as styleConfiguratorHistoryEntryForPersistedSelection, Vi as VARIANT_ROLES, Wa as Tablet, X as resolveStyleConfiguratorInitialSnapshot, Z as createOptimisticActionRunner, _ as reportPreviewDesignError, _a as TabsContent, aa as SelectContent, at as useUISelector, b as planSiteChromeSelection, bn as listEntryPageContentSlots, c as selectionSnapshotFromApplySiteStyleSelectionResponse, ca as SelectValue, cn as resolveContentTitle, co as ChevronDown, ct as useEntryController, da as SearchInput, dn as ManifestForm, do as unsafeAsEditorBlockId, eo as Maximize2, f as usePreviewDesignCoordinator, fa as Popover, g as PREVIEW_DESIGN_SAVE_ERROR_MESSAGE, ga as Tabs, gn as createStoreBackend, ha as Input, ia as Select, in as isAdapterReferenceKind, it as ContentFieldsForm, j as openRow, ja as DropdownMenuContent, ji as buttonStyleSelectionParameterValue, k as markApplySaved, ka as Surface, kn as ThemeScope, kr as getCuratedSiteStyle, l as deriveSiteStylePreviewUpdate, la as Callout, lo as Check, ma as PopoverTrigger, mn as FormRenderer, n as useSiteChromeCustomizeOptional, oa as SelectItem, on as deriveRouteMetadataPresentation, oo as ChevronRight, pa as PopoverContent, pn as createManifestValidation, po as assertNever$1, qa as SlidersHorizontal, s as buildApplySiteStyleSelectionBody, sa as SelectTrigger, sn as resolvePageRouteSlug, so as ChevronLeft, to as LoaderCircle, u as planConfiguratorPreview, ua as CalloutDescription, v as buildSiteChromeSelectionModels, va as TabsList, w as createStyleConfiguratorState, x as applyResolvedSelections, y as cycleSiteChromeSelectionId, ya as TabsTrigger, z as resetTypographyToSaved, za as cn } from "./SiteChromeCustomizeContext-BhDn-5ir.mjs";
3
+ import { d as unwrapResponse, f as getDashboardUrl, r as usePreviewAuth } from "./previewAuthStore-COUyAKaX.mjs";
4
+ import { t as Separator } from "./separator-UGtpag4Z.mjs";
5
+ import { S as getSiteFontsStorageUrl, _ as usePreviewBlockCustomizeSelectionOptional, b as buildFontPreviewUrl, d as buildPreviewDashboardSetupUrl, f as resolvePreviewDashboardSetupHandoff, g as useBlockCustomizeControls, h as usePreviewSiteFontStorageUrl, m as resolvePreviewSidebarChromeModel, p as resolvePreviewEditorGuidanceModel, u as canInspectSiteStyle, v as PreviewFormProvider, x as generateFontFaceCss, y as previewWidgetOverrides } from "./SdkPreviewModeRuntime-CL7wSnYu.mjs";
6
6
  import React, { createContext, forwardRef, useCallback, useContext, useEffect, useId, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore, useTransition } from "react";
7
7
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
8
8
  import { useQuery, useQueryClient } from "@tanstack/react-query";
@@ -1,7 +1,7 @@
1
1
  "use client";
2
- import { $a as Redo2, $i as TooltipContent, At as useEditor, Bt as useEditorUiStoreInstance, Da as DropdownMenu, Fa as cva, Ia as cn, Ka as Undo2, Ma as DropdownMenuTrigger, Oa as DropdownMenuContent, Pa as Button, Qi as Tooltip, Rt as classifyHistoryShortcut, Sa as DialogTitle, Xt as useMultiAutosave, Ya as Sparkles, _a as Dialog, a as previewDesignHistoryDomainForCommand, ao as LoaderCircle, co as Eye, ea as TooltipTrigger, eo as Pencil, fo as ChevronDown, i as usePreviewDesignHistoryOrder, ka as DropdownMenuItem, lo as EllipsisVertical, lt as useEntryEditorController, n as useSiteChromeCustomizeOptional, no as Palette, o as selectPreviewDesignHistoryDomain, qa as TriangleAlert, to as PenLine, va as DialogContent, xa as DialogHeader, ya as DialogDescription, zt as useEditorUiStore } from "./SiteChromeCustomizeContext-BHFgMjde.mjs";
3
- import { d as unwrapResponse, r as usePreviewAuth } from "./previewAuthStore-BkEgnYPP.mjs";
4
- import { C as FixedBottomSurface, a as usePreviewPageDesignEditorState, c as applyPreviewChromeSurfaceToElement, l as resolvePreviewChromeSurface, o as PREVIEW_CHROME_PORTAL_CLASS_NAME, s as PREVIEW_CHROME_THEME_CLASS_NAME } from "./SdkPreviewModeRuntime-Tda6qw4z.mjs";
2
+ import { $t as useMultiAutosave, Aa as DropdownMenu, Fa as DropdownMenuTrigger, Ga as Sparkles, Ha as Undo2, Ht as useEditorUiStore, La as Button, Ma as DropdownMenuItem, Nt as useEditor, Qa as Palette, Ra as cva, Sa as DialogDescription, Ta as DialogTitle, Ua as TriangleAlert, Ut as useEditorUiStoreInstance, Vt as classifyHistoryShortcut, Xa as Pencil, Ya as Redo2, Za as PenLine, a as previewDesignHistoryDomainForCommand, ao as EllipsisVertical, ba as Dialog, co as ChevronDown, i as usePreviewDesignHistoryOrder, io as Eye, ja as DropdownMenuContent, lt as useEntryEditorController, n as useSiteChromeCustomizeOptional, na as TooltipContent, o as selectPreviewDesignHistoryDomain, ra as TooltipTrigger, ta as Tooltip, to as LoaderCircle, wa as DialogHeader, xa as DialogContent, za as cn } from "./SiteChromeCustomizeContext-BhDn-5ir.mjs";
3
+ import { d as unwrapResponse, r as usePreviewAuth } from "./previewAuthStore-COUyAKaX.mjs";
4
+ import { C as FixedBottomSurface, a as usePreviewPageDesignEditorState, c as applyPreviewChromeSurfaceToElement, l as resolvePreviewChromeSurface, o as PREVIEW_CHROME_PORTAL_CLASS_NAME, s as PREVIEW_CHROME_THEME_CLASS_NAME } from "./SdkPreviewModeRuntime-CL7wSnYu.mjs";
5
5
  import * as React$1 from "react";
6
6
  import { useCallback, useEffect, useMemo, useState, useTransition } from "react";
7
7
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { n as markPreviewAuthExpired, s as ApiRequestError } from "./previewAuthStore-BkEgnYPP.mjs";
2
+ import { n as markPreviewAuthExpired, s as ApiRequestError } from "./previewAuthStore-COUyAKaX.mjs";
3
3
  import { createContext, useContext, useRef } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  import { MutationCache, QueryCache, QueryClient, QueryClientProvider } from "@tanstack/react-query";
@@ -1,7 +1,7 @@
1
1
  "use client";
2
- import { $n as ImageResolveContextProvider, $r as parseGeneratedIconAssetId, $t as createSnapshotFromPageRecord, An as getBlockDefinition, At as useEditor, Ba as assertNever$2, Bn as DEFAULT_THEME_RESPONSIVE_MODE, Br as sectionTransitionFamilyForBoundaryOptionId, Bt as useEditorUiStoreInstance, Ci as pageDesignEditorBackgroundOverrideOwner, Cn as useMediaEditorOptional, Cr as componentRuntimeRulesForTheme, Ct as MediaField, Dn as containerResponsiveThemeCss, Dr as compileTransitionRuntime, Dt as RichTextField, Ei as makeBoundaryId, En as ThemeScope, Et as useRichTextImagePicker, Fn as visibleHeaderClearancePx, Fr as getGradientPreset, Ft as prepareBlockEditorManifest, G as confirmAutosaveBatch, Ga as Upload, Gi as useSdkConfig, Gn as defaultTransforms, Gr as defaultThemeTokens, Gt as pushHistoryEntry, Ha as parseMediaAssetId, Hi as getFieldIntent, Hn as escapeStyleContent, Hr as backgroundAppearanceColorTokenNames, Ht as canRedoHistory, Ia as cn, Ii as parseThemeForPersistence, In as resolveVariantKey, Ir as parseGradientPresetId, It as stripTopLevelRoutingUi, J as idleEditorTransactionQueueState, Ji as mapOptionValueForSelect, Jn as resolveRouteTarget, Jt as unsafeAsLinkedContentEntryId, K as deriveTransactionCapabilities, Ki as hasEmptyOption, Kn as resolveEntryRouteTarget, Kr as ctaButton, Kt as redoHistory, La as parseFooterModuleId, Li as ORDINARY_TEXT_MIN_CONTRAST_RATIO, Ln as compileManifestContentContract, Lt as getBlockManifestFromSdkConfig, Mn as SITE_CHROME_VISIBLE_HEADER_SELECTOR, Mr as gradientToCss, Mt as LinkWidgetProvider, Nn as SITE_OVERLAY_HEADER_CLEARANCE_CSS_VAR, Nr as GRADIENT_PRESETS, On as createCustomBlockRegistry, Or as surfaceResolutionContextFromTheme, Ot as RichTextWidgetProvider, Pa as Button, Pi as textColorStyle, Pn as planSiteOverlayHeaderClearance, Pr as GRADIENT_PRESET_IDS, Pt as hideThemeV2RawStyleFields, Q as resolvePreviewSidebarTab, Qa as RotateCcw, Qn as clientComponentRegistry, Qr as parseBlockIconValue, Qt as createRoutingHelpers, Ra as unsafeAsEditorBlockId, Rn as validateManifestDraft, Rr as defaultSectionTransitionVariantForFamily, Sa as DialogTitle, Si as isThemeV2NormalEditorRawStyleFieldName, Sn as MediaEditorContextProvider, Sr as planPageDesignLayoutLookCompatibility, St as FileField, Ti as assertNever$1, Tn as isSupportedLoaderEndpoint, Tr as designRuntimeRulesForTheme, Tt as ReferenceWidgetProvider, Ua as parseSiteId, Ui as isHeaderField, Un as readBlockComposition, Ur as backgroundAppearanceQuickColorTokenNames, Ut as canUndoHistory, Va as expectParsedBrandedId, Vi as attachRenderableMediaAssetFields, Vn as getResponsiveScopeSpec, Vr as sectionTransitionVariantForBoundaryOptionId, Vt as useOptionalEditorUiStoreInstance, W as beginAutosaveBatch, Wa as X, Wi as SdkConfigProvider, Wn as getDefaultComponentRegistry, Wr as parseBackgroundAppearanceColorToken, Wt as createHistoryState, Xi as FieldFrame, Xn as coerceLinkedContentEntriesPayload, Xr as parseBackgroundContent, Y as rejectAutosaveBatch, Yi as unmapValueFromSelect, Yn as LINKED_CONTENT_ENTRY_META_KEY, Yr as planSiteChromePlacement, Yt as recordsEqual, Zi as useField, Zn as getLinkedContentEntryMeta, Zr as runTransforms, Zt as useDebouncedLatestSave, _ as reportPreviewDesignError, _a as Dialog, _i as eventCalendarListLayoutCompatibleDisplayModeValues, _r as applyCompiledRuntimeFieldsToContent, _t as IconPickerField, aa as SelectValue, ai as isInlineTextEmpty, ar as blogFeaturedPostFragment, at as useUISelector, ba as DialogFooter, bi as isObjectRecord, bn as deriveLaunchReadiness, br as retargetCompiledRuntimeFieldsForContentAdjacency, bt as ButtonVariantField, ci as buildResolveImageUrlContext, cr as formCopyFragment, d as PreviewDesignCoordinatorProvider, di as setContextResolveImageUrlContext, dn as FormRenderer, do as ChevronLeft, dr as ctaCopyFragment, dt as createSiteOptionWidgetAdapters, ei as parseGeneratedIconSetId, en as BUILT_IN_REFERENCE_KINDS, er as richTextFragment, et as renderSiteChromeBlock, fi as SECTION_BACKGROUND_MIN_SOURCE_WIDTH, fn as evaluateVisibility, fr as heroCtaRowFragment, ft as SiteOptionPickerField, g as PREVIEW_DESIGN_SAVE_ERROR_MESSAGE, ga as TabsTrigger, gi as calendarWindowQuerySchema, gn as getPageDesignEditorState, gr as defineFragment, gt as InlineTextField, h as PREVIEW_DESIGN_LOAD_ERROR_MESSAGE, ha as TabsList, hi as BlockApiProvider, hn as applyPageDesignEditorAction, hr as bodyCopyFragment, ht as OfferingsPreviewWidgetProvider, i as usePreviewDesignHistoryOrder, ia as SelectTrigger, ii as inlineTextToPlainText, ir as faqHeadingFragment, jn as projectRecurringSchedule, jt as LinkField, kn as makeDefaultBlockComponent, kt as EditorProvider, li as getCurrentResolveImageUrlContext, ln as createManifestFormAdapter, lr as testimonialsCarouselFragment, lt as useEntryEditorController, m as usePreviewThemeOverlay, ma as TabsContent, mi as siblingPath, mn as MediaEditor, mo as __exportAll, mr as heroCopyFragment, mt as OfferingsPreviewGroupOrderField, n as useSiteChromeCustomizeOptional, na as SelectContent, ni as logger, nn as parseReferenceKind, nr as cardFragment, nt as PreviewInlineTextEditor, oi as Text$1, on as PaletteProvider, oo as Image, or as singleButtonFragment, ot as EditableBlockProvider, p as PreviewThemeOverlayProvider, pa as Tabs, pi as getAtPath, pn as createStoreBackend, pr as ctaRowFragment, pt as SiteOptionWidgetProvider, q as enqueueTransaction, qi as mapCurrentValueForSelect, qn as resolvePageRouteTarget, qr as bindingSchema, qt as undoHistory, r as PreviewDesignHistoryOrderProvider, ra as SelectItem, ri as coerceInlineTextWithFallback, rr as faqAccordionFragment, rt as PreviewTextEditor, si as RichText$1, sn as usePalette, so as GripVertical, sr as formEmbedFragment, st as EntryControllerProvider, t as SiteChromeCustomizeProvider, ta as Select, ti as renderInlineText, tr as headingFragment, tt as PreviewRichTextEditor, ui as resolveImageUrlWithContext, uo as ChevronRight, ur as testimonialsHeadingFragment, ut as createSiteOptionApiLoader, va as DialogContent, vi as eventCalendarListLayoutOptions, vn as decodePublicProductCategorySelectorQuery, vr as compileEditorModelRuntime, vt as EntryPickerField, wi as asDesignBlockId, wn as useApiMediaUploader, wt as ReferenceField, xa as DialogHeader, xi as isRecord$13, xn as AMBIENT_BACKGROUND_ROLES, xr as formatSiteChromeBackgroundTokenLabel, xt as ButtonWidgetProvider, ya as DialogDescription, yi as bookingConsentCarrierSchema, yn as DEFAULT_LAUNCH_READINESS_INPUT, yr as retargetCompiledBoundaryRuntimeForContentAdjacency, yt as EntryPickerWidgetProvider, za as unsafeAsEditorBlockValues, zn as buildThemeRuntime, zr as sectionTransitionFamilies, zt as useEditorUiStore } from "./SiteChromeCustomizeContext-BHFgMjde.mjs";
3
- import { i as useOptionalPreviewLayout, t as PreviewQueryProvider } from "./PreviewQueryProvider-BguJY1SW.mjs";
4
- import { _ as API_ENDPOINTS, a as usePreviewToken, c as createBearerAPIClient, d as unwrapResponse, g as resolveSurfaceDocumentAttributes, h as SURFACE_IDS, i as usePreviewAuthFetch, m as SURFACE_DOCUMENT_DATA_ATTRIBUTE, n as markPreviewAuthExpired, o as isPreviewRuntimeSessionEditable, r as usePreviewAuth, s as ApiRequestError, t as initPreviewAuth } from "./previewAuthStore-BkEgnYPP.mjs";
2
+ import { $i as FieldFrame, $n as coerceLinkedContentEntriesPayload, $r as parseBackgroundContent, An as containerResponsiveThemeCss, Ar as compileTransitionRuntime, At as RichTextField, Ba as X, Bi as ORDINARY_TEXT_MIN_CONTRAST_RATIO, Bn as compileManifestContentContract, Bt as getBlockManifestFromSdkConfig, Ca as DialogFooter, Ci as isObjectRecord, Cn as deriveLaunchReadiness, Cr as retargetCompiledRuntimeFieldsForContentAdjacency, Ct as ButtonVariantField, Di as asDesignBlockId, Dn as useApiMediaUploader, Dt as ReferenceField, Ei as pageDesignEditorBackgroundOverrideOwner, En as useMediaEditorOptional, Er as componentRuntimeRulesForTheme, Et as MediaField, Fn as SITE_CHROME_VISIBLE_HEADER_SELECTOR, Fr as gradientToCss, Ft as LinkWidgetProvider, G as confirmAutosaveBatch, Gi as getFieldIntent, Gn as escapeStyleContent, Gr as backgroundAppearanceColorTokenNames, Gt as canRedoHistory, Hn as buildThemeRuntime, Hr as sectionTransitionFamilies, Ht as useEditorUiStore, In as SITE_OVERLAY_HEADER_CLEARANCE_CSS_VAR, Ir as GRADIENT_PRESETS, J as idleEditorTransactionQueueState, Ja as RotateCcw, Ji as useSdkConfig, Jn as defaultTransforms, Jr as defaultThemeTokens, Jt as pushHistoryEntry, K as deriveTransactionCapabilities, Ki as isHeaderField, Kn as readBlockComposition, Kr as backgroundAppearanceQuickColorTokenNames, Kt as canUndoHistory, La as Button, Li as textColorStyle, Ln as planSiteOverlayHeaderClearance, Lr as GRADIENT_PRESET_IDS, Lt as hideThemeV2RawStyleFields, Mn as makeDefaultBlockComponent, Mt as EditorProvider, Nn as getBlockDefinition, Nt as useEditor, Oi as assertNever$1, On as isSupportedLoaderEndpoint, Or as designRuntimeRulesForTheme, Ot as ReferenceWidgetProvider, Pn as projectRecurringSchedule, Pt as LinkField, Q as resolvePreviewSidebarTab, Qi as unmapValueFromSelect, Qn as LINKED_CONTENT_ENTRY_META_KEY, Qr as planSiteChromePlacement, Qt as recordsEqual, Rn as visibleHeaderClearancePx, Rr as getGradientPreset, Rt as prepareBlockEditorManifest, Sa as DialogDescription, Si as bookingConsentCarrierSchema, Sn as DEFAULT_LAUNCH_READINESS_INPUT, Sr as retargetCompiledBoundaryRuntimeForContentAdjacency, St as EntryPickerWidgetProvider, Ta as DialogTitle, Ti as isThemeV2NormalEditorRawStyleFieldName, Tn as MediaEditorContextProvider, Tr as planPageDesignLayoutLookCompatibility, Tt as FileField, Un as DEFAULT_THEME_RESPONSIVE_MODE, Ur as sectionTransitionFamilyForBoundaryOptionId, Ut as useEditorUiStoreInstance, Va as Upload, Vn as validateManifestDraft, Vr as defaultSectionTransitionVariantForFamily, W as beginAutosaveBatch, Wi as attachRenderableMediaAssetFields, Wn as getResponsiveScopeSpec, Wr as sectionTransitionVariantForBoundaryOptionId, Wt as useOptionalEditorUiStoreInstance, Xi as mapCurrentValueForSelect, Xn as resolvePageRouteTarget, Xr as bindingSchema, Xt as undoHistory, Y as rejectAutosaveBatch, Yi as hasEmptyOption, Yn as resolveEntryRouteTarget, Yr as ctaButton, Yt as redoHistory, Zi as mapOptionValueForSelect, Zn as resolveRouteTarget, Zt as unsafeAsLinkedContentEntryId, _ as reportPreviewDesignError, _a as TabsContent, _i as siblingPath, _n as MediaEditor, _o as __exportAll, _r as heroCopyFragment, _t as loadMailingListAuthoringContext, aa as SelectContent, ai as logger, an as parseReferenceKind, ar as cardFragment, at as useUISelector, ba as Dialog, bi as eventCalendarListLayoutCompatibleDisplayModeValues, br as applyCompiledRuntimeFieldsToContent, bt as IconPickerField, ca as SelectValue, ci as isInlineTextEmpty, cr as blogFeaturedPostFragment, d as PreviewDesignCoordinatorProvider, di as buildResolveImageUrlContext, do as unsafeAsEditorBlockId, dr as formCopyFragment, dt as createSiteOptionWidgetAdapters, ea as useField, ei as runTransforms, en as useDebouncedLatestSave, er as getLinkedContentEntryMeta, et as renderSiteChromeBlock, fi as getCurrentResolveImageUrlContext, fn as createManifestFormAdapter, fo as unsafeAsEditorBlockValues, fr as testimonialsCarouselFragment, ft as SiteOptionPickerField, g as PREVIEW_DESIGN_SAVE_ERROR_MESSAGE, ga as Tabs, gi as getAtPath, gn as createStoreBackend, go as parseSiteId, gr as ctaRowFragment, gt as MailingListTargetingField, h as PREVIEW_DESIGN_LOAD_ERROR_MESSAGE, hi as SECTION_BACKGROUND_MIN_SOURCE_WIDTH, hn as evaluateVisibility, ho as parseMediaAssetId, hr as heroCtaRowFragment, ht as OfferingsPreviewWidgetProvider, i as usePreviewDesignHistoryOrder, ia as Select, ii as renderInlineText, ir as headingFragment, jn as createCustomBlockRegistry, jr as surfaceResolutionContextFromTheme, jt as RichTextWidgetProvider, ki as makeBoundaryId, kn as ThemeScope, kt as useRichTextImagePicker, li as Text$1, ln as PaletteProvider, lr as singleButtonFragment, lt as useEntryEditorController, m as usePreviewThemeOverlay, mi as setContextResolveImageUrlContext, mn as FormRenderer, mo as expectParsedBrandedId, mr as ctaCopyFragment, mt as OfferingsPreviewGroupOrderField, n as useSiteChromeCustomizeOptional, ni as parseGeneratedIconAssetId, nn as createSnapshotFromPageRecord, no as Image, nr as ImageResolveContextProvider, nt as PreviewInlineTextEditor, oa as SelectItem, oi as coerceInlineTextWithFallback, oo as ChevronRight, or as faqAccordionFragment, ot as EditableBlockProvider, p as PreviewThemeOverlayProvider, pi as resolveImageUrlWithContext, po as assertNever$2, pr as testimonialsHeadingFragment, pt as SiteOptionWidgetProvider, q as enqueueTransaction, qi as SdkConfigProvider, qn as getDefaultComponentRegistry, qr as parseBackgroundAppearanceColorToken, qt as createHistoryState, r as PreviewDesignHistoryOrderProvider, ri as parseGeneratedIconSetId, rn as BUILT_IN_REFERENCE_KINDS, ro as GripVertical, rr as richTextFragment, rt as PreviewTextEditor, sa as SelectTrigger, si as inlineTextToPlainText, so as ChevronLeft, sr as faqHeadingFragment, st as EntryControllerProvider, t as SiteChromeCustomizeProvider, ti as parseBlockIconValue, tn as createRoutingHelpers, tr as clientComponentRegistry, tt as PreviewRichTextEditor, ui as RichText$1, un as usePalette, uo as parseFooterModuleId, ur as formEmbedFragment, ut as createSiteOptionApiLoader, va as TabsList, vi as BlockApiProvider, vn as applyPageDesignEditorAction, vr as bodyCopyFragment, vt as MailingListTargetingProvider, wa as DialogHeader, wi as isRecord$13, wn as AMBIENT_BACKGROUND_ROLES, wr as formatSiteChromeBackgroundTokenLabel, wt as ButtonWidgetProvider, xa as DialogContent, xi as eventCalendarListLayoutOptions, xn as decodePublicProductCategorySelectorQuery, xr as compileEditorModelRuntime, xt as EntryPickerField, ya as TabsTrigger, yi as calendarWindowQuerySchema, yn as getPageDesignEditorState, yr as defineFragment, yt as InlineTextField, za as cn, zi as parseThemeForPersistence, zn as resolveVariantKey, zr as parseGradientPresetId, zt as stripTopLevelRoutingUi } from "./SiteChromeCustomizeContext-BhDn-5ir.mjs";
3
+ import { i as useOptionalPreviewLayout, t as PreviewQueryProvider } from "./PreviewQueryProvider-D2K8GLUG.mjs";
4
+ import { _ as API_ENDPOINTS, a as usePreviewToken, c as createBearerAPIClient, d as unwrapResponse, g as resolveSurfaceDocumentAttributes, h as SURFACE_IDS, i as usePreviewAuthFetch, m as SURFACE_DOCUMENT_DATA_ATTRIBUTE, n as markPreviewAuthExpired, o as isPreviewRuntimeSessionEditable, r as usePreviewAuth, s as ApiRequestError, t as initPreviewAuth } from "./previewAuthStore-COUyAKaX.mjs";
5
5
  import * as React$1 from "react";
6
6
  import React, { Children, Fragment, cloneElement, createContext, isValidElement, useCallback, useContext, useEffect, useId, useLayoutEffect, useMemo, useReducer, useRef, useState } from "react";
7
7
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
@@ -357,8 +357,15 @@ var MissingBlockOverrideError = class extends Error {
357
357
  function isOverrideOnlyResourceInput(props) {
358
358
  return props.rendering?.kind === "overrides-only";
359
359
  }
360
+ function isTokensOnlyResourceInput(props) {
361
+ return props.rendering?.kind === "tokens-only";
362
+ }
360
363
  function resolvePageThemeResources(props) {
361
364
  if (isOverrideOnlyResourceInput(props)) return { kind: "unavailable" };
365
+ if (isTokensOnlyResourceInput(props)) return {
366
+ kind: "available",
367
+ tokens: props.themeTokens
368
+ };
362
369
  return {
363
370
  kind: "available",
364
371
  tokens: props.themeTokens ?? buildThemeRuntime(props.theme).tokens,
@@ -371,7 +378,7 @@ function requireBlockOverride(resources, override, blockKind) {
371
378
  function overrideThemeProps(resources) {
372
379
  return resources.kind === "available" ? {
373
380
  theme: resources.tokens,
374
- themeConfig: resources.config
381
+ ...resources.config ? { themeConfig: resources.config } : {}
375
382
  } : {};
376
383
  }
377
384
  function requireThemeResources(resources, blockKind) {
@@ -451,6 +458,23 @@ function pageBlockPosition(index, blockCount) {
451
458
  return "middle";
452
459
  }
453
460
  //#endregion
461
+ //#region ../blocks/src/pageRendererContracts.ts
462
+ function buildPageRendererRootRuntime(dataContext) {
463
+ const { siteId = null, pageId = null, pathname = null, bookingTimeZone, previewStage = "published", apiBaseUrl = null, portalToken = null, bookingOfferingPresets = [], mailingList = { tag: "not_configured" }, eventRegistrationOverlayEnabled = false } = dataContext ?? {};
464
+ return {
465
+ siteId,
466
+ pageId,
467
+ pathname,
468
+ bookingTimeZone,
469
+ previewStage,
470
+ apiBaseUrl,
471
+ portalToken,
472
+ bookingOfferingPresets,
473
+ mailingList,
474
+ eventRegistrationOverlayEnabled
475
+ };
476
+ }
477
+ //#endregion
454
478
  //#region ../blocks/src/pageRenderAudience.tsx
455
479
  /**
456
480
  * The single policy for what a non-renderable block looks like.
@@ -1422,18 +1446,6 @@ function getPerfSlowBlockRenderThresholdMs() {
1422
1446
  cachedPerfSlowBlockRenderThresholdMs = Number.isFinite(parsed) && parsed > 0 ? parsed : DEFAULT_PERF_SLOW_BLOCK_RENDER_THRESHOLD_MS;
1423
1447
  return cachedPerfSlowBlockRenderThresholdMs;
1424
1448
  }
1425
- /** Site, stage and transport identity every block view model is resolved against. */
1426
- function blockRootRuntime(dataContext) {
1427
- return {
1428
- siteId: dataContext?.siteId ?? null,
1429
- pageId: dataContext?.pageId ?? null,
1430
- previewStage: dataContext?.previewStage ?? "published",
1431
- apiBaseUrl: dataContext?.apiBaseUrl ?? null,
1432
- portalToken: dataContext?.portalToken ?? null,
1433
- bookingOfferingPresets: dataContext?.bookingOfferingPresets ?? [],
1434
- eventRegistrationOverlayEnabled: dataContext?.eventRegistrationOverlayEnabled ?? false
1435
- };
1436
- }
1437
1449
  /**
1438
1450
  * Route and identifier maps for CTA link resolution at render time. Omitted
1439
1451
  * rather than nulled when absent, because a binding checks for the key.
@@ -1454,7 +1466,7 @@ function renderSystemBlockElement(input) {
1454
1466
  const BlockComponent = prepared.component;
1455
1467
  if (!BlockComponent) return null;
1456
1468
  const rootContext = { $root: {
1457
- ...blockRootRuntime(dataContext),
1469
+ ...buildPageRendererRootRuntime(dataContext),
1458
1470
  ...blockRootLookups(dataContext, prepared.routes),
1459
1471
  ...blockSubjectProps(dataContext)
1460
1472
  } };
@@ -4556,13 +4568,20 @@ function PreviewFormProvider({ siteId: rawSiteId, theme = null, previewClient, b
4556
4568
  children: /* @__PURE__ */ jsx(SiteOptionWidgetProvider, {
4557
4569
  siteId,
4558
4570
  adapters: siteOptionAdapters,
4559
- children: /* @__PURE__ */ jsx(ButtonWidgetProvider, {
4560
- buttonSystem: theme?.buttons ?? null,
4561
- children: /* @__PURE__ */ jsx(OfferingsPreviewWidgetProvider, {
4562
- bookingOfferingPresets,
4563
- children: /* @__PURE__ */ jsx(PreviewFormProviderInner, {
4564
- theme,
4565
- children
4571
+ children: /* @__PURE__ */ jsx(MailingListTargetingProvider, {
4572
+ siteId,
4573
+ load: (targetSiteId) => loadMailingListAuthoringContext({
4574
+ apiClient: previewClient,
4575
+ siteId: targetSiteId
4576
+ }),
4577
+ children: /* @__PURE__ */ jsx(ButtonWidgetProvider, {
4578
+ buttonSystem: theme?.buttons ?? null,
4579
+ children: /* @__PURE__ */ jsx(OfferingsPreviewWidgetProvider, {
4580
+ bookingOfferingPresets,
4581
+ children: /* @__PURE__ */ jsx(PreviewFormProviderInner, {
4582
+ theme,
4583
+ children
4584
+ })
4566
4585
  })
4567
4586
  })
4568
4587
  })
@@ -4586,7 +4605,8 @@ const previewWidgetOverrides = {
4586
4605
  iconPicker: IconPickerField,
4587
4606
  buttonVariant: ButtonVariantField,
4588
4607
  offeringGroupOrder: OfferingsPreviewGroupOrderField,
4589
- siteOptionPicker: SiteOptionPickerField
4608
+ siteOptionPicker: SiteOptionPickerField,
4609
+ mailingListTargeting: MailingListTargetingField
4590
4610
  };
4591
4611
  //#endregion
4592
4612
  //#region ../preview-next/src/client/preview/PreviewBlockCustomizeSelectionContext.tsx
@@ -9197,10 +9217,10 @@ function resolveShellThemeRoles(props) {
9197
9217
  }
9198
9218
  const previewContainerResponsiveEnabled = process.env.NEXT_PUBLIC_ENABLE_PREVIEW_CONTAINER_RESPONSIVE !== "false";
9199
9219
  const PreviewEditorSidebar = React.lazy(async () => {
9200
- return { default: (await import("./PreviewEditorSidebar-BVPur_CU.mjs")).PreviewEditorSidebar };
9220
+ return { default: (await import("./PreviewEditorSidebar-BDeenhi3.mjs")).PreviewEditorSidebar };
9201
9221
  });
9202
9222
  const PreviewEditorUI = React.lazy(async () => {
9203
- return { default: (await import("./PreviewEditorUI-DLhWX8oh.mjs")).PreviewEditorUI };
9223
+ return { default: (await import("./PreviewEditorUI-DSRhgjF5.mjs")).PreviewEditorUI };
9204
9224
  });
9205
9225
  const previewPaneContainmentStyle = {
9206
9226
  contain: "layout paint",