@riverbankcms/sdk 0.130.2 → 0.132.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 (339) hide show
  1. package/CHANGELOG.md +3 -3
  2. package/dist/{PreviewEditorSidebar-BY-1QdE2.mjs → PreviewEditorSidebar-DKQ5eFK9.mjs} +351 -95
  3. package/dist/{PreviewEditorUI-BS34jI9_.mjs → PreviewEditorUI-CNTcOjCC.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-BD0kOjtI.mjs → PreviewQueryProvider-D51gQaG3.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-B1pWnhu-.mjs → SdkPreviewModeRuntime-DJu3qu33.mjs} +48 -9
  6. package/dist/{SiteChromeCustomizeContext-BhUG_72i.mjs → SiteChromeCustomizeContext-2TzT3vbj.mjs} +6417 -4184
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +723 -151
  8. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +151 -64
  9. package/dist/_dts/api/src/bookingConfig.d.ts +13 -9
  10. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +8 -19
  11. package/dist/_dts/api/src/bookingManagementEventEndpointTypes.d.ts +31 -2
  12. package/dist/_dts/api/src/bookingVerticals.d.ts +1 -140
  13. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +45 -12
  14. package/dist/_dts/api/src/contentRuntime.d.ts +2 -1
  15. package/dist/_dts/api/src/courses.d.ts +1 -19
  16. package/dist/_dts/api/src/endpoints.d.ts +466 -346
  17. package/dist/_dts/api/src/event-destination-policy.d.ts +1 -1
  18. package/dist/_dts/api/src/eventManagementContracts.d.ts +91 -1
  19. package/dist/_dts/api/src/eventManagementEndpointDefinitions.d.ts +32 -0
  20. package/dist/_dts/api/src/giftingDashboard.d.ts +117 -0
  21. package/dist/_dts/api/src/giftingEndpointDefinitions.d.ts +124 -0
  22. package/dist/_dts/api/src/index.d.ts +4 -4
  23. package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -1
  24. package/dist/_dts/api/src/indexExtendedTypes.d.ts +1 -1
  25. package/dist/_dts/api/src/media.d.ts +1 -0
  26. package/dist/_dts/api/src/navigation/dashboardBookingsNav.d.ts +3 -4
  27. package/dist/_dts/api/src/publicEventEndpointDefinitions.d.ts +11 -0
  28. package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +25 -12
  29. package/dist/_dts/api/src/publicExperience/sharedTypes.d.ts +2 -0
  30. package/dist/_dts/api/src/publicExperience/wholeSeriesEndpoints.d.ts +1 -0
  31. package/dist/_dts/api/src/sdk-event-upsert.d.ts +2 -2
  32. package/dist/_dts/api/src/sdkBookingVerticalContracts.d.ts +29 -0
  33. package/dist/_dts/api/src/sdkContracts.d.ts +9 -32
  34. package/dist/_dts/api/src/sdkEndpointDefinitions.d.ts +23 -0
  35. package/dist/_dts/api/src/sdkSettingsContracts.d.ts +25 -0
  36. package/dist/_dts/api/src/sdkThemeCatalogContracts.d.ts +20 -0
  37. package/dist/_dts/api/src/sdkThemeWire.d.ts +16 -6
  38. package/dist/_dts/api/src/siteOnboarding.d.ts +3 -3
  39. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +4 -10
  40. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +0 -3
  41. package/dist/_dts/api/src/types.d.ts +1 -2
  42. package/dist/_dts/blocks/src/PageRenderer.d.ts +2 -13
  43. package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +9 -0
  44. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +26 -44
  45. package/dist/_dts/blocks/src/index.d.ts +1 -1
  46. package/dist/_dts/blocks/src/subroutes/fold.d.ts +2 -1
  47. package/dist/_dts/blocks/src/system/blocks/courses/shared/index.d.ts +0 -3
  48. package/dist/_dts/blocks/src/system/blocks/courses/shared/pricing.d.ts +2 -50
  49. package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +1 -929
  50. package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +1 -97
  51. package/dist/_dts/blocks/src/system/blocks/event-details.d.ts +39 -6
  52. package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +2 -1
  53. package/dist/_dts/blocks/src/system/blocks/events/event-listing.d.ts +3 -3
  54. package/dist/_dts/blocks/src/system/blocks/events/event-spotlight.d.ts +2 -3
  55. package/dist/_dts/blocks/src/system/blocks/events/shared/filtering.d.ts +2 -2
  56. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +6 -6
  57. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +2 -9
  58. package/dist/_dts/blocks/src/system/blocks/events/whole-series/index.d.ts +3 -0
  59. package/dist/_dts/blocks/src/system/blocks/events/whole-series/pricing.d.ts +50 -0
  60. package/dist/_dts/blocks/src/system/blocks/events/whole-series/schemas.d.ts +135 -0
  61. package/dist/_dts/blocks/src/system/blocks/events/whole-series/types.d.ts +81 -0
  62. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +9 -9
  63. package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +1 -1
  64. package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +7 -8
  65. package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
  66. package/dist/_dts/blocks/src/system/runtime/blockComposition.d.ts +1 -1
  67. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +45 -72
  68. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +21 -36
  69. package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessWholeSeriesRegistrationFlow.d.ts +6 -6
  70. package/dist/_dts/blocks/src/system/runtime/nodes/course-page-surface-scope.d.ts +2 -5
  71. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.client.d.ts +4 -2
  72. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +19 -7
  73. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/logic.d.ts +25 -4
  74. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/presentation.d.ts +75 -0
  75. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/view.d.ts +4 -1
  76. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.client.d.ts +5 -2
  77. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.server.d.ts +5 -2
  78. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/PaymentSelectionStep.d.ts +4 -0
  79. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/RegistrationClosedState.d.ts +5 -0
  80. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/SiteCreditPreviewPanel.d.ts +6 -0
  81. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventPaymentOptions.d.ts +2 -0
  82. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.d.ts +17 -0
  83. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationSurface.d.ts +3 -3
  84. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/siteCreditPreview.d.ts +51 -0
  85. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +3 -3
  86. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +2 -0
  87. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/BookingModeStep.d.ts +1 -1
  88. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/CheckIcon.d.ts +1 -1
  89. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/ErrorStep.d.ts +1 -1
  90. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/MembershipHero.d.ts +3 -3
  91. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/PaymentFailedStep.d.ts +1 -1
  92. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/StepIndicator.d.ts +6 -0
  93. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/VerifyingTimeoutStep.d.ts +1 -1
  94. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationActiveSteps.d.ts +9 -0
  95. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/CourseRegistrationErrorBoundary.d.ts → event-registration/whole-series/WholeSeriesRegistrationErrorBoundary.d.ts} +5 -2
  96. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationTerminalContent.d.ts +8 -0
  97. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationWizard.d.ts +8 -0
  98. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/components.d.ts +45 -0
  99. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/index.d.ts +4 -4
  100. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/presentation.d.ts +7 -0
  101. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/pricing.d.ts +14 -0
  102. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/types.d.ts +18 -16
  103. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/useCourseEligibility.d.ts → event-registration/whole-series/useWholeSeriesEligibility.d.ts} +6 -6
  104. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesPaymentVerification.d.ts +10 -0
  105. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationActions.d.ts +35 -0
  106. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/useCourseRegistrationPortal.d.ts → event-registration/whole-series/useWholeSeriesRegistrationPortal.d.ts} +2 -2
  107. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationSelection.d.ts +35 -0
  108. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationWizard.d.ts +185 -0
  109. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/useCourseWaitlistSelection.d.ts → event-registration/whole-series/useWholeSeriesWaitlistSelection.d.ts} +5 -5
  110. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/utils.d.ts +4 -4
  111. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/whole-series-registration.headless.contract.d.ts +5 -7
  112. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/whole-series-registration.headless.planning.d.ts +2 -2
  113. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/wholeSeriesPageSurfaceScope.d.ts +17 -0
  114. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/courseRegistrationViewState.d.ts → event-registration/whole-series/wholeSeriesRegistrationViewState.d.ts} +7 -7
  115. package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/wizardSteps.d.ts +4 -4
  116. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +24 -54
  117. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +2 -0
  118. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +3 -0
  119. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +12 -11
  120. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.server.d.ts +3 -2
  121. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventSpotlight.d.ts +3 -2
  122. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.d.ts +3 -2
  123. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventDetailModal.d.ts +4 -3
  124. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventModalCloseButton.d.ts +7 -0
  125. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventModals.d.ts +4 -3
  126. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekBoardView.d.ts +14 -0
  127. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +19 -4
  128. package/dist/_dts/blocks/src/system/runtime/nodes/shared/MagicLinkForm.d.ts +1 -1
  129. package/dist/_dts/blocks/src/system/runtime/shared/components/DiscountCodeDisclosure.d.ts +12 -12
  130. package/dist/_dts/blocks/src/system/runtime/shared/useWaitlistClaim.d.ts +1 -0
  131. package/dist/_dts/blocks/src/system/transforms/registry/_utils/boxStyleClassNames.d.ts +30 -11
  132. package/dist/_dts/blocks/src/system/transforms/registry/boxStyles.d.ts +15 -4
  133. package/dist/_dts/blocks/src/system/transforms/registry/index.d.ts +1 -0
  134. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +1 -4
  135. package/dist/_dts/commerce/src/purchase/bookingInstalmentSchedule.d.ts +13 -0
  136. package/dist/_dts/commerce/src/purchase/cancellationPolicy.d.ts +7 -0
  137. package/dist/_dts/commerce/src/purchase/canonicalRefundPlanner.d.ts +48 -0
  138. package/dist/_dts/commerce/src/purchase/checkoutCollectionPlan.d.ts +39 -0
  139. package/dist/_dts/commerce/src/purchase/checkoutCommitPlan.d.ts +40 -0
  140. package/dist/_dts/commerce/src/purchase/checkoutDiscountContextPlanning.d.ts +80 -0
  141. package/dist/_dts/commerce/src/purchase/checkoutErrorCodes.d.ts +1 -0
  142. package/dist/_dts/commerce/src/purchase/checkoutOrderItemProjection.d.ts +22 -0
  143. package/dist/_dts/commerce/src/purchase/checkoutPaymentFlow.d.ts +50 -0
  144. package/dist/_dts/commerce/src/purchase/checkoutPaymentPlanPlanning.d.ts +30 -0
  145. package/dist/_dts/commerce/src/purchase/checkoutPaymentTermPlanning.d.ts +10 -0
  146. package/dist/_dts/commerce/src/purchase/checkoutPaymentTerms.d.ts +53 -0
  147. package/dist/_dts/commerce/src/purchase/checkoutQuantity.d.ts +8 -0
  148. package/dist/_dts/commerce/src/purchase/checkoutSessionMetadata.d.ts +76 -0
  149. package/dist/_dts/commerce/src/purchase/checkoutSettlement.d.ts +46 -0
  150. package/dist/_dts/commerce/src/purchase/checkoutStripeFinalizationPlanning.d.ts +12 -0
  151. package/dist/_dts/commerce/src/purchase/checkoutStripeSessionPlanning.d.ts +125 -0
  152. package/dist/_dts/commerce/src/purchase/checkoutValidatedItemPlanning.d.ts +55 -0
  153. package/dist/_dts/commerce/src/purchase/confirmationEmailPayment.d.ts +91 -0
  154. package/dist/_dts/commerce/src/purchase/discountApplication.d.ts +74 -0
  155. package/dist/_dts/commerce/src/purchase/index.d.ts +55 -0
  156. package/dist/_dts/commerce/src/purchase/oneTimeCheckoutPlanning.d.ts +86 -0
  157. package/dist/_dts/commerce/src/purchase/order-number.d.ts +33 -0
  158. package/dist/_dts/commerce/src/purchase/orderCancellationPlan.d.ts +19 -0
  159. package/dist/_dts/commerce/src/purchase/orderCompletionEmailPlan.d.ts +71 -0
  160. package/dist/_dts/commerce/src/purchase/orderConfirmationPlanning.d.ts +120 -0
  161. package/dist/_dts/commerce/src/purchase/orderFulfillmentPlan.d.ts +81 -0
  162. package/dist/_dts/commerce/src/purchase/orderFulfillmentResult.d.ts +8 -0
  163. package/dist/_dts/commerce/src/purchase/orderHistoryLedgerFilters.d.ts +1 -0
  164. package/dist/_dts/commerce/src/purchase/orderHistorySource.d.ts +11 -0
  165. package/dist/_dts/commerce/src/purchase/orderInstalmentAdminSettlement.d.ts +43 -0
  166. package/dist/_dts/commerce/src/purchase/orderInstalmentClosure.d.ts +29 -0
  167. package/dist/_dts/commerce/src/purchase/orderInstalmentLifecycle.d.ts +44 -0
  168. package/dist/_dts/commerce/src/purchase/orderInstalmentPayoff.d.ts +24 -0
  169. package/dist/_dts/commerce/src/purchase/orderInstalmentPlan.d.ts +40 -0
  170. package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +151 -0
  171. package/dist/_dts/commerce/src/purchase/orderItemSupport.d.ts +14 -0
  172. package/dist/_dts/commerce/src/purchase/orderListFilters.d.ts +3 -0
  173. package/dist/_dts/commerce/src/purchase/orderPaymentLinkPlanning.d.ts +60 -0
  174. package/dist/_dts/commerce/src/purchase/orderPaymentReceipt.d.ts +184 -0
  175. package/dist/_dts/commerce/src/purchase/orderPaymentState.d.ts +135 -0
  176. package/dist/_dts/commerce/src/purchase/orderPlanningTypes.d.ts +102 -0
  177. package/dist/_dts/commerce/src/purchase/orderRefundPlanning.d.ts +50 -0
  178. package/dist/_dts/commerce/src/purchase/orderRefundPolicy.d.ts +36 -0
  179. package/dist/_dts/commerce/src/purchase/orderTotals.d.ts +23 -0
  180. package/dist/_dts/commerce/src/purchase/orderTypes.d.ts +39 -0
  181. package/dist/_dts/commerce/src/purchase/pendingCheckoutSessionClaim.d.ts +1 -0
  182. package/dist/_dts/commerce/src/purchase/persistedCheckoutLines.d.ts +27 -0
  183. package/dist/_dts/commerce/src/purchase/protectedDepositRefundPolicy.d.ts +86 -0
  184. package/dist/_dts/commerce/src/purchase/refundPolicy.d.ts +8 -0
  185. package/dist/_dts/commerce/src/purchase/refundRailSplit.d.ts +40 -0
  186. package/dist/_dts/commerce/src/purchase/result.d.ts +2 -0
  187. package/dist/_dts/commerce/src/purchase/settlement.d.ts +97 -0
  188. package/dist/_dts/commerce/src/purchase/shopRefundPlanning.d.ts +43 -0
  189. package/dist/_dts/commerce/src/purchase/stateTransitions.d.ts +31 -0
  190. package/dist/_dts/commerce/src/purchase/stripeMinimumCharge.d.ts +10 -0
  191. package/dist/_dts/commerce/src/purchase/types.d.ts +168 -0
  192. package/dist/_dts/commerce/src/shop/shipmentEligibility.d.ts +14 -0
  193. package/dist/_dts/commerce/src/utils/assertNever.d.ts +1 -0
  194. package/dist/_dts/content-model/src/content-types/builtin-schemas.d.ts +4 -0
  195. package/dist/_dts/content-model/src/content-types/builtins.d.ts +4 -0
  196. package/dist/_dts/core/src/booking-vertical-catalog.d.ts +741 -0
  197. package/dist/_dts/core/src/booking-vertical-config.d.ts +66 -0
  198. package/dist/_dts/core/src/booking-vertical-definitions.d.ts +68 -0
  199. package/dist/_dts/{api/src/bookingVerticalPreset.d.ts → core/src/booking-vertical-preset.d.ts} +1 -1
  200. package/dist/_dts/core/src/booking-verticals.d.ts +98 -0
  201. package/dist/_dts/core/src/event-page-selection.d.ts +22 -0
  202. package/dist/_dts/core/src/event-pricing.d.ts +5 -0
  203. package/dist/_dts/core/src/event-series-behaviour.d.ts +16 -0
  204. package/dist/_dts/core/src/index.d.ts +3 -0
  205. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +72 -0
  206. package/dist/_dts/db/src/schemas/forms.d.ts +4 -4
  207. package/dist/_dts/media-core/src/fileUploadCompletion.d.ts +3 -0
  208. package/dist/_dts/media-core/src/fileUploadDurableFinalization.d.ts +2 -0
  209. package/dist/_dts/media-core/src/identifiers.d.ts +10 -0
  210. package/dist/_dts/media-core/src/mediaWriteNormalizer.d.ts +2 -6
  211. package/dist/_dts/media-core/src/types.d.ts +2 -1
  212. package/dist/_dts/media-editor/src/index.d.ts +2 -2
  213. package/dist/_dts/media-editor/src/mediaSelection.d.ts +1 -22
  214. package/dist/_dts/media-editor/src/useMediaSelection.d.ts +0 -9
  215. package/dist/_dts/preview-next/src/client/preview/ButtonHoverRoleControls.d.ts +10 -0
  216. package/dist/_dts/preview-next/src/client/preview/ButtonStylePicker.d.ts +3 -2
  217. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +3 -1
  218. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +2 -1
  219. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +2 -1
  220. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +3 -1
  221. package/dist/_dts/preview-next/src/client/preview/StyleConfiguratorWarningNotice.d.ts +7 -0
  222. package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +1 -1
  223. package/dist/_dts/sdk/src/client/eventSubrouteReadOperations.d.ts +11 -0
  224. package/dist/_dts/sdk/src/client/types.d.ts +12 -5
  225. package/dist/_dts/sdk/src/components.d.ts +1 -1
  226. package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
  227. package/dist/_dts/sdk/src/contracts/page.d.ts +2 -13
  228. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +4 -16
  229. package/dist/_dts/sdk/src/next/pageMetadataProjection.d.ts +7 -0
  230. package/dist/_dts/sdk/src/next/resolveEventPageSubroute.d.ts +12 -0
  231. package/dist/_dts/sdk/src/public-api/contracts.d.ts +5 -19
  232. package/dist/_dts/sdk/src/public-api/eventSubrouteContracts.d.ts +12 -0
  233. package/dist/_dts/sdk/src/public-api/runtime.d.ts +1 -1
  234. package/dist/_dts/sdk/src/rendering/client.d.ts +44 -0
  235. package/dist/_dts/sdk/src/rendering/index.d.ts +1 -1
  236. package/dist/_dts/sdk/src/routing/entrySubroutes.d.ts +1 -1
  237. package/dist/_dts/sdk/src/routing/resolveOccurrence.d.ts +4 -3
  238. package/dist/_dts/sdk/src/routing/resolvePageContent.d.ts +7 -3
  239. package/dist/_dts/sdk/src/version.d.ts +1 -1
  240. package/dist/_dts/theme-core/src/buttons/buttonSurfaceContext.d.ts +1 -1
  241. package/dist/_dts/theme-core/src/buttons/contextualHover.d.ts +41 -0
  242. package/dist/_dts/theme-core/src/buttons/index.d.ts +1 -0
  243. package/dist/_dts/theme-core/src/buttons/resolveButtonColourStates.d.ts +3 -0
  244. package/dist/_dts/theme-core/src/buttons/resolveButtonHoverTreatment.d.ts +14 -0
  245. package/dist/_dts/theme-core/src/buttons/styles/domain.d.ts +21 -4
  246. package/dist/_dts/theme-core/src/buttons/styles/recipes/flatInk.d.ts +92 -0
  247. package/dist/_dts/theme-core/src/buttons/styles/recipes/staticRecipes.d.ts +10 -150
  248. package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +57 -102
  249. package/dist/_dts/theme-core/src/buttons/styles/selection.d.ts +50 -2
  250. package/dist/_dts/theme-core/src/buttons/types.d.ts +29 -0
  251. package/dist/_dts/theme-core/src/cards/types.d.ts +3 -25
  252. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  253. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +21 -6
  254. package/dist/_dts/theme-core/src/schema.d.ts +21 -33
  255. package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +27 -0
  256. package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +27 -0
  257. package/dist/_dts/theme-core/src/site-styles/buttonSelectionCompiler.d.ts +18 -0
  258. package/dist/_dts/theme-core/src/site-styles/compilationPlan.d.ts +21 -0
  259. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +2 -11
  260. package/dist/_dts/theme-core/src/site-styles/selectionFallbackWarning.d.ts +15 -0
  261. package/dist/_dts/theme-core/src/site-styles/types.d.ts +13 -1
  262. package/dist/_dts/ui/src/navigation-tabs.d.ts +2 -0
  263. package/dist/client/{DiscountCodeDisclosure-BPZ-yfGI.mjs → DiscountCodeDisclosure-DO7llLxm.mjs} +12 -12
  264. package/dist/client/{EventCombined.client-Cjt3kKYR.mjs → EventCombined.client-xID7zN__.mjs} +36 -48
  265. package/dist/client/{EventListing.client-DY9dn6Fh.mjs → EventListing.client-CriBslp0.mjs} +2 -2
  266. package/dist/client/{LeafletStaticMap--2c61XYn.mjs → LeafletStaticMap-DYmHnM8g.mjs} +1 -1
  267. package/dist/client/{StepIndicator-CLjQhkDb.mjs → StepIndicator-CGixP_LW.mjs} +2 -2
  268. package/dist/client/{CourseRegistrationWizard-DGW9F0SQ.mjs → WholeSeriesRegistrationWizard-BEjzSiOA.mjs} +1408 -1245
  269. package/dist/client/{accordion-_boYwHHi.mjs → accordion-CgFbnnnQ.mjs} +1 -1
  270. package/dist/client/{bookingForm--AqEfyBX.mjs → bookingForm-dUyGpbxc.mjs} +5 -5
  271. package/dist/client/bookings.mjs +635 -471
  272. package/dist/client/{carousel-CVI2dqZr.mjs → carousel-BvBwkUzx.mjs} +1 -1
  273. package/dist/client/{cart-DR6IiPz9.mjs → cart-DiZENT2E.mjs} +3 -3
  274. package/dist/client/{checkout-CsrGAfQt.mjs → checkout-Dq13KIgR.mjs} +3 -3
  275. package/dist/client/client.mjs +6291 -3452
  276. package/dist/client/{courseRegistration-aNJVaLa3.mjs → courseRegistration-CKC5NmyH.mjs} +10 -4
  277. package/dist/client/{eventCalendar-OZ7h59VN.mjs → eventCalendar-BF0Jatfw.mjs} +40 -43
  278. package/dist/client/{eventCombined-BbJ6bFKz.mjs → eventCombined-BuoCF8je.mjs} +2 -2
  279. package/dist/client/{eventDetails-BLyUBiCT.mjs → eventDetails-CKwh0S9s.mjs} +276 -94
  280. package/dist/client/{eventListing-DuP1yhBS.mjs → eventListing-eUxaWFaB.mjs} +2 -2
  281. package/dist/client/{eventRegistration-BXyECPa-.mjs → eventRegistration-CfkNOkPb.mjs} +625 -132
  282. package/dist/client/{form-BA4t3kKU.mjs → form-C17H1c_H.mjs} +1 -1
  283. package/dist/client/{headerSection-CpNaJxhW.mjs → headerSection-DEwUmrtt.mjs} +2 -2
  284. package/dist/client/hooks.mjs +1312 -481
  285. package/dist/client/{locationMap-3HGMCL7_.mjs → locationMap-Pf2QwuvW.mjs} +2 -2
  286. package/dist/client/{newsletterForm-C2s6Mw67.mjs → newsletterForm-BWQAH5Sv.mjs} +1 -1
  287. package/dist/client/pricing-CVdvbopJ.mjs +195 -0
  288. package/dist/client/{productDetail-C9joWhdE.mjs → productDetail-BZi1Fa_G.mjs} +3 -3
  289. package/dist/client/{productList-CjzdU3pB.mjs → productList-qq-55DNk.mjs} +3 -3
  290. package/dist/client/{propsDecoder-CBPGXEYX.mjs → propsDecoder-BxmqPKdP.mjs} +412 -196
  291. package/dist/client/rendering/client.mjs +5685 -4037
  292. package/dist/client/rendering/islands.mjs +18 -18
  293. package/dist/client/rendering.mjs +7006 -4124
  294. package/dist/client/{scrollToBlock-DZ73aEX6.mjs → scrollToBlock-B3CcKdtG.mjs} +1 -1
  295. package/dist/client/{shop-CQRai7hj.mjs → shop-DNWJPut5.mjs} +5 -5
  296. package/dist/client/{shop-commerce-hP9UboOx.mjs → shop-commerce-BhvQCosS.mjs} +4 -4
  297. package/dist/client/{shop-commerce-store-DiD5a32e.mjs → shop-commerce-store-B04sCNnW.mjs} +1 -1
  298. package/dist/client/{shopShared-DP8DXTkF.mjs → shopShared-DNNgZlmW.mjs} +2 -2
  299. package/dist/client/{useEventFilters-pF_OJNQP.mjs → useEventFilters-CUmhE24_.mjs} +195 -6
  300. package/dist/client/{usePolling-Cls91SD2.mjs → usePolling-M5jG675x.mjs} +3 -3
  301. package/dist/preview-next/before-render.mjs +247 -60
  302. package/dist/preview-next/client/runtime.mjs +4 -4
  303. package/dist/preview-next/keepAlive.mjs +247 -60
  304. package/dist/preview-next/middleware.mjs +247 -60
  305. package/dist/{previewAuthStore-CX1C_KJ4.mjs → previewAuthStore-BFKd4LrN.mjs} +247 -60
  306. package/dist/{sdk-runtime-5CcPAI14.mjs → sdk-runtime-BEXb1wqo.mjs} +2 -2
  307. package/dist/{separator-BXlYN_gr.mjs → separator-DGMuip1D.mjs} +1 -1
  308. package/dist/server/components.mjs +3461 -1577
  309. package/dist/server/config-validation.mjs +1312 -482
  310. package/dist/server/config.mjs +1312 -482
  311. package/dist/server/data.mjs +1312 -481
  312. package/dist/server/index.mjs +289 -81
  313. package/dist/server/manifest.mjs +0 -1
  314. package/dist/server/next.mjs +3576 -1689
  315. package/dist/server/page-converter.mjs +797 -250
  316. package/dist/server/prebuild.mjs +1 -1
  317. package/dist/server/rendering/server.mjs +3461 -1576
  318. package/dist/server/rendering.mjs +3461 -1577
  319. package/dist/server/routing.mjs +1555 -616
  320. package/dist/server/server.mjs +1352 -560
  321. package/dist/server/theme-bridge.mjs +1992 -931
  322. package/dist/server/theme.mjs +346 -133
  323. package/dist/styles/index.css +1602 -796
  324. package/package.json +1 -1
  325. package/dist/_dts/api/src/bookingVerticalCatalog.d.ts +0 -746
  326. package/dist/_dts/api/src/eventSeriesPresentationPreset.d.ts +0 -12
  327. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/CourseRegistrationWizard.d.ts +0 -3
  328. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/StepIndicator.d.ts +0 -6
  329. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/components.d.ts +0 -45
  330. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/pricing.d.ts +0 -14
  331. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCoursePaymentVerification.d.ts +0 -9
  332. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationActions.d.ts +0 -35
  333. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationSelection.d.ts +0 -31
  334. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationWizard.d.ts +0 -102
  335. package/dist/client/eventProductEligibility-AVxyCB1u.mjs +0 -50
  336. package/dist/client/pricing-BiqIMgZk.mjs +0 -174
  337. /package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/PortalAuthSidebar.d.ts +0 -0
  338. /package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/SuccessStep.d.ts +0 -0
  339. /package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/WaitlistStep.d.ts +0 -0
@@ -0,0 +1,66 @@
1
+ import type { VerticalBookingPresetDefinition, VerticalDefinition, VerticalId, VerticalPresetId } from './booking-verticals';
2
+ export type NonEmptyVerticalPresetIds = readonly [
3
+ VerticalPresetId,
4
+ ...VerticalPresetId[]
5
+ ];
6
+ export type UnconfiguredSiteVerticalBookingConfig = Readonly<{
7
+ verticalId: null;
8
+ selectedPresetIds: readonly [];
9
+ }>;
10
+ export type ConfiguredSiteVerticalBookingConfig = Readonly<{
11
+ verticalId: VerticalId;
12
+ selectedPresetIds: NonEmptyVerticalPresetIds;
13
+ }>;
14
+ export type SiteVerticalBookingConfig = UnconfiguredSiteVerticalBookingConfig | ConfiguredSiteVerticalBookingConfig;
15
+ export type ParsedSiteVerticalBookingConfig = Readonly<{
16
+ verticalId: VerticalId | null;
17
+ selectedPresetIds: readonly VerticalPresetId[];
18
+ }>;
19
+ export type RawSiteVerticalBookingConfig = Readonly<{
20
+ verticalId?: unknown;
21
+ selectedPresetIds?: unknown;
22
+ }>;
23
+ export type SiteVerticalConfigIssue = Readonly<{
24
+ code: 'unknown_vertical';
25
+ rawValue: unknown;
26
+ }> | Readonly<{
27
+ code: 'missing_vertical';
28
+ }> | Readonly<{
29
+ code: 'unknown_preset';
30
+ rawValue: unknown;
31
+ }> | Readonly<{
32
+ code: 'empty_selected_presets';
33
+ }> | Readonly<{
34
+ code: 'preset_vertical_mismatch';
35
+ }> | Readonly<{
36
+ code: 'duplicate_preset_id';
37
+ }> | Readonly<{
38
+ code: 'duplicate_canonical_behaviour';
39
+ }> | Readonly<{
40
+ code: 'future_preset_selected';
41
+ }>;
42
+ export type ResolvedSiteVerticalBookingConfig = Readonly<{
43
+ kind: 'unconfigured';
44
+ config: SiteVerticalBookingConfig;
45
+ }> | Readonly<{
46
+ kind: 'configured';
47
+ config: ConfiguredSiteVerticalBookingConfig;
48
+ selectedPresets: readonly VerticalBookingPresetDefinition[];
49
+ }> | Readonly<{
50
+ kind: 'invalid';
51
+ config: ParsedSiteVerticalBookingConfig;
52
+ issues: readonly SiteVerticalConfigIssue[];
53
+ }>;
54
+ export declare function parseVerticalId(value: unknown): VerticalId | null;
55
+ export declare function parseVerticalPresetId(value: unknown): VerticalPresetId | null;
56
+ export declare function getVerticalDefinition(verticalId: VerticalId): VerticalDefinition;
57
+ export declare function getVerticalPresetDefinition(presetId: VerticalPresetId): VerticalBookingPresetDefinition;
58
+ export declare function getDefaultOnboardingPresetForVertical(verticalId: VerticalId): VerticalBookingPresetDefinition | null;
59
+ /**
60
+ * Construct a configured booking selection only when the supplied preset IDs
61
+ * form a valid selection for the vertical. Invalid, cross-vertical, future,
62
+ * duplicate, or empty selections return null.
63
+ */
64
+ export declare function createSiteVerticalBookingConfig(verticalId: VerticalId, selectedPresetIds: readonly VerticalPresetId[]): ConfiguredSiteVerticalBookingConfig | null;
65
+ export declare const DEFAULT_SITE_VERTICAL_BOOKING_CONFIG: SiteVerticalBookingConfig;
66
+ export declare function resolveSiteVerticalBookingConfig(rawConfig: RawSiteVerticalBookingConfig | null | undefined): ResolvedSiteVerticalBookingConfig;
@@ -0,0 +1,68 @@
1
+ export type VerticalDefinition = Readonly<{
2
+ id: string;
3
+ label: string;
4
+ description: string;
5
+ }>;
6
+ export declare const VERTICAL_DEFINITIONS: readonly [{
7
+ readonly id: "yoga_wellness";
8
+ readonly label: "Yoga, meditation or mindfulness";
9
+ readonly description: "Yoga studios, wellness teachers, and movement practitioners.";
10
+ }, {
11
+ readonly id: "fitness_pt";
12
+ readonly label: "Fitness and personal training";
13
+ readonly description: "Personal trainers, group training, and fitness programmes.";
14
+ }, {
15
+ readonly id: "dance_school";
16
+ readonly label: "Dance school";
17
+ readonly description: "Dance classes, courses or terms, workshops, private lessons, and shows.";
18
+ }, {
19
+ readonly id: "physiotherapy_physical_health";
20
+ readonly label: "Physiotherapy & physical health";
21
+ readonly description: "Physiotherapists, chiropractors, osteopaths, sports therapists, and rehabilitation practitioners.";
22
+ }, {
23
+ readonly id: "massage_bodywork";
24
+ readonly label: "Massage & bodywork";
25
+ readonly description: "Massage therapists, bodyworkers, and somatic practitioners.";
26
+ }, {
27
+ readonly id: "therapist_practitioner";
28
+ readonly label: "Therapist or practitioner";
29
+ readonly description: "Appointments, sessions, consultations, and occasional group work.";
30
+ }, {
31
+ readonly id: "beauty_spa";
32
+ readonly label: "Beauty or spa";
33
+ readonly description: "Treatment-led businesses with optional workshops.";
34
+ }, {
35
+ readonly id: "consultant_coach";
36
+ readonly label: "Consultant or coach";
37
+ readonly description: "One-to-one calls, workshops, courses, and retreats.";
38
+ }, {
39
+ readonly id: "training_provider";
40
+ readonly label: "Training provider";
41
+ readonly description: "Courses, workshops, classes, appointments, and residential training.";
42
+ }, {
43
+ readonly id: "retreat_centre";
44
+ readonly label: "Retreat centre";
45
+ readonly description: "Residential retreats, workshops, classes, courses, and private sessions.";
46
+ }, {
47
+ readonly id: "music_school";
48
+ readonly label: "Music teacher or school";
49
+ readonly description: "Lessons, classes, terms, workshops, and performances.";
50
+ }, {
51
+ readonly id: "voice_singing";
52
+ readonly label: "Voice & Singing";
53
+ readonly description: "Singing lessons, choirs, voice circles, workshops, and performances.";
54
+ }, {
55
+ readonly id: "performing_arts_school";
56
+ readonly label: "Theatre or performing arts school";
57
+ readonly description: "Classes, terms, workshops, performances, and lessons.";
58
+ }, {
59
+ readonly id: "community_wellbeing";
60
+ readonly label: "Community or wellbeing centre";
61
+ readonly description: "Groups, workshops, courses, appointments, and retreats.";
62
+ }, {
63
+ readonly id: "venue_event_space";
64
+ readonly label: "Venue or event space";
65
+ readonly description: "Room, resource, or access bookings. Depends on the future capacity-booking domain.";
66
+ }];
67
+ export type VerticalId = (typeof VERTICAL_DEFINITIONS)[number]['id'];
68
+ export declare const VERTICAL_IDS: readonly VerticalId[];
@@ -1,4 +1,4 @@
1
- import type { CanonicalBookingBehaviour, VerticalBookingPreset, VerticalId, VerticalPresetAvailability } from './bookingVerticals';
1
+ import type { CanonicalBookingBehaviour, VerticalBookingPreset, VerticalId, VerticalPresetAvailability } from './booking-verticals';
2
2
  export declare const BOOKING_ENGINE_BY_BEHAVIOUR: {
3
3
  readonly class: "event_series";
4
4
  readonly workshop: "event_series";
@@ -0,0 +1,98 @@
1
+ import { type EventPresetOverride } from './event-series-behaviour';
2
+ import { BOOKING_DEFAULTS_BY_BEHAVIOUR, BOOKING_ENGINE_BY_BEHAVIOUR, VERTICAL_BOOKING_PRESETS } from './booking-vertical-catalog';
3
+ import { VERTICAL_DEFINITIONS, VERTICAL_IDS } from './booking-vertical-definitions';
4
+ import type { VerticalId } from './booking-vertical-definitions';
5
+ import { DEFAULT_SITE_VERTICAL_BOOKING_CONFIG, createSiteVerticalBookingConfig, getDefaultOnboardingPresetForVertical, getVerticalDefinition, getVerticalPresetDefinition, parseVerticalId, parseVerticalPresetId, resolveSiteVerticalBookingConfig } from './booking-vertical-config';
6
+ import type { ConfiguredSiteVerticalBookingConfig, NonEmptyVerticalPresetIds, ParsedSiteVerticalBookingConfig, RawSiteVerticalBookingConfig, ResolvedSiteVerticalBookingConfig, SiteVerticalBookingConfig, SiteVerticalConfigIssue, UnconfiguredSiteVerticalBookingConfig } from './booking-vertical-config';
7
+ export type { VerticalId } from './booking-vertical-definitions';
8
+ export { BOOKING_DEFAULTS_BY_BEHAVIOUR, BOOKING_ENGINE_BY_BEHAVIOUR, DEFAULT_SITE_VERTICAL_BOOKING_CONFIG, createSiteVerticalBookingConfig, getDefaultOnboardingPresetForVertical, getVerticalDefinition, getVerticalPresetDefinition, parseVerticalId, parseVerticalPresetId, resolveSiteVerticalBookingConfig, VERTICAL_BOOKING_PRESETS, VERTICAL_DEFINITIONS, VERTICAL_IDS, };
9
+ export type { ConfiguredSiteVerticalBookingConfig, NonEmptyVerticalPresetIds, ParsedSiteVerticalBookingConfig, RawSiteVerticalBookingConfig, ResolvedSiteVerticalBookingConfig, SiteVerticalBookingConfig, SiteVerticalConfigIssue, UnconfiguredSiteVerticalBookingConfig, };
10
+ export type VerticalBookingPresetDefinition = (typeof VERTICAL_BOOKING_PRESETS)[number];
11
+ export type VerticalPresetId = VerticalBookingPresetDefinition['id'];
12
+ export declare const CANONICAL_BOOKING_BEHAVIOURS: readonly ["class", "workshop", "course", "retreat", "performance", "appointment"];
13
+ export type CanonicalBookingBehaviour = (typeof CANONICAL_BOOKING_BEHAVIOURS)[number];
14
+ export declare const BOOKING_ENGINES: readonly ["event_series", "appointment_service"];
15
+ export type BookingEngine = (typeof BOOKING_ENGINES)[number];
16
+ export declare const VERTICAL_PRESET_AVAILABILITIES: readonly ["onboarding", "settings", "future"];
17
+ export type VerticalPresetAvailability = (typeof VERTICAL_PRESET_AVAILABILITIES)[number];
18
+ export type EventSeriesCanonicalBehaviour = Extract<CanonicalBookingBehaviour, 'class' | 'course' | 'workshop' | 'retreat' | 'performance'>;
19
+ export type EventSeriesVerticalPresetId = Extract<VerticalPresetId, `${string}.${string}`>;
20
+ export type EventSeriesVerticalPresetDefinition = VerticalBookingPresetDefinition & {
21
+ canonicalBehaviour: EventSeriesCanonicalBehaviour;
22
+ };
23
+ type BookingPassMembershipDefault = 'on' | 'off' | 'strict';
24
+ export type BookingBehaviourDefaults = Readonly<{
25
+ passes: BookingPassMembershipDefault;
26
+ memberships: BookingPassMembershipDefault;
27
+ }>;
28
+ export type VerticalBookingPreset = Readonly<{
29
+ id: string;
30
+ verticalId: VerticalId;
31
+ canonicalBehaviour: CanonicalBookingBehaviour;
32
+ eventPresetOverride?: EventPresetOverride;
33
+ engine: BookingEngine;
34
+ availability: VerticalPresetAvailability;
35
+ label: string;
36
+ pluralLabel: string;
37
+ description: string;
38
+ }>;
39
+ export type VerticalDefinition = (typeof VERTICAL_DEFINITIONS)[number];
40
+ export type EventSeriesVerticalPresetValidationError = 'unknown_vertical_preset' | 'non_event_series_preset' | 'canonical_behaviour_mismatch';
41
+ export type EventSeriesVerticalPresetValidationResult = Readonly<{
42
+ ok: true;
43
+ preset: EventSeriesVerticalPresetDefinition;
44
+ }> | Readonly<{
45
+ ok: false;
46
+ error: EventSeriesVerticalPresetValidationError;
47
+ }>;
48
+ export type VerticalPresetSelectionDisabledReason = 'last_selected_preset';
49
+ export type VerticalPresetSelectionOption = Readonly<{
50
+ preset: VerticalBookingPresetDefinition;
51
+ checked: boolean;
52
+ disabledReason: VerticalPresetSelectionDisabledReason | null;
53
+ }>;
54
+ export type VerticalPresetSelectionUpdateError = 'unconfigured' | 'cross_vertical_preset' | 'future_preset' | 'last_selected_preset';
55
+ export type VerticalPresetSelectionUpdateResult = Readonly<{
56
+ ok: true;
57
+ config: SiteVerticalBookingConfig;
58
+ }> | Readonly<{
59
+ ok: false;
60
+ error: VerticalPresetSelectionUpdateError;
61
+ config: SiteVerticalBookingConfig;
62
+ }>;
63
+ export type CanonicalConfiguredSiteVerticalBookingConfigResult = Readonly<{
64
+ ok: true;
65
+ config: ConfiguredSiteVerticalBookingConfig;
66
+ }> | Readonly<{
67
+ ok: false;
68
+ issues: readonly SiteVerticalConfigIssue[];
69
+ }>;
70
+ export declare function getVerticalPresetsForVertical(verticalId: VerticalId, options?: Readonly<{
71
+ availability?: VerticalPresetAvailability | 'selectable';
72
+ }>): readonly VerticalBookingPresetDefinition[];
73
+ export declare function getOnboardingPresetsForVertical(verticalId: VerticalId): readonly VerticalBookingPresetDefinition[];
74
+ export declare function isEventSeriesCanonicalBehaviour(behaviour: CanonicalBookingBehaviour): behaviour is EventSeriesCanonicalBehaviour;
75
+ export declare function isEventSeriesVerticalPresetDefinition(presetDefinition: VerticalBookingPresetDefinition): presetDefinition is EventSeriesVerticalPresetDefinition;
76
+ export declare function validateEventSeriesVerticalPreset(input: Readonly<{
77
+ canonicalPreset: EventSeriesCanonicalBehaviour | 'term';
78
+ verticalPresetId: string | null | undefined;
79
+ }>): EventSeriesVerticalPresetValidationResult;
80
+ export declare function getSelectedCanonicalBehaviours(presetIds: readonly VerticalPresetId[]): readonly CanonicalBookingBehaviour[];
81
+ export declare function getSelectedPresetForBehaviour(input: Readonly<{
82
+ presetIds: readonly VerticalPresetId[];
83
+ canonicalBehaviour: CanonicalBookingBehaviour;
84
+ }>): VerticalBookingPresetDefinition | null;
85
+ export declare function getVerticalPresetSelectionOptions(config: SiteVerticalBookingConfig | null | undefined): readonly VerticalPresetSelectionOption[];
86
+ export declare function setVerticalPresetSelected(config: SiteVerticalBookingConfig | null | undefined, presetId: VerticalPresetId, selected: boolean): VerticalPresetSelectionUpdateResult;
87
+ export declare function setVerticalPresetsSelected(config: SiteVerticalBookingConfig | null | undefined, presetIds: readonly VerticalPresetId[]): VerticalPresetSelectionUpdateResult;
88
+ /**
89
+ * Return a configured selection in the catalog's canonical order.
90
+ *
91
+ * This deliberately delegates ordering and selection semantics to the core
92
+ * authority instead of making dashboard planners maintain a second catalog
93
+ * ordering implementation. Runtime-invalid values are reported as a closed
94
+ * result so this pure helper never throws while planning.
95
+ */
96
+ export declare function canonicalizeConfiguredBookingVerticalConfig(config: ConfiguredSiteVerticalBookingConfig): CanonicalConfiguredSiteVerticalBookingConfigResult;
97
+ /** Compare configured booking selections by catalog order, not authored array order. */
98
+ export declare function areConfiguredBookingVerticalConfigsEqual(left: ConfiguredSiteVerticalBookingConfig, right: ConfiguredSiteVerticalBookingConfig): boolean;
@@ -0,0 +1,22 @@
1
+ /** Render-time selection beneath a canonical Event page. */
2
+ export type EventOccurrenceContextData = Readonly<{
3
+ id: string;
4
+ seriesId: string;
5
+ startsAt: string;
6
+ endsAt: string;
7
+ timeZone: string;
8
+ capacityOverride?: number | null;
9
+ overrides?: Record<string, unknown> | null;
10
+ }>;
11
+ export type EventRunContextData = Readonly<{
12
+ seriesId: string;
13
+ identifier: string;
14
+ name: string | null;
15
+ }>;
16
+ export type EventPageSubrouteContext = Readonly<{
17
+ kind: 'event-occurrence';
18
+ occurrence: EventOccurrenceContextData;
19
+ }> | Readonly<{
20
+ kind: 'event-run';
21
+ run: EventRunContextData;
22
+ }>;
@@ -18,6 +18,11 @@ export type PublicCoursePriceDisplay = Readonly<{
18
18
  minAmount: number;
19
19
  maxAmount: number;
20
20
  currency: string;
21
+ }> | Readonly<{
22
+ kind: "mixed";
23
+ paidFromAmount: number;
24
+ paidToAmount: number;
25
+ currency: string;
21
26
  }> | Readonly<{
22
27
  kind: "unavailable";
23
28
  currency: string;
@@ -0,0 +1,16 @@
1
+ export declare const EVENT_PRESET_VALUES: readonly ["event", "class", "course", "term", "workshop", "retreat", "performance"];
2
+ export type EventPreset = (typeof EVENT_PRESET_VALUES)[number];
3
+ export type EventPresetOverride = Extract<EventPreset, 'term'>;
4
+ export type WholeSeriesEventPreset = Extract<EventPreset, 'course' | 'term'>;
5
+ export type OrdinaryEventPreset = Exclude<EventPreset, WholeSeriesEventPreset>;
6
+ export declare const ORDINARY_EVENT_PRESET_VALUES: readonly ["event", "class", "workshop", "retreat", "performance"];
7
+ export declare const WHOLE_SERIES_EVENT_PRESET_VALUES: readonly ["course", "term"];
8
+ export declare const SURFACE_EVENT_PRESET_VALUES: readonly ["class", "course", "term", "workshop", "retreat", "performance"];
9
+ export declare const DEFAULT_EVENT_TYPE_PRESETS: readonly ["event", "class", "course", "term", "workshop", "retreat"];
10
+ export declare const EVENT_SERIES_BEHAVIOURS: readonly ["class", "course", "workshop", "retreat", "performance"];
11
+ /** Keeps Term as Event vocabulary without introducing a second booking engine. */
12
+ export declare function eventPresetForVerticalPreset<TCanonical extends string>(preset: Readonly<{
13
+ id: string;
14
+ canonicalBehaviour: TCanonical;
15
+ eventPresetOverride?: EventPresetOverride;
16
+ }>): TCanonical | EventPresetOverride;
@@ -8,6 +8,7 @@ export * from './demo-runtime';
8
8
  export * from './collections';
9
9
  export * from './event-pricing';
10
10
  export * from './event-page-surface-subject';
11
+ export * from './event-page-selection';
11
12
  export * from './public-event-booking-availability';
12
13
  export * from './money-input';
13
14
  export * from './booking-flexible-balance';
@@ -58,3 +59,5 @@ export * from './site-route-target';
58
59
  export { disabledSelection, enabledSelection, plannerNoChange, plannerPatch, plannerUpdate, resolvePlanningDateInput, resolvePlanningNow, resolvePlanningNowDate, systemPlanningClock, } from './planner';
59
60
  export type { DisabledSelection, EnabledSelection, OptionalSelection, PlannerNoChange, PlannerPatch, PlannerUpdate, PlanningClock, PlanningDateInput, PlanningTimeOptions, } from './planner';
60
61
  export { isValidBookingTimeZone, parseBookingTimeZone, type BookingTimeZone, type BookingTimeZoneParseError, } from './booking-time-zone';
62
+ export * from './booking-verticals';
63
+ export * from './event-series-behaviour';
@@ -8894,6 +8894,7 @@ export type Database = {
8894
8894
  created_at: string;
8895
8895
  created_by: string | null;
8896
8896
  deleted_at: string | null;
8897
+ event_category_id: string | null;
8897
8898
  id: string;
8898
8899
  metadata_json: Json;
8899
8900
  page_surface_id: string | null;
@@ -8913,6 +8914,7 @@ export type Database = {
8913
8914
  created_at?: string;
8914
8915
  created_by?: string | null;
8915
8916
  deleted_at?: string | null;
8917
+ event_category_id?: string | null;
8916
8918
  id?: string;
8917
8919
  metadata_json?: Json;
8918
8920
  page_surface_id?: string | null;
@@ -8932,6 +8934,7 @@ export type Database = {
8932
8934
  created_at?: string;
8933
8935
  created_by?: string | null;
8934
8936
  deleted_at?: string | null;
8937
+ event_category_id?: string | null;
8935
8938
  id?: string;
8936
8939
  metadata_json?: Json;
8937
8940
  page_surface_id?: string | null;
@@ -8946,6 +8949,13 @@ export type Database = {
8946
8949
  updated_by?: string | null;
8947
8950
  };
8948
8951
  Relationships: [
8952
+ {
8953
+ foreignKeyName: "event_offerings_event_category_id_fkey";
8954
+ columns: ["event_category_id"];
8955
+ isOneToOne: false;
8956
+ referencedRelation: "booking_event_categories";
8957
+ referencedColumns: ["id"];
8958
+ },
8949
8959
  {
8950
8960
  foreignKeyName: "event_offerings_page_surface_id_fkey";
8951
8961
  columns: ["page_surface_id"];
@@ -19078,6 +19088,13 @@ export type Database = {
19078
19088
  };
19079
19089
  Returns: boolean;
19080
19090
  };
19091
+ cancel_appointment_reminder_jobs: {
19092
+ Args: {
19093
+ p_appointment_id: string;
19094
+ p_site_id: string;
19095
+ };
19096
+ Returns: undefined;
19097
+ };
19081
19098
  cancel_booking_with_pass_credit_restoration: {
19082
19099
  Args: {
19083
19100
  p_actor_kind?: string;
@@ -19712,6 +19729,24 @@ export type Database = {
19712
19729
  window_started_at: string;
19713
19730
  }[];
19714
19731
  };
19732
+ count_gifting_instrument_references_by_offer: {
19733
+ Args: {
19734
+ p_site_id: string;
19735
+ };
19736
+ Returns: {
19737
+ instrument_count: number;
19738
+ offer_id: string;
19739
+ }[];
19740
+ };
19741
+ count_gifting_instruments_by_offer: {
19742
+ Args: {
19743
+ p_site_id: string;
19744
+ };
19745
+ Returns: {
19746
+ instrument_count: number;
19747
+ offer_id: string;
19748
+ }[];
19749
+ };
19715
19750
  create_appointment_reservation_run_atomic: {
19716
19751
  Args: {
19717
19752
  p_actor_user_id: string;
@@ -20389,6 +20424,21 @@ export type Database = {
20389
20424
  total_count: number;
20390
20425
  }[];
20391
20426
  };
20427
+ get_gifting_dashboard_stats: {
20428
+ Args: {
20429
+ p_expiring_soon_days: number;
20430
+ p_now: string;
20431
+ p_site_id: string;
20432
+ p_time_zone: string;
20433
+ };
20434
+ Returns: {
20435
+ attention_count: number;
20436
+ expiring_soon_count: number;
20437
+ sold_this_month_cents: number;
20438
+ sold_this_month_count: number;
20439
+ unclaimed_cents: number;
20440
+ }[];
20441
+ };
20392
20442
  get_public_event_attendee_counts: {
20393
20443
  Args: {
20394
20444
  instance_ids: string[];
@@ -21299,6 +21349,14 @@ export type Database = {
21299
21349
  };
21300
21350
  Returns: Json;
21301
21351
  };
21352
+ reinstate_event_occurrences_atomic_v1: {
21353
+ Args: {
21354
+ p_event_series_id: string;
21355
+ p_occurrence_ids: string[];
21356
+ p_site_id: string;
21357
+ };
21358
+ Returns: string;
21359
+ };
21302
21360
  release_dated_offering_whole_series_hold_v1_atomic: {
21303
21361
  Args: {
21304
21362
  p_hold_id: string;
@@ -21433,6 +21491,20 @@ export type Database = {
21433
21491
  };
21434
21492
  Returns: boolean;
21435
21493
  };
21494
+ reschedule_customer_appointment: {
21495
+ Args: {
21496
+ p_appointment_id: string;
21497
+ p_customer_id: string;
21498
+ p_end_at: string;
21499
+ p_expected_updated_at: string;
21500
+ p_google_event_id?: string;
21501
+ p_metadata: Json;
21502
+ p_resource_id: string;
21503
+ p_site_id: string;
21504
+ p_start_at: string;
21505
+ };
21506
+ Returns: boolean;
21507
+ };
21436
21508
  reserve_booking_customer_credit: {
21437
21509
  Args: {
21438
21510
  p_amount_requested_cents: number;
@@ -147,8 +147,8 @@ export declare const bookingQuestionsFormSettingsSchema: z.ZodObject<{
147
147
  }, z.core.$strict>>;
148
148
  audienceHint: z.ZodOptional<z.ZodEnum<{
149
149
  mixed: "mixed";
150
- appointments: "appointments";
151
150
  courses: "courses";
151
+ appointments: "appointments";
152
152
  events: "events";
153
153
  }>>;
154
154
  customerTitle: z.ZodOptional<z.ZodString>;
@@ -256,8 +256,8 @@ export declare const formSettingsSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
256
256
  }, z.core.$strict>>;
257
257
  audienceHint: z.ZodOptional<z.ZodEnum<{
258
258
  mixed: "mixed";
259
- appointments: "appointments";
260
259
  courses: "courses";
260
+ appointments: "appointments";
261
261
  events: "events";
262
262
  }>>;
263
263
  customerTitle: z.ZodOptional<z.ZodString>;
@@ -372,8 +372,8 @@ export declare const formSettingsInputSchema: z.ZodDiscriminatedUnion<[z.ZodObje
372
372
  }, z.core.$strict>>;
373
373
  audienceHint: z.ZodOptional<z.ZodEnum<{
374
374
  mixed: "mixed";
375
- appointments: "appointments";
376
375
  courses: "courses";
376
+ appointments: "appointments";
377
377
  events: "events";
378
378
  }>>;
379
379
  customerTitle: z.ZodOptional<z.ZodString>;
@@ -1086,8 +1086,8 @@ export declare const createFormPayloadSchema: z.ZodObject<{
1086
1086
  }, z.core.$strict>>;
1087
1087
  audienceHint: z.ZodOptional<z.ZodEnum<{
1088
1088
  mixed: "mixed";
1089
- appointments: "appointments";
1090
1089
  courses: "courses";
1090
+ appointments: "appointments";
1091
1091
  events: "events";
1092
1092
  }>>;
1093
1093
  customerTitle: z.ZodOptional<z.ZodString>;
@@ -1,5 +1,6 @@
1
1
  import { type Result, type SiteScopedStoragePath, type StorageBucketName, type StoragePath, type UploadSessionId, type UtcIsoDateTimeString } from '../../core/src/index';
2
2
  import { type ActiveValidatedDurableFileAsset, type FileAssetId, type UploadSessionState, type UploadSessionTransitionError } from './fileDomain';
3
+ import type { MediaIdentifier } from './identifiers';
3
4
  import { type DurableFinalizeUploadAssetPlan, type DurableUploadStoragePathError } from './fileUploadAssetBuilder';
4
5
  import type { FileUploadFinalizationPlan } from './fileUploadFinalization';
5
6
  type UploadedUploadSessionState = Extract<UploadSessionState, {
@@ -26,6 +27,7 @@ export type FileUploadCompletionStep = {
26
27
  } | {
27
28
  readonly tag: 'insert-file-asset';
28
29
  readonly asset: ActiveValidatedDurableFileAsset;
30
+ readonly identifier: MediaIdentifier;
29
31
  } | {
30
32
  readonly tag: 'delete-staged-object';
31
33
  readonly storageObject: FileUploadCompletionStorageObject;
@@ -69,6 +71,7 @@ export type DurableFileUploadCompletionPlan = {
69
71
  export type DurableFileUploadCompletionInput = {
70
72
  readonly finalizationPlan: DurableFinalizeUploadAssetPlan;
71
73
  readonly asset: ActiveValidatedDurableFileAsset;
74
+ readonly identifier: MediaIdentifier;
72
75
  readonly now: UtcIsoDateTimeString;
73
76
  };
74
77
  export type DurableFileUploadCompletionError = {
@@ -1,10 +1,12 @@
1
1
  import { type MediaAssetId, type Result } from '../../core/src/index';
2
2
  import type { FileAssetMetadata } from './fileDomain';
3
+ import type { MediaIdentifier } from './identifiers';
3
4
  import { type BuildFinalizedUploadAssetError } from './fileUploadAssetBuilder';
4
5
  import { type DurableFileUploadCompletionError, type DurableFileUploadCompletionPlan } from './fileUploadCompletion';
5
6
  import { type FileUploadFinalizationError, type FileUploadFinalizationInput } from './fileUploadFinalization';
6
7
  export type DurableFileUploadFinalizationInput = FileUploadFinalizationInput & {
7
8
  readonly assetId: MediaAssetId;
9
+ readonly identifier: MediaIdentifier;
8
10
  readonly metadata?: FileAssetMetadata;
9
11
  };
10
12
  export type DurableFileUploadFinalizationError = {
@@ -8,10 +8,20 @@ export type MediaIdentifierParseError = Readonly<{
8
8
  kind: 'empty_after_normalization';
9
9
  value: string;
10
10
  }>;
11
+ export type CanonicalMediaIdentifierParseError = MediaIdentifierParseError | Readonly<{
12
+ kind: 'non_canonical_identifier';
13
+ value: string;
14
+ canonical: MediaIdentifier;
15
+ }>;
11
16
  export declare function stripFileExtension(filename: string): string;
12
17
  export declare function slugifyMediaIdentifier(value: string): string;
13
18
  export declare function buildMediaIdentifierFromFilename(filename: string): string;
14
19
  export declare function parseMediaIdentifier(value: unknown): Result<MediaIdentifier, MediaIdentifierParseError>;
20
+ /**
21
+ * Admits identifiers read from trusted persistence without repairing dirty data in memory.
22
+ * User input should use parseMediaIdentifier, which intentionally canonicalizes it.
23
+ */
24
+ export declare function parseCanonicalMediaIdentifier(value: unknown): Result<MediaIdentifier, CanonicalMediaIdentifierParseError>;
15
25
  export declare function parseOptionalMediaIdentifier(value: unknown): Result<MediaIdentifier | undefined, MediaIdentifierParseError>;
16
26
  export declare function unsafeAsMediaIdentifier(value: string): MediaIdentifier;
17
27
  export declare function resolveMediaIdentifier(base: string, existing: Set<string>): MediaIdentifier;
@@ -1,16 +1,12 @@
1
+ import { type MediaIdentifier } from './identifiers';
1
2
  export type MediaIdentifierResolutionRecord = Readonly<{
2
3
  id: string;
3
- identifier: string | null;
4
+ identifier: MediaIdentifier;
4
5
  filename: string;
5
6
  }>;
6
- export type MediaIdentifierAssignmentRequest = Readonly<{
7
- assetId: string;
8
- filenameBase: string;
9
- }>;
10
7
  export type NormalizeMediaReferencesForWriteCoreOptions = Readonly<{
11
8
  value: unknown;
12
9
  resolveMediaAssetsById: (assetIds: readonly string[]) => Promise<readonly MediaIdentifierResolutionRecord[]>;
13
- assignIdentifier: (request: MediaIdentifierAssignmentRequest) => Promise<string | null>;
14
10
  }>;
15
11
  /**
16
12
  * Normalizes CMS media objects to identifier-only persistence. Infrastructure
@@ -1,4 +1,5 @@
1
1
  import type { MediaAssetId, SiteScopedStoragePath } from '../../core/src/index';
2
+ import type { MediaIdentifier } from './identifiers';
2
3
  export type { MediaAssetId } from '../../core/src/index';
3
4
  export type MediaSource = 'upload' | 'instagram';
4
5
  export type MediaAsset = {
@@ -7,7 +8,7 @@ export type MediaAsset = {
7
8
  storageBucket: string;
8
9
  storagePath: SiteScopedStoragePath;
9
10
  filename: string;
10
- identifier?: string;
11
+ identifier: MediaIdentifier;
11
12
  mimeType: string;
12
13
  title?: string;
13
14
  width?: number;
@@ -16,5 +16,5 @@ export { createMediaEditorProvider } from './createMediaEditorProvider';
16
16
  export { withRepeaterStackMediaFieldUi, withRepeaterThumbnailMediaFieldUi, withRepeaterThumbnailPickerOnlyMediaFieldUi, } from './fieldUi';
17
17
  export type { MediaValue, PersistableMediaValue, MediaTransform, MediaHotspot } from './types';
18
18
  export { DEFAULT_HOTSPOT } from './utils';
19
- export { buildPersistableMediaValue, mediaSelectionFailureMessage, prepareMediaAssetForSelection, } from './mediaSelection';
20
- export type { BuildPersistableMediaValueOptions, IdentifierReadyMediaAsset, PrepareMediaSelectionResult, } from './mediaSelection';
19
+ export { buildPersistableMediaValue, } from './mediaSelection';
20
+ export type { BuildPersistableMediaValueOptions, IdentifierReadyMediaAsset, } from './mediaSelection';
@@ -1,25 +1,6 @@
1
- import type { ApiClient } from '../../api/src/request';
2
- import { type MediaIdentifier } from '../../blocks/src/index';
3
1
  import type { MediaAssetWithLabels } from '@riverbankcms/media-storage-supabase';
4
2
  import type { MediaValue, PersistableMediaValue } from './types';
5
- export type IdentifierReadyMediaAsset = Omit<MediaAssetWithLabels, 'identifier'> & Readonly<{
6
- identifier: MediaIdentifier;
7
- }>;
8
- export type PrepareMediaSelectionResult = Readonly<{
9
- tag: 'ready';
10
- asset: IdentifierReadyMediaAsset;
11
- }> | Readonly<{
12
- tag: 'failed';
13
- reason: 'identifier-assignment-failed';
14
- error: unknown;
15
- }> | Readonly<{
16
- tag: 'failed';
17
- reason: 'identifier-missing-after-assignment';
18
- }>;
19
- type PrepareMediaSelectionFailure = Extract<PrepareMediaSelectionResult, {
20
- tag: 'failed';
21
- }>;
22
- export declare function mediaSelectionFailureMessage(failure: PrepareMediaSelectionFailure): string;
3
+ export type IdentifierReadyMediaAsset = MediaAssetWithLabels;
23
4
  export type BuildPersistableMediaValueOptions = Readonly<{
24
5
  asset: IdentifierReadyMediaAsset;
25
6
  mediaKind: PersistableMediaValue['type'];
@@ -28,5 +9,3 @@ export type BuildPersistableMediaValueOptions = Readonly<{
28
9
  publicUrl?: string;
29
10
  }>;
30
11
  export declare function buildPersistableMediaValue({ asset, mediaKind, previousValue, poster, publicUrl, }: BuildPersistableMediaValueOptions): PersistableMediaValue;
31
- export declare function prepareMediaAssetForSelection(apiClient: ApiClient, asset: MediaAssetWithLabels): Promise<PrepareMediaSelectionResult>;
32
- export {};
@@ -2,14 +2,6 @@ import type { MediaAssetWithLabels, MediaKind } from '@riverbankcms/media-storag
2
2
  import type { MediaEditorContextValue } from './context';
3
3
  import type { MediaPickerAssetSelection } from './MediaPickerDialog';
4
4
  import type { MediaValue, PersistableMediaValue } from './types';
5
- export type MediaSelectionState = Readonly<{
6
- tag: 'idle';
7
- }> | Readonly<{
8
- tag: 'preparing';
9
- }> | Readonly<{
10
- tag: 'failed';
11
- message: string;
12
- }>;
13
5
  type UseMediaSelectionOptions = Readonly<{
14
6
  context: MediaEditorContextValue;
15
7
  value: MediaValue | undefined;
@@ -21,6 +13,5 @@ type UseMediaSelectionOptions = Readonly<{
21
13
  export declare function useMediaSelection(options: UseMediaSelectionOptions): {
22
14
  readonly cancelSelection: () => void;
23
15
  readonly handleSelect: (picked: MediaAssetWithLabels) => Promise<void>;
24
- readonly selectionState: MediaSelectionState;
25
16
  };
26
17
  export {};
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { type Theme } from '../../../../blocks/src/index';
3
+ import { type ButtonHoverRoleControl, type ButtonStyleSelection } from '../../../../theme-core/src/buttons/index';
4
+ export declare function ButtonHoverRoleControls({ control, current, previewTheme, onPreview, disabled, }: Readonly<{
5
+ control: ButtonHoverRoleControl<string>;
6
+ current: ButtonStyleSelection;
7
+ previewTheme: Theme;
8
+ onPreview: (selection: ButtonStyleSelection) => void;
9
+ disabled?: boolean;
10
+ }>): React.JSX.Element | null;