@riverbankcms/sdk 0.77.1 → 0.78.2

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 (295) hide show
  1. package/README.md +114 -43
  2. package/dist/{PreviewEditorSidebar-DVUG7GK4.mjs → PreviewEditorSidebar-4DXLYX2V.mjs} +4962 -4885
  3. package/dist/{PreviewEditorUI-P7RN4CDS.mjs → PreviewEditorUI-CS5P4N3P.mjs} +4 -4
  4. package/dist/SdkPreviewModeRuntime-IJDHTW4W.mjs +8 -0
  5. package/dist/_dts/ai/src/contracts/proposals.d.ts +190 -154
  6. package/dist/_dts/api/src/accessAdmin.d.ts +5 -0
  7. package/dist/_dts/api/src/billing.d.ts +3 -26
  8. package/dist/_dts/api/src/bookingVerticals.d.ts +4 -0
  9. package/dist/_dts/api/src/content-editor.d.ts +1 -0
  10. package/dist/_dts/api/src/contentRuntime.d.ts +1 -0
  11. package/dist/_dts/api/src/demoDashboardMutationSurfaces.d.ts +46 -0
  12. package/dist/_dts/api/src/endpoints.d.ts +17 -0
  13. package/dist/_dts/api/src/index.d.ts +16 -4
  14. package/dist/_dts/api/src/navigation/dashboardBookingsNav.d.ts +87 -0
  15. package/dist/_dts/api/src/navigation/dashboardDemoNav.d.ts +5 -0
  16. package/dist/_dts/api/src/navigation/dashboardSettingsNav.d.ts +45 -0
  17. package/dist/_dts/api/src/navigation/dashboardSiteNav.d.ts +42 -0
  18. package/dist/_dts/api/src/navigation/dashboardTeamMemberNav.d.ts +24 -0
  19. package/dist/_dts/api/src/navigation/linkUrlType.d.ts +3 -0
  20. package/dist/_dts/api/src/navigation.d.ts +12 -0
  21. package/dist/_dts/api/src/public/types.d.ts +1 -1
  22. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +55 -26
  23. package/dist/_dts/api/src/request.d.ts +3 -11
  24. package/dist/_dts/api/src/sdkConfig/contracts.d.ts +1 -0
  25. package/dist/_dts/api/src/sdkContracts.d.ts +7 -1
  26. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +10 -0
  27. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +1 -0
  28. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +15 -19
  29. package/dist/_dts/api/src/staffAccess.d.ts +79 -0
  30. package/dist/_dts/api/src/types.d.ts +14 -27
  31. package/dist/_dts/api/src/workflows/automaticWorkflowTriggers.d.ts +21 -0
  32. package/dist/_dts/block-form/src/fields/types.d.ts +6 -0
  33. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterList.d.ts +3 -2
  34. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterRow.d.ts +6 -3
  35. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterRowActions.d.ts +8 -3
  36. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/index.d.ts +1 -1
  37. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/useLinearRepeaterDnd.d.ts +1 -0
  38. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/useRepeaterPointerDragCapability.d.ts +1 -0
  39. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/useResolvedItemLabel.d.ts +7 -0
  40. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/buildSummary.d.ts +1 -0
  41. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/index.d.ts +3 -1
  42. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/repeaterDndDomain.d.ts +1 -1
  43. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/repeaterLabelSource.d.ts +15 -0
  44. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/repeaterRowActionsDomain.d.ts +50 -0
  45. package/dist/_dts/blocks/src/client/site-chrome.d.ts +4 -1
  46. package/dist/_dts/blocks/src/index.d.ts +1 -0
  47. package/dist/_dts/blocks/src/system/blocks/appointment-booking.d.ts +879 -288
  48. package/dist/_dts/blocks/src/system/blocks/blog-listing.d.ts +879 -288
  49. package/dist/_dts/blocks/src/system/blocks/cart.d.ts +879 -288
  50. package/dist/_dts/blocks/src/system/blocks/checkout.d.ts +879 -288
  51. package/dist/_dts/blocks/src/system/blocks/collection.d.ts +879 -288
  52. package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +2 -2
  53. package/dist/_dts/blocks/src/system/blocks/faq.d.ts +885 -289
  54. package/dist/_dts/blocks/src/system/blocks/gifting.d.ts +879 -288
  55. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +3 -1
  56. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +68 -21
  57. package/dist/_dts/blocks/src/system/blocks/product-detail.d.ts +879 -288
  58. package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +879 -288
  59. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +879 -288
  60. package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +3 -0
  61. package/dist/_dts/blocks/src/system/data/index.d.ts +5 -3
  62. package/dist/_dts/blocks/src/system/data/previewResolvedDataState.d.ts +45 -0
  63. package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +2 -1
  64. package/dist/_dts/blocks/src/system/fragments/library/faqAccordion.d.ts +5 -0
  65. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +193 -29
  66. package/dist/_dts/blocks/src/system/node/fragments/headingDecoration.d.ts +10 -0
  67. package/dist/_dts/blocks/src/system/node/fragments/index.d.ts +1 -0
  68. package/dist/_dts/blocks/src/system/node/fragments/styledSection.d.ts +9 -0
  69. package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +3 -2
  70. package/dist/_dts/blocks/src/system/runtime/api/endpoints.d.ts +8 -0
  71. package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
  72. package/dist/_dts/blocks/src/system/runtime/api/types.d.ts +43 -8
  73. package/dist/_dts/blocks/src/system/runtime/header/shared.d.ts +8 -7
  74. package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessBookingFlow.state.d.ts +1 -1
  75. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.headless.state.d.ts +1 -1
  76. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCompactRow.d.ts +1 -4
  77. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/utils.d.ts +7 -0
  78. package/dist/_dts/blocks/src/system/runtime/nodes/header-section.client.d.ts +2 -8
  79. package/dist/_dts/blocks/src/system/runtime/nodes/header-section.server.d.ts +2 -9
  80. package/dist/_dts/blocks/src/system/runtime/nodes/shop-cart-discount-ui.d.ts +5 -0
  81. package/dist/_dts/blocks/src/system/runtime/nodes/shop-checkout-form.d.ts +76 -0
  82. package/dist/_dts/blocks/src/system/runtime/nodes/shop-checkout.state.d.ts +1 -4
  83. package/dist/_dts/blocks/src/system/runtime/nodes/shop-commerce-store.d.ts +2 -0
  84. package/dist/_dts/blocks/src/system/runtime/nodes/shop-commerce.shared.d.ts +1 -0
  85. package/dist/_dts/blocks/src/system/runtime/nodes/shop-discount-apply.state.d.ts +52 -0
  86. package/dist/_dts/blocks/src/system/runtime/nodes/shop.state.d.ts +2 -4
  87. package/dist/_dts/blocks/src/system/runtime/nodes/useDiscountApply.d.ts +21 -0
  88. package/dist/_dts/blocks/src/system/runtime/shared/components/DiscountCodeDisclosure.d.ts +54 -0
  89. package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +2 -0
  90. package/dist/_dts/blocks/src/system/runtime/shared/index.d.ts +2 -2
  91. package/dist/_dts/blocks/src/system/transforms/registry/ui.d.ts +1 -1
  92. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +1 -1
  93. package/dist/_dts/content-editor/src/contentTypeEditorContentState.d.ts +26 -0
  94. package/dist/_dts/content-editor/src/definitions/factory.d.ts +75 -0
  95. package/dist/_dts/content-editor/src/entryWorkflows.d.ts +2 -0
  96. package/dist/_dts/content-editor/src/footerBlocksEditorState.d.ts +76 -0
  97. package/dist/_dts/content-editor/src/index.d.ts +6 -1
  98. package/dist/_dts/content-editor/src/pageWorkflowContent.d.ts +29 -0
  99. package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +2 -2
  100. package/dist/_dts/content-model/src/content-types/schema.d.ts +17 -3
  101. package/dist/_dts/content-model/src/index.d.ts +1 -0
  102. package/dist/_dts/content-model/src/routeTemplate.d.ts +4 -0
  103. package/dist/_dts/content-model/src/templates/bindingTypeCompatibility.d.ts +3 -1
  104. package/dist/_dts/content-model/src/templates/bindingValidation.d.ts +10 -4
  105. package/dist/_dts/content-model/src/templates/editorState.d.ts +25 -0
  106. package/dist/_dts/content-model/src/templates/fieldPaths.d.ts +20 -0
  107. package/dist/_dts/content-model/src/templates/manifestAdapter.d.ts +5 -2
  108. package/dist/_dts/core/src/branded.d.ts +108 -85
  109. package/dist/_dts/core/src/csv-cells.d.ts +10 -0
  110. package/dist/_dts/core/src/csv-date-filter.d.ts +27 -0
  111. package/dist/_dts/core/src/csv-escape.d.ts +1 -0
  112. package/dist/_dts/core/src/csv-filename.d.ts +18 -0
  113. package/dist/_dts/core/src/csv-render.d.ts +4 -0
  114. package/dist/_dts/core/src/csv-types.d.ts +116 -0
  115. package/dist/_dts/core/src/currency-format.d.ts +4 -0
  116. package/dist/_dts/core/src/demo-capability-policy.d.ts +29 -0
  117. package/dist/_dts/core/src/demo-claim-access.d.ts +14 -0
  118. package/dist/_dts/core/src/demo-lifecycle-status.d.ts +11 -0
  119. package/dist/_dts/core/src/demo-runtime.d.ts +47 -0
  120. package/dist/_dts/core/src/duration.d.ts +14 -0
  121. package/dist/_dts/core/src/editor-state.d.ts +7 -7
  122. package/dist/_dts/core/src/email-format.d.ts +10 -0
  123. package/dist/_dts/core/src/field-errors.d.ts +1 -0
  124. package/dist/_dts/core/src/form-submission-preview.d.ts +24 -0
  125. package/dist/_dts/core/src/index.d.ts +20 -0
  126. package/dist/_dts/core/src/number-input.d.ts +22 -0
  127. package/dist/_dts/core/src/participants.d.ts +2 -2
  128. package/dist/_dts/core/src/public-url-validation.d.ts +12 -0
  129. package/dist/_dts/core/src/slug.d.ts +39 -0
  130. package/dist/_dts/core/src/string.d.ts +19 -0
  131. package/dist/_dts/core/src/uuid.d.ts +6 -0
  132. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +11 -0
  133. package/dist/_dts/db/src/schemas/forms.d.ts +50 -50
  134. package/dist/_dts/editor-blocks/src/blockPayload.d.ts +1 -1
  135. package/dist/_dts/media-core/src/assetsInUseSummary.d.ts +34 -0
  136. package/dist/_dts/media-core/src/bulkDeletePlanning.d.ts +24 -0
  137. package/dist/_dts/media-core/src/canonicalCropReview.d.ts +66 -0
  138. package/dist/_dts/media-core/src/classifyAllPlanning.d.ts +48 -0
  139. package/dist/_dts/media-core/src/filename.d.ts +1 -0
  140. package/dist/_dts/media-core/src/index.d.ts +10 -0
  141. package/dist/_dts/media-core/src/mediaAssetUsageStatus.d.ts +47 -0
  142. package/dist/_dts/media-core/src/mediaSettingsState.d.ts +3 -0
  143. package/dist/_dts/media-core/src/portableMediaReferences.d.ts +38 -0
  144. package/dist/_dts/media-core/src/uploadVerificationContract.d.ts +28 -0
  145. package/dist/_dts/media-core/src/videoAssetRepair.d.ts +38 -0
  146. package/dist/_dts/media-editor/src/MediaEditor.d.ts +3 -1
  147. package/dist/_dts/media-editor/src/MediaPreview.d.ts +3 -1
  148. package/dist/_dts/media-editor/src/fieldUi.d.ts +5 -0
  149. package/dist/_dts/media-editor/src/index.d.ts +1 -1
  150. package/dist/_dts/media-editor/src/mediaEditorDebug.d.ts +1 -0
  151. package/dist/_dts/path-utils/src/index.d.ts +8 -0
  152. package/dist/_dts/path-utils/src/redirectPaths.d.ts +26 -0
  153. package/dist/_dts/path-utils/src/safeAppPath.d.ts +26 -0
  154. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeButton.d.ts +2 -1
  155. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +4 -0
  156. package/dist/_dts/preview-next/src/client/preview/previewDocumentFrame.d.ts +31 -0
  157. package/dist/_dts/sdk/src/cli/commands/push/consts.d.ts +1 -1
  158. package/dist/_dts/sdk/src/cli/commands/push/metadata.d.ts +2 -0
  159. package/dist/_dts/sdk/src/cli/commands/push/stale.d.ts +3 -3
  160. package/dist/_dts/sdk/src/cli/commands/push-execute.d.ts +7 -0
  161. package/dist/_dts/sdk/src/cli/commands/push.d.ts +2 -0
  162. package/dist/_dts/sdk/src/cli/content/reader.d.ts +13 -0
  163. package/dist/_dts/sdk/src/cli/content/writer.d.ts +2 -1
  164. package/dist/_dts/sdk/src/cli/helpers.d.ts +2 -0
  165. package/dist/_dts/sdk/src/cli/site-commands/commandKeys.d.ts +6 -6
  166. package/dist/_dts/sdk/src/cli/site-commands/commandRuntime.d.ts +5 -0
  167. package/dist/_dts/sdk/src/cli/site-commands/commandSurfaceDispatch.d.ts +4 -0
  168. package/dist/_dts/sdk/src/cli/site-commands/pageCommands.d.ts +5 -2
  169. package/dist/_dts/sdk/src/cli/site-commands/pushExecution.d.ts +10 -1
  170. package/dist/_dts/sdk/src/cli/site-commands/pushExecutionTypes.d.ts +1 -1
  171. package/dist/_dts/sdk/src/client/error.d.ts +3 -0
  172. package/dist/_dts/sdk/src/client/index.d.ts +2 -2
  173. package/dist/_dts/sdk/src/client/management/types.d.ts +6 -0
  174. package/dist/_dts/sdk/src/client/types.d.ts +39 -21
  175. package/dist/_dts/sdk/src/config/content-types.d.ts +7 -0
  176. package/dist/_dts/sdk/src/config/field-definitions.d.ts +2 -0
  177. package/dist/_dts/sdk/src/index.d.ts +2 -2
  178. package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +16 -16
  179. package/dist/_dts/sdk/src/next/content-load-failure.d.ts +51 -0
  180. package/dist/_dts/sdk/src/next/index.d.ts +2 -1
  181. package/dist/_dts/sdk/src/next/types.d.ts +19 -0
  182. package/dist/_dts/sdk/src/portal/redirects.d.ts +1 -1
  183. package/dist/_dts/sdk/src/routing/index.d.ts +3 -2
  184. package/dist/_dts/sdk/src/routing/resolvePageContent.d.ts +71 -6
  185. package/dist/_dts/sdk/src/version.d.ts +1 -1
  186. package/dist/_dts/site-commands/src/commands.d.ts +15 -12
  187. package/dist/_dts/site-commands/src/index.d.ts +1 -0
  188. package/dist/_dts/site-commands/src/pagePaths.d.ts +6 -0
  189. package/dist/_dts/theme-core/src/accordions/siteStyleDefaults.d.ts +26 -0
  190. package/dist/_dts/theme-core/src/accordions/types.d.ts +1 -0
  191. package/dist/_dts/theme-core/src/blocks/vars/index.d.ts +1 -0
  192. package/dist/_dts/theme-core/src/fonts/index.d.ts +1 -0
  193. package/dist/_dts/theme-core/src/fonts/uploadFormat.d.ts +44 -0
  194. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  195. package/dist/_dts/theme-core/src/index.d.ts +3 -1
  196. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +36 -24
  197. package/dist/_dts/theme-core/src/navigation/generateNavLinkCSS.d.ts +6 -1
  198. package/dist/_dts/theme-core/src/navigation/types.d.ts +12 -0
  199. package/dist/_dts/theme-core/src/palette/variants/types.d.ts +3 -3
  200. package/dist/_dts/theme-core/src/runtime/themeCssVarNames.d.ts +7 -0
  201. package/dist/_dts/theme-core/src/schema.d.ts +64 -18
  202. package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +214 -34
  203. package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +5 -2
  204. package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +214 -34
  205. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +24 -0
  206. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +31 -3
  207. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -4
  208. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +33 -1
  209. package/dist/_dts/theme-core/src/site-styles/rawStyleFields.d.ts +4 -2
  210. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +9 -1
  211. package/dist/_dts/theme-core/src/site-styles/types.d.ts +27 -2
  212. package/dist/_dts/theme-core/src/siteChrome.d.ts +17 -34
  213. package/dist/_dts/theme-core/src/siteChromeOverlayClearance.d.ts +22 -0
  214. package/dist/_dts/theme-core/src/siteChromePlacement.d.ts +22 -0
  215. package/dist/_dts/theme-core/src/siteChromePlanning.d.ts +32 -0
  216. package/dist/_dts/theme-core/src/tokens/themeColorTokens.d.ts +2 -2
  217. package/dist/{altcha-B5XGSXP5.mjs → altcha-EKUEQ4RP.mjs} +1 -1
  218. package/dist/{chunk-IENWFSLO.mjs → chunk-4QEGTLK6.mjs} +1 -1
  219. package/dist/{chunk-ZYEJLCTN.mjs → chunk-6HYXHRAI.mjs} +5 -5
  220. package/dist/{chunk-VX7B5VAC.mjs → chunk-CR5HKAGU.mjs} +32 -5
  221. package/dist/{chunk-KWJPDZH2.mjs → chunk-MCRQMPET.mjs} +3793 -1201
  222. package/dist/{chunk-6SMUFTXD.mjs → chunk-OKMBEAXY.mjs} +1 -1
  223. package/dist/{chunk-XGB3TDIC.mjs → chunk-R7POPVJR.mjs} +2 -8
  224. package/dist/{chunk-2SPENC5M.mjs → chunk-RGTOD4AJ.mjs} +242 -57
  225. package/dist/cli/index.mjs +2361 -668
  226. package/dist/cli/init-docs/content/cli-reference.md +3 -2
  227. package/dist/cli/init-docs/content/content-management.md +2 -2
  228. package/dist/cli/init-docs/content/workflow-preview-mode.md +68 -2
  229. package/dist/client/{accordion-RZMQSYLR.mjs → accordion-PLYNJIIM.mjs} +2 -2
  230. package/dist/client/analytics.mjs +1 -1
  231. package/dist/client/{bookingForm-NF4ASVNV.mjs → bookingForm-BXAP6AO7.mjs} +76 -72
  232. package/dist/client/bookings.mjs +3765 -310
  233. package/dist/client/{carousel-LDX47ZIK.mjs → carousel-TRBXDHGF.mjs} +3 -4
  234. package/dist/client/{cart-RGXDS5F4.mjs → cart-Z7H3HJRS.mjs} +8 -8
  235. package/dist/client/{checkout-P7WWSNNY.mjs → checkout-WAFCUBIX.mjs} +8 -8
  236. package/dist/client/{chunk-II7O4XN3.mjs → chunk-75OUS5MT.mjs} +2 -2
  237. package/dist/client/{chunk-PMAIXMAB.mjs → chunk-AUJ5DBZJ.mjs} +42 -37
  238. package/dist/client/{chunk-TQ5MSPDX.mjs → chunk-CE7IBGVW.mjs} +3 -1
  239. package/dist/client/{chunk-E2TDNXCL.mjs → chunk-CWGTG37I.mjs} +2 -1
  240. package/dist/client/{chunk-UFSWADAO.mjs → chunk-DNRGY432.mjs} +6 -67
  241. package/dist/client/{chunk-GMVTOKYG.mjs → chunk-FUXW6VW2.mjs} +512 -66
  242. package/dist/client/{chunk-R56FQ3RR.mjs → chunk-JGXPTEI2.mjs} +322 -106
  243. package/dist/client/{chunk-L3DNHIJX.mjs → chunk-JRDUHZCT.mjs} +53 -53
  244. package/dist/client/{chunk-M3L3KYYR.mjs → chunk-UDNSI5PY.mjs} +12 -0
  245. package/dist/client/{chunk-JEZECJ3W.mjs → chunk-UVQEJJTN.mjs} +129 -3
  246. package/dist/client/{chunk-F7LHOKEH.mjs → chunk-XSV6KW4D.mjs} +1 -1
  247. package/dist/client/chunk-ZFHRN6W2.mjs +66 -0
  248. package/dist/client/{chunk-JNC7CGHX.mjs → chunk-ZI3LLBPZ.mjs} +3 -3
  249. package/dist/client/client.mjs +7577 -4979
  250. package/dist/client/{courseRegistration-7F65K5ZR.mjs → courseRegistration-AHFQHWIJ.mjs} +19 -16
  251. package/dist/client/{eventCalendar-GLSC5KTL.mjs → eventCalendar-LDXTV5R7.mjs} +10 -10
  252. package/dist/client/{eventCombined-ZHK4WKUR.mjs → eventCombined-A4JGTNJO.mjs} +10 -10
  253. package/dist/client/{eventDetails-E3PJYBIN.mjs → eventDetails-4YXTZ7EG.mjs} +10 -10
  254. package/dist/client/{eventListing-EMS3WC3E.mjs → eventListing-P72TPFFM.mjs} +10 -10
  255. package/dist/client/{eventRegistration-NZOTVNPI.mjs → eventRegistration-LSYJHGMT.mjs} +10 -10
  256. package/dist/client/{form-ETFZFATW.mjs → form-AOPYOKOW.mjs} +10 -7
  257. package/dist/client/{headerSection-4LBP7ULT.mjs → headerSection-5TFYDFVQ.mjs} +3 -3
  258. package/dist/client/hooks.mjs +1119 -327
  259. package/dist/client/{locationMap-5M655YSJ.mjs → locationMap-QSZ3ZVAZ.mjs} +3 -3
  260. package/dist/client/{newsletterForm-QOUYW44O.mjs → newsletterForm-KTRHZY52.mjs} +3 -3
  261. package/dist/client/{productDetail-O4DOCWQG.mjs → productDetail-N4E775RG.mjs} +8 -8
  262. package/dist/client/{productList-A5RO5WIS.mjs → productList-UGUQ2S45.mjs} +8 -8
  263. package/dist/client/rendering/client.mjs +7262 -2775
  264. package/dist/client/rendering/islands.mjs +19 -19
  265. package/dist/client/rendering.mjs +6964 -4587
  266. package/dist/client/{shop-L4MZH4I2.mjs → shop-VHSZEEQ2.mjs} +8 -8
  267. package/dist/preview-next/before-render.mjs +18 -1
  268. package/dist/preview-next/client/runtime.mjs +6 -6
  269. package/dist/preview-next/editor-chrome.css +10 -0
  270. package/dist/preview-next/middleware.mjs +18 -1
  271. package/dist/preview-next/tailwind-sources.css +1 -0
  272. package/dist/sdk-runtime-WHPJEF5G.mjs +8 -0
  273. package/dist/server/components.mjs +2736 -1316
  274. package/dist/server/config-template-validation.mjs +221 -15
  275. package/dist/server/config-validation.mjs +1346 -550
  276. package/dist/server/config.mjs +1346 -550
  277. package/dist/server/data.mjs +1118 -326
  278. package/dist/server/index.mjs +514 -251
  279. package/dist/server/next.mjs +4446 -2444
  280. package/dist/server/page-converter.mjs +631 -155
  281. package/dist/server/prebuild.mjs +1 -1
  282. package/dist/server/rendering/server.mjs +2743 -1323
  283. package/dist/server/rendering.mjs +2764 -1328
  284. package/dist/server/routing.mjs +1860 -590
  285. package/dist/server/server.mjs +1622 -575
  286. package/dist/server/theme-bridge.mjs +3151 -131
  287. package/dist/server/theme.mjs +10 -1
  288. package/dist/styles/index.css +488 -48
  289. package/package.json +2 -1
  290. package/dist/SdkPreviewModeRuntime-KLPX47SE.mjs +0 -8
  291. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/DiscountCodeSection.d.ts +0 -7
  292. package/dist/_dts/preview-next/src/client/widgets/PreviewMediaField.d.ts +0 -4
  293. package/dist/client/chunk-OJPZEZU2.mjs +0 -31
  294. package/dist/client/chunk-RTZ3JKKX.mjs +0 -178
  295. package/dist/sdk-runtime-6UT2S7KZ.mjs +0 -8
@@ -0,0 +1,51 @@
1
+ export { RiverbankContentLoadError } from '../routing/resolvePageContent';
2
+ import { RiverbankContentLoadError } from '../routing/resolvePageContent';
3
+ export type SdkContentLoadFailureKind = 'timeout' | 'network' | 'http_5xx' | 'http_non_404' | 'circuit_open' | 'aborted' | 'unknown';
4
+ export type SdkContentLoadNotFound = Readonly<{
5
+ kind: 'not_found';
6
+ status: 404;
7
+ message: string;
8
+ upstreamCode?: string;
9
+ requestId?: string;
10
+ }>;
11
+ export type SdkContentLoadFailure = Readonly<{
12
+ kind: SdkContentLoadFailureKind;
13
+ message: string;
14
+ status?: number;
15
+ upstreamCode?: string;
16
+ requestId?: string;
17
+ retryAfterMs?: number;
18
+ }>;
19
+ export type ClassifiedContentLoadError = SdkContentLoadNotFound | Readonly<{
20
+ kind: 'upstream_failed';
21
+ failure: SdkContentLoadFailure;
22
+ }>;
23
+ export type CatchAllRequestContext = Readonly<{
24
+ host?: string;
25
+ requestId?: string;
26
+ correlationId?: string;
27
+ monitorRunId?: string;
28
+ }>;
29
+ export type CatchAllContentLoadFailureContext = Readonly<{
30
+ siteId: string;
31
+ path: string;
32
+ preview: boolean;
33
+ sdkVersion: string;
34
+ failure: SdkContentLoadFailure;
35
+ requestContext?: CatchAllRequestContext;
36
+ }>;
37
+ export type SdkContentLoadError = RiverbankContentLoadError & {
38
+ readonly context: CatchAllContentLoadFailureContext;
39
+ };
40
+ export declare const SdkContentLoadError: typeof RiverbankContentLoadError;
41
+ export declare function isSdkContentLoadError(error: unknown): error is SdkContentLoadError;
42
+ export declare function classifyContentLoadError(error: unknown): ClassifiedContentLoadError;
43
+ export declare function createSdkContentLoadError(input: {
44
+ siteId: string;
45
+ path: string;
46
+ preview: boolean;
47
+ failure: SdkContentLoadFailure;
48
+ requestContext?: CatchAllRequestContext;
49
+ cause?: unknown;
50
+ }): SdkContentLoadError;
51
+ export declare function toContentLoadFailureLogFields(error: SdkContentLoadError): Record<string, string | number | boolean | undefined>;
@@ -38,9 +38,10 @@
38
38
  * @packageDocumentation
39
39
  */
40
40
  export { createCatchAllPage } from './catch-all';
41
+ export { RiverbankContentLoadError, SdkContentLoadError, classifyContentLoadError, isSdkContentLoadError, toContentLoadFailureLogFields, type CatchAllContentLoadFailureContext, type CatchAllRequestContext, type ClassifiedContentLoadError, type SdkContentLoadFailure, type SdkContentLoadFailureKind, type SdkContentLoadNotFound, } from './content-load-failure';
41
42
  export type { CreateCatchAllPageOptions, CreateCatchAllPageResult, CatchAllPageProps, CatchAllContext, ThemeSwitchConfigV1, ThemeResolverContext, } from './types';
42
43
  export { generateAllStaticParams, validateStaticParamsEnv, pathToSlugArray, type StaticParamsEnvResult, } from './static-params';
43
- export { createSitemap, type CreateSitemapOptions, type SitemapGenerator } from './sitemap';
44
+ export { createSitemap, type CreateSitemapOptions, type SitemapGenerator, } from './sitemap';
44
45
  export { createRobots, type CreateRobotsOptions } from './robots';
45
46
  /**
46
47
  * ISR revalidation duration in seconds for production mode.
@@ -11,6 +11,7 @@ import type { Theme } from '../contracts';
11
11
  import type { BlockOverrideRegistrations } from '../rendering/overrides';
12
12
  import type { Metadata } from '../metadata/generatePageMetadata';
13
13
  import type { LoadContentResult } from '../rendering/helpers/loadContent';
14
+ import type { CatchAllContentLoadFailureContext, CatchAllRequestContext } from './content-load-failure';
14
15
  /**
15
16
  * Context passed to escape hatch callbacks.
16
17
  */
@@ -219,6 +220,24 @@ export type CreateCatchAllPageOptions = {
219
220
  * ```
220
221
  */
221
222
  beforeRender?: (context: CatchAllContext) => ReactNode | null | Promise<ReactNode | null>;
223
+ /**
224
+ * Optional per-request context used for SDK content-load failure logs.
225
+ *
226
+ * The SDK does not call Next's `headers()` automatically because that would
227
+ * change caching/dynamic behavior for all consumers. If you need host,
228
+ * request ID, correlation ID, or monitor run ID in failure logs, pass them
229
+ * through this hook from your app router page.
230
+ */
231
+ getRequestContext?: () => CatchAllRequestContext | Promise<CatchAllRequestContext>;
232
+ /**
233
+ * Optional escape hatch for upstream CMS/API failures while loading content.
234
+ *
235
+ * By default, `createCatchAllPage()` throws `RiverbankContentLoadError`
236
+ * for timeout/network/5xx/circuit-open failures so they cannot be mistaken
237
+ * for content 404s. Return a React node here only if your site deliberately
238
+ * wants to render a custom temporary-unavailable UI for those failures.
239
+ */
240
+ onContentLoadFailure?: (context: CatchAllContentLoadFailureContext) => ReactNode | undefined | Promise<ReactNode | undefined>;
222
241
  /**
223
242
  * Custom metadata generator. If provided, replaces default metadata generation.
224
243
  *
@@ -1,4 +1,4 @@
1
- import { type SafeAppPath } from '@riverbankcms/path-utils';
1
+ import { type SafeAppPath } from '../../../path-utils/src/index';
2
2
  type RedirectOptions = {
3
3
  defaultRedirectPath?: string;
4
4
  redirectPath?: string;
@@ -9,11 +9,12 @@ export { getContentEntryPrefixes, getContentEntryPrefixesFromContentTypes, isCon
9
9
  export type { ContentEntryMatch } from './contentRoutes';
10
10
  export { toRoutingInfo } from './contentTypeResolver';
11
11
  export type { ContentTypeRoutingInfo } from './contentTypeResolver';
12
- export { isISODateString, isUUID, isValidSegment, } from './segmentValidators';
12
+ export { isISODateString, isUUID, isValidSegment } from './segmentValidators';
13
13
  export { detectEntrySubrouteFromTypes, extractPotentialEntrySubroute, defaultShouldAttemptEntrySubroute, inferKnownEntrySubrouteKind, } from './entrySubroutes';
14
14
  export type { EntrySubrouteCandidate, ShouldAttemptEntrySubrouteArgs, KnownEntrySubrouteKind, } from './entrySubroutes';
15
15
  export { resolvePageContent } from './resolvePageContent';
16
- export type { OccurrenceData, EntrySubrouteData, ResolvePageContentOptions, PageResolutionResult, } from './resolvePageContent';
16
+ export { contentFound, contentLoadFailed, contentNotFound, RiverbankContentLoadError, } from './resolvePageContent';
17
+ export type { OccurrenceData, EntrySubrouteData, LoadContentResult, PublicContentLoadError, PublicLoadStage, ResolvePageContentOptions, PageResolutionResult, RiverbankContentLoadErrorOptions, } from './resolvePageContent';
17
18
  export { resolveEntrySubrouteFromSegment } from './resolveEntrySubroute';
18
19
  export type { ResolveEntrySubrouteParams } from './resolveEntrySubroute';
19
20
  export { checkRedirectForPath } from './checkRedirect';
@@ -22,6 +22,61 @@ export type EntrySubrouteData = {
22
22
  kind: 'course-run';
23
23
  run: CourseRunData;
24
24
  };
25
+ export type PublicLoadStage = 'site_lookup' | 'content_lookup' | 'entry_subroute_lookup' | 'redirect_lookup' | 'content_normalization';
26
+ export type PublicContentLoadError = {
27
+ kind: 'timeout';
28
+ stage: PublicLoadStage;
29
+ message: string;
30
+ requestId?: string | null;
31
+ } | {
32
+ kind: 'network';
33
+ stage: PublicLoadStage;
34
+ message: string;
35
+ code?: string | null;
36
+ requestId?: string | null;
37
+ } | {
38
+ kind: 'api_error';
39
+ stage: PublicLoadStage;
40
+ status: number;
41
+ message: string;
42
+ code?: string | null;
43
+ requestId?: string | null;
44
+ } | {
45
+ kind: 'invalid_payload';
46
+ stage: PublicLoadStage;
47
+ message: string;
48
+ requestId?: string | null;
49
+ } | {
50
+ kind: 'unknown';
51
+ stage: PublicLoadStage;
52
+ message: string;
53
+ requestId?: string | null;
54
+ };
55
+ export type RiverbankContentLoadErrorOptions = Readonly<{
56
+ surface: string;
57
+ reason?: string | null;
58
+ path?: string | null;
59
+ cause?: unknown;
60
+ }>;
61
+ export declare class RiverbankContentLoadError extends Error {
62
+ readonly surface: string;
63
+ readonly reason: string | null;
64
+ readonly path: string | null;
65
+ readonly cause?: unknown;
66
+ constructor(message: string, options: RiverbankContentLoadErrorOptions);
67
+ }
68
+ export type LoadContentResult<TContent> = {
69
+ kind: 'found';
70
+ content: TContent;
71
+ } | {
72
+ kind: 'not_found';
73
+ } | {
74
+ kind: 'failed';
75
+ error: PublicContentLoadError;
76
+ };
77
+ export declare function contentFound<TContent>(content: TContent): LoadContentResult<TContent>;
78
+ export declare function contentNotFound<TContent>(): LoadContentResult<TContent>;
79
+ export declare function contentLoadFailed<TContent>(error: PublicContentLoadError): LoadContentResult<TContent>;
25
80
  /**
26
81
  * Options for resolving page content.
27
82
  *
@@ -35,13 +90,14 @@ export interface ResolvePageContentOptions<TContent> {
35
90
  /**
36
91
  * Load content by path.
37
92
  *
38
- * **Contract:** MUST return null for not-found (not throw).
39
- * Callers should wrap their client to normalize exceptions.
93
+ * **Contract:** MUST return a closed result that distinguishes not-found
94
+ * from upstream failure. Callers should wrap their client to normalize
95
+ * exceptions before they reach this routing helper.
40
96
  *
41
97
  * @param path - The path to load
42
- * @returns Content if found, null if not found
98
+ * @returns Content load result
43
99
  */
44
- loadContent: (path: string) => Promise<TContent | null>;
100
+ loadContent: (path: string) => Promise<LoadContentResult<TContent>>;
45
101
  /**
46
102
  * Resolve occurrence by entry ID and segment.
47
103
  *
@@ -99,6 +155,14 @@ export type PageResolutionResult<TContent> = {
99
155
  found: false;
100
156
  /** Reason for not finding content */
101
157
  reason: 'not-found' | 'invalid-subroute';
158
+ } | {
159
+ /** Content could not be loaded due to an upstream failure */
160
+ found: false;
161
+ reason: 'load-failed';
162
+ /** The path whose content load failed */
163
+ failedPath: string;
164
+ /** Normalized load failure */
165
+ error: PublicContentLoadError;
102
166
  };
103
167
  /**
104
168
  * Resolve page content for a given path.
@@ -112,8 +176,9 @@ export type PageResolutionResult<TContent> = {
112
176
  *
113
177
  * ## Error Handling
114
178
  *
115
- * The `loadContent` function MUST return `null` for not-found, not throw.
116
- * SDK callers should wrap their client to catch and normalize exceptions.
179
+ * The `loadContent` function MUST return `not_found` for absence and `failed`
180
+ * for upstream errors. SDK callers should wrap their client to catch and
181
+ * normalize exceptions.
117
182
  *
118
183
  * @template TContent - The content type
119
184
  * @param options - Resolution options with injected loaders
@@ -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.77.1";
11
+ export declare const SDK_VERSION = "0.78.2";
@@ -190,8 +190,8 @@ export declare const upsertNavigationMenuCommandSchema: z.ZodObject<{
190
190
  input: z.ZodObject<{
191
191
  name: z.ZodOptional<z.ZodString>;
192
192
  location: z.ZodOptional<z.ZodEnum<{
193
- footer: "footer";
194
193
  header: "header";
194
+ footer: "footer";
195
195
  main: "main";
196
196
  }>>;
197
197
  role: z.ZodOptional<z.ZodEnum<{
@@ -268,6 +268,7 @@ export declare const upsertContentEntryCommandSchema: z.ZodObject<{
268
268
  contentTypeKey: z.ZodString;
269
269
  slug: z.ZodOptional<z.ZodString>;
270
270
  title: z.ZodOptional<z.ZodString>;
271
+ manualOrder: z.ZodOptional<z.ZodNumber>;
271
272
  data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
272
273
  linkedSubjectRef: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<ContentEntryRef, string>>>;
273
274
  mediaRefs: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<MediaRef, string>>>>>;
@@ -409,9 +410,9 @@ export declare const upsertEventSeriesCommandSchema: z.ZodObject<{
409
410
  }>;
410
411
  status: z.ZodOptional<z.ZodEnum<{
411
412
  active: "active";
412
- cancelled: "cancelled";
413
413
  draft: "draft";
414
414
  archived: "archived";
415
+ cancelled: "cancelled";
415
416
  }>>;
416
417
  visibility: z.ZodEnum<{
417
418
  draft: "draft";
@@ -533,8 +534,8 @@ export declare const upsertCourseCommandSchema: z.ZodObject<{
533
534
  title: z.ZodString;
534
535
  status: z.ZodOptional<z.ZodEnum<{
535
536
  active: "active";
536
- cancelled: "cancelled";
537
537
  draft: "draft";
538
+ cancelled: "cancelled";
538
539
  }>>;
539
540
  visibility: z.ZodEnum<{
540
541
  draft: "draft";
@@ -723,8 +724,8 @@ export declare const grantCustomerPassCommandSchema: z.ZodObject<{
723
724
  expiresAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
724
725
  status: z.ZodDefault<z.ZodEnum<{
725
726
  active: "active";
726
- refunded: "refunded";
727
727
  expired: "expired";
728
+ refunded: "refunded";
728
729
  exhausted: "exhausted";
729
730
  }>>;
730
731
  note: z.ZodOptional<z.ZodString>;
@@ -1091,8 +1092,8 @@ export declare const siteCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1091
1092
  input: z.ZodObject<{
1092
1093
  name: z.ZodOptional<z.ZodString>;
1093
1094
  location: z.ZodOptional<z.ZodEnum<{
1094
- footer: "footer";
1095
1095
  header: "header";
1096
+ footer: "footer";
1096
1097
  main: "main";
1097
1098
  }>>;
1098
1099
  role: z.ZodOptional<z.ZodEnum<{
@@ -1166,6 +1167,7 @@ export declare const siteCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1166
1167
  contentTypeKey: z.ZodString;
1167
1168
  slug: z.ZodOptional<z.ZodString>;
1168
1169
  title: z.ZodOptional<z.ZodString>;
1170
+ manualOrder: z.ZodOptional<z.ZodNumber>;
1169
1171
  data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1170
1172
  linkedSubjectRef: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<ContentEntryRef, string>>>;
1171
1173
  mediaRefs: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<MediaRef, string>>>>>;
@@ -1311,9 +1313,9 @@ export declare const siteCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1311
1313
  }>;
1312
1314
  status: z.ZodOptional<z.ZodEnum<{
1313
1315
  active: "active";
1314
- cancelled: "cancelled";
1315
1316
  draft: "draft";
1316
1317
  archived: "archived";
1318
+ cancelled: "cancelled";
1317
1319
  }>>;
1318
1320
  visibility: z.ZodEnum<{
1319
1321
  draft: "draft";
@@ -1432,8 +1434,8 @@ export declare const siteCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1432
1434
  title: z.ZodString;
1433
1435
  status: z.ZodOptional<z.ZodEnum<{
1434
1436
  active: "active";
1435
- cancelled: "cancelled";
1436
1437
  draft: "draft";
1438
+ cancelled: "cancelled";
1437
1439
  }>>;
1438
1440
  visibility: z.ZodEnum<{
1439
1441
  draft: "draft";
@@ -1572,8 +1574,8 @@ export declare const siteCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1572
1574
  expiresAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1573
1575
  status: z.ZodDefault<z.ZodEnum<{
1574
1576
  active: "active";
1575
- refunded: "refunded";
1576
1577
  expired: "expired";
1578
+ refunded: "refunded";
1577
1579
  exhausted: "exhausted";
1578
1580
  }>>;
1579
1581
  note: z.ZodOptional<z.ZodString>;
@@ -1924,8 +1926,8 @@ export declare const siteCommandBatchSchema: z.ZodObject<{
1924
1926
  input: z.ZodObject<{
1925
1927
  name: z.ZodOptional<z.ZodString>;
1926
1928
  location: z.ZodOptional<z.ZodEnum<{
1927
- footer: "footer";
1928
1929
  header: "header";
1930
+ footer: "footer";
1929
1931
  main: "main";
1930
1932
  }>>;
1931
1933
  role: z.ZodOptional<z.ZodEnum<{
@@ -1999,6 +2001,7 @@ export declare const siteCommandBatchSchema: z.ZodObject<{
1999
2001
  contentTypeKey: z.ZodString;
2000
2002
  slug: z.ZodOptional<z.ZodString>;
2001
2003
  title: z.ZodOptional<z.ZodString>;
2004
+ manualOrder: z.ZodOptional<z.ZodNumber>;
2002
2005
  data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2003
2006
  linkedSubjectRef: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<ContentEntryRef, string>>>;
2004
2007
  mediaRefs: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<MediaRef, string>>>>>;
@@ -2144,9 +2147,9 @@ export declare const siteCommandBatchSchema: z.ZodObject<{
2144
2147
  }>;
2145
2148
  status: z.ZodOptional<z.ZodEnum<{
2146
2149
  active: "active";
2147
- cancelled: "cancelled";
2148
2150
  draft: "draft";
2149
2151
  archived: "archived";
2152
+ cancelled: "cancelled";
2150
2153
  }>>;
2151
2154
  visibility: z.ZodEnum<{
2152
2155
  draft: "draft";
@@ -2265,8 +2268,8 @@ export declare const siteCommandBatchSchema: z.ZodObject<{
2265
2268
  title: z.ZodString;
2266
2269
  status: z.ZodOptional<z.ZodEnum<{
2267
2270
  active: "active";
2268
- cancelled: "cancelled";
2269
2271
  draft: "draft";
2272
+ cancelled: "cancelled";
2270
2273
  }>>;
2271
2274
  visibility: z.ZodEnum<{
2272
2275
  draft: "draft";
@@ -2405,8 +2408,8 @@ export declare const siteCommandBatchSchema: z.ZodObject<{
2405
2408
  expiresAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2406
2409
  status: z.ZodDefault<z.ZodEnum<{
2407
2410
  active: "active";
2408
- refunded: "refunded";
2409
2411
  expired: "expired";
2412
+ refunded: "refunded";
2410
2413
  exhausted: "exhausted";
2411
2414
  }>>;
2412
2415
  note: z.ZodOptional<z.ZodString>;
@@ -4,6 +4,7 @@ export * from './commands';
4
4
  export * from './domain';
5
5
  export * from './exposure';
6
6
  export * from './metadata';
7
+ export * from './pagePaths';
7
8
  export * from './planner';
8
9
  export * from './refContributions';
9
10
  export * from './refs';
@@ -0,0 +1,6 @@
1
+ export declare const HOME_PAGE_COMMAND_SLUG = "home";
2
+ export declare const ROOT_PAGE_PATH = "/";
3
+ export declare function commandPageSlug(slug: string): string;
4
+ export declare function normalizedPagePath(slug: string): string;
5
+ export declare function normalizedNavigationHref(href: string): string;
6
+ export declare function isInternalPageHref(href: string): boolean;
@@ -0,0 +1,26 @@
1
+ export declare const softEarthAccordionSystem: {
2
+ readonly background: {
3
+ readonly type: "solid";
4
+ readonly colorToken: "background";
5
+ };
6
+ readonly spacing: "comfortable";
7
+ readonly corners: "square";
8
+ readonly border: null;
9
+ readonly shadow: null;
10
+ readonly icon: {
11
+ readonly style: "plus-minus";
12
+ readonly position: "right";
13
+ readonly size: "md";
14
+ readonly colorToken: "primary";
15
+ };
16
+ readonly trigger: {
17
+ readonly textColorToken: "text";
18
+ readonly fontWeight: "medium";
19
+ };
20
+ readonly hover: {
21
+ readonly textColorToken: "primary";
22
+ };
23
+ readonly content: {
24
+ readonly textColorToken: "neutral-700";
25
+ };
26
+ };
@@ -76,6 +76,7 @@ export declare const accordionSystemSchema: z.ZodObject<{
76
76
  md: "md";
77
77
  lg: "lg";
78
78
  }>;
79
+ colorToken: z.ZodOptional<z.ZodString>;
79
80
  }, z.core.$strip>;
80
81
  trigger: z.ZodObject<{
81
82
  textColorToken: z.ZodString;
@@ -14,6 +14,7 @@ export { generateEventCalendarVars } from './event-calendar';
14
14
  export { generateEventListingVars, generateEventSpotlightVars, generateEventCombinedVars, } from './event-cards';
15
15
  export { generateAppointmentBookingVars } from './appointment-booking';
16
16
  export { generateFormBlockVars } from './form-block';
17
+ export { generateCustomerPortalVars } from './customer-portal';
17
18
  export { generateTestimonialsVars } from './testimonials';
18
19
  export { generateCourseDetailsVars } from './course-details';
19
20
  export { generateCourseRegistrationVars } from './course-registration';
@@ -1 +1,2 @@
1
+ export { detectFontFormatFromBytes, detectFontSourceFormatFromFilename, FONT_TOO_LARGE_MESSAGE, FONT_UPLOAD_ACCEPT, getFontUploadValidationMessage, MAX_FONT_UPLOAD_BYTES, normalizeUserFontFilename, SUPPORTED_FONT_FORMAT_LABEL, UNSUPPORTED_FONT_MESSAGE, validateFontUploadFile, type FontByteFormatDecision, type FontFilenameFormatDecision, type FontUploadFileLike, type KnownFontSourceFormat, type SanitizedFontFilename, type SupportedFontExtension, type SupportedFontSourceFormat, } from './uploadFormat';
1
2
  export { type SiteFont, type SiteFontFile, SITE_FONTS_BUCKET, getSiteFontsStorageUrl, generateFontFaceCss, generateFontFaceForFile, generateFontFaceForVariableFont, } from './types';
@@ -0,0 +1,44 @@
1
+ export declare const MAX_FONT_UPLOAD_BYTES: number;
2
+ export declare const FONT_UPLOAD_ACCEPT = ".woff2,.ttf,.otf";
3
+ export declare const SUPPORTED_FONT_FORMAT_LABEL = "WOFF2, TTF, or OTF";
4
+ export declare const UNSUPPORTED_FONT_MESSAGE = "Upload a WOFF2, TTF, or OTF font file.";
5
+ export declare const FONT_TOO_LARGE_MESSAGE = "File too large. Maximum size is 5MB.";
6
+ export type SupportedFontSourceFormat = 'woff2' | 'ttf' | 'otf';
7
+ export type KnownFontSourceFormat = SupportedFontSourceFormat | 'woff';
8
+ export type SupportedFontExtension = '.woff2' | '.ttf' | '.otf';
9
+ export type FontUploadFileLike = Readonly<{
10
+ name: string;
11
+ size: number;
12
+ }>;
13
+ export type FontFilenameFormatDecision = Readonly<{
14
+ tag: 'supported';
15
+ format: SupportedFontSourceFormat;
16
+ extension: SupportedFontExtension;
17
+ }> | Readonly<{
18
+ tag: 'unsupported';
19
+ extension: string | null;
20
+ reason: 'empty_filename' | 'missing_extension' | 'empty_basename' | 'unsupported_extension';
21
+ }>;
22
+ export type FontByteFormatDecision = Readonly<{
23
+ tag: 'detected';
24
+ format: KnownFontSourceFormat;
25
+ }> | Readonly<{
26
+ tag: 'unknown';
27
+ }>;
28
+ export type SanitizedFontFilename = Readonly<{
29
+ tag: 'valid';
30
+ filename: string;
31
+ format: SupportedFontSourceFormat;
32
+ extension: SupportedFontExtension;
33
+ }> | Readonly<{
34
+ tag: 'invalid';
35
+ reason: Extract<FontFilenameFormatDecision, {
36
+ tag: 'unsupported';
37
+ }>['reason'];
38
+ extension: string | null;
39
+ }>;
40
+ export declare function detectFontSourceFormatFromFilename(filename: string): FontFilenameFormatDecision;
41
+ export declare function normalizeUserFontFilename(filename: string): SanitizedFontFilename;
42
+ export declare function detectFontFormatFromBytes(bytes: Uint8Array): FontByteFormatDecision;
43
+ export declare function getFontUploadValidationMessage(filename: string): string | null;
44
+ export declare function validateFontUploadFile(file: FontUploadFileLike): string | null;