@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,6 +1,6 @@
1
1
  import type { SystemBlockDefinition } from "../registry";
2
2
  import { type SectionStylesContent } from "../fields/boxStyles";
3
- import { publicMembershipProductSchema, publicPassProductSchema, publicMembershipProductCollectionSchema, publicPassProductCollectionSchema, type PublicMembershipProductCollection, type PublicMembershipProduct, type PublicPassProductCollection, type PublicPassProduct } from "./shop.shared";
3
+ import { publicMembershipProductSchema, publicPassProductSchema, publicMembershipProductCollectionSchema, publicPassProductCollectionSchema, type PublicMembershipProductCollection, type PublicMembershipProduct, type PublicPassProductCollection, type PublicPassProduct, type PurchasablePublicPassProduct } from "./shop.shared";
4
4
  import { shopBlockRuntime } from "../runtime/nodes/shop.interactive";
5
5
  import type { BlockManifest } from "../manifest/schema";
6
6
  import type { BlockButtonRole } from "../constants/buttonRoles";
@@ -39,5 +39,5 @@ export type ShopContent = {
39
39
  _sectionStyles?: SectionStylesContent;
40
40
  };
41
41
  export { publicMembershipProductCollectionSchema, publicMembershipProductSchema, publicPassProductCollectionSchema, publicPassProductSchema, };
42
- export type { PublicMembershipProductCollection, PublicMembershipProduct, PublicPassProductCollection, PublicPassProduct, };
42
+ export type { PublicMembershipProductCollection, PublicMembershipProduct, PublicPassProductCollection, PublicPassProduct, PurchasablePublicPassProduct, };
43
43
  export declare const shopBlockDefinition: SystemBlockDefinition<ShopContent, typeof shopBlockRuntime>;
@@ -1,8 +1,6 @@
1
1
  import { z } from 'zod';
2
- /**
3
- * Public pass product for shop display
4
- */
5
- export declare const publicPassProductSchema: z.ZodObject<{
2
+ export declare const purchasablePublicPassProductSchema: z.ZodObject<{
3
+ purchaseAvailability: z.ZodLiteral<"purchasable">;
6
4
  id: z.ZodString;
7
5
  productUseCase: z.ZodDefault<z.ZodEnum<{
8
6
  event_pass: "event_pass";
@@ -18,7 +16,42 @@ export declare const publicPassProductSchema: z.ZodObject<{
18
16
  eligibleCategoryIds: z.ZodArray<z.ZodString>;
19
17
  eligibleCategoryNames: z.ZodArray<z.ZodString>;
20
18
  }, z.core.$strip>;
19
+ export declare const publicPassProductSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
20
+ purchaseAvailability: z.ZodLiteral<"purchasable">;
21
+ id: z.ZodString;
22
+ productUseCase: z.ZodDefault<z.ZodEnum<{
23
+ event_pass: "event_pass";
24
+ appointment_package: "appointment_package";
25
+ }>>;
26
+ name: z.ZodString;
27
+ description: z.ZodNullable<z.ZodString>;
28
+ price: z.ZodNumber;
29
+ currency: z.ZodString;
30
+ creditsTotal: z.ZodNumber;
31
+ pricePerCredit: z.ZodNumber;
32
+ validDays: z.ZodNullable<z.ZodNumber>;
33
+ eligibleCategoryIds: z.ZodArray<z.ZodString>;
34
+ eligibleCategoryNames: z.ZodArray<z.ZodString>;
35
+ }, z.core.$strip>, z.ZodObject<{
36
+ purchaseAvailability: z.ZodLiteral<"display_only">;
37
+ unavailabilityReason: z.ZodLiteral<"online_payments_unavailable">;
38
+ id: z.ZodString;
39
+ productUseCase: z.ZodDefault<z.ZodEnum<{
40
+ event_pass: "event_pass";
41
+ appointment_package: "appointment_package";
42
+ }>>;
43
+ name: z.ZodString;
44
+ description: z.ZodNullable<z.ZodString>;
45
+ price: z.ZodNumber;
46
+ currency: z.ZodString;
47
+ creditsTotal: z.ZodNumber;
48
+ pricePerCredit: z.ZodNumber;
49
+ validDays: z.ZodNullable<z.ZodNumber>;
50
+ eligibleCategoryIds: z.ZodArray<z.ZodString>;
51
+ eligibleCategoryNames: z.ZodArray<z.ZodString>;
52
+ }, z.core.$strip>], "purchaseAvailability">;
21
53
  export type PublicPassProduct = z.infer<typeof publicPassProductSchema>;
54
+ export type PurchasablePublicPassProduct = z.infer<typeof purchasablePublicPassProductSchema>;
22
55
  export type PublicPassProductCollection = Readonly<{
23
56
  passes: readonly PublicPassProduct[];
24
57
  }>;
@@ -1,2 +1,2 @@
1
- import type { NodeDefinition } from "../node";
1
+ import type { NodeDefinition } from '../node';
2
2
  export declare const footerNavGroupsLayout: NodeDefinition;
@@ -27,6 +27,7 @@ type FooterRuntimeModuleVariant = (FooterRuntimeModuleBase<'brand'> & Readonly<{
27
27
  showTitle: boolean;
28
28
  }>) | (FooterRuntimeModuleBase<'navigation'> & Readonly<{
29
29
  navigationClassName?: string;
30
+ navigationGroupsClassName?: string;
30
31
  }>) | FooterRuntimeModuleBase<'legal-navigation'> | (FooterRuntimeModuleBase<'business-address'> & Readonly<{
31
32
  address: string;
32
33
  }>) | (FooterRuntimeModuleBase<'contact'> & Readonly<{
@@ -103,6 +104,7 @@ export type FooterRuntimeViewModel = Readonly<{
103
104
  }>;
104
105
  export type FooterRuntimeGroup = Readonly<{
105
106
  kind: 'identity' | 'main-navigation' | 'visit' | 'engagement' | 'legal-ending';
107
+ className: string;
106
108
  modules: readonly FooterRuntimeModule[];
107
109
  }>;
108
110
  export type FooterRuntimeRegion = Readonly<{
@@ -119,6 +121,7 @@ type FooterRuntimeViewModelInput = Readonly<{
119
121
  hasLogo?: boolean;
120
122
  legalRegion?: 'integrated' | 'separate';
121
123
  layoutVariant?: 'simple' | 'columns' | 'split';
124
+ navigationLayout?: 'stack' | 'inline' | 'inline-wrap';
122
125
  engagement: FooterResolvedEngagement;
123
126
  }>;
124
127
  type FooterRuntimeSectionProjectionInput = Readonly<{
@@ -5,15 +5,15 @@ import { resolveTree } from './runtime';
5
5
  import type { Theme } from '../../../theme-core/src/schema';
6
6
  import type { NodeDefinition } from './node';
7
7
  type RenderOptions = {
8
- registry?: Parameters<typeof resolveTree>[1]["registry"];
9
- theme?: Parameters<typeof resolveTree>[1]["theme"];
8
+ registry?: Parameters<typeof resolveTree>[1]['registry'];
9
+ theme?: Parameters<typeof resolveTree>[1]['theme'];
10
10
  themeConfig?: Theme;
11
- transforms?: Parameters<typeof resolveTree>[1]["transforms"];
11
+ transforms?: Parameters<typeof resolveTree>[1]['transforms'];
12
12
  viewModelOverrides?: Record<string, unknown>;
13
13
  data?: Record<string, unknown>;
14
14
  pathBase?: string;
15
- imageResolveContext?: Parameters<typeof resolveTree>[1]["imageResolveContext"];
16
- previewAuthoring?: Parameters<typeof resolveTree>[1]["previewAuthoring"];
15
+ imageResolveContext?: Parameters<typeof resolveTree>[1]['imageResolveContext'];
16
+ previewAuthoring?: Parameters<typeof resolveTree>[1]['previewAuthoring'];
17
17
  };
18
18
  /**
19
19
  * Resolves the layout definition for a block based on its manifest and content.
@@ -3,6 +3,9 @@ import { type ThemeBackgroundTextLegibilityPlan, type AppearancePresetId, type L
3
3
  import type { ThemeColorToken } from '../../../../theme-core/src/tokens/index';
4
4
  import { type GradientPresetId } from '../../../../theme-core/src/gradients/index';
5
5
  import type { RenderableMediaAsset } from '../../../../media-core/src/index';
6
+ import { type BackgroundContent } from '../fields/backgroundContent';
7
+ import { serializeBackgroundOverride } from './serializeBackgroundOverride';
8
+ export { serializeBackgroundOverride };
6
9
  export { isGradientPresetId, parseGradientPresetId, type GradientPresetId, } from '../../../../theme-core/src/gradients/index';
7
10
  export type BackgroundMode = 'default' | 'color' | 'gradient' | 'image';
8
11
  export type BackgroundModeCycleDirection = 'prev' | 'next';
@@ -21,20 +24,20 @@ export type BackgroundOverride = Readonly<{
21
24
  kind: 'image';
22
25
  mediaId: MediaAssetId;
23
26
  }>;
24
- export type LegacyBackgroundReason = 'unsupported-shape' | 'unsupported-mode' | 'invalid-color-token' | 'arbitrary-gradient-css' | 'missing-gradient-preset-id' | 'invalid-gradient-preset-id' | 'missing-image-media-id' | 'invalid-image-media-id' | 'video-background';
27
+ export type UnsupportedBackgroundReason = 'unsupported-shape' | 'unsupported-mode' | 'invalid-color-token' | 'arbitrary-gradient-css' | 'missing-gradient-preset-id' | 'invalid-gradient-preset-id' | 'missing-image-media-id' | 'invalid-image-media-id' | 'video-background';
25
28
  export type ParsedBackgroundOverride = Readonly<{
26
29
  kind: 'supported';
27
30
  override: BackgroundOverride;
28
31
  }> | Readonly<{
29
- kind: 'legacy';
30
- reason: LegacyBackgroundReason;
32
+ kind: 'unsupported';
33
+ reason: UnsupportedBackgroundReason;
31
34
  background: Readonly<Record<string, unknown>>;
32
35
  }>;
33
36
  export type CanonicalSectionBackground = Readonly<{
34
37
  kind: 'none';
35
38
  }> | Readonly<{
36
39
  kind: 'block-authored';
37
- background: Readonly<Record<string, unknown>>;
40
+ background: BackgroundContent;
38
41
  }> | Readonly<{
39
42
  kind: 'page-design-override';
40
43
  parsed: ParsedBackgroundOverride;
@@ -133,7 +136,7 @@ export type BackgroundOverridePlan = Readonly<{
133
136
  kind: 'blocked';
134
137
  reason: BackgroundOverrideBlockedReason;
135
138
  }>;
136
- export type BackgroundOverrideBlockedReason = 'mode-unavailable' | 'value-unavailable' | 'legacy-current-background';
139
+ export type BackgroundOverrideBlockedReason = 'mode-unavailable' | 'value-unavailable' | 'unsupported-current-background';
137
140
  export type BackgroundCustomizeContent = Record<string, unknown>;
138
141
  export type BackgroundCapabilityBlock = Readonly<{
139
142
  blockKind: string;
@@ -190,7 +193,6 @@ export declare function parseBackgroundOverrideFromContent(content: BackgroundCu
190
193
  */
191
194
  export declare function parseCanonicalSectionBackground(content: BackgroundCustomizeContent): CanonicalSectionBackground;
192
195
  export declare function parseBackgroundOverride(value: unknown): ParsedBackgroundOverride;
193
- export declare function serializeBackgroundOverride(override: BackgroundOverride): Record<string, unknown> | null;
194
196
  export declare function applyBackgroundOverrideContentPatch(content: BackgroundCustomizeContent, override: BackgroundOverride): BackgroundCustomizeContent;
195
197
  export declare function planBackgroundTransition(current: BackgroundOverride, capability: BackgroundCapability, action: BackgroundTransitionAction): BackgroundTransitionPlan;
196
198
  export declare function planBackgroundOverride(current: ParsedBackgroundOverride, capability: BackgroundCapability, override: BackgroundOverride): BackgroundOverridePlan;
@@ -0,0 +1,3 @@
1
+ import type { BackgroundContent } from '../fields/backgroundContent';
2
+ import type { BackgroundOverride } from './backgrounds';
3
+ export declare function serializeBackgroundOverride(override: BackgroundOverride): BackgroundContent | null;
@@ -17,26 +17,8 @@ type BackgroundFieldOptions = {
17
17
  * declared but is managed implicitly by TabGroupField. When the user switches tabs,
18
18
  * the widget writes the tab ID to the path `{id}.type`.
19
19
  *
20
- * The stored data structure is:
21
- * ```typescript
22
- * {
23
- * type: 'color' | 'gradient' | 'image' | 'video', // Managed by TabGroupField
24
- * color?: string, // From Color tab
25
- * gradient?: string, // From Gradient tab (CSS value)
26
- * image?: MediaReference, // From Image tab (image or decorative video)
27
- * showVideoOnMobile?: boolean, // From Video tab
28
- * objectFit?: 'fill' | 'fit' | 'original' | 'custom',
29
- * scale?: string,
30
- * position?: string,
31
- * opacity?: number,
32
- * overlay?: { // Image/video overlay (when includeAdvanced)
33
- * type: 'color' | 'gradient' | 'none',
34
- * color?: string, // Token or hex
35
- * gradient?: string, // CSS gradient
36
- * opacity?: number, // 0-100
37
- * },
38
- * }
39
- * ```
20
+ * Persistence projects the selected tab into the canonical discriminated
21
+ * `BackgroundContent` union. Fields owned by inactive tabs are not stored.
40
22
  *
41
23
  * ## SDK Filtering
42
24
  *
@@ -0,0 +1,17 @@
1
+ import { boxBackgroundOverlaySchema, type BoxBackground } from '../../../../theme-core/src/schema';
2
+ import type { ImageMedia } from '../../lib/media';
3
+ export type BackgroundContent = BoxBackground;
4
+ export type BackgroundForeground = Pick<BackgroundContent, 'textColor' | 'headingColor' | 'linkColor' | 'supportingColor'>;
5
+ export type BackgroundOverlay = ReturnType<typeof boxBackgroundOverlaySchema.parse>;
6
+ export type ImageBackgroundContent = Extract<BackgroundContent, {
7
+ type: 'image';
8
+ }>;
9
+ export type ImageBackgroundDefaults = Partial<Omit<ImageBackgroundContent, 'type' | 'image'>>;
10
+ /**
11
+ * Replaces only the background medium while retaining presentation fields that
12
+ * are valid for the resulting image variant. Stale color/gradient tab state is
13
+ * never copied into the new value.
14
+ */
15
+ export declare function replaceBackgroundWithImage(value: unknown, image: ImageMedia, defaults?: ImageBackgroundDefaults): ImageBackgroundContent;
16
+ export declare function parseBackgroundContent(value: unknown): BackgroundContent | null;
17
+ export declare function parseBackgroundOverlay(value: unknown): BackgroundOverlay | undefined;
@@ -0,0 +1,20 @@
1
+ declare const BACKGROUND_SLOTS: readonly ["_sectionStyles", "_containerStyles", "_cardStyles"];
2
+ export type BoxBackgroundAuditRecord = Readonly<Record<string, unknown>>;
3
+ export type BoxBackgroundAuditFinding = Readonly<{
4
+ contentVersionId: string;
5
+ siteId: string | null;
6
+ blockId: string;
7
+ stage: string | null;
8
+ slot: (typeof BACKGROUND_SLOTS)[number];
9
+ issues: readonly Readonly<{
10
+ path: readonly PropertyKey[];
11
+ code: string;
12
+ message: string;
13
+ }>[];
14
+ }>;
15
+ export type BoxBackgroundAuditReport = Readonly<{
16
+ inspectedBackgrounds: number;
17
+ findings: readonly BoxBackgroundAuditFinding[];
18
+ }>;
19
+ export declare function auditBoxBackgroundContentVersions(records: readonly BoxBackgroundAuditRecord[]): BoxBackgroundAuditReport;
20
+ export {};
@@ -1,6 +1,6 @@
1
1
  import type { ModalFieldDefinition } from '../manifest/schema';
2
- import type { AccordionIconTreatment, EyebrowTreatment, EventListTreatment, HeadingDecorationOverride, PageDesignEditorBackgroundOverrideOwner, TileTreatment } from '../../../../theme-core/src/site-styles/index';
3
- import type { Media } from '../../lib/media';
2
+ import type { AccordionIconTreatment, EyebrowTreatment, EventListTreatment, HeadingDecorationOverride, TileTreatment } from '../../../../theme-core/src/site-styles/index';
3
+ import type { BackgroundContent } from './backgroundContent';
4
4
  /**
5
5
  * Options for customizing a section styles field.
6
6
  */
@@ -65,35 +65,7 @@ type CardStylesOptions = {
65
65
  * ```
66
66
  */
67
67
  export type SectionStylesContent = {
68
- background?: {
69
- type?: 'color' | 'gradient' | 'image';
70
- contentOwner?: PageDesignEditorBackgroundOverrideOwner | null;
71
- color?: string | null;
72
- /** CSS gradient string (e.g., "linear-gradient(...)") */
73
- gradient?: string | null;
74
- /** Curated gradient preset identifier. */
75
- gradientPresetId?: string | null;
76
- image?: Media | null;
77
- objectFit?: 'fill' | 'fit' | 'original' | 'custom' | null;
78
- scale?: string | null;
79
- position?: string | null;
80
- opacity?: number | null;
81
- motion?: 'static' | 'fixed-frame' | null;
82
- overlay?: {
83
- type?: 'none' | 'color' | 'gradient' | null;
84
- color?: string | null;
85
- /** CSS gradient string (e.g., "linear-gradient(...)") */
86
- gradient?: string | null;
87
- opacity?: number | null;
88
- } | null;
89
- textColor?: string | null;
90
- /** Optional color token for headings. Falls back to textColor if not set. */
91
- headingColor?: string | null;
92
- /** Optional color token for links. Falls back to textColor if not set. */
93
- linkColor?: string | null;
94
- /** Optional color token for supporting copy. Falls back to textColor if not set. */
95
- supportingColor?: string | null;
96
- } | null;
68
+ background?: BackgroundContent | null;
97
69
  spacing?: string | null;
98
70
  minHeight?: 'none' | 'banner' | 'hero' | 'immersive' | null;
99
71
  tileTreatment?: TileTreatment | null;
@@ -103,7 +75,7 @@ export type SectionStylesContent = {
103
75
  accordionIconTreatment?: AccordionIconTreatment | null;
104
76
  } | null;
105
77
  export type CardStylesContent = {
106
- background?: Record<string, unknown> | null;
78
+ background?: BackgroundContent | null;
107
79
  border?: {
108
80
  enabled?: boolean | null;
109
81
  width?: 'none' | '1' | '2' | '3' | null;
@@ -116,7 +88,7 @@ export type CardStylesContent = {
116
88
  treatment?: 'accent-quote' | 'editorial-rule' | 'soft-panel' | 'editorial-serif-quote' | 'editorial-open' | null;
117
89
  } | null;
118
90
  export type ContainerStylesContent = {
119
- background?: Record<string, unknown> | null;
91
+ background?: BackgroundContent | null;
120
92
  spacing?: string | null;
121
93
  raised?: boolean | null;
122
94
  rounded?: string | null;
@@ -25,6 +25,7 @@ export type FragmentComposition = {
25
25
  export type FragmentDataLoaders = Record<string, {
26
26
  endpoint: string;
27
27
  params: Record<string, unknown>;
28
+ requiredParams?: readonly string[];
28
29
  mode: "server" | "client";
29
30
  }>;
30
31
  export declare class FragmentCompositionError extends Error {
@@ -6,6 +6,7 @@ declare const fragmentDataSchema: z.ZodObject<{
6
6
  loader: z.ZodOptional<z.ZodObject<{
7
7
  endpoint: z.ZodString;
8
8
  params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
9
+ requiredParams: z.ZodOptional<z.ZodArray<z.ZodString>>;
9
10
  mode: z.ZodDefault<z.ZodEnum<{
10
11
  server: "server";
11
12
  client: "client";
@@ -4,5 +4,5 @@
4
4
  * These helpers make it easy to build custom block overrides that integrate
5
5
  * seamlessly with Riverbank CMS theme tokens and content fields.
6
6
  */
7
- export { resolveBackground, SectionBackground, type BackgroundInput, type ResolvedBackground, type SectionBackgroundProps, } from './resolveBackground';
7
+ export { resolveBackground, SectionBackground, type ResolvedBackground, type SectionBackgroundProps, } from './resolveBackground';
8
8
  export { apiBindings, withApiBindings, type ApiBinding, } from './api-bindings';
@@ -5,50 +5,15 @@
5
5
  * (color, gradient, image, and decorative video) with full theme token support, matching the
6
6
  * behavior of the default declarative block system.
7
7
  */
8
- import * as React from "react";
9
- import { type ThemeTokens } from "../theme";
10
- import type { Media } from "../../lib/media";
11
- import { type BackgroundMedia } from "./backgroundMedia";
12
- import { type ResolveImageUrlContext } from "../runtime/nodes/media";
8
+ import * as React from 'react';
9
+ import { type ThemeTokens } from '../theme';
10
+ import { type BackgroundMedia } from './backgroundMedia';
11
+ import { type BackgroundContent } from '../fields/backgroundContent';
12
+ import { type ResolveImageUrlContext } from '../runtime/nodes/media';
13
13
  /**
14
14
  * Raw background data from CMS content fields.
15
15
  * This is the shape of `_sectionStyles.background`, `_containerStyles.background`, etc.
16
16
  */
17
- export type BackgroundInput = {
18
- /** Color token name (e.g., "primary") or raw hex value */
19
- color?: string | null;
20
- /** CSS gradient string */
21
- gradient?: string | null;
22
- /** Curated gradient preset identifier. Used for Customize-mode backgrounds. */
23
- gradientPresetId?: string | null;
24
- /** Background image or decorative video media object */
25
- image?: Media | null;
26
- /** Whether decorative background video should play on mobile. Defaults to false. */
27
- showVideoOnMobile?: boolean | null;
28
- /** Media sizing mode: 'fill' (cover), 'fit' (contain), 'original', 'custom' */
29
- objectFit?: string | null;
30
- /** Media position: preset keyword or custom CSS value */
31
- position?: string | null;
32
- /** Media scale value (e.g., "150%", "200px") - only for 'custom'/'original' modes */
33
- scale?: string | null;
34
- /** Background opacity (0-1 decimal; legacy 1-100 percentages are still accepted) */
35
- opacity?: number | null;
36
- /** Image scroll behavior for image-backed sections. */
37
- motion?: "static" | "fixed-frame" | null;
38
- /** Whether background should overflow container bounds */
39
- overflow?: boolean | null;
40
- /** Overlay configuration for image/video media */
41
- overlay?: {
42
- /** Overlay type: 'color', 'gradient', or 'none' */
43
- type?: "color" | "gradient" | "none" | null;
44
- /** Overlay color token or hex value */
45
- color?: string | null;
46
- /** Overlay CSS gradient string */
47
- gradient?: string | null;
48
- /** Overlay opacity (0-1 decimal; legacy 1-100 percentages are still accepted) */
49
- opacity?: number | null;
50
- } | null;
51
- };
52
17
  /**
53
18
  * Resolved background ready for rendering.
54
19
  * Token names are converted to actual hex values.
@@ -62,10 +27,10 @@ export type ResolvedBackground = {
62
27
  opacity: number | null;
63
28
  /** Whether background should overflow */
64
29
  overflow: boolean;
65
- /** Resolved image/video media data. Retains the legacy `image` property name for saved background compatibility. */
30
+ /** Resolved image/video media data from the background contract's shared `image` slot. */
66
31
  image: {
67
32
  /** Media kind */
68
- kind: BackgroundMedia["type"];
33
+ kind: BackgroundMedia['type'];
69
34
  /** Media URL */
70
35
  url: string;
71
36
  /** Alt text */
@@ -86,7 +51,7 @@ export type ResolvedBackground = {
86
51
  /** Resolved overlay data for rendering on top of image/video media */
87
52
  overlay: {
88
53
  /** Overlay type */
89
- type: "color" | "gradient" | "none";
54
+ type: 'color' | 'gradient' | 'none';
90
55
  /** Resolved background color (hex) */
91
56
  backgroundColor: string | null;
92
57
  /** CSS gradient string */
@@ -139,10 +104,10 @@ export type ResolveBackgroundOptions = {
139
104
  * }
140
105
  * ```
141
106
  */
142
- export declare function resolveBackground(background: BackgroundInput | null | undefined, theme?: ThemeTokens, options?: ResolveBackgroundOptions): ResolvedBackground;
107
+ export declare function resolveBackground(input: BackgroundContent | null | undefined, theme?: ThemeTokens, options?: ResolveBackgroundOptions): ResolvedBackground;
143
108
  export type SectionBackgroundProps = {
144
109
  /** Raw background data from content (e.g., content._sectionStyles?.background) */
145
- background: BackgroundInput | null | undefined;
110
+ background: BackgroundContent | null | undefined;
146
111
  /** Theme tokens for resolving color tokens to hex values */
147
112
  theme?: ThemeTokens;
148
113
  /** Target aspect ratio used to resolve aspect-specific crop metadata */
@@ -1,6 +1,7 @@
1
- import { z } from "zod";
1
+ import { z } from 'zod';
2
2
  import { linkSchema, customLinkSchema, entryLinkSchema, externalLinkSchema, internalLinkSchema, internalResolvedLinkSchema, internalRouteOnlyLinkSchema, pageLinkSchema } from "../../types/link";
3
- import { type FieldDefinition, type VisibilityLevel } from "../schema";
3
+ import { type FieldDefinition, type VisibilityLevel } from '../schema';
4
+ export { auditBoxBackgroundContentVersions, type BoxBackgroundAuditFinding, type BoxBackgroundAuditRecord, type BoxBackgroundAuditReport, } from '../../fields/backgroundContentAudit';
4
5
  export { linkSchema, customLinkSchema, entryLinkSchema, externalLinkSchema, internalLinkSchema, internalResolvedLinkSchema, internalRouteOnlyLinkSchema, pageLinkSchema, };
5
6
  export type FieldPath = readonly (string | number)[];
6
7
  export type FieldValidationMode = "strict" | "draft";
@@ -135,7 +136,7 @@ export type FieldValidationIssue = BaseIssue<"required", {
135
136
  }> | BaseIssue<"tooManyItems", {
136
137
  maximum: number;
137
138
  itemLabel: string;
138
- }> | BaseIssue<"invalidRichText"> | BaseIssue<"invalidInlineText"> | BaseIssue<"invalidMedia"> | BaseIssue<"invalidLink"> | BaseIssue<"invalidReference">;
139
+ }> | BaseIssue<"invalidRichText"> | BaseIssue<"invalidInlineText"> | BaseIssue<"invalidMedia"> | BaseIssue<"invalidBoxBackground"> | BaseIssue<"invalidLink"> | BaseIssue<"invalidReference">;
139
140
  type BaseIssue<K extends string, Extra extends object = Record<never, never>> = Readonly<{
140
141
  kind: K;
141
142
  path: FieldPath;
@@ -150,8 +151,9 @@ export type ManifestContentValidationIssue = Readonly<{
150
151
  requiredScope: ManifestContentRequiredScope | null;
151
152
  }>;
152
153
  export type ManifestContentValidationResult = Readonly<{
153
- kind: "valid";
154
+ kind: 'valid';
154
155
  issues: readonly [];
156
+ data: Readonly<Record<string, unknown>>;
155
157
  }> | Readonly<{
156
158
  kind: "invalid";
157
159
  issues: readonly ManifestContentValidationIssue[];
@@ -228,6 +230,7 @@ export type GroupFieldValidationPlan = PlanBase<"group", "object", ObjectConstra
228
230
  }>[];
229
231
  }>;
230
232
  allowNullChildren?: boolean;
233
+ valueContract?: "boxBackground";
231
234
  }>;
232
235
  export type PassthroughFieldValidationPlan = PlanBase<"passthrough", "unknown", RequiredConstraint> & Readonly<{
233
236
  fieldType: "presetOrCustom" | "contentTypeSelect" | "entryPicker";
@@ -0,0 +1,4 @@
1
+ import type { FieldValidationPlan, GroupFieldValidationPlan } from './index';
2
+ export declare function allGroupChildPlans(plan: GroupFieldValidationPlan): readonly FieldValidationPlan[];
3
+ export declare function selectedGroupChildPlans(plan: GroupFieldValidationPlan, value: unknown): readonly FieldValidationPlan[];
4
+ export declare function canonicalizeObjectForWrite(plans: readonly FieldValidationPlan[], value: unknown): unknown;