@riverbankcms/sdk 0.77.1 → 0.78.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 (230) hide show
  1. package/README.md +69 -0
  2. package/dist/{PreviewEditorSidebar-DVUG7GK4.mjs → PreviewEditorSidebar-RIKFQ72L.mjs} +4916 -4847
  3. package/dist/{PreviewEditorUI-P7RN4CDS.mjs → PreviewEditorUI-XO7TUWKK.mjs} +3 -3
  4. package/dist/SdkPreviewModeRuntime-LAGYMPNF.mjs +8 -0
  5. package/dist/_dts/ai/src/contracts/proposals.d.ts +154 -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/demoDashboardMutationSurfaces.d.ts +46 -0
  11. package/dist/_dts/api/src/endpoints.d.ts +8 -0
  12. package/dist/_dts/api/src/index.d.ts +14 -2
  13. package/dist/_dts/api/src/navigation/dashboardBookingsNav.d.ts +87 -0
  14. package/dist/_dts/api/src/navigation/dashboardDemoNav.d.ts +5 -0
  15. package/dist/_dts/api/src/navigation/dashboardSettingsNav.d.ts +45 -0
  16. package/dist/_dts/api/src/navigation/dashboardSiteNav.d.ts +42 -0
  17. package/dist/_dts/api/src/navigation/dashboardTeamMemberNav.d.ts +24 -0
  18. package/dist/_dts/api/src/navigation/linkUrlType.d.ts +3 -0
  19. package/dist/_dts/api/src/navigation.d.ts +12 -0
  20. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +55 -26
  21. package/dist/_dts/api/src/staffAccess.d.ts +79 -0
  22. package/dist/_dts/api/src/types.d.ts +3 -1
  23. package/dist/_dts/api/src/workflows/automaticWorkflowTriggers.d.ts +21 -0
  24. package/dist/_dts/blocks/src/client/site-chrome.d.ts +4 -1
  25. package/dist/_dts/blocks/src/index.d.ts +1 -0
  26. package/dist/_dts/blocks/src/system/blocks/appointment-booking.d.ts +288 -288
  27. package/dist/_dts/blocks/src/system/blocks/blog-listing.d.ts +288 -288
  28. package/dist/_dts/blocks/src/system/blocks/cart.d.ts +288 -288
  29. package/dist/_dts/blocks/src/system/blocks/checkout.d.ts +288 -288
  30. package/dist/_dts/blocks/src/system/blocks/collection.d.ts +288 -288
  31. package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +2 -2
  32. package/dist/_dts/blocks/src/system/blocks/faq.d.ts +294 -289
  33. package/dist/_dts/blocks/src/system/blocks/gifting.d.ts +288 -288
  34. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +1 -1
  35. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +21 -21
  36. package/dist/_dts/blocks/src/system/blocks/product-detail.d.ts +288 -288
  37. package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +288 -288
  38. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +288 -288
  39. package/dist/_dts/blocks/src/system/data/index.d.ts +5 -3
  40. package/dist/_dts/blocks/src/system/data/previewResolvedDataState.d.ts +45 -0
  41. package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +2 -1
  42. package/dist/_dts/blocks/src/system/fragments/library/faqAccordion.d.ts +5 -0
  43. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +29 -29
  44. package/dist/_dts/blocks/src/system/node/fragments/headingDecoration.d.ts +10 -0
  45. package/dist/_dts/blocks/src/system/node/fragments/index.d.ts +1 -0
  46. package/dist/_dts/blocks/src/system/node/fragments/styledSection.d.ts +9 -0
  47. package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +3 -2
  48. package/dist/_dts/blocks/src/system/runtime/api/endpoints.d.ts +8 -0
  49. package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
  50. package/dist/_dts/blocks/src/system/runtime/api/types.d.ts +43 -8
  51. package/dist/_dts/blocks/src/system/runtime/header/shared.d.ts +8 -7
  52. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCompactRow.d.ts +1 -4
  53. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/utils.d.ts +7 -0
  54. package/dist/_dts/blocks/src/system/runtime/nodes/header-section.client.d.ts +2 -8
  55. package/dist/_dts/blocks/src/system/runtime/nodes/header-section.server.d.ts +2 -9
  56. package/dist/_dts/blocks/src/system/runtime/nodes/shop-cart-discount-ui.d.ts +5 -0
  57. package/dist/_dts/blocks/src/system/runtime/nodes/shop-checkout-form.d.ts +76 -0
  58. package/dist/_dts/blocks/src/system/runtime/nodes/shop-checkout.state.d.ts +1 -4
  59. package/dist/_dts/blocks/src/system/runtime/nodes/shop-commerce-store.d.ts +2 -0
  60. package/dist/_dts/blocks/src/system/runtime/nodes/shop-commerce.shared.d.ts +1 -0
  61. package/dist/_dts/blocks/src/system/runtime/nodes/shop-discount-apply.state.d.ts +52 -0
  62. package/dist/_dts/blocks/src/system/runtime/nodes/shop.state.d.ts +2 -4
  63. package/dist/_dts/blocks/src/system/runtime/nodes/useDiscountApply.d.ts +21 -0
  64. package/dist/_dts/blocks/src/system/runtime/shared/components/DiscountCodeDisclosure.d.ts +54 -0
  65. package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +2 -0
  66. package/dist/_dts/blocks/src/system/runtime/shared/index.d.ts +2 -2
  67. package/dist/_dts/blocks/src/system/transforms/registry/ui.d.ts +1 -1
  68. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +1 -1
  69. package/dist/_dts/content-editor/src/contentTypeEditorContentState.d.ts +26 -0
  70. package/dist/_dts/content-editor/src/definitions/factory.d.ts +75 -0
  71. package/dist/_dts/content-editor/src/entryWorkflows.d.ts +2 -0
  72. package/dist/_dts/content-editor/src/footerBlocksEditorState.d.ts +76 -0
  73. package/dist/_dts/content-editor/src/index.d.ts +5 -0
  74. package/dist/_dts/content-editor/src/pageWorkflowContent.d.ts +29 -0
  75. package/dist/_dts/content-model/src/content-types/schema.d.ts +3 -3
  76. package/dist/_dts/content-model/src/index.d.ts +1 -0
  77. package/dist/_dts/content-model/src/routeTemplate.d.ts +4 -0
  78. package/dist/_dts/content-model/src/templates/editorState.d.ts +25 -0
  79. package/dist/_dts/core/src/csv-cells.d.ts +10 -0
  80. package/dist/_dts/core/src/csv-date-filter.d.ts +27 -0
  81. package/dist/_dts/core/src/csv-escape.d.ts +1 -0
  82. package/dist/_dts/core/src/csv-filename.d.ts +18 -0
  83. package/dist/_dts/core/src/csv-render.d.ts +4 -0
  84. package/dist/_dts/core/src/csv-types.d.ts +116 -0
  85. package/dist/_dts/core/src/currency-format.d.ts +4 -0
  86. package/dist/_dts/core/src/demo-capability-policy.d.ts +29 -0
  87. package/dist/_dts/core/src/demo-claim-access.d.ts +14 -0
  88. package/dist/_dts/core/src/demo-lifecycle-status.d.ts +11 -0
  89. package/dist/_dts/core/src/demo-runtime.d.ts +47 -0
  90. package/dist/_dts/core/src/duration.d.ts +14 -0
  91. package/dist/_dts/core/src/email-format.d.ts +10 -0
  92. package/dist/_dts/core/src/field-errors.d.ts +1 -0
  93. package/dist/_dts/core/src/form-submission-preview.d.ts +24 -0
  94. package/dist/_dts/core/src/index.d.ts +20 -0
  95. package/dist/_dts/core/src/number-input.d.ts +22 -0
  96. package/dist/_dts/core/src/public-url-validation.d.ts +12 -0
  97. package/dist/_dts/core/src/slug.d.ts +39 -0
  98. package/dist/_dts/core/src/string.d.ts +19 -0
  99. package/dist/_dts/core/src/uuid.d.ts +6 -0
  100. package/dist/_dts/db/src/schemas/forms.d.ts +50 -50
  101. package/dist/_dts/media-core/src/assetsInUseSummary.d.ts +34 -0
  102. package/dist/_dts/media-core/src/bulkDeletePlanning.d.ts +24 -0
  103. package/dist/_dts/media-core/src/canonicalCropReview.d.ts +66 -0
  104. package/dist/_dts/media-core/src/classifyAllPlanning.d.ts +48 -0
  105. package/dist/_dts/media-core/src/filename.d.ts +1 -0
  106. package/dist/_dts/media-core/src/index.d.ts +10 -0
  107. package/dist/_dts/media-core/src/mediaAssetUsageStatus.d.ts +47 -0
  108. package/dist/_dts/media-core/src/mediaSettingsState.d.ts +3 -0
  109. package/dist/_dts/media-core/src/portableMediaReferences.d.ts +38 -0
  110. package/dist/_dts/media-core/src/uploadVerificationContract.d.ts +28 -0
  111. package/dist/_dts/media-core/src/videoAssetRepair.d.ts +38 -0
  112. package/dist/_dts/media-editor/src/mediaEditorDebug.d.ts +1 -0
  113. package/dist/_dts/path-utils/src/index.d.ts +8 -0
  114. package/dist/_dts/path-utils/src/redirectPaths.d.ts +26 -0
  115. package/dist/_dts/path-utils/src/safeAppPath.d.ts +26 -0
  116. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeButton.d.ts +2 -1
  117. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +4 -0
  118. package/dist/_dts/preview-next/src/client/preview/previewDocumentFrame.d.ts +31 -0
  119. package/dist/_dts/sdk/src/client/error.d.ts +3 -0
  120. package/dist/_dts/sdk/src/client/index.d.ts +2 -2
  121. package/dist/_dts/sdk/src/client/types.d.ts +37 -19
  122. package/dist/_dts/sdk/src/index.d.ts +2 -2
  123. package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +16 -16
  124. package/dist/_dts/sdk/src/next/content-load-failure.d.ts +51 -0
  125. package/dist/_dts/sdk/src/next/index.d.ts +2 -1
  126. package/dist/_dts/sdk/src/next/types.d.ts +19 -0
  127. package/dist/_dts/sdk/src/portal/redirects.d.ts +1 -1
  128. package/dist/_dts/sdk/src/routing/index.d.ts +3 -2
  129. package/dist/_dts/sdk/src/routing/resolvePageContent.d.ts +71 -6
  130. package/dist/_dts/sdk/src/version.d.ts +1 -1
  131. package/dist/_dts/site-commands/src/commands.d.ts +12 -12
  132. package/dist/_dts/site-commands/src/index.d.ts +1 -0
  133. package/dist/_dts/site-commands/src/pagePaths.d.ts +6 -0
  134. package/dist/_dts/theme-core/src/accordions/siteStyleDefaults.d.ts +26 -0
  135. package/dist/_dts/theme-core/src/accordions/types.d.ts +1 -0
  136. package/dist/_dts/theme-core/src/blocks/vars/index.d.ts +1 -0
  137. package/dist/_dts/theme-core/src/fonts/index.d.ts +1 -0
  138. package/dist/_dts/theme-core/src/fonts/uploadFormat.d.ts +44 -0
  139. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  140. package/dist/_dts/theme-core/src/index.d.ts +3 -1
  141. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +36 -24
  142. package/dist/_dts/theme-core/src/navigation/generateNavLinkCSS.d.ts +6 -1
  143. package/dist/_dts/theme-core/src/navigation/types.d.ts +12 -0
  144. package/dist/_dts/theme-core/src/palette/variants/types.d.ts +3 -3
  145. package/dist/_dts/theme-core/src/runtime/themeCssVarNames.d.ts +7 -0
  146. package/dist/_dts/theme-core/src/schema.d.ts +64 -18
  147. package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +214 -34
  148. package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +5 -2
  149. package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +214 -34
  150. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +24 -0
  151. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +31 -3
  152. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -4
  153. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +33 -1
  154. package/dist/_dts/theme-core/src/site-styles/rawStyleFields.d.ts +4 -2
  155. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +9 -1
  156. package/dist/_dts/theme-core/src/site-styles/types.d.ts +27 -2
  157. package/dist/_dts/theme-core/src/siteChrome.d.ts +17 -34
  158. package/dist/_dts/theme-core/src/siteChromeOverlayClearance.d.ts +22 -0
  159. package/dist/_dts/theme-core/src/siteChromePlacement.d.ts +22 -0
  160. package/dist/_dts/theme-core/src/siteChromePlanning.d.ts +32 -0
  161. package/dist/_dts/theme-core/src/tokens/themeColorTokens.d.ts +2 -2
  162. package/dist/{chunk-2SPENC5M.mjs → chunk-F7RTCZYN.mjs} +229 -50
  163. package/dist/{chunk-IENWFSLO.mjs → chunk-NIDXI46P.mjs} +1 -1
  164. package/dist/{chunk-KWJPDZH2.mjs → chunk-OECWLDHN.mjs} +2770 -620
  165. package/dist/{chunk-VX7B5VAC.mjs → chunk-SVMMM2NA.mjs} +8 -0
  166. package/dist/{chunk-6SMUFTXD.mjs → chunk-SXOLGNMX.mjs} +1 -1
  167. package/dist/{chunk-ZYEJLCTN.mjs → chunk-TXDES5P2.mjs} +2 -2
  168. package/dist/cli/index.mjs +1677 -440
  169. package/dist/client/{accordion-RZMQSYLR.mjs → accordion-EVDEOUPR.mjs} +2 -2
  170. package/dist/client/{bookingForm-NF4ASVNV.mjs → bookingForm-DIHBLC64.mjs} +27 -30
  171. package/dist/client/bookings.mjs +3707 -259
  172. package/dist/client/{carousel-LDX47ZIK.mjs → carousel-FEBQHIWI.mjs} +3 -4
  173. package/dist/client/{cart-RGXDS5F4.mjs → cart-7CKSXAE4.mjs} +8 -8
  174. package/dist/client/{checkout-P7WWSNNY.mjs → checkout-WKYCANLV.mjs} +8 -8
  175. package/dist/client/{chunk-JNC7CGHX.mjs → chunk-2SAVKN2M.mjs} +2 -2
  176. package/dist/client/{chunk-TQ5MSPDX.mjs → chunk-36WJCERQ.mjs} +1 -1
  177. package/dist/client/{chunk-R56FQ3RR.mjs → chunk-65F47D7Y.mjs} +280 -71
  178. package/dist/client/{chunk-L3DNHIJX.mjs → chunk-GUK2FPXQ.mjs} +23 -45
  179. package/dist/client/{chunk-PMAIXMAB.mjs → chunk-IVNCUVAV.mjs} +26 -21
  180. package/dist/client/{chunk-II7O4XN3.mjs → chunk-OFMSCGNY.mjs} +2 -2
  181. package/dist/client/chunk-PD6NBCEY.mjs +66 -0
  182. package/dist/client/{chunk-GMVTOKYG.mjs → chunk-RV6FX7UH.mjs} +510 -64
  183. package/dist/client/{chunk-E2TDNXCL.mjs → chunk-RZDWX7QW.mjs} +2 -1
  184. package/dist/client/{chunk-M3L3KYYR.mjs → chunk-UDNSI5PY.mjs} +12 -0
  185. package/dist/client/{chunk-JEZECJ3W.mjs → chunk-VPPMNXCF.mjs} +129 -3
  186. package/dist/client/{chunk-UFSWADAO.mjs → chunk-YDSEG6GZ.mjs} +5 -66
  187. package/dist/client/client.mjs +7070 -4561
  188. package/dist/client/{courseRegistration-7F65K5ZR.mjs → courseRegistration-5QF2PHKM.mjs} +14 -11
  189. package/dist/client/{eventCalendar-GLSC5KTL.mjs → eventCalendar-4ZOSETDU.mjs} +9 -9
  190. package/dist/client/{eventCombined-ZHK4WKUR.mjs → eventCombined-WQGU7JUX.mjs} +9 -9
  191. package/dist/client/{eventDetails-E3PJYBIN.mjs → eventDetails-AYWVUJ5Y.mjs} +9 -9
  192. package/dist/client/{eventListing-EMS3WC3E.mjs → eventListing-NT7C6UT5.mjs} +9 -9
  193. package/dist/client/{eventRegistration-NZOTVNPI.mjs → eventRegistration-OH24F4ZJ.mjs} +9 -9
  194. package/dist/client/{form-ETFZFATW.mjs → form-7L42SRBB.mjs} +6 -6
  195. package/dist/client/{headerSection-4LBP7ULT.mjs → headerSection-OZRZNZ52.mjs} +3 -3
  196. package/dist/client/hooks.mjs +1040 -278
  197. package/dist/client/{locationMap-5M655YSJ.mjs → locationMap-ZBXRPQ7C.mjs} +2 -2
  198. package/dist/client/{newsletterForm-QOUYW44O.mjs → newsletterForm-SNAGFF2I.mjs} +3 -3
  199. package/dist/client/{productDetail-O4DOCWQG.mjs → productDetail-I46BOFGV.mjs} +8 -8
  200. package/dist/client/{productList-A5RO5WIS.mjs → productList-BOYHTYI6.mjs} +8 -8
  201. package/dist/client/rendering/client.mjs +7090 -2645
  202. package/dist/client/rendering/islands.mjs +19 -19
  203. package/dist/client/rendering.mjs +6089 -3792
  204. package/dist/client/{shop-L4MZH4I2.mjs → shop-XTXPZTKR.mjs} +8 -8
  205. package/dist/preview-next/before-render.mjs +8 -0
  206. package/dist/preview-next/client/runtime.mjs +5 -5
  207. package/dist/preview-next/editor-chrome.css +10 -0
  208. package/dist/preview-next/middleware.mjs +8 -0
  209. package/dist/{sdk-runtime-6UT2S7KZ.mjs → sdk-runtime-ZJLKC6DR.mjs} +6 -6
  210. package/dist/server/components.mjs +2635 -1262
  211. package/dist/server/config-validation.mjs +1271 -509
  212. package/dist/server/config.mjs +1271 -509
  213. package/dist/server/data.mjs +1040 -278
  214. package/dist/server/index.mjs +488 -246
  215. package/dist/server/next.mjs +4087 -2147
  216. package/dist/server/page-converter.mjs +571 -115
  217. package/dist/server/prebuild.mjs +1 -1
  218. package/dist/server/rendering/server.mjs +2636 -1263
  219. package/dist/server/rendering.mjs +2654 -1268
  220. package/dist/server/routing.mjs +1729 -489
  221. package/dist/server/server.mjs +1532 -530
  222. package/dist/server/theme-bridge.mjs +3151 -131
  223. package/dist/server/theme.mjs +10 -1
  224. package/dist/styles/index.css +488 -48
  225. package/package.json +2 -1
  226. package/dist/SdkPreviewModeRuntime-KLPX47SE.mjs +0 -8
  227. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/DiscountCodeSection.d.ts +0 -7
  228. package/dist/_dts/preview-next/src/client/widgets/PreviewMediaField.d.ts +0 -4
  229. package/dist/client/chunk-OJPZEZU2.mjs +0 -31
  230. package/dist/client/chunk-RTZ3JKKX.mjs +0 -178
@@ -8,19 +8,19 @@ import { z } from 'zod';
8
8
  export declare const simpleFieldTypeEnum: z.ZodEnum<{
9
9
  number: "number";
10
10
  boolean: "boolean";
11
+ text: "text";
12
+ select: "select";
11
13
  media: "media";
12
14
  link: "link";
13
- select: "select";
14
- text: "text";
15
15
  richText: "richText";
16
16
  }>;
17
17
  export declare const fieldTypeEnum: z.ZodEnum<{
18
18
  number: "number";
19
19
  boolean: "boolean";
20
+ text: "text";
21
+ select: "select";
20
22
  media: "media";
21
23
  link: "link";
22
- select: "select";
23
- text: "text";
24
24
  richText: "richText";
25
25
  repeater: "repeater";
26
26
  group: "group";
@@ -34,10 +34,10 @@ export declare const extractedFieldSchema: z.ZodUnion<readonly [z.ZodObject<{
34
34
  type: z.ZodEnum<{
35
35
  number: "number";
36
36
  boolean: "boolean";
37
+ text: "text";
38
+ select: "select";
37
39
  media: "media";
38
40
  link: "link";
39
- select: "select";
40
- text: "text";
41
41
  richText: "richText";
42
42
  }>;
43
43
  label: z.ZodString;
@@ -61,10 +61,10 @@ export declare const extractedFieldSchema: z.ZodUnion<readonly [z.ZodObject<{
61
61
  type: z.ZodEnum<{
62
62
  number: "number";
63
63
  boolean: "boolean";
64
+ text: "text";
65
+ select: "select";
64
66
  media: "media";
65
67
  link: "link";
66
- select: "select";
67
- text: "text";
68
68
  richText: "richText";
69
69
  }>;
70
70
  label: z.ZodString;
@@ -81,10 +81,10 @@ export declare const extractedFieldSchema: z.ZodUnion<readonly [z.ZodObject<{
81
81
  type: z.ZodEnum<{
82
82
  number: "number";
83
83
  boolean: "boolean";
84
+ text: "text";
85
+ select: "select";
84
86
  media: "media";
85
87
  link: "link";
86
- select: "select";
87
- text: "text";
88
88
  richText: "richText";
89
89
  }>;
90
90
  label: z.ZodString;
@@ -178,10 +178,10 @@ export declare const pass1OutputSchema: z.ZodObject<{
178
178
  type: z.ZodEnum<{
179
179
  number: "number";
180
180
  boolean: "boolean";
181
+ text: "text";
182
+ select: "select";
181
183
  media: "media";
182
184
  link: "link";
183
- select: "select";
184
- text: "text";
185
185
  richText: "richText";
186
186
  }>;
187
187
  label: z.ZodString;
@@ -205,10 +205,10 @@ export declare const pass1OutputSchema: z.ZodObject<{
205
205
  type: z.ZodEnum<{
206
206
  number: "number";
207
207
  boolean: "boolean";
208
+ text: "text";
209
+ select: "select";
208
210
  media: "media";
209
211
  link: "link";
210
- select: "select";
211
- text: "text";
212
212
  richText: "richText";
213
213
  }>;
214
214
  label: z.ZodString;
@@ -225,10 +225,10 @@ export declare const pass1OutputSchema: z.ZodObject<{
225
225
  type: z.ZodEnum<{
226
226
  number: "number";
227
227
  boolean: "boolean";
228
+ text: "text";
229
+ select: "select";
228
230
  media: "media";
229
231
  link: "link";
230
- select: "select";
231
- text: "text";
232
232
  richText: "richText";
233
233
  }>;
234
234
  label: z.ZodString;
@@ -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.0";
@@ -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<{
@@ -409,9 +409,9 @@ export declare const upsertEventSeriesCommandSchema: z.ZodObject<{
409
409
  }>;
410
410
  status: z.ZodOptional<z.ZodEnum<{
411
411
  active: "active";
412
- cancelled: "cancelled";
413
412
  draft: "draft";
414
413
  archived: "archived";
414
+ cancelled: "cancelled";
415
415
  }>>;
416
416
  visibility: z.ZodEnum<{
417
417
  draft: "draft";
@@ -533,8 +533,8 @@ export declare const upsertCourseCommandSchema: z.ZodObject<{
533
533
  title: z.ZodString;
534
534
  status: z.ZodOptional<z.ZodEnum<{
535
535
  active: "active";
536
- cancelled: "cancelled";
537
536
  draft: "draft";
537
+ cancelled: "cancelled";
538
538
  }>>;
539
539
  visibility: z.ZodEnum<{
540
540
  draft: "draft";
@@ -723,8 +723,8 @@ export declare const grantCustomerPassCommandSchema: z.ZodObject<{
723
723
  expiresAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
724
724
  status: z.ZodDefault<z.ZodEnum<{
725
725
  active: "active";
726
- refunded: "refunded";
727
726
  expired: "expired";
727
+ refunded: "refunded";
728
728
  exhausted: "exhausted";
729
729
  }>>;
730
730
  note: z.ZodOptional<z.ZodString>;
@@ -1091,8 +1091,8 @@ export declare const siteCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1091
1091
  input: z.ZodObject<{
1092
1092
  name: z.ZodOptional<z.ZodString>;
1093
1093
  location: z.ZodOptional<z.ZodEnum<{
1094
- footer: "footer";
1095
1094
  header: "header";
1095
+ footer: "footer";
1096
1096
  main: "main";
1097
1097
  }>>;
1098
1098
  role: z.ZodOptional<z.ZodEnum<{
@@ -1311,9 +1311,9 @@ export declare const siteCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1311
1311
  }>;
1312
1312
  status: z.ZodOptional<z.ZodEnum<{
1313
1313
  active: "active";
1314
- cancelled: "cancelled";
1315
1314
  draft: "draft";
1316
1315
  archived: "archived";
1316
+ cancelled: "cancelled";
1317
1317
  }>>;
1318
1318
  visibility: z.ZodEnum<{
1319
1319
  draft: "draft";
@@ -1432,8 +1432,8 @@ export declare const siteCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1432
1432
  title: z.ZodString;
1433
1433
  status: z.ZodOptional<z.ZodEnum<{
1434
1434
  active: "active";
1435
- cancelled: "cancelled";
1436
1435
  draft: "draft";
1436
+ cancelled: "cancelled";
1437
1437
  }>>;
1438
1438
  visibility: z.ZodEnum<{
1439
1439
  draft: "draft";
@@ -1572,8 +1572,8 @@ export declare const siteCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1572
1572
  expiresAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1573
1573
  status: z.ZodDefault<z.ZodEnum<{
1574
1574
  active: "active";
1575
- refunded: "refunded";
1576
1575
  expired: "expired";
1576
+ refunded: "refunded";
1577
1577
  exhausted: "exhausted";
1578
1578
  }>>;
1579
1579
  note: z.ZodOptional<z.ZodString>;
@@ -1924,8 +1924,8 @@ export declare const siteCommandBatchSchema: z.ZodObject<{
1924
1924
  input: z.ZodObject<{
1925
1925
  name: z.ZodOptional<z.ZodString>;
1926
1926
  location: z.ZodOptional<z.ZodEnum<{
1927
- footer: "footer";
1928
1927
  header: "header";
1928
+ footer: "footer";
1929
1929
  main: "main";
1930
1930
  }>>;
1931
1931
  role: z.ZodOptional<z.ZodEnum<{
@@ -2144,9 +2144,9 @@ export declare const siteCommandBatchSchema: z.ZodObject<{
2144
2144
  }>;
2145
2145
  status: z.ZodOptional<z.ZodEnum<{
2146
2146
  active: "active";
2147
- cancelled: "cancelled";
2148
2147
  draft: "draft";
2149
2148
  archived: "archived";
2149
+ cancelled: "cancelled";
2150
2150
  }>>;
2151
2151
  visibility: z.ZodEnum<{
2152
2152
  draft: "draft";
@@ -2265,8 +2265,8 @@ export declare const siteCommandBatchSchema: z.ZodObject<{
2265
2265
  title: z.ZodString;
2266
2266
  status: z.ZodOptional<z.ZodEnum<{
2267
2267
  active: "active";
2268
- cancelled: "cancelled";
2269
2268
  draft: "draft";
2269
+ cancelled: "cancelled";
2270
2270
  }>>;
2271
2271
  visibility: z.ZodEnum<{
2272
2272
  draft: "draft";
@@ -2405,8 +2405,8 @@ export declare const siteCommandBatchSchema: z.ZodObject<{
2405
2405
  expiresAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2406
2406
  status: z.ZodDefault<z.ZodEnum<{
2407
2407
  active: "active";
2408
- refunded: "refunded";
2409
2408
  expired: "expired";
2409
+ refunded: "refunded";
2410
2410
  exhausted: "exhausted";
2411
2411
  }>>;
2412
2412
  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;