@riverbankcms/sdk 0.148.0 → 0.150.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 (250) hide show
  1. package/README.md +1 -1
  2. package/dist/EventEmbeddedCheckoutStep-D00Kc8Zj.mjs +285 -0
  3. package/dist/{PreviewEditorSidebar-DvEPG3Z2.mjs → PreviewEditorSidebar-7ZhmmnBB.mjs} +103 -66
  4. package/dist/{PreviewEditorUI-D6eb6fkx.mjs → PreviewEditorUI-BIJucTRd.mjs} +3 -6
  5. package/dist/{PreviewQueryProvider-5znTyJuz.mjs → PreviewQueryProvider-C0mndwHB.mjs} +3 -3
  6. package/dist/{SdkPreviewModeRuntime-DJ6utQ_R.mjs → SdkPreviewModeRuntime-tj45gmCX.mjs} +96 -67
  7. package/dist/{SiteChromeCustomizeContext-CFJYh6vo.mjs → SiteChromeCustomizeContext-BFOt0ss-.mjs} +4804 -4161
  8. package/dist/_dts/ai/src/contracts/proposals.d.ts +660 -0
  9. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +510 -0
  10. package/dist/_dts/api/src/billing.d.ts +2 -2
  11. package/dist/_dts/api/src/bookingConfig.d.ts +33 -48
  12. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +2 -6
  13. package/dist/_dts/api/src/bookingOperations.d.ts +5 -7
  14. package/dist/_dts/api/src/bookingRecords.d.ts +15 -11
  15. package/dist/_dts/api/src/bookingRefundOutcomes.d.ts +5 -5
  16. package/dist/_dts/api/src/clientErrorReporting.d.ts +11 -0
  17. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +0 -2
  18. package/dist/_dts/api/src/common/cancellation.d.ts +23 -0
  19. package/dist/_dts/api/src/contentRuntime.d.ts +5 -1
  20. package/dist/_dts/api/src/customerMembershipOutcomes.d.ts +1 -1
  21. package/dist/_dts/api/src/endpoints.d.ts +2 -10
  22. package/dist/_dts/api/src/eventManagementContracts.d.ts +4 -7
  23. package/dist/_dts/api/src/footerCompositionContracts.d.ts +9 -0
  24. package/dist/_dts/api/src/footerSettings.d.ts +3 -3
  25. package/dist/_dts/api/src/index.d.ts +4 -4
  26. package/dist/_dts/api/src/navigation/bookingPortalLink.d.ts +13 -0
  27. package/dist/_dts/api/src/navigation.d.ts +1 -0
  28. package/dist/_dts/api/src/publicAppointmentBookingContracts.d.ts +2 -2
  29. package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +2 -29
  30. package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +9 -173
  31. package/dist/_dts/api/src/request.d.ts +1 -1
  32. package/dist/_dts/api/src/sdk-event-upsert.d.ts +1 -1
  33. package/dist/_dts/api/src/sdkPullEventContracts.d.ts +1 -1
  34. package/dist/_dts/api/src/sdkThemeWire.d.ts +12 -0
  35. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +3 -3
  36. package/dist/_dts/api/src/siteOperations.d.ts +6 -2
  37. package/dist/_dts/api/src/siteSettings.d.ts +2 -0
  38. package/dist/_dts/blocks/src/client/site-chrome.d.ts +1 -1
  39. package/dist/_dts/blocks/src/client.d.ts +2 -1
  40. package/dist/_dts/blocks/src/contracts/index.d.ts +1 -1
  41. package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +2 -2
  42. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +38 -10
  43. package/dist/_dts/blocks/src/portal/types.d.ts +9 -6
  44. package/dist/_dts/blocks/src/rendering/server.d.ts +1 -1
  45. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +24 -24
  46. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +1 -1
  47. package/dist/_dts/blocks/src/system/blocks/shared/bookingPaymentTerms.d.ts +84 -160
  48. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +2 -2
  49. package/dist/_dts/blocks/src/system/blocks/shop.shared.d.ts +31 -4
  50. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +30 -3
  51. package/dist/_dts/blocks/src/system/designCapabilities.d.ts +10 -1
  52. package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
  53. package/dist/_dts/blocks/src/system/runtime/api/types/appointments.d.ts +2 -2
  54. package/dist/_dts/blocks/src/system/runtime/api/types/core.d.ts +3 -1
  55. package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +38 -18
  56. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +48 -6
  57. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +24 -3
  58. package/dist/_dts/blocks/src/system/runtime/hooks/useBookingNowIso.d.ts +8 -0
  59. package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +1 -1
  60. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.server.d.ts +6 -0
  61. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.state.d.ts +2 -1
  62. package/dist/_dts/blocks/src/system/runtime/nodes/commerce/shared/display.d.ts +9 -2
  63. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/presentation.d.ts +14 -2
  64. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventEmbeddedCheckoutStep.d.ts +13 -0
  65. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationPayment.d.ts +15 -0
  66. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationWizardActions.d.ts +0 -1
  67. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/FullyBookedStep.d.ts +6 -0
  68. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/PaymentBlockingPanel.d.ts +3 -0
  69. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/PaymentSelectionStep.d.ts +4 -0
  70. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +15 -5
  71. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.planning.d.ts +4 -2
  72. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventPaymentOptions.d.ts +3 -3
  73. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/paymentLocation.d.ts +3 -0
  74. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/paymentResponse.d.ts +72 -0
  75. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationCompletion.d.ts +66 -5
  76. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationErrorRecovery.d.ts +1 -4
  77. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationStateMachine.d.ts +13 -5
  78. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/sessionStorage.d.ts +11 -52
  79. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +19 -2
  80. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationStripeReturn.d.ts +7 -42
  81. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +7 -8
  82. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +94 -24
  83. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useGuestRegistrationRecovery.d.ts +30 -0
  84. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/usePaymentStatusRecovery.d.ts +24 -12
  85. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useRegistrationAdmission.d.ts +18 -0
  86. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/wizardSteps.d.ts +6 -1
  87. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +1 -1
  88. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +24 -24
  89. package/dist/_dts/blocks/src/system/runtime/nodes/shop.interactive.d.ts +41 -6
  90. package/dist/_dts/blocks/src/system/runtime/shared/bookingPaymentOptions.d.ts +7 -2
  91. package/dist/_dts/blocks/src/system/runtime/shared/stripe/browserStripe.d.ts +8 -0
  92. package/dist/_dts/blocks/src/system/transforms/registry/eventCalendar.d.ts +8 -0
  93. package/dist/_dts/commerce/src/purchase/bookingPaymentSelection.d.ts +54 -0
  94. package/dist/_dts/commerce/src/purchase/checkoutCommitPlan.d.ts +58 -13
  95. package/dist/_dts/commerce/src/purchase/checkoutCopy.d.ts +10 -0
  96. package/dist/_dts/commerce/src/purchase/checkoutErrorCodes.d.ts +1 -1
  97. package/dist/_dts/commerce/src/purchase/checkoutPaymentPlanPlanning.d.ts +16 -21
  98. package/dist/_dts/commerce/src/purchase/checkoutPaymentTerms.d.ts +23 -40
  99. package/dist/_dts/commerce/src/purchase/checkoutPresentation.d.ts +49 -0
  100. package/dist/_dts/commerce/src/purchase/checkoutSessionMetadata.d.ts +6 -6
  101. package/dist/_dts/commerce/src/purchase/checkoutStripeFinalizationPlanning.d.ts +5 -1
  102. package/dist/_dts/commerce/src/purchase/checkoutStripeSessionPlanning.d.ts +5 -4
  103. package/dist/_dts/commerce/src/purchase/event-registration-errors.d.ts +9 -0
  104. package/dist/_dts/commerce/src/purchase/index.d.ts +3 -3
  105. package/dist/_dts/commerce/src/purchase/membershipOrderItemMetadata.d.ts +4 -0
  106. package/dist/_dts/commerce/src/purchase/oneTimeCheckoutPlanning.d.ts +9 -4
  107. package/dist/_dts/commerce/src/purchase/orderInstalmentClosure.d.ts +13 -1
  108. package/dist/_dts/commerce/src/purchase/orderInstalmentLifecycle.d.ts +5 -0
  109. package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +4 -1
  110. package/dist/_dts/commerce/src/purchase/orderTypes.d.ts +7 -1
  111. package/dist/_dts/commerce/src/purchase/refundRailSplit.d.ts +1 -1
  112. package/dist/_dts/commerce/src/purchase/stateTransitions.d.ts +2 -2
  113. package/dist/_dts/commerce/src/purchase/stripeCheckoutReturnUrl.d.ts +9 -2
  114. package/dist/_dts/commerce/src/purchase/stripeMinimumCharge.d.ts +6 -0
  115. package/dist/_dts/commerce/src/purchase/types.d.ts +7 -7
  116. package/dist/_dts/content-editor/src/FooterComposerOverview.d.ts +3 -2
  117. package/dist/_dts/content-editor/src/controller/editLeaseHandover.d.ts +30 -0
  118. package/dist/_dts/content-editor/src/footerPreviewRuntime.d.ts +6 -1
  119. package/dist/_dts/content-editor/src/lib/browserStorage.d.ts +5 -0
  120. package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +7 -0
  121. package/dist/_dts/core/src/booking-flexible-balance.d.ts +2 -2
  122. package/dist/_dts/core/src/booking-instalment-deposit.d.ts +20 -0
  123. package/dist/_dts/core/src/booking-live-payment-terms.d.ts +72 -0
  124. package/dist/_dts/core/src/booking-payment-options.d.ts +24 -0
  125. package/dist/_dts/core/src/booking-payment-schemas.d.ts +522 -0
  126. package/dist/_dts/core/src/branded.d.ts +3 -0
  127. package/dist/_dts/core/src/edit-lease.d.ts +5 -0
  128. package/dist/_dts/core/src/index.d.ts +4 -0
  129. package/dist/_dts/core/src/patch/index.d.ts +30 -0
  130. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +326 -36
  131. package/dist/_dts/media-editor/src/MediaPickerDialog.d.ts +3 -1
  132. package/dist/_dts/media-editor/src/MediaPickerMiniDialog.d.ts +10 -0
  133. package/dist/_dts/media-editor/src/index.d.ts +2 -0
  134. package/dist/_dts/preview-next/src/client/preview/PreviewEntryControllerProvider.d.ts +0 -1
  135. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +1 -1
  136. package/dist/_dts/preview-next/src/client/previewAuthStore.d.ts +7 -0
  137. package/dist/_dts/preview-next/src/constants.d.ts +4 -0
  138. package/dist/_dts/preview-next/src/keepAlive.d.ts +1 -0
  139. package/dist/_dts/sdk/src/bookings/index.d.ts +2 -1
  140. package/dist/_dts/sdk/src/bookings/types.d.ts +1 -1
  141. package/dist/_dts/sdk/src/rendering/islands/types.d.ts +2 -12
  142. package/dist/_dts/sdk/src/version.d.ts +1 -1
  143. package/dist/_dts/theme-core/src/blocks/index.d.ts +1 -0
  144. package/dist/_dts/theme-core/src/blocks/opaquePanels.d.ts +147 -0
  145. package/dist/_dts/theme-core/src/boxBackgroundSchema.d.ts +22 -0
  146. package/dist/_dts/theme-core/src/buttons/buttonSurfaceContext.d.ts +22 -0
  147. package/dist/_dts/theme-core/src/cards/roles.d.ts +12 -0
  148. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  149. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +198 -0
  150. package/dist/_dts/theme-core/src/palette/utils/index.d.ts +2 -0
  151. package/dist/_dts/theme-core/src/palette/utils/scrimContrast.d.ts +22 -0
  152. package/dist/_dts/theme-core/src/runtime/bridgeColourTokens.d.ts +10 -0
  153. package/dist/_dts/theme-core/src/schema.d.ts +330 -0
  154. package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +0 -51
  155. package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +0 -51
  156. package/dist/_dts/theme-core/src/site-styles/lookResolution.d.ts +11 -0
  157. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorCapabilities.d.ts +7 -1
  158. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +7 -1
  159. package/dist/_dts/theme-core/src/site-styles/pageDesignIntent.d.ts +0 -5
  160. package/dist/_dts/theme-core/src/site-styles/previewRuntimeCapabilities.d.ts +12 -6
  161. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +7 -4
  162. package/dist/_dts/theme-core/src/site-styles/sectionSurfaceBackgrounds.d.ts +65 -0
  163. package/dist/_dts/theme-core/src/site-styles/types.d.ts +17 -0
  164. package/dist/_dts/theme-core/src/surfaces/opaqueSurface.d.ts +43 -0
  165. package/dist/_dts/ui/src/color-picker.d.ts +1 -1
  166. package/dist/_dts/ui/src/palette/useHexDraft.d.ts +7 -0
  167. package/dist/client/{BookingMailingListNote-CzRt2dF_.mjs → BookingMailingListNote-CYHOufsI.mjs} +33 -124
  168. package/dist/client/{CheckboxChoice-B33MqoUo.mjs → CheckboxChoice-M-3HycLw.mjs} +1 -1
  169. package/dist/client/{DemoBookingPortalAccess-mxqwap3f.mjs → DemoBookingPortalAccess-Cvr9O_ca.mjs} +2 -2
  170. package/dist/client/{EventCombined.client-CDb11igO.mjs → EventCombined.client-m5UZIobP.mjs} +7 -7
  171. package/dist/client/EventEmbeddedCheckoutStep-DL6zFAkA.mjs +289 -0
  172. package/dist/client/{EventListing.client-EgYhzKPa.mjs → EventListing.client-DeMfCM04.mjs} +2 -2
  173. package/dist/client/{LeafletStaticMap-gtmtaA2b.mjs → LeafletStaticMap-CvZ3gOdD.mjs} +1 -1
  174. package/dist/client/{checkoutUrls-CXhko2Rv.mjs → RichText-BtfNvQV6.mjs} +2 -29
  175. package/dist/client/{TerminalPanel-DvNUP5ot.mjs → TerminalPanel-CUCNEwlH.mjs} +2 -18
  176. package/dist/client/{ThemedButton-C7CeUJjW.mjs → ThemedButton-C7WhXuRl.mjs} +2 -2
  177. package/dist/client/{accordion-kjvt49rA.mjs → accordion-cQm5mjqs.mjs} +1 -1
  178. package/dist/client/{bookingForm-pbRZordh.mjs → bookingForm-BVPJE5RQ.mjs} +15 -11
  179. package/dist/client/bookings.mjs +2860 -1222
  180. package/dist/client/{carousel-f4Zbmicv.mjs → carousel-3vgnY7LC.mjs} +2 -2
  181. package/dist/client/{carousel.client-A2lG-9od.mjs → carousel.client-CISsdZvg.mjs} +1 -1
  182. package/dist/client/{cart-DO20An50.mjs → cart-BGK4oOjm.mjs} +3 -3
  183. package/dist/client/{checkout-Du5amDR_.mjs → checkout-GsBLUNJD.mjs} +3 -3
  184. package/dist/client/checkoutUrls-ChxwaNtO.mjs +28 -0
  185. package/dist/client/client.mjs +3324 -2053
  186. package/dist/client/{colorStyles-j5U9v5JA.mjs → colorStyles-D-32xHZh.mjs} +2 -30
  187. package/dist/client/{context-eW97E945.mjs → context-D_8s12Fp.mjs} +1 -1
  188. package/dist/client/{dates-jPCirRea.mjs → dates-DeJQbQ9T.mjs} +2 -2
  189. package/dist/client/{eventCalendar-C2M-iE4j.mjs → eventCalendar-cmucD4NR.mjs} +10 -10
  190. package/dist/client/{eventCombined-W6ns3LHg.mjs → eventCombined-ku3E9FTl.mjs} +4 -4
  191. package/dist/client/{eventDetails-CR-GT0f0.mjs → eventDetails-CyKZ61sF.mjs} +5 -5
  192. package/dist/client/{eventListing-BK8AfYZz.mjs → eventListing-B7yxGIhX.mjs} +4 -4
  193. package/dist/client/{eventRegistration-BJSd4KUu.mjs → eventRegistration-BoXfSFgZ.mjs} +1455 -1184
  194. package/dist/client/{form-BvpfbQaT.mjs → form-CNQOWhJo.mjs} +5 -5
  195. package/dist/client/{headerSection-I5sUQ8x-.mjs → headerSection-DahaBJGQ.mjs} +3 -3
  196. package/dist/client/hooks.mjs +283 -193
  197. package/dist/client/{locationMap-BLvwf9_f.mjs → locationMap-BoDjqYlW.mjs} +4 -4
  198. package/dist/client/{media-Cl38iOMI.mjs → media-BFY0y2rb.mjs} +2 -1
  199. package/dist/client/{newsletterForm-DrQ2weE8.mjs → newsletterForm-DtzXDklw.mjs} +4 -4
  200. package/dist/client/{pricing-BES87mrR.mjs → pricing-DXEh2Lhh.mjs} +1 -1
  201. package/dist/client/{productDetail-Url9jcc5.mjs → productDetail-D7cPa-00.mjs} +3 -3
  202. package/dist/client/{productList-DE7ngEZJ.mjs → productList-D1XMap66.mjs} +3 -3
  203. package/dist/client/{propsDecoder-D1OtGXDV.mjs → propsDecoder-DiIeBopB.mjs} +913 -322
  204. package/dist/client/rendering/client.mjs +3913 -2260
  205. package/dist/client/rendering/islands.mjs +19 -19
  206. package/dist/client/rendering.mjs +3302 -2013
  207. package/dist/client/result-DRW7JWXz.mjs +30 -0
  208. package/dist/client/{routeIslandApiConfig-BG9Y-SHg.mjs → routeIslandApiConfig-wzR4lKAY.mjs} +1 -1
  209. package/dist/client/scrollToBlock-C86BYkyV.mjs +17 -0
  210. package/dist/client/{shop-CJkuySJ3.mjs → shop-CYT5P-S5.mjs} +13 -14
  211. package/dist/client/{shop-commerce-store-Bxm75Pg6.mjs → shop-commerce-store-wKhsJQxI.mjs} +1 -1
  212. package/dist/client/{shop-commerce-4rKj5n9h.mjs → shop-commerce-ypBu_dx4.mjs} +9 -9
  213. package/dist/client/{shopShared-DpoQDWfz.mjs → shopShared-DFGhYrf2.mjs} +52 -6
  214. package/dist/client/{useEventFilters-D8HliSqR.mjs → useEventFilters-blSbN5o7.mjs} +8 -8
  215. package/dist/preview-next/before-render.mjs +15 -22
  216. package/dist/preview-next/client/runtime.mjs +4 -4
  217. package/dist/preview-next/constants.mjs +5 -1
  218. package/dist/preview-next/index.mjs +5 -1
  219. package/dist/preview-next/keepAlive.mjs +149 -82
  220. package/dist/preview-next/middleware.mjs +15 -22
  221. package/dist/{previewAuthStore-BXXF3hhW.mjs → previewAuthStore-BBmV7UsW.mjs} +49 -29
  222. package/dist/{sdk-runtime-C2a05WjL.mjs → sdk-runtime-2p8uQk1V.mjs} +2 -2
  223. package/dist/{separator-CuNhBAhS.mjs → separator-Cvvzk0Oo.mjs} +1 -1
  224. package/dist/server/components.mjs +4041 -3704
  225. package/dist/server/config-validation.mjs +345 -255
  226. package/dist/server/config.mjs +345 -255
  227. package/dist/server/data.mjs +283 -193
  228. package/dist/server/index.mjs +20 -27
  229. package/dist/server/next.mjs +788 -469
  230. package/dist/server/page-converter.mjs +245 -121
  231. package/dist/server/prebuild.mjs +1 -1
  232. package/dist/server/rendering/server.mjs +4018 -3690
  233. package/dist/server/rendering.mjs +4044 -3707
  234. package/dist/server/routing.mjs +314 -190
  235. package/dist/server/server.mjs +290 -218
  236. package/dist/server/theme-bridge.mjs +1122 -310
  237. package/dist/server/theme.mjs +126 -116
  238. package/dist/spinner-CDo6AkDz.mjs +658 -0
  239. package/dist/styles/index.css +75 -212
  240. package/package.json +1 -1
  241. package/dist/_dts/api/src/bookingPaymentTermSchemas.d.ts +0 -123
  242. package/dist/_dts/billing/src/checkout/platform.d.ts +0 -77
  243. package/dist/_dts/billing/src/config/env.d.ts +0 -29
  244. package/dist/_dts/billing/src/stripe/client.d.ts +0 -29
  245. package/dist/_dts/blocks/src/system/runtime/hooks/usePaymentVerification.d.ts +0 -63
  246. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventCheckoutHandoffRestore.d.ts +0 -9
  247. package/dist/_dts/commerce/src/purchase/checkoutPaymentTermPlanning.d.ts +0 -10
  248. package/dist/_dts/commerce/src/purchase/checkoutValidatedItemPlanning.d.ts +0 -55
  249. package/dist/_dts/commerce/src/purchase/orderInstalmentPayoff.d.ts +0 -24
  250. package/dist/client/urlParams-D71VXFGx.mjs +0 -47
@@ -343,6 +343,16 @@ function isRecord$13(value) {
343
343
  return typeof value === "object" && value !== null && !Array.isArray(value);
344
344
  }
345
345
  //#endregion
346
+ //#region ../core/src/booking-payment-options.ts
347
+ /** Automatic instalments and a flexible balance cannot share one booking offer. */
348
+ function validateBookingPaymentOptionKinds(kinds) {
349
+ if (kinds.length === 0) return err("no_options");
350
+ const uniqueKinds = new Set(kinds);
351
+ if (uniqueKinds.size !== kinds.length) return err("duplicate_kind");
352
+ if (uniqueKinds.has("instalment_plan") && uniqueKinds.has("flexible_balance")) return err("incompatible_collection_options");
353
+ return ok(void 0);
354
+ }
355
+ //#endregion
346
356
  //#region ../core/src/booking-time-zone.ts
347
357
  const TIME_ZONE_VALIDITY_CACHE_LIMIT = 100;
348
358
  const timeZoneValidityCache = /* @__PURE__ */ new Map();
@@ -3867,6 +3877,15 @@ function fallbackBackground(fallbackToken, palette) {
3867
3877
  reason: "unresolvable-colour"
3868
3878
  };
3869
3879
  }
3880
+ /** Every role's contextual styles against one proven solid surface. */
3881
+ function knownSurfaceButtonContextStyles(input) {
3882
+ return Object.fromEntries(VARIANT_ROLES.flatMap((role) => Object.entries(contextualButtonSurfaceStyles(resolveContextualButtonRole({
3883
+ role,
3884
+ buttonSystem: input.buttonSystem,
3885
+ palette: input.palette,
3886
+ surface: input.surface
3887
+ })))));
3888
+ }
3870
3889
  function resolveContextualButtonRole(input) {
3871
3890
  const requested = findVariant(input.buttonSystem, input.role);
3872
3891
  if (!requested) return {
@@ -6866,6 +6885,18 @@ function brandNonEmptyString(value, label) {
6866
6885
  if (value.length === 0) throw new Error(`${label} must be a non-empty string.`);
6867
6886
  return value;
6868
6887
  }
6888
+ /**
6889
+ * What a block's own section background field admits, read from its manifest.
6890
+ * A site style's surface rule may paint a gradient or a photo; a block whose
6891
+ * `_sectionStyles.background` refuses that paint would be dropped at render
6892
+ * admission, so the runtime compiler paints the surface's colour equivalent
6893
+ * instead (see `compileSectionBackground`).
6894
+ */
6895
+ const sectionBackgroundPaintValues = [
6896
+ "color",
6897
+ "gradient",
6898
+ "image"
6899
+ ];
6869
6900
  const plainFrame = { kind: "plain" };
6870
6901
  function panelFrame(treatment) {
6871
6902
  return {
@@ -6950,6 +6981,7 @@ function defineBlockDesignCapability(capability) {
6950
6981
  ...capability,
6951
6982
  kind: "designed",
6952
6983
  looks: capability.looks ?? "not-applicable",
6984
+ sectionBackgroundPaints: admittedSectionBackgroundPaints(capability.sectionBackgroundPaints),
6953
6985
  sectionHeights: capability.sectionHeights ?? ["default"],
6954
6986
  imageSurfaceTreatments: capability.imageSurfaceTreatments ?? ["none"],
6955
6987
  imageSurfaceMotions: capability.imageSurfaceMotions ?? ["static"],
@@ -6962,6 +6994,10 @@ function defineBlockDesignCapability(capability) {
6962
6994
  ...capability.accordionIconSets ? { accordionIconSets: capability.accordionIconSets } : {}
6963
6995
  };
6964
6996
  }
6997
+ /** Absent means the block admits every section background paint. */
6998
+ function admittedSectionBackgroundPaints(paints) {
6999
+ return paints ?? sectionBackgroundPaintValues;
7000
+ }
6965
7001
  //#endregion
6966
7002
  //#region ../theme-core/src/site-styles/logoBranding.ts
6967
7003
  const logoTextConfidenceValues = [
@@ -7240,12 +7276,22 @@ const mediaPresentationSchema = commonSchema.extend({
7240
7276
  const boxBackgroundSchema = z.discriminatedUnion("type", [
7241
7277
  commonSchema.extend({
7242
7278
  type: z.literal("color"),
7243
- color: tokenOrCssColorValueSchema.nullable().optional()
7279
+ color: tokenOrCssColorValueSchema.nullable().optional(),
7280
+ /**
7281
+ * Compiler-owned. The scrim a site-style colour surface lays over media
7282
+ * that replaces it (a Look's band meeting an authored photo), sized so the
7283
+ * surface's foreground stays legible over any pixel. A colour background
7284
+ * never draws it itself; `resolveSectionBackground` moves it onto the
7285
+ * merged media background as its overlay.
7286
+ */
7287
+ mediaScrim: boxBackgroundOverlaySchema.nullable().optional()
7244
7288
  }),
7245
7289
  commonSchema.extend({
7246
7290
  type: z.literal("gradient"),
7247
7291
  gradient: z.string().nullable().optional(),
7248
- gradientPresetId: z.string().min(1).nullable().optional()
7292
+ gradientPresetId: z.string().min(1).nullable().optional(),
7293
+ /** Compiler-owned; see the colour branch. */
7294
+ mediaScrim: boxBackgroundOverlaySchema.nullable().optional()
7249
7295
  }),
7250
7296
  mediaPresentationSchema.extend({
7251
7297
  type: z.literal("image"),
@@ -8095,68 +8141,115 @@ const RichTextDocSchema = z.object({
8095
8141
  content: z.array(TipTapNodeSchema)
8096
8142
  }).strict();
8097
8143
  //#endregion
8098
- //#region ../blocks/src/system/blocks/shared/bookingPaymentTerms.ts
8099
- const bookingDepositRefundPolicySchema$1 = z.enum(["refundable", "non_refundable"]);
8100
- const bookingInstalmentPlanSchema$1 = z.union([
8101
- z.object({
8102
- kind: z.literal("deposit_plus_one_remainder"),
8103
- depositAmountCents: z.number().int().min(0),
8104
- depositRefundability: bookingDepositRefundPolicySchema$1,
8105
- remainderDueCount: z.number().int().positive(),
8106
- intervalUnit: z.enum([
8107
- "day",
8108
- "week",
8109
- "month"
8110
- ])
8111
- }),
8112
- z.object({
8113
- kind: z.literal("deposit_plus_scheduled_instalments"),
8114
- depositAmountCents: z.number().int().min(0),
8115
- depositRefundability: bookingDepositRefundPolicySchema$1,
8116
- instalmentCount: z.number().int().positive(),
8117
- intervalCount: z.number().int().positive(),
8118
- intervalUnit: z.enum([
8119
- "day",
8120
- "week",
8121
- "month"
8122
- ])
8123
- }),
8124
- z.object({
8125
- kind: z.literal("equal_scheduled_instalments"),
8126
- instalmentCount: z.number().int().positive(),
8127
- intervalCount: z.number().int().positive(),
8128
- intervalUnit: z.enum([
8129
- "day",
8130
- "week",
8131
- "month"
8132
- ])
8133
- })
8134
- ]);
8135
- const bookingFlexibleBalanceDueDateRuleSchema$1 = z.union([z.object({
8136
- kind: z.literal("relative_to_start_date"),
8137
- daysBeforeStart: z.number().int().positive()
8138
- }), z.object({
8139
- kind: z.literal("fixed_calendar_date"),
8140
- dueAt: z.string().datetime()
8141
- })]);
8142
- const bookingFlexibleBalanceConfigSchema$1 = z.object({
8143
- upfrontAmountCents: z.number().int().min(0),
8144
- dueDateRule: bookingFlexibleBalanceDueDateRuleSchema$1,
8145
- depositRefundability: bookingDepositRefundPolicySchema$1
8146
- });
8147
- const blockBookingPaymentCollectionOptionSchema = z.union([
8148
- z.object({ kind: z.literal("upfront") }),
8149
- z.object({ kind: z.literal("deferred_manual") }),
8150
- z.object({
8151
- kind: z.literal("instalment_plan"),
8152
- plan: bookingInstalmentPlanSchema$1
8153
- }),
8154
- z.object({
8155
- kind: z.literal("flexible_balance"),
8156
- config: bookingFlexibleBalanceConfigSchema$1
8157
- })
8144
+ //#region ../core/src/booking-payment-schemas.ts
8145
+ const stripObject = (shape) => z.object(shape);
8146
+ const strictObject = (shape) => z.strictObject(shape);
8147
+ const depositRefundPolicySchema = z.enum(["refundable", "non_refundable"]);
8148
+ const intervalUnitSchema = z.enum([
8149
+ "day",
8150
+ "week",
8151
+ "month"
8158
8152
  ]);
8159
- const blockBookingPaymentTermsSchema = z.object({ allowedOptions: z.array(blockBookingPaymentCollectionOptionSchema).min(1) });
8153
+ const nonNegativeIntegerSchema = z.number().int().nonnegative();
8154
+ const positiveIntegerSchema = z.number().int().positive();
8155
+ function createInstalmentPlanSchema(object) {
8156
+ return z.discriminatedUnion("kind", [
8157
+ object({
8158
+ kind: z.literal("deposit_plus_one_remainder"),
8159
+ depositAmountCents: nonNegativeIntegerSchema,
8160
+ depositRefundability: depositRefundPolicySchema,
8161
+ remainderDueCount: positiveIntegerSchema,
8162
+ intervalUnit: intervalUnitSchema
8163
+ }),
8164
+ object({
8165
+ kind: z.literal("deposit_plus_scheduled_instalments"),
8166
+ depositAmountCents: nonNegativeIntegerSchema,
8167
+ depositRefundability: depositRefundPolicySchema,
8168
+ instalmentCount: positiveIntegerSchema,
8169
+ intervalCount: positiveIntegerSchema,
8170
+ intervalUnit: intervalUnitSchema
8171
+ }),
8172
+ object({
8173
+ kind: z.literal("equal_scheduled_instalments"),
8174
+ instalmentCount: positiveIntegerSchema,
8175
+ intervalCount: positiveIntegerSchema,
8176
+ intervalUnit: intervalUnitSchema
8177
+ })
8178
+ ]);
8179
+ }
8180
+ function createFlexibleBalanceSchemas(object) {
8181
+ const dueDateRule = z.discriminatedUnion("kind", [object({
8182
+ kind: z.literal("relative_to_start_date"),
8183
+ daysBeforeStart: positiveIntegerSchema
8184
+ }), object({
8185
+ kind: z.literal("fixed_calendar_date"),
8186
+ dueAt: z.string().datetime()
8187
+ })]);
8188
+ return {
8189
+ dueDateRule,
8190
+ config: object({
8191
+ upfrontAmountCents: nonNegativeIntegerSchema,
8192
+ dueDateRule,
8193
+ depositRefundability: depositRefundPolicySchema
8194
+ })
8195
+ };
8196
+ }
8197
+ const paymentOptionKindsMessages = {
8198
+ no_options: "Choose at least one way for customers to pay.",
8199
+ duplicate_kind: "Choose each payment option only once.",
8200
+ incompatible_collection_options: "Offer instalments or a deposit with the rest paid later, but not both."
8201
+ };
8202
+ function buildBookingPaymentOptionSchemas(object) {
8203
+ const instalmentPlan = createInstalmentPlanSchema(object);
8204
+ const flexibleBalance = createFlexibleBalanceSchemas(object);
8205
+ const paymentCollectionOption = z.discriminatedUnion("kind", [
8206
+ object({ kind: z.literal("upfront") }),
8207
+ object({ kind: z.literal("deferred_manual") }),
8208
+ object({
8209
+ kind: z.literal("instalment_plan"),
8210
+ plan: instalmentPlan
8211
+ }),
8212
+ object({
8213
+ kind: z.literal("flexible_balance"),
8214
+ config: flexibleBalance.config
8215
+ })
8216
+ ]);
8217
+ const paymentTerms = object({ allowedOptions: z.array(paymentCollectionOption) }).superRefine(({ allowedOptions }, ctx) => {
8218
+ const result = validateBookingPaymentOptionKinds(allowedOptions.map(({ kind }) => kind));
8219
+ if (!result.ok) ctx.addIssue({
8220
+ code: "custom",
8221
+ path: ["allowedOptions"],
8222
+ message: paymentOptionKindsMessages[result.error]
8223
+ });
8224
+ });
8225
+ const paymentOptionsChoice = z.discriminatedUnion("source", [z.strictObject({ source: z.literal("default") }), z.strictObject({
8226
+ source: z.literal("custom"),
8227
+ paymentTerms
8228
+ })]);
8229
+ return {
8230
+ depositRefundPolicy: depositRefundPolicySchema,
8231
+ instalmentPlan,
8232
+ flexibleBalanceDueDateRule: flexibleBalance.dueDateRule,
8233
+ flexibleBalanceConfig: flexibleBalance.config,
8234
+ paymentCollectionOption,
8235
+ paymentTerms,
8236
+ paymentOptionsChoice
8237
+ };
8238
+ }
8239
+ function createBookingPaymentOptionSchemas(mode) {
8240
+ return mode === "strict" ? buildBookingPaymentOptionSchemas(strictObject) : buildBookingPaymentOptionSchemas(stripObject);
8241
+ }
8242
+ const bookingPaymentOptionSchemas = createBookingPaymentOptionSchemas("strip");
8243
+ bookingPaymentOptionSchemas.depositRefundPolicy;
8244
+ bookingPaymentOptionSchemas.instalmentPlan;
8245
+ bookingPaymentOptionSchemas.flexibleBalanceDueDateRule;
8246
+ bookingPaymentOptionSchemas.flexibleBalanceConfig;
8247
+ bookingPaymentOptionSchemas.paymentCollectionOption;
8248
+ const bookingPaymentTermsSchema = bookingPaymentOptionSchemas.paymentTerms;
8249
+ bookingPaymentOptionSchemas.paymentOptionsChoice;
8250
+ //#endregion
8251
+ //#region ../blocks/src/system/blocks/shared/bookingPaymentTerms.ts
8252
+ const blockBookingPaymentTermsSchema = bookingPaymentTermsSchema;
8160
8253
  //#endregion
8161
8254
  //#region ../blocks/src/system/blocks/shared/bookingConsent.ts
8162
8255
  const blockBookingConsentSchema = z.object({
@@ -11392,7 +11485,8 @@ const CLIENT_ERROR_REPORT_LIMITS = {
11392
11485
  stack: 8e3,
11393
11486
  digest: 128,
11394
11487
  componentStack: 8e3,
11395
- sourceLocation: 1024
11488
+ sourceLocation: 1024,
11489
+ navigationAgeMs: 6e4
11396
11490
  };
11397
11491
  const clientErrorEventSchema = z.enum([
11398
11492
  "dashboard:route-error",
@@ -11409,7 +11503,17 @@ z.object({
11409
11503
  stack: z.string().max(CLIENT_ERROR_REPORT_LIMITS.stack).nullable(),
11410
11504
  digest: z.string().max(CLIENT_ERROR_REPORT_LIMITS.digest).nullable(),
11411
11505
  componentStack: z.string().max(CLIENT_ERROR_REPORT_LIMITS.componentStack).nullable(),
11412
- sourceLocation: z.string().max(CLIENT_ERROR_REPORT_LIMITS.sourceLocation).nullable()
11506
+ sourceLocation: z.string().max(CLIENT_ERROR_REPORT_LIMITS.sourceLocation).nullable(),
11507
+ navigation: z.object({
11508
+ fromPathname: z.string().regex(/^\/[^?#]*$/).max(CLIENT_ERROR_REPORT_LIMITS.pathname),
11509
+ toPathname: z.string().regex(/^\/[^?#]*$/).max(CLIENT_ERROR_REPORT_LIMITS.pathname),
11510
+ type: z.enum([
11511
+ "push",
11512
+ "replace",
11513
+ "traverse"
11514
+ ]),
11515
+ ageMs: z.number().int().min(0).max(CLIENT_ERROR_REPORT_LIMITS.navigationAgeMs)
11516
+ }).strict().nullable().optional()
11413
11517
  }).strict();
11414
11518
  ({
11415
11519
  ...SITE_LIFECYCLE_ENDPOINT_DEFINITIONS,
@@ -13026,6 +13130,17 @@ function defineBlockAppearancePreset(preset) {
13026
13130
  * (`defineBlockAppearancePreset` defaults it to `none`) — the block's own
13027
13131
  * composition still governs how its items look. The per-Look rationale for the card-bearing ones lives
13028
13132
  * in `.project/plans/1297-card-role-contract-site-styles-own-card-surfaces/mapping-table.md`.
13133
+ *
13134
+ * A Look asking for the `alternative` or `open` role is offered only where the
13135
+ * site style defines that role (`siteStyleSupportsLookDesign`), so two Looks
13136
+ * that differ only in role are distinct wherever both are offered.
13137
+ *
13138
+ * Retiring a Look is removing its entry. A stored pin to a retired id reads as
13139
+ * an unsupported pin in the page design editor model and renders the block's
13140
+ * auto Look, the same path an unavailable Look takes. Duplicates retired in
13141
+ * the 2026-09 Look audit: `feature-cards-soft-panels`,
13142
+ * `feature-cards-photo-tiles`, `feature-cards-editorial-pathways`,
13143
+ * `testimonials-default-cards`.
13029
13144
  */
13030
13145
  const brandScrimOptionGroups = [{
13031
13146
  id: "image-surface-treatment",
@@ -13410,16 +13525,6 @@ defineBlockAppearancePreset({
13410
13525
  treatment: "framed-programme"
13411
13526
  }
13412
13527
  }
13413
- }), defineBlockAppearancePreset({
13414
- id: "feature-cards-soft-panels",
13415
- target: "feature-cards",
13416
- label: "Soft tinted panels",
13417
- blockKinds: ["block.feature-cards"],
13418
- design: {
13419
- sectionSurface: "base",
13420
- contentFrame: plainFrame,
13421
- cardRole: "alternative"
13422
- }
13423
13528
  }), defineBlockAppearancePreset({
13424
13529
  id: "feature-cards-editorial-diptych",
13425
13530
  target: "feature-cards",
@@ -13431,27 +13536,6 @@ defineBlockAppearancePreset({
13431
13536
  contentFrame: plainFrame,
13432
13537
  cardRole: "default"
13433
13538
  }
13434
- }), defineBlockAppearancePreset({
13435
- id: "feature-cards-editorial-pathways",
13436
- target: "feature-cards",
13437
- label: "Editorial pathways",
13438
- blockKinds: ["block.feature-cards"],
13439
- constraints: { layoutVariantKeys: ["editorial-pathways"] },
13440
- design: {
13441
- sectionSurface: "base",
13442
- contentFrame: plainFrame,
13443
- cardRole: "default"
13444
- }
13445
- }), defineBlockAppearancePreset({
13446
- id: "feature-cards-photo-tiles",
13447
- target: "feature-cards",
13448
- label: "Photo tiles",
13449
- blockKinds: ["block.feature-cards"],
13450
- design: {
13451
- sectionSurface: "base",
13452
- contentFrame: plainFrame,
13453
- cardRole: "default"
13454
- }
13455
13539
  }), defineBlockAppearancePreset({
13456
13540
  id: "events-lined-panel",
13457
13541
  target: "events",
@@ -13540,16 +13624,6 @@ defineBlockAppearancePreset({
13540
13624
  contentFrame: panelFrame("raised"),
13541
13625
  cardRole: "default"
13542
13626
  }
13543
- }), defineBlockAppearancePreset({
13544
- id: "testimonials-default-cards",
13545
- target: "testimonials",
13546
- label: "Default cards",
13547
- blockKinds: ["block.testimonials"],
13548
- design: {
13549
- sectionSurface: "base",
13550
- contentFrame: plainFrame,
13551
- cardRole: "default"
13552
- }
13553
13627
  }), defineBlockAppearancePreset({
13554
13628
  id: "testimonials-statement-cards",
13555
13629
  target: "testimonials",
@@ -17031,9 +17105,7 @@ const curatedSiteStyles = [
17031
17105
  recommendedAppearancePresetIds: [
17032
17106
  "hero-split-editorial",
17033
17107
  "intro-portrait-bio",
17034
- "feature-cards-soft-panels",
17035
- "feature-cards-editorial-columns",
17036
- "feature-cards-photo-tiles",
17108
+ "feature-cards-bold-colors",
17037
17109
  "testimonials-non-carded",
17038
17110
  "faq-contained-help",
17039
17111
  "contact-form-panel"
@@ -17677,8 +17749,7 @@ const curatedSiteStyles = [
17677
17749
  "intro-portrait-bio",
17678
17750
  "feature-cards-editorial-columns",
17679
17751
  "feature-cards-editorial-diptych",
17680
- "feature-cards-editorial-pathways",
17681
- "feature-cards-soft-panels",
17752
+ "feature-cards-bold-colors",
17682
17753
  "events-lined-panel",
17683
17754
  "testimonials-non-carded",
17684
17755
  "faq-base-accordion",
@@ -19275,6 +19346,34 @@ function withLookCapability(declaration) {
19275
19346
  }
19276
19347
  };
19277
19348
  }
19349
+ /**
19350
+ * The section background paints a block's own `_sectionStyles.background`
19351
+ * field admits, read from its manifest so the design capability cannot drift
19352
+ * from what render admission accepts. A block without the field admits none.
19353
+ */
19354
+ function sectionBackgroundPaintsOfFields(fields) {
19355
+ const sectionStyles = fields.find((field) => field.id === "_sectionStyles");
19356
+ if (!sectionStyles || sectionStyles.type !== "modal") return [];
19357
+ const background = sectionStyles.schema.fields.find((field) => field.id === "background");
19358
+ if (!background || background.type !== "tabGroup") return [];
19359
+ const tabIds = new Set(background.tabs.map((tab) => tab.id));
19360
+ return [
19361
+ "color",
19362
+ "gradient",
19363
+ "image"
19364
+ ].filter((paint) => tabIds.has(paint));
19365
+ }
19366
+ /** Pins a designed capability's section background paints to the block's manifest. */
19367
+ function withManifestSectionBackgroundPaints(declaration, fields) {
19368
+ if (declaration.kind !== "capability") return declaration;
19369
+ return {
19370
+ kind: "capability",
19371
+ capability: {
19372
+ ...declaration.capability,
19373
+ sectionBackgroundPaints: sectionBackgroundPaintsOfFields(fields)
19374
+ }
19375
+ };
19376
+ }
19278
19377
  function declareNoBlockDesignCapability(reason) {
19279
19378
  return {
19280
19379
  kind: "none",
@@ -21146,15 +21245,11 @@ function resolveContextualButtonStyles(background, foreground, context, options)
21146
21245
  if (!paletteCache.has(palette)) paletteCache.set(palette, surfaceCache);
21147
21246
  const cached = surfaceCache.get(cacheKey);
21148
21247
  if (cached) return cached;
21149
- const styles = Object.fromEntries(VARIANT_ROLES.flatMap((role) => {
21150
- const resolution = resolveContextualButtonRole({
21151
- role,
21152
- buttonSystem,
21153
- palette,
21154
- surface: surface.surface
21155
- });
21156
- return Object.entries(contextualButtonSurfaceStyles(resolution));
21157
- }));
21248
+ const styles = knownSurfaceButtonContextStyles({
21249
+ surface: surface.surface,
21250
+ palette,
21251
+ buttonSystem
21252
+ });
21158
21253
  surfaceCache.set(cacheKey, styles);
21159
21254
  return styles;
21160
21255
  }
@@ -27834,6 +27929,20 @@ const footerEngagement = stack({
27834
27929
  ...footerSpamProtectionBinding
27835
27930
  }), [], when("module.engagement.kind", { equals: "mailing-list" }))
27836
27931
  ], when("module.kind", { equals: "engagement" }));
27932
+ const platformAttribution = el("div", {
27933
+ className: "rb-caption",
27934
+ "data-site-attribution": "macadamia"
27935
+ }, [
27936
+ text({ as: "span" }, bind("module.lead")),
27937
+ text({
27938
+ as: "span",
27939
+ value: " "
27940
+ }),
27941
+ link({
27942
+ href: { $bind: { from: "module.link.href" } },
27943
+ className: "footer-nav-link rb-caption transition-theme-standard"
27944
+ }, [text({ as: "span" }, bind("module.link.label"))])
27945
+ ], when("module.kind", { equals: "attribution" }));
27837
27946
  const footerGroup = stack({
27838
27947
  gap: "md",
27839
27948
  align: "stretch",
@@ -27863,6 +27972,7 @@ const footerGroup = stack({
27863
27972
  hours,
27864
27973
  socials,
27865
27974
  footerEngagement,
27975
+ platformAttribution,
27866
27976
  stack({ className: "rb-w-full" }, [authoredCopy], when("module.kind", { equals: "supporting-text" })),
27867
27977
  stack({ className: "rb-w-full rb-lg-col-span-3" }, [authoredCopy], when("module.kind", { equals: "legal" }))
27868
27978
  ], repeat("group.modules", "module"))], repeat("region.groups", "group"));
@@ -29947,7 +30057,7 @@ const publicPassProductCollectionSchema = z.object({ passes: z.array(publicPassP
29947
30057
  /**
29948
30058
  * Public membership product for shop display
29949
30059
  */
29950
- const publicMembershipProductSchema = z.object({
30060
+ const publicMembershipProductFields = {
29951
30061
  id: z.string(),
29952
30062
  name: z.string(),
29953
30063
  description: z.string().nullable(),
@@ -29956,7 +30066,16 @@ const publicMembershipProductSchema = z.object({
29956
30066
  billingInterval: z.enum(["month", "year"]),
29957
30067
  eligibleCategoryIds: z.array(z.string()),
29958
30068
  eligibleCategoryNames: z.array(z.string())
30069
+ };
30070
+ const purchasablePublicMembershipProductSchema = z.object({
30071
+ ...publicMembershipProductFields,
30072
+ purchaseAvailability: z.literal("purchasable")
29959
30073
  });
30074
+ const publicMembershipProductSchema = z.discriminatedUnion("purchaseAvailability", [purchasablePublicMembershipProductSchema, z.object({
30075
+ ...publicMembershipProductFields,
30076
+ purchaseAvailability: z.literal("display_only"),
30077
+ unavailabilityReason: z.literal("online_payments_unavailable")
30078
+ })]);
29960
30079
  const publicMembershipProductCollectionSchema = z.object({ memberships: z.array(publicMembershipProductSchema) });
29961
30080
  //#endregion
29962
30081
  //#region ../blocks/src/system/blocks/event-registration.shared.ts
@@ -30087,14 +30206,18 @@ const calendarTabViewsSchema = z.enum([
30087
30206
  * @param needsPaymentStep - Whether user must complete payment method selection
30088
30207
  * @returns Array of wizard steps to display
30089
30208
  */
30090
- function getWizardStepsForContext(hasPreSelectedContext, needsPaymentStep) {
30209
+ function getWizardStepsForContext(hasPreSelectedContext, needsPaymentStep, paymentActive = false) {
30091
30210
  const baseSteps = hasPreSelectedContext ? ["select-tickets", "enter-details"] : [
30092
30211
  "select-event",
30093
30212
  "select-tickets",
30094
30213
  "enter-details"
30095
30214
  ];
30096
30215
  if (!needsPaymentStep) return baseSteps;
30097
- return [...baseSteps, "select-payment"];
30216
+ return paymentActive ? [
30217
+ ...baseSteps,
30218
+ "select-payment",
30219
+ "payment"
30220
+ ] : [...baseSteps, "select-payment"];
30098
30221
  }
30099
30222
  //#endregion
30100
30223
  //#region ../blocks/src/system/runtime/nodes/event-registration/registrationDerivations.ts
@@ -30213,6 +30336,7 @@ const EVENT_REGISTRATION_SHELL_STEP_LABELS = [
30213
30336
  "Date",
30214
30337
  "Tickets",
30215
30338
  "Details",
30339
+ "Payment options",
30216
30340
  "Payment"
30217
30341
  ];
30218
30342
  const eventRegistrationPublicEventSchema = z.preprocess(normalizeEventRegistrationEventInput, publicEventSchema);
@@ -30355,12 +30479,13 @@ function shellLabelForRegistrationStep(step, events) {
30355
30479
  switch (step) {
30356
30480
  case "select-event": return isDateSelection(events) ? "Date" : "Event";
30357
30481
  case "select-tickets": return "Tickets";
30482
+ case "fully-booked":
30358
30483
  case "enter-details": return "Details";
30359
- case "select-payment": return "Payment";
30484
+ case "select-payment": return "Payment options";
30485
+ case "payment": return "Payment";
30360
30486
  case "error":
30361
30487
  case "success":
30362
30488
  case "submitting":
30363
- case "redirecting":
30364
30489
  case "verifying-payment":
30365
30490
  case "verifying-timeout":
30366
30491
  case "payment-status":
@@ -30372,7 +30497,7 @@ function isDateSelection(events) {
30372
30497
  return Boolean(events.length > 1 && firstSeriesId && events.every((event) => event.seriesId === firstSeriesId));
30373
30498
  }
30374
30499
  function buildEventRegistrationShellBodyText(stepLabels) {
30375
- if (stepLabels.includes("Payment")) return "Preparing tickets, details, and payment options.";
30500
+ if (stepLabels.includes("Payment options")) return "Preparing tickets, details, and payment options.";
30376
30501
  if (stepLabels[0] === "Tickets") return "Preparing tickets and booking details.";
30377
30502
  return "Preparing dates, tickets, and booking details.";
30378
30503
  }
@@ -32256,7 +32381,8 @@ const eventCalendarLayout = [styledSection({
32256
32381
  fallback: false
32257
32382
  } },
32258
32383
  banded: { $bind: {
32259
- from: "content.banded",
32384
+ from: "content",
32385
+ transforms: [{ id: "events.calendarBanded" }],
32260
32386
  fallback: false
32261
32387
  } }
32262
32388
  }))]
@@ -35753,7 +35879,7 @@ function buildPassesMembershipsDisplay(options) {
35753
35879
  product: pass
35754
35880
  } : {
35755
35881
  kind: "unavailable",
35756
- label: "Online purchasing coming soon."
35882
+ label: "Online purchasing is unavailable."
35757
35883
  }
35758
35884
  };
35759
35885
  });
@@ -35763,7 +35889,14 @@ function buildPassesMembershipsDisplay(options) {
35763
35889
  description: options.showDescriptions ? membership.description : null,
35764
35890
  priceLabel: formatCommercePrice(membership.price, membership.currency),
35765
35891
  intervalLabel: formatInterval(membership.billingInterval),
35766
- actionLabel: options.membershipActionLabel
35892
+ action: membership.purchaseAvailability === "purchasable" ? {
35893
+ kind: "purchase",
35894
+ label: options.membershipActionLabel,
35895
+ product: membership
35896
+ } : {
35897
+ kind: "unavailable",
35898
+ label: "Online purchasing is unavailable."
35899
+ }
35767
35900
  }));
35768
35901
  return {
35769
35902
  kind: "passes-memberships",
@@ -35983,7 +36116,14 @@ const membershipCardDisplaySchema = z.object({
35983
36116
  description: z.string().nullable(),
35984
36117
  priceLabel: z.string(),
35985
36118
  intervalLabel: z.string(),
35986
- actionLabel: z.string()
36119
+ action: z.discriminatedUnion("kind", [z.object({
36120
+ kind: z.literal("purchase"),
36121
+ label: z.string(),
36122
+ product: purchasablePublicMembershipProductSchema
36123
+ }), z.object({
36124
+ kind: z.literal("unavailable"),
36125
+ label: z.string()
36126
+ })])
35987
36127
  });
35988
36128
  const passesMembershipsDisplaySchema = z.object({
35989
36129
  kind: z.literal("passes-memberships"),
@@ -38621,7 +38761,7 @@ function withDesignCapability(blockKind, definition, designCapability, designMet
38621
38761
  if (definition.manifest.name !== blockKind) throw new Error(`System block kind mismatch: expected ${blockKind}, received ${definition.manifest.name}.`);
38622
38762
  return {
38623
38763
  ...definition,
38624
- designCapability,
38764
+ designCapability: withManifestSectionBackgroundPaints(designCapability, definition.manifest.fields),
38625
38765
  designMetadata,
38626
38766
  manifest: {
38627
38767
  ...definition.manifest,
@@ -39672,6 +39812,16 @@ const defaultTransforms = createTransformRegistry([
39672
39812
  return resolveCalendarReadProfile(asPartialObject(value) ?? {});
39673
39813
  }
39674
39814
  },
39815
+ {
39816
+ id: "events.calendarBanded",
39817
+ kind: "formatter",
39818
+ summary: "Paint the week-board band only on a section with no background of its own",
39819
+ run(value) {
39820
+ const content = asPartialObject(value) ?? {};
39821
+ const sectionStyles = asPartialObject(content._sectionStyles);
39822
+ return content.banded === true && parseBackgroundContent(sectionStyles?.background) === null;
39823
+ }
39824
+ },
39675
39825
  ...formattingTransforms,
39676
39826
  ...layoutTransforms,
39677
39827
  ...chromeLogoTransforms,
@@ -40818,6 +40968,7 @@ const CANONICAL_REFUND_PLANNER_ERROR_CODES = [
40818
40968
  "refund_failed"
40819
40969
  ];
40820
40970
  const CANONICAL_ADMIN_REFUND_FAILURE_CODES = [
40971
+ "refund_blocked_by_live_payment_terms",
40821
40972
  ...CANONICAL_REFUND_PLANNER_ERROR_CODES,
40822
40973
  "payment_intent_not_found",
40823
40974
  "stripe_error",
@@ -40833,6 +40984,7 @@ const CANONICAL_ADMIN_REFUND_FAILURE_CODES = [
40833
40984
  //#endregion
40834
40985
  //#region ../api/src/bookingRefundOutcomes.ts
40835
40986
  const STANDARD_LINE_ITEM_REFUND_INVALID_CODES = [
40987
+ "refund_blocked_by_live_payment_terms",
40836
40988
  "missing_amount",
40837
40989
  "invalid_amount",
40838
40990
  "amount_exceeds_remaining",
@@ -41222,68 +41374,6 @@ function parsePublicProductCategorySelector(value) {
41222
41374
  }
41223
41375
  z.enum(["public", "unlisted"], { error: "visibility must be 'public' or 'unlisted'" });
41224
41376
  //#endregion
41225
- //#region ../api/src/bookingPaymentTermSchemas.ts
41226
- const bookingDepositRefundPolicySchema = z.enum(["refundable", "non_refundable"]);
41227
- const bookingInstalmentPlanSchema = z.discriminatedUnion("kind", [
41228
- z.object({
41229
- kind: z.literal("deposit_plus_one_remainder"),
41230
- depositAmountCents: z.number().int().nonnegative(),
41231
- depositRefundability: bookingDepositRefundPolicySchema,
41232
- remainderDueCount: z.number().int().positive(),
41233
- intervalUnit: z.enum([
41234
- "day",
41235
- "week",
41236
- "month"
41237
- ])
41238
- }),
41239
- z.object({
41240
- kind: z.literal("deposit_plus_scheduled_instalments"),
41241
- depositAmountCents: z.number().int().nonnegative(),
41242
- depositRefundability: bookingDepositRefundPolicySchema,
41243
- instalmentCount: z.number().int().positive(),
41244
- intervalCount: z.number().int().positive(),
41245
- intervalUnit: z.enum([
41246
- "day",
41247
- "week",
41248
- "month"
41249
- ])
41250
- }),
41251
- z.object({
41252
- kind: z.literal("equal_scheduled_instalments"),
41253
- instalmentCount: z.number().int().positive(),
41254
- intervalCount: z.number().int().positive(),
41255
- intervalUnit: z.enum([
41256
- "day",
41257
- "week",
41258
- "month"
41259
- ])
41260
- })
41261
- ]);
41262
- const bookingFlexibleBalanceDueDateRuleSchema = z.discriminatedUnion("kind", [z.object({
41263
- kind: z.literal("relative_to_start_date"),
41264
- daysBeforeStart: z.number().int().positive()
41265
- }), z.object({
41266
- kind: z.literal("fixed_calendar_date"),
41267
- dueAt: z.string().datetime()
41268
- })]);
41269
- const bookingFlexibleBalanceConfigSchema = z.object({
41270
- upfrontAmountCents: z.number().int().nonnegative(),
41271
- dueDateRule: bookingFlexibleBalanceDueDateRuleSchema,
41272
- depositRefundability: bookingDepositRefundPolicySchema
41273
- });
41274
- z.discriminatedUnion("kind", [
41275
- z.object({ kind: z.literal("upfront") }),
41276
- z.object({ kind: z.literal("deferred_manual") }),
41277
- z.object({
41278
- kind: z.literal("instalment_plan"),
41279
- plan: bookingInstalmentPlanSchema
41280
- }),
41281
- z.object({
41282
- kind: z.literal("flexible_balance"),
41283
- config: bookingFlexibleBalanceConfigSchema
41284
- })
41285
- ]);
41286
- //#endregion
41287
41377
  //#region ../api/src/aiPlayground.ts
41288
41378
  /**
41289
41379
  * RFC-6902 JSON Patch Operations