@riverbankcms/sdk 0.139.0 → 0.141.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 (232) hide show
  1. package/README.md +1 -1
  2. package/dist/{PreviewEditorSidebar-BDeenhi3.mjs → PreviewEditorSidebar-Q-fy9GYw.mjs} +4 -4
  3. package/dist/{PreviewEditorUI-DSRhgjF5.mjs → PreviewEditorUI-LYGzgk85.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-D2K8GLUG.mjs → PreviewQueryProvider-CN0ewic5.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-CL7wSnYu.mjs → SdkPreviewModeRuntime-CoPYI5Jq.mjs} +90 -50
  6. package/dist/{SiteChromeCustomizeContext-BhDn-5ir.mjs → SiteChromeCustomizeContext-D8LePX8x.mjs} +2731 -1303
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +165 -165
  8. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +212 -212
  9. package/dist/_dts/api/src/accessAdmin.d.ts +74 -104
  10. package/dist/_dts/api/src/aiEndpoints.d.ts +5 -1
  11. package/dist/_dts/api/src/authSubmission.d.ts +46 -0
  12. package/dist/_dts/api/src/billing.d.ts +8 -4
  13. package/dist/_dts/api/src/billingEndpointDefinitions.d.ts +23 -0
  14. package/dist/_dts/api/src/billingEndpointTypes.d.ts +26 -0
  15. package/dist/_dts/api/src/blocks.d.ts +2 -0
  16. package/dist/_dts/api/src/bookingRecords.d.ts +1 -2
  17. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +8 -1
  18. package/dist/_dts/api/src/communications.d.ts +0 -1
  19. package/dist/_dts/api/src/contentRuntime.d.ts +17 -31
  20. package/dist/_dts/api/src/domainConnection.d.ts +4 -0
  21. package/dist/_dts/api/src/endpoints.d.ts +93 -64
  22. package/dist/_dts/api/src/event-destination-policy.d.ts +2 -1
  23. package/dist/_dts/api/src/footerCompositionContracts.d.ts +25 -0
  24. package/dist/_dts/api/src/footerSettings.d.ts +9 -6
  25. package/dist/_dts/api/src/index.d.ts +6 -7
  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 +1 -0
  29. package/dist/_dts/api/src/mailingListIntegration.d.ts +8 -2
  30. package/dist/_dts/api/src/navigation/dashboardSettingsNav.d.ts +1 -1
  31. package/dist/_dts/api/src/navigation/dashboardSiteNav.d.ts +2 -1
  32. package/dist/_dts/api/src/navigation/types.d.ts +1 -1
  33. package/dist/_dts/api/src/onboarding/confirmationResend.d.ts +25 -0
  34. package/dist/_dts/api/src/onboarding/surfaceData.d.ts +32 -32
  35. package/dist/_dts/api/src/publicBookingAvailabilityEndpointDefinitions.d.ts +8 -0
  36. package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +1 -0
  37. package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +11 -3
  38. package/dist/_dts/api/src/publicExperience/sharedTypes.d.ts +3 -29
  39. package/dist/_dts/api/src/publicOnboardingAttemptEndpointDefinitions.d.ts +65 -0
  40. package/dist/_dts/api/src/saveOutcome.d.ts +20 -0
  41. package/dist/_dts/api/src/sdkContracts.d.ts +3 -22
  42. package/dist/_dts/api/src/sdkPushContracts.d.ts +18 -0
  43. package/dist/_dts/api/src/sdkThemeWire.d.ts +44 -44
  44. package/dist/_dts/api/src/settings/permissions.d.ts +12 -0
  45. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +10 -29
  46. package/dist/_dts/api/src/siteOnboarding.d.ts +9 -9
  47. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +2 -4
  48. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +3 -1
  49. package/dist/_dts/api/src/siteSettings.d.ts +20 -7
  50. package/dist/_dts/api/src/types.d.ts +77 -77
  51. package/dist/_dts/api/src/wholeSeriesRuns.d.ts +2 -37
  52. package/dist/_dts/billing/src/membership/index.d.ts +3 -0
  53. package/dist/_dts/billing/src/plans/types.d.ts +3 -0
  54. package/dist/_dts/billing/src/site-arrangements.d.ts +23 -3
  55. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +20 -4
  56. package/dist/_dts/blocks/src/pageRenderAdmission.d.ts +2 -0
  57. package/dist/_dts/blocks/src/pageRendererContracts.d.ts +7 -0
  58. package/dist/_dts/blocks/src/portal/types.d.ts +2 -4
  59. package/dist/_dts/blocks/src/portal/waitlist-types.d.ts +35 -0
  60. package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +2 -0
  61. package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +2 -0
  62. package/dist/_dts/blocks/src/system/blocks/events/eventSelectionFields.d.ts +122 -0
  63. package/dist/_dts/blocks/src/system/blocks/events/shared/calendarWindow.d.ts +2 -1
  64. package/dist/_dts/blocks/src/system/blocks/events/shared/eventSelection.d.ts +11 -0
  65. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +42 -0
  66. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +4 -0
  67. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +2 -2
  68. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +47 -47
  69. package/dist/_dts/blocks/src/system/data/index.d.ts +2 -2
  70. package/dist/_dts/blocks/src/system/data/prefetchBlockData.d.ts +7 -1
  71. package/dist/_dts/blocks/src/system/data/types.d.ts +9 -0
  72. package/dist/_dts/blocks/src/system/data/utils.d.ts +1 -1
  73. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +27 -1
  74. package/dist/_dts/blocks/src/system/registry.d.ts +1 -0
  75. package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +0 -28
  76. package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
  77. package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +7 -3
  78. package/dist/_dts/blocks/src/system/runtime/api/types/portal.d.ts +1 -1
  79. package/dist/_dts/blocks/src/system/runtime/api/types/waitlist-claims.d.ts +7 -2
  80. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +42 -186
  81. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +21 -93
  82. package/dist/_dts/blocks/src/system/runtime/hooks/useEventFilters.d.ts +2 -1
  83. package/dist/_dts/blocks/src/system/runtime/nodes/appointment-services.d.ts +48 -1
  84. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationSurface.d.ts +1 -2
  85. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/TicketSelectionStep.d.ts +2 -0
  86. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/checkoutRecovery.d.ts +14 -0
  87. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventSourceRecovery.d.ts +56 -0
  88. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.d.ts +4 -0
  89. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.state.d.ts +5 -0
  90. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +6 -8
  91. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useCheckoutRecovery.d.ts +8 -0
  92. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useDiscountCodeUi.d.ts +3 -0
  93. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useDiscountCodeUi.state.d.ts +10 -3
  94. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventCheckoutHandoffRestore.d.ts +9 -0
  95. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +8 -7
  96. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +14 -7
  97. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventSourceRecovery.d.ts +18 -0
  98. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useSettledCommerceView.d.ts +37 -0
  99. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.client.d.ts +1 -1
  100. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +24 -6
  101. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.server.d.ts +4 -2
  102. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +4 -3
  103. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +3 -0
  104. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +11 -101
  105. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +7 -2
  106. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/listOptions.d.ts +2 -0
  107. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +6 -0
  108. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +1 -0
  109. package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +1 -0
  110. package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +2 -6
  111. package/dist/_dts/blocks/src/system/runtime/shared/index.d.ts +2 -2
  112. package/dist/_dts/blocks/src/system/runtime/shared/useWaitlistClaim.d.ts +2 -0
  113. package/dist/_dts/blocks/src/system/transforms/registry/eventCalendar.d.ts +12 -0
  114. package/dist/_dts/commerce/src/purchase/bookingInstalmentSchedule.d.ts +4 -0
  115. package/dist/_dts/commerce/src/purchase/event-registration-errors.d.ts +4 -0
  116. package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +27 -4
  117. package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +2 -1
  118. package/dist/_dts/content-editor/src/hooks/useBlockAutosave.d.ts +3 -1
  119. package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +3 -0
  120. package/dist/_dts/core/src/branded.d.ts +0 -8
  121. package/dist/_dts/core/src/index.d.ts +1 -0
  122. package/dist/_dts/core/src/mailing-list-setup-parser.d.ts +1 -1
  123. package/dist/_dts/core/src/mailing-list-setup.d.ts +14 -1
  124. package/dist/_dts/core/src/mailing-list-submission.d.ts +7 -27
  125. package/dist/_dts/core/src/participants.d.ts +2 -29
  126. package/dist/_dts/core/src/public-experience.d.ts +4 -0
  127. package/dist/_dts/core/src/public-profile.d.ts +27 -1
  128. package/dist/_dts/core/src/site-route-target.d.ts +9 -2
  129. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +296 -606
  130. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/MailingListGlobalSettingsSummary.d.ts +10 -0
  131. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/MailingListTargetingField.d.ts +3 -2
  132. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/context.d.ts +3 -2
  133. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/loaders.d.ts +3 -2
  134. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/targetingState.d.ts +19 -0
  135. package/dist/_dts/editor-blocks/src/widgets/site-option-picker/loaders.d.ts +27 -1
  136. package/dist/_dts/sdk/src/public-api/contracts.d.ts +14 -20
  137. package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +2 -0
  138. package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +2 -0
  139. package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +7 -1
  140. package/dist/_dts/sdk/src/rendering/helpers/templateContent.d.ts +1 -0
  141. package/dist/_dts/sdk/src/version.d.ts +1 -1
  142. package/dist/_dts/theme-core/src/ThemeFontLoader.d.ts +17 -1
  143. package/dist/_dts/theme-core/src/accordions/types.d.ts +3 -3
  144. package/dist/_dts/theme-core/src/buttons/affordanceSuppression.d.ts +17 -0
  145. package/dist/_dts/theme-core/src/buttons/buttonColourContract.d.ts +1 -1
  146. package/dist/_dts/theme-core/src/buttons/classNames.d.ts +16 -0
  147. package/dist/_dts/theme-core/src/buttons/generateButtonCss.d.ts +0 -6
  148. package/dist/_dts/theme-core/src/buttons/resolvedButtonCss.d.ts +4 -4
  149. package/dist/_dts/theme-core/src/cards/types.d.ts +21 -21
  150. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  151. package/dist/_dts/theme-core/src/header/interactionPalette.d.ts +8 -2
  152. package/dist/_dts/theme-core/src/header/legacyHeaderVariant.d.ts +2 -2
  153. package/dist/_dts/theme-core/src/hosted-booking-appearance.d.ts +54 -12
  154. package/dist/_dts/theme-core/src/index.d.ts +1 -1
  155. package/dist/_dts/theme-core/src/inputs/types.d.ts +2 -2
  156. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +54 -54
  157. package/dist/_dts/theme-core/src/runtime/buildThemeRuntimeFromBridge.d.ts +1 -4
  158. package/dist/_dts/theme-core/src/schema.d.ts +84 -84
  159. package/dist/_dts/theme-core/src/shared/componentStyles.d.ts +1 -1
  160. package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
  161. package/dist/_dts/theme-core/src/surfaces/foregroundInteraction.d.ts +77 -0
  162. package/dist/_dts/theme-core/src/surfaces/index.d.ts +1 -0
  163. package/dist/_dts/theme-core/src/typography/generateTypographyCss.d.ts +2 -2
  164. package/dist/_dts/ui/src/lib/use-delayed-flag.d.ts +9 -0
  165. package/dist/_dts/ui/src/pending-button.d.ts +10 -0
  166. package/dist/client/{BookingConsentAgreement-CZvTDtsK.mjs → BookingConsentAgreement-xJeYNdnb.mjs} +4 -4
  167. package/dist/client/{DiscountCodeDisclosure-D-DsLCMU.mjs → DiscountCodeDisclosure-DdT6uzl9.mjs} +1 -1
  168. package/dist/client/{EventCombined.client-dWqgd5ZO.mjs → EventCombined.client-Cp28uYuM.mjs} +12 -16
  169. package/dist/client/{EventListing.client-BMRa9IYp.mjs → EventListing.client-CD6AJsMr.mjs} +4 -17
  170. package/dist/client/{LeafletStaticMap-D21W9kBZ.mjs → LeafletStaticMap-DBsAi9-e.mjs} +1 -1
  171. package/dist/client/{accordion-FxF_ta47.mjs → accordion-6dwbOKYR.mjs} +1 -1
  172. package/dist/client/{bookingForm-YnwW4TGw.mjs → bookingForm-CZE9_qPQ.mjs} +7 -7
  173. package/dist/client/bookings.mjs +500 -233
  174. package/dist/client/{carousel-vng7fFT5.mjs → carousel-7VHGQARz.mjs} +2 -2
  175. package/dist/client/{carousel.client-59G_WMr4.mjs → carousel.client-DQTjCVQT.mjs} +1 -1
  176. package/dist/client/{cart-DEPDsjNk.mjs → cart-Qg_mvQhh.mjs} +3 -3
  177. package/dist/client/{checkout-CZRWu9rW.mjs → checkout-D84rpgdr.mjs} +3 -3
  178. package/dist/client/{checkoutUrls-BuseL0dw.mjs → checkoutUrls-FL6lRkrt.mjs} +1 -1
  179. package/dist/client/client.mjs +2315 -1017
  180. package/dist/client/{colorStyles-CrxJrPjJ.mjs → colorStyles-3013aRAY.mjs} +3 -1
  181. package/dist/client/{context-DvU_WUmd.mjs → context-Ctp3T0Wr.mjs} +6 -19
  182. package/dist/client/{dates-wnPMiRl5.mjs → dates-DJKFcI_N.mjs} +2 -2
  183. package/dist/client/{eventCalendar-BA3Q5L15.mjs → eventCalendar-CK31z3vs.mjs} +12 -8
  184. package/dist/client/{eventCombined-51wgR-1R.mjs → eventCombined-DiXd-ewn.mjs} +3 -3
  185. package/dist/client/{eventDetails-modaetpm.mjs → eventDetails-CTRgt2DK.mjs} +4 -4
  186. package/dist/client/{eventListing-D8t2J3Kv.mjs → eventListing-Dy9vi_j_.mjs} +3 -3
  187. package/dist/client/{eventRegistration-CYqtkCE_.mjs → eventRegistration-CnalYMr2.mjs} +618 -177
  188. package/dist/client/{form-CBKXN5In.mjs → form-eUiMveTT.mjs} +3 -3
  189. package/dist/client/{headerSection-DylDqNrs.mjs → headerSection-Dy9kQpB1.mjs} +2 -2
  190. package/dist/client/hooks.mjs +692 -212
  191. package/dist/client/{locationMap-CvWrG0vZ.mjs → locationMap-DalCmWU0.mjs} +3 -3
  192. package/dist/client/{media-BOHuueS5.mjs → media-DHpfFwd3.mjs} +1 -1
  193. package/dist/client/{newsletterForm-Btwk70zw.mjs → newsletterForm-SDDPvhS0.mjs} +150 -94
  194. package/dist/client/{pricing-Uzw-GQ6Y.mjs → pricing-OcMz4SnX.mjs} +1 -1
  195. package/dist/client/{productDetail-JLcUYKnd.mjs → productDetail-BQrgHElM.mjs} +3 -3
  196. package/dist/client/{productList-FM0cbUzj.mjs → productList-OnPn_UJj.mjs} +3 -3
  197. package/dist/client/{propsDecoder-DYzafZb2.mjs → propsDecoder-zBdsnS-N.mjs} +168 -32
  198. package/dist/client/rendering/client.mjs +1355 -519
  199. package/dist/client/rendering/islands.mjs +19 -19
  200. package/dist/client/rendering.mjs +2294 -953
  201. package/dist/client/{scrollToBlock-CvXszexS.mjs → scrollToBlock-BNM4Ob2Y.mjs} +28 -11
  202. package/dist/client/{shop-BIcjvy5a.mjs → shop-Bv1fPTwQ.mjs} +6 -6
  203. package/dist/client/{shop-commerce-BZQsy7xw.mjs → shop-commerce-D4KNGaW8.mjs} +7 -7
  204. package/dist/client/{shop-commerce-store-D5V7XAb5.mjs → shop-commerce-store-2N5EV0Rc.mjs} +1 -1
  205. package/dist/client/{shopShared-DowkXevB.mjs → shopShared-DvJGdHTV.mjs} +4 -4
  206. package/dist/client/{useEventFilters-oMoTw_JE.mjs → useEventFilters-BBBvGDHQ.mjs} +19 -13
  207. package/dist/preview-next/before-render.mjs +119 -64
  208. package/dist/preview-next/client/runtime.mjs +4 -4
  209. package/dist/preview-next/editor-chrome.css +4 -8
  210. package/dist/preview-next/keepAlive.mjs +119 -64
  211. package/dist/preview-next/middleware.mjs +119 -64
  212. package/dist/{previewAuthStore-COUyAKaX.mjs → previewAuthStore-Gjb6r6vz.mjs} +119 -64
  213. package/dist/{sdk-runtime-D4k2LSGF.mjs → sdk-runtime-Defnbfzw.mjs} +2 -2
  214. package/dist/{separator-UGtpag4Z.mjs → separator-CZXO3Sb0.mjs} +1 -1
  215. package/dist/server/components.mjs +1170 -384
  216. package/dist/server/config-validation.mjs +560 -105
  217. package/dist/server/config.mjs +564 -109
  218. package/dist/server/data.mjs +688 -212
  219. package/dist/server/index.mjs +126 -66
  220. package/dist/server/next.mjs +1429 -662
  221. package/dist/server/page-converter.mjs +372 -99
  222. package/dist/server/prebuild.mjs +1 -1
  223. package/dist/server/rendering/server.mjs +1624 -817
  224. package/dist/server/rendering.mjs +1200 -391
  225. package/dist/server/routing.mjs +767 -247
  226. package/dist/server/server.mjs +715 -276
  227. package/dist/server/theme-bridge.mjs +475 -110
  228. package/dist/server/theme.mjs +9 -3
  229. package/dist/styles/index.css +265 -45
  230. package/package.json +1 -1
  231. package/dist/_dts/blocks/src/system/runtime/shared/components/BookingOptionCompactRow.d.ts +0 -29
  232. package/dist/_dts/blocks/src/system/runtime/shared/components/BookingOptionList.d.ts +0 -13
@@ -2,6 +2,6 @@ import { type ThemeColorToken } from '../tokens';
2
2
  export declare const backgroundAppearanceQuickColorTokenNames: readonly ["background", "surface", "muted", "primary", "secondary", "accent"];
3
3
  export declare const backgroundAppearanceBaseColorTokenNames: readonly ["background", "surface", "surfaceAlt", "muted", "primary", "secondary", "accent", "neutral"];
4
4
  export declare const backgroundAppearanceShadeableColorTokenNames: readonly ["primary", "secondary", "accent", "neutral"];
5
- export declare const backgroundAppearanceColorTokenNames: readonly ("surface" | "background" | "primary" | "secondary" | "accent" | "surfaceAlt" | "muted" | "neutral" | "neutral-600" | "neutral-500" | "neutral-800" | "neutral-700" | "neutral-900" | "primary-500" | "primary-400" | "neutral-950" | "primary-300" | "primary-600" | "secondary-600" | "accent-600" | "secondary-500" | "accent-400" | "neutral-50" | "neutral-100" | "neutral-200" | "neutral-300" | "secondary-400" | "neutral-400" | "primary-100" | "primary-800" | "primary-900" | "primary-700" | "primary-50" | "secondary-50" | "secondary-900" | "accent-50" | "accent-500" | "accent-900" | "primary-200" | "primary-950" | "secondary-100" | "secondary-200" | "secondary-300" | "secondary-700" | "secondary-800" | "secondary-950" | "accent-100" | "accent-200" | "accent-300" | "accent-700" | "accent-800" | "accent-950")[];
6
- export declare const backgroundAppearanceAdvancedColorTokenNames: ("surface" | "background" | "primary" | "secondary" | "accent" | "surfaceAlt" | "muted" | "neutral" | "neutral-600" | "neutral-500" | "neutral-800" | "neutral-700" | "neutral-900" | "primary-500" | "primary-400" | "neutral-950" | "primary-300" | "primary-600" | "secondary-600" | "accent-600" | "secondary-500" | "accent-400" | "neutral-50" | "neutral-100" | "neutral-200" | "neutral-300" | "secondary-400" | "neutral-400" | "primary-100" | "primary-800" | "primary-900" | "primary-700" | "primary-50" | "secondary-50" | "secondary-900" | "accent-50" | "accent-500" | "accent-900" | "primary-200" | "primary-950" | "secondary-100" | "secondary-200" | "secondary-300" | "secondary-700" | "secondary-800" | "secondary-950" | "accent-100" | "accent-200" | "accent-300" | "accent-700" | "accent-800" | "accent-950")[];
5
+ export declare const backgroundAppearanceColorTokenNames: readonly ("surface" | "background" | "primary" | "secondary" | "accent" | "surfaceAlt" | "muted" | "neutral" | "neutral-600" | "neutral-500" | "neutral-50" | "neutral-900" | "primary-50" | "primary-500" | "primary-900" | "secondary-50" | "secondary-500" | "secondary-900" | "accent-50" | "accent-500" | "accent-900" | "neutral-100" | "primary-400" | "neutral-300" | "neutral-950" | "neutral-800" | "neutral-700" | "primary-300" | "primary-600" | "secondary-600" | "accent-600" | "accent-400" | "neutral-200" | "secondary-400" | "neutral-400" | "primary-100" | "primary-800" | "primary-700" | "primary-200" | "primary-950" | "secondary-100" | "secondary-200" | "secondary-300" | "secondary-700" | "secondary-800" | "secondary-950" | "accent-100" | "accent-200" | "accent-300" | "accent-700" | "accent-800" | "accent-950")[];
6
+ export declare const backgroundAppearanceAdvancedColorTokenNames: ("surface" | "background" | "primary" | "secondary" | "accent" | "surfaceAlt" | "muted" | "neutral" | "neutral-600" | "neutral-500" | "neutral-50" | "neutral-900" | "primary-50" | "primary-500" | "primary-900" | "secondary-50" | "secondary-500" | "secondary-900" | "accent-50" | "accent-500" | "accent-900" | "neutral-100" | "primary-400" | "neutral-300" | "neutral-950" | "neutral-800" | "neutral-700" | "primary-300" | "primary-600" | "secondary-600" | "accent-600" | "accent-400" | "neutral-200" | "secondary-400" | "neutral-400" | "primary-100" | "primary-800" | "primary-700" | "primary-200" | "primary-950" | "secondary-100" | "secondary-200" | "secondary-300" | "secondary-700" | "secondary-800" | "secondary-950" | "accent-100" | "accent-200" | "accent-300" | "accent-700" | "accent-800" | "accent-950")[];
7
7
  export declare function parseBackgroundAppearanceColorToken(value: unknown): ThemeColorToken | null;
@@ -0,0 +1,77 @@
1
+ import { type ThemeColorToken } from '../tokens';
2
+ /**
3
+ * How far a hover state softens away from its resting foreground, as a
4
+ * percentage of full opacity.
5
+ *
6
+ * Softening — rather than brightening — is forced by the token vocabulary
7
+ * rather than chosen for taste. A resolved foreground is frequently an
8
+ * `on*` token, which `expandPalette` emits as pure `#FFFFFF` or `#000000`
9
+ * with no shade ramp: over a primary-painted section the resolved text role
10
+ * is `onPrimary`, and white has no headroom left to move further from its
11
+ * background. Moving *toward* the mid-range always has headroom, whatever
12
+ * the resting colour, and it keeps the hue exactly.
13
+ *
14
+ * 85% is the measured floor, not a round number. Softening costs contrast, and
15
+ * the binding case is a scrolled overlay header: `contrast-glass` paints 60%
16
+ * black or white, which composites the backdrop into a known band whatever the
17
+ * page content underneath happens to be. The lightest backdrop a dark glass can
18
+ * present is 60% black over white, `#666666`; a white foreground softened to
19
+ * 85% reads 4.69:1 there, against 4.07:1 at 75%, which fails. Nav links are
20
+ * 18px regular (`textSize: 'lg'`), so the bar is WCAG AA's 4.5:1 rather than
21
+ * the large-text 3:1.
22
+ *
23
+ * The mirror case — a light glass over dark content, `#999999` — cannot be met
24
+ * by any softening, because the *resting* colour is already only about 4.6:1
25
+ * there. That is a property of the glass rather than of this derivation, and
26
+ * it wants fixing where the glass tone is chosen.
27
+ */
28
+ export declare const FOREGROUND_HOVER_OPACITY_PERCENT = 85;
29
+ /**
30
+ * Derive the hover foreground that belongs with a resolved resting foreground.
31
+ *
32
+ * A resting foreground is chosen to be legible against a known surface. A hover
33
+ * state derived from it stays within a bounded distance of that colour, so it
34
+ * inherits most of the resting colour's contrast margin instead of asserting
35
+ * an unrelated brand colour that no one checked against the surface.
36
+ *
37
+ * That bounded-distance property is what lets this be used on a transparent
38
+ * overlay header, where the backdrop is only partly knowable: the scrolled
39
+ * state composites a 60% glass tint over arbitrary page content, so no
40
+ * compile-time contrast proof is available there. Staying near a colour that
41
+ * is already trusted in both states is a weaker claim than a contrast proof,
42
+ * and it is one this function can actually keep.
43
+ *
44
+ * Returns `null` when the resting token is not a plain palette token — an
45
+ * already-faded or raw value has no well-defined softening, and the caller
46
+ * should leave hover alone rather than guess.
47
+ */
48
+ export declare function deriveForegroundHoverToken(restingToken: ThemeColorToken): ThemeColorToken | null;
49
+ /** Flatten `foreground` at `alpha` over `background` into an opaque hex. */
50
+ export declare function compositeHex(foreground: string, background: string, alpha: number): string;
51
+ export type ForegroundHoverPlan =
52
+ /** Soften the resting colour; the derived token clears the conservative bound. */
53
+ Readonly<{
54
+ kind: 'softened';
55
+ token: ThemeColorToken;
56
+ }>
57
+ /**
58
+ * Keep the resting colour. Softening it would drop below the ordinary-text
59
+ * ratio somewhere the glass can reach, so the hover affordance has to come
60
+ * from something other than colour.
61
+ */
62
+ | Readonly<{
63
+ kind: 'resting';
64
+ }>;
65
+ /**
66
+ * Decide whether the resting foreground can safely be softened for hover.
67
+ *
68
+ * `glassTone` is the scroll treatment's compiled tone, or `null` when the style
69
+ * has no glass. Without one there is no bound on what the header can end up
70
+ * over, so this declines to soften rather than guess.
71
+ *
72
+ * The light-glass end cannot be satisfied by any softening: against `#999999`
73
+ * a dark resting foreground is already close to the 4.5:1 line, so every step
74
+ * away from it fails. That is why this returns a plan rather than a colour —
75
+ * the caller has to have a non-colour affordance to fall back on.
76
+ */
77
+ export declare function planForegroundHover(restingToken: ThemeColorToken, restingHex: string | null, glassTone: 'light' | 'dark' | null): ForegroundHoverPlan;
@@ -1,3 +1,4 @@
1
1
  export * from './foregroundContract';
2
+ export * from './foregroundInteraction';
2
3
  export * from './foregroundRoles';
3
4
  export * from './resolveSurfaceForeground';
@@ -7,7 +7,7 @@
7
7
  import type { Theme } from '../schema';
8
8
  export interface GenerateTypographyCssParams {
9
9
  themeId: string;
10
- theme: Theme;
10
+ theme?: Theme;
11
11
  }
12
12
  /**
13
13
  * Generate typography CSS for heading elements.
@@ -19,4 +19,4 @@ export interface GenerateTypographyCssParams {
19
19
  *
20
20
  * Selectors use :where() for zero specificity, allowing site styles to override easily.
21
21
  */
22
- export declare function generateTypographyCss({ themeId }: GenerateTypographyCssParams): string;
22
+ export declare function generateTypographyCss({ themeId, }: GenerateTypographyCssParams): string;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * True once `active` has held for `delay` milliseconds.
3
+ *
4
+ * This is what keeps a spinner from flashing on an action that finishes
5
+ * quickly. It lives on its own so that anything drawing its own pending
6
+ * indicator gets the same timing rather than reimplementing it, and so the two
7
+ * cannot drift apart.
8
+ */
9
+ export declare function useDelayedFlag(active: boolean, delay: number): boolean;
@@ -6,5 +6,15 @@ export interface PendingButtonProps extends ButtonProps {
6
6
  pendingLabel?: ReactNode;
7
7
  spinnerDelay?: number;
8
8
  spinnerProps?: Omit<DelayedSpinnerProps, 'active' | 'delay'>;
9
+ /**
10
+ * Draws the pending indicator instead of the default spinner, for surfaces
11
+ * with their own loading language.
12
+ *
13
+ * `visible` already has `spinnerDelay` applied, so a slot does not have to
14
+ * reimplement the delay and cannot flash on a fast action.
15
+ */
16
+ renderSpinner?: (state: Readonly<{
17
+ visible: boolean;
18
+ }>) => ReactNode;
9
19
  }
10
20
  export declare const PendingButton: import("react").ForwardRefExoticComponent<PendingButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -1,8 +1,8 @@
1
1
  "use client";
2
- import { D as clsx } from "./colorStyles-CrxJrPjJ.mjs";
3
- import { Nt as assertNever$2, dn as formatCurrencyAmount } from "./propsDecoder-DYzafZb2.mjs";
4
- import { a as CheckIcon } from "./scrollToBlock-CvXszexS.mjs";
5
- import { n as RichText } from "./checkoutUrls-BuseL0dw.mjs";
2
+ import { O as clsx } from "./colorStyles-3013aRAY.mjs";
3
+ import { Pt as assertNever$2, fn as formatCurrencyAmount } from "./propsDecoder-zBdsnS-N.mjs";
4
+ import { a as CheckIcon } from "./scrollToBlock-BNM4Ob2Y.mjs";
5
+ import { n as RichText } from "./checkoutUrls-FL6lRkrt.mjs";
6
6
  import { useCallback, useEffect, useReducer, useRef } from "react";
7
7
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
8
8
  //#region ../core/src/date-math.ts
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { ut as themeButtonClassName } from "./propsDecoder-DYzafZb2.mjs";
2
+ import { dt as themeButtonClassName } from "./propsDecoder-zBdsnS-N.mjs";
3
3
  import { useId } from "react";
4
4
  import { jsx, jsxs } from "react/jsx-runtime";
5
5
  //#region ../blocks/src/system/runtime/api/types/discounts.ts
@@ -1,10 +1,10 @@
1
1
  "use client";
2
- import { D as clsx } from "./colorStyles-CrxJrPjJ.mjs";
3
- import { $ as getOrderedDayNames, B as buildEventRuntimeFilters, F as calendarWindowBounds, G as getCardOrientation, I as calendarWindowMonths$1, K as getContainerClass, M as calendarMonthDate, N as calendarPageResponseError, P as calendarQueryKey, Q as getDayOfWeek, R as planCalendarMonthRanges, V as getEventRuntimeFiltersKey, X as buildCalendarViewport, Y as addMonths, Yt as formatLocalScheduleDate, Z as formatDateKey, Zt as getLocalScheduleDate, nt as isToday, q as MONTH_NAMES, rt as shiftCalendarAnchorDate, tt as isSameCalendarDay, ut as themeButtonClassName } from "./propsDecoder-DYzafZb2.mjs";
4
- import { a as EventCardClient, i as EventPaginatedListView, n as useEventPagination, o as EventFilters, r as toError, s as formatEventTeacherLine, t as useEventFilters } from "./useEventFilters-oMoTw_JE.mjs";
5
- import { o as formatEventRemainingPlaces, p as isEventFull, t as formatEventPrice } from "./pricing-Uzw-GQ6Y.mjs";
6
- import { a as formatTime, d as resolveEventLinkProps, o as groupEventsByDate, s as resolveEventTimeZone, t as formatDate, u as resolveEventCta } from "./dates-wnPMiRl5.mjs";
7
- import { n as useBlockApi } from "./context-DvU_WUmd.mjs";
2
+ import { O as clsx } from "./colorStyles-3013aRAY.mjs";
3
+ import { $ as getDayOfWeek, F as calendarQueryKey, H as getEventRuntimeFiltersKey, I as calendarWindowBounds, J as MONTH_NAMES, K as getCardOrientation, L as calendarWindowMonths$1, N as calendarMonthDate, P as calendarPageResponseError, Q as formatDateKey, Qt as getLocalScheduleDate, V as buildEventRuntimeFilters, X as addMonths, Xt as formatLocalScheduleDate, Z as buildCalendarViewport, dt as themeButtonClassName, et as getOrderedDayNames, it as shiftCalendarAnchorDate, nt as isSameCalendarDay, q as getContainerClass, rt as isToday, z as planCalendarMonthRanges } from "./propsDecoder-zBdsnS-N.mjs";
4
+ import { a as EventCardClient, i as EventPaginatedListView, n as useEventPagination, o as EventFilters, r as toError, s as formatEventTeacherLine, t as useEventFilters } from "./useEventFilters-BBBvGDHQ.mjs";
5
+ import { o as formatEventRemainingPlaces, p as isEventFull, t as formatEventPrice } from "./pricing-OcMz4SnX.mjs";
6
+ import { a as formatTime, d as resolveEventLinkProps, o as groupEventsByDate, s as resolveEventTimeZone, t as formatDate, u as resolveEventCta } from "./dates-DJKFcI_N.mjs";
7
+ import { n as useBlockApi } from "./context-Ctp3T0Wr.mjs";
8
8
  import { t as createBodyThemePortalRoot } from "./themePortalRoot-AGs4cE7t.mjs";
9
9
  import { t as ModalShell } from "./ModalShell-CqkBvBIC.mjs";
10
10
  import React, { createContext, useCallback, useContext, useEffect, useId, useMemo, useRef, useState } from "react";
@@ -1079,6 +1079,7 @@ function toEventCombinedControllerProps(props) {
1079
1079
  eventSurface: props.render.display.eventSurface,
1080
1080
  filterEventPresets: props.render.display.filterEventPresets,
1081
1081
  scheduleScope: props.render.display.scheduleScope,
1082
+ seriesIds: props.render.display.seriesIds,
1082
1083
  filterCategoryIds: props.render.display.filterCategoryIds,
1083
1084
  filterStaffMemberId: props.render.display.filterStaffMemberId,
1084
1085
  filterVenueId: props.render.display.filterVenueId,
@@ -1200,7 +1201,7 @@ const EventCombinedCalendarTab = ({ calendarTabViews, calendarView, calendarView
1200
1201
  const EventCombinedClient = ({ events: initialEvents, siteId, stage, listLayout = "stack", listColumns = "3", eventsPerPage = 12, paginationAction = {
1201
1202
  kind: "loadMore",
1202
1203
  label: "Load more events"
1203
- }, startOfWeek = "monday", calendarTabViews = "both", defaultCalendarView, showFilters, showCategoryFilter = "auto", showVenueFilter, showStaffFilter, eventSurface, filterEventPresets, scheduleScope, filterCategoryIds, filterStaffMemberId, filterVenueId, showVenue, showMap, showCapacity, cardRole, buttonVariant = "primary", buttonText = "Book", emptyMessage = "No upcoming events scheduled.", className, calendarContext, calendarWindow }) => {
1204
+ }, startOfWeek = "monday", calendarTabViews = "both", defaultCalendarView, showFilters, showCategoryFilter = "auto", showVenueFilter, showStaffFilter, eventSurface, filterEventPresets, scheduleScope, seriesIds, filterCategoryIds, filterStaffMemberId, filterVenueId, showVenue, showMap, showCapacity, cardRole, buttonVariant = "primary", buttonText = "Book", emptyMessage = "No upcoming events scheduled.", className, calendarContext, calendarWindow }) => {
1204
1205
  const hydrationReady = useHydrationReady();
1205
1206
  const fetchInitialEventsOnMount = initialEvents == null;
1206
1207
  const resolvedShowFilters = showFilters ?? true;
@@ -1226,6 +1227,7 @@ const EventCombinedClient = ({ events: initialEvents, siteId, stage, listLayout
1226
1227
  showCategoryFilter: resolvedShowFilters ? showCategoryFilter : "never",
1227
1228
  showVenueFilter: resolvedShowFilters ? resolvedShowVenueFilter : false,
1228
1229
  showStaffFilter: resolvedShowFilters ? resolvedShowStaffFilter : false,
1230
+ preFilterSeriesIds: seriesIds,
1229
1231
  preFilterCategoryIds: filterCategoryIds,
1230
1232
  preFilterStaffMemberId: filterStaffMemberId,
1231
1233
  preFilterVenueId: filterVenueId,
@@ -1233,21 +1235,15 @@ const EventCombinedClient = ({ events: initialEvents, siteId, stage, listLayout
1233
1235
  preFilterEventPresets: filterEventPresets,
1234
1236
  preFilterScheduleScope: resolvedScheduleScope
1235
1237
  });
1236
- const initialListFilters = useMemo(() => buildEventRuntimeFilters({
1238
+ const initialListFilters = buildEventRuntimeFilters({
1237
1239
  eventSurface: resolvedEventSurface,
1238
1240
  filterEventPresets,
1239
1241
  scheduleScope: resolvedScheduleScope,
1242
+ seriesIds,
1240
1243
  filterCategoryIds,
1241
1244
  filterStaffMemberId,
1242
1245
  filterVenueId
1243
- }), [
1244
- resolvedEventSurface,
1245
- filterCategoryIds,
1246
- filterEventPresets,
1247
- filterStaffMemberId,
1248
- filterVenueId,
1249
- resolvedScheduleScope
1250
- ]);
1246
+ });
1251
1247
  const listFilters = useMemo(() => getFilterParams(), [getFilterParams]);
1252
1248
  const pageSize = eventsPerPage;
1253
1249
  const { events: paginatedEvents, loading: eventsLoading, error: eventsError, hasMore, loadMore } = useEventPagination({
@@ -1,6 +1,6 @@
1
1
  "use client";
2
- import { B as buildEventRuntimeFilters } from "./propsDecoder-DYzafZb2.mjs";
3
- import { i as EventPaginatedListView, n as useEventPagination, o as EventFilters, t as useEventFilters } from "./useEventFilters-oMoTw_JE.mjs";
2
+ import { V as buildEventRuntimeFilters } from "./propsDecoder-zBdsnS-N.mjs";
3
+ import { i as EventPaginatedListView, n as useEventPagination, o as EventFilters, t as useEventFilters } from "./useEventFilters-BBBvGDHQ.mjs";
4
4
  import { useId, useMemo } from "react";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  //#region ../blocks/src/system/runtime/nodes/events/EventListing.client.tsx
@@ -12,25 +12,12 @@ const EventListingController = ({ render }) => {
12
12
  const hydration = render.hydration;
13
13
  const filtersIdBase = useId();
14
14
  const initialListEvents = useMemo(() => [...display.events], [display.events]);
15
- const initialListFilters = useMemo(() => buildEventRuntimeFilters({
16
- eventSurface: hydration.eventSurface,
17
- filterEventPresets: hydration.filterEventPresets,
18
- scheduleScope: hydration.scheduleScope,
19
- filterCategoryIds: hydration.filterCategoryIds,
20
- filterStaffMemberId: hydration.filterStaffMemberId,
21
- filterVenueId: hydration.filterVenueId
22
- }), [
23
- hydration.eventSurface,
24
- hydration.filterEventPresets,
25
- hydration.scheduleScope,
26
- hydration.filterCategoryIds,
27
- hydration.filterStaffMemberId,
28
- hydration.filterVenueId
29
- ]);
15
+ const initialListFilters = buildEventRuntimeFilters(hydration);
30
16
  const { categories, venues, staffMembers, selectedCategoryId, selectedStaffMemberId, selectedVenueId, loading: filtersLoading, shouldShowCategoryFilter, shouldShowVenueFilter, shouldShowStaffFilter, hasActiveFilters, setSelectedCategoryId, setSelectedStaffMemberId, setSelectedVenueId, resetFilters, getFilterParams } = useEventFilters({
31
17
  showCategoryFilter: hydration.showFilters ? hydration.showCategoryFilter : "never",
32
18
  showVenueFilter: hydration.showFilters ? hydration.showVenueFilter : false,
33
19
  showStaffFilter: hydration.showFilters ? hydration.showStaffFilter : false,
20
+ preFilterSeriesIds: hydration.seriesIds,
34
21
  preFilterCategoryIds: hydration.filterCategoryIds ?? void 0,
35
22
  preFilterStaffMemberId: hydration.filterStaffMemberId ?? void 0,
36
23
  preFilterVenueId: hydration.filterVenueId ?? void 0,
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { Mt as isRecord } from "./propsDecoder-DYzafZb2.mjs";
2
+ import { Nt as isRecord } from "./propsDecoder-zBdsnS-N.mjs";
3
3
  import { useEffect, useRef, useState } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  //#region ../blocks/src/system/runtime/nodes/shared/LeafletStaticMap.tsx
@@ -1,4 +1,4 @@
1
- import { t as defineIslandPropsDecoder } from "./propsDecoder-DYzafZb2.mjs";
1
+ import { t as defineIslandPropsDecoder } from "./propsDecoder-zBdsnS-N.mjs";
2
2
  //#region src/rendering/islands/enhancers/accordion.ts
3
3
  const decode = defineIslandPropsDecoder("accordion");
4
4
  function parseDefaultValues(value) {
@@ -1,14 +1,14 @@
1
1
  "use client";
2
- import { S as unsafeAsPassId, _ as unsafeAsAppointmentResourceId, b as unsafeAsFormId, v as unsafeAsAppointmentServiceId, y as unsafeAsCustomerPassId } from "./colorStyles-CrxJrPjJ.mjs";
3
- import { a as buildBookingPaymentSelectionViewModel, i as usePolling, n as StepIndicator, r as SpinnerNode, t as BookingConsentAgreement } from "./BookingConsentAgreement-CZvTDtsK.mjs";
4
- import { $t as resolveBookingTimeZoneId, At as isBookingRequirementConsentFieldId, Ct as resolveBookingPaymentStep, Dt as projectSelectedAppointmentConsentIntoForm, Et as toSelectedCollectionOptionKind, Ft as err, Lt as okWith, Nt as assertNever, Ot as resolveSelectedAppointmentConsent, Pt as clearWorkflowFeedback, Qt as parseBookingLocalDate, Rt as reportWorkflowError, St as resolveAppointmentCheckoutVerificationState, Tt as resolveDefaultBookingServiceId, Ut as addLocalScheduleDays, Yt as formatLocalScheduleDate, _t as getBookingServiceSlidingScale, bt as parseBookingCurrencyInputToCents, dn as formatCurrencyAmount, ft as logger, gt as getBookingRedirectStateFromLocation, ht as formatBookingSubmissionPreparationError, kt as BOOKING_FORM_DATA_RESERVED_KEYS, mt as formatBookingCentsAsCurrencyInput, pt as deriveBookingFormViewState, qt as formatBookingInstant, t as defineIslandPropsDecoder, ut as themeButtonClassName, vt as getBookingSuccessMessage, wt as resolveBookingSiteId, xt as prepareBookingSubmission, yt as isBookingServiceSlidingAmountInRange, zt as reportWorkflowSuccess } from "./propsDecoder-DYzafZb2.mjs";
5
- import { n as useBlockApi, t as BlockApiProvider } from "./context-DvU_WUmd.mjs";
2
+ import { C as unsafeAsPassId, b as unsafeAsCustomerPassId, v as unsafeAsAppointmentResourceId, x as unsafeAsFormId, y as unsafeAsAppointmentServiceId } from "./colorStyles-3013aRAY.mjs";
3
+ import { a as buildBookingPaymentSelectionViewModel, i as usePolling, n as StepIndicator, r as SpinnerNode, t as BookingConsentAgreement } from "./BookingConsentAgreement-xJeYNdnb.mjs";
4
+ import { $t as parseBookingLocalDate, At as BOOKING_FORM_DATA_RESERVED_KEYS, Bt as reportWorkflowSuccess, Ct as resolveAppointmentCheckoutVerificationState, Dt as toSelectedCollectionOptionKind, Et as resolveDefaultBookingServiceId, Ft as clearWorkflowFeedback, It as err, Jt as formatBookingInstant, Ot as projectSelectedAppointmentConsentIntoForm, Pt as assertNever, Rt as okWith, St as prepareBookingSubmission, Tt as resolveBookingSiteId, Wt as addLocalScheduleDays, Xt as formatLocalScheduleDate, _t as getBookingRedirectStateFromLocation, bt as isBookingServiceSlidingAmountInRange, dt as themeButtonClassName, en as resolveBookingTimeZoneId, fn as formatCurrencyAmount, gt as formatBookingSubmissionPreparationError, ht as formatBookingCentsAsCurrencyInput, jt as isBookingRequirementConsentFieldId, kt as resolveSelectedAppointmentConsent, mt as deriveBookingFormViewState, pt as logger, t as defineIslandPropsDecoder, vt as getBookingServiceSlidingScale, wt as resolveBookingPaymentStep, xt as parseBookingCurrencyInputToCents, yt as getBookingSuccessMessage, zt as reportWorkflowError } from "./propsDecoder-zBdsnS-N.mjs";
5
+ import { n as useBlockApi, t as BlockApiProvider } from "./context-Ctp3T0Wr.mjs";
6
6
  import { n as isSpamProtectionEnabled, r as AltchaWidget, t as getChallengeUrl } from "./src-B833rYRr.mjs";
7
- import { a as CheckIcon, i as StateIcon, n as useDiscountCodeUi, r as TerminalPanel, t as scrollToBlock } from "./scrollToBlock-CvXszexS.mjs";
8
- import { t as DiscountCodeDisclosure } from "./DiscountCodeDisclosure-D-DsLCMU.mjs";
7
+ import { a as CheckIcon, i as StateIcon, n as useDiscountCodeUi, r as TerminalPanel, t as scrollToBlock } from "./scrollToBlock-BNM4Ob2Y.mjs";
8
+ import { t as DiscountCodeDisclosure } from "./DiscountCodeDisclosure-DdT6uzl9.mjs";
9
9
  import { t as FeedbackMessage } from "./FeedbackMessage-CtLvvS_d.mjs";
10
10
  import { n as getFieldValidationControlProps, t as FieldValidationMessage } from "./FieldValidationMessage-AYanWFb-.mjs";
11
- import { t as buildCheckoutReturnUrls } from "./checkoutUrls-BuseL0dw.mjs";
11
+ import { t as buildCheckoutReturnUrls } from "./checkoutUrls-FL6lRkrt.mjs";
12
12
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
13
13
  import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-UNsfPcYq.mjs";
14
14
  import React, { useCallback, useEffect, useLayoutEffect, useMemo, useReducer, useRef, useState } from "react";