@riverbankcms/sdk 0.136.0 → 0.138.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 (343) hide show
  1. package/CHANGELOG.md +109 -0
  2. package/README.md +7 -4
  3. package/dist/{PreviewEditorSidebar-BU5ZlhQR.mjs → PreviewEditorSidebar-BVPur_CU.mjs} +12 -18
  4. package/dist/{PreviewEditorUI-9XkHL-bC.mjs → PreviewEditorUI-DLhWX8oh.mjs} +3 -3
  5. package/dist/{PreviewQueryProvider-wbEpXryy.mjs → PreviewQueryProvider-BguJY1SW.mjs} +1 -1
  6. package/dist/{SdkPreviewModeRuntime-CnWmj-2B.mjs → SdkPreviewModeRuntime-Tda6qw4z.mjs} +1375 -495
  7. package/dist/{SiteChromeCustomizeContext-B6d5zkog.mjs → SiteChromeCustomizeContext-BHFgMjde.mjs} +35665 -33602
  8. package/dist/_dts/ai/src/contracts/proposals.d.ts +7226 -3057
  9. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +1223 -811
  10. package/dist/_dts/ai/src/designer/themePatch.d.ts +5 -10
  11. package/dist/_dts/api/src/accessAdmin.d.ts +16 -18
  12. package/dist/_dts/api/src/accountApi.d.ts +49 -2
  13. package/dist/_dts/api/src/appointmentServiceContracts.d.ts +83 -0
  14. package/dist/_dts/api/src/appointmentServiceLocation.d.ts +12 -0
  15. package/dist/_dts/api/src/appointmentServiceVisibility.d.ts +14 -0
  16. package/dist/_dts/api/src/appointmentSetup.d.ts +8 -0
  17. package/dist/_dts/api/src/bookingConfig.d.ts +35 -87
  18. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +1 -1
  19. package/dist/_dts/api/src/bookingOperations.d.ts +2 -69
  20. package/dist/_dts/api/src/bookingRecords.d.ts +2 -2
  21. package/dist/_dts/api/src/bookingRefundOutcomes.d.ts +2 -2
  22. package/dist/_dts/api/src/bookingServicePricing.d.ts +47 -0
  23. package/dist/_dts/api/src/bookings.d.ts +2 -2
  24. package/dist/_dts/api/src/cache-tags.d.ts +7 -2
  25. package/dist/_dts/api/src/common/index.d.ts +1 -0
  26. package/dist/_dts/api/src/common/zodFieldErrors.d.ts +34 -0
  27. package/dist/_dts/api/src/communications.d.ts +14 -8
  28. package/dist/_dts/api/src/contentRuntime.d.ts +3 -6
  29. package/dist/_dts/api/src/domainConnection.d.ts +41 -0
  30. package/dist/_dts/api/src/endpoints.d.ts +1636 -1637
  31. package/dist/_dts/api/src/eventAttendanceLabels.d.ts +2 -2
  32. package/dist/_dts/api/src/eventManagementContracts.d.ts +10 -14
  33. package/dist/_dts/api/src/index.d.ts +11 -9
  34. package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -1
  35. package/dist/_dts/api/src/indexExtendedTypes.d.ts +1 -1
  36. package/dist/_dts/api/src/media.d.ts +19 -2
  37. package/dist/_dts/api/src/occurrenceScheduling.d.ts +1 -1
  38. package/dist/_dts/api/src/participantMessaging.d.ts +3 -3
  39. package/dist/_dts/api/src/public/endpoints.d.ts +1 -1
  40. package/dist/_dts/api/src/publicBookingAvailabilityEndpointDefinitions.d.ts +62 -0
  41. package/dist/_dts/api/src/publicBookingService.d.ts +109 -2
  42. package/dist/_dts/api/src/publicEventCheckoutEndpointDefinitions.d.ts +27 -0
  43. package/dist/_dts/api/src/publicEventEndpointDefinitions.d.ts +7 -0
  44. package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +2 -1
  45. package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +30 -148
  46. package/dist/_dts/api/src/publicExperience/sharedTypes.d.ts +8 -26
  47. package/dist/_dts/api/src/publicExperience/siteEndpoints.d.ts +5 -13
  48. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +2 -3
  49. package/dist/_dts/api/src/schemas/admin-allowed-domains.d.ts +76 -0
  50. package/dist/_dts/api/src/schemas/admin-observability-logs.d.ts +61 -0
  51. package/dist/_dts/api/src/schemas/admin-users.d.ts +80 -0
  52. package/dist/_dts/api/src/schemas/newsletter-memberships.d.ts +98 -0
  53. package/dist/_dts/api/src/schemas/sdk-entries.d.ts +128 -0
  54. package/dist/_dts/api/src/schemas/site-api-keys.d.ts +112 -0
  55. package/dist/_dts/api/src/schemas/support.d.ts +35 -0
  56. package/dist/_dts/api/src/sdk-event-booking-offer.d.ts +14 -0
  57. package/dist/_dts/api/src/sdk-event-payment-terms.d.ts +4 -16
  58. package/dist/_dts/api/src/sdk-event-upsert.d.ts +11 -21
  59. package/dist/_dts/api/src/sdkContracts.d.ts +8 -23
  60. package/dist/_dts/api/src/sdkManagedEventContracts.d.ts +37 -0
  61. package/dist/_dts/api/src/sdkMediaContracts.d.ts +40 -0
  62. package/dist/_dts/api/src/sdkMediaEndpointDefinitions.d.ts +66 -0
  63. package/dist/_dts/api/src/sdkThemeWire.d.ts +157 -146
  64. package/dist/_dts/api/src/siteInfrastructure.d.ts +37 -37
  65. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +35 -54
  66. package/dist/_dts/api/src/siteOnboarding.d.ts +3 -3
  67. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +38 -16
  68. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +37 -17
  69. package/dist/_dts/api/src/types.d.ts +2 -2
  70. package/dist/_dts/api/src/{wholeSeriesOfferings.d.ts → wholeSeriesRuns.d.ts} +11 -67
  71. package/dist/_dts/block-form/src/FormRenderer.d.ts +3 -1
  72. package/dist/_dts/block-form/src/backend/store-backend.d.ts +2 -1
  73. package/dist/_dts/block-form/src/backend/types.d.ts +2 -0
  74. package/dist/_dts/block-form/src/context/FormFocusContext.d.ts +7 -0
  75. package/dist/_dts/block-form/src/index.d.ts +2 -0
  76. package/dist/_dts/block-form/src/manifest/ManifestForm.d.ts +2 -1
  77. package/dist/_dts/block-form/src/utils/promotedFieldBackend.d.ts +8 -0
  78. package/dist/_dts/block-form/src/utils/promotedFieldPlan.d.ts +18 -0
  79. package/dist/_dts/block-form/src/utils/resolvePromotedFields.d.ts +8 -1
  80. package/dist/_dts/blocks/src/BlockErrorBoundary.d.ts +46 -0
  81. package/dist/_dts/blocks/src/PageRenderer.d.ts +2 -141
  82. package/dist/_dts/blocks/src/contracts/index.d.ts +2 -0
  83. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +12 -6
  84. package/dist/_dts/blocks/src/index.d.ts +1 -0
  85. package/dist/_dts/blocks/src/pageRenderAudience.d.ts +54 -0
  86. package/dist/_dts/blocks/src/pageRenderDiagnostics.d.ts +26 -0
  87. package/dist/_dts/blocks/src/pageRenderPlan.d.ts +116 -0
  88. package/dist/_dts/blocks/src/pageRenderPreparation.d.ts +109 -0
  89. package/dist/_dts/blocks/src/pageRendererBoundaries.d.ts +1 -0
  90. package/dist/_dts/blocks/src/pageRendererContracts.d.ts +154 -0
  91. package/dist/_dts/blocks/src/portal/types.d.ts +1 -1
  92. package/dist/_dts/blocks/src/server.d.ts +1 -0
  93. package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +12 -20
  94. package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +1 -1
  95. package/dist/_dts/blocks/src/system/blocks/events/eventCalendarDataLoaders.d.ts +3 -0
  96. package/dist/_dts/blocks/src/system/blocks/events/shared/calendarWindow.d.ts +95 -0
  97. package/dist/_dts/blocks/src/system/blocks/events/shared/index.d.ts +1 -0
  98. package/dist/_dts/blocks/src/system/blocks/events/shared/runGrouping.d.ts +37 -0
  99. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +1046 -773
  100. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +59 -46
  101. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +3 -3
  102. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +161 -161
  103. package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +13 -6
  104. package/dist/_dts/blocks/src/system/blocks/offerings-preview/scheduleSummary.d.ts +10 -4
  105. package/dist/_dts/blocks/src/system/constants/buttonRoles.d.ts +2 -2
  106. package/dist/_dts/blocks/src/system/constants/events.d.ts +4 -0
  107. package/dist/_dts/blocks/src/system/customize/facets.d.ts +4 -4
  108. package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
  109. package/dist/_dts/blocks/src/system/data/publicLoaderCachePolicy.d.ts +5 -9
  110. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +83 -83
  111. package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +12 -3
  112. package/dist/_dts/blocks/src/system/runtime/api/endpoints.d.ts +8 -8
  113. package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
  114. package/dist/_dts/blocks/src/system/runtime/api/types/core.d.ts +13 -0
  115. package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +12 -20
  116. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +32 -37
  117. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +15 -18
  118. package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.d.ts +11 -8
  119. package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.state.d.ts +38 -22
  120. package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +7 -0
  121. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/WholeSeriesPricingDisplay.d.ts +2 -2
  122. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/logic.d.ts +16 -4
  123. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/ErrorStep.d.ts +3 -5
  124. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationWizardActions.d.ts +4 -2
  125. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/PaymentSelectionStep.d.ts +1 -1
  126. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +5 -3
  127. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.planning.d.ts +1 -1
  128. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventScope.d.ts +1 -1
  129. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.d.ts +2 -0
  130. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationCompletion.d.ts +15 -0
  131. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationDerivations.d.ts +2 -2
  132. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationErrorPresentation.d.ts +5 -0
  133. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationErrorRecovery.d.ts +25 -0
  134. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationEventAdapter.d.ts +14 -3
  135. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationSurface.d.ts +3 -21
  136. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationWizardContext.d.ts +4 -0
  137. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/siteCreditPreview.d.ts +0 -3
  138. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/ticketSelectionLines.d.ts +14 -16
  139. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +13 -15
  140. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationStripeReturn.d.ts +7 -3
  141. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +9 -3
  142. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +25 -23
  143. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useWaitlistClaimRestoration.d.ts +2 -0
  144. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/utils.d.ts +11 -4
  145. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +8 -13
  146. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCalendar.interactive.d.ts +5 -0
  147. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +1 -0
  148. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +11 -3
  149. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/capacity.d.ts +164 -0
  150. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/cta.d.ts +29 -0
  151. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/dates.d.ts +47 -0
  152. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/index.d.ts +14 -0
  153. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/people.d.ts +6 -0
  154. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/pricing.d.ts +24 -0
  155. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/OfferingTitle.d.ts +11 -0
  156. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekAgendaView.d.ts +1 -1
  157. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekBoardView.d.ts +1 -1
  158. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +1080 -560
  159. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventProductEligibility.d.ts +2 -2
  160. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/index.d.ts +3 -1
  161. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/listingLayout.d.ts +23 -0
  162. package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +2 -2
  163. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +7 -7
  164. package/dist/_dts/blocks/src/system/transforms/registry/eventCalendar.d.ts +11 -0
  165. package/dist/_dts/commerce/src/moneyReport.d.ts +1 -1
  166. package/dist/_dts/commerce/src/purchase/checkoutErrorCodes.d.ts +1 -1
  167. package/dist/_dts/commerce/src/purchase/event-registration-errors.d.ts +57 -0
  168. package/dist/_dts/commerce/src/purchase/eventOrderOptionSnapshot.d.ts +3 -0
  169. package/dist/_dts/commerce/src/purchase/index.d.ts +1 -0
  170. package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +6 -3
  171. package/dist/_dts/commerce/src/purchase/types.d.ts +3 -2
  172. package/dist/_dts/commerce/src/waitlists.d.ts +1 -1
  173. package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +4 -0
  174. package/dist/_dts/content-editor/src/controller/useBlockedPublishPlan.d.ts +11 -0
  175. package/dist/_dts/content-editor/src/hooks/applyBlockedPublishPlan.d.ts +1 -1
  176. package/dist/_dts/content-editor/src/hooks/blockedPublishPlan.d.ts +13 -5
  177. package/dist/_dts/content-editor/src/hooks/useEntryActions.d.ts +5 -1
  178. package/dist/_dts/content-editor/src/hooks/validateBlocksForPublish.d.ts +34 -2
  179. package/dist/_dts/content-editor/src/index.d.ts +2 -1
  180. package/dist/_dts/content-editor/src/ui/blockValidationManifestRegistry.d.ts +2 -0
  181. package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +4 -2
  182. package/dist/_dts/content-editor/src/ui/stores/types.d.ts +27 -5
  183. package/dist/_dts/content-model/src/content-types/schema.d.ts +3 -3
  184. package/dist/_dts/content-model/src/templates/defaults.d.ts +11 -0
  185. package/dist/_dts/core/src/branded.d.ts +28 -9
  186. package/dist/_dts/core/src/event-booking-offer-parser.d.ts +82 -0
  187. package/dist/_dts/core/src/event-booking-offer.d.ts +89 -0
  188. package/dist/_dts/core/src/event-page-surface-subject.d.ts +81 -4
  189. package/dist/_dts/core/src/event-pricing.d.ts +81 -89
  190. package/dist/_dts/core/src/index.d.ts +3 -0
  191. package/dist/_dts/core/src/non-empty-array.d.ts +3 -0
  192. package/dist/_dts/core/src/whole-series-run-schedule.d.ts +92 -0
  193. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +495 -279
  194. package/dist/_dts/db/src/index.d.ts +1 -0
  195. package/dist/_dts/db/src/utils/postgrestFilter.d.ts +2 -0
  196. package/dist/_dts/editor-blocks/src/BlockForm.d.ts +2 -6
  197. package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +1 -1
  198. package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +2 -2
  199. package/dist/_dts/editor-blocks/src/block-editor/BlockSettingsModal.d.ts +4 -2
  200. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockValidationManifests.d.ts +1 -0
  201. package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +22 -7
  202. package/dist/_dts/editor-blocks/src/block-editor/useSettingsFieldFocus.d.ts +18 -0
  203. package/dist/_dts/media-core/src/bulkDeletePlanning.d.ts +4 -0
  204. package/dist/_dts/media-core/src/fileDomain.d.ts +3 -0
  205. package/dist/_dts/preview-next/src/client/blocks/previewBatchLoaderParams.d.ts +2 -0
  206. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +1 -0
  207. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +1 -0
  208. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +3 -2
  209. package/dist/_dts/preview-next/src/client/preview/siteChromeBrandPreferences.d.ts +1 -1
  210. package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +2 -0
  211. package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlSaveRequest.d.ts +51 -0
  212. package/dist/_dts/preview-next/src/client/preview/siteChromeSavePlan.d.ts +24 -2
  213. package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +23 -1
  214. package/dist/_dts/preview-next/src/client/preview/usePersistedHeaderPreferences.d.ts +8 -0
  215. package/dist/_dts/sdk/src/client/{eventSubrouteReadOperations.d.ts → publicEventReadOperations.d.ts} +4 -3
  216. package/dist/_dts/sdk/src/client/types.d.ts +6 -10
  217. package/dist/_dts/sdk/src/config/types.d.ts +1 -1
  218. package/dist/_dts/sdk/src/config/validation.d.ts +3 -3
  219. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +5 -0
  220. package/dist/_dts/sdk/src/data/prefetchBlockData.d.ts +2 -3
  221. package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +8 -8
  222. package/dist/_dts/sdk/src/next/tags.d.ts +5 -8
  223. package/dist/_dts/sdk/src/public-api/contracts.d.ts +2 -26
  224. package/dist/_dts/sdk/src/rendering/helpers/footerPageOutline.d.ts +9 -1
  225. package/dist/_dts/sdk/src/rendering/index.d.ts +1 -0
  226. package/dist/_dts/sdk/src/rendering/islands/types.d.ts +6 -53
  227. package/dist/_dts/sdk/src/rendering/server.d.ts +1 -0
  228. package/dist/_dts/sdk/src/version.d.ts +1 -1
  229. package/dist/_dts/theme-core/src/accordions/types.d.ts +5 -5
  230. package/dist/_dts/theme-core/src/buttons/styles/recipes/flatInk.d.ts +25 -25
  231. package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +25 -25
  232. package/dist/_dts/theme-core/src/buttons/styles/selection.d.ts +7 -7
  233. package/dist/_dts/theme-core/src/buttons/types.d.ts +22 -22
  234. package/dist/_dts/theme-core/src/cards/types.d.ts +49 -49
  235. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  236. package/dist/_dts/theme-core/src/gradients/types.d.ts +5 -0
  237. package/dist/_dts/theme-core/src/header/interactionPalette.d.ts +26 -3
  238. package/dist/_dts/theme-core/src/inputs/types.d.ts +2 -2
  239. package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +1 -1
  240. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +195 -195
  241. package/dist/_dts/theme-core/src/navigation/types.d.ts +3 -3
  242. package/dist/_dts/theme-core/src/palette/colors.d.ts +1 -1
  243. package/dist/_dts/theme-core/src/palette/curated/types.d.ts +2 -2
  244. package/dist/_dts/theme-core/src/schema.d.ts +258 -257
  245. package/dist/_dts/theme-core/src/shared/componentStyles.d.ts +1 -1
  246. package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
  247. package/dist/_dts/theme-core/src/site-styles/cardRoleVocabulary.d.ts +1 -1
  248. package/dist/_dts/theme-core/src/site-styles/compilationPlan.d.ts +43 -3
  249. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +10 -0
  250. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +4 -4
  251. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +2 -2
  252. package/dist/_dts/theme-core/src/site-styles/headerBrandPresentation.d.ts +63 -0
  253. package/dist/_dts/theme-core/src/site-styles/headerBytesComparison.d.ts +30 -0
  254. package/dist/_dts/theme-core/src/site-styles/headerInteractionPalette.d.ts +50 -1
  255. package/dist/_dts/theme-core/src/site-styles/headerLayoutCatalog.d.ts +48 -9
  256. package/dist/_dts/theme-core/src/site-styles/headerPreferences.d.ts +162 -0
  257. package/dist/_dts/theme-core/src/site-styles/headerPreferencesPersistence.d.ts +73 -0
  258. package/dist/_dts/theme-core/src/site-styles/headerRecompile.d.ts +118 -0
  259. package/dist/_dts/theme-core/src/site-styles/headerStyleCompiler.d.ts +10 -1
  260. package/dist/_dts/theme-core/src/site-styles/headerStyleDefaults.d.ts +1 -1
  261. package/dist/_dts/theme-core/src/site-styles/headerStyleRecipe.d.ts +7 -0
  262. package/dist/_dts/theme-core/src/site-styles/index.d.ts +5 -0
  263. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +1 -1
  264. package/dist/_dts/theme-core/src/site-styles/siteChromeBackgrounds.d.ts +20 -1
  265. package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +43 -2
  266. package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +1 -1
  267. package/dist/_dts/theme-core/src/tokens/themeColorTokens.d.ts +3 -3
  268. package/dist/_dts/ui/src/badge.d.ts +1 -1
  269. package/dist/_dts/ui/src/button.d.ts +2 -2
  270. package/dist/client/{BookingConsentAgreement-DCch21a6.mjs → BookingConsentAgreement-DQUik1Mx.mjs} +2 -2
  271. package/dist/client/{DiscountCodeDisclosure-DIj1T59K.mjs → DiscountCodeDisclosure-CU67Q4vH.mjs} +1 -1
  272. package/dist/client/{EventCombined.client-BWVNlXTx.mjs → EventCombined.client-a02TXUgg.mjs} +233 -348
  273. package/dist/client/{EventListing.client-DVFCDe3i.mjs → EventListing.client-99qx7jFl.mjs} +2 -2
  274. package/dist/client/{LeafletStaticMap-BY5mIHw9.mjs → LeafletStaticMap-CWzcq73L.mjs} +1 -1
  275. package/dist/client/{accordion-CK29E8rG.mjs → accordion-D1nb3-Oj.mjs} +1 -1
  276. package/dist/client/{bookingForm-DFvnet-N.mjs → bookingForm-BGrmLhaO.mjs} +5 -5
  277. package/dist/client/bookings.mjs +10555 -10475
  278. package/dist/client/{carousel-BVU5NQlb.mjs → carousel-DSmOx3ad.mjs} +1 -1
  279. package/dist/client/{cart-BNItcZVa.mjs → cart-COWeOIUk.mjs} +3 -3
  280. package/dist/client/{checkout-Bu6iCdkP.mjs → checkout-CeysaIJK.mjs} +3 -3
  281. package/dist/client/client.mjs +58968 -57441
  282. package/dist/client/{context-BImarOAq.mjs → context-DBzX85Xc.mjs} +46 -18
  283. package/dist/client/dates-DCYhZBlW.mjs +264 -0
  284. package/dist/client/{eventCalendar-DS2h-UXD.mjs → eventCalendar-BgsN73Ul.mjs} +21 -44
  285. package/dist/client/{eventCombined-Drt4Oq9p.mjs → eventCombined-DcZQAMQP.mjs} +3 -3
  286. package/dist/client/{eventDetails-Bl2vWgTX.mjs → eventDetails-BWwGJ54l.mjs} +131 -51
  287. package/dist/client/{eventListing-CS7PHY7v.mjs → eventListing-DqYqV8vp.mjs} +3 -3
  288. package/dist/client/{eventRegistration-D-j8eNy2.mjs → eventRegistration-DQGDgu_e.mjs} +1122 -803
  289. package/dist/client/{form-RMpoLTyr.mjs → form-ClfpasVT.mjs} +2 -2
  290. package/dist/client/{headerSection-BYE3Lb3k.mjs → headerSection-BuOMe98N.mjs} +2 -2
  291. package/dist/client/hooks.mjs +9630 -9526
  292. package/dist/client/{locationMap-BxSr7Kkh.mjs → locationMap-CEqu_sfa.mjs} +2 -2
  293. package/dist/client/{newsletterForm-DerbXwFC.mjs → newsletterForm-IbrHjMxy.mjs} +2 -2
  294. package/dist/client/pricing-xj7MPZlK.mjs +314 -0
  295. package/dist/client/{productDetail-4SZCLhAf.mjs → productDetail-vxqTt5Xj.mjs} +3 -3
  296. package/dist/client/{productList-D7AP4GNq.mjs → productList-OTdZu8sb.mjs} +3 -3
  297. package/dist/client/{propsDecoder-pzBeCh14.mjs → propsDecoder-CY9gGEF7.mjs} +786 -1194
  298. package/dist/client/rendering/client.mjs +11481 -10469
  299. package/dist/client/rendering/islands.mjs +17 -17
  300. package/dist/client/rendering.mjs +26871 -25232
  301. package/dist/client/{scrollToBlock-CduAKf8T.mjs → scrollToBlock--BFV6kl-.mjs} +1 -1
  302. package/dist/client/{shop-Cp5p_kGe.mjs → shop-CP4YbDL9.mjs} +6 -6
  303. package/dist/client/{shop-commerce-DicXYaYX.mjs → shop-commerce-APs4XBXE.mjs} +5 -5
  304. package/dist/client/{shop-commerce-store-CGWnpY4K.mjs → shop-commerce-store-CAVLxLFr.mjs} +1 -1
  305. package/dist/client/{shopShared-BDf9ljkm.mjs → shopShared-BnSRrwXI.mjs} +3 -3
  306. package/dist/client/{useEventFilters-DeeyGYuk.mjs → useEventFilters-1a1by4c8.mjs} +33 -18
  307. package/dist/preview-next/before-render.mjs +186 -148
  308. package/dist/preview-next/client/runtime.mjs +4 -4
  309. package/dist/preview-next/keepAlive.mjs +186 -148
  310. package/dist/preview-next/middleware.mjs +186 -148
  311. package/dist/{previewAuthStore-DbqBol0V.mjs → previewAuthStore-BkEgnYPP.mjs} +186 -148
  312. package/dist/{sdk-runtime-19MO27F0.mjs → sdk-runtime-DwGfsT0S.mjs} +2 -2
  313. package/dist/{separator-DaPLtJ1f.mjs → separator-BeqDLneQ.mjs} +1 -1
  314. package/dist/server/components.mjs +53243 -51879
  315. package/dist/server/config-validation.mjs +1015 -906
  316. package/dist/server/config.mjs +1019 -910
  317. package/dist/server/data.mjs +10304 -10200
  318. package/dist/server/index.mjs +217 -198
  319. package/dist/server/next/tags.mjs +18 -4
  320. package/dist/server/next.mjs +62787 -61617
  321. package/dist/server/page-converter.mjs +797 -917
  322. package/dist/server/prebuild.mjs +1 -1
  323. package/dist/server/rendering/server.mjs +52557 -51365
  324. package/dist/server/rendering.mjs +54373 -53054
  325. package/dist/server/routing.mjs +13274 -13142
  326. package/dist/server/server.mjs +1076 -1154
  327. package/dist/server/theme-bridge.mjs +69 -9
  328. package/dist/server/theme.mjs +27 -8
  329. package/dist/styles/index.css +32 -1
  330. package/package.json +1 -1
  331. package/dist/_dts/api/src/publicExperience/wholeSeriesEndpoints.d.ts +0 -65
  332. package/dist/_dts/api/src/publicWholeSeriesEndpointDefinitions.d.ts +0 -20
  333. package/dist/_dts/api/src/sdk-event-pricing.d.ts +0 -61
  334. package/dist/_dts/blocks/src/system/blocks/events/whole-series/index.d.ts +0 -3
  335. package/dist/_dts/blocks/src/system/blocks/events/whole-series/pricing.d.ts +0 -50
  336. package/dist/_dts/blocks/src/system/blocks/events/whole-series/schemas.d.ts +0 -135
  337. package/dist/_dts/blocks/src/system/blocks/events/whole-series/types.d.ts +0 -87
  338. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCapacity.d.ts +0 -48
  339. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/pricing.d.ts +0 -17
  340. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/utils.d.ts +0 -100
  341. package/dist/_dts/sdk/src/client/wholeSeriesReadOperations.d.ts +0 -11
  342. package/dist/_dts/sdk/src/public-api/wholeSeriesContracts.d.ts +0 -2
  343. /package/dist/_dts/blocks/src/system/runtime/nodes/events/{shared → domain}/destination.d.ts +0 -0
@@ -1,29 +1,27 @@
1
1
  import type { CalendarDate } from '../../../../../calendar/src/index';
2
- export type CalendarLoadScope = Readonly<{
3
- anchorDate: CalendarDate;
4
- filtersKey: string;
5
- }>;
6
- export type CalendarEventCacheLoadState = Readonly<{
7
- kind: 'idle';
2
+ import type { PublicEvent } from '../../blocks/events/shared/types';
3
+ import { type CalendarWindowPage, type CalendarMonthWindow, type CalendarSourceCursor } from '../../blocks/events/shared/calendarWindow';
4
+ type MonthState = Readonly<{
5
+ events: readonly PublicEvent[];
6
+ }> & (Readonly<{
7
+ kind: 'partial';
8
+ continuation: CalendarRequest;
8
9
  }> | Readonly<{
9
10
  kind: 'loading';
10
- scope: CalendarLoadScope;
11
- }> | Readonly<{
12
- kind: 'error';
13
- scope: CalendarLoadScope;
14
- error: Error;
15
- }>;
16
- export type CalendarEventCacheLoadAction = Readonly<{
17
- type: 'started';
18
- scope: CalendarLoadScope;
11
+ request: CalendarRequest;
19
12
  }> | Readonly<{
20
- type: 'succeeded';
21
- scope: CalendarLoadScope;
13
+ kind: 'ready';
22
14
  }> | Readonly<{
23
- type: 'failed';
24
- scope: CalendarLoadScope;
15
+ kind: 'failed';
25
16
  error: Error;
17
+ continuation: CalendarRequest;
18
+ }>);
19
+ export type CalendarRequest = Readonly<{
20
+ months: readonly string[];
21
+ 'window': CalendarMonthWindow;
22
+ cursor?: CalendarSourceCursor;
26
23
  }>;
24
+ export type CalendarCacheState = ReadonlyMap<string, MonthState>;
27
25
  export type CalendarViewLoadState = Readonly<{
28
26
  kind: 'idle';
29
27
  }> | Readonly<{
@@ -32,6 +30,24 @@ export type CalendarViewLoadState = Readonly<{
32
30
  kind: 'error';
33
31
  error: Error;
34
32
  }>;
35
- export declare function calendarEventCacheLoadReducer(state: CalendarEventCacheLoadState, action: CalendarEventCacheLoadAction): CalendarEventCacheLoadState;
36
- export declare function projectCalendarLoadState(state: CalendarEventCacheLoadState, scope: CalendarLoadScope): CalendarViewLoadState;
37
- export declare function toCalendarEventCacheLoadError(error: unknown): Error;
33
+ export type CalendarCacheAction = Readonly<{
34
+ kind: 'started';
35
+ request: CalendarRequest;
36
+ }> | Readonly<{
37
+ kind: 'page';
38
+ request: CalendarRequest;
39
+ page: CalendarWindowPage;
40
+ }> | Readonly<{
41
+ kind: 'failed';
42
+ request: CalendarRequest;
43
+ error: Error;
44
+ cursor?: CalendarSourceCursor;
45
+ }>;
46
+ export declare function calendarMonthKey(date: CalendarDate): string;
47
+ export declare function calendarWindowMonths(date: CalendarDate, radius: number): readonly string[];
48
+ export declare function seedCalendarWindow(page: CalendarWindowPage): CalendarCacheState;
49
+ export declare function planCalendarRequest(state: CalendarCacheState, months: readonly string[], retry: boolean): CalendarRequest | null;
50
+ export declare function calendarCacheReducer(state: CalendarCacheState, action: CalendarCacheAction): CalendarCacheState;
51
+ export declare function selectCalendarEvents(state: CalendarCacheState, months: readonly string[]): PublicEvent[];
52
+ export declare function projectCalendarLoadState(state: CalendarCacheState, months: readonly string[]): CalendarViewLoadState;
53
+ export {};
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import { type BlockApiConfig } from '../api';
3
3
  import type { EventRegistrationClientProps } from '../nodes/event-registration/types';
4
4
  import { useEventRegistrationWizard } from '../nodes/event-registration/useEventRegistrationWizard';
5
+ import type { EventRegistrationPageSurfaceSubject } from '../nodes/event-registration/eventScope';
5
6
  import type { HeadlessEventRegistrationFlow } from '../nodes/event-registration/event-registration.headless.state';
6
7
  import { createEventRegistrationBlockApiConfig } from '../nodes/event-registration/event-registration.headless.state';
7
8
  export type { BlockApiConfig };
@@ -11,6 +12,12 @@ export type { EventRegistrationSubmitOptions, EventRegistrationSubmitResult, } f
11
12
  export type HeadlessEventRegistrationFlowOptions = Readonly<{
12
13
  anchorId?: string;
13
14
  occurrenceContext?: EventRegistrationClientProps['occurrenceContext'];
15
+ /**
16
+ * The Event page surface this flow belongs to. A whole-series journey needs
17
+ * it: the subject names the offering and the runs on offer, which is how the
18
+ * flow narrows occurrence-grained events down to one run.
19
+ */
20
+ subject?: EventRegistrationPageSurfaceSubject | null;
14
21
  events?: readonly NonNullable<EventRegistrationClientProps['events']>[number][];
15
22
  maxTickets?: string | number;
16
23
  spamProtectionEnabled?: boolean;
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import type { ResolvedWholeSeriesPricingState } from '../../../blocks/events/whole-series';
2
+ import { type PublicManagedEventPricing } from '../../../../../../core/src/index';
3
3
  type WholeSeriesPricingDisplayProps = {
4
- pricing: ResolvedWholeSeriesPricingState;
4
+ pricing: PublicManagedEventPricing;
5
5
  acceptedItems: readonly string[];
6
6
  };
7
7
  export declare function WholeSeriesPricingDisplay({ pricing, acceptedItems, }: WholeSeriesPricingDisplayProps): React.JSX.Element;
@@ -1,4 +1,5 @@
1
- import type { PublicEvent } from '../../../blocks/events/shared/types';
1
+ import { type WholeSeriesBookingPhase } from '../../../../../../core/src/index';
2
+ import type { PublicEvent, PublicRunSession, PublicWholeSeriesRun, PublicWholeSeriesRunLifecycle } from '../../../blocks/events/shared/types';
2
3
  import { type EventRegistrationPageSurfaceSubject } from '../event-registration/eventScope';
3
4
  export { filterPassesForEvent, filterMembershipsForEvent, } from '../events/shared/eventProductEligibility';
4
5
  export type OccurrenceContextLike = {
@@ -28,11 +29,22 @@ export type EventDetailsSelection = Readonly<{
28
29
  timeZone: string;
29
30
  }> | Readonly<{
30
31
  kind: 'wholeSeries';
31
- phase: 'upcoming' | 'inProgress' | 'completed';
32
+ /**
33
+ * Where the run sits in its own life, and whether it still takes
34
+ * bookings — both from the run itself, re-read against the render clock.
35
+ *
36
+ * The run is the authority for these. Deriving them from whichever
37
+ * occurrence rows arrived is how this block came to say bookings were
38
+ * open on a run the page's own booking panel had already called
39
+ * cancelled.
40
+ */
41
+ lifecycle: PublicWholeSeriesRunLifecycle;
42
+ bookingPhase: WholeSeriesBookingPhase;
32
43
  mode: 'selected' | 'next' | 'completed';
33
44
  selected: WholeSeriesPublicEvent;
34
- otherDates: WholeSeriesPublicEvent[];
35
- sessions: readonly [WholeSeriesPublicEvent, ...WholeSeriesPublicEvent[]];
45
+ run: PublicWholeSeriesRun;
46
+ /** Every session of the run, in schedule order, cancellations included. */
47
+ sessions: readonly PublicRunSession[];
36
48
  timeZone: string;
37
49
  }>;
38
50
  export declare function selectEventDetails(args: {
@@ -1,12 +1,10 @@
1
1
  import React from 'react';
2
+ import type { EventRegistrationErrorAction } from '../../../../../../commerce/src/purchase/index';
2
3
  type ErrorStepProps = {
3
4
  message: string;
4
5
  onRetry: () => void;
6
+ action?: EventRegistrationErrorAction;
7
+ canJoinWaitlist?: boolean;
5
8
  };
6
- /**
7
- * Error Step
8
- *
9
- * Displays an error message with a retry button when registration fails.
10
- */
11
9
  export declare const ErrorStep: React.FC<ErrorStepProps>;
12
10
  export {};
@@ -12,8 +12,10 @@ export declare function resolveDetailsButtonText(input: Readonly<{
12
12
  hasWaitlistClaim: boolean;
13
13
  fallbackText: string;
14
14
  }>): string;
15
- export declare function EventRegistrationWizardActions(props: {
15
+ type WizardActionsProps = Readonly<{
16
16
  wizard: UseEventRegistrationWizardResult;
17
17
  buttonText: string;
18
18
  buttonClass: string;
19
- }): React.JSX.Element | null;
19
+ }>;
20
+ export declare function EventRegistrationWizardActions(props: WizardActionsProps): React.JSX.Element | null;
21
+ export {};
@@ -20,7 +20,7 @@ type PaymentSelectionStepProps = {
20
20
  /** Whether the user is authenticated via portal bearer token */
21
21
  isAuthenticated?: boolean;
22
22
  creditState?: PortalCreditState;
23
- directPaymentTotalCents?: number;
23
+ directPaymentTotalCents: number;
24
24
  manualDiscountPending?: boolean;
25
25
  /** Current canonical selection from wizard state */
26
26
  selectedSelection: PaymentSelection;
@@ -1,4 +1,5 @@
1
1
  import type { DirectCheckoutCollectionOptionKind, PaymentMethod } from '../../api/types';
2
+ import type { EventRegistrationErrorAction } from '../../../../../../commerce/src/purchase/index';
2
3
  import type { EventRegistrationDirectPaymentOption, EventRegistrationDirectPaymentSelectionState } from './eventPaymentOptions';
3
4
  import type { EventRegistrationPageSurfaceSubject } from './eventScope';
4
5
  import type { EligibilityData, EventTicketSelectionLine, FormData, Guest, GuestErrors, OccurrenceContext, PaymentSelection, PaymentStepState, PublicEvent, RegistrationEvent, RegistrationResult } from './types';
@@ -52,6 +53,7 @@ export type EventRegistrationFlowStatus = Readonly<{
52
53
  }> | Readonly<{
53
54
  tag: 'error';
54
55
  message: string;
56
+ action?: EventRegistrationErrorAction;
55
57
  }>;
56
58
  export type EventRegistrationFlowView = Readonly<{
57
59
  kind: 'empty';
@@ -102,8 +104,8 @@ export type EventRegistrationTicketsModel = Readonly<{
102
104
  max: number;
103
105
  selections: readonly EventTicketSelectionLine[];
104
106
  summaryLines: UseEventRegistrationWizardResult['ticketSelectionSummaryLines'];
105
- subtotalCents: number;
106
- selectedTicketTypeId: string | null;
107
+ subtotalCents: number | null;
108
+ selectedPricingOptionId: string | null;
107
109
  selectedTicketType: SelectableEventTicketType | null;
108
110
  visibleTicketTypes: readonly SelectableEventTicketType[];
109
111
  selectionRequired: boolean;
@@ -193,7 +195,7 @@ export type EventRegistrationTerminalModel = Readonly<{
193
195
  export type EventRegistrationFlowActions = Readonly<{
194
196
  selectEvent: (event: RegistrationEvent) => void;
195
197
  selectAttendanceMode: (mode: 'in_person' | 'online' | null) => void;
196
- selectTicketType: (ticketTypeId: string | null) => void;
198
+ selectTicketType: (pricingOptionId: string | null) => void;
197
199
  setTicketSelections: (lines: readonly EventTicketSelectionLine[]) => void;
198
200
  setTicketsCount: (count: number) => void;
199
201
  updateAttendee: (values: FormData) => void;
@@ -10,7 +10,7 @@ export declare function resolveEventRegistrationSubmitPlan(input: Readonly<{
10
10
  eventRequiresPayment: boolean;
11
11
  canJoinWaitlist?: boolean | null;
12
12
  }>): EventRegistrationSubmitPlan;
13
- export declare function resolveHeadlessEventRegistrationStatus(wizard: Pick<UseEventRegistrationWizardResult, 'step' | 'registrationResult' | 'errorMessage'>): EventRegistrationFlowStatus;
13
+ export declare function resolveHeadlessEventRegistrationStatus(wizard: Pick<UseEventRegistrationWizardResult, 'step' | 'registrationResult' | 'errorMessage'> & Partial<Pick<UseEventRegistrationWizardResult, 'errorAction'>>): EventRegistrationFlowStatus;
14
14
  export declare function resolveHeadlessEventRegistrationView(wizard: Readonly<Pick<UseEventRegistrationWizardResult, 'step' | 'scopedEvents' | 'occurrenceContext' | 'registrationResult' | 'errorMessage'> & {
15
15
  api: Pick<UseEventRegistrationWizardResult['api'], 'config'>;
16
16
  }>): EventRegistrationFlowView;
@@ -1,6 +1,6 @@
1
1
  import { type EventPageSurfaceSubject, type EventPageSurfaceSubjectParseError, type EventOfferingId, type EventSeriesId, type Result } from '../../../../../../core/src/index';
2
2
  import { z } from 'zod';
3
- export declare const unsupportedEventRegistrationPageSurfaceSubjectReasons: readonly ["unsupportedSubject", "invalidEventSeriesId", "invalidEventSeriesBookingScope", "invalidEventOfferingId"];
3
+ export declare const unsupportedEventRegistrationPageSurfaceSubjectReasons: readonly ["unsupportedSubject", "invalidEventSeriesId", "invalidEventSeriesBookingScope", "invalidEventOfferingId", "invalidEventOfferingBookingScope", "invalidEventOfferingCatalogue"];
4
4
  export type UnsupportedEventRegistrationPageSurfaceSubjectReason = (typeof unsupportedEventRegistrationPageSurfaceSubjectReasons)[number];
5
5
  export type EventRegistrationPageSurfaceSubject = EventPageSurfaceSubject | Readonly<{
6
6
  kind: 'unsupported';
@@ -59,6 +59,7 @@ export type UseEligibilityResult = {
59
59
  creditState: PortalCreditState;
60
60
  };
61
61
  export declare function useEligibility(params: {
62
+ refreshKey?: number;
62
63
  enabled: boolean;
63
64
  subject: RegistrationSubject | null;
64
65
  attendanceMode?: 'in_person' | 'online' | null;
@@ -67,6 +68,7 @@ export declare function useEligibility(params: {
67
68
  subjectEmail: string | null;
68
69
  }): UseEligibilityResult;
69
70
  export declare function useEligibilityWithDeps(params: {
71
+ refreshKey?: number;
70
72
  enabled: boolean;
71
73
  subject: RegistrationSubject | null;
72
74
  attendanceMode?: 'in_person' | 'online' | null;
@@ -0,0 +1,15 @@
1
+ import type { EligibilityData } from './types';
2
+ export declare function resolveRegistrationAvailabilityBlocker(input: Readonly<{
3
+ hasWaitlistClaim: boolean;
4
+ eligibility: EligibilityData | null;
5
+ eligibilityError: string | null;
6
+ }>): string | null;
7
+ export declare function resolvePricingSelectionBlocker(input: Readonly<{
8
+ selectionRequired: boolean;
9
+ hasValidSelection: boolean;
10
+ slidingScaleSelectionMessage: string | null;
11
+ }>): string | null;
12
+ export declare function isSoldOutWithoutWaitlist(input: Readonly<{
13
+ hasWaitlistClaim: boolean;
14
+ eligibility: EligibilityData | null;
15
+ }>): boolean;
@@ -1,5 +1,5 @@
1
1
  import type { DiscountContext } from '../../api/types';
2
- import type { EligibilityData, EligibilityEventTicketType, OccurrenceContext, PaymentSelection, PublicEventTicketType, RegistrationEvent, RegistrationSubject } from './types';
2
+ import type { EligibilityData, OccurrenceContext, PaymentSelection, PublicEventPricingOption, RegistrationEvent, RegistrationSubject } from './types';
3
3
  export type RegistrationTarget = Readonly<{
4
4
  subject: RegistrationSubject;
5
5
  selectedEventId: string | null;
@@ -16,7 +16,7 @@ export declare function resolveRegistrationTarget(input: Readonly<{
16
16
  }>): RegistrationTarget | null;
17
17
  export declare function resolveEventRequiresPayment(input: Readonly<{
18
18
  eligibility: Pick<EligibilityData, 'requiresPayment'> | null;
19
- selectedTicketType: Pick<EligibilityEventTicketType | PublicEventTicketType, 'priceAmount'> | null;
19
+ selectedTicketType: Pick<PublicEventPricingOption, 'priceAmount'> | null;
20
20
  event: Pick<RegistrationEvent, 'pricing'> | null;
21
21
  }>): boolean;
22
22
  export declare function resolveDiscountContext(input: Readonly<{
@@ -0,0 +1,5 @@
1
+ import { type EventRegistrationErrorAction } from '../../../../../../commerce/src/purchase/index';
2
+ export declare function registrationErrorPresentation(error: unknown): Readonly<{
3
+ message: string;
4
+ action: EventRegistrationErrorAction;
5
+ }>;
@@ -0,0 +1,25 @@
1
+ import type { EventRegistrationErrorAction } from '../../../../../../commerce/src/purchase/index';
2
+ import type { EligibilityData, EventTicketSelectionLine, RegistrationEvent, RegistrationStep } from './types';
3
+ import type { RegistrationFlowAction } from './registrationStateMachine';
4
+ import type { EventRegistrationStatusReference } from '../../api/types';
5
+ export declare function resolveRegistrationRecoveryAction(step: RegistrationStep, action: EventRegistrationErrorAction): EventRegistrationErrorAction;
6
+ export declare function canRecoverToWaitlist(eligibility: EligibilityData | null): boolean;
7
+ export declare function shouldRefreshAfterRegistrationError(step: RegistrationStep, action: EventRegistrationErrorAction, enabled: boolean): boolean;
8
+ export declare function resetRegistrationAfterExpiry(input: Readonly<{
9
+ hasPreSelectedContext: boolean;
10
+ preSelectedEvent: RegistrationEvent | null;
11
+ dispatchFlow: (action: RegistrationFlowAction) => void;
12
+ setSelectedTicketLines: (lines: EventTicketSelectionLine[]) => void;
13
+ setSelectedSlidingAmountInput: (value: string) => void;
14
+ setSelectedAttendanceMode: (mode: 'online' | 'in_person' | null) => void;
15
+ setErrorMessage: (message: string) => void;
16
+ setPendingRegistrationReference: (reference: EventRegistrationStatusReference | null) => void;
17
+ }>): void;
18
+ /** Recovery never starts another payment. Unknown payment outcomes go to the portal. */
19
+ export declare function recoverRegistrationError(action: EventRegistrationErrorAction, handlers: Readonly<{
20
+ canJoinWaitlist?: boolean;
21
+ refreshOptions: () => void;
22
+ clearError: () => void;
23
+ setStep: (step: RegistrationStep) => void;
24
+ reset: () => void;
25
+ }>): void;
@@ -1,6 +1,17 @@
1
- import type { PublicWholeSeriesOffering } from '../../../blocks/events/whole-series';
1
+ import type { PublicEventRunGroup } from '../../../blocks/events/shared/runGrouping';
2
2
  import type { PublicEvent, RegistrationEvent } from './types';
3
3
  export declare function toRegistrationEvent(event: PublicEvent): RegistrationEvent;
4
4
  export declare function toRegistrationEvents(events: readonly PublicEvent[]): RegistrationEvent[];
5
- export declare function toWholeSeriesRegistrationEvent(offering: PublicWholeSeriesOffering): RegistrationEvent;
6
- export declare function toWholeSeriesRegistrationEvents(offerings: readonly PublicWholeSeriesOffering[]): RegistrationEvent[];
5
+ /**
6
+ * Project one whole-series run onto the registration surface.
7
+ *
8
+ * Capacity, pricing, payment terms and consent come straight off the canonical
9
+ * Event record; only the schedule is widened from the single occurrence to the
10
+ * live run. A run without live sessions has no registration event.
11
+ */
12
+ export declare function toWholeSeriesRegistrationEvent(group: PublicEventRunGroup): RegistrationEvent | null;
13
+ export declare function toWholeSeriesRegistrationEvents(events: readonly PublicEvent[]): RegistrationEvent[];
14
+ /** An occurrence-page context must not replace a whole run's booking start. */
15
+ export declare function getRegistrationStartAt(event: Pick<RegistrationEvent, 'registrationSubject' | 'startsAt'> | null | undefined, occurrenceContext: Readonly<{
16
+ startsAt: string;
17
+ }> | null | undefined): string | undefined;
@@ -1,36 +1,19 @@
1
- import type { PublicWholeSeriesOffering } from '../../../blocks/events/whole-series';
2
1
  import type { PublicEvent } from '../../../blocks/events/shared/types';
3
- import { type EventRegistrationScopeContext, type EventRegistrationScopeableEvent, type EventRegistrationPageSurfaceSubject } from './eventScope';
2
+ import { type PublicEventRunGroup } from '../../../blocks/events/shared/runGrouping';
3
+ import { type EventRegistrationPageSurfaceSubject } from './eventScope';
4
4
  export type EventRegistrationSurfacePlan = Readonly<{
5
5
  kind: 'occurrence';
6
6
  events: readonly PublicEvent[];
7
7
  }> | Readonly<{
8
8
  kind: 'wholeSeries';
9
- offerings: readonly PublicWholeSeriesOffering[];
9
+ runs: readonly PublicEventRunGroup[];
10
10
  }> | Readonly<{
11
11
  kind: 'unavailableWholeSeries';
12
12
  }> | Readonly<{
13
13
  kind: 'mixedBookingScopes';
14
14
  }>;
15
- type EventRegistrationSurfaceScopeInput<TEvent extends EventRegistrationScopeableEvent> = EventRegistrationScopeContext & Readonly<{
16
- events: readonly TEvent[];
17
- wholeSeriesOffering?: PublicWholeSeriesOffering | null;
18
- }>;
19
- export type EventRegistrationSurfaceScopePlan<TEvent extends EventRegistrationScopeableEvent> = Readonly<{
20
- kind: 'selectedRun';
21
- events: readonly TEvent[];
22
- offering: PublicWholeSeriesOffering;
23
- }> | Readonly<{
24
- kind: 'context';
25
- events: readonly TEvent[];
26
- }> | Readonly<{
27
- kind: 'invalidSelectedRun';
28
- }>;
29
- export declare function planEventRegistrationScope<TEvent extends EventRegistrationScopeableEvent>(input: EventRegistrationSurfaceScopeInput<TEvent>): EventRegistrationSurfaceScopePlan<TEvent>;
30
15
  export declare function planEventRegistrationSurface(input: Readonly<{
31
16
  events: readonly PublicEvent[];
32
- wholeSeriesOfferings: readonly PublicWholeSeriesOffering[];
33
- wholeSeriesOffering?: PublicWholeSeriesOffering | null;
34
17
  occurrenceContext?: Readonly<{
35
18
  id: string;
36
19
  seriesId: string;
@@ -40,4 +23,3 @@ export declare function planEventRegistrationSurface(input: Readonly<{
40
23
  }> | null;
41
24
  subject?: EventRegistrationPageSurfaceSubject | null;
42
25
  }>): EventRegistrationSurfacePlan;
43
- export {};
@@ -1,5 +1,9 @@
1
1
  import type { EligibilityData, PaymentSelection, RegistrationEvent, RegistrationStep, RegistrationSubject } from './types';
2
2
  type PortalAuthState = 'checking' | 'authenticated' | 'unauthenticated';
3
+ export declare function getEventSelectionDefaults(event: RegistrationEvent): Readonly<{
4
+ slidingAmountInput: string;
5
+ attendanceMode: 'online' | 'in_person' | null;
6
+ }>;
3
7
  export declare function parseCurrencyInputToCents(value: string): number | null;
4
8
  export declare function formatCentsAsCurrencyInput(amount: number): string;
5
9
  export declare function getSlidingScaleForEvent(event: RegistrationEvent | null): Readonly<{
@@ -46,6 +46,3 @@ export declare function buildSelectedSiteCreditPreview(input: Readonly<{
46
46
  creditState: PortalCreditState;
47
47
  manualDiscountPending: boolean;
48
48
  }>): EventRegistrationSiteCreditPreview;
49
- export declare function resolveDirectPaymentTotalCents(explicitTotalCents: number | undefined, eligibility: Readonly<{
50
- price: number | null;
51
- }> | null): number;
@@ -1,12 +1,21 @@
1
1
  import type { EventTicketSelectionLine } from './types';
2
- import type { SelectableEventTicketType } from './utils';
3
2
  export declare function normalizeTicketSelectionLines(lines: readonly EventTicketSelectionLine[]): EventTicketSelectionLine[];
4
3
  export declare function getTicketSelectionTotal(lines: readonly EventTicketSelectionLine[]): number;
5
- export declare function getTicketLineQuantity(lines: readonly EventTicketSelectionLine[], ticketTypeId: string | null): number;
6
- export declare function getSingleSelectedTicketTypeId(lines: readonly EventTicketSelectionLine[]): string | null;
4
+ export declare function getTicketLineQuantity(lines: readonly EventTicketSelectionLine[], pricingOptionId: string | null): number;
5
+ export declare function getSingleSelectedPricingOptionId(lines: readonly EventTicketSelectionLine[]): string | null;
6
+ export declare function hasValidPricingOptionSelection(input: Readonly<{
7
+ selectionRequired: boolean;
8
+ lines: readonly EventTicketSelectionLine[];
9
+ visibleOptions: readonly Readonly<{
10
+ pricingOptionId: string;
11
+ availability: Readonly<{
12
+ kind: 'available' | 'unavailable';
13
+ }>;
14
+ }>[];
15
+ }>): boolean;
7
16
  export declare function setTicketLineQuantity(input: Readonly<{
8
17
  lines: readonly EventTicketSelectionLine[];
9
- ticketTypeId: string | null;
18
+ pricingOptionId: string | null;
10
19
  quantity: number;
11
20
  }>): EventTicketSelectionLine[];
12
21
  export declare function getTicketTypeLineMax(input: Readonly<{
@@ -16,21 +25,10 @@ export declare function getTicketTypeLineMax(input: Readonly<{
16
25
  availableSpots: number | null | undefined;
17
26
  ticketTypeRemainingCapacity: number | null;
18
27
  }>): number;
19
- export declare function calculateTicketSelectionSubtotal(input: Readonly<{
20
- lines: readonly EventTicketSelectionLine[];
21
- ticketTypes: readonly Pick<SelectableEventTicketType, 'id' | 'priceAmount'>[];
22
- fallbackUnitPriceCents: number;
23
- }>): number;
24
28
  export type TicketSelectionSummaryLine = Readonly<{
25
- ticketTypeId: string | null;
29
+ pricingOptionId: string | null;
26
30
  label: string;
27
31
  quantity: number;
28
32
  unitPriceCents: number;
29
33
  subtotalCents: number;
30
34
  }>;
31
- export declare function buildTicketSelectionSummaryLines(input: Readonly<{
32
- lines: readonly EventTicketSelectionLine[];
33
- ticketTypes: readonly Pick<SelectableEventTicketType, 'id' | 'name' | 'priceAmount'>[];
34
- fallbackLabel: string;
35
- fallbackUnitPriceCents: number;
36
- }>): TicketSelectionSummaryLine[];
@@ -1,9 +1,10 @@
1
1
  import type { PublicEventPricing } from '../../../../../../core/src/index';
2
- import type { PublicEvent, PublicEventTicketType, PublicEventTicketTypeAvailability } from '../../../blocks/events/shared/types';
2
+ import type { EventRegistrationPricingOption } from '../../../blocks/event-registration';
3
+ import type { PublicEvent, PublicEventPricingOption, PublicEventPricingOptionAvailability } from '../../../blocks/events/shared/types';
3
4
  import type { OccurrenceContext } from '../../../blocks/event-registration.shared';
4
5
  import type { PublicMembershipProductCollection, PublicPassProductCollection } from '../../../blocks/shop.shared';
5
- import type { PublicWholeSeriesOffering } from '../../../blocks/events/whole-series';
6
- import type { AvailablePass, AvailableMembership, DirectCheckoutCollectionOptionKind, EventTicketLineSummary, EligibilityEventTicketType } from '../../api/types';
6
+ import type { PublicRunSession } from '../../../blocks/events/shared/types';
7
+ import type { AvailablePass, AvailableMembership, DirectCheckoutCollectionOptionKind, EventTicketLineSummary } from '../../api/types';
7
8
  import type { BlockBookingPaymentTerms } from '../../../blocks/shared/bookingPaymentTerms';
8
9
  import type { EventRegistrationPageSurfaceSubject } from './eventScope';
9
10
  import type { BlockButtonRole } from '../../../constants/buttonRoles';
@@ -38,7 +39,7 @@ export type RegistrationResult = {
38
39
  };
39
40
  export type RegistrationAttendanceMode = 'in_person' | 'online';
40
41
  export type EventTicketSelectionLine = Readonly<{
41
- ticketTypeId: string | null;
42
+ pricingOptionId: string | null;
42
43
  quantity: number;
43
44
  }>;
44
45
  /**
@@ -61,15 +62,15 @@ export type EligibilityData = {
61
62
  /** Whether the selected event/ticket type currently requires payment. */
62
63
  requiresPayment: boolean;
63
64
  /** Persisted pricing mode for the underlying event series. */
64
- pricingMode?: 'single' | 'ticket_types' | 'sliding_scale';
65
+ pricingStrategy: EventRegistrationOptionsResponse['pricing']['strategy'];
65
66
  /** Canonical collection terms for the selected registration. */
66
67
  paymentTerms: BlockBookingPaymentTerms;
67
68
  /** Selected ticket type echoed back from the eligibility API, if any. */
68
- selectedTicketTypeId?: string | null;
69
+ selectedPricingOptionId?: string | null;
69
70
  /** Selected ticket-line pricing echoed back from the eligibility API. */
70
71
  ticketLines: EventTicketLineSummary[];
71
72
  /** Public ticket types available for selection in ticket-type mode. */
72
- ticketTypes?: EligibilityEventTicketType[];
73
+ ticketTypes: readonly EventRegistrationPricingOption[];
73
74
  /** Whether the event is currently full for the requested ticket count */
74
75
  isFull: boolean;
75
76
  /** Whether waitlists are enabled for this event */
@@ -106,20 +107,21 @@ export type EligibilityData = {
106
107
  /** Memberships available for purchase (upsell) */
107
108
  availableMemberships: AvailableMembership[];
108
109
  };
109
- export type { EligibilityEventTicketType, PublicEventTicketType, PublicEventTicketTypeAvailability, };
110
- export type RegistrationTicketType = Pick<PublicEventTicketType, 'id' | 'name' | 'description' | 'priceAmount' | 'isActive' | 'sortOrder' | 'capacityMode' | 'capacityLimit' | 'attendanceScope' | 'saleStartsAt' | 'saleEndsAt' | 'availability'>;
110
+ export type { PublicEventPricingOption, PublicEventPricingOptionAvailability };
111
+ export type RegistrationTicketType = Pick<EventRegistrationPricingOption, 'pricingOptionId' | 'name' | 'description' | 'priceAmount' | 'isActive' | 'sortOrder' | 'attendanceScope' | 'saleStartsAt' | 'saleEndsAt' | 'availability'>;
111
112
  export type RegistrationSubject = Readonly<{
112
113
  kind: 'occurrence';
113
114
  occurrenceId: string;
114
115
  }> | Readonly<{
115
116
  kind: 'wholeSeries';
116
117
  eventSeriesId: string;
117
- sessions: PublicWholeSeriesOffering['sessions'];
118
+ /** Ordered live booking sessions; cancellation history stays on PublicEvent.run. */
119
+ sessions: readonly PublicRunSession[];
118
120
  }>;
119
121
  export type RegistrationEvent = Pick<PublicEvent, 'seriesId' | 'title' | 'startsAt' | 'endsAt' | 'bookingAvailability' | 'deliveryMode' | 'attendanceModes' | 'capacity' | 'registeredCount' | 'availableSpots' | 'waitlistEnabled' | 'venue' | 'eventCategory' | 'teamMembers' | 'status' | 'timeZone' | 'paymentTerms' | 'consent' | 'requireGuestDetails' | 'acceptsPasses' | 'acceptsMemberships'> & Readonly<{
120
122
  selectionId: string;
121
123
  registrationSubject: RegistrationSubject;
122
- pricing: PublicEventPricing<RegistrationTicketType>;
124
+ pricing: PublicEventPricing;
123
125
  }>;
124
126
  /**
125
127
  * Payment selection state for the summary bar.
@@ -174,10 +176,6 @@ export type EventRegistrationClientProps = {
174
176
  occurrenceContext?: OccurrenceContext | null;
175
177
  subject?: EventRegistrationPageSurfaceSubject | null;
176
178
  events?: PublicEvent[] | null;
177
- /** Canonical whole-series runs used when the scoped Event books the full series. */
178
- wholeSeriesOfferings?: PublicWholeSeriesOffering[] | null;
179
- /** Targeted whole-series offering loaded for a native Event page surface. */
180
- wholeSeriesOffering?: PublicWholeSeriesOffering | null;
181
179
  maxTickets?: string;
182
180
  showVenue?: boolean;
183
181
  showCapacity?: boolean;
@@ -23,16 +23,20 @@ type EventRegistrationStripeReturnOptions = {
23
23
  };
24
24
  export type EventRegistrationStripeReturnDeps = Readonly<{
25
25
  usePaymentVerification: typeof usePaymentVerification;
26
- consumeReturnParams: () => Readonly<{
26
+ readReturnParams: () => Readonly<{
27
27
  registration: string | null;
28
28
  registration_attempt: string | null;
29
29
  session_id: string | null;
30
30
  }>;
31
+ clearReturnParams: () => void;
31
32
  scrollToBlock: typeof scrollToBlock;
32
33
  cleanupStaleRegistrations: typeof cleanupStaleRegistrations;
33
34
  clearPendingRegistration: typeof clearPendingRegistration;
34
35
  getPendingRegistration: typeof getPendingRegistration;
35
36
  }>;
36
- export declare function useEventRegistrationStripeReturn(options: EventRegistrationStripeReturnOptions): ReturnType<typeof usePaymentVerification>;
37
- export declare function useEventRegistrationStripeReturnWithDeps(options: EventRegistrationStripeReturnOptions, deps: EventRegistrationStripeReturnDeps): ReturnType<typeof usePaymentVerification>;
37
+ export type EventRegistrationStripeReturnResult = ReturnType<typeof usePaymentVerification> & Readonly<{
38
+ retryReturn?: () => void;
39
+ }>;
40
+ export declare function useEventRegistrationStripeReturn(options: EventRegistrationStripeReturnOptions): EventRegistrationStripeReturnResult;
41
+ export declare function useEventRegistrationStripeReturnWithDeps(options: EventRegistrationStripeReturnOptions, deps: EventRegistrationStripeReturnDeps): EventRegistrationStripeReturnResult;
38
42
  export {};
@@ -1,4 +1,5 @@
1
1
  import type { BlockApiClient } from '../../api';
2
+ import type { EventRegistrationErrorAction } from '../../../../../../commerce/src/purchase/index';
2
3
  import { savePendingRegistration } from './sessionStorage';
3
4
  import type { EventTicketSelectionLine, FormData, Guest, RegistrationResult, RegistrationStep, PaymentSelection } from './types';
4
5
  import type { PaymentMethod } from '../../api/types';
@@ -37,18 +38,23 @@ export type UseEventRegistrationSubmitInput = {
37
38
  claimToken: string | null;
38
39
  setPendingRegistrationReference: (reference: EventRegistrationStatusReference) => void;
39
40
  setStep: (step: RegistrationStep) => void;
41
+ setErrorAction?: (action: EventRegistrationErrorAction) => void;
40
42
  setRegistrationResult: (result: RegistrationResult) => void;
41
43
  setErrorMessage: (message: string) => void;
42
44
  };
43
45
  export type EventRegistrationSubmitDeps = Readonly<{
44
46
  savePendingRegistration: typeof savePendingRegistration;
45
- createCheckoutAttemptId: () => string;
47
+ /**
48
+ * Fresh UUID for one client-generated identity — a checkout attempt, or the
49
+ * registration command (issue 1273) keys the occurrence commit on.
50
+ */
51
+ createClientCommandId: () => string;
46
52
  }>;
47
- type CheckoutAttemptCryptoSource = Readonly<{
53
+ type ClientCommandIdCryptoSource = Readonly<{
48
54
  randomUUID?: () => string;
49
55
  getRandomValues: (bytes: Uint8Array<ArrayBuffer>) => Uint8Array<ArrayBuffer>;
50
56
  }>;
51
- export declare function createCheckoutAttemptId(cryptoSource?: CheckoutAttemptCryptoSource): string;
57
+ export declare function createClientCommandId(cryptoSource?: ClientCommandIdCryptoSource): string;
52
58
  export declare function useEventRegistrationSubmit(options: UseEventRegistrationSubmitInput): (method: PaymentMethod, passId?: string, membershipId?: string, selection?: PaymentSelection, submitOptions?: EventRegistrationSubmitOptions) => Promise<EventRegistrationSubmitResult>;
53
59
  export declare function useEventRegistrationSubmitWithDeps(options: UseEventRegistrationSubmitInput, deps: EventRegistrationSubmitDeps): (method: PaymentMethod, passId?: string, membershipId?: string, selection?: PaymentSelection, submitOptions?: EventRegistrationSubmitOptions) => Promise<EventRegistrationSubmitResult>;
54
60
  export {};