@riverbankcms/sdk 0.104.3 → 0.108.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 (302) hide show
  1. package/README.md +84 -51
  2. package/dist/{PreviewEditorSidebar-CBMhU9p_.mjs → PreviewEditorSidebar-BBT-kZAM.mjs} +1850 -1183
  3. package/dist/{PreviewEditorUI-C5KEw4M8.mjs → PreviewEditorUI-D69xNKT2.mjs} +10 -9
  4. package/dist/{PreviewQueryProvider-CStABBUh.mjs → PreviewQueryProvider-RRu7wyQ5.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-Iq12HjL7.mjs → SdkPreviewModeRuntime-CuDjXH6o.mjs} +2562 -457
  6. package/dist/{SiteChromeCustomizeContext-Cx0NMdyv.mjs → SiteChromeCustomizeContext-BQUY2dEk.mjs} +7689 -3196
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +36493 -1395
  8. package/dist/_dts/api/src/blocks.d.ts +41 -7
  9. package/dist/_dts/api/src/bookingConfig.d.ts +2 -0
  10. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +5 -1
  11. package/dist/_dts/api/src/bookingRecords.d.ts +180 -115
  12. package/dist/_dts/api/src/cache-tags.d.ts +3 -0
  13. package/dist/_dts/api/src/contentRuntime.d.ts +25 -16
  14. package/dist/_dts/api/src/courses.d.ts +68 -10
  15. package/dist/_dts/api/src/endpoints.d.ts +128 -0
  16. package/dist/_dts/api/src/footer-settings.d.ts +1 -0
  17. package/dist/_dts/api/src/footerSettings.d.ts +8 -0
  18. package/dist/_dts/api/src/index.d.ts +127 -124
  19. package/dist/_dts/api/src/navigation/contracts.d.ts +3 -3
  20. package/dist/_dts/api/src/previewContentContract.d.ts +4 -0
  21. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +9 -0
  22. package/dist/_dts/api/src/sdkContracts.d.ts +178 -6
  23. package/dist/_dts/api/src/siteBanner.d.ts +2 -2
  24. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +143 -55
  25. package/dist/_dts/api/src/siteOperations.d.ts +1 -0
  26. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +32 -4
  27. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +72 -47
  28. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +36 -4
  29. package/dist/_dts/blocks/src/definitions.d.ts +1 -1
  30. package/dist/_dts/blocks/src/portal/types.d.ts +25 -7
  31. package/dist/_dts/blocks/src/primitives/layout/Section.d.ts +0 -1
  32. package/dist/_dts/blocks/src/rendering/server.d.ts +1 -0
  33. package/dist/_dts/blocks/src/system/blocks/course-registration.d.ts +2 -2
  34. package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +2 -0
  35. package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +2 -0
  36. package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +4 -0
  37. package/dist/_dts/blocks/src/system/blocks/events/recurring-schedule-projection.d.ts +52 -0
  38. package/dist/_dts/blocks/src/system/blocks/events/recurring-schedule.d.ts +22 -0
  39. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +45 -0
  40. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +10 -0
  41. package/dist/_dts/blocks/src/system/blocks/feature-cards.d.ts +4 -1
  42. package/dist/_dts/blocks/src/system/blocks/index.d.ts +1 -0
  43. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +9 -0
  44. package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +8 -2
  45. package/dist/_dts/blocks/src/system/blocks/offerings-preview/index.d.ts +8 -8
  46. package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +24 -24
  47. package/dist/_dts/blocks/src/system/blocks/offerings-preview/scheduleSummary.d.ts +29 -0
  48. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +2 -1
  49. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +50 -0
  50. package/dist/_dts/blocks/src/system/blocks/site-footer.d.ts +9 -48
  51. package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
  52. package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
  53. package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +2 -5
  54. package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
  55. package/dist/_dts/blocks/src/system/designCapabilities.d.ts +1 -0
  56. package/dist/_dts/blocks/src/system/fragments/library/newsletterForm.d.ts +2 -2
  57. package/dist/_dts/blocks/src/system/icons/registry.d.ts +2 -1
  58. package/dist/_dts/blocks/src/system/icons/social.d.ts +5 -0
  59. package/dist/_dts/blocks/src/system/icons/svg.d.ts +1 -0
  60. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +2 -2
  61. package/dist/_dts/blocks/src/system/node/fragments/backgroundLayer.d.ts +13 -0
  62. package/dist/_dts/blocks/src/system/node/fragments/footerNav.d.ts +2 -0
  63. package/dist/_dts/blocks/src/system/node/fragments/styledCard.d.ts +3 -0
  64. package/dist/_dts/blocks/src/system/node/fragments/styledContainer.d.ts +4 -4
  65. package/dist/_dts/blocks/src/system/node/fragments/styledSection.d.ts +3 -12
  66. package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
  67. package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
  68. package/dist/_dts/blocks/src/system/runtime/blockComposition.d.ts +2 -0
  69. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +90 -6
  70. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +45 -3
  71. package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +1 -0
  72. package/dist/_dts/blocks/src/system/runtime/nodes/commerce/shared/display.d.ts +2 -2
  73. package/dist/_dts/blocks/src/system/runtime/nodes/course-details/logic.d.ts +2 -1
  74. package/dist/_dts/blocks/src/system/runtime/nodes/course-details/view.d.ts +1 -0
  75. package/dist/_dts/blocks/src/system/runtime/nodes/course-details.server.d.ts +2 -1
  76. package/dist/_dts/blocks/src/system/runtime/nodes/course-page-surface-scope.d.ts +17 -0
  77. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/types.d.ts +3 -0
  78. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +5 -0
  79. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.server.d.ts +1 -1
  80. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventScope.d.ts +9 -18
  81. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCalendar.interactive.d.ts +106 -0
  82. package/dist/_dts/blocks/src/system/runtime/nodes/events/RecurringSchedule.d.ts +11 -0
  83. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekBoardView.d.ts +7 -3
  84. package/dist/_dts/blocks/src/system/runtime/nodes/media.d.ts +3 -0
  85. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +11 -1
  86. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.server.d.ts +1 -1
  87. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +3 -0
  88. package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +6 -6
  89. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +1 -1
  90. package/dist/_dts/blocks/src/system/runtime/nodes/shop.interactive.d.ts +11 -5
  91. package/dist/_dts/blocks/src/system/runtime/nodes/shop.types.d.ts +2 -1
  92. package/dist/_dts/blocks/src/system/runtime/nodes/svg.d.ts +7 -0
  93. package/dist/_dts/blocks/src/system/types/link.d.ts +3 -3
  94. package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +14 -0
  95. package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +27 -8
  96. package/dist/_dts/content-editor/src/footerComposer.d.ts +56 -0
  97. package/dist/_dts/content-editor/src/hooks/useEntryActions.d.ts +1 -1
  98. package/dist/_dts/content-editor/src/hooks/useEntryMutations.d.ts +5 -5
  99. package/dist/_dts/content-editor/src/index.d.ts +2 -0
  100. package/dist/_dts/content-editor/src/primitives/PreviewRichTextEditor.d.ts +3 -1
  101. package/dist/_dts/content-editor/src/services/contentEntryServices.d.ts +20 -36
  102. package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +5 -1
  103. package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +11 -0
  104. package/dist/_dts/content-model/src/content-types/schema.d.ts +1 -1
  105. package/dist/_dts/content-model/src/definitions/shared.d.ts +3 -0
  106. package/dist/_dts/core/src/branded.d.ts +47 -0
  107. package/dist/_dts/core/src/dated-offering-settlement.d.ts +47 -0
  108. package/dist/_dts/core/src/editor-state.d.ts +4 -0
  109. package/dist/_dts/core/src/event-page-surface-subject.d.ts +44 -0
  110. package/dist/_dts/core/src/footer-composition.d.ts +143 -0
  111. package/dist/_dts/core/src/index.d.ts +51 -47
  112. package/dist/_dts/core/src/public-profile.d.ts +73 -0
  113. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +4398 -2859
  114. package/dist/_dts/db/src/schemas/forms.d.ts +10 -10
  115. package/dist/_dts/editor/src/primitives/rich-text/RichTextEditorSurface.d.ts +5 -0
  116. package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +1 -0
  117. package/dist/_dts/editor-blocks/src/block-editor/FeatureCardIconsPanel.d.ts +1 -1
  118. package/dist/_dts/editor-blocks/src/block-editor/GeneratedIconSetDialog.d.ts +4 -1
  119. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockCreation.d.ts +2 -1
  120. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockDuplication.d.ts +2 -1
  121. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockReorder.d.ts +2 -1
  122. package/dist/_dts/editor-blocks/src/block-editor/owner.d.ts +10 -0
  123. package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +1 -0
  124. package/dist/_dts/media-core/src/index.d.ts +2 -1
  125. package/dist/_dts/media-core/src/storagePathDomain.d.ts +47 -0
  126. package/dist/_dts/media-core/src/url.d.ts +1 -21
  127. package/dist/_dts/path-utils/src/index.d.ts +5 -0
  128. package/dist/_dts/preview-next/src/client/blocks/pageDesignRuntimePreview.d.ts +4 -2
  129. package/dist/_dts/preview-next/src/client/blocks/previewProjection/runtimeContentDecoration.d.ts +2 -1
  130. package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +2 -1
  131. package/dist/_dts/preview-next/src/client/preview/PreviewChromeLayer.d.ts +5 -0
  132. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +4 -9
  133. package/dist/_dts/preview-next/src/client/preview/PreviewEntryControllerProvider.d.ts +1 -0
  134. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +8 -11
  135. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +4 -9
  136. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +2 -6
  137. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +5 -9
  138. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +81 -43
  139. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.typography.d.ts +61 -0
  140. package/dist/_dts/preview-next/src/client/preview/previewErrorMessages.d.ts +4 -0
  141. package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +7 -17
  142. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +15 -8
  143. package/dist/_dts/preview-next/src/client/preview/typographyFontCatalog.d.ts +57 -0
  144. package/dist/_dts/sdk/src/cli/commands/pull.d.ts +1 -1
  145. package/dist/_dts/sdk/src/cli/commands/push/execute/theme.d.ts +4 -7
  146. package/dist/_dts/sdk/src/cli/commands/style.d.ts +24 -10
  147. package/dist/_dts/sdk/src/cli/content/reader.d.ts +1 -0
  148. package/dist/_dts/sdk/src/cli/site-commands/oneOffCommands.d.ts +3 -3
  149. package/dist/_dts/sdk/src/cli/sync/media.d.ts +16 -2
  150. package/dist/_dts/sdk/src/client/management/blocks.d.ts +14 -1
  151. package/dist/_dts/sdk/src/client/management/index.d.ts +2 -1
  152. package/dist/_dts/sdk/src/client/management/types.d.ts +147 -24
  153. package/dist/_dts/sdk/src/client/types.d.ts +2 -0
  154. package/dist/_dts/sdk/src/config/content-types.d.ts +2 -0
  155. package/dist/_dts/sdk/src/config/content-validation.d.ts +4 -0
  156. package/dist/_dts/sdk/src/config/types.d.ts +1 -1
  157. package/dist/_dts/sdk/src/config/validation.d.ts +3 -0
  158. package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
  159. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +23 -3
  160. package/dist/_dts/sdk/src/data/dataLoaderContext.d.ts +17 -0
  161. package/dist/_dts/sdk/src/data/dataLoaderValue.d.ts +36 -0
  162. package/dist/_dts/sdk/src/data/defineOwnDataProperty.d.ts +2 -0
  163. package/dist/_dts/sdk/src/data/executeCodeLoaders.d.ts +36 -40
  164. package/dist/_dts/sdk/src/data/index.d.ts +3 -3
  165. package/dist/_dts/sdk/src/data/resolveBlockData.d.ts +54 -0
  166. package/dist/_dts/sdk/src/data/types.d.ts +43 -78
  167. package/dist/_dts/sdk/src/navigation/index.d.ts +2 -0
  168. package/dist/_dts/sdk/src/next/index.d.ts +1 -0
  169. package/dist/_dts/sdk/src/next/redirect-destination.d.ts +1 -1
  170. package/dist/_dts/sdk/src/next/resolveTheme.d.ts +2 -1
  171. package/dist/_dts/sdk/src/next/types.d.ts +10 -1
  172. package/dist/_dts/sdk/src/public-api/contracts.d.ts +6 -10
  173. package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +2 -1
  174. package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +10 -5
  175. package/dist/_dts/sdk/src/rendering/helpers/loadPage.d.ts +6 -10
  176. package/dist/_dts/sdk/src/rendering/index.d.ts +1 -0
  177. package/dist/_dts/sdk/src/server.d.ts +4 -3
  178. package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
  179. package/dist/_dts/sdk/src/version.d.ts +1 -1
  180. package/dist/_dts/site-commands/src/capabilityGaps.d.ts +2 -2
  181. package/dist/_dts/site-commands/src/commands.d.ts +934 -40
  182. package/dist/_dts/theme-core/src/accordions/types.d.ts +2 -2
  183. package/dist/_dts/theme-core/src/buttons/generateDefaultButtonSystem.d.ts +5 -1
  184. package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +22 -0
  185. package/dist/_dts/theme-core/src/buttons/personalities/quiet-arrow.d.ts +17 -0
  186. package/dist/_dts/theme-core/src/buttons/personalities/two-tone-pill.d.ts +17 -0
  187. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +3 -3
  188. package/dist/_dts/theme-core/src/buttons/types.d.ts +12 -8
  189. package/dist/_dts/theme-core/src/cards/types.d.ts +3 -3
  190. package/dist/_dts/theme-core/src/data.d.ts +12 -0
  191. package/dist/_dts/theme-core/src/fonts/index.d.ts +1 -1
  192. package/dist/_dts/theme-core/src/fonts/types.d.ts +6 -0
  193. package/dist/_dts/theme-core/src/footer/mode.d.ts +15 -0
  194. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  195. package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +1 -1
  196. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +72 -54
  197. package/dist/_dts/theme-core/src/navigation/types.d.ts +1 -1
  198. package/dist/_dts/theme-core/src/palette/colors.d.ts +12 -0
  199. package/dist/_dts/theme-core/src/palette/curated/brand-led.d.ts +10 -5
  200. package/dist/_dts/theme-core/src/palette/curated/high-contrast.d.ts +6 -3
  201. package/dist/_dts/theme-core/src/palette/curated/index.d.ts +31 -236
  202. package/dist/_dts/theme-core/src/palette/curated/soft-natural.d.ts +8 -4
  203. package/dist/_dts/theme-core/src/palette/curated/types.d.ts +14 -12
  204. package/dist/_dts/theme-core/src/palette/curated/warm-dark.d.ts +4 -2
  205. package/dist/_dts/theme-core/src/palette/curated/warm-neutral.d.ts +8 -4
  206. package/dist/_dts/theme-core/src/palette/editorState.d.ts +33 -3
  207. package/dist/_dts/theme-core/src/palette/index.d.ts +0 -4
  208. package/dist/_dts/theme-core/src/palette/libraryModel.d.ts +12 -6
  209. package/dist/_dts/theme-core/src/palette/persistenceReadSource.d.ts +20 -72
  210. package/dist/_dts/theme-core/src/palette/resolveSelection.d.ts +29 -4
  211. package/dist/_dts/theme-core/src/palette/selection.d.ts +6 -4
  212. package/dist/_dts/theme-core/src/schema.d.ts +1307 -38
  213. package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +218 -158
  214. package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +5 -6
  215. package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +218 -158
  216. package/dist/_dts/theme-core/src/site-styles/compositionBudget.d.ts +1 -0
  217. package/dist/_dts/theme-core/src/site-styles/contentTemplateRuntimeCompiler.d.ts +2 -1
  218. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +161 -51
  219. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +6 -0
  220. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -2
  221. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +12 -1
  222. package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -1
  223. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +24 -1
  224. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +14 -48
  225. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +10 -23
  226. package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +15 -0
  227. package/dist/_dts/theme-core/src/site-styles/siteStyleThemeCompiler.d.ts +1 -2
  228. package/dist/_dts/theme-core/src/site-styles/siteStyleTypography.d.ts +456 -0
  229. package/dist/_dts/theme-core/src/site-styles/types.d.ts +52 -3
  230. package/dist/cli/index.mjs +4118 -2278
  231. package/dist/client/{DiscountCodeDisclosure-BXM73_E5.mjs → DiscountCodeDisclosure-D6TOf6Hi.mjs} +1 -1
  232. package/dist/client/{EventCombined.client-DT5elP7j.mjs → EventCombined.client-Dao3zxRk.mjs} +3 -3
  233. package/dist/client/{EventListing.client-pTYGfV9C.mjs → EventListing.client-B2NNt4y1.mjs} +2 -2
  234. package/dist/client/{LeafletStaticMap-dQrhlUe3.mjs → LeafletStaticMap-BhwFo16w.mjs} +1 -1
  235. package/dist/client/{MagicLinkForm-u6Dul4j5.mjs → MagicLinkForm-BWnB7cMR.mjs} +2 -2
  236. package/dist/client/{StepIndicator-nWqineJ2.mjs → StepIndicator-TzRiQ0BY.mjs} +2 -2
  237. package/dist/client/{accordion-CSJcTUyH.mjs → accordion-BPy-AJ4_.mjs} +1 -1
  238. package/dist/client/{bookingForm-C73wOuVa.mjs → bookingForm-BL4PGZds.mjs} +7 -7
  239. package/dist/client/bookings.mjs +382 -204
  240. package/dist/client/{buttons-DfYyqt8C.mjs → buttons-EBjyslaX.mjs} +265 -152
  241. package/dist/client/{carousel-fMBb0JSc.mjs → carousel-C2b7Cn9-.mjs} +1 -1
  242. package/dist/client/{cart-BtaCwT3S.mjs → cart-BQcbXIVD.mjs} +3 -3
  243. package/dist/client/{checkout-DkTwZSnh.mjs → checkout-DEmpGRJu.mjs} +3 -3
  244. package/dist/client/client.mjs +5019 -1886
  245. package/dist/client/{colorStyles-Wyl6JujD.mjs → colorStyles-jZS6KfkP.mjs} +1 -1
  246. package/dist/client/{colorTokenParts-dT8MISgJ.mjs → colorTokenParts-CMugwvX_.mjs} +3 -1
  247. package/dist/client/{courseRegistration-DnLmapJu.mjs → courseRegistration-BqRZPmsq.mjs} +56 -21
  248. package/dist/client/{eventCalendar-BvLOc9KY.mjs → eventCalendar-B8N_tSl5.mjs} +29 -21
  249. package/dist/client/{eventCombined-kShgJPQr.mjs → eventCombined-Gjn6gtq7.mjs} +2 -2
  250. package/dist/client/{eventDetails-C5NTM0Vo.mjs → eventDetails-M-VCxA-r.mjs} +4 -4
  251. package/dist/client/{eventListing-B82ZdKP6.mjs → eventListing-DR19hqYi.mjs} +2 -2
  252. package/dist/client/{eventRegistration-qJVFqBWo.mjs → eventRegistration-BR02a0k3.mjs} +8 -8
  253. package/dist/client/{form-BvAcKiuu.mjs → form-LY2xIbwg.mjs} +2 -2
  254. package/dist/client/{headerSection-NvAiEHAg.mjs → headerSection-CYwwXJfh.mjs} +3 -3
  255. package/dist/client/hooks.mjs +3335 -2210
  256. package/dist/client/{locationMap-D0j52xfI.mjs → locationMap-DWnBXrFq.mjs} +3 -3
  257. package/dist/client/{media-BCW_g2cQ.mjs → media-DHtSxS5V.mjs} +61 -56
  258. package/dist/client/{newsletterForm-B8_i93qH.mjs → newsletterForm-D9s-fQ2P.mjs} +3 -3
  259. package/dist/client/{pricing-DIYnyHOk.mjs → pricing-DDq80oYc.mjs} +1 -1
  260. package/dist/client/{productDetail-w0eAHkuQ.mjs → productDetail-B0SbWd45.mjs} +3 -3
  261. package/dist/client/{productList-Vsguq5Xt.mjs → productList-PwYlZn0y.mjs} +3 -3
  262. package/dist/client/{propsDecoder-CD2pJ1WB.mjs → propsDecoder-BRWBiH7i.mjs} +225 -68
  263. package/dist/client/rendering/client.mjs +2266 -1267
  264. package/dist/client/rendering/islands.mjs +20 -20
  265. package/dist/client/rendering.mjs +5364 -1979
  266. package/dist/client/{shop-Dgxs-Q8F.mjs → shop-CMwZPYME.mjs} +8 -8
  267. package/dist/client/{shop-commerce-DJAhsTaT.mjs → shop-commerce-BuxsFate.mjs} +6 -6
  268. package/dist/client/{shop-commerce-store-CfCXltXW.mjs → shop-commerce-store-boYlEJ91.mjs} +1 -1
  269. package/dist/client/{shopShared-CmDcPXUt.mjs → shopShared-D2naaOes.mjs} +3 -3
  270. package/dist/client/{useDiscountCodeUi-CirrT2bM.mjs → useDiscountCodeUi-D9RHpVoj.mjs} +1 -1
  271. package/dist/client/{useEventFilters-CNZxlCcO.mjs → useEventFilters-igGiK1re.mjs} +6 -6
  272. package/dist/client/{usePolling-Baks_iBI.mjs → usePolling-CI7MbsFB.mjs} +2 -2
  273. package/dist/preview-next/before-render.mjs +218 -1
  274. package/dist/preview-next/client/runtime.mjs +4 -4
  275. package/dist/preview-next/middleware.mjs +218 -1
  276. package/dist/{previewAuthStore-CfquDtTh.mjs → previewAuthStore-a_cBD28m.mjs} +218 -1
  277. package/dist/{sdk-runtime-BfNiFeNJ.mjs → sdk-runtime-MBzD-GmP.mjs} +2 -2
  278. package/dist/{separator-BhAR_Xmf.mjs → separator-5ahRBC85.mjs} +1 -1
  279. package/dist/server/components.mjs +5218 -2529
  280. package/dist/server/config-validation.mjs +3112 -2210
  281. package/dist/server/config.mjs +3112 -2211
  282. package/dist/server/data.mjs +3758 -2277
  283. package/dist/server/index.mjs +224 -4
  284. package/dist/server/navigation.mjs +9 -3
  285. package/dist/server/next/middleware.mjs +1 -1
  286. package/dist/server/next.mjs +6468 -2749
  287. package/dist/server/page-converter.mjs +3524 -2635
  288. package/dist/server/prebuild.mjs +1 -1
  289. package/dist/server/rendering/server.mjs +5392 -2488
  290. package/dist/server/rendering.mjs +6241 -2851
  291. package/dist/server/routing.mjs +3414 -1826
  292. package/dist/server/server.mjs +4174 -2354
  293. package/dist/server/theme-bridge.mjs +9579 -8132
  294. package/dist/server/theme.mjs +313 -154
  295. package/dist/styles/index.css +1223 -31
  296. package/package.json +1 -1
  297. package/dist/_dts/preview-next/src/client/preview/typographySelectionInput.d.ts +0 -16
  298. package/dist/_dts/theme-core/src/palette/historicalThemePalette.d.ts +0 -44
  299. package/dist/_dts/theme-core/src/palette/legacyRuntimeProjection.d.ts +0 -55
  300. package/dist/_dts/theme-core/src/palette/legacySelection.d.ts +0 -45
  301. package/dist/_dts/theme-core/src/palette/paletteCompatibilityTransition.d.ts +0 -232
  302. package/dist/_dts/theme-core/src/site-styles/typographyPresets.d.ts +0 -234
@@ -1,4 +1,4 @@
1
- import { t as parseColorTokenParts } from "./colorTokenParts-dT8MISgJ.mjs";
1
+ import { t as parseColorTokenParts } from "./colorTokenParts-CMugwvX_.mjs";
2
2
  //#region ../theme-core/src/surfaces/foregroundContract.ts
3
3
  const SURFACE_FOREGROUND_CSS_VARS = {
4
4
  text: "--rb-surface-text-color",
@@ -21,6 +21,7 @@ function parseUuidBrand(value, unsafeConstructor) {
21
21
  if (!UUID_PATTERN.test(normalized)) return err({ kind: "invalid_uuid" });
22
22
  return ok(unsafeConstructor(normalized));
23
23
  }
24
+ const unsafeAsEventOfferingId = (id) => id;
24
25
  const unsafeAsEventSeriesId = (id) => id;
25
26
  const unsafeAsMediaAssetId = (id) => id;
26
27
  const unsafeAsStorageBucketName = (value) => value;
@@ -30,6 +31,7 @@ const unsafeAsPassId = (id) => id;
30
31
  const unsafeAsCustomerPassId = (id) => id;
31
32
  const unsafeAsAppointmentServiceId = (id) => id;
32
33
  const unsafeAsAppointmentResourceId = (id) => id;
34
+ const parseEventOfferingId = (value) => parseUuidBrand(value, unsafeAsEventOfferingId);
33
35
  const parseEventSeriesId = (value) => parseUuidBrand(value, unsafeAsEventSeriesId);
34
36
  //#endregion
35
37
  //#region ../media-core/src/transformRect.ts
@@ -137,4 +139,4 @@ function parseColorTokenParts(source) {
137
139
  };
138
140
  }
139
141
  //#endregion
140
- export { parseEventSeriesId as a, unsafeAsCustomerPassId as c, unsafeAsPassId as d, unsafeAsStorageBucketName as f, ok as h, resolveMediaTransformForAspect as i, unsafeAsFormId as l, err as m, isExplicitRectCrop as n, unsafeAsAppointmentResourceId as o, unsafeAsStoragePath as p, parseAspectRatioValue as r, unsafeAsAppointmentServiceId as s, parseColorTokenParts as t, unsafeAsMediaAssetId as u };
142
+ export { parseEventOfferingId as a, unsafeAsAppointmentServiceId as c, unsafeAsMediaAssetId as d, unsafeAsPassId as f, ok as g, err as h, resolveMediaTransformForAspect as i, unsafeAsCustomerPassId as l, unsafeAsStoragePath as m, isExplicitRectCrop as n, parseEventSeriesId as o, unsafeAsStorageBucketName as p, parseAspectRatioValue as r, unsafeAsAppointmentResourceId as s, parseColorTokenParts as t, unsafeAsFormId as u };
@@ -1,17 +1,17 @@
1
1
  "use client";
2
- import { Nt as toBookingTimeZone, Ot as formatBookingTime, Pt as toScheduledBookingDateTime, Tt as formatBookingDate, t as defineIslandPropsDecoder } from "./propsDecoder-CD2pJ1WB.mjs";
3
- import { n as formatCoursePriceDisplay, r as resolveCoursePricingState, t as formatCoursePriceAmount } from "./pricing-DIYnyHOk.mjs";
2
+ import { Ft as parseEventPageSurfaceSubject, Nt as toBookingTimeZone, Ot as formatBookingTime, Pt as toScheduledBookingDateTime, Tt as formatBookingDate, Ut as assertNever, t as defineIslandPropsDecoder } from "./propsDecoder-BRWBiH7i.mjs";
3
+ import { n as formatCoursePriceDisplay, r as resolveCoursePricingState, t as formatCoursePriceAmount } from "./pricing-DDq80oYc.mjs";
4
4
  import { n as useBlockApi, t as BlockApiProvider } from "./context-BGZNlGXB.mjs";
5
5
  import { n as isSpamProtectionEnabled, r as AltchaWidget, t as getChallengeUrl } from "./src-B833rYRr.mjs";
6
- import { i as CheckIcon, n as TerminalPanel, r as StateIcon, t as useDiscountCodeUi } from "./useDiscountCodeUi-CirrT2bM.mjs";
7
- import { t as DiscountCodeDisclosure } from "./DiscountCodeDisclosure-BXM73_E5.mjs";
8
- import { n as SpinnerNode, r as formatPrice, t as StepIndicator$1 } from "./StepIndicator-nWqineJ2.mjs";
9
- import { t as themeButtonClassName } from "./buttons-DfYyqt8C.mjs";
6
+ import { i as CheckIcon, n as TerminalPanel, r as StateIcon, t as useDiscountCodeUi } from "./useDiscountCodeUi-D9RHpVoj.mjs";
7
+ import { t as DiscountCodeDisclosure } from "./DiscountCodeDisclosure-D6TOf6Hi.mjs";
8
+ import { n as SpinnerNode, r as formatPrice, t as StepIndicator$1 } from "./StepIndicator-TzRiQ0BY.mjs";
9
+ import { t as themeButtonClassName } from "./buttons-EBjyslaX.mjs";
10
10
  import { t as FeedbackMessage } from "./FeedbackMessage-ByMrs3cr.mjs";
11
11
  import { n as getFieldValidationControlProps, t as FieldValidationMessage } from "./FieldValidationMessage-AYanWFb-.mjs";
12
12
  import { t as buildCheckoutReturnUrls } from "./checkoutUrls-Ct8Mxna3.mjs";
13
13
  import { t as scrollToBlock } from "./scrollToBlock-C86BYkyV.mjs";
14
- import { a as ClockIcon, i as LoggedInAsUser, n as logoutPortal, r as useWaitlistClaim, t as MagicLinkForm } from "./MagicLinkForm-u6Dul4j5.mjs";
14
+ import { a as ClockIcon, i as LoggedInAsUser, n as logoutPortal, r as useWaitlistClaim, t as MagicLinkForm } from "./MagicLinkForm-BWnB7cMR.mjs";
15
15
  import { t as CrossIcon } from "./CrossIcon-Dn1KRKW5.mjs";
16
16
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
17
17
  import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-UNsfPcYq.mjs";
@@ -564,6 +564,34 @@ function getStepLabels(steps) {
564
564
  return steps.map((step) => STEP_LABELS[step] ?? step);
565
565
  }
566
566
  //#endregion
567
+ //#region ../blocks/src/system/runtime/nodes/course-page-surface-scope.ts
568
+ /**
569
+ * Resolves native course-page ownership without falling back to entry or slug
570
+ * coincidence when a page-surface subject is present but invalid.
571
+ */
572
+ function resolveCoursePageSurfaceScope(courses, subjectValue) {
573
+ if (subjectValue === null || subjectValue === void 0) return { kind: "absent" };
574
+ const parsed = parseEventPageSurfaceSubject(subjectValue);
575
+ if (!parsed.ok) return {
576
+ kind: "unsupported",
577
+ reason: parsed.error.kind
578
+ };
579
+ const seriesIds = eventSeriesIdsForSubject(parsed.value);
580
+ const allowedSeriesIds = new Set(seriesIds);
581
+ return {
582
+ kind: "scoped",
583
+ subject: parsed.value,
584
+ courses: courses.filter((course) => allowedSeriesIds.has(course.seriesId))
585
+ };
586
+ }
587
+ function eventSeriesIdsForSubject(subject) {
588
+ switch (subject.kind) {
589
+ case "eventSeries": return [subject.eventSeriesId];
590
+ case "eventOffering": return subject.availableEventSeriesIds;
591
+ default: return assertNever(subject);
592
+ }
593
+ }
594
+ //#endregion
567
595
  //#region ../blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationWizard.ts
568
596
  function parseCurrencyInputToCents(value) {
569
597
  const trimmed = value.trim();
@@ -619,13 +647,16 @@ function resolveHasCoursePayment(pricing) {
619
647
  }
620
648
  function useCourseRegistrationWizard(props) {
621
649
  const api = useBlockApi();
622
- const { contentEntry, courses, entrySubrouteContext } = props;
650
+ const { contentEntry, courses, entrySubrouteContext, subject } = props;
623
651
  const scopedCourses = useMemo(() => {
624
652
  const allCourses = courses ?? [];
625
653
  if (entrySubrouteContext?.kind === "course-run") {
626
654
  const matched = allCourses.find((c) => c.id === entrySubrouteContext.run.courseId) ?? null;
627
655
  if (matched) return [matched];
628
656
  }
657
+ const pageSurfaceScope = resolveCoursePageSurfaceScope(allCourses, subject);
658
+ if (pageSurfaceScope.kind === "unsupported") return [];
659
+ if (pageSurfaceScope.kind === "scoped") return [...pageSurfaceScope.courses];
629
660
  if (contentEntry?.id) {
630
661
  const matchedCourses = allCourses.filter((c) => c.contentEntryId === contentEntry.id);
631
662
  if (matchedCourses.length > 0) return matchedCourses;
@@ -639,7 +670,8 @@ function useCourseRegistrationWizard(props) {
639
670
  courses,
640
671
  contentEntry?.id,
641
672
  contentEntry?.slug,
642
- entrySubrouteContext
673
+ entrySubrouteContext,
674
+ subject
643
675
  ]);
644
676
  const [step, setStep] = useState(() => {
645
677
  const enrollment = new URLSearchParams(window.location.search).get("enrollment");
@@ -1558,24 +1590,27 @@ function getCourseSlidingScaleMessage(pricing) {
1558
1590
  return null;
1559
1591
  }
1560
1592
  function CourseRegistrationWizard(props) {
1561
- const { showSessions = true, showPrice = true, showCapacity = true, showVenue = true, successMessage = "You're booked in! Check your email for confirmation and session details.", waitlistMessage = "You've been added to the waitlist. We'll email you a claim link if a spot opens up.", membershipMessage = "Booked using your membership! Check your email for session details.", buttonText = "Book course", buttonVariant = "primary", className } = props;
1593
+ const { showSessions = true, showPrice = true, showCapacity = true, showVenue = true, successMessage = "You're booked in! Check your email for confirmation and session details.", waitlistMessage = "You've been added to the waitlist. We'll email you a claim link if a spot opens up.", membershipMessage = "Booked using your membership! Check your email for session details.", buttonText = "Sign up", buttonVariant = "primary", className } = props;
1562
1594
  const { api, scopedCourses, step, setStep, selectedCourse, selectedPricingOptionId, setSelectedPricingOptionId, selectedSlidingAmountInput, setSelectedSlidingAmountInput, selectedCoursePricing, formData, setFormData, errors, enrollmentResult, errorMessage, portalAuthState, handleLogout, altchaSolution: _altchaSolution, setAltchaSolution, showSpamProtection, eligibilityLoading, eligibilityError, courseEligibility, eligibleMemberships, paymentChoice, setPaymentChoice, selectedMembershipId, setSelectedMembershipId, discountUiOpen, setDiscountUiOpen, discountCode, setDiscountCode, discountsAvailable, manualCodeEntryAllowed, discountsAvailableLoading, waitlistClaim, canUseMembership: _canUseMembership, bookingMode, currentStepNumber, totalSteps, stepLabels, showPortalAuthSidebar, hasPreSelectedCourse: _hasPreSelectedCourse, hasCoursePayment: _hasCoursePayment, handleCourseSelect, handleSubmit, handlePaymentContinue, handleRetry, handleBookingModeChange } = useCourseRegistrationWizard(props);
1563
1595
  const buttonClass = themeButtonClassName({
1564
1596
  variant: buttonVariant,
1565
1597
  size: "md"
1566
1598
  });
1567
- if (scopedCourses.length === 0) return /* @__PURE__ */ jsx("div", {
1568
- id: COURSE_REGISTRATION_ANCHOR_ID,
1569
- className: `course-registration ${className || ""}`,
1570
- "data-block": "course-registration",
1571
- children: /* @__PURE__ */ jsx("div", {
1572
- className: "cr-empty",
1573
- children: /* @__PURE__ */ jsx("p", {
1574
- className: "cr-empty__text",
1575
- children: "No courses available to book."
1599
+ if (scopedCourses.length === 0) {
1600
+ const awaitingOfferingRuns = props.subject?.kind === "eventOffering" && props.subject.availableEventSeriesIds.length === 0;
1601
+ return /* @__PURE__ */ jsx("div", {
1602
+ id: COURSE_REGISTRATION_ANCHOR_ID,
1603
+ className: `course-registration ${className || ""}`,
1604
+ "data-block": "course-registration",
1605
+ children: /* @__PURE__ */ jsx("div", {
1606
+ className: "cr-empty",
1607
+ children: /* @__PURE__ */ jsx("p", {
1608
+ className: "cr-empty__text",
1609
+ children: awaitingOfferingRuns ? "New dates are coming soon. Booking will open when the next run is ready." : "No courses available to book."
1610
+ })
1576
1611
  })
1577
- })
1578
- });
1612
+ });
1613
+ }
1579
1614
  const allowedStatuses = api.config.isPreview ? ["active", "draft"] : ["active"];
1580
1615
  if (!scopedCourses.some((c) => !c.status || allowedStatuses.includes(c.status))) return /* @__PURE__ */ jsx("div", {
1581
1616
  id: COURSE_REGISTRATION_ANCHOR_ID,
@@ -1,13 +1,13 @@
1
1
  "use client";
2
2
  import { t as clsx } from "./clsx-DgIEfj3H.mjs";
3
- import { B as groupEventsByDate, D as getEventRuntimeFiltersKey, E as buildEventRuntimeFilters, G as getEventAvailabilityStatus, H as resolveEventLinkProps, I as formatEventTeacherLine, K as getLocalDateKey, L as formatTime, T as buildEventCalendarListingRender, W as getEventAvailability, q as getLocalMinuteOfDay, t as defineIslandPropsDecoder } from "./propsDecoder-CD2pJ1WB.mjs";
4
- import { a as CalendarDayCell, c as useCalendarEvents, d as getOrderedDayNames, f as getWeekCalendarDayTuple, h as isToday, i as WeekAgendaView, l as MONTH_NAMES, m as isSameLocalDay, o as EventModalProvider, p as getWeekCalendarDays, r as EventModals, s as useEventModal, t as EventCombinedClient, u as formatDateKey } from "./EventCombined.client-DT5elP7j.mjs";
5
- import { o as EventFilters, t as useEventFilters } from "./useEventFilters-CNZxlCcO.mjs";
3
+ import { E as getEventRuntimeFiltersKey, F as formatEventTeacherLine, G as getLocalDateKey, I as formatTime, K as getLocalMinuteOfDay, T as buildEventRuntimeFilters, U as getEventAvailability, V as resolveEventLinkProps, W as getEventAvailabilityStatus, t as defineIslandPropsDecoder, w as buildEventCalendarListingRender, z as groupEventsByDate } from "./propsDecoder-BRWBiH7i.mjs";
4
+ import { a as CalendarDayCell, c as useCalendarEvents, d as getOrderedDayNames, f as getWeekCalendarDayTuple, h as isToday, i as WeekAgendaView, l as MONTH_NAMES, m as isSameLocalDay, o as EventModalProvider, p as getWeekCalendarDays, r as EventModals, s as useEventModal, t as EventCombinedClient, u as formatDateKey } from "./EventCombined.client-Dao3zxRk.mjs";
5
+ import { o as EventFilters, t as useEventFilters } from "./useEventFilters-igGiK1re.mjs";
6
6
  import { t as BlockApiProvider } from "./context-BGZNlGXB.mjs";
7
- import { t as themeButtonClassName } from "./buttons-DfYyqt8C.mjs";
7
+ import { t as themeButtonClassName } from "./buttons-EBjyslaX.mjs";
8
8
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
9
9
  import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-UNsfPcYq.mjs";
10
- import { n as EventListingController } from "./EventListing.client-pTYGfV9C.mjs";
10
+ import { n as EventListingController } from "./EventListing.client-B2NNt4y1.mjs";
11
11
  import { useEffect, useId, useMemo, useState } from "react";
12
12
  import { jsx, jsxs } from "react/jsx-runtime";
13
13
  //#region ../calendar/src/lane-packing.ts
@@ -393,26 +393,33 @@ const WeekBoardCard = ({ event, showCapacity }) => {
393
393
  * to a stacked list on mobile. Repurposes the week-grouped agenda data as a
394
394
  * board rather than an hour-positioned timetable grid.
395
395
  */
396
- const WeekBoardView = ({ days, events, showCapacity, emptyMessage = "No classes scheduled this week", title = "The week ahead", footerNote = "New to a class? We'll check it's right for you first.", ctaLabel = "Reserve a place", ctaHref = null, buttonVariant = "outline" }) => {
396
+ const WeekBoardView = ({ days, events, showCapacity, emptyMessage = "No classes scheduled this week", title, footerNote, ctaLabel = "Reserve a place", ctaHref = null, buttonVariant = "outline", elevated = false, banded = false }) => {
397
397
  const eventsByDate = groupEventsByDate(events);
398
398
  const hasAnyEvents = days.some((date) => (eventsByDate.get(formatDateKey(date)) ?? []).length > 0);
399
399
  const ctaClassName = themeButtonClassName({
400
400
  variant: buttonVariant,
401
401
  size: "sm"
402
402
  });
403
+ const hasTitle = typeof title === "string" && title.length > 0;
404
+ const hasFooterNote = typeof footerNote === "string" && footerNote.length > 0;
405
+ const hasCta = typeof ctaHref === "string" && ctaHref.length > 0;
406
+ const footerNoteText = hasAnyEvents ? hasFooterNote ? footerNote : null : emptyMessage;
407
+ const showFooter = hasCta || footerNoteText !== null;
403
408
  return /* @__PURE__ */ jsx("div", {
404
409
  className: "event-calendar event-calendar--week-board",
405
410
  "data-block": "event-calendar",
411
+ ...banded ? { "data-banded": "" } : {},
406
412
  children: /* @__PURE__ */ jsxs("div", {
407
413
  className: "event-week-board",
408
414
  style: { "--event-week-board-cols": String(days.length) },
415
+ ...elevated ? { "data-elevated": "" } : {},
409
416
  children: [
410
417
  /* @__PURE__ */ jsxs("div", {
411
418
  className: "event-week-board-top",
412
- children: [/* @__PURE__ */ jsx("span", {
419
+ children: [hasTitle ? /* @__PURE__ */ jsx("span", {
413
420
  className: "event-week-board-title",
414
421
  children: title
415
- }), /* @__PURE__ */ jsx("div", {
422
+ }) : null, /* @__PURE__ */ jsx("div", {
416
423
  className: "event-week-board-legend",
417
424
  "aria-hidden": "true",
418
425
  children: LEGEND_ITEMS.map((item) => /* @__PURE__ */ jsxs("span", {
@@ -451,21 +458,17 @@ const WeekBoardView = ({ days, events, showCapacity, emptyMessage = "No classes
451
458
  }, dateKey);
452
459
  })
453
460
  }),
454
- /* @__PURE__ */ jsxs("div", {
461
+ showFooter ? /* @__PURE__ */ jsxs("div", {
455
462
  className: "event-week-board-foot",
456
- children: [/* @__PURE__ */ jsx("p", {
463
+ children: [footerNoteText !== null ? /* @__PURE__ */ jsx("p", {
457
464
  className: "event-week-board-foot-note",
458
- children: hasAnyEvents ? footerNote : emptyMessage
459
- }), ctaHref ? /* @__PURE__ */ jsx("a", {
460
- className: ctaClassName,
461
- href: ctaHref,
462
- children: ctaLabel
463
- }) : /* @__PURE__ */ jsx("button", {
464
- type: "button",
465
+ children: footerNoteText
466
+ }) : null, hasCta ? /* @__PURE__ */ jsx("a", {
465
467
  className: ctaClassName,
468
+ href: ctaHref ?? void 0,
466
469
  children: ctaLabel
467
- })]
468
- })
470
+ }) : null]
471
+ }) : null
469
472
  ]
470
473
  })
471
474
  });
@@ -744,8 +747,13 @@ const EventCalendarWeekBoardClient = ({ display }) => {
744
747
  events: [...display.events],
745
748
  showCapacity: display.showCapacity,
746
749
  emptyMessage: display.emptyMessage,
747
- ctaLabel: display.buttonText,
748
- buttonVariant: display.buttonVariant
750
+ title: display.boardTitle,
751
+ footerNote: display.footerNote,
752
+ ctaLabel: display.loadMoreText ?? display.buttonText,
753
+ ctaHref: display.seeAllUrl,
754
+ buttonVariant: display.buttonVariant,
755
+ elevated: display.elevated,
756
+ banded: display.banded
749
757
  });
750
758
  };
751
759
  const EventCalendarTimetableClient = ({ render }) => {
@@ -1,5 +1,5 @@
1
- import { t as defineIslandPropsDecoder } from "./propsDecoder-CD2pJ1WB.mjs";
2
- import { n as EventCombinedIslandClient } from "./EventCombined.client-DT5elP7j.mjs";
1
+ import { t as defineIslandPropsDecoder } from "./propsDecoder-BRWBiH7i.mjs";
2
+ import { n as EventCombinedIslandClient } from "./EventCombined.client-Dao3zxRk.mjs";
3
3
  import { t as BlockApiProvider } from "./context-BGZNlGXB.mjs";
4
4
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
5
5
  import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-UNsfPcYq.mjs";
@@ -1,8 +1,8 @@
1
- import { At as getBookingLocalDateKey, H as resolveEventLinkProps, It as publicEventPricingCurrency, N as formatEventDateParts, Nt as toBookingTimeZone, P as formatEventPrice, Pt as toScheduledBookingDateTime, Rt as publicEventPricingType, U as resolveRuntimeEventPricing, Vt as formatCurrencyAmount, t as defineIslandPropsDecoder } from "./propsDecoder-CD2pJ1WB.mjs";
2
- import { n as formatCoursePriceDisplay, r as resolveCoursePricingState, t as formatCoursePriceAmount } from "./pricing-DIYnyHOk.mjs";
1
+ import { At as getBookingLocalDateKey, H as resolveRuntimeEventPricing, Ht as formatCurrencyAmount, Lt as publicEventPricingCurrency, M as formatEventDateParts, N as formatEventPrice, Nt as toBookingTimeZone, Pt as toScheduledBookingDateTime, V as resolveEventLinkProps, t as defineIslandPropsDecoder, zt as publicEventPricingType } from "./propsDecoder-BRWBiH7i.mjs";
2
+ import { n as formatCoursePriceDisplay, r as resolveCoursePricingState, t as formatCoursePriceAmount } from "./pricing-DDq80oYc.mjs";
3
3
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
4
4
  import { n as filterPassesForEvent, t as filterMembershipsForEvent } from "./eventProductEligibility-AVxyCB1u.mjs";
5
- import { t as LeafletStaticMap } from "./LeafletStaticMap-dQrhlUe3.mjs";
5
+ import { t as LeafletStaticMap } from "./LeafletStaticMap-BhwFo16w.mjs";
6
6
  import "react";
7
7
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
8
8
  //#region ../blocks/src/system/runtime/nodes/event-details/logic.ts
@@ -214,7 +214,7 @@ function EventDetailsView({ selection, showVenue, showMap, showOtherDates, showC
214
214
  className: "rb-mt-6",
215
215
  children: [/* @__PURE__ */ jsx("div", {
216
216
  className: "rb-label rb-mb-2",
217
- children: "Team members"
217
+ children: "With"
218
218
  }), /* @__PURE__ */ jsx("div", {
219
219
  className: "rb-flex rb-flex-col rb-gap-3",
220
220
  children: teamMembers.map((teamMember) => /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx(TeamMemberName, {
@@ -1,8 +1,8 @@
1
- import { t as defineIslandPropsDecoder } from "./propsDecoder-CD2pJ1WB.mjs";
1
+ import { t as defineIslandPropsDecoder } from "./propsDecoder-BRWBiH7i.mjs";
2
2
  import { t as BlockApiProvider } from "./context-BGZNlGXB.mjs";
3
3
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
4
4
  import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-UNsfPcYq.mjs";
5
- import { t as EventListingClient } from "./EventListing.client-pTYGfV9C.mjs";
5
+ import { t as EventListingClient } from "./EventListing.client-B2NNt4y1.mjs";
6
6
  import "react";
7
7
  import { jsx } from "react/jsx-runtime";
8
8
  //#region src/rendering/islands/enhancers/eventListing.tsx
@@ -1,17 +1,17 @@
1
1
  "use client";
2
- import { n as buildBookingPaymentSelectionViewModel, t as usePolling } from "./usePolling-Baks_iBI.mjs";
3
- import { Bt as publicEventTicketTypes, C as getWizardStepsForContext, Et as formatBookingDateTime, F as formatEventPriceDisplay, It as publicEventPricingCurrency, Lt as publicEventPricingMode, Nt as toBookingTimeZone, Ot as formatBookingTime, Pt as toScheduledBookingDateTime, Rt as publicEventPricingType, S as getStepNumber, Tt as formatBookingDate, U as resolveRuntimeEventPricing, Vt as formatCurrencyAmount, _ as findPreSelectedEvent, _t as assertNever, b as resolveRegistrationTarget, g as findEventByOccurrenceId, h as toRegistrationEvents, t as defineIslandPropsDecoder, v as resolveDiscountContext, w as resolveEventRegistrationScopedEvents, x as WIZARD_STEPS, y as resolveEventRequiresPayment, zt as publicEventScalarPrice } from "./propsDecoder-CD2pJ1WB.mjs";
2
+ import { n as buildBookingPaymentSelectionViewModel, t as usePolling } from "./usePolling-CI7MbsFB.mjs";
3
+ import { Bt as publicEventScalarPrice, C as getWizardStepsForContext, Et as formatBookingDateTime, H as resolveRuntimeEventPricing, Ht as formatCurrencyAmount, Lt as publicEventPricingCurrency, Nt as toBookingTimeZone, Ot as formatBookingTime, P as formatEventPriceDisplay, Pt as toScheduledBookingDateTime, Rt as publicEventPricingMode, S as getStepNumber, Tt as formatBookingDate, Vt as publicEventTicketTypes, _ as findPreSelectedEvent, _t as assertNever, b as resolveRegistrationTarget, et as resolveEventRegistrationScopedEvents, g as findEventByOccurrenceId, h as toRegistrationEvents, t as defineIslandPropsDecoder, v as resolveDiscountContext, x as WIZARD_STEPS, y as resolveEventRequiresPayment, zt as publicEventPricingType } from "./propsDecoder-BRWBiH7i.mjs";
4
4
  import { n as useBlockApi, t as BlockApiProvider } from "./context-BGZNlGXB.mjs";
5
5
  import { n as isSpamProtectionEnabled, r as AltchaWidget, t as getChallengeUrl } from "./src-B833rYRr.mjs";
6
- import { i as CheckIcon, n as TerminalPanel, r as StateIcon, t as useDiscountCodeUi } from "./useDiscountCodeUi-CirrT2bM.mjs";
7
- import { t as DiscountCodeDisclosure } from "./DiscountCodeDisclosure-BXM73_E5.mjs";
8
- import { n as SpinnerNode, r as formatPrice, t as StepIndicator$1 } from "./StepIndicator-nWqineJ2.mjs";
9
- import { t as themeButtonClassName } from "./buttons-DfYyqt8C.mjs";
6
+ import { i as CheckIcon, n as TerminalPanel, r as StateIcon, t as useDiscountCodeUi } from "./useDiscountCodeUi-D9RHpVoj.mjs";
7
+ import { t as DiscountCodeDisclosure } from "./DiscountCodeDisclosure-D6TOf6Hi.mjs";
8
+ import { n as SpinnerNode, r as formatPrice, t as StepIndicator$1 } from "./StepIndicator-TzRiQ0BY.mjs";
9
+ import { t as themeButtonClassName } from "./buttons-EBjyslaX.mjs";
10
10
  import { t as FeedbackMessage } from "./FeedbackMessage-ByMrs3cr.mjs";
11
11
  import { n as getFieldValidationControlProps, t as FieldValidationMessage } from "./FieldValidationMessage-AYanWFb-.mjs";
12
12
  import { t as createBodyThemePortalRoot } from "./themePortalRoot-AGs4cE7t.mjs";
13
13
  import { t as consumeSearchParam } from "./urlParams-D71VXFGx.mjs";
14
- import { a as ClockIcon, i as LoggedInAsUser, n as logoutPortal, r as useWaitlistClaim, t as MagicLinkForm } from "./MagicLinkForm-u6Dul4j5.mjs";
14
+ import { a as ClockIcon, i as LoggedInAsUser, n as logoutPortal, r as useWaitlistClaim, t as MagicLinkForm } from "./MagicLinkForm-BWnB7cMR.mjs";
15
15
  import { t as CrossIcon } from "./CrossIcon-Dn1KRKW5.mjs";
16
16
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
17
17
  import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-UNsfPcYq.mjs";
@@ -2931,7 +2931,7 @@ function useEventRegistrationWizardWithDeps(options, deps) {
2931
2931
  registrationEvents,
2932
2932
  options.occurrenceContext?.seriesId,
2933
2933
  options.subject?.kind,
2934
- options.subject?.kind === "eventSeries" ? options.subject.eventSeriesId : options.subject?.reason,
2934
+ options.subject?.kind === "eventSeries" ? options.subject.eventSeriesId : options.subject?.kind === "eventOffering" ? `${options.subject.eventOfferingId}:${options.subject.availableEventSeriesIds.join(",")}` : options.subject?.reason,
2935
2935
  options.contentEntry?.slug,
2936
2936
  options.contentEntry?.contentTypeSlug
2937
2937
  ]);
@@ -1,9 +1,9 @@
1
1
  "use client";
2
2
  import { t as clsx } from "./clsx-DgIEfj3H.mjs";
3
- import { _t as assertNever, bt as ok, t as defineIslandPropsDecoder, yt as err } from "./propsDecoder-CD2pJ1WB.mjs";
3
+ import { _t as assertNever, bt as ok, t as defineIslandPropsDecoder, yt as err } from "./propsDecoder-BRWBiH7i.mjs";
4
4
  import { n as useBlockApi, t as BlockApiProvider } from "./context-BGZNlGXB.mjs";
5
5
  import { n as isSpamProtectionEnabled, r as AltchaWidget, t as getChallengeUrl } from "./src-B833rYRr.mjs";
6
- import { t as themeButtonClassName } from "./buttons-DfYyqt8C.mjs";
6
+ import { t as themeButtonClassName } from "./buttons-EBjyslaX.mjs";
7
7
  import { t as FeedbackMessage } from "./FeedbackMessage-ByMrs3cr.mjs";
8
8
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
9
9
  import { useReducer, useRef, useState } from "react";
@@ -1,8 +1,8 @@
1
1
  "use client";
2
- import { r as buildCartDisplay, t as defineIslandPropsDecoder } from "./propsDecoder-CD2pJ1WB.mjs";
3
- import { t as themeButtonClassName } from "./buttons-DfYyqt8C.mjs";
2
+ import { r as buildCartDisplay, t as defineIslandPropsDecoder } from "./propsDecoder-BRWBiH7i.mjs";
3
+ import { t as themeButtonClassName } from "./buttons-EBjyslaX.mjs";
4
4
  import { t as resolveDedicatedCheckoutPath } from "./checkoutRoute-ClwHwYVA.mjs";
5
- import { n as useCommerceCart } from "./shop-commerce-store-CfCXltXW.mjs";
5
+ import { n as useCommerceCart } from "./shop-commerce-store-boYlEJ91.mjs";
6
6
  import { t as ModalShell } from "./ModalShell-CqkBvBIC.mjs";
7
7
  import * as React$1 from "react";
8
8
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";