@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
@@ -1,20 +1,20 @@
1
1
  import React from 'react';
2
2
  import { type BlockApiConfig } from '../api';
3
- import type { CourseRegistrationClientProps } from '../nodes/course-registration/types';
4
- import { useCourseRegistrationWizard } from '../nodes/course-registration/useCourseRegistrationWizard';
5
- import type { HeadlessWholeSeriesRegistrationFlow, WholeSeriesRegistrationRunInput } from '../nodes/course-registration/whole-series-registration.headless.contract';
3
+ import type { WholeSeriesRegistrationClientProps } from '../nodes/event-registration/whole-series/types';
4
+ import { useWholeSeriesRegistrationWizard } from '../nodes/event-registration/whole-series/useWholeSeriesRegistrationWizard';
5
+ import type { HeadlessWholeSeriesRegistrationFlow, WholeSeriesRegistrationRunInput } from '../nodes/event-registration/whole-series/whole-series-registration.headless.contract';
6
6
  export type { BlockApiConfig };
7
- export type { HeadlessWholeSeriesRegistrationFlow, WholeSeriesRegistrationAvailabilityModel, WholeSeriesRegistrationFlowActionResult, WholeSeriesRegistrationFlowActions, WholeSeriesRegistrationFlowStatus, WholeSeriesRegistrationFlowStep, WholeSeriesRegistrationFlowStepId, WholeSeriesRegistrationFlowView, WholeSeriesRegistrationPaymentModel, WholeSeriesRegistrationPaymentSelection, WholeSeriesRegistrationPricingInput, WholeSeriesRegistrationPricingModel, WholeSeriesRegistrationPricingOptionInput, WholeSeriesRegistrationRun, WholeSeriesRegistrationRunInput, WholeSeriesRegistrationRunsModel, WholeSeriesRegistrationSpamProtectionModel, WholeSeriesRegistrationWaitlistClaimModel, } from '../nodes/course-registration/whole-series-registration.headless.contract';
7
+ export type { HeadlessWholeSeriesRegistrationFlow, WholeSeriesRegistrationAvailabilityModel, WholeSeriesRegistrationFlowActionResult, WholeSeriesRegistrationFlowActions, WholeSeriesRegistrationFlowStatus, WholeSeriesRegistrationFlowStep, WholeSeriesRegistrationFlowStepId, WholeSeriesRegistrationFlowView, WholeSeriesRegistrationPaymentModel, WholeSeriesRegistrationPaymentSelection, WholeSeriesRegistrationPricingInput, WholeSeriesRegistrationPricingModel, WholeSeriesRegistrationPricingOptionInput, WholeSeriesRegistrationRun, WholeSeriesRegistrationRunInput, WholeSeriesRegistrationRunsModel, WholeSeriesRegistrationSpamProtectionModel, WholeSeriesRegistrationWaitlistClaimModel, } from '../nodes/event-registration/whole-series/whole-series-registration.headless.contract';
8
8
  export type HeadlessWholeSeriesRegistrationFlowOptions = Readonly<{
9
9
  runs?: readonly WholeSeriesRegistrationRunInput[];
10
- subject?: CourseRegistrationClientProps['subject'];
10
+ subject?: WholeSeriesRegistrationClientProps['subject'];
11
11
  }>;
12
12
  export type HeadlessWholeSeriesRegistrationProviderProps = Readonly<{
13
13
  config: BlockApiConfig;
14
14
  children?: React.ReactNode;
15
15
  }>;
16
16
  export type WholeSeriesRegistrationControllerDeps = Readonly<{
17
- useCourseRegistrationWizard: typeof useCourseRegistrationWizard;
17
+ useWholeSeriesRegistrationWizard: typeof useWholeSeriesRegistrationWizard;
18
18
  }>;
19
19
  export declare function createWholeSeriesRegistrationBlockApiConfig(input: Readonly<{
20
20
  siteId: string;
@@ -1,4 +1,4 @@
1
- import { type EventPageSurfaceSubject, type EventPageSurfaceSubjectParseError } from '../../../../../core/src/index';
1
+ import type { EventPageSurfaceSubject, EventPageSurfaceSubjectParseError } from '../../../../../core/src/index';
2
2
  import type { PublicCourse } from '../../blocks/courses/shared/types';
3
3
  export type CoursePageSurfaceScope = Readonly<{
4
4
  kind: 'absent';
@@ -10,8 +10,5 @@ export type CoursePageSurfaceScope = Readonly<{
10
10
  kind: 'unsupported';
11
11
  reason: EventPageSurfaceSubjectParseError['kind'];
12
12
  }>;
13
- /**
14
- * Resolves native course-page ownership without falling back to entry or slug
15
- * coincidence when a page-surface subject is present but invalid.
16
- */
13
+ /** Temporary Course-block adapter over canonical Event run scoping. */
17
14
  export declare function resolveCoursePageSurfaceScope(courses: readonly PublicCourse[], subjectValue: unknown): CoursePageSurfaceScope;
@@ -1,7 +1,9 @@
1
1
  import React from 'react';
2
- import type { CourseRegistrationClientProps as InternalCourseRegistrationClientProps } from './course-registration';
2
+ import type { WholeSeriesRegistrationClientProps } from './event-registration/whole-series';
3
3
  import type { CourseRegistrationInteractiveIslandProps } from './course-registration.interactive';
4
- export type CourseRegistrationClientProps = InternalCourseRegistrationClientProps;
4
+ export type CourseRegistrationClientProps = Omit<WholeSeriesRegistrationClientProps, 'runs'> & Readonly<{
5
+ courses?: WholeSeriesRegistrationClientProps['runs'];
6
+ }>;
5
7
  export type CourseRegistrationIslandClientProps = CourseRegistrationInteractiveIslandProps;
6
8
  export declare function CourseRegistrationClient(props: CourseRegistrationClientProps): React.JSX.Element;
7
9
  export declare function CourseRegistrationIslandClient(props: CourseRegistrationIslandClientProps): React.JSX.Element;
@@ -1,6 +1,6 @@
1
1
  import type { BlockButtonRole } from '../../constants/buttonRoles';
2
2
  import type { PublicCourse } from '../../blocks/courses/shared/types';
3
- import type { CourseRegistrationClientProps as InternalCourseRegistrationClientProps } from './course-registration/types';
3
+ import type { WholeSeriesRegistrationClientProps } from './event-registration/whole-series/types';
4
4
  import { type InteractiveIslandProps } from '../../../contracts/islands';
5
5
  import { type EventRegistrationPageSurfaceSubject } from './event-registration/eventScope';
6
6
  export type CourseRegistrationSourceProps = Readonly<{
@@ -27,7 +27,9 @@ export type CourseRegistrationDisplay = Readonly<{
27
27
  className: string | null;
28
28
  summaryButtonText: string;
29
29
  }>;
30
- export type CourseRegistrationHydration = Readonly<Omit<InternalCourseRegistrationClientProps, 'siteId' | 'stage' | 'buttonText' | 'className'>>;
30
+ export type CourseRegistrationHydration = Readonly<Omit<WholeSeriesRegistrationClientProps, 'runs' | 'siteId' | 'stage' | 'buttonText' | 'className'> & {
31
+ courses?: PublicCourse[] | null;
32
+ }>;
31
33
  type CourseRegistrationIslandMeta = Readonly<{
32
34
  siteId?: string;
33
35
  apiBaseUrl?: string;
@@ -62,7 +64,9 @@ export declare const courseRegistrationBlockRuntime: Readonly<{
62
64
  className: string | null;
63
65
  summaryButtonText: string;
64
66
  }>;
65
- hydration: Readonly<Omit<InternalCourseRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
67
+ hydration: Readonly<Omit<WholeSeriesRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText" | "runs"> & {
68
+ courses?: PublicCourse[] | null;
69
+ }>;
66
70
  }>;
67
71
  contracts: Readonly<{
68
72
  source: Readonly<{
@@ -111,7 +115,9 @@ export declare const courseRegistrationBlockRuntime: Readonly<{
111
115
  className: string | null;
112
116
  summaryButtonText: string;
113
117
  }>;
114
- hydration: Readonly<Omit<InternalCourseRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
118
+ hydration: Readonly<Omit<WholeSeriesRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText" | "runs"> & {
119
+ courses?: PublicCourse[] | null;
120
+ }>;
115
121
  }>) => unknown;
116
122
  decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
117
123
  display: Readonly<{
@@ -120,7 +126,9 @@ export declare const courseRegistrationBlockRuntime: Readonly<{
120
126
  className: string | null;
121
127
  summaryButtonText: string;
122
128
  }>;
123
- hydration: Readonly<Omit<InternalCourseRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
129
+ hydration: Readonly<Omit<WholeSeriesRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText" | "runs"> & {
130
+ courses?: PublicCourse[] | null;
131
+ }>;
124
132
  }>>;
125
133
  }>;
126
134
  }>;
@@ -142,7 +150,9 @@ export declare const courseRegistrationInteractiveIslandPropsCodec: Readonly<{
142
150
  className: string | null;
143
151
  summaryButtonText: string;
144
152
  }>;
145
- hydration: Readonly<Omit<InternalCourseRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
153
+ hydration: Readonly<Omit<WholeSeriesRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText" | "runs"> & {
154
+ courses?: PublicCourse[] | null;
155
+ }>;
146
156
  }>>;
147
157
  }>) => unknown;
148
158
  decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<Readonly<{
@@ -161,7 +171,9 @@ export declare const courseRegistrationInteractiveIslandPropsCodec: Readonly<{
161
171
  className: string | null;
162
172
  summaryButtonText: string;
163
173
  }>;
164
- hydration: Readonly<Omit<InternalCourseRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText">>;
174
+ hydration: Readonly<Omit<WholeSeriesRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText" | "runs"> & {
175
+ courses?: PublicCourse[] | null;
176
+ }>;
165
177
  }>>;
166
178
  }>>;
167
179
  }>;
@@ -8,12 +8,33 @@ export type OccurrenceContextLike = {
8
8
  endsAt: string;
9
9
  timeZone: string;
10
10
  } | null;
11
- export type EventDetailsSelection = {
11
+ type OrdinaryPublicEvent = PublicEvent & {
12
+ bookingScope: 'single_occurrence';
13
+ };
14
+ type WholeSeriesPublicEvent = PublicEvent & {
15
+ bookingScope: 'whole_series';
16
+ };
17
+ export type EventDetailsSelection = Readonly<{
18
+ kind: 'empty';
19
+ mode: 'next';
20
+ selected: null;
21
+ otherDates: readonly [];
22
+ timeZone: string;
23
+ }> | Readonly<{
24
+ kind: 'ordinary';
25
+ mode: 'selected' | 'next';
26
+ selected: OrdinaryPublicEvent;
27
+ otherDates: OrdinaryPublicEvent[];
28
+ timeZone: string;
29
+ }> | Readonly<{
30
+ kind: 'wholeSeries';
31
+ phase: 'upcoming' | 'inProgress' | 'completed';
12
32
  mode: 'selected' | 'next' | 'completed';
13
- selected: PublicEvent | null;
14
- otherDates: PublicEvent[];
33
+ selected: WholeSeriesPublicEvent;
34
+ otherDates: WholeSeriesPublicEvent[];
35
+ sessions: readonly [WholeSeriesPublicEvent, ...WholeSeriesPublicEvent[]];
15
36
  timeZone: string;
16
- };
37
+ }>;
17
38
  export declare function selectEventDetails(args: {
18
39
  events: PublicEvent[] | null | undefined;
19
40
  occurrenceContext: OccurrenceContextLike | null | undefined;
@@ -0,0 +1,75 @@
1
+ import type { EventAutoApplyDiscountPreview } from '../../../blocks/event-details';
2
+ import type { PublicEvent } from '../../../blocks/events/shared/types';
3
+ import type { PublicMembershipProductCollection, PublicPassProductCollection } from '../../../blocks/shop';
4
+ import type { EventRegistrationPageSurfaceSubject } from '../event-registration/eventScope';
5
+ import { type OccurrenceContextLike } from './logic';
6
+ export type EventDetailsPresentationInput = Readonly<{
7
+ occurrenceContext?: OccurrenceContextLike | null;
8
+ subject?: EventRegistrationPageSurfaceSubject | null;
9
+ events?: PublicEvent[] | null;
10
+ showVenue?: boolean;
11
+ showMap?: boolean;
12
+ showOtherDates?: boolean;
13
+ otherDatesLimit?: string;
14
+ showCost?: boolean;
15
+ showTitle?: boolean;
16
+ showDescription?: boolean;
17
+ showCapacity?: boolean;
18
+ showAcceptedPasses?: boolean;
19
+ showAcceptedMemberships?: boolean;
20
+ sitePasses?: PublicPassProductCollection | null;
21
+ siteMemberships?: PublicMembershipProductCollection | null;
22
+ autoApplyDiscount?: EventAutoApplyDiscountPreview | null;
23
+ nowIso?: string;
24
+ }>;
25
+ export declare function resolveEventDetailsPresentation(input: EventDetailsPresentationInput): {
26
+ autoApplyDiscount: EventAutoApplyDiscountPreview | null;
27
+ applicablePasses: ({
28
+ purchaseAvailability: "purchasable";
29
+ id: string;
30
+ productUseCase: "event_pass" | "appointment_package";
31
+ name: string;
32
+ description: string | null;
33
+ price: number;
34
+ currency: string;
35
+ creditsTotal: number;
36
+ pricePerCredit: number;
37
+ validDays: number | null;
38
+ eligibleCategoryIds: string[];
39
+ eligibleCategoryNames: string[];
40
+ } | {
41
+ purchaseAvailability: "display_only";
42
+ unavailabilityReason: "online_payments_unavailable";
43
+ id: string;
44
+ productUseCase: "event_pass" | "appointment_package";
45
+ name: string;
46
+ description: string | null;
47
+ price: number;
48
+ currency: string;
49
+ creditsTotal: number;
50
+ pricePerCredit: number;
51
+ validDays: number | null;
52
+ eligibleCategoryIds: string[];
53
+ eligibleCategoryNames: string[];
54
+ })[];
55
+ applicableMemberships: {
56
+ id: string;
57
+ name: string;
58
+ description: string | null;
59
+ price: number;
60
+ currency: string;
61
+ billingInterval: "month" | "year";
62
+ eligibleCategoryIds: string[];
63
+ eligibleCategoryNames: string[];
64
+ }[];
65
+ showVenue: boolean;
66
+ showMap: boolean;
67
+ showOtherDates: boolean;
68
+ showCost: boolean;
69
+ showTitle: boolean;
70
+ showDescription: boolean;
71
+ showCapacity: boolean;
72
+ showAcceptedPasses: boolean;
73
+ showAcceptedMemberships: boolean;
74
+ selection: import("./logic").EventDetailsSelection;
75
+ };
@@ -18,6 +18,9 @@ export type EventDetailsViewProps = {
18
18
  showMap: boolean;
19
19
  showOtherDates: boolean;
20
20
  showCost?: boolean;
21
+ showTitle?: boolean;
22
+ showDescription?: boolean;
23
+ showCapacity?: boolean;
21
24
  showAcceptedPasses?: boolean;
22
25
  showAcceptedMemberships?: boolean;
23
26
  applicablePasses?: PublicPassProduct[];
@@ -27,5 +30,5 @@ export type EventDetailsViewProps = {
27
30
  mapClassName?: string;
28
31
  renderVenueMap?: (args: RenderVenueMapArgs) => React.ReactNode;
29
32
  };
30
- export declare function EventDetailsView({ selection, showVenue, showMap, showOtherDates, showCost, showAcceptedPasses, showAcceptedMemberships, applicablePasses, applicableMemberships, autoApplyDiscount, mapHeight, mapClassName, renderVenueMap, }: EventDetailsViewProps): React.JSX.Element;
33
+ export declare function EventDetailsView(props: EventDetailsViewProps): React.JSX.Element;
31
34
  export {};
@@ -4,7 +4,7 @@ import type { EventDetailsIslandProps } from '../../../contracts';
4
4
  import type { PublicEvent } from '../../blocks/events/shared/types';
5
5
  import type { EventRegistrationPageSurfaceSubject } from './event-registration/eventScope';
6
6
  import type { PublicMembershipProductCollection, PublicPassProductCollection } from '../../blocks/shop';
7
- import { type OccurrenceContextLike } from './event-details/logic';
7
+ import type { OccurrenceContextLike } from './event-details/logic';
8
8
  export type EventDetailsClientProps = Readonly<{
9
9
  occurrenceContext?: OccurrenceContextLike | null;
10
10
  subject?: EventRegistrationPageSurfaceSubject | null;
@@ -14,6 +14,9 @@ export type EventDetailsClientProps = Readonly<{
14
14
  showOtherDates?: boolean;
15
15
  otherDatesLimit?: string;
16
16
  showCost?: boolean;
17
+ showTitle?: boolean;
18
+ showDescription?: boolean;
19
+ showCapacity?: boolean;
17
20
  showAcceptedPasses?: boolean;
18
21
  showAcceptedMemberships?: boolean;
19
22
  /** Response from listPublicPasses API. */
@@ -27,6 +30,6 @@ export type EventDetailsClientProps = Readonly<{
27
30
  children?: React.ReactNode;
28
31
  }>;
29
32
  export type EventDetailsIslandClientProps = EventDetailsIslandProps;
30
- export declare function EventDetailsClient({ occurrenceContext, subject, events, showVenue, showMap, showOtherDates, otherDatesLimit, showCost, showAcceptedPasses, showAcceptedMemberships, sitePasses, siteMemberships, autoApplyDiscount, className, nowIso, children, }: EventDetailsClientProps): React.JSX.Element;
33
+ export declare function EventDetailsClient(props: EventDetailsClientProps): React.JSX.Element;
31
34
  export declare function EventDetailsIslandClient(props: EventDetailsIslandClientProps): React.JSX.Element;
32
35
  export default EventDetailsClient;
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import type { EventAutoApplyDiscountPreview } from '../../blocks/event-details';
3
3
  import type { PublicEvent } from '../../blocks/events/shared/types';
4
4
  import type { PublicMembershipProductCollection, PublicPassProductCollection } from '../../blocks/shop';
5
- import { type OccurrenceContextLike } from './event-details/logic';
5
+ import type { OccurrenceContextLike } from './event-details/logic';
6
6
  type EventDetailsProps = {
7
7
  blockId?: string | null;
8
8
  occurrenceContext?: OccurrenceContextLike | null;
@@ -13,6 +13,9 @@ type EventDetailsProps = {
13
13
  showOtherDates?: boolean;
14
14
  otherDatesLimit?: string;
15
15
  showCost?: boolean;
16
+ showTitle?: boolean;
17
+ showDescription?: boolean;
18
+ showCapacity?: boolean;
16
19
  showAcceptedPasses?: boolean;
17
20
  showAcceptedMemberships?: boolean;
18
21
  /** Response from listPublicPasses API. */
@@ -24,5 +27,5 @@ type EventDetailsProps = {
24
27
  className?: string | null;
25
28
  children?: React.ReactNode;
26
29
  };
27
- export declare function EventDetailsSSR({ blockId, occurrenceContext, subject, events, showVenue, showMap, showOtherDates, otherDatesLimit, showCost, showAcceptedPasses, showAcceptedMemberships, sitePasses, siteMemberships, autoApplyDiscount, className, children, }: EventDetailsProps): React.JSX.Element;
30
+ export declare function EventDetailsSSR(props: EventDetailsProps): React.JSX.Element;
28
31
  export default EventDetailsSSR;
@@ -10,6 +10,7 @@
10
10
  import React from 'react';
11
11
  import type { RegistrationEvent, OccurrenceContext, EligibilityData, PaymentSelection, PaymentStepState } from './types';
12
12
  import type { PaymentMethod } from '../../api/types';
13
+ import type { PortalCreditState } from './hooks';
13
14
  export type { PaymentMethod };
14
15
  type PaymentSelectionStepProps = {
15
16
  event: RegistrationEvent | null;
@@ -18,6 +19,9 @@ type PaymentSelectionStepProps = {
18
19
  email: string;
19
20
  /** Whether the user is authenticated via portal bearer token */
20
21
  isAuthenticated?: boolean;
22
+ creditState?: PortalCreditState;
23
+ directPaymentTotalCents?: number;
24
+ manualDiscountPending?: boolean;
21
25
  /** Current canonical selection from wizard state */
22
26
  selectedSelection: PaymentSelection;
23
27
  /** Called whenever the user updates payment selection in this step */
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ export declare function RegistrationClosedState({ title, body, }: Readonly<{
3
+ title: string;
4
+ body: string;
5
+ }>): React.JSX.Element;
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import type { EventRegistrationSiteCreditPreview } from './siteCreditPreview';
3
+ export declare function SiteCreditPreviewPanel(props: Readonly<{
4
+ preview: EventRegistrationSiteCreditPreview;
5
+ currency: string;
6
+ }>): React.JSX.Element | null;
@@ -8,6 +8,8 @@ type SupportedEventDirectPaymentOption = Extract<BlockBookingPaymentCollectionOp
8
8
  export type EventRegistrationDirectPaymentOption = Omit<BookingPaymentOptionViewModel, 'kind' | 'title'> & Readonly<{
9
9
  kind: Extract<DirectCheckoutCollectionOptionKind, SupportedEventDirectPaymentOption['kind']>;
10
10
  label: string;
11
+ totalCents: number;
12
+ configuredPaymentDueNowCents: number;
11
13
  }>;
12
14
  export type EventRegistrationPaymentOptionsViewModel = Readonly<{
13
15
  mode: 'single_option' | 'choice_required';
@@ -5,6 +5,7 @@
5
5
  * Extracted from the main EventRegistrationClient for better separation of concerns.
6
6
  */
7
7
  import { useBlockApi } from '../../api';
8
+ import type { PortalCredit } from '../../api';
8
9
  import type { EventTicketSelectionLine } from './types';
9
10
  import { type EligibilityLookupState, type ExistingRegistrationLookupState } from './hooks.state';
10
11
  export type PortalAuthState = 'checking' | 'authenticated' | 'unauthenticated';
@@ -13,6 +14,20 @@ export type PortalProfile = {
13
14
  name: string;
14
15
  phone: string;
15
16
  };
17
+ export type PortalCreditState = Readonly<{
18
+ kind: 'not_authenticated';
19
+ }> | Readonly<{
20
+ kind: 'loading';
21
+ subjectEmail: string;
22
+ }> | Readonly<{
23
+ kind: 'loaded';
24
+ subjectEmail: string;
25
+ credit: PortalCredit | null;
26
+ }> | Readonly<{
27
+ kind: 'unavailable';
28
+ subjectEmail: string;
29
+ }>;
30
+ export declare function scopePortalCreditStateToSubject(state: PortalCreditState, subjectEmail: string | null): PortalCreditState;
16
31
  export type UsePortalAuthResult = {
17
32
  /** Current authentication state */
18
33
  authState: PortalAuthState;
@@ -22,6 +37,8 @@ export type UsePortalAuthResult = {
22
37
  isChecking: boolean;
23
38
  /** Portal profile data (only available when authenticated) */
24
39
  profile: PortalProfile | null;
40
+ /** Site credit loaded for the same authenticated portal identity. */
41
+ creditState: PortalCreditState;
25
42
  /** Logout function */
26
43
  logout: () => void;
27
44
  };
@@ -1,4 +1,4 @@
1
- import type { PublicCourse } from '../../../blocks/courses/shared/types';
1
+ import type { PublicWholeSeriesOffering } from '../../../blocks/events/whole-series';
2
2
  import type { PublicEvent } from '../../../blocks/events/shared/types';
3
3
  import { type EventRegistrationPageSurfaceSubject } from './eventScope';
4
4
  export type EventRegistrationSurfacePlan = Readonly<{
@@ -6,7 +6,7 @@ export type EventRegistrationSurfacePlan = Readonly<{
6
6
  events: readonly PublicEvent[];
7
7
  }> | Readonly<{
8
8
  kind: 'wholeSeries';
9
- offerings: readonly PublicCourse[];
9
+ offerings: readonly PublicWholeSeriesOffering[];
10
10
  }> | Readonly<{
11
11
  kind: 'unavailableWholeSeries';
12
12
  }> | Readonly<{
@@ -14,7 +14,7 @@ export type EventRegistrationSurfacePlan = Readonly<{
14
14
  }>;
15
15
  export declare function planEventRegistrationSurface(input: Readonly<{
16
16
  events: readonly PublicEvent[];
17
- wholeSeriesOfferings: readonly PublicCourse[];
17
+ wholeSeriesOfferings: readonly PublicWholeSeriesOffering[];
18
18
  occurrenceContext?: Readonly<{
19
19
  id: string;
20
20
  seriesId: string;
@@ -0,0 +1,51 @@
1
+ import type { PortalCreditState } from './hooks';
2
+ import type { EventRegistrationDirectPaymentOption, EventRegistrationDirectPaymentSelectionState } from './eventPaymentOptions';
3
+ export type EventRegistrationSiteCreditPreview = Readonly<{
4
+ kind: 'not_authenticated';
5
+ }> | Readonly<{
6
+ kind: 'loading';
7
+ }> | Readonly<{
8
+ kind: 'unavailable';
9
+ }> | Readonly<{
10
+ kind: 'not_applicable';
11
+ }> | Readonly<{
12
+ kind: 'no_credit';
13
+ }> | Readonly<{
14
+ kind: 'currency_mismatch';
15
+ availableCreditCents: number;
16
+ creditCurrency: string;
17
+ }> | Readonly<{
18
+ kind: 'applied';
19
+ outcome: 'credit_only' | 'mixed';
20
+ availableCreditCents: number;
21
+ appliedCreditCents: number;
22
+ cardDueNowCents: number;
23
+ laterBalanceCents: number;
24
+ remainingCreditCents: number;
25
+ manualDiscountPending: boolean;
26
+ }>;
27
+ export declare function calculateEventRegistrationPreviewTotal(input: Readonly<{
28
+ subtotalCents: number;
29
+ manualDiscountCode: string;
30
+ automaticDiscount?: Readonly<{
31
+ computedAmountCents: number;
32
+ }> | null;
33
+ }>): number;
34
+ export declare function buildEventRegistrationSiteCreditPreview(input: Readonly<{
35
+ option: EventRegistrationDirectPaymentOption | null;
36
+ currency: string;
37
+ creditState: PortalCreditState;
38
+ manualDiscountPending: boolean;
39
+ }>): EventRegistrationSiteCreditPreview;
40
+ export declare function buildSelectedSiteCreditPreview(input: Readonly<{
41
+ options: readonly EventRegistrationDirectPaymentOption[];
42
+ selectionState: EventRegistrationDirectPaymentSelectionState;
43
+ eligibility: Readonly<{
44
+ currency: string;
45
+ }> | null;
46
+ creditState: PortalCreditState;
47
+ manualDiscountPending: boolean;
48
+ }>): EventRegistrationSiteCreditPreview;
49
+ export declare function resolveDirectPaymentTotalCents(explicitTotalCents: number | undefined, eligibility: Readonly<{
50
+ price: number | null;
51
+ }> | null): number;
@@ -1,7 +1,7 @@
1
1
  import type { PublicEvent, PublicEventTicketType, PublicEventTicketTypeAvailability } from '../../../blocks/events/shared/types';
2
2
  import type { OccurrenceContext } from '../../../blocks/event-registration.shared';
3
3
  import type { PublicMembershipProductCollection, PublicPassProductCollection } from '../../../blocks/shop.shared';
4
- import type { PublicCourse } from '../../../blocks/courses/shared/types';
4
+ import type { PublicWholeSeriesOffering } from '../../../blocks/events/whole-series';
5
5
  import type { AvailablePass, AvailableMembership, DirectCheckoutCollectionOptionKind, EventTicketLineSummary, EligibilityEventTicketType } from '../../api/types';
6
6
  import type { EventRegistrationPageSurfaceSubject } from './eventScope';
7
7
  import type { BlockButtonRole } from '../../../constants/buttonRoles';
@@ -147,9 +147,9 @@ export type EventRegistrationClientProps = {
147
147
  subject?: EventRegistrationPageSurfaceSubject | null;
148
148
  events?: PublicEvent[] | null;
149
149
  /** Canonical whole-series runs used when the scoped Event books the full series. */
150
- wholeSeriesOfferings?: PublicCourse[] | null;
150
+ wholeSeriesOfferings?: PublicWholeSeriesOffering[] | null;
151
151
  /** Targeted whole-series offering loaded for a native Event page surface. */
152
- wholeSeriesOffering?: PublicCourse | null;
152
+ wholeSeriesOffering?: PublicWholeSeriesOffering | null;
153
153
  maxTickets?: string;
154
154
  showVenue?: boolean;
155
155
  showCapacity?: boolean;
@@ -104,6 +104,7 @@ export declare function useEventRegistrationWizard(options: UseEventRegistration
104
104
  setAltchaSolution: import("react").Dispatch<import("react").SetStateAction<string | null>>;
105
105
  portalAuthState: import("./hooks").PortalAuthState;
106
106
  portalProfile: import("./hooks").PortalProfile | null;
107
+ portalCreditState: import("./hooks").PortalCreditState;
107
108
  showMagicLinkModal: boolean;
108
109
  setShowMagicLinkModal: import("react").Dispatch<import("react").SetStateAction<boolean>>;
109
110
  handleLogout: () => void;
@@ -216,6 +217,7 @@ export declare function useEventRegistrationWizardWithDeps(options: UseEventRegi
216
217
  setAltchaSolution: import("react").Dispatch<import("react").SetStateAction<string | null>>;
217
218
  portalAuthState: import("./hooks").PortalAuthState;
218
219
  portalProfile: import("./hooks").PortalProfile | null;
220
+ portalCreditState: import("./hooks").PortalCreditState;
219
221
  showMagicLinkModal: boolean;
220
222
  setShowMagicLinkModal: import("react").Dispatch<import("react").SetStateAction<boolean>>;
221
223
  handleLogout: () => void;
@@ -19,7 +19,7 @@ type BookingModeStepProps = {
19
19
  selectedMembershipId: string | null;
20
20
  /** Callback when selected membership changes */
21
21
  onMembershipSelect: (id: string | null) => void;
22
- /** Course price in cents */
22
+ /** Run price in cents */
23
23
  priceCents: number | null;
24
24
  /** Currency code */
25
25
  currency: string;
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * Re-export shared CheckIcon component.
3
3
  */
4
- export { CheckIcon } from '../../shared';
4
+ export { CheckIcon } from '../../../shared';
@@ -2,7 +2,7 @@
2
2
  * Error terminal state component.
3
3
  * Shows error message with retry option.
4
4
  */
5
- import type { BlockButtonRole } from '../../../constants/buttonRoles';
5
+ import type { BlockButtonRole } from '../../../../constants/buttonRoles';
6
6
  type ErrorStepProps = {
7
7
  /** Error message to display */
8
8
  message: string;
@@ -1,9 +1,9 @@
1
1
  /**
2
- * Membership Hero for course registration.
3
- * Thin wrapper around the shared MembershipHero with 'cr' class prefix.
2
+ * Membership Hero for run registration.
3
+ * Thin wrapper around the shared MembershipHero with the canonical Event class prefix.
4
4
  */
5
5
  type MembershipHeroProps = {
6
- /** Name of the membership that covers this course */
6
+ /** Name of the membership that covers this run */
7
7
  membershipName: string;
8
8
  /** Optional callback for "booking for someone else" */
9
9
  onBookForSomeoneElse?: () => void;
@@ -2,7 +2,7 @@
2
2
  * Payment failed terminal state component.
3
3
  * Shows when payment could not be processed.
4
4
  */
5
- import type { BlockButtonRole } from '../../../constants/buttonRoles';
5
+ import type { BlockButtonRole } from '../../../../constants/buttonRoles';
6
6
  type PaymentFailedStepProps = {
7
7
  /** Error message to display */
8
8
  message?: string;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Step indicator component for the run registration wizard.
3
+ * Thin wrapper around the shared StepIndicator with the canonical Event class prefix.
4
+ */
5
+ import { type StepIndicatorBaseProps } from '../../../shared';
6
+ export declare function StepIndicator(props: StepIndicatorBaseProps): import("react").JSX.Element;
@@ -2,7 +2,7 @@
2
2
  * Verifying timeout terminal state component.
3
3
  * Shows when payment verification takes too long.
4
4
  */
5
- import type { BlockButtonRole } from '../../../constants/buttonRoles';
5
+ import type { BlockButtonRole } from '../../../../constants/buttonRoles';
6
6
  type VerifyingTimeoutStepProps = {
7
7
  /** Button text */
8
8
  buttonText?: string;
@@ -0,0 +1,9 @@
1
+ import type { WholeSeriesRegistrationClientProps } from './types';
2
+ import type { useWholeSeriesRegistrationWizard } from './useWholeSeriesRegistrationWizard';
3
+ export type WholeSeriesWizardState = ReturnType<typeof useWholeSeriesRegistrationWizard>;
4
+ type ActiveStepProps = Readonly<{
5
+ wizard: WholeSeriesWizardState;
6
+ display: Required<Pick<WholeSeriesRegistrationClientProps, 'showSessions' | 'showPrice' | 'showCapacity' | 'showVenue' | 'buttonText'>> & Pick<WholeSeriesRegistrationClientProps, 'buttonVariant'>;
7
+ }>;
8
+ export declare function WholeSeriesRegistrationActiveStep({ wizard, display, }: ActiveStepProps): import("react").JSX.Element | null;
9
+ export {};
@@ -1,19 +1,22 @@
1
1
  import { Component, type ErrorInfo, type ReactNode } from 'react';
2
+ import { type WholeSeriesRegistrationPresentationKind } from './presentation';
2
3
  interface ErrorBoundaryState {
3
4
  hasError: boolean;
4
5
  error?: Error;
5
6
  }
6
7
  /**
7
- * Error boundary wrapper for course registration.
8
+ * Error boundary wrapper for run registration.
8
9
  * Catches render errors and displays a fallback UI.
9
10
  */
10
- export declare class CourseRegistrationErrorBoundary extends Component<{
11
+ export declare class WholeSeriesRegistrationErrorBoundary extends Component<{
11
12
  children: ReactNode;
12
13
  className?: string;
14
+ presentationKind?: WholeSeriesRegistrationPresentationKind;
13
15
  }, ErrorBoundaryState> {
14
16
  constructor(props: {
15
17
  children: ReactNode;
16
18
  className?: string;
19
+ presentationKind?: WholeSeriesRegistrationPresentationKind;
17
20
  });
18
21
  static getDerivedStateFromError(error: Error): ErrorBoundaryState;
19
22
  componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
@@ -0,0 +1,8 @@
1
+ import type { WholeSeriesRegistrationClientProps } from './types';
2
+ import type { WholeSeriesWizardState } from './WholeSeriesRegistrationActiveSteps';
3
+ type TerminalProps = Readonly<{
4
+ wizard: WholeSeriesWizardState;
5
+ copy: Required<Pick<WholeSeriesRegistrationClientProps, 'successMessage' | 'waitlistMessage' | 'membershipMessage'>> & Pick<WholeSeriesRegistrationClientProps, 'buttonVariant'>;
6
+ }>;
7
+ export declare function WholeSeriesRegistrationTerminalContent({ wizard, copy, }: TerminalProps): import("react").JSX.Element | null;
8
+ export {};