@riverbankcms/sdk 0.129.1 → 0.130.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 (229) hide show
  1. package/README.md +32 -10
  2. package/dist/{PreviewEditorSidebar-DceRseRV.mjs → PreviewEditorSidebar-DiEpbOdw.mjs} +313 -239
  3. package/dist/{PreviewEditorUI-BNunq3kk.mjs → PreviewEditorUI-C6MvxnIa.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-B1kbhaJD.mjs → PreviewQueryProvider-C2rnoPz6.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-Bt87-62u.mjs → SdkPreviewModeRuntime-DRXA_m5L.mjs} +208 -211
  6. package/dist/{SiteChromeCustomizeContext-BLl-OlL4.mjs → SiteChromeCustomizeContext-BTHdv5_-.mjs} +6204 -6239
  7. package/dist/_dts/ai/src/contracts/proposalPrimitives.d.ts +52 -0
  8. package/dist/_dts/ai/src/contracts/proposals.d.ts +4950 -29100
  9. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +32572 -0
  10. package/dist/_dts/api/src/appointmentSetup.d.ts +21 -9
  11. package/dist/_dts/api/src/bookingConfig.d.ts +4 -46
  12. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +13 -11
  13. package/dist/_dts/api/src/bookingRecords.d.ts +1 -0
  14. package/dist/_dts/api/src/contentRuntime.d.ts +3 -5
  15. package/dist/_dts/api/src/endpoints.d.ts +14 -21
  16. package/dist/_dts/api/src/eventManagementContracts.d.ts +76 -0
  17. package/dist/_dts/api/src/index.d.ts +3 -2
  18. package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +22 -47
  19. package/dist/_dts/api/src/sdk-event-schedule.d.ts +5 -0
  20. package/dist/_dts/api/src/sdk-event-upsert.d.ts +112 -20
  21. package/dist/_dts/api/src/sdkContracts.d.ts +38 -66
  22. package/dist/_dts/api/src/sdkManagedEventContracts.d.ts +35 -0
  23. package/dist/_dts/api/src/sdkThemeWire.d.ts +2423 -501
  24. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +5 -0
  25. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +23 -37
  26. package/dist/_dts/blocks/src/contracts/index.d.ts +2 -0
  27. package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +6 -8
  28. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +36 -14
  29. package/dist/_dts/blocks/src/index.d.ts +5 -3
  30. package/dist/_dts/blocks/src/lib/media.d.ts +9 -539
  31. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +3 -2
  32. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +135 -90
  33. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +2 -2
  34. package/dist/_dts/blocks/src/system/blocks/shop.shared.d.ts +37 -4
  35. package/dist/_dts/blocks/src/system/blocks/site-footer-nav-groups-layout.d.ts +1 -1
  36. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +3 -0
  37. package/dist/_dts/blocks/src/system/componentFactory.d.ts +5 -5
  38. package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +8 -6
  39. package/dist/_dts/blocks/src/system/customize/serializeBackgroundOverride.d.ts +3 -0
  40. package/dist/_dts/blocks/src/system/fields/background.d.ts +2 -20
  41. package/dist/_dts/blocks/src/system/fields/backgroundContent.d.ts +17 -0
  42. package/dist/_dts/blocks/src/system/fields/backgroundContentAudit.d.ts +20 -0
  43. package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +5 -33
  44. package/dist/_dts/blocks/src/system/fragments/builder.d.ts +1 -0
  45. package/dist/_dts/blocks/src/system/fragments/types.d.ts +1 -0
  46. package/dist/_dts/blocks/src/system/helpers/index.d.ts +1 -1
  47. package/dist/_dts/blocks/src/system/helpers/resolveBackground.d.ts +10 -45
  48. package/dist/_dts/blocks/src/system/manifest/fieldValidation/index.d.ts +7 -4
  49. package/dist/_dts/blocks/src/system/manifest/fieldValidation/writeCanonicalization.d.ts +4 -0
  50. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +123 -55
  51. package/dist/_dts/blocks/src/system/registry.d.ts +2 -0
  52. package/dist/_dts/blocks/src/system/runtime/api/types/shop.d.ts +2 -37
  53. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +61 -24
  54. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +30 -12
  55. package/dist/_dts/blocks/src/system/runtime/header/enhanceHeaderSection.d.ts +3 -5
  56. package/dist/_dts/blocks/src/system/runtime/header/headerScrollRuntime.d.ts +2 -0
  57. package/dist/_dts/blocks/src/system/runtime/header/runtimeContract.d.ts +22 -0
  58. package/dist/_dts/blocks/src/system/runtime/nodes/commerce/shared/display.d.ts +9 -2
  59. package/dist/_dts/blocks/src/system/runtime/nodes/commerce/shared/view.d.ts +3 -0
  60. package/dist/_dts/blocks/src/system/runtime/nodes/header-section.client.d.ts +2 -0
  61. package/dist/_dts/blocks/src/system/runtime/nodes/header-section.frame.d.ts +21 -0
  62. package/dist/_dts/blocks/src/system/runtime/nodes/header-section.server.d.ts +2 -0
  63. package/dist/_dts/blocks/src/system/runtime/nodes/shop.interactive.d.ts +41 -12
  64. package/dist/_dts/blocks/src/system/runtime/nodes/shop.pass-contract.d.ts +3 -0
  65. package/dist/_dts/blocks/src/system/runtime/nodes/shop.state.d.ts +3 -3
  66. package/dist/_dts/blocks/src/system/transforms/registry/_utils/surfaceForegroundStyles.d.ts +3 -1
  67. package/dist/_dts/blocks/src/system/transforms/registry/background.d.ts +1 -1
  68. package/dist/_dts/blocks/src/system/transforms/registry/boxStyles.d.ts +3 -1
  69. package/dist/_dts/blocks/src/system/transforms/registry/core.d.ts +4 -1
  70. package/dist/_dts/blocks/src/system/transforms/registry/headerRuntime.d.ts +3 -0
  71. package/dist/_dts/blocks/src/system/transforms/registry/index.d.ts +2 -1
  72. package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +0 -3
  73. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +41 -43
  74. package/dist/_dts/content-editor/src/FooterComposerOverview.d.ts +4 -2
  75. package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +2 -17
  76. package/dist/_dts/content-editor/src/FooterNavigationLayoutControl.d.ts +5 -0
  77. package/dist/_dts/content-editor/src/footerComposer.d.ts +2 -1
  78. package/dist/_dts/content-editor/src/footerComposerPanelTypes.d.ts +21 -0
  79. package/dist/_dts/content-editor/src/footerPreviewRuntime.d.ts +2 -1
  80. package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +11 -1
  81. package/dist/_dts/content-editor/src/useFooterNavigationLayout.d.ts +26 -0
  82. package/dist/_dts/content-model/src/templates/defaults.d.ts +7 -0
  83. package/dist/_dts/core/src/booking-date-time.d.ts +2 -2
  84. package/dist/_dts/core/src/booking-time-zone.d.ts +6 -0
  85. package/dist/_dts/core/src/footer-composition-types.d.ts +4 -4
  86. package/dist/_dts/core/src/footer-navigation-layout.d.ts +4 -0
  87. package/dist/_dts/core/src/index.d.ts +1 -0
  88. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +38 -18
  89. package/dist/_dts/preview-next/src/client/preview/FooterSidebarDisclosure.d.ts +8 -0
  90. package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +5 -5
  91. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +15 -17
  92. package/dist/_dts/preview-next/src/client/preview/PreviewFooterEditorPanel.d.ts +20 -0
  93. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +3 -5
  94. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +3 -5
  95. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +4 -4
  96. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +3 -5
  97. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +6 -7
  98. package/dist/_dts/preview-next/src/client/preview/siteChromeBrandPreferences.d.ts +7 -7
  99. package/dist/_dts/preview-next/src/client/preview/siteChromeCustomizeTypes.d.ts +4 -4
  100. package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +2 -2
  101. package/dist/_dts/preview-next/src/client/preview/siteChromeSavePlan.d.ts +12 -11
  102. package/dist/_dts/preview-next/src/client/preview/siteChromeSelectionRows.d.ts +53 -0
  103. package/dist/_dts/preview-next/src/client/preview/siteStyleAccess.d.ts +1 -6
  104. package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +6 -15
  105. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +4 -6
  106. package/dist/_dts/sdk/src/config/types.d.ts +1 -0
  107. package/dist/_dts/sdk/src/config/validation.d.ts +2 -0
  108. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +4 -41
  109. package/dist/_dts/sdk/src/next/catch-all-theme-admission.d.ts +23 -0
  110. package/dist/_dts/sdk/src/next/index.d.ts +8 -6
  111. package/dist/_dts/sdk/src/next/resolveTheme.d.ts +1 -2
  112. package/dist/_dts/sdk/src/next/types.d.ts +10 -0
  113. package/dist/_dts/sdk/src/public-api/contracts.d.ts +2 -16
  114. package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +3 -2
  115. package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +5 -3
  116. package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +1 -1
  117. package/dist/_dts/sdk/src/rendering/hooks/useContent.d.ts +4 -2
  118. package/dist/_dts/sdk/src/rendering/index.d.ts +2 -0
  119. package/dist/_dts/sdk/src/rendering/islands/types.d.ts +6 -1
  120. package/dist/_dts/sdk/src/rendering/server.d.ts +2 -0
  121. package/dist/_dts/sdk/src/rendering/themeAdmission.d.ts +11 -0
  122. package/dist/_dts/sdk/src/version.d.ts +1 -1
  123. package/dist/_dts/theme-core/src/blockOverrides.d.ts +1 -1
  124. package/dist/_dts/theme-core/src/boxBackgroundSchema.d.ts +184 -0
  125. package/dist/_dts/theme-core/src/buttons/buttonColourContract.d.ts +96 -0
  126. package/dist/_dts/theme-core/src/buttons/buttonSurfaceContext.d.ts +78 -0
  127. package/dist/_dts/theme-core/src/buttons/index.d.ts +1 -0
  128. package/dist/_dts/theme-core/src/buttons/parseThemeForPersistence.d.ts +2 -2
  129. package/dist/_dts/theme-core/src/buttons/resolveButtonColourStates.d.ts +9 -57
  130. package/dist/_dts/theme-core/src/buttons/resolvedButtonCss.d.ts +6 -3
  131. package/dist/_dts/theme-core/src/buttons/styles/domain.d.ts +8 -7
  132. package/dist/_dts/theme-core/src/buttons/styles/recipes/quietArrow.d.ts +1 -0
  133. package/dist/_dts/theme-core/src/buttons/styles/recipes/staticRecipes.d.ts +11 -0
  134. package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +12 -0
  135. package/dist/_dts/theme-core/src/buttons/styles/selection.d.ts +5 -0
  136. package/dist/_dts/theme-core/src/buttons/types.d.ts +51 -4
  137. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  138. package/dist/_dts/theme-core/src/lib/media.d.ts +583 -10
  139. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +5117 -1433
  140. package/dist/_dts/theme-core/src/schema.d.ts +5079 -2005
  141. package/dist/_dts/theme-core/src/site-styles/compilationPlan.d.ts +6 -14
  142. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +29 -102
  143. package/dist/_dts/theme-core/src/site-styles/customizableSurfaces.d.ts +3 -76
  144. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +4 -4
  145. package/dist/_dts/theme-core/src/site-styles/generatedDesignPipeline.d.ts +3 -7
  146. package/dist/_dts/theme-core/src/site-styles/generatedDesignPipelineHelpers.d.ts +17 -0
  147. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +2 -2
  148. package/dist/_dts/theme-core/src/site-styles/headerLayoutCatalog.d.ts +281 -0
  149. package/dist/_dts/theme-core/src/site-styles/headerLayoutResolution.d.ts +13 -0
  150. package/dist/_dts/theme-core/src/site-styles/headerLayoutStyles.d.ts +6 -0
  151. package/dist/_dts/theme-core/src/site-styles/{headerLookTypes.d.ts → headerLayoutTypes.d.ts} +16 -86
  152. package/dist/_dts/theme-core/src/site-styles/headerNavStyles.d.ts +6 -0
  153. package/dist/_dts/theme-core/src/site-styles/headerOpeningForeground.d.ts +7 -4
  154. package/dist/_dts/theme-core/src/site-styles/headerOpeningSection.d.ts +2 -2
  155. package/dist/_dts/theme-core/src/site-styles/headerStyleCompiler.d.ts +2 -2
  156. package/dist/_dts/theme-core/src/site-styles/imageSurfaceBackground.d.ts +14 -0
  157. package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -1
  158. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +14 -41
  159. package/dist/_dts/theme-core/src/site-styles/runtimeBackgroundResolution.d.ts +23 -0
  160. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +8 -6
  161. package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +1 -1
  162. package/dist/client/{CourseRegistrationWizard-xRmA7REV.mjs → CourseRegistrationWizard-Bvtz9G9g.mjs} +5 -5
  163. package/dist/client/{DiscountCodeDisclosure-B9vriL5C.mjs → DiscountCodeDisclosure-Ur-Xx1U_.mjs} +1 -1
  164. package/dist/client/{EventCombined.client-BgVnVTlz.mjs → EventCombined.client-EhscD4U6.mjs} +2 -2
  165. package/dist/client/{EventListing.client-CqdsO7jO.mjs → EventListing.client-Bn26cFTY.mjs} +2 -2
  166. package/dist/client/{LeafletStaticMap-CKPxot9M.mjs → LeafletStaticMap-BUw9Ntzr.mjs} +1 -1
  167. package/dist/client/{StepIndicator-DGCYuBJ1.mjs → StepIndicator-BfbdiVQI.mjs} +2 -2
  168. package/dist/client/{accordion-BfN5Eqd-.mjs → accordion-CjIeof73.mjs} +1 -1
  169. package/dist/client/{bookingForm-DOvCpBFP.mjs → bookingForm-DwEeovf_.mjs} +5 -5
  170. package/dist/client/bookings.mjs +1028 -1038
  171. package/dist/client/{carousel-DPNmiH0f.mjs → carousel-BMrfgOba.mjs} +1 -1
  172. package/dist/client/{cart--egVXlrR.mjs → cart-rXEdxTdb.mjs} +3 -3
  173. package/dist/client/{checkout-DywWtMcq.mjs → checkout-D3JlSzh3.mjs} +3 -3
  174. package/dist/client/client.mjs +18345 -18311
  175. package/dist/client/{courseRegistration-Dk9qFVwt.mjs → courseRegistration-DO5XvMAA.mjs} +2 -2
  176. package/dist/client/{eventCalendar-Bkz2HjlS.mjs → eventCalendar-DO6rTqCn.mjs} +4 -4
  177. package/dist/client/{eventCombined-D4kipYWg.mjs → eventCombined-bJ3i_ovU.mjs} +2 -2
  178. package/dist/client/{eventDetails-Dz_5ix2Q.mjs → eventDetails-CCbrXE7o.mjs} +3 -3
  179. package/dist/client/{eventListing-D0vm-zST.mjs → eventListing-Bdlt9YTm.mjs} +2 -2
  180. package/dist/client/{eventRegistration-Cw1E4Q4p.mjs → eventRegistration-B02lt6iY.mjs} +6 -6
  181. package/dist/client/{form-C2Zf1n3K.mjs → form-DrUBAAox.mjs} +1 -1
  182. package/dist/client/{headerSection-CP05gzdc.mjs → headerSection-MzqvHL6T.mjs} +151 -104
  183. package/dist/client/hooks.mjs +4532 -4216
  184. package/dist/client/{locationMap-Cl3x9PYJ.mjs → locationMap-DG8BxTBm.mjs} +2 -2
  185. package/dist/client/{newsletterForm-DyEJoClm.mjs → newsletterForm-BzO-Td3p.mjs} +1 -1
  186. package/dist/client/{pricing-DGuNR1W4.mjs → pricing-NgK7ozkg.mjs} +1 -1
  187. package/dist/client/{productDetail-Cq-HrGew.mjs → productDetail-CfQ7rhVK.mjs} +3 -3
  188. package/dist/client/{productList-DbB3jwqd.mjs → productList-C23rOLUi.mjs} +3 -3
  189. package/dist/client/{propsDecoder-CiTuhUwY.mjs → propsDecoder-CAZdhwjs.mjs} +2166 -2157
  190. package/dist/client/rendering/client.mjs +3600 -4118
  191. package/dist/client/rendering/islands.mjs +18 -18
  192. package/dist/client/rendering.mjs +15950 -15890
  193. package/dist/client/{scrollToBlock-CShkRqab.mjs → scrollToBlock-DSSqVQr1.mjs} +1 -1
  194. package/dist/client/{shop-Cu4Ib-ZA.mjs → shop-BMToKLK7.mjs} +34 -23
  195. package/dist/client/{shop-commerce-BzpsOdh7.mjs → shop-commerce-DB4JRKmp.mjs} +4 -4
  196. package/dist/client/{shop-commerce-store-DaE7Fhj8.mjs → shop-commerce-store-BOqSIOuc.mjs} +1 -1
  197. package/dist/client/{shopShared-cF0c20vB.mjs → shopShared-B6SK9DZv.mjs} +9 -3
  198. package/dist/client/{useEventFilters-QZ3HMgaJ.mjs → useEventFilters-CULOa4nB.mjs} +2 -2
  199. package/dist/client/{usePolling-BKf0GcE-.mjs → usePolling-BGG_8-jl.mjs} +2 -2
  200. package/dist/preview-next/before-render.mjs +16 -27
  201. package/dist/preview-next/client/runtime.mjs +4 -4
  202. package/dist/preview-next/middleware.mjs +16 -27
  203. package/dist/{previewAuthStore-BesgU5Xu.mjs → previewAuthStore-_GXFRg2W.mjs} +16 -27
  204. package/dist/{sdk-runtime-C20CVWbb.mjs → sdk-runtime-hhSOMShR.mjs} +2 -2
  205. package/dist/{separator-BE3NCquy.mjs → separator-flRaFc14.mjs} +1 -1
  206. package/dist/server/components.mjs +17770 -17866
  207. package/dist/server/config-validation.mjs +4711 -4421
  208. package/dist/server/config.mjs +4715 -4425
  209. package/dist/server/data.mjs +4515 -4216
  210. package/dist/server/date-time.mjs +22 -13
  211. package/dist/server/index.mjs +17 -28
  212. package/dist/server/next.mjs +17586 -17650
  213. package/dist/server/page-converter.mjs +3759 -4390
  214. package/dist/server/prebuild.mjs +1 -1
  215. package/dist/server/rendering/server.mjs +18952 -19064
  216. package/dist/server/rendering.mjs +17824 -17901
  217. package/dist/server/routing.mjs +4748 -4365
  218. package/dist/server/server.mjs +4591 -4269
  219. package/dist/server/theme-bridge.mjs +1393 -1886
  220. package/dist/server/theme.mjs +736 -605
  221. package/dist/styles/index.css +22 -3
  222. package/package.json +1 -1
  223. package/dist/_dts/preview-next/src/client/preview/siteChromeLookRows.d.ts +0 -66
  224. package/dist/_dts/theme-core/src/site-styles/headerLayoutStyleCatalog.d.ts +0 -254
  225. package/dist/_dts/theme-core/src/site-styles/headerLegacyLooks.d.ts +0 -372
  226. package/dist/_dts/theme-core/src/site-styles/headerLookBranding.d.ts +0 -106
  227. package/dist/_dts/theme-core/src/site-styles/headerLookSelection.d.ts +0 -2
  228. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +0 -7
  229. package/dist/_dts/theme-core/src/site-styles/headerStyleCompilerPrimitives.d.ts +0 -23
@@ -1,34 +1,25 @@
1
1
  import type { Theme } from '../../../../blocks/src/index';
2
2
  import type { ButtonStyleSelection } from '../../../../theme-core/src/buttons/index';
3
- import type { FooterLookId, HeaderLayoutId, HeaderLookId, HeaderSelectionContext, HeaderStyleId, SiteChromeSurface } from '../../../../theme-core/src/site-styles/index';
4
- import { compileSiteThemeFromSelections, type CuratedSiteStyle, type SelectionFallbackWarning, type SiteStyleId } from '../../../../theme-core/src/site-styles/previewCompiler';
3
+ import type { FooterLookId, HeaderLayoutId, HeaderLogoContext, HeaderStyleId, SiteChromeSurface } from '../../../../theme-core/src/site-styles/index';
4
+ import { type CuratedSiteStyle, type SelectionFallbackWarning, type SiteThemeSelectionsResult, type SiteStyleId } from '../../../../theme-core/src/site-styles/previewCompiler';
5
5
  export type SiteStylePreviewSelection = Readonly<{
6
6
  siteStyleId: SiteStyleId;
7
7
  buttonStyleSelection: ButtonStyleSelection;
8
8
  palette: Theme['palette'];
9
9
  typography: Theme['typography'];
10
- headerLayoutId?: HeaderLayoutId | null;
11
- headerStyleId?: HeaderStyleId | null;
12
- headerLookId: HeaderLookId | null;
13
- footerLookId: FooterLookId | null;
14
- }>;
15
- export type SiteStyleChromePreviewSelection = Readonly<{
16
- headerLookId: HeaderLookId | null;
10
+ headerLayoutId: HeaderLayoutId;
11
+ headerStyleId: HeaderStyleId;
17
12
  footerLookId: FooterLookId | null;
18
13
  }>;
19
14
  export type SiteStylePreviewPlan = Readonly<{
20
15
  themeOverlay: Theme;
21
- resolvedSelections: ReturnType<typeof compileSiteThemeFromSelections>['resolvedSelections'] & Readonly<{
22
- headerLayoutId: HeaderLayoutId;
23
- headerStyleId: HeaderStyleId;
24
- }>;
25
- chromeSelection: SiteStyleChromePreviewSelection;
16
+ resolvedSelections: SiteThemeSelectionsResult['resolvedSelections'];
26
17
  warnings: ReadonlyArray<SelectionFallbackWarning>;
27
18
  }>;
28
19
  type SiteStylePreviewPlanCommonInput = Readonly<{
29
20
  siteStyle: CuratedSiteStyle;
30
21
  selection: SiteStylePreviewSelection;
31
- headerSelectionContext?: Partial<HeaderSelectionContext>;
22
+ headerLogoContext?: HeaderLogoContext;
32
23
  }>;
33
24
  export type SiteStylePreviewPlanInput = SiteStylePreviewPlanCommonInput & (Readonly<{
34
25
  compilation: Readonly<{
@@ -1,20 +1,18 @@
1
1
  import type { Theme } from '../../../../blocks/src/index';
2
2
  import type { ButtonStyleSelection } from '../../../../theme-core/src/buttons/index';
3
- import type { FooterLookId, HeaderLayoutId, HeaderLookId, HeaderSelectionContext, HeaderStyleId } from '../../../../theme-core/src/site-styles/index';
3
+ import type { FooterLookId, HeaderLayoutStyleSelection, HeaderLogoContext } from '../../../../theme-core/src/site-styles/index';
4
4
  import type { SelectionSnapshot } from './StyleConfigurator.state';
5
5
  export type StyleConfiguratorInitialSelections = Readonly<{
6
6
  selectionVersion?: number | null;
7
7
  selectionUpdatedAt?: string | null;
8
8
  buttonStyleSelection: ButtonStyleSelection | null;
9
- headerLayoutId?: HeaderLayoutId | null;
10
- headerStyleId?: HeaderStyleId | null;
11
- headerLookId?: HeaderLookId | null;
9
+ headerSelection?: HeaderLayoutStyleSelection | null;
12
10
  footerLookId?: FooterLookId | null;
13
11
  }>;
14
12
  type StyleConfiguratorSnapshotInput = Readonly<{
15
13
  theme?: Theme | null;
16
14
  initialSelections: StyleConfiguratorInitialSelections;
17
- headerSelectionContext?: Partial<HeaderSelectionContext>;
15
+ headerLogoContext?: HeaderLogoContext;
18
16
  }>;
19
17
  /**
20
18
  * The parsed theme is the complete palette authority for preview.
@@ -22,6 +20,6 @@ type StyleConfiguratorSnapshotInput = Readonly<{
22
20
  export declare function resolveStyleConfiguratorInitialSnapshot(input: Readonly<{
23
21
  theme?: Theme | null;
24
22
  initialSelections: StyleConfiguratorSnapshotInput['initialSelections'];
25
- headerSelectionContext?: Partial<HeaderSelectionContext>;
23
+ headerLogoContext?: HeaderLogoContext;
26
24
  }>): SelectionSnapshot | null;
27
25
  export {};
@@ -62,6 +62,7 @@ export type LoaderWhenValue = boolean | LoaderParamBinding;
62
62
  export interface SdkConfigLoader {
63
63
  endpoint: SdkLoaderEndpoint;
64
64
  params: Record<string, LoaderParamValue>;
65
+ requiredParams?: readonly string[];
65
66
  mode?: 'server' | 'client';
66
67
  when?: LoaderWhenValue;
67
68
  }
@@ -258,6 +258,7 @@ export declare const sdkConfigLoaderSchema: z.ZodObject<{
258
258
  }>>;
259
259
  }, z.core.$strip>;
260
260
  }, z.core.$strip>]>>;
261
+ requiredParams: z.ZodOptional<z.ZodArray<z.ZodString>>;
261
262
  mode: z.ZodDefault<z.ZodEnum<{
262
263
  server: "server";
263
264
  client: "client";
@@ -324,6 +325,7 @@ export declare const sdkDataLoadersSchema: z.ZodOptional<z.ZodRecord<z.ZodString
324
325
  }>>;
325
326
  }, z.core.$strip>;
326
327
  }, z.core.$strip>]>>;
328
+ requiredParams: z.ZodOptional<z.ZodArray<z.ZodString>>;
327
329
  mode: z.ZodDefault<z.ZodEnum<{
328
330
  server: "server";
329
331
  client: "client";
@@ -9,6 +9,7 @@ import type { EventRegistrationContent } from './event-registration-content';
9
9
  export type { EventRegistrationContent } from './event-registration-content';
10
10
  import type { Brand, EventCategoryId, RichTextDoc, VenueId } from '../../../core/src/index';
11
11
  import type { SiteFooterContent as BlocksSiteFooterContent } from '../../../blocks/src/system/blocks/site-footer';
12
+ import type { CardStylesContent as BlocksCardStylesContent, ContainerStylesContent as BlocksContainerStylesContent, SectionStylesContent as BlocksSectionStylesContent } from '../../../blocks/src/index';
12
13
  type UnknownRecord = Record<string, unknown>;
13
14
  type ImageMedia = Omit<Media, 'type'> & {
14
15
  type: 'image';
@@ -16,47 +17,9 @@ type ImageMedia = Omit<Media, 'type'> & {
16
17
  type StandardAspectRatio = 'auto' | '16/9' | '4/3' | '1/1' | '3/4' | '9/16';
17
18
  export type SemanticSpacing = 'none' | 'compact' | 'cozy' | 'medium' | 'comfortable' | 'spacious';
18
19
  export type ImageColSize = '1/4' | '1/3' | '2/5' | '1/2' | '2/3';
19
- export type SectionStylesContent = {
20
- background?: {
21
- type?: 'color' | 'gradient' | 'image';
22
- color?: string | null;
23
- gradient?: string | null;
24
- image?: Media | null;
25
- objectFit?: 'fill' | 'fit' | 'original' | 'custom' | null;
26
- scale?: string | null;
27
- position?: string | null;
28
- opacity?: number | null;
29
- overlay?: {
30
- type?: 'none' | 'color' | 'gradient' | null;
31
- color?: string | null;
32
- gradient?: string | null;
33
- opacity?: number | null;
34
- } | null;
35
- textColor?: string | null;
36
- headingColor?: string | null;
37
- } | null;
38
- spacing?: string | null;
39
- } | null;
40
- export type CardStylesContent = {
41
- background?: Record<string, unknown> | null;
42
- border?: {
43
- enabled?: boolean | null;
44
- width?: 'none' | '1' | '2' | '3' | null;
45
- colorToken?: string | null;
46
- } | null;
47
- spacing?: string | null;
48
- raised?: boolean | null;
49
- rounded?: string | null;
50
- cardVariant?: string | null;
51
- treatment?: 'accent-quote' | 'editorial-rule' | 'soft-panel' | 'editorial-serif-quote' | 'editorial-open' | null;
52
- } | null;
53
- export type ContainerStylesContent = {
54
- background?: Record<string, unknown> | null;
55
- spacing?: string | null;
56
- raised?: boolean | null;
57
- rounded?: string | null;
58
- fullWidth?: boolean | null;
59
- } | null;
20
+ export type SectionStylesContent = BlocksSectionStylesContent;
21
+ export type CardStylesContent = BlocksCardStylesContent;
22
+ export type ContainerStylesContent = BlocksContainerStylesContent;
60
23
  export type CtaIconName = 'ArrowRight' | 'ArrowLeft' | 'ChevronRight' | 'ChevronLeft' | 'ChevronUp' | 'ChevronDown' | 'ExternalLink' | 'Download' | 'Upload' | 'Mail' | 'Phone' | 'Play' | 'ShoppingCart' | 'Calendar' | 'MapPin' | 'Info' | 'Plus' | 'Minus' | 'Check' | 'X';
61
24
  export type SemanticIconId = 'protection-trust' | 'confidentiality' | 'care-support' | 'partnership' | 'warmth' | 'community' | 'personal-guidance' | 'conversation' | 'friendly-welcome' | 'insight-learning' | 'natural-wellbeing' | 'growth' | 'gentle-care' | 'special-touch' | 'ideas' | 'direction' | 'focus' | 'quality' | 'highlight' | 'verified-quality' | 'learning' | 'training' | 'programmes-dates' | 'place' | 'products' | 'packages' | 'time' | 'practical-service' | 'at-home' | 'worldwide' | 'professional-service';
62
25
  export type BlockIconValue = {
@@ -0,0 +1,23 @@
1
+ import type { Theme } from '../contracts';
2
+ import type { LoadContentResult } from '../rendering/helpers/loadContent';
3
+ import type { SdkRenderingMode } from '../rendering/renderingMode';
4
+ import type { ResolveThemeResult } from './resolveTheme';
5
+ export type CatchAllRenderingAdmission = Readonly<{
6
+ kind: 'overrides-only';
7
+ content: LoadContentResult;
8
+ rendering: Extract<SdkRenderingMode, {
9
+ kind: 'overrides-only';
10
+ }>;
11
+ }> | Readonly<{
12
+ kind: 'not-found';
13
+ }> | Readonly<{
14
+ kind: 'themed';
15
+ content: LoadContentResult;
16
+ theme: Theme;
17
+ warning?: string;
18
+ }>;
19
+ export declare function admitCatchAllRendering(input: Readonly<{
20
+ content: LoadContentResult;
21
+ rendering: SdkRenderingMode;
22
+ resolveTheme: () => Promise<ResolveThemeResult>;
23
+ }>): Promise<CatchAllRenderingAdmission>;
@@ -38,6 +38,8 @@
38
38
  * @packageDocumentation
39
39
  */
40
40
  export { createCatchAllPage, InvalidCatchAllRenderingOptionsError, } from './catch-all';
41
+ export { MISSING_SDK_THEME_ERROR_CODE, MissingSdkThemeError, } from '../rendering/themeAdmission';
42
+ export type { MissingSdkThemeReason } from '../rendering/themeAdmission';
41
43
  export { RiverbankContentLoadError, SdkContentLoadError, classifyContentLoadError, isSdkContentLoadError, toContentLoadFailureLogFields, type CatchAllContentLoadFailureContext, type CatchAllRequestContext, type ClassifiedContentLoadError, type SdkContentLoadFailure, type SdkContentLoadFailureKind, type SdkContentLoadNotFound, } from './content-load-failure';
42
44
  export type { CreateCatchAllPageOptions, CreateCatchAllPageResult, CatchAllPageProps, CatchAllContext, ThemeSwitchConfigV1, ThemeResolverContext, } from './types';
43
45
  export type { SdkOverrideOnlyRendering, SdkOverrideOnlyRuntime, SdkRenderingMode, } from '../rendering/renderingMode';
@@ -66,13 +68,13 @@ export interface ISRConfig {
66
68
  /**
67
69
  * Get ISR configuration based on the current environment.
68
70
  *
69
- * @example
70
- * ```tsx
71
- * // app/[[...slug]]/page.tsx
72
- * import { getISRConfig } from '@riverbankcms/sdk/next';
71
+ * Do not use the returned value directly in a Next.js route-segment config
72
+ * export. Next statically analyzes those exports and requires a literal such as
73
+ * `export const revalidate = 300`.
73
74
  *
74
- * export const revalidate = getISRConfig().revalidate;
75
- * ```
75
+ * @deprecated Next.js route-segment config must be statically analyzable, which
76
+ * was this helper's intended use. Export a literal `revalidate` value and use
77
+ * the SDK preview integration for request-bound preview rendering instead.
76
78
  *
77
79
  * @returns ISR configuration with revalidate interval and preview flag
78
80
  */
@@ -24,11 +24,10 @@ export type ThemeOptionsForResolver = {
24
24
  } | {};
25
25
  export interface ResolveThemeInput {
26
26
  config: Pick<RiverbankSiteConfig, 'themeSource' | 'activeTheme'>;
27
- contentTheme: Theme;
27
+ contentTheme: Theme | null;
28
28
  searchParams: DataLoaderSearchParams;
29
29
  isDevelopment: boolean;
30
30
  themeOptions: ThemeOptionsForResolver;
31
31
  context: ThemeResolverContext;
32
32
  }
33
- export declare const MISSING_LOCAL_THEME_ERROR_MESSAGE = "[createCatchAllPage] config.themeSource is 'local' but no local theme was provided. Provide { theme }, { themes }, or { getTheme }, or set config.themeSource to 'cms'.";
34
33
  export declare function resolveTheme(input: ResolveThemeInput): Promise<ResolveThemeResult>;
@@ -202,6 +202,16 @@ type CreateCatchAllPageBaseOptions = {
202
202
  * Defaults to `config.liveUrl` or `config.previewUrl` based on preview mode.
203
203
  */
204
204
  siteUrl?: string;
205
+ /**
206
+ * Controls whether the server page reads Next.js `searchParams`.
207
+ *
208
+ * Reading that prop opts the entire route into dynamic rendering in Next.js.
209
+ * Set this to `ignore` for ISR routes that do not use query parameters for
210
+ * server-rendered themes, data loaders, redirects, or metadata.
211
+ *
212
+ * @default 'dynamic'
213
+ */
214
+ searchParamsMode?: 'dynamic' | 'ignore';
205
215
  /**
206
216
  * Intercept before rendering to implement maintenance mode, access control, etc.
207
217
  *
@@ -268,7 +268,7 @@ export type SiteRouteRecord = {
268
268
  publishedAt?: string | null;
269
269
  };
270
270
  export type SiteBookingOfferingPresetSummary = ApiSiteBookingOfferingPresetSummary;
271
- type SiteSelectionResponse = Pick<ApiSiteBySlugResponse, 'theme' | 'themeId' | 'selectionId' | 'selectionVersion' | 'selectionUpdatedAt' | 'selectionButtonStyleSelection' | 'selectionHeaderLayoutId' | 'selectionHeaderStyleId' | 'selectionHeaderLookId' | 'selectionFooterLookId'>;
271
+ type SiteSelectionResponse = Pick<ApiSiteBySlugResponse, 'theme' | 'themeId' | 'selectionId' | 'selectionVersion' | 'selectionUpdatedAt' | 'selectionButtonStyleSelection' | 'selectionHeaderSelection' | 'selectionFooterLookId'>;
272
272
  export type SiteResponse = SiteSelectionResponse & {
273
273
  site: {
274
274
  id: string;
@@ -625,21 +625,7 @@ export type PublicProductsResponse = {
625
625
  }>;
626
626
  }>;
627
627
  };
628
- export type PublicPassesResponse = {
629
- passes: Array<{
630
- id: string;
631
- productUseCase: 'event_pass' | 'appointment_package';
632
- name: string;
633
- description: string | null;
634
- price: number;
635
- currency: string;
636
- creditsTotal: number;
637
- pricePerCredit: number;
638
- validDays: number | null;
639
- eligibleCategoryIds: string[];
640
- eligibleCategoryNames: string[];
641
- }>;
642
- };
628
+ export type PublicPassesResponse = APIEndpoints['listPublicPasses']['response'];
643
629
  export type PublicMembershipsResponse = {
644
630
  memberships: Array<{
645
631
  id: string;
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import { buildMenu, buildFooterMenu, buildFooterMenuForRole, buildLogo } from '../../navigation';
7
7
  import type { RiverbankClient, SiteResponse } from '../../client/types';
8
+ import type { Theme } from '../../contracts';
8
9
  import { type SdkThemeRuntime } from '../themeRuntime';
9
10
  import { type SdkOverrideOnlyRendering } from '../renderingMode';
10
11
  export type CustomHeaderData = {
@@ -22,10 +23,10 @@ export type CustomFooterData = {
22
23
  routes: SiteResponse['routes'];
23
24
  };
24
25
  export type HeaderData = CustomHeaderData & {
25
- theme: SiteResponse['theme'];
26
+ theme: Theme;
26
27
  };
27
28
  export type FooterData = CustomFooterData & {
28
- theme: SiteResponse['theme'];
29
+ theme: Theme;
29
30
  };
30
31
  type LayoutCommonProps = {
31
32
  siteData?: SiteResponse;
@@ -102,7 +102,7 @@ export type PageContentResult = {
102
102
  page: PageProps['page'];
103
103
  runtimeBoundaries?: PageProps['runtimeBoundaries'];
104
104
  /** Site theme for styling */
105
- theme: Theme;
105
+ theme: Theme | null;
106
106
  /** Site ID */
107
107
  siteId: string;
108
108
  /** Declarative custom blocks stored in DB (if any) */
@@ -151,7 +151,7 @@ export type EntryContentResult = {
151
151
  contentEntry: Record<string, unknown>;
152
152
  };
153
153
  /** Site theme for styling (useful if rendering with SDK components) */
154
- theme: Theme;
154
+ theme: Theme | null;
155
155
  /** Site ID */
156
156
  siteId: string;
157
157
  /** Declarative custom blocks stored in DB (if any) */
@@ -213,7 +213,7 @@ export type PageSurfaceContentResult = {
213
213
  pageSurface: Record<string, unknown>;
214
214
  subject: PageSurfaceContentData['subject'];
215
215
  };
216
- theme: Theme;
216
+ theme: Theme | null;
217
217
  siteId: string;
218
218
  customBlocks?: SdkCustomBlock[];
219
219
  site: SiteData;
@@ -256,6 +256,7 @@ export declare function isPageSurfaceContent(result: LoadContentResult): result
256
256
  * });
257
257
  *
258
258
  * if (isPageContent(content)) {
259
+ * if (!content.theme) throw new MissingSdkThemeError(content.siteId, 'cms_theme_absent');
259
260
  * return <Page {...content} />;
260
261
  * }
261
262
  *
@@ -284,6 +285,7 @@ export declare function isPageSurfaceContent(result: LoadContentResult): result
284
285
  * }
285
286
  * }
286
287
  *
288
+ * if (!content.theme) throw new MissingSdkThemeError(content.siteId, 'cms_theme_absent');
287
289
  * return <Page {...content} />;
288
290
  * ```
289
291
  *
@@ -5,7 +5,7 @@ import type { SdkCustomBlock } from '../../config/types';
5
5
  export type RuntimeSdkConfig = NonNullable<SiteResponse['sdkConfig']>;
6
6
  export type SiteData = SiteResponse['site'];
7
7
  export type SiteRenderSupport = Readonly<{
8
- theme: Theme;
8
+ theme: Theme | null;
9
9
  site: SiteData;
10
10
  sdkConfig: RuntimeSdkConfig | null;
11
11
  bookingOfferingPresets: readonly SiteBookingOfferingPresetSummary[];
@@ -58,7 +58,7 @@ type PageSuccessState = {
58
58
  page: PageProps['page'];
59
59
  runtimeBoundaries?: PageProps['runtimeBoundaries'];
60
60
  entry: null;
61
- theme: Theme;
61
+ theme: Theme | null;
62
62
  siteId: string;
63
63
  resolvedData: ResolvedBlockData;
64
64
  supabaseUrl?: string;
@@ -73,7 +73,7 @@ type EntrySuccessState = {
73
73
  type: 'entry';
74
74
  page: null;
75
75
  entry: ContentEntryData;
76
- theme: Theme;
76
+ theme: Theme | null;
77
77
  siteId: string;
78
78
  resolvedData: null;
79
79
  };
@@ -116,6 +116,7 @@ export declare function isEntryContentResult(result: UseContentResult): result i
116
116
  * if (content.error) return <div>Error: {content.error.message}</div>;
117
117
  *
118
118
  * if (isPageContentResult(content)) {
119
+ * if (!content.theme) return <div>This site needs a theme before it can be displayed.</div>;
119
120
  * return <Page page={content.page} theme={content.theme} siteId={content.siteId} resolvedData={content.resolvedData} />;
120
121
  * }
121
122
  *
@@ -145,6 +146,7 @@ export declare function isEntryContentResult(result: UseContentResult): result i
145
146
  * }
146
147
  * }
147
148
  *
149
+ * if (!content.theme) return <MissingTheme />;
148
150
  * return <Page {...content} />;
149
151
  * ```
150
152
  */
@@ -9,6 +9,8 @@ export type { PageProps } from './components/Page';
9
9
  export { Layout } from './components/Layout';
10
10
  export type { LayoutProps, HeaderData, FooterData, CustomHeaderData, CustomFooterData, } from './components/Layout';
11
11
  export { UnsupportedOverrideOnlyLayoutChromeError } from './components/Layout';
12
+ export { MISSING_SDK_THEME_ERROR_CODE, MissingSdkThemeError, } from './themeAdmission';
13
+ export type { MissingSdkThemeReason } from './themeAdmission';
12
14
  export type { SdkThemeResponsiveMode, SdkThemeRuntime } from './themeRuntime';
13
15
  export type { SdkOverrideOnlyRendering, SdkOverrideOnlyRuntime, SdkRenderingMode, } from './renderingMode';
14
16
  export { Block } from './components/Block';
@@ -147,7 +147,12 @@ export type PublicPassProduct = {
147
147
  validDays: number | null;
148
148
  eligibleCategoryIds: string[];
149
149
  eligibleCategoryNames: string[];
150
- };
150
+ } & ({
151
+ purchaseAvailability: 'purchasable';
152
+ } | {
153
+ purchaseAvailability: 'display_only';
154
+ unavailabilityReason: 'online_payments_unavailable';
155
+ });
151
156
  export type PublicMembershipProduct = {
152
157
  id: string;
153
158
  name: string;
@@ -5,6 +5,8 @@
5
5
  export { Page } from './components/Page.server';
6
6
  export type { PageProps } from './components/Page.server';
7
7
  export { Layout, UnsupportedOverrideOnlyLayoutChromeError, } from './components/Layout';
8
+ export { MISSING_SDK_THEME_ERROR_CODE, MissingSdkThemeError, } from './themeAdmission';
9
+ export type { MissingSdkThemeReason } from './themeAdmission';
8
10
  export type { LayoutProps, HeaderData, FooterData, CustomHeaderData, CustomFooterData, } from './components/Layout';
9
11
  export type { SdkThemeResponsiveMode, SdkThemeRuntime } from './themeRuntime';
10
12
  export type { SdkOverrideOnlyRendering, SdkOverrideOnlyRuntime, SdkRenderingMode, } from './renderingMode';
@@ -0,0 +1,11 @@
1
+ import type { Theme } from '../contracts';
2
+ export declare const MISSING_SDK_THEME_ERROR_CODE: "missing_sdk_theme";
3
+ export type MissingSdkThemeReason = 'cms_theme_absent' | 'local_theme_absent';
4
+ export declare class MissingSdkThemeError extends Error {
5
+ readonly siteId: string;
6
+ readonly reason: MissingSdkThemeReason;
7
+ readonly themeKey?: string | undefined;
8
+ readonly code: "missing_sdk_theme";
9
+ constructor(siteId: string, reason?: MissingSdkThemeReason, themeKey?: string | undefined);
10
+ }
11
+ export declare function requireSdkTheme(theme: Theme | null | undefined, siteId: string, reason?: MissingSdkThemeReason): Theme;
@@ -8,4 +8,4 @@
8
8
  * 1. This constant
9
9
  * 2. The "version" field in package.json
10
10
  */
11
- export declare const SDK_VERSION = "0.129.1";
11
+ export declare const SDK_VERSION = "0.130.0";
@@ -1,4 +1,4 @@
1
- import type { BlockThemeOverride, Theme } from "./schema";
1
+ import { type BlockThemeOverride, type Theme } from './schema';
2
2
  import type { HeadingDecorationOverride, VisibleHeadingDecoration } from "./site-styles/types";
3
3
  export declare function normalizeBlockKind(blockKind: string): string;
4
4
  export type EffectiveHeadingDecoration = Readonly<{
@@ -0,0 +1,184 @@
1
+ import { z } from 'zod';
2
+ export declare const boxBackgroundOverlaySchema: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodDiscriminatedUnion<[z.ZodObject<{
3
+ type: z.ZodLiteral<"none">;
4
+ }, z.core.$strip>, z.ZodObject<{
5
+ type: z.ZodLiteral<"color">;
6
+ color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7
+ opacity: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
8
+ }, z.core.$strip>, z.ZodObject<{
9
+ type: z.ZodLiteral<"gradient">;
10
+ gradient: z.ZodOptional<z.ZodNullable<z.ZodString>>;
11
+ opacity: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
12
+ }, z.core.$strip>], "type">>;
13
+ export declare const boxBackgroundSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
14
+ contentOwner: z.ZodOptional<z.ZodLiteral<"page-design-editor">>;
15
+ textColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
16
+ headingColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
17
+ linkColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
18
+ supportingColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
19
+ type: z.ZodLiteral<"color">;
20
+ color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
21
+ }, z.core.$strip>, z.ZodObject<{
22
+ contentOwner: z.ZodOptional<z.ZodLiteral<"page-design-editor">>;
23
+ textColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
24
+ headingColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
25
+ linkColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
26
+ supportingColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
27
+ type: z.ZodLiteral<"gradient">;
28
+ gradient: z.ZodOptional<z.ZodNullable<z.ZodString>>;
29
+ gradientPresetId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
30
+ }, z.core.$strip>, z.ZodObject<{
31
+ contentOwner: z.ZodOptional<z.ZodLiteral<"page-design-editor">>;
32
+ textColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
33
+ headingColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
34
+ linkColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
35
+ supportingColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
36
+ opacity: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNullable<z.ZodNumber>>>;
37
+ objectFit: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
38
+ fill: "fill";
39
+ custom: "custom";
40
+ fit: "fit";
41
+ original: "original";
42
+ }>>>;
43
+ scale: z.ZodOptional<z.ZodNullable<z.ZodString>>;
44
+ position: z.ZodOptional<z.ZodNullable<z.ZodString>>;
45
+ motion: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
46
+ static: "static";
47
+ "fixed-frame": "fixed-frame";
48
+ }>>>;
49
+ overflow: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
50
+ overlay: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodDiscriminatedUnion<[z.ZodObject<{
51
+ type: z.ZodLiteral<"none">;
52
+ }, z.core.$strip>, z.ZodObject<{
53
+ type: z.ZodLiteral<"color">;
54
+ color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
55
+ opacity: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
56
+ }, z.core.$strip>, z.ZodObject<{
57
+ type: z.ZodLiteral<"gradient">;
58
+ gradient: z.ZodOptional<z.ZodNullable<z.ZodString>>;
59
+ opacity: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
60
+ }, z.core.$strip>], "type">>>>;
61
+ type: z.ZodLiteral<"image">;
62
+ image: z.ZodOptional<z.ZodNullable<z.ZodObject<{
63
+ purpose: z.ZodOptional<z.ZodString>;
64
+ placeholder: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
65
+ assetId: z.ZodOptional<z.ZodString>;
66
+ identifier: z.ZodOptional<z.ZodString>;
67
+ src: z.ZodOptional<z.ZodString>;
68
+ alt: z.ZodOptional<z.ZodString>;
69
+ filename: z.ZodOptional<z.ZodString>;
70
+ mimeType: z.ZodOptional<z.ZodString>;
71
+ width: z.ZodOptional<z.ZodNumber>;
72
+ height: z.ZodOptional<z.ZodNumber>;
73
+ storageBucket: z.ZodOptional<z.ZodString>;
74
+ storagePath: z.ZodOptional<z.ZodString>;
75
+ poster: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
76
+ tag: z.ZodLiteral<"storage">;
77
+ assetId: z.ZodOptional<z.ZodString>;
78
+ storageBucket: z.ZodString;
79
+ storagePath: z.ZodString;
80
+ }, z.core.$strip>, z.ZodObject<{
81
+ tag: z.ZodLiteral<"external-src">;
82
+ assetId: z.ZodOptional<z.ZodString>;
83
+ src: z.ZodString;
84
+ }, z.core.$strip>], "tag">>;
85
+ transform: z.ZodOptional<z.ZodObject<{
86
+ aspectCrops: z.ZodOptional<z.ZodPipe<z.ZodTransform<object | undefined, unknown>, z.ZodRecord<z.ZodString, z.ZodCatch<z.ZodObject<{
87
+ aspect: z.ZodPipe<z.ZodTransform<{} | undefined, unknown>, z.ZodOptional<z.ZodString>>;
88
+ rect: z.ZodPipe<z.ZodTransform<{} | undefined, unknown>, z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>>;
89
+ hotspot: z.ZodPipe<z.ZodTransform<{} | undefined, unknown>, z.ZodOptional<z.ZodObject<{
90
+ x: z.ZodNumber;
91
+ y: z.ZodNumber;
92
+ radius: z.ZodOptional<z.ZodNumber>;
93
+ }, z.core.$strip>>>;
94
+ rotation: z.ZodPipe<z.ZodTransform<{} | undefined, unknown>, z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<90>, z.ZodLiteral<180>, z.ZodLiteral<270>]>>>;
95
+ }, z.core.$strip>>>>>;
96
+ rect: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
97
+ hotspot: z.ZodOptional<z.ZodObject<{
98
+ x: z.ZodNumber;
99
+ y: z.ZodNumber;
100
+ radius: z.ZodOptional<z.ZodNumber>;
101
+ }, z.core.$strip>>;
102
+ rotation: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<90>, z.ZodLiteral<180>, z.ZodLiteral<270>]>>;
103
+ }, z.core.$strip>>;
104
+ type: z.ZodLiteral<"image">;
105
+ }, z.core.$strip>>>;
106
+ }, z.core.$strip>, z.ZodObject<{
107
+ contentOwner: z.ZodOptional<z.ZodLiteral<"page-design-editor">>;
108
+ textColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
109
+ headingColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
110
+ linkColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
111
+ supportingColor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
112
+ opacity: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNullable<z.ZodNumber>>>;
113
+ objectFit: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
114
+ fill: "fill";
115
+ custom: "custom";
116
+ fit: "fit";
117
+ original: "original";
118
+ }>>>;
119
+ scale: z.ZodOptional<z.ZodNullable<z.ZodString>>;
120
+ position: z.ZodOptional<z.ZodNullable<z.ZodString>>;
121
+ motion: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
122
+ static: "static";
123
+ "fixed-frame": "fixed-frame";
124
+ }>>>;
125
+ overflow: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
126
+ overlay: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodDiscriminatedUnion<[z.ZodObject<{
127
+ type: z.ZodLiteral<"none">;
128
+ }, z.core.$strip>, z.ZodObject<{
129
+ type: z.ZodLiteral<"color">;
130
+ color: z.ZodOptional<z.ZodNullable<z.ZodString>>;
131
+ opacity: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
132
+ }, z.core.$strip>, z.ZodObject<{
133
+ type: z.ZodLiteral<"gradient">;
134
+ gradient: z.ZodOptional<z.ZodNullable<z.ZodString>>;
135
+ opacity: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
136
+ }, z.core.$strip>], "type">>>>;
137
+ type: z.ZodLiteral<"video">;
138
+ image: z.ZodOptional<z.ZodNullable<z.ZodObject<{
139
+ purpose: z.ZodOptional<z.ZodString>;
140
+ placeholder: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
141
+ assetId: z.ZodOptional<z.ZodString>;
142
+ identifier: z.ZodOptional<z.ZodString>;
143
+ src: z.ZodOptional<z.ZodString>;
144
+ alt: z.ZodOptional<z.ZodString>;
145
+ filename: z.ZodOptional<z.ZodString>;
146
+ mimeType: z.ZodOptional<z.ZodString>;
147
+ width: z.ZodOptional<z.ZodNumber>;
148
+ height: z.ZodOptional<z.ZodNumber>;
149
+ storageBucket: z.ZodOptional<z.ZodString>;
150
+ storagePath: z.ZodOptional<z.ZodString>;
151
+ poster: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
152
+ tag: z.ZodLiteral<"storage">;
153
+ assetId: z.ZodOptional<z.ZodString>;
154
+ storageBucket: z.ZodString;
155
+ storagePath: z.ZodString;
156
+ }, z.core.$strip>, z.ZodObject<{
157
+ tag: z.ZodLiteral<"external-src">;
158
+ assetId: z.ZodOptional<z.ZodString>;
159
+ src: z.ZodString;
160
+ }, z.core.$strip>], "tag">>;
161
+ transform: z.ZodOptional<z.ZodObject<{
162
+ aspectCrops: z.ZodOptional<z.ZodPipe<z.ZodTransform<object | undefined, unknown>, z.ZodRecord<z.ZodString, z.ZodCatch<z.ZodObject<{
163
+ aspect: z.ZodPipe<z.ZodTransform<{} | undefined, unknown>, z.ZodOptional<z.ZodString>>;
164
+ rect: z.ZodPipe<z.ZodTransform<{} | undefined, unknown>, z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>>;
165
+ hotspot: z.ZodPipe<z.ZodTransform<{} | undefined, unknown>, z.ZodOptional<z.ZodObject<{
166
+ x: z.ZodNumber;
167
+ y: z.ZodNumber;
168
+ radius: z.ZodOptional<z.ZodNumber>;
169
+ }, z.core.$strip>>>;
170
+ rotation: z.ZodPipe<z.ZodTransform<{} | undefined, unknown>, z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<90>, z.ZodLiteral<180>, z.ZodLiteral<270>]>>>;
171
+ }, z.core.$strip>>>>>;
172
+ rect: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
173
+ hotspot: z.ZodOptional<z.ZodObject<{
174
+ x: z.ZodNumber;
175
+ y: z.ZodNumber;
176
+ radius: z.ZodOptional<z.ZodNumber>;
177
+ }, z.core.$strip>>;
178
+ rotation: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<90>, z.ZodLiteral<180>, z.ZodLiteral<270>]>>;
179
+ }, z.core.$strip>>;
180
+ type: z.ZodLiteral<"video">;
181
+ }, z.core.$strip>>>;
182
+ showVideoOnMobile: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
183
+ }, z.core.$strip>], "type">;
184
+ export type BoxBackground = z.infer<typeof boxBackgroundSchema>;