@riverbankcms/sdk 0.144.0 → 0.146.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 (228) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/{PreviewEditorSidebar-CQZNnFiM.mjs → PreviewEditorSidebar-kg2r2Fyi.mjs} +4 -4
  3. package/dist/{PreviewEditorUI-DCNxnmI0.mjs → PreviewEditorUI-sWMLp5dT.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-BCYICImX.mjs → PreviewQueryProvider-Cg51xq1w.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-BJolUbr1.mjs → SdkPreviewModeRuntime-h2ti3Hch.mjs} +688 -519
  6. package/dist/{SiteChromeCustomizeContext-CKgEpoxi.mjs → SiteChromeCustomizeContext-DEACFH9m.mjs} +3381 -2017
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +5643 -66
  8. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +513 -6
  9. package/dist/_dts/api/src/appointmentEndpointDefinitions.d.ts +49 -0
  10. package/dist/_dts/api/src/appointmentServiceCategoryEndpoints.d.ts +75 -0
  11. package/dist/_dts/api/src/appointmentServiceContracts.d.ts +80 -0
  12. package/dist/_dts/api/src/appointmentSetup.d.ts +8 -1
  13. package/dist/_dts/api/src/bookingConfig.d.ts +8 -1
  14. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +10 -26
  15. package/dist/_dts/api/src/bookingManagementEventEndpointTypes.d.ts +45 -1
  16. package/dist/_dts/api/src/clientErrorReporting.d.ts +50 -0
  17. package/dist/_dts/api/src/communications.d.ts +32 -24
  18. package/dist/_dts/api/src/contentRuntime.d.ts +3 -5
  19. package/dist/_dts/api/src/endpoints.d.ts +316 -134
  20. package/dist/_dts/api/src/event-visibility.d.ts +20 -0
  21. package/dist/_dts/api/src/eventManagementContracts.d.ts +56 -3
  22. package/dist/_dts/api/src/eventManagementEndpointDefinitions.d.ts +24 -0
  23. package/dist/_dts/api/src/eventPageWords.d.ts +19 -0
  24. package/dist/_dts/api/src/eventSeriesRegistrationEndpointDefinitions.d.ts +14 -0
  25. package/dist/_dts/api/src/index.d.ts +7 -1
  26. package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -1
  27. package/dist/_dts/api/src/indexExtendedTypes.d.ts +1 -1
  28. package/dist/_dts/api/src/launchReadiness.d.ts +22 -2
  29. package/dist/_dts/api/src/launchRequirementPriority.d.ts +3 -0
  30. package/dist/_dts/api/src/newsletterCampaignCommandEndpoints.d.ts +13 -0
  31. package/dist/_dts/api/src/newsletterEndpointDefinitions.d.ts +30 -11
  32. package/dist/_dts/api/src/occurrenceScheduling.d.ts +10 -0
  33. package/dist/_dts/api/src/onboarding/confirmationResend.d.ts +3 -0
  34. package/dist/_dts/api/src/pageSurfaceEndpoints.d.ts +44 -0
  35. package/dist/_dts/api/src/participantMessaging.d.ts +11 -1
  36. package/dist/_dts/api/src/publicBookingService.d.ts +35 -1
  37. package/dist/_dts/api/src/publicExperience/newsletterEndpoints.d.ts +13 -0
  38. package/dist/_dts/api/src/publicNewsletterEndpointDefinitions.d.ts +58 -0
  39. package/dist/_dts/api/src/schemas/admin-observability-logs.d.ts +3 -3
  40. package/dist/_dts/api/src/sdk-event-upsert.d.ts +40 -1
  41. package/dist/_dts/api/src/sdkContracts.d.ts +3 -42
  42. package/dist/_dts/api/src/sdkCourseBooking.d.ts +30 -0
  43. package/dist/_dts/api/src/sdkEventEndpointDefinitions.d.ts +76 -0
  44. package/dist/_dts/api/src/sdkEventLifecycle.d.ts +37 -0
  45. package/dist/_dts/api/src/sdkManagedEventContracts.d.ts +18 -0
  46. package/dist/_dts/api/src/sdkPageDesign.d.ts +388 -0
  47. package/dist/_dts/api/src/sdkPageDesignEndpointDefinitions.d.ts +22 -0
  48. package/dist/_dts/api/src/sdkPullEventContracts.d.ts +46 -0
  49. package/dist/_dts/api/src/siteAddressEndpoints.d.ts +29 -0
  50. package/dist/_dts/api/src/siteManagementEndpointDefinitions.d.ts +49 -0
  51. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +4 -38
  52. package/dist/_dts/api/src/siteOnboarding.d.ts +75 -9
  53. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +1 -1
  54. package/dist/_dts/api/src/types.d.ts +8 -1
  55. package/dist/_dts/api/src/wholeSeriesRuns.d.ts +14 -0
  56. package/dist/_dts/blocks/src/PageRenderer.d.ts +4 -4
  57. package/dist/_dts/blocks/src/bindings/index.d.ts +2 -2
  58. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +24 -0
  59. package/dist/_dts/blocks/src/index.d.ts +3 -1
  60. package/dist/_dts/blocks/src/pageRenderAdmission.d.ts +10 -0
  61. package/dist/_dts/blocks/src/pageRenderJoins.d.ts +68 -0
  62. package/dist/_dts/blocks/src/pageRenderPlan.d.ts +8 -27
  63. package/dist/_dts/blocks/src/pageRenderPreparation.d.ts +7 -4
  64. package/dist/_dts/blocks/src/pageRendererBoundaries.d.ts +40 -23
  65. package/dist/_dts/blocks/src/pageRendererContracts.d.ts +3 -1
  66. package/dist/_dts/blocks/src/server.d.ts +1 -1
  67. package/dist/_dts/blocks/src/system/blocks/appointment-services.d.ts +2 -0
  68. package/dist/_dts/blocks/src/system/blocks/events/eventSelectionFields.d.ts +2 -2
  69. package/dist/_dts/blocks/src/system/blocks/events/shared/calendarWindow.d.ts +1 -1
  70. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +27 -5
  71. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +14 -1
  72. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +2 -2
  73. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +47 -47
  74. package/dist/_dts/blocks/src/system/icons/social.d.ts +1 -1
  75. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +29 -3
  76. package/dist/_dts/blocks/src/system/registry.d.ts +1 -1
  77. package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessBookingFlow.d.ts +8 -1
  78. package/dist/_dts/blocks/src/system/runtime/nodes/appointment-services.d.ts +22 -2
  79. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.headless.state.d.ts +3 -1
  80. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.interactive.d.ts +57 -2
  81. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.service-categories.d.ts +29 -0
  82. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.service-choices.d.ts +13 -0
  83. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.state.d.ts +3 -3
  84. package/dist/_dts/blocks/src/system/runtime/nodes/booking-runtime-sources.d.ts +13 -1
  85. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventSourceRecovery.d.ts +2 -1
  86. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +23 -7
  87. package/dist/_dts/blocks/src/system/runtime/nodes/form.fields.d.ts +5 -0
  88. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.block-submission.d.ts +36 -0
  89. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.client.d.ts +1 -1
  90. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +6 -1
  91. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.parts.d.ts +46 -0
  92. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.submission.d.ts +20 -1
  93. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +2 -1
  94. package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +2 -1
  95. package/dist/_dts/blocks/src/system/runtime/shared/components/CheckboxChoice.d.ts +18 -0
  96. package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +1 -0
  97. package/dist/_dts/content-editor/src/index.d.ts +1 -0
  98. package/dist/_dts/content-editor/src/primitives/previewEditableOutline.d.ts +2 -0
  99. package/dist/_dts/content-editor/src/ui/editorBlockEquality.d.ts +3 -0
  100. package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +3 -3
  101. package/dist/_dts/content-model/src/content-types/schema.d.ts +1 -1
  102. package/dist/_dts/core/src/appointment-service-categories.d.ts +108 -0
  103. package/dist/_dts/core/src/block-content-identity.d.ts +5 -0
  104. package/dist/_dts/core/src/editor-state.d.ts +2 -1
  105. package/dist/_dts/core/src/index.d.ts +2 -0
  106. package/dist/_dts/core/src/mailing-list-submission.d.ts +3 -1
  107. package/dist/_dts/core/src/public-event-booking-availability.d.ts +20 -1
  108. package/dist/_dts/core/src/public-profile.d.ts +12 -1
  109. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +711 -242
  110. package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +3 -0
  111. package/dist/_dts/editor-blocks/src/block-editor/EmptyState.d.ts +13 -1
  112. package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +2 -2
  113. package/dist/_dts/editor-blocks/src/index.d.ts +1 -0
  114. package/dist/_dts/editor-blocks/src/widgets/site-option-picker/loaders.d.ts +16 -1
  115. package/dist/_dts/editor-blocks/src/widgets/site-option-picker/types.d.ts +13 -0
  116. package/dist/_dts/editor-blocks/src/widgets/site-option-picker/utils.d.ts +29 -0
  117. package/dist/_dts/preview-next/src/client/blocks/BoundaryControl.d.ts +7 -2
  118. package/dist/_dts/preview-next/src/client/blocks/composer/mergeDrafts.d.ts +1 -1
  119. package/dist/_dts/preview-next/src/client/blocks/composer/types.d.ts +3 -3
  120. package/dist/_dts/preview-next/src/client/blocks/previewProjection/applyPreviewProjections.d.ts +1 -3
  121. package/dist/_dts/preview-next/src/client/blocks/previewProjection/runtimeContentDecoration.d.ts +2 -2
  122. package/dist/_dts/preview-next/src/client/blocks/previewProjection/types.d.ts +2 -2
  123. package/dist/_dts/preview-next/src/client/preview/PreviewEntryControllerProvider.d.ts +1 -1
  124. package/dist/_dts/sdk/src/client/runtimeCacheKeys.d.ts +8 -0
  125. package/dist/_dts/sdk/src/client/types.d.ts +1 -1
  126. package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
  127. package/dist/_dts/sdk/src/contracts/page.d.ts +7 -2
  128. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +5 -0
  129. package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +2 -2
  130. package/dist/_dts/sdk/src/next/renderSdkContent.d.ts +0 -1
  131. package/dist/_dts/sdk/src/public-api/contracts.d.ts +6 -8
  132. package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +4 -4
  133. package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +4 -4
  134. package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +7 -2
  135. package/dist/_dts/sdk/src/rendering/helpers/loadPage.d.ts +5 -2
  136. package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +6 -1
  137. package/dist/_dts/sdk/src/rendering/helpers/templateContent.d.ts +2 -0
  138. package/dist/_dts/sdk/src/rendering/hooks/useContent.d.ts +6 -2
  139. package/dist/_dts/sdk/src/rendering/hooks/usePage.d.ts +5 -1
  140. package/dist/_dts/sdk/src/version.d.ts +1 -1
  141. package/dist/_dts/surfaces/src/index.d.ts +10 -0
  142. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  143. package/dist/_dts/theme-core/src/inputs/checkable.d.ts +42 -0
  144. package/dist/_dts/theme-core/src/inputs/inputGroup.d.ts +19 -0
  145. package/dist/_dts/theme-core/src/layout/boundaryCss.d.ts +3 -0
  146. package/dist/_dts/theme-core/src/site-styles/compositionBudget.d.ts +8 -0
  147. package/dist/_dts/theme-core/src/site-styles/contentTemplateRuntimeCompiler.d.ts +3 -2
  148. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +1 -3
  149. package/dist/_dts/theme-core/src/site-styles/generatedDesignPipeline.d.ts +3 -0
  150. package/dist/_dts/theme-core/src/site-styles/index.d.ts +3 -0
  151. package/dist/_dts/theme-core/src/site-styles/joinTreatment.d.ts +132 -0
  152. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorBoundaries.d.ts +31 -0
  153. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +33 -29
  154. package/dist/_dts/theme-core/src/site-styles/pageDesignIntent.d.ts +4 -4
  155. package/dist/_dts/theme-core/src/site-styles/pageFlowPresets.d.ts +36 -0
  156. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +4 -10
  157. package/dist/_dts/theme-core/src/site-styles/rawStyleFields.d.ts +17 -4
  158. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +20 -74
  159. package/dist/_dts/theme-core/src/site-styles/sectionBoundaryComposition.d.ts +95 -0
  160. package/dist/_dts/theme-core/src/site-styles/sectionTransitions.d.ts +80 -518
  161. package/dist/_dts/theme-core/src/site-styles/siteStyleBlockPolicies.d.ts +9 -4
  162. package/dist/_dts/theme-core/src/site-styles/transitionCatalogue.d.ts +320 -0
  163. package/dist/_dts/theme-core/src/site-styles/types.d.ts +3 -18
  164. package/dist/_dts/ui/src/navigation-tabs.d.ts +2 -1
  165. package/dist/client/{BookingConsentAgreement-DoAILrkN.mjs → BookingConsentAgreement-BQKL045f.mjs} +2 -2
  166. package/dist/client/CheckboxChoice--W2n6yKs.mjs +24 -0
  167. package/dist/client/{DiscountCodeDisclosure-X528hUTf.mjs → DiscountCodeDisclosure-CsOtjFY7.mjs} +1 -1
  168. package/dist/client/{EventCombined.client-DSBVwq5m.mjs → EventCombined.client-BdRjVbhH.mjs} +6 -6
  169. package/dist/client/{EventListing.client-DmFAX7Vb.mjs → EventListing.client-DBxC6xOU.mjs} +2 -2
  170. package/dist/client/{LeafletStaticMap-BAqXdfhq.mjs → LeafletStaticMap-mHEJKrTs.mjs} +1 -1
  171. package/dist/client/{ThemedButton-BwNFVwi4.mjs → ThemedButton-CE5KYT6z.mjs} +1 -1
  172. package/dist/client/{accordion-DRhMdkbd.mjs → accordion-BEQNSptH.mjs} +1 -1
  173. package/dist/client/{bookingForm-iJ_nCsNF.mjs → bookingForm-AMr-s5vw.mjs} +168 -95
  174. package/dist/client/bookings.mjs +239 -110
  175. package/dist/client/{carousel-D8zuffZr.mjs → carousel-Bbt_QgJy.mjs} +1 -1
  176. package/dist/client/{cart-DeMGJViN.mjs → cart-CnWi30zJ.mjs} +3 -3
  177. package/dist/client/{checkout-DXc06Km2.mjs → checkout-f3nkWgd4.mjs} +3 -3
  178. package/dist/client/client.mjs +3222 -1612
  179. package/dist/client/{context-CDLCfDep.mjs → context-Bc8T6pCe.mjs} +1 -1
  180. package/dist/client/{dates-ClFx7Epy.mjs → dates-DUsCEzLb.mjs} +2 -3
  181. package/dist/client/{eventCalendar-BaGpnOGN.mjs → eventCalendar-CKwgXui5.mjs} +9 -9
  182. package/dist/client/{eventCombined-ywONOx2m.mjs → eventCombined-CBAOSTGR.mjs} +4 -4
  183. package/dist/client/{eventDetails-B2LlOTYY.mjs → eventDetails-Dh-_WiBD.mjs} +4 -4
  184. package/dist/client/{eventListing-CMgxWpqP.mjs → eventListing-CA3frIH5.mjs} +4 -4
  185. package/dist/client/{eventRegistration-BarLDNHR.mjs → eventRegistration-BHtsgdcg.mjs} +21 -22
  186. package/dist/client/{form-BjqKaBJ7.mjs → form-C2h3YAcg.mjs} +135 -104
  187. package/dist/client/{headerSection-CP4XDwz1.mjs → headerSection-lwMuMTH9.mjs} +3 -3
  188. package/dist/client/hooks.mjs +1023 -148
  189. package/dist/client/{locationMap-C5gW-d-w.mjs → locationMap-DJ2bLODV.mjs} +3 -3
  190. package/dist/client/{newsletterForm-afXlVSA0.mjs → newsletterForm-8Pu5K32g.mjs} +225 -102
  191. package/dist/client/{pricing-Bl1CAl28.mjs → pricing-HHx3IgBz.mjs} +1 -1
  192. package/dist/client/{productDetail-CvQ3jWQe.mjs → productDetail-C_1odnAf.mjs} +3 -3
  193. package/dist/client/{productList-U874PGO7.mjs → productList-CtCv-Nmx.mjs} +3 -3
  194. package/dist/client/{propsDecoder-DPXtCZWP.mjs → propsDecoder-Dcgsncxb.mjs} +111 -55
  195. package/dist/client/rendering/client.mjs +1389 -722
  196. package/dist/client/rendering/islands.mjs +17 -17
  197. package/dist/client/rendering.mjs +3136 -1400
  198. package/dist/client/{routeIslandApiConfig-NGYiUWXu.mjs → routeIslandApiConfig-CWLP7wu3.mjs} +1 -1
  199. package/dist/client/{scrollToBlock-0-C3DVhK.mjs → scrollToBlock-BNgaEUpo.mjs} +1 -1
  200. package/dist/client/{shop-BXjXhM9P.mjs → shop-DQXrQ8kJ.mjs} +7 -7
  201. package/dist/client/{shop-commerce-BZ6UlWJ7.mjs → shop-commerce-B88zmWWo.mjs} +6 -6
  202. package/dist/client/{shop-commerce-store-DlSBXb3D.mjs → shop-commerce-store-DtSfkKuX.mjs} +1 -1
  203. package/dist/client/{shopShared-kkEOiLPA.mjs → shopShared-cuaONpkJ.mjs} +4 -4
  204. package/dist/client/{useEventFilters-zvnnE1ro.mjs → useEventFilters-Bukew6Gb.mjs} +6 -6
  205. package/dist/preview-next/before-render.mjs +500 -165
  206. package/dist/preview-next/client/runtime.mjs +4 -4
  207. package/dist/preview-next/editor-base.css +11 -0
  208. package/dist/preview-next/keepAlive.mjs +460 -165
  209. package/dist/preview-next/middleware.mjs +461 -165
  210. package/dist/{previewAuthStore-JA6-I_sL.mjs → previewAuthStore-h5IgbSp4.mjs} +485 -165
  211. package/dist/{sdk-runtime-DFJlQt3q.mjs → sdk-runtime-DTc1uIXn.mjs} +2 -2
  212. package/dist/{separator-o8GHb1xh.mjs → separator-BpHS1KZK.mjs} +1 -1
  213. package/dist/server/components.mjs +3088 -1307
  214. package/dist/server/config-validation.mjs +927 -109
  215. package/dist/server/config.mjs +927 -109
  216. package/dist/server/data.mjs +939 -110
  217. package/dist/server/index.mjs +513 -169
  218. package/dist/server/next.mjs +2874 -1195
  219. package/dist/server/page-converter.mjs +420 -79
  220. package/dist/server/prebuild.mjs +1 -1
  221. package/dist/server/rendering/server.mjs +3071 -1289
  222. package/dist/server/rendering.mjs +3169 -1350
  223. package/dist/server/routing.mjs +1085 -159
  224. package/dist/server/server.mjs +1042 -291
  225. package/dist/server/theme-bridge.mjs +1658 -137
  226. package/dist/server/theme.mjs +6 -4
  227. package/dist/styles/index.css +186 -65
  228. package/package.json +2 -1
@@ -282,7 +282,7 @@ function parseEventPageSurfaceDestinationMode(value) {
282
282
  return value === "cms-managed" || value === "system-managed" ? value : void 0;
283
283
  }
284
284
  function parseEventPageSurfaceSubject(value) {
285
- if (!isRecord$8(value)) return err$1({ kind: "notObject" });
285
+ if (!isRecord$9(value)) return err$1({ kind: "notObject" });
286
286
  switch (value.kind) {
287
287
  case "eventSeries": {
288
288
  const eventSeriesId = parseEventSeriesId(value.eventSeriesId);
@@ -337,7 +337,7 @@ function parseEventSeriesIdList(values) {
337
337
  }
338
338
  return ok$1(parsed);
339
339
  }
340
- function isRecord$8(value) {
340
+ function isRecord$9(value) {
341
341
  return typeof value === "object" && value !== null && !Array.isArray(value);
342
342
  }
343
343
  //#endregion
@@ -715,7 +715,7 @@ const DEFAULT_MAILING_LIST_SUCCESS_MESSAGE = "Thanks — you're on the list.";
715
715
  //#endregion
716
716
  //#region ../core/src/mailing-list-setup-parser.ts
717
717
  function parseMailingListGlobalForm(value) {
718
- if (!isRecord$7(value)) return formError("shape");
718
+ if (!isRecord$8(value)) return formError("shape");
719
719
  const fields = parseGlobalFields(value.fields);
720
720
  if (fields === null) return formError("fields");
721
721
  if (typeof value.includeOptionalPhone !== "boolean") return formError("includeOptionalPhone");
@@ -734,7 +734,7 @@ function parseMailingListGlobalForm(value) {
734
734
  });
735
735
  }
736
736
  function parseGlobalFields(value) {
737
- if (!isRecord$7(value) || typeof value.preset !== "string") return null;
737
+ if (!isRecord$8(value) || typeof value.preset !== "string") return null;
738
738
  switch (value.preset) {
739
739
  case "emailOnly": return { preset: "emailOnly" };
740
740
  case "emailName": return isRequirement(value.name) ? {
@@ -771,7 +771,7 @@ function parseOptionalString(value) {
771
771
  function isRequirement(value) {
772
772
  return value === "required" || value === "optional";
773
773
  }
774
- function isRecord$7(value) {
774
+ function isRecord$8(value) {
775
775
  return typeof value === "object" && value !== null && !Array.isArray(value);
776
776
  }
777
777
  function formError(field) {
@@ -823,7 +823,7 @@ function planMailingListChoicePresentation(targeting) {
823
823
  //#endregion
824
824
  //#region ../core/src/mailing-list-runtime.ts
825
825
  function parseMailingListRuntimeContext(value) {
826
- if (!isRecord$6(value)) return invalidRuntimeContext();
826
+ if (!isRecord$7(value)) return invalidRuntimeContext();
827
827
  if (value.tag === "not_configured") return ok$1({ tag: "not_configured" });
828
828
  if (value.tag !== "configured") return invalidRuntimeContext();
829
829
  const revision = parseMailingListSetupRevision(value.revision);
@@ -838,7 +838,7 @@ function parseMailingListRuntimeContext(value) {
838
838
  });
839
839
  }
840
840
  function parseRuntimeProvider(value) {
841
- if (!isRecord$6(value)) return null;
841
+ if (!isRecord$7(value)) return null;
842
842
  switch (value.provider) {
843
843
  case "native": return parseNativeRuntimeProvider(value);
844
844
  case "brevo": return parseBrevoRuntimeProvider(value);
@@ -870,7 +870,7 @@ function parseMailchimpRuntimeProvider(value) {
870
870
  if (defaultAudienceId === null) return null;
871
871
  const audiences = [];
872
872
  for (const audience of value.audiences) {
873
- if (!isRecord$6(audience)) return null;
873
+ if (!isRecord$7(audience)) return null;
874
874
  const id = parseMailchimpAudienceId(audience.id);
875
875
  const name = parseName(audience.name);
876
876
  if (id === null || name === null || !Array.isArray(audience.interests)) return null;
@@ -891,7 +891,7 @@ function parseMailchimpRuntimeProvider(value) {
891
891
  function parseMailchimpInterests(value) {
892
892
  const interests = [];
893
893
  for (const interest of value) {
894
- if (!isRecord$6(interest)) return null;
894
+ if (!isRecord$7(interest)) return null;
895
895
  const id = parseMailchimpInterestId(interest.id);
896
896
  const name = parseName(interest.name);
897
897
  const categoryName = parseName(interest.categoryName);
@@ -908,7 +908,7 @@ function parseNamedItems(value, parseId) {
908
908
  if (!Array.isArray(value)) return null;
909
909
  const items = [];
910
910
  for (const item of value) {
911
- if (!isRecord$6(item)) return null;
911
+ if (!isRecord$7(item)) return null;
912
912
  const id = parseId(item.id);
913
913
  const name = parseName(item.name);
914
914
  if (id === null || name === null) return null;
@@ -924,7 +924,7 @@ function parseName(value) {
924
924
  const name = value.trim();
925
925
  return name.length > 0 ? name : null;
926
926
  }
927
- function isRecord$6(value) {
927
+ function isRecord$7(value) {
928
928
  return typeof value === "object" && value !== null && !Array.isArray(value);
929
929
  }
930
930
  function invalidRuntimeContext() {
@@ -933,10 +933,10 @@ function invalidRuntimeContext() {
933
933
  //#endregion
934
934
  //#region ../core/src/mailing-list-targeting-parser.ts
935
935
  function parseMailingListPlacementTargeting(value) {
936
- if (!isRecord$5(value)) return targetingError("shape");
936
+ if (!isRecord$6(value)) return targetingError("shape");
937
937
  if (value.mode === "default") return ok$1({ mode: "default" });
938
938
  if (value.mode !== "custom") return targetingError("mode");
939
- if (!isRecord$5(value.selection)) return targetingError("selection");
939
+ if (!isRecord$6(value.selection)) return targetingError("selection");
940
940
  switch (value.provider) {
941
941
  case "native": return parseNativeTargeting(value.selection);
942
942
  case "brevo": return parseBrevoTargeting(value.selection);
@@ -945,7 +945,7 @@ function parseMailingListPlacementTargeting(value) {
945
945
  }
946
946
  }
947
947
  function parseMailingListVisitorSelection(value) {
948
- if (!isRecord$5(value)) return visitorSelectionError("shape");
948
+ if (!isRecord$6(value)) return visitorSelectionError("shape");
949
949
  switch (value.provider) {
950
950
  case "native": {
951
951
  const topicIds = parseVisitorIds(value.topicIds, parseNewsletterListId);
@@ -1078,7 +1078,7 @@ function parseVisitorIds(value, parseId) {
1078
1078
  }
1079
1079
  return parsed;
1080
1080
  }
1081
- function isRecord$5(value) {
1081
+ function isRecord$6(value) {
1082
1082
  return typeof value === "object" && value !== null && !Array.isArray(value);
1083
1083
  }
1084
1084
  function targetingError(field) {
@@ -1107,15 +1107,6 @@ function parseMailingListContentVersionId(value) {
1107
1107
  const parsed = parseContentVersionId(value);
1108
1108
  return parsed.ok ? parsed.value : null;
1109
1109
  }
1110
- function buildMailingListSignupBlockSourceRef(blockId, contentVersionId) {
1111
- const parsedBlockId = parseMailingListBlockId(blockId);
1112
- const parsedContentVersionId = parseMailingListContentVersionId(contentVersionId);
1113
- return parsedBlockId !== null && parsedContentVersionId !== null ? {
1114
- tag: "block_ref",
1115
- blockId: parsedBlockId,
1116
- contentVersionId: parsedContentVersionId
1117
- } : null;
1118
- }
1119
1110
  //#endregion
1120
1111
  //#region ../core/src/whole-series-run-schedule.ts
1121
1112
  /**
@@ -1375,7 +1366,7 @@ function assertNever$1(value, message) {
1375
1366
  /**
1376
1367
  * Strict record guard: excludes null, primitives, and arrays.
1377
1368
  */
1378
- function isRecord$4(value) {
1369
+ function isRecord$5(value) {
1379
1370
  return typeof value === "object" && value !== null && !Array.isArray(value);
1380
1371
  }
1381
1372
  //#endregion
@@ -1630,12 +1621,12 @@ function resolveBookingSiteId(siteId, form) {
1630
1621
  return siteId || form?.siteId || "";
1631
1622
  }
1632
1623
  function normalizeBookingFormConfig(form) {
1633
- if (!isRecord$3(form)) return null;
1624
+ if (!isRecord$4(form)) return null;
1634
1625
  const id = readNonEmptyString(form.id);
1635
1626
  const name = readNonEmptyString(form.name);
1636
1627
  if (!id || !name) return null;
1637
- const schemaSource = isRecord$3(form.schema) ? form.schema : isRecord$3(form.schemaJson) ? form.schemaJson : null;
1638
- const settingsSource = isRecord$3(form.settings) ? form.settings : isRecord$3(form.settingsJson) ? form.settingsJson : null;
1628
+ const schemaSource = isRecord$4(form.schema) ? form.schema : isRecord$4(form.schemaJson) ? form.schemaJson : null;
1629
+ const settingsSource = isRecord$4(form.settings) ? form.settings : isRecord$4(form.settingsJson) ? form.settingsJson : null;
1639
1630
  return {
1640
1631
  id,
1641
1632
  name,
@@ -1655,8 +1646,8 @@ function normalizeBookingServices(services) {
1655
1646
  };
1656
1647
  if (!services) return [];
1657
1648
  if (Array.isArray(services)) return services.filter(isBookingFormService).map(normalizeService);
1658
- if (isRecord$3(services) && "services" in services) return Array.isArray(services.services) ? services.services.filter(isBookingFormService).map(normalizeService) : [];
1659
- return isRecord$3(services) ? Object.values(services).filter(isBookingFormService).map(normalizeService) : [];
1649
+ if (isRecord$4(services) && "services" in services) return Array.isArray(services.services) ? services.services.filter(isBookingFormService).map(normalizeService) : [];
1650
+ return isRecord$4(services) ? Object.values(services).filter(isBookingFormService).map(normalizeService) : [];
1660
1651
  }
1661
1652
  function normalizeBookingSchema(value) {
1662
1653
  if (!value) return void 0;
@@ -1667,7 +1658,7 @@ function normalizeBookingSchema(value) {
1667
1658
  };
1668
1659
  }
1669
1660
  function readBookingFormField(value) {
1670
- if (!isRecord$3(value)) return null;
1661
+ if (!isRecord$4(value)) return null;
1671
1662
  const id = readNonEmptyString(value.id);
1672
1663
  const label = readNonEmptyString(value.label);
1673
1664
  const type = readBookingFieldType(value.type);
@@ -1710,7 +1701,7 @@ function readBookingFieldOptions(value) {
1710
1701
  return options.length > 0 ? options : void 0;
1711
1702
  }
1712
1703
  function readBookingFieldOption(value) {
1713
- if (!isRecord$3(value)) return null;
1704
+ if (!isRecord$4(value)) return null;
1714
1705
  const optionValue = readNonEmptyString(value.value);
1715
1706
  const label = readNonEmptyString(value.label);
1716
1707
  return optionValue && label ? {
@@ -1730,7 +1721,7 @@ function normalizeBookingSettings(value) {
1730
1721
  };
1731
1722
  }
1732
1723
  function isBookingFormService(value) {
1733
- return isRecord$3(value) && typeof value.id === "string" && typeof value.siteId === "string" && typeof value.title === "string" && (value.consent === void 0 || blockBookingConsentSchema.safeParse(value.consent).success);
1724
+ return isRecord$4(value) && typeof value.id === "string" && typeof value.siteId === "string" && typeof value.title === "string" && (value.consent === void 0 || blockBookingConsentSchema.safeParse(value.consent).success);
1734
1725
  }
1735
1726
  function collectBookingCustomFields(data) {
1736
1727
  const customFields = {};
@@ -1780,7 +1771,7 @@ function readStringArray(value) {
1780
1771
  const strings = value.filter((item) => typeof item === "string");
1781
1772
  return strings.length > 0 ? strings : void 0;
1782
1773
  }
1783
- function isRecord$3(value) {
1774
+ function isRecord$4(value) {
1784
1775
  return typeof value === "object" && value !== null;
1785
1776
  }
1786
1777
  function getBookingServicePaymentSelectionMode(service) {
@@ -1974,6 +1965,31 @@ function getBookingSuccessMessage(successMessage) {
1974
1965
  return successMessage?.trim() || "Your appointment has been booked! Check your email for confirmation.";
1975
1966
  }
1976
1967
  //#endregion
1968
+ //#region ../blocks/src/system/runtime/nodes/booking-form.service-categories.ts
1969
+ function isRecord$3(value) {
1970
+ return typeof value === "object" && value !== null && !Array.isArray(value);
1971
+ }
1972
+ function readCategory(value) {
1973
+ if (!isRecord$3(value)) return [];
1974
+ const { id, name, description } = value;
1975
+ if (typeof id !== "string" || id.trim() === "" || typeof name !== "string") return [];
1976
+ return [{
1977
+ id,
1978
+ name,
1979
+ description: typeof description === "string" ? description : null
1980
+ }];
1981
+ }
1982
+ /**
1983
+ * The ordered service categories carried by a catalogue-shaped services
1984
+ * source (`{ services, categories }`). Every other shape has none, which
1985
+ * reads as a site without categories. Order is preserved: the database owns
1986
+ * it.
1987
+ */
1988
+ function normalizeBookingServiceCategories(services) {
1989
+ if (!isRecord$3(services) || !Array.isArray(services.categories)) return [];
1990
+ return services.categories.flatMap(readCategory);
1991
+ }
1992
+ //#endregion
1977
1993
  //#region ../logger/src/noop.ts
1978
1994
  const noop = () => {};
1979
1995
  const logger = {
@@ -2124,11 +2140,20 @@ const bookingServiceSchema = z.object({
2124
2140
  priceCurrency: z.string().nullable().optional(),
2125
2141
  paymentTerms: blockBookingPaymentTermsSchema.optional(),
2126
2142
  paymentTermsAvailability: blockBookingPaymentTermsAvailabilitySchema.optional(),
2127
- consent: blockBookingConsentSchema.optional()
2143
+ consent: blockBookingConsentSchema.optional(),
2144
+ categoryId: z.string().nullable().optional()
2145
+ });
2146
+ const bookingServiceCategorySchema = z.object({
2147
+ id: z.string(),
2148
+ name: z.string(),
2149
+ description: z.string().nullable()
2128
2150
  });
2129
2151
  const bookingServicesSourceSchema = z.union([
2130
2152
  z.array(bookingServiceSchema),
2131
- z.object({ services: z.array(bookingServiceSchema).optional() }),
2153
+ z.object({
2154
+ services: z.array(bookingServiceSchema).optional(),
2155
+ categories: z.array(bookingServiceCategorySchema).optional()
2156
+ }),
2132
2157
  z.record(z.string(), bookingServiceSchema)
2133
2158
  ]);
2134
2159
  const bookingConfigSchema = z.object({
@@ -2181,6 +2206,7 @@ const bookingHydrationSchema = z.object({
2181
2206
  rebookContext: z.object({ kind: z.literal("portal_rebook") }).nullable().optional(),
2182
2207
  form: bookingConfigSchema.nullable(),
2183
2208
  services: z.array(bookingServiceSchema),
2209
+ serviceCategories: z.array(bookingServiceCategorySchema).optional(),
2184
2210
  spamProtectionEnabled: z.boolean().optional()
2185
2211
  });
2186
2212
  const bookingRenderSchema = z.object({
@@ -2227,6 +2253,7 @@ const bookingFormInteractiveIslandPropsCodec = createInteractiveIslandCodec({
2227
2253
  rebookContext: source.rebookContext ?? null,
2228
2254
  form,
2229
2255
  services,
2256
+ serviceCategories: normalizeBookingServiceCategories(source.services),
2230
2257
  spamProtectionEnabled: source.spamProtectionEnabled
2231
2258
  }
2232
2259
  };
@@ -5725,16 +5752,18 @@ const themeV2RuntimeStyleFieldNames = [
5725
5752
  "_frameStyles",
5726
5753
  "_sectionStyles",
5727
5754
  "_containerStyles",
5728
- "_cardStyles",
5729
- "_transitionStyles",
5730
- "styleGroup"
5755
+ "_cardStyles"
5731
5756
  ];
5732
5757
  const themeV2BlockSpecificRawStyleFieldNames = [
5733
5758
  "_contentCardStyles",
5734
5759
  "_heroLayoutStyles",
5735
5760
  "_textCardStyles"
5736
5761
  ];
5737
- const themeV2NormalEditorRawStyleFieldNames = [...themeV2RuntimeStyleFieldNames, ...themeV2BlockSpecificRawStyleFieldNames];
5762
+ const themeV2NormalEditorRawStyleFieldNames = [
5763
+ ...themeV2RuntimeStyleFieldNames,
5764
+ ...themeV2BlockSpecificRawStyleFieldNames,
5765
+ "styleGroup"
5766
+ ];
5738
5767
  new Set(themeV2NormalEditorRawStyleFieldNames);
5739
5768
  [...themeV2RuntimeStyleFieldNames, ...themeV2BlockSpecificRawStyleFieldNames];
5740
5769
  const pageDesignEditorBackgroundOverrideOwner = "page-design-editor";
@@ -6683,6 +6712,7 @@ const publicEventLoaderQuerySchemaShape = {
6683
6712
  seriesSlug: z.string().optional(),
6684
6713
  includeOccurrenceId: z.string().optional(),
6685
6714
  readIntent: z.string().optional(),
6715
+ detailAdmission: z.string().optional(),
6686
6716
  detailLevel: z.string().optional(),
6687
6717
  readProfile: z.string().optional()
6688
6718
  };
@@ -6849,11 +6879,11 @@ const publicEventBookingAvailabilitySchema = z.discriminatedUnion("kind", [z.obj
6849
6879
  "series_archived",
6850
6880
  "parent_archived",
6851
6881
  "parent_inconsistent",
6852
- "not_public",
6853
6882
  "already_started",
6854
6883
  "enrollment_closed"
6855
6884
  ])
6856
6885
  })]);
6886
+ const publicEventBookingClosedDetailSchema = z.discriminatedUnion("kind", [z.object({ kind: z.literal("opensSoon") }), z.object({ kind: z.literal("paused") })]);
6857
6887
  const publicRunSessionSchema = z.object({
6858
6888
  occurrenceId: z.string(),
6859
6889
  startsAt: z.string(),
@@ -6898,6 +6928,7 @@ const publicEventBaseSchema = z.object({
6898
6928
  destination: publicEventDestinationSchema,
6899
6929
  requiresRegistration: z.boolean(),
6900
6930
  bookingAvailability: publicEventBookingAvailabilitySchema,
6931
+ bookingClosedDetail: publicEventBookingClosedDetailSchema.optional(),
6901
6932
  deliveryMode: z.enum([
6902
6933
  "in_person",
6903
6934
  "online",
@@ -8628,7 +8659,8 @@ const siteOptionSources = [
8628
8659
  "eventCategories",
8629
8660
  "eventSeries",
8630
8661
  "venues",
8631
- "staffMembers"
8662
+ "staffMembers",
8663
+ "appointmentServiceCategories"
8632
8664
  ];
8633
8665
  const mediaDeliverySchema = z.object({
8634
8666
  sizes: z.string().optional(),
@@ -11566,6 +11598,12 @@ function withOptionalPhone(fields, includePhone) {
11566
11598
  }
11567
11599
  //#endregion
11568
11600
  //#region ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
11601
+ const NEWSLETTER_SIGNUPS_PAUSED_MESSAGE = "We can’t accept signups right now. Please try again later.";
11602
+ function newsletterBlockSubmissionMessage(target) {
11603
+ if (target.tag === "block-source") return target.sourceRef ? null : NEWSLETTER_SIGNUPS_PAUSED_MESSAGE;
11604
+ if (target.tag !== "unpublished-preview") return null;
11605
+ return target.reason === "unpublished-form" ? "Publish this form to test a signup here." : "This form's signup settings are unpublished. Publish it to test a signup here.";
11606
+ }
11569
11607
  const newsletterButtonVariantSchema = blockButtonRoleSchema;
11570
11608
  const mailingListContextSchema = z.unknown().transform((value, ctx) => {
11571
11609
  const parsed = parseMailingListRuntimeContext(value);
@@ -11606,6 +11644,11 @@ const mailingListContentVersionIdSchema = z.string().transform((value, ctx) => {
11606
11644
  });
11607
11645
  return z.NEVER;
11608
11646
  });
11647
+ const mailingListSignupBlockSourceRefSchema = z.object({
11648
+ tag: z.literal("block_ref"),
11649
+ blockId: mailingListSignupBlockIdSchema,
11650
+ contentVersionId: mailingListContentVersionIdSchema
11651
+ });
11609
11652
  const signedMailingListSourceTokenSchema = z.string().trim().min(1).transform(parseRequiredMailingListSignedSourceToken);
11610
11653
  const newsletterSourceCommonSchema = z.object({
11611
11654
  siteId: z.string().optional(),
@@ -11620,7 +11663,15 @@ const newsletterSourceSchema = z.discriminatedUnion("source", [
11620
11663
  newsletterSourceCommonSchema.extend({
11621
11664
  source: z.literal("block"),
11622
11665
  blockId: z.string().nullable().optional(),
11623
- contentVersionId: z.string().nullable().optional()
11666
+ newsletterBlockSubmission: z.discriminatedUnion("tag", [
11667
+ z.object({
11668
+ tag: z.literal("ready"),
11669
+ sourceRef: mailingListSignupBlockSourceRefSchema
11670
+ }),
11671
+ z.object({ tag: z.literal("unpublished-form") }),
11672
+ z.object({ tag: z.literal("unpublished-settings") }),
11673
+ z.object({ tag: z.literal("unavailable") })
11674
+ ])
11624
11675
  }),
11625
11676
  newsletterSourceCommonSchema.extend({
11626
11677
  source: z.literal("signed-footer"),
@@ -11649,11 +11700,7 @@ const newsletterHydrationSchema = z.object({
11649
11700
  target: z.discriminatedUnion("tag", [
11650
11701
  z.object({
11651
11702
  tag: z.literal("block-source"),
11652
- sourceRef: z.object({
11653
- tag: z.literal("block_ref"),
11654
- blockId: mailingListSignupBlockIdSchema,
11655
- contentVersionId: mailingListContentVersionIdSchema
11656
- }).nullable()
11703
+ sourceRef: mailingListSignupBlockSourceRefSchema.nullable()
11657
11704
  }),
11658
11705
  z.object({
11659
11706
  tag: z.literal("signed-footer-source"),
@@ -11662,7 +11709,11 @@ const newsletterHydrationSchema = z.object({
11662
11709
  token: signedMailingListSourceTokenSchema
11663
11710
  })
11664
11711
  }),
11665
- z.object({ tag: z.literal("preview") })
11712
+ z.object({ tag: z.literal("preview") }),
11713
+ z.object({
11714
+ tag: z.literal("unpublished-preview"),
11715
+ reason: z.enum(["unpublished-form", "unpublished-settings"])
11716
+ })
11666
11717
  ]),
11667
11718
  setupRevision: z.number().int().positive().nullable(),
11668
11719
  choiceProvider: z.enum([
@@ -11732,16 +11783,21 @@ const newsletterFormBlockRuntime = defineProgressiveBlockRuntime({
11732
11783
  });
11733
11784
  function projectNewsletterFormHydrationTarget(source) {
11734
11785
  switch (source.source) {
11735
- case "block": {
11736
- const sourceRef = buildMailingListSignupBlockSourceRef(source.blockId, source.contentVersionId);
11737
- if (sourceRef?.tag === "block_ref") return {
11786
+ case "block": switch (source.newsletterBlockSubmission.tag) {
11787
+ case "unpublished-form":
11788
+ case "unpublished-settings": return {
11789
+ tag: "unpublished-preview",
11790
+ reason: source.newsletterBlockSubmission.tag
11791
+ };
11792
+ case "ready": return {
11738
11793
  tag: "block-source",
11739
- sourceRef
11794
+ sourceRef: source.newsletterBlockSubmission.sourceRef
11740
11795
  };
11741
- return {
11796
+ case "unavailable": return {
11742
11797
  tag: "block-source",
11743
11798
  sourceRef: null
11744
11799
  };
11800
+ default: return assertNever$2(source.newsletterBlockSubmission);
11745
11801
  }
11746
11802
  case "signed-footer": return {
11747
11803
  tag: "signed-footer-source",
@@ -12733,4 +12789,4 @@ function defineIslandPropsDecoder(kind) {
12733
12789
  };
12734
12790
  }
12735
12791
  //#endregion
12736
- export { addDays as $, formatBookingInstant as $t, resolveEventRegistrationScopedEvents as A, resolveBookingSiteId as At, calendarWindowPageSchema as B, clearWorkflowFeedback as Bt, resolveRegistrationTarget as C, getBookingServiceSlidingScale as Ct, getWizardStepsForContext as D, prepareBookingSubmission as Dt, getStepNumber as E, parseBookingCurrencyInputToCents as Et, calendarMonthKey as F, BOOKING_FORM_DATA_RESERVED_KEYS as Ft, buildEventRuntimeFilters as G, reportWorkflowSuccess as Gt, resolveCalendarReadProfile as H, ok as Ht, calendarPageResponseError as I, isBookingRequirementConsentFieldId as It, normalizeCsvString as J, parseMailingListVisitorSelection as Jt, getEventRuntimeFiltersKey as K, CANCELLED_SESSION_STATUS as Kt, calendarQueryKey as L, RichTextDocSchema as Lt, isSemanticSpacing as M, toSelectedCollectionOptionKind as Mt, resolveSpacing as N, projectSelectedAppointmentConsentIntoForm as Nt, buildEventCalendarListingRender as O, resolveAppointmentCheckoutVerificationState as Ot, calendarMonthDate as P, resolveSelectedAppointmentConsent as Pt, MONTH_NAMES as Q, formatBookingDateTime as Qt, calendarWindowBounds as R, isRecord$4 as Rt, resolveEventRequiresPayment as S, getBookingRedirectStateFromLocation as St, WIZARD_STEPS as T, isBookingServiceSlidingAmountInRange as Tt, createHostedBlockApiConfig as U, okWith as Ut, planCalendarMonthRanges as V, err as Vt, getBlockApiReadStage as W, reportWorkflowError as Wt, getCardOrientation as X, formatBookingDate as Xt, normalizeOptionalId as Y, addLocalScheduleDays as Yt, getContainerClass as Z, formatBookingDateParts as Zt, toRegistrationEvents as _, formatCurrencyAmount as _n, normalizeCardRole as _t, buildProductDetailDisplay as a, resolveBookingTimeZoneId as an, getWeekCalendarDays as at, findPreSelectedEvent as b, formatBookingCentsAsCurrencyInput as bt, EMPTY_COMMERCE_CART_STATE as c, toScheduledBookingDateTime as cn, shiftCalendarAnchorDate as ct, deriveCommerceCheckoutState as d, isPublicEventPricingOptionDisplayable as dn, boxBackgroundSchema as dt, formatBookingTime as en, addMonths as et, parseStoredCommerceCartState as f, publicEventPricingCurrency as fn, isCssColorLiteral as ft, getRegistrationStartAt as g, publicEventPricingType as gn, themeButtonVariantClassNames as gt, buildEventRegistrationDisplayFromScopedEvents as h, publicEventPricingStrategy as hn, themeButtonSizeClassName as ht, buildProductCardDisplay as i, parseBookingLocalDate as in, getOrderedDayNames as it, SEMANTIC_SPACING_VALUES as j, resolveDefaultBookingServiceId as jt, staticHeaderChromeRuntime as k, resolveBookingPaymentStep as kt, buildPassCartItem as l, formatBookingPriceDisplay as ln, resolveRuntimeEventDestination as lt, reduceCommerceCart as m, publicEventPricingOptions as mn, resolveTokenOrCssColorValue as mt, getShopDisplayForItems as n, getBookingLocalDateKey as nn, formatDateKey as nt, formatCommercePrice as o, toBookingTimeZone as on, isSameCalendarDay as ot, productItemKey as p, publicEventPricingDisplay as pn, resolveOnColorForThemeToken as pt, normalizeCsvIds as q, resolveWholeSeriesBookingPhase as qt, buildCartDisplay as r, getLocalScheduleDate as rn, getDayOfWeek as rt, formatInterval as s, toScheduledBookingDateRange as sn, isToday as st, defineIslandPropsDecoder as t, formatLocalScheduleDate as tn, buildCalendarViewport as tt, buildProductCartItem as u, formatEventPricing as un, groupPublicEventsByRun as ut, toWholeSeriesRegistrationEvents as v, parseCurrencyCode as vn, logger as vt, toRegistrationRequestSubject as w, getBookingSuccessMessage as wt, resolveDiscountContext as x, formatBookingSubmissionPreparationError as xt, findEventByOccurrenceId as y, assertNever$2 as yn, deriveBookingFormViewState as yt, calendarWindowMonths as z, assertNever$1 as zt };
12792
+ export { getContainerClass as $, formatBookingDateParts as $t, buildEventCalendarListingRender as A, resolveAppointmentCheckoutVerificationState as At, calendarWindowBounds as B, isRecord$5 as Bt, resolveDiscountContext as C, formatBookingSubmissionPreparationError as Ct, WIZARD_STEPS as D, isBookingServiceSlidingAmountInRange as Dt, toRegistrationRequestSubject as E, getBookingSuccessMessage as Et, resolveSpacing as F, projectSelectedAppointmentConsentIntoForm as Ft, createHostedBlockApiConfig as G, okWith as Gt, calendarWindowPageSchema as H, clearWorkflowFeedback as Ht, calendarMonthDate as I, resolveSelectedAppointmentConsent as It, getEventRuntimeFiltersKey as J, CANCELLED_SESSION_STATUS as Jt, getBlockApiReadStage as K, reportWorkflowError as Kt, calendarMonthKey as L, BOOKING_FORM_DATA_RESERVED_KEYS as Lt, resolveEventRegistrationScopedEvents as M, resolveBookingSiteId as Mt, SEMANTIC_SPACING_VALUES as N, resolveDefaultBookingServiceId as Nt, getStepNumber as O, parseBookingCurrencyInputToCents as Ot, isSemanticSpacing as P, toSelectedCollectionOptionKind as Pt, getCardOrientation as Q, formatBookingDate as Qt, calendarPageResponseError as R, isBookingRequirementConsentFieldId as Rt, findPreSelectedEvent as S, formatBookingCentsAsCurrencyInput as St, resolveRegistrationTarget as T, getBookingServiceSlidingScale as Tt, planCalendarMonthRanges as U, err as Ut, calendarWindowMonths as V, assertNever$1 as Vt, resolveCalendarReadProfile as W, ok as Wt, normalizeCsvString as X, parseMailingListVisitorSelection as Xt, normalizeCsvIds as Y, resolveWholeSeriesBookingPhase as Yt, normalizeOptionalId as Z, addLocalScheduleDays as Zt, buildEventRegistrationDisplayFromScopedEvents as _, publicEventPricingStrategy as _n, themeButtonSizeClassName as _t, buildProductDetailDisplay as a, getLocalScheduleDate as an, getDayOfWeek as at, toWholeSeriesRegistrationEvents as b, parseCurrencyCode as bn, logger as bt, EMPTY_COMMERCE_CART_STATE as c, toBookingTimeZone as cn, isSameCalendarDay as ct, deriveCommerceCheckoutState as d, formatBookingPriceDisplay as dn, resolveRuntimeEventDestination as dt, formatBookingDateTime as en, MONTH_NAMES as et, parseStoredCommerceCartState as f, formatEventPricing as fn, groupPublicEventsByRun as ft, newsletterBlockSubmissionMessage as g, publicEventPricingOptions as gn, resolveTokenOrCssColorValue as gt, NEWSLETTER_SIGNUPS_PAUSED_MESSAGE as h, publicEventPricingDisplay as hn, resolveOnColorForThemeToken as ht, buildProductCardDisplay as i, getBookingLocalDateKey as in, formatDateKey as it, staticHeaderChromeRuntime as j, resolveBookingPaymentStep as jt, getWizardStepsForContext as k, prepareBookingSubmission as kt, buildPassCartItem as l, toScheduledBookingDateRange as ln, isToday as lt, reduceCommerceCart as m, publicEventPricingCurrency as mn, isCssColorLiteral as mt, getShopDisplayForItems as n, formatBookingTime as nn, addMonths as nt, formatCommercePrice as o, parseBookingLocalDate as on, getOrderedDayNames as ot, productItemKey as p, isPublicEventPricingOptionDisplayable as pn, boxBackgroundSchema as pt, buildEventRuntimeFilters as q, reportWorkflowSuccess as qt, buildCartDisplay as r, formatLocalScheduleDate as rn, buildCalendarViewport as rt, formatInterval as s, resolveBookingTimeZoneId as sn, getWeekCalendarDays as st, defineIslandPropsDecoder as t, formatBookingInstant as tn, addDays as tt, buildProductCartItem as u, toScheduledBookingDateTime as un, shiftCalendarAnchorDate as ut, getRegistrationStartAt as v, publicEventPricingType as vn, themeButtonVariantClassNames as vt, resolveEventRequiresPayment as w, getBookingRedirectStateFromLocation as wt, findEventByOccurrenceId as x, assertNever$2 as xn, deriveBookingFormViewState as xt, toRegistrationEvents as y, formatCurrencyAmount as yn, normalizeCardRole as yt, calendarQueryKey as z, RichTextDocSchema as zt };