@riverbankcms/sdk 0.109.0 → 0.111.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 (186) hide show
  1. package/dist/{PreviewEditorSidebar-DWqwfy3_.mjs → PreviewEditorSidebar-CTR6LUhN.mjs} +178 -117
  2. package/dist/{PreviewEditorUI-B7OL4sfR.mjs → PreviewEditorUI-DZg15Zip.mjs} +3 -4
  3. package/dist/{PreviewQueryProvider-D0y2l8JN.mjs → PreviewQueryProvider-kkmjklLG.mjs} +1 -1
  4. package/dist/{SdkPreviewModeRuntime-D8Gt9Gbe.mjs → SdkPreviewModeRuntime-DeOTAFvR.mjs} +229 -219
  5. package/dist/{SiteChromeCustomizeContext-DUpalEdL.mjs → SiteChromeCustomizeContext-DOSDLCiJ.mjs} +1695 -2169
  6. package/dist/_dts/ai/src/contracts/proposals.d.ts +1716 -76
  7. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +5 -5
  8. package/dist/_dts/api/src/contentRuntime.d.ts +4 -1
  9. package/dist/_dts/api/src/courses.d.ts +30 -15
  10. package/dist/_dts/api/src/endpoints.d.ts +14 -4
  11. package/dist/_dts/api/src/index.d.ts +2 -2
  12. package/dist/_dts/api/src/sdkContracts.d.ts +23 -11
  13. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +5 -1
  14. package/dist/_dts/api/src/siteOperations.d.ts +11 -19
  15. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +6 -6
  16. package/dist/_dts/api/src/webhooks.d.ts +98 -1
  17. package/dist/_dts/billing/src/site-arrangements.d.ts +3 -0
  18. package/dist/_dts/blocks/src/client/course-registration.d.ts +4 -1
  19. package/dist/_dts/blocks/src/client.d.ts +4 -1
  20. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +4 -4
  21. package/dist/_dts/blocks/src/index.d.ts +3 -1
  22. package/dist/_dts/blocks/src/system/blocks/course-registration.d.ts +2 -1
  23. package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +2 -1
  24. package/dist/_dts/blocks/src/system/blocks/cta-full.d.ts +2 -4
  25. package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +2 -1
  26. package/dist/_dts/blocks/src/system/blocks/events/event-listing.d.ts +2 -1
  27. package/dist/_dts/blocks/src/system/blocks/events/event-spotlight.d.ts +2 -1
  28. package/dist/_dts/blocks/src/system/blocks/events/recurring-schedule.d.ts +3 -2
  29. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +2 -1
  30. package/dist/_dts/blocks/src/system/blocks/file-download.d.ts +2 -1
  31. package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +2 -1
  32. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +2 -1
  33. package/dist/_dts/blocks/src/system/blocks/single-button.d.ts +2 -1
  34. package/dist/_dts/blocks/src/system/constants/buttonRoles.d.ts +35 -0
  35. package/dist/_dts/blocks/src/system/fields/button.d.ts +10 -21
  36. package/dist/_dts/blocks/src/system/fields/ctas.d.ts +2 -1
  37. package/dist/_dts/blocks/src/system/fragments/library/heroCtaRow.d.ts +9 -5
  38. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +18 -18
  39. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +9 -9
  40. package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessWholeSeriesRegistrationFlow.d.ts +29 -0
  41. package/dist/_dts/blocks/src/system/runtime/nodes/buttonAffordance.d.ts +1 -1
  42. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/ErrorStep.d.ts +2 -1
  43. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/PaymentFailedStep.d.ts +2 -1
  44. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/VerifyingTimeoutStep.d.ts +2 -1
  45. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/types.d.ts +21 -0
  46. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationWizard.d.ts +4 -4
  47. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/whole-series-registration.headless.contract.d.ts +326 -0
  48. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/whole-series-registration.headless.planning.d.ts +27 -0
  49. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +5 -4
  50. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +3 -2
  51. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +2 -1
  52. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +5 -4
  53. package/dist/_dts/blocks/src/system/runtime/nodes/file-download.d.ts +2 -3
  54. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +2 -1
  55. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +6 -3
  56. package/dist/_dts/blocks/src/system/runtime/nodes/shop.interactive.d.ts +7 -6
  57. package/dist/_dts/blocks/src/system/runtime/nodes/shop.types.d.ts +2 -1
  58. package/dist/_dts/blocks/src/system/runtime/shared/types.d.ts +2 -1
  59. package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +4 -2
  60. package/dist/_dts/content-editor/src/index.d.ts +12 -12
  61. package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +17 -2
  62. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +221 -53
  63. package/dist/_dts/editor-blocks/src/widgets/button/context.d.ts +3 -2
  64. package/dist/_dts/preview-next/src/client/index.d.ts +3 -2
  65. package/dist/_dts/preview-next/src/client/preview/ButtonStylePicker.d.ts +16 -0
  66. package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +2 -3
  67. package/dist/_dts/preview-next/src/client/preview/PreviewDesignOpenRequestContext.d.ts +7 -0
  68. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +5 -11
  69. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +5 -6
  70. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +6 -7
  71. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +7 -9
  72. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +4 -11
  73. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +7 -7
  74. package/dist/_dts/preview-next/src/client/preview/sidebarTabPreference.d.ts +0 -8
  75. package/dist/_dts/preview-next/src/client/preview/siteChromeLookRows.d.ts +1 -11
  76. package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +1 -5
  77. package/dist/_dts/preview-next/src/client/preview/siteChromeSavePlan.d.ts +2 -3
  78. package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +3 -4
  79. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +3 -5
  80. package/dist/_dts/sdk/src/bookings/index.d.ts +5 -4
  81. package/dist/_dts/sdk/src/bookings/types.d.ts +3 -3
  82. package/dist/_dts/sdk/src/cli/commands/style.d.ts +3 -2
  83. package/dist/_dts/sdk/src/client/management/types.d.ts +2 -1
  84. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +12 -15
  85. package/dist/_dts/sdk/src/public-api/contracts.d.ts +1 -1
  86. package/dist/_dts/sdk/src/version.d.ts +1 -1
  87. package/dist/_dts/sdk/src/webhooks/index.d.ts +1 -1
  88. package/dist/_dts/sdk/src/webhooks/verify.d.ts +3 -3
  89. package/dist/_dts/site-commands/src/commands.d.ts +129 -6
  90. package/dist/_dts/theme-core/src/buttons/index.d.ts +1 -1
  91. package/dist/_dts/theme-core/src/buttons/styles/domain.d.ts +80 -0
  92. package/dist/_dts/theme-core/src/buttons/styles/index.d.ts +3 -0
  93. package/dist/_dts/theme-core/src/buttons/styles/recipes/defineStaticButtonStyleRecipe.d.ts +49 -0
  94. package/dist/_dts/theme-core/src/buttons/styles/recipes/quietArrow.d.ts +67 -0
  95. package/dist/_dts/theme-core/src/buttons/styles/recipes/staticRecipes.d.ts +649 -0
  96. package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +753 -0
  97. package/dist/_dts/theme-core/src/buttons/styles/selection.d.ts +69 -0
  98. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +26 -24
  99. package/dist/_dts/theme-core/src/site-styles/footerLooks.d.ts +19 -153
  100. package/dist/_dts/theme-core/src/site-styles/headerCtaVariants.d.ts +3 -1
  101. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +8 -9
  102. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +4 -4
  103. package/dist/_dts/ui/src/palette/hex.d.ts +3 -3
  104. package/dist/cli/index.mjs +1760 -1914
  105. package/dist/cli/init-docs/content/workflow-isr-revalidation.md +1 -1
  106. package/dist/client/{DiscountCodeDisclosure-DU1ygxU2.mjs → DiscountCodeDisclosure-C4xvTBux.mjs} +1 -1
  107. package/dist/client/{EventCombined.client-DB5zagCo.mjs → EventCombined.client-Cr7G131j.mjs} +2 -3
  108. package/dist/client/{EventListing.client-CTX9JHBL.mjs → EventListing.client-CAjbseNy.mjs} +2 -2
  109. package/dist/client/{LeafletStaticMap-BYImhgiB.mjs → LeafletStaticMap-BMlWfwz3.mjs} +1 -1
  110. package/dist/client/{MagicLinkForm-CRkw_M3l.mjs → MagicLinkForm-ChdFz96y.mjs} +1 -2
  111. package/dist/client/{StepIndicator-BnmVBJJh.mjs → StepIndicator-7D3GaBeM.mjs} +2 -2
  112. package/dist/client/{accordion-CeGreumd.mjs → accordion-D8JTs2Si.mjs} +1 -1
  113. package/dist/client/{bookingForm-CSzFNrpN.mjs → bookingForm-H3DCRBHs.mjs} +6 -7
  114. package/dist/client/bookings.mjs +3069 -1447
  115. package/dist/client/{carousel-B2jDtogf.mjs → carousel-DMr_QWlz.mjs} +1 -1
  116. package/dist/client/{cart-D-jZ-vaY.mjs → cart-DWMbfBdR.mjs} +3 -3
  117. package/dist/client/{checkout-Dza-LA7N.mjs → checkout-zmfdkXLx.mjs} +3 -3
  118. package/dist/client/client.mjs +1732 -1913
  119. package/dist/client/{colorStyles-CrgzoXsm.mjs → colorStyles-gcTh5yZT.mjs} +2 -12
  120. package/dist/client/{colorTokenParts-CMugwvX_.mjs → colorTokenParts-FSS3al6l.mjs} +31 -1
  121. package/dist/client/{courseRegistration-TYkNychb.mjs → courseRegistration-Z_mn18jy.mjs} +100 -37
  122. package/dist/client/{eventCalendar-BI_90SsT.mjs → eventCalendar-CYp0YJGF.mjs} +4 -5
  123. package/dist/client/{eventCombined-mNrpryE9.mjs → eventCombined-rKyYZUa9.mjs} +2 -2
  124. package/dist/client/{eventDetails-D4GVlCIY.mjs → eventDetails-X0ZaUuMj.mjs} +3 -3
  125. package/dist/client/{eventListing-YhKN018y.mjs → eventListing-W1SuL7EP.mjs} +2 -2
  126. package/dist/client/{eventRegistration-CdHGtilr.mjs → eventRegistration-ClWricui.mjs} +6 -7
  127. package/dist/client/{form-AcAL45rA.mjs → form--eKPwAAD.mjs} +1 -2
  128. package/dist/client/{headerSection-uEC52ueD.mjs → headerSection-BSeGr-FS.mjs} +2 -3
  129. package/dist/client/hooks.mjs +1554 -1871
  130. package/dist/client/{locationMap-_wJDSUYe.mjs → locationMap-BpOrtNYn.mjs} +8 -5
  131. package/dist/client/{media-BK0O3b-U.mjs → media-DoF0dcVx.mjs} +2 -2
  132. package/dist/client/{newsletterForm-DrArsb2B.mjs → newsletterForm-Bt7it7Dy.mjs} +1 -2
  133. package/dist/client/{pricing-BSYVghwo.mjs → pricing-BTjSDDr4.mjs} +1 -1
  134. package/dist/client/{productDetail-Dyk90sMs.mjs → productDetail-ICnVTcCg.mjs} +3 -3
  135. package/dist/client/{productList-BCKThwAI.mjs → productList-ZHr6D604.mjs} +3 -3
  136. package/dist/client/{propsDecoder-CkXxkdSR.mjs → propsDecoder-wWN0tBDF.mjs} +2351 -129
  137. package/dist/client/rendering/client.mjs +1664 -1824
  138. package/dist/client/rendering/islands.mjs +20 -20
  139. package/dist/client/rendering.mjs +1697 -1909
  140. package/dist/client/{shop-DeltVH10.mjs → shop-C1u_BUn0.mjs} +5 -6
  141. package/dist/client/{shop-commerce-BD9Jsm2Z.mjs → shop-commerce-CleZdRha.mjs} +5 -6
  142. package/dist/client/{shop-commerce-store-CmXD6FDS.mjs → shop-commerce-store-ycnoB2Ce.mjs} +1 -1
  143. package/dist/client/{shopShared-B8v-lH_F.mjs → shopShared-CPhByt2a.mjs} +3 -3
  144. package/dist/client/{useDiscountCodeUi-DbWJN8ld.mjs → useDiscountCodeUi-cStSQI6C.mjs} +1 -1
  145. package/dist/client/{useEventFilters-EJIMUnqT.mjs → useEventFilters-DKPN7hSY.mjs} +26 -27
  146. package/dist/client/{usePolling-Cmh14fc7.mjs → usePolling-BKAd6pkZ.mjs} +2 -2
  147. package/dist/preview-next/before-render.mjs +37 -6
  148. package/dist/preview-next/client/runtime.mjs +4 -4
  149. package/dist/preview-next/middleware.mjs +37 -6
  150. package/dist/{previewAuthStore-CTO7CRPk.mjs → previewAuthStore-BkT1D06A.mjs} +37 -6
  151. package/dist/{sdk-runtime-Dou0GAav.mjs → sdk-runtime-hu3wr3ng.mjs} +2 -2
  152. package/dist/{separator-CI5wZNXT.mjs → separator-Bln8izQ9.mjs} +1 -1
  153. package/dist/server/components.mjs +1472 -1788
  154. package/dist/server/config-validation.mjs +1559 -1876
  155. package/dist/server/config.mjs +1559 -1876
  156. package/dist/server/data.mjs +1554 -1871
  157. package/dist/server/index.mjs +38 -7
  158. package/dist/server/next/revalidate.mjs +53 -1
  159. package/dist/server/next.mjs +1584 -1869
  160. package/dist/server/page-converter.mjs +1543 -1860
  161. package/dist/server/prebuild.mjs +1 -1
  162. package/dist/server/rendering/server.mjs +1472 -1788
  163. package/dist/server/rendering.mjs +1472 -1788
  164. package/dist/server/routing.mjs +1600 -1891
  165. package/dist/server/server.mjs +1574 -1860
  166. package/dist/server/theme-bridge.mjs +1436 -1619
  167. package/dist/server/theme.mjs +1345 -1241
  168. package/dist/server/webhooks.mjs +54 -2
  169. package/package.json +1 -1
  170. package/dist/_dts/theme-core/src/buttons/personalities/brushed-wash.d.ts +0 -16
  171. package/dist/_dts/theme-core/src/buttons/personalities/confident-chip.d.ts +0 -16
  172. package/dist/_dts/theme-core/src/buttons/personalities/earth-pill.d.ts +0 -16
  173. package/dist/_dts/theme-core/src/buttons/personalities/editorial-link.d.ts +0 -16
  174. package/dist/_dts/theme-core/src/buttons/personalities/flat-ink.d.ts +0 -20
  175. package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +0 -172
  176. package/dist/_dts/theme-core/src/buttons/personalities/ink-stamp.d.ts +0 -16
  177. package/dist/_dts/theme-core/src/buttons/personalities/joy-stamp.d.ts +0 -22
  178. package/dist/_dts/theme-core/src/buttons/personalities/ornate-ritual.d.ts +0 -16
  179. package/dist/_dts/theme-core/src/buttons/personalities/pebble.d.ts +0 -16
  180. package/dist/_dts/theme-core/src/buttons/personalities/quiet-arrow.d.ts +0 -17
  181. package/dist/_dts/theme-core/src/buttons/personalities/showtime-pill.d.ts +0 -17
  182. package/dist/_dts/theme-core/src/buttons/personalities/soft-pill.d.ts +0 -16
  183. package/dist/_dts/theme-core/src/buttons/personalities/two-tone-pill.d.ts +0 -17
  184. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +0 -285
  185. package/dist/client/buttons-DoFV7KDL.mjs +0 -2115
  186. package/dist/client/foregroundContract-xICPq59x.mjs +0 -31
@@ -2090,7 +2090,7 @@ export declare const runtimeBackedBlockClientEntries: {
2090
2090
  waitlistMessage?: string;
2091
2091
  membershipMessage?: string;
2092
2092
  buttonText?: string | null;
2093
- buttonVariant?: "primary" | "secondary" | "outline";
2093
+ buttonVariant?: import("../../..").BlockButtonRole;
2094
2094
  stage?: "preview" | "published";
2095
2095
  }>) => Readonly<{
2096
2096
  display: Readonly<{
@@ -2124,7 +2124,7 @@ export declare const runtimeBackedBlockClientEntries: {
2124
2124
  waitlistMessage?: string;
2125
2125
  membershipMessage?: string;
2126
2126
  buttonText?: string | null;
2127
- buttonVariant?: "primary" | "secondary" | "outline";
2127
+ buttonVariant?: import("../../..").BlockButtonRole;
2128
2128
  stage?: "preview" | "published";
2129
2129
  }>) => unknown;
2130
2130
  decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
@@ -2148,7 +2148,7 @@ export declare const runtimeBackedBlockClientEntries: {
2148
2148
  waitlistMessage?: string;
2149
2149
  membershipMessage?: string;
2150
2150
  buttonText?: string | null;
2151
- buttonVariant?: "primary" | "secondary" | "outline";
2151
+ buttonVariant?: import("../../..").BlockButtonRole;
2152
2152
  stage?: "preview" | "published";
2153
2153
  }>>;
2154
2154
  }>;
@@ -2200,7 +2200,7 @@ export declare const runtimeBackedBlockClientEntries: {
2200
2200
  waitlistMessage?: string;
2201
2201
  membershipMessage?: string;
2202
2202
  buttonText?: string | null;
2203
- buttonVariant?: "primary" | "secondary" | "outline";
2203
+ buttonVariant?: import("../../..").BlockButtonRole;
2204
2204
  stage?: "preview" | "published";
2205
2205
  }>) => Readonly<{
2206
2206
  display: Readonly<{
@@ -2234,7 +2234,7 @@ export declare const runtimeBackedBlockClientEntries: {
2234
2234
  waitlistMessage?: string;
2235
2235
  membershipMessage?: string;
2236
2236
  buttonText?: string | null;
2237
- buttonVariant?: "primary" | "secondary" | "outline";
2237
+ buttonVariant?: import("../../..").BlockButtonRole;
2238
2238
  stage?: "preview" | "published";
2239
2239
  }>) => unknown;
2240
2240
  decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
@@ -2258,7 +2258,7 @@ export declare const runtimeBackedBlockClientEntries: {
2258
2258
  waitlistMessage?: string;
2259
2259
  membershipMessage?: string;
2260
2260
  buttonText?: string | null;
2261
- buttonVariant?: "primary" | "secondary" | "outline";
2261
+ buttonVariant?: import("../../..").BlockButtonRole;
2262
2262
  stage?: "preview" | "published";
2263
2263
  }>>;
2264
2264
  }>;
@@ -2445,7 +2445,7 @@ export declare const runtimeBackedBlockClientEntries: {
2445
2445
  showCapacity?: boolean;
2446
2446
  successMessage?: string;
2447
2447
  waitlistMessage?: string;
2448
- buttonVariant?: "primary" | "secondary" | "outline";
2448
+ buttonVariant?: import("../../..").BlockButtonRole;
2449
2449
  overlayEnabled?: boolean;
2450
2450
  spamProtectionEnabled?: boolean;
2451
2451
  stage?: "preview" | "published";
@@ -2490,7 +2490,7 @@ export declare const runtimeBackedBlockClientEntries: {
2490
2490
  showCapacity?: boolean;
2491
2491
  successMessage?: string;
2492
2492
  waitlistMessage?: string;
2493
- buttonVariant?: "primary" | "secondary" | "outline";
2493
+ buttonVariant?: import("../../..").BlockButtonRole;
2494
2494
  overlayEnabled?: boolean;
2495
2495
  spamProtectionEnabled?: boolean;
2496
2496
  stage?: "preview" | "published";
@@ -2522,7 +2522,7 @@ export declare const runtimeBackedBlockClientEntries: {
2522
2522
  showCapacity?: boolean;
2523
2523
  successMessage?: string;
2524
2524
  waitlistMessage?: string;
2525
- buttonVariant?: "primary" | "secondary" | "outline";
2525
+ buttonVariant?: import("../../..").BlockButtonRole;
2526
2526
  overlayEnabled?: boolean;
2527
2527
  spamProtectionEnabled?: boolean;
2528
2528
  stage?: "preview" | "published";
@@ -2588,7 +2588,7 @@ export declare const runtimeBackedBlockClientEntries: {
2588
2588
  showCapacity?: boolean;
2589
2589
  successMessage?: string;
2590
2590
  waitlistMessage?: string;
2591
- buttonVariant?: "primary" | "secondary" | "outline";
2591
+ buttonVariant?: import("../../..").BlockButtonRole;
2592
2592
  overlayEnabled?: boolean;
2593
2593
  spamProtectionEnabled?: boolean;
2594
2594
  stage?: "preview" | "published";
@@ -2633,7 +2633,7 @@ export declare const runtimeBackedBlockClientEntries: {
2633
2633
  showCapacity?: boolean;
2634
2634
  successMessage?: string;
2635
2635
  waitlistMessage?: string;
2636
- buttonVariant?: "primary" | "secondary" | "outline";
2636
+ buttonVariant?: import("../../..").BlockButtonRole;
2637
2637
  overlayEnabled?: boolean;
2638
2638
  spamProtectionEnabled?: boolean;
2639
2639
  stage?: "preview" | "published";
@@ -2665,7 +2665,7 @@ export declare const runtimeBackedBlockClientEntries: {
2665
2665
  showCapacity?: boolean;
2666
2666
  successMessage?: string;
2667
2667
  waitlistMessage?: string;
2668
- buttonVariant?: "primary" | "secondary" | "outline";
2668
+ buttonVariant?: import("../../..").BlockButtonRole;
2669
2669
  overlayEnabled?: boolean;
2670
2670
  spamProtectionEnabled?: boolean;
2671
2671
  stage?: "preview" | "published";
@@ -2747,7 +2747,7 @@ export declare const runtimeBackedBlockClientEntries: {
2747
2747
  passes: readonly import("../..").PublicPassProduct[];
2748
2748
  memberships: readonly import("../..").PublicMembershipProduct[];
2749
2749
  passPurchaseMode: "add_to_cart" | "buy_now";
2750
- buttonVariant: "primary" | "secondary" | "outline" | "link";
2750
+ buttonVariant: import("../../..").BlockButtonRole;
2751
2751
  }>;
2752
2752
  }>;
2753
2753
  contracts: Readonly<{
@@ -2789,7 +2789,7 @@ export declare const runtimeBackedBlockClientEntries: {
2789
2789
  passes: readonly import("../..").PublicPassProduct[];
2790
2790
  memberships: readonly import("../..").PublicMembershipProduct[];
2791
2791
  passPurchaseMode: "add_to_cart" | "buy_now";
2792
- buttonVariant: "primary" | "secondary" | "outline" | "link";
2792
+ buttonVariant: import("../../..").BlockButtonRole;
2793
2793
  }>;
2794
2794
  }>) => unknown;
2795
2795
  decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
@@ -2825,7 +2825,7 @@ export declare const runtimeBackedBlockClientEntries: {
2825
2825
  passes: readonly import("../..").PublicPassProduct[];
2826
2826
  memberships: readonly import("../..").PublicMembershipProduct[];
2827
2827
  passPurchaseMode: "add_to_cart" | "buy_now";
2828
- buttonVariant: "primary" | "secondary" | "outline" | "link";
2828
+ buttonVariant: import("../../..").BlockButtonRole;
2829
2829
  }>;
2830
2830
  }>>;
2831
2831
  }>;
@@ -2869,7 +2869,7 @@ export declare const runtimeBackedBlockClientEntries: {
2869
2869
  passes: readonly import("../..").PublicPassProduct[];
2870
2870
  memberships: readonly import("../..").PublicMembershipProduct[];
2871
2871
  passPurchaseMode: "add_to_cart" | "buy_now";
2872
- buttonVariant: "primary" | "secondary" | "outline" | "link";
2872
+ buttonVariant: import("../../..").BlockButtonRole;
2873
2873
  }>;
2874
2874
  }>;
2875
2875
  contracts: Readonly<{
@@ -2911,7 +2911,7 @@ export declare const runtimeBackedBlockClientEntries: {
2911
2911
  passes: readonly import("../..").PublicPassProduct[];
2912
2912
  memberships: readonly import("../..").PublicMembershipProduct[];
2913
2913
  passPurchaseMode: "add_to_cart" | "buy_now";
2914
- buttonVariant: "primary" | "secondary" | "outline" | "link";
2914
+ buttonVariant: import("../../..").BlockButtonRole;
2915
2915
  }>;
2916
2916
  }>) => unknown;
2917
2917
  decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
@@ -2947,7 +2947,7 @@ export declare const runtimeBackedBlockClientEntries: {
2947
2947
  passes: readonly import("../..").PublicPassProduct[];
2948
2948
  memberships: readonly import("../..").PublicMembershipProduct[];
2949
2949
  passPurchaseMode: "add_to_cart" | "buy_now";
2950
- buttonVariant: "primary" | "secondary" | "outline" | "link";
2950
+ buttonVariant: import("../../..").BlockButtonRole;
2951
2951
  }>;
2952
2952
  }>>;
2953
2953
  }>;
@@ -1056,7 +1056,7 @@ export declare const runtimeBackedBlockServerEntries: {
1056
1056
  waitlistMessage?: string;
1057
1057
  membershipMessage?: string;
1058
1058
  buttonText?: string | null;
1059
- buttonVariant?: "primary" | "secondary" | "outline";
1059
+ buttonVariant?: import("../../..").BlockButtonRole;
1060
1060
  stage?: "preview" | "published";
1061
1061
  }>) => Readonly<{
1062
1062
  display: Readonly<{
@@ -1090,7 +1090,7 @@ export declare const runtimeBackedBlockServerEntries: {
1090
1090
  waitlistMessage?: string;
1091
1091
  membershipMessage?: string;
1092
1092
  buttonText?: string | null;
1093
- buttonVariant?: "primary" | "secondary" | "outline";
1093
+ buttonVariant?: import("../../..").BlockButtonRole;
1094
1094
  stage?: "preview" | "published";
1095
1095
  }>) => unknown;
1096
1096
  decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
@@ -1114,7 +1114,7 @@ export declare const runtimeBackedBlockServerEntries: {
1114
1114
  waitlistMessage?: string;
1115
1115
  membershipMessage?: string;
1116
1116
  buttonText?: string | null;
1117
- buttonVariant?: "primary" | "secondary" | "outline";
1117
+ buttonVariant?: import("../../..").BlockButtonRole;
1118
1118
  stage?: "preview" | "published";
1119
1119
  }>>;
1120
1120
  }>;
@@ -1232,7 +1232,7 @@ export declare const runtimeBackedBlockServerEntries: {
1232
1232
  showCapacity?: boolean;
1233
1233
  successMessage?: string;
1234
1234
  waitlistMessage?: string;
1235
- buttonVariant?: "primary" | "secondary" | "outline";
1235
+ buttonVariant?: import("../../..").BlockButtonRole;
1236
1236
  overlayEnabled?: boolean;
1237
1237
  spamProtectionEnabled?: boolean;
1238
1238
  stage?: "preview" | "published";
@@ -1277,7 +1277,7 @@ export declare const runtimeBackedBlockServerEntries: {
1277
1277
  showCapacity?: boolean;
1278
1278
  successMessage?: string;
1279
1279
  waitlistMessage?: string;
1280
- buttonVariant?: "primary" | "secondary" | "outline";
1280
+ buttonVariant?: import("../../..").BlockButtonRole;
1281
1281
  overlayEnabled?: boolean;
1282
1282
  spamProtectionEnabled?: boolean;
1283
1283
  stage?: "preview" | "published";
@@ -1309,7 +1309,7 @@ export declare const runtimeBackedBlockServerEntries: {
1309
1309
  showCapacity?: boolean;
1310
1310
  successMessage?: string;
1311
1311
  waitlistMessage?: string;
1312
- buttonVariant?: "primary" | "secondary" | "outline";
1312
+ buttonVariant?: import("../../..").BlockButtonRole;
1313
1313
  overlayEnabled?: boolean;
1314
1314
  spamProtectionEnabled?: boolean;
1315
1315
  stage?: "preview" | "published";
@@ -1389,7 +1389,7 @@ export declare const runtimeBackedBlockServerEntries: {
1389
1389
  passes: readonly import("../..").PublicPassProduct[];
1390
1390
  memberships: readonly import("../..").PublicMembershipProduct[];
1391
1391
  passPurchaseMode: "add_to_cart" | "buy_now";
1392
- buttonVariant: "primary" | "secondary" | "outline" | "link";
1392
+ buttonVariant: import("../../..").BlockButtonRole;
1393
1393
  }>;
1394
1394
  }>;
1395
1395
  contracts: Readonly<{
@@ -1431,7 +1431,7 @@ export declare const runtimeBackedBlockServerEntries: {
1431
1431
  passes: readonly import("../..").PublicPassProduct[];
1432
1432
  memberships: readonly import("../..").PublicMembershipProduct[];
1433
1433
  passPurchaseMode: "add_to_cart" | "buy_now";
1434
- buttonVariant: "primary" | "secondary" | "outline" | "link";
1434
+ buttonVariant: import("../../..").BlockButtonRole;
1435
1435
  }>;
1436
1436
  }>) => unknown;
1437
1437
  decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
@@ -1467,7 +1467,7 @@ export declare const runtimeBackedBlockServerEntries: {
1467
1467
  passes: readonly import("../..").PublicPassProduct[];
1468
1468
  memberships: readonly import("../..").PublicMembershipProduct[];
1469
1469
  passPurchaseMode: "add_to_cart" | "buy_now";
1470
- buttonVariant: "primary" | "secondary" | "outline" | "link";
1470
+ buttonVariant: import("../../..").BlockButtonRole;
1471
1471
  }>;
1472
1472
  }>>;
1473
1473
  }>;
@@ -0,0 +1,29 @@
1
+ import React from 'react';
2
+ import { type BlockApiConfig } from '../api';
3
+ import type { CourseRegistrationClientProps } from '../nodes/course-registration/types';
4
+ import { useCourseRegistrationWizard } from '../nodes/course-registration/useCourseRegistrationWizard';
5
+ import type { HeadlessWholeSeriesRegistrationFlow, WholeSeriesRegistrationRunInput } from '../nodes/course-registration/whole-series-registration.headless.contract';
6
+ export type { BlockApiConfig };
7
+ export type { HeadlessWholeSeriesRegistrationFlow, WholeSeriesRegistrationAvailabilityModel, WholeSeriesRegistrationFlowActionResult, WholeSeriesRegistrationFlowActions, WholeSeriesRegistrationFlowStatus, WholeSeriesRegistrationFlowStep, WholeSeriesRegistrationFlowStepId, WholeSeriesRegistrationFlowView, WholeSeriesRegistrationPaymentModel, WholeSeriesRegistrationPaymentSelection, WholeSeriesRegistrationPricingInput, WholeSeriesRegistrationPricingModel, WholeSeriesRegistrationPricingOptionInput, WholeSeriesRegistrationRun, WholeSeriesRegistrationRunInput, WholeSeriesRegistrationRunsModel, WholeSeriesRegistrationSpamProtectionModel, WholeSeriesRegistrationWaitlistClaimModel, } from '../nodes/course-registration/whole-series-registration.headless.contract';
8
+ export type HeadlessWholeSeriesRegistrationFlowOptions = Readonly<{
9
+ runs?: readonly WholeSeriesRegistrationRunInput[];
10
+ contentEntry?: CourseRegistrationClientProps['contentEntry'];
11
+ subject?: CourseRegistrationClientProps['subject'];
12
+ }>;
13
+ export type HeadlessWholeSeriesRegistrationProviderProps = Readonly<{
14
+ config: BlockApiConfig;
15
+ children?: React.ReactNode;
16
+ }>;
17
+ export type WholeSeriesRegistrationControllerDeps = Readonly<{
18
+ useCourseRegistrationWizard: typeof useCourseRegistrationWizard;
19
+ }>;
20
+ export declare function createWholeSeriesRegistrationBlockApiConfig(input: Readonly<{
21
+ siteId: string;
22
+ apiBaseUrl: string;
23
+ portalToken?: string | null;
24
+ previewToken?: string | null;
25
+ stage?: 'preview' | 'published';
26
+ }>): BlockApiConfig;
27
+ export declare function HeadlessWholeSeriesRegistrationProvider({ config, children, }: HeadlessWholeSeriesRegistrationProviderProps): React.ReactElement;
28
+ export declare function useHeadlessWholeSeriesRegistrationFlow(options: HeadlessWholeSeriesRegistrationFlowOptions): HeadlessWholeSeriesRegistrationFlow;
29
+ export declare function useWholeSeriesRegistrationControllerWithDeps(options: HeadlessWholeSeriesRegistrationFlowOptions, deps: WholeSeriesRegistrationControllerDeps): HeadlessWholeSeriesRegistrationFlow;
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * A button can acquire a trailing icon from two places:
5
5
  * 1. The node itself (`trailingIcon` / `trailingIconColorToken` props).
6
- * 2. The active button personality/variant (`affordance`), supplied by the
6
+ * 2. The active button style/variant (`affordance`), supplied by the
7
7
  * theme so a variant carries an affordance without per-node authoring.
8
8
  *
9
9
  * Node-level wins over the personality default. When neither supplies one, the
@@ -2,13 +2,14 @@
2
2
  * Error terminal state component.
3
3
  * Shows error message with retry option.
4
4
  */
5
+ import type { BlockButtonRole } from '../../../constants/buttonRoles';
5
6
  type ErrorStepProps = {
6
7
  /** Error message to display */
7
8
  message: string;
8
9
  /** Button text */
9
10
  buttonText?: string;
10
11
  /** Button style variant */
11
- buttonVariant?: 'primary' | 'secondary' | 'outline';
12
+ buttonVariant?: BlockButtonRole;
12
13
  /** Callback when retry is clicked */
13
14
  onRetry: () => void;
14
15
  };
@@ -2,13 +2,14 @@
2
2
  * Payment failed terminal state component.
3
3
  * Shows when payment could not be processed.
4
4
  */
5
+ import type { BlockButtonRole } from '../../../constants/buttonRoles';
5
6
  type PaymentFailedStepProps = {
6
7
  /** Error message to display */
7
8
  message?: string;
8
9
  /** Button text */
9
10
  buttonText?: string;
10
11
  /** Button style variant */
11
- buttonVariant?: 'primary' | 'secondary' | 'outline';
12
+ buttonVariant?: BlockButtonRole;
12
13
  /** Callback when retry is clicked */
13
14
  onRetry: () => void;
14
15
  };
@@ -2,11 +2,12 @@
2
2
  * Verifying timeout terminal state component.
3
3
  * Shows when payment verification takes too long.
4
4
  */
5
+ import type { BlockButtonRole } from '../../../constants/buttonRoles';
5
6
  type VerifyingTimeoutStepProps = {
6
7
  /** Button text */
7
8
  buttonText?: string;
8
9
  /** Button style variant */
9
- buttonVariant?: 'primary' | 'secondary' | 'outline';
10
+ buttonVariant?: BlockButtonRole;
10
11
  /** Callback when check again is clicked */
11
12
  onCheckAgain: () => void;
12
13
  /** Optional support email to display */
@@ -29,6 +29,20 @@ export type EnrollmentResult = {
29
29
  waitlistPosition?: number;
30
30
  usedMembership?: boolean;
31
31
  };
32
+ export type CourseRegistrationWizardActionResult = Readonly<{
33
+ kind: 'state-updated';
34
+ }> | Readonly<{
35
+ kind: 'checkout-redirect';
36
+ checkoutUrl: string;
37
+ }> | Readonly<{
38
+ kind: 'validation-failed';
39
+ }> | Readonly<{
40
+ kind: 'blocked';
41
+ message: string;
42
+ }> | Readonly<{
43
+ kind: 'failed';
44
+ message: string;
45
+ }>;
32
46
  /**
33
47
  * Content entry context from CMS
34
48
  */
@@ -105,3 +119,10 @@ export interface CourseRegistrationClientProps extends CourseRegistrationBasePro
105
119
  /** @deprecated Stage is now controlled by BlockApiProvider's isPreview config */
106
120
  stage?: 'preview' | 'published';
107
121
  }
122
+ export type CourseRegistrationWizardOptions = Readonly<{
123
+ /**
124
+ * Receives checkout destinations for headless consumers. The default UI
125
+ * navigates automatically when this callback is absent.
126
+ */
127
+ onCheckoutRedirect?: (checkoutUrl: string) => void;
128
+ }>;
@@ -1,8 +1,8 @@
1
1
  import type { PublicCourse } from '../../../blocks/courses/shared';
2
2
  import type { CourseEligibilityCheckResponse } from '../../api/types';
3
- import type { BookingMode, CourseRegistrationClientProps, EnrollmentResult, EnrollmentStep, FormData, PortalAuthState } from './types';
3
+ import type { BookingMode, CourseRegistrationClientProps, CourseRegistrationWizardActionResult, CourseRegistrationWizardOptions, EnrollmentResult, EnrollmentStep, FormData, PortalAuthState } from './types';
4
4
  type PaymentChoice = 'checkout' | 'membership';
5
- export declare function useCourseRegistrationWizard(props: CourseRegistrationClientProps): {
5
+ export declare function useCourseRegistrationWizard(props: CourseRegistrationClientProps, options?: CourseRegistrationWizardOptions): {
6
6
  api: import("../../api").BlockApiClient;
7
7
  scopedCourses: PublicCourse[];
8
8
  step: EnrollmentStep;
@@ -69,8 +69,8 @@ export declare function useCourseRegistrationWizard(props: CourseRegistrationCli
69
69
  hasPreSelectedCourse: boolean;
70
70
  hasCoursePayment: boolean;
71
71
  handleCourseSelect: (course: PublicCourse) => void;
72
- handleSubmit: () => Promise<void>;
73
- handlePaymentContinue: () => Promise<void>;
72
+ handleSubmit: () => Promise<CourseRegistrationWizardActionResult>;
73
+ handlePaymentContinue: () => Promise<CourseRegistrationWizardActionResult>;
74
74
  handleRetry: () => void;
75
75
  handleBookingModeChange: (mode: BookingMode) => void;
76
76
  };