@riverbankcms/sdk 0.62.2 → 0.64.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 (386) hide show
  1. package/README.md +11 -0
  2. package/dist/_dts/api/src/accessAdmin.d.ts +71 -2
  3. package/dist/_dts/api/src/aiEndpoints.d.ts +2 -2
  4. package/dist/_dts/api/src/billing.d.ts +46 -10
  5. package/dist/_dts/api/src/bookingClosures.d.ts +106 -0
  6. package/dist/_dts/api/src/bookingConfig.d.ts +2 -0
  7. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +18 -0
  8. package/dist/_dts/api/src/bookingRecords.d.ts +27 -1
  9. package/dist/_dts/api/src/calendar.d.ts +11 -1
  10. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +12 -1
  11. package/dist/_dts/api/src/contentRuntime.d.ts +3 -0
  12. package/dist/_dts/api/src/contentVersionHistory.d.ts +52 -0
  13. package/dist/_dts/api/src/contentVersionHistoryClient.d.ts +45 -0
  14. package/dist/_dts/api/src/courses.d.ts +3 -0
  15. package/dist/_dts/api/src/endpoints.d.ts +133 -6
  16. package/dist/_dts/api/src/index.d.ts +12 -6
  17. package/dist/_dts/api/src/sdkConfig/contracts.d.ts +29 -0
  18. package/dist/_dts/api/src/sdkContracts.d.ts +13 -1
  19. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +31 -7
  20. package/dist/_dts/api/src/siteMembers.d.ts +10 -1
  21. package/dist/_dts/api/src/siteOnboarding.d.ts +4 -0
  22. package/dist/_dts/api/src/siteOperations.d.ts +10 -0
  23. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +62 -12
  24. package/dist/_dts/api/src/types.d.ts +4 -2
  25. package/dist/_dts/api/src/url.d.ts +3 -3
  26. package/dist/_dts/billing/src/plans/registry.d.ts +1 -0
  27. package/dist/_dts/billing/src/plans/types.d.ts +9 -0
  28. package/dist/_dts/block-form/src/FormRenderer.d.ts +38 -0
  29. package/dist/_dts/block-form/src/backend/adapter.d.ts +7 -0
  30. package/dist/_dts/block-form/src/backend/hooks/useRepeaterBackend.d.ts +34 -0
  31. package/dist/_dts/block-form/src/backend/hooks.d.ts +66 -0
  32. package/dist/_dts/block-form/src/backend/index.d.ts +12 -0
  33. package/dist/_dts/block-form/src/backend/rhf-backend.d.ts +34 -0
  34. package/dist/_dts/block-form/src/backend/store-backend.d.ts +60 -0
  35. package/dist/_dts/block-form/src/backend/types.d.ts +137 -0
  36. package/dist/_dts/block-form/src/backend/useBackendWatch.d.ts +22 -0
  37. package/dist/_dts/block-form/src/backend/utils/getErrorMessage.d.ts +1 -0
  38. package/dist/_dts/block-form/src/blockDraftSaveability.d.ts +70 -0
  39. package/dist/_dts/block-form/src/client/blockDraftSaveability.d.ts +1 -0
  40. package/dist/_dts/block-form/src/client/index.d.ts +30 -0
  41. package/dist/_dts/block-form/src/context/BlockContext.d.ts +29 -0
  42. package/dist/_dts/block-form/src/context/DisplayLabelResolverContext.d.ts +33 -0
  43. package/dist/_dts/block-form/src/context/FieldPreviewResolverContext.d.ts +30 -0
  44. package/dist/_dts/block-form/src/context/ImageResolveContext.d.ts +1 -0
  45. package/dist/_dts/block-form/src/context/index.d.ts +4 -0
  46. package/dist/_dts/block-form/src/fields/props.d.ts +48 -0
  47. package/dist/_dts/block-form/src/fields/types.d.ts +223 -0
  48. package/dist/_dts/block-form/src/index.d.ts +22 -0
  49. package/dist/_dts/block-form/src/manifest/ManifestForm.d.ts +37 -0
  50. package/dist/_dts/block-form/src/manifest/canonicalValidation.d.ts +5 -0
  51. package/dist/_dts/block-form/src/manifest/filterSdkTabs.d.ts +44 -0
  52. package/dist/_dts/block-form/src/manifest/manifestFormAdapter.d.ts +61 -0
  53. package/dist/_dts/block-form/src/manifest/mergeManifestWithSdkOptions.d.ts +24 -0
  54. package/dist/_dts/block-form/src/palette/PaletteContext.d.ts +11 -0
  55. package/dist/_dts/block-form/src/registry/schemas.d.ts +105 -0
  56. package/dist/_dts/block-form/src/registry/widgets.d.ts +59 -0
  57. package/dist/_dts/block-form/src/sdk-config/SdkConfigContext.d.ts +110 -0
  58. package/dist/_dts/block-form/src/sdk-config/hooks.d.ts +21 -0
  59. package/dist/_dts/block-form/src/sdk-config/index.d.ts +2 -0
  60. package/dist/_dts/block-form/src/shared/disclosure.d.ts +1 -0
  61. package/dist/_dts/block-form/src/shared/hooks/index.d.ts +2 -0
  62. package/dist/_dts/block-form/src/shared/hooks/useCoarsePointer.d.ts +5 -0
  63. package/dist/_dts/block-form/src/shared/hooks/useContainerWidth.d.ts +6 -0
  64. package/dist/_dts/block-form/src/utils/VisibilityWrapper.d.ts +25 -0
  65. package/dist/_dts/block-form/src/utils/computeWatchedPath.d.ts +18 -0
  66. package/dist/_dts/block-form/src/utils/evaluateVisibility.d.ts +9 -0
  67. package/dist/_dts/block-form/src/utils/fieldHelpers.d.ts +94 -0
  68. package/dist/_dts/block-form/src/utils/resolvePromotedFields.d.ts +22 -0
  69. package/dist/_dts/block-form/src/utils/slug.d.ts +3 -0
  70. package/dist/_dts/block-form/src/utils/typeGuards.d.ts +3 -0
  71. package/dist/_dts/block-form/src/widgets/BackgroundColorWidget/BackgroundColorField.d.ts +10 -0
  72. package/dist/_dts/block-form/src/widgets/BackgroundColorWidget/BackgroundColorWidget.d.ts +23 -0
  73. package/dist/_dts/block-form/src/widgets/BackgroundColorWidget/index.d.ts +2 -0
  74. package/dist/_dts/block-form/src/widgets/BackgroundGradientWidget/BackgroundGradientField.d.ts +13 -0
  75. package/dist/_dts/block-form/src/widgets/BackgroundGradientWidget/BackgroundGradientWidget.d.ts +17 -0
  76. package/dist/_dts/block-form/src/widgets/BackgroundGradientWidget/index.d.ts +2 -0
  77. package/dist/_dts/block-form/src/widgets/BooleanField/BooleanField.d.ts +6 -0
  78. package/dist/_dts/block-form/src/widgets/BooleanField/booleanFieldDefaults.d.ts +6 -0
  79. package/dist/_dts/block-form/src/widgets/BooleanField/booleanFieldSchema.d.ts +7 -0
  80. package/dist/_dts/block-form/src/widgets/BooleanField/index.d.ts +3 -0
  81. package/dist/_dts/block-form/src/widgets/BoxStyleWidget/BoxStyleWidget.d.ts +17 -0
  82. package/dist/_dts/block-form/src/widgets/BoxStyleWidget/index.d.ts +1 -0
  83. package/dist/_dts/block-form/src/widgets/ContentTypeSelectField/contentTypeSelectFieldDefaults.d.ts +3 -0
  84. package/dist/_dts/block-form/src/widgets/ContentTypeSelectField/contentTypeSelectFieldSchema.d.ts +4 -0
  85. package/dist/_dts/block-form/src/widgets/DateField/DateField.d.ts +23 -0
  86. package/dist/_dts/block-form/src/widgets/DateField/dateFieldDefaults.d.ts +8 -0
  87. package/dist/_dts/block-form/src/widgets/DateField/dateFieldSchema.d.ts +9 -0
  88. package/dist/_dts/block-form/src/widgets/DateField/datePickerPopover.d.ts +32 -0
  89. package/dist/_dts/block-form/src/widgets/DateField/index.d.ts +4 -0
  90. package/dist/_dts/block-form/src/widgets/DateTimeField/DateTimeField.d.ts +30 -0
  91. package/dist/_dts/block-form/src/widgets/DateTimeField/dateTimeFieldDefaults.d.ts +8 -0
  92. package/dist/_dts/block-form/src/widgets/DateTimeField/dateTimeFieldSchema.d.ts +11 -0
  93. package/dist/_dts/block-form/src/widgets/DateTimeField/index.d.ts +4 -0
  94. package/dist/_dts/block-form/src/widgets/DateTimeField/utils/dateTimeUtils.d.ts +22 -0
  95. package/dist/_dts/block-form/src/widgets/DateTimeField/utils/index.d.ts +1 -0
  96. package/dist/_dts/block-form/src/widgets/EntryPickerField/entryPickerFieldDefaults.d.ts +3 -0
  97. package/dist/_dts/block-form/src/widgets/EntryPickerField/entryPickerFieldSchema.d.ts +4 -0
  98. package/dist/_dts/block-form/src/widgets/Field.d.ts +21 -0
  99. package/dist/_dts/block-form/src/widgets/FieldFrame.d.ts +32 -0
  100. package/dist/_dts/block-form/src/widgets/FieldSettingsModal/FieldSettingsModal.d.ts +34 -0
  101. package/dist/_dts/block-form/src/widgets/FieldSettingsModal/index.d.ts +2 -0
  102. package/dist/_dts/block-form/src/widgets/GroupField/GroupField.d.ts +23 -0
  103. package/dist/_dts/block-form/src/widgets/GroupField/groupFieldDefaults.d.ts +9 -0
  104. package/dist/_dts/block-form/src/widgets/GroupField/groupFieldSchema.d.ts +10 -0
  105. package/dist/_dts/block-form/src/widgets/GroupField/index.d.ts +3 -0
  106. package/dist/_dts/block-form/src/widgets/LinkField/linkFieldDefaults.d.ts +10 -0
  107. package/dist/_dts/block-form/src/widgets/LinkField/linkFieldSchema.d.ts +3 -0
  108. package/dist/_dts/block-form/src/widgets/MediaField/mediaFieldDefaults.d.ts +6 -0
  109. package/dist/_dts/block-form/src/widgets/MediaField/mediaFieldSchema.d.ts +6 -0
  110. package/dist/_dts/block-form/src/widgets/ModalGroupField/ModalGroupField.d.ts +17 -0
  111. package/dist/_dts/block-form/src/widgets/ModalGroupField/index.d.ts +3 -0
  112. package/dist/_dts/block-form/src/widgets/ModalGroupField/modalFieldDefaults.d.ts +18 -0
  113. package/dist/_dts/block-form/src/widgets/ModalGroupField/modalFieldSchema.d.ts +14 -0
  114. package/dist/_dts/block-form/src/widgets/NumberField/NumberField.d.ts +7 -0
  115. package/dist/_dts/block-form/src/widgets/NumberField/index.d.ts +3 -0
  116. package/dist/_dts/block-form/src/widgets/NumberField/numberFieldDefaults.d.ts +6 -0
  117. package/dist/_dts/block-form/src/widgets/NumberField/numberFieldSchema.d.ts +7 -0
  118. package/dist/_dts/block-form/src/widgets/PresetOrCustomField/PresetOrCustomField.d.ts +11 -0
  119. package/dist/_dts/block-form/src/widgets/PresetOrCustomField/index.d.ts +4 -0
  120. package/dist/_dts/block-form/src/widgets/PresetOrCustomField/presetOrCustomFieldDefaults.d.ts +3 -0
  121. package/dist/_dts/block-form/src/widgets/PresetOrCustomField/presetOrCustomFieldSchema.d.ts +4 -0
  122. package/dist/_dts/block-form/src/widgets/PresetOrCustomField/types.d.ts +37 -0
  123. package/dist/_dts/block-form/src/widgets/ReferenceField/referenceFieldDefaults.d.ts +3 -0
  124. package/dist/_dts/block-form/src/widgets/ReferenceField/referenceFieldSchema.d.ts +4 -0
  125. package/dist/_dts/block-form/src/widgets/RepeaterField/RepeaterField.d.ts +26 -0
  126. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterDragHandle.d.ts +8 -0
  127. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterError.d.ts +11 -0
  128. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterHeader.d.ts +10 -0
  129. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterLayoutGrid.d.ts +27 -0
  130. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterList.d.ts +19 -0
  131. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterRow.d.ts +23 -0
  132. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterRowActions.d.ts +16 -0
  133. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterRowContent.d.ts +19 -0
  134. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterTabbedEditDialog.d.ts +16 -0
  135. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterThumbnailCard.d.ts +26 -0
  136. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterThumbnailGrid.d.ts +20 -0
  137. package/dist/_dts/block-form/src/widgets/RepeaterField/components/index.d.ts +11 -0
  138. package/dist/_dts/block-form/src/widgets/RepeaterField/components/layoutGridDomain.d.ts +34 -0
  139. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/index.d.ts +6 -0
  140. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/layoutGridCapacityDecision.d.ts +22 -0
  141. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/useLayoutGridCapacity.d.ts +20 -0
  142. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/useLinearRepeaterDnd.d.ts +23 -0
  143. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/useRepeaterPointerDragCapability.d.ts +10 -0
  144. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/useRepeaterRowErrors.d.ts +12 -0
  145. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/useRepeaterVisibility.d.ts +6 -0
  146. package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/useResolvedItemLabel.d.ts +12 -0
  147. package/dist/_dts/block-form/src/widgets/RepeaterField/index.d.ts +3 -0
  148. package/dist/_dts/block-form/src/widgets/RepeaterField/repeaterFieldDefaults.d.ts +7 -0
  149. package/dist/_dts/block-form/src/widgets/RepeaterField/repeaterFieldSchema.d.ts +8 -0
  150. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/buildItemLabel.d.ts +7 -0
  151. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/buildSummary.d.ts +7 -0
  152. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/createDefaultItem.d.ts +6 -0
  153. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/getRepeaterItemFieldGroups.d.ts +8 -0
  154. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/getRepeaterItemFields.d.ts +22 -0
  155. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/index.d.ts +10 -0
  156. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/layoutGridCapacityContext.d.ts +2 -0
  157. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/repeaterDndDomain.d.ts +43 -0
  158. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/repeaterPresentation.d.ts +24 -0
  159. package/dist/_dts/block-form/src/widgets/RepeaterField/utils/resolveThumbnail.d.ts +12 -0
  160. package/dist/_dts/block-form/src/widgets/RichTextField/richTextFieldDefaults.d.ts +20 -0
  161. package/dist/_dts/block-form/src/widgets/RichTextField/richTextFieldSchema.d.ts +16 -0
  162. package/dist/_dts/block-form/src/widgets/SdkSelectField/SdkSelectField.d.ts +11 -0
  163. package/dist/_dts/block-form/src/widgets/SdkSelectField/index.d.ts +1 -0
  164. package/dist/_dts/block-form/src/widgets/SelectField/SelectField.d.ts +7 -0
  165. package/dist/_dts/block-form/src/widgets/SelectField/index.d.ts +3 -0
  166. package/dist/_dts/block-form/src/widgets/SelectField/selectFieldDefaults.d.ts +6 -0
  167. package/dist/_dts/block-form/src/widgets/SelectField/selectFieldSchema.d.ts +7 -0
  168. package/dist/_dts/block-form/src/widgets/SelectWidget.d.ts +34 -0
  169. package/dist/_dts/block-form/src/widgets/SettingsModal/SettingsModal.d.ts +17 -0
  170. package/dist/_dts/block-form/src/widgets/SettingsModal/index.d.ts +2 -0
  171. package/dist/_dts/block-form/src/widgets/SliderField/SliderField.d.ts +16 -0
  172. package/dist/_dts/block-form/src/widgets/SliderField/index.d.ts +1 -0
  173. package/dist/_dts/block-form/src/widgets/SlugField/SlugField.d.ts +39 -0
  174. package/dist/_dts/block-form/src/widgets/SlugField/hooks/index.d.ts +1 -0
  175. package/dist/_dts/block-form/src/widgets/SlugField/hooks/useSlugAutoGeneration.d.ts +29 -0
  176. package/dist/_dts/block-form/src/widgets/SlugField/index.d.ts +5 -0
  177. package/dist/_dts/block-form/src/widgets/SlugField/slugFieldDefaults.d.ts +8 -0
  178. package/dist/_dts/block-form/src/widgets/SlugField/slugFieldSchema.d.ts +14 -0
  179. package/dist/_dts/block-form/src/widgets/SlugField/utils/index.d.ts +2 -0
  180. package/dist/_dts/block-form/src/widgets/SlugField/utils/pathUtils.d.ts +30 -0
  181. package/dist/_dts/block-form/src/widgets/SlugField/utils/slugUtils.d.ts +17 -0
  182. package/dist/_dts/block-form/src/widgets/TabGroupField/TabGroupField.d.ts +13 -0
  183. package/dist/_dts/block-form/src/widgets/TabGroupField/index.d.ts +3 -0
  184. package/dist/_dts/block-form/src/widgets/TabGroupField/tabGroupFieldSchema.d.ts +25 -0
  185. package/dist/_dts/block-form/src/widgets/TabGroupField/types.d.ts +46 -0
  186. package/dist/_dts/block-form/src/widgets/TextField/TextField.d.ts +7 -0
  187. package/dist/_dts/block-form/src/widgets/TextField/index.d.ts +3 -0
  188. package/dist/_dts/block-form/src/widgets/TextField/textFieldDefaults.d.ts +6 -0
  189. package/dist/_dts/block-form/src/widgets/TextField/textFieldSchema.d.ts +7 -0
  190. package/dist/_dts/block-form/src/widgets/TextInputWidget.d.ts +20 -0
  191. package/dist/_dts/block-form/src/widgets/TimeField/TimeField.d.ts +23 -0
  192. package/dist/_dts/block-form/src/widgets/TimeField/index.d.ts +3 -0
  193. package/dist/_dts/block-form/src/widgets/TimeField/timeFieldDefaults.d.ts +8 -0
  194. package/dist/_dts/block-form/src/widgets/TimeField/timeFieldSchema.d.ts +9 -0
  195. package/dist/_dts/block-form/src/widgets/ToggleWidget.d.ts +16 -0
  196. package/dist/_dts/block-form/src/widgets/UrlField/UrlField.d.ts +23 -0
  197. package/dist/_dts/block-form/src/widgets/UrlField/index.d.ts +3 -0
  198. package/dist/_dts/block-form/src/widgets/UrlField/urlFieldDefaults.d.ts +8 -0
  199. package/dist/_dts/block-form/src/widgets/UrlField/urlFieldSchema.d.ts +9 -0
  200. package/dist/_dts/block-form/src/widgets/constants.d.ts +58 -0
  201. package/dist/_dts/block-form/src/widgets/groupFieldHelpers.d.ts +61 -0
  202. package/dist/_dts/block-form/src/widgets/index.d.ts +20 -0
  203. package/dist/_dts/block-form/src/widgets/selectValueMapping.d.ts +9 -0
  204. package/dist/_dts/block-form/src/widgets/types/modalConfig.d.ts +18 -0
  205. package/dist/_dts/block-form/src/widgets/utils/readNumericUiConfig.d.ts +10 -0
  206. package/dist/_dts/blocks/src/bindings/index.d.ts +2 -2
  207. package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +4 -0
  208. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +2 -0
  209. package/dist/_dts/blocks/src/system/blocks/appointment-booking.d.ts +1 -1
  210. package/dist/_dts/blocks/src/system/blocks/blog-listing.d.ts +2 -2
  211. package/dist/_dts/blocks/src/system/blocks/blog-post.d.ts +1 -1
  212. package/dist/_dts/blocks/src/system/blocks/cart.d.ts +1 -1
  213. package/dist/_dts/blocks/src/system/blocks/checkout.d.ts +1 -1
  214. package/dist/_dts/blocks/src/system/blocks/collection.d.ts +2 -2
  215. package/dist/_dts/blocks/src/system/blocks/columns.d.ts +1 -1
  216. package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +2 -2
  217. package/dist/_dts/blocks/src/system/blocks/cta-full.d.ts +1 -1
  218. package/dist/_dts/blocks/src/system/blocks/event-details.d.ts +25 -0
  219. package/dist/_dts/blocks/src/system/blocks/events/event-spotlight.d.ts +2 -2
  220. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +2 -2
  221. package/dist/_dts/blocks/src/system/blocks/faq.d.ts +1 -1
  222. package/dist/_dts/blocks/src/system/blocks/file-download.d.ts +1 -1
  223. package/dist/_dts/blocks/src/system/blocks/gifting.d.ts +1 -1
  224. package/dist/_dts/blocks/src/system/blocks/image-gallery.d.ts +1 -1
  225. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +2 -2
  226. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +6 -6
  227. package/dist/_dts/blocks/src/system/blocks/product-detail.d.ts +1 -1
  228. package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +2 -2
  229. package/dist/_dts/blocks/src/system/blocks/products/shared.d.ts +2 -2
  230. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +1 -1
  231. package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +2 -2
  232. package/dist/_dts/blocks/src/system/blocks/testimonials.d.ts +1 -1
  233. package/dist/_dts/blocks/src/system/blocks/video-grid.d.ts +1 -1
  234. package/dist/_dts/blocks/src/system/fragments/library/card.d.ts +1 -1
  235. package/dist/_dts/blocks/src/system/fragments/library/ctaRow.d.ts +1 -1
  236. package/dist/_dts/blocks/src/system/fragments/library/feedbackCallout.d.ts +1 -1
  237. package/dist/_dts/blocks/src/system/fragments/library/heroCtaRow.d.ts +1 -1
  238. package/dist/_dts/blocks/src/system/fragments/library/sectionState.d.ts +1 -1
  239. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +1 -0
  240. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/view.d.ts +4 -1
  241. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.client.d.ts +4 -1
  242. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.server.d.ts +4 -1
  243. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.client.state.d.ts +12 -0
  244. package/dist/_dts/blocks/src/system/runtime/shared/components/FieldValidationMessage.d.ts +19 -0
  245. package/dist/_dts/blocks/src/system/runtime/shared/components/TerminalPanel.d.ts +8 -2
  246. package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +3 -1
  247. package/dist/_dts/blocks/src/system/runtime/shared/index.d.ts +2 -2
  248. package/dist/_dts/blocks/src/system/transforms/registry/_utils/themeColorResolution.d.ts +7 -0
  249. package/dist/_dts/calendar/src/grid.d.ts +60 -0
  250. package/dist/_dts/calendar/src/group.d.ts +14 -0
  251. package/dist/_dts/calendar/src/index.d.ts +6 -0
  252. package/dist/_dts/calendar/src/lane-packing.d.ts +28 -0
  253. package/dist/_dts/calendar/src/timetable.d.ts +90 -0
  254. package/dist/_dts/calendar/src/timezone.d.ts +19 -0
  255. package/dist/_dts/content-editor/src/hooks/useDebouncedLatestSave.d.ts +24 -0
  256. package/dist/_dts/content-editor/src/index.d.ts +2 -4
  257. package/dist/_dts/content-editor/src/ui/stores/autosaveStore.d.ts +1 -0
  258. package/dist/_dts/content-editor/src/ui/stores/types.d.ts +1 -0
  259. package/dist/_dts/core/src/booking-date-time.d.ts +1 -0
  260. package/dist/_dts/core/src/branded.d.ts +18 -0
  261. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +1192 -234
  262. package/dist/_dts/db/src/schemas/forms.d.ts +1 -0
  263. package/dist/_dts/editor-blocks/src/index.d.ts +1 -1
  264. package/dist/_dts/editor-blocks/src/widgets/index.d.ts +7 -7
  265. package/dist/_dts/editor-blocks/src/widgets/link/LinkWidget.d.ts +1 -2
  266. package/dist/_dts/editor-blocks/src/widgets/link/index.d.ts +1 -0
  267. package/dist/_dts/preview-next/src/client/blocks/BlockToolbar.d.ts +2 -1
  268. package/dist/_dts/preview-next/src/client/blocks/composer/composePageFromBlocks.d.ts +2 -1
  269. package/dist/_dts/preview-next/src/client/blocks/composer/index.d.ts +2 -2
  270. package/dist/_dts/preview-next/src/client/blocks/composer/mergeDrafts.d.ts +2 -1
  271. package/dist/_dts/preview-next/src/client/blocks/composer/types.d.ts +31 -8
  272. package/dist/_dts/preview-next/src/client/blocks/pageDesignRuntimePreview.d.ts +6 -5
  273. package/dist/_dts/preview-next/src/client/blocks/previewProjection/aiProposalProjection.d.ts +7 -0
  274. package/dist/_dts/preview-next/src/client/blocks/previewProjection/applyPreviewProjections.d.ts +7 -0
  275. package/dist/_dts/preview-next/src/client/blocks/previewProjection/index.d.ts +4 -0
  276. package/dist/_dts/preview-next/src/client/blocks/previewProjection/runtimeContentDecoration.d.ts +5 -0
  277. package/dist/_dts/preview-next/src/client/blocks/previewProjection/types.d.ts +72 -0
  278. package/dist/_dts/preview-next/src/client/index.d.ts +1 -1
  279. package/dist/_dts/preview-next/src/client/layout/PreviewLayoutContext.d.ts +6 -5
  280. package/dist/_dts/preview-next/src/client/preview/PageDesignEditorStateContext.d.ts +2 -1
  281. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +12 -1
  282. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +10 -5
  283. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +7 -1
  284. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeButton.d.ts +4 -0
  285. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +49 -0
  286. package/dist/_dts/preview-next/src/client/preview/SiteChromeEditableSurface.d.ts +6 -0
  287. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +15 -2
  288. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +8 -1
  289. package/dist/_dts/preview-next/src/client/preview/previewCustomizeControlStyles.d.ts +1 -0
  290. package/dist/_dts/preview-next/src/client/preview/previewCustomizeHistory.d.ts +1 -0
  291. package/dist/_dts/preview-next/src/client/preview/previewCustomizeRuntimePatch.d.ts +9 -1
  292. package/dist/_dts/preview-next/src/client/preview/previewCustomizeWorkflowState.d.ts +13 -0
  293. package/dist/_dts/preview-next/src/client/preview/sidebarTabPreference.d.ts +8 -2
  294. package/dist/_dts/preview-next/src/client/preview/siteChromeLookRows.d.ts +49 -0
  295. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +18 -0
  296. package/dist/_dts/sdk/src/cli/commands/pull.d.ts +5 -0
  297. package/dist/_dts/sdk/src/cli/commands/push/options.d.ts +2 -0
  298. package/dist/_dts/sdk/src/cli/commands/push-execute.d.ts +17 -0
  299. package/dist/_dts/sdk/src/cli/content/entryPaths.d.ts +6 -0
  300. package/dist/_dts/sdk/src/cli/content/writer.d.ts +2 -0
  301. package/dist/_dts/sdk/src/cli/merge-remote/entryLocal.d.ts +3 -0
  302. package/dist/_dts/sdk/src/cli/merge-remote/entryMerge.d.ts +77 -0
  303. package/dist/_dts/sdk/src/cli/merge-remote/entryMergePlan.d.ts +45 -0
  304. package/dist/_dts/sdk/src/cli/merge-remote/entryMergePush.d.ts +21 -0
  305. package/dist/_dts/sdk/src/cli/merge-remote/entryMergeReport.d.ts +30 -0
  306. package/dist/_dts/sdk/src/cli/merge-remote/entryRemote.d.ts +9 -0
  307. package/dist/_dts/sdk/src/cli/merge-remote/entrySnapshots.d.ts +50 -0
  308. package/dist/_dts/sdk/src/cli/merge-remote/stableJson.d.ts +3 -0
  309. package/dist/_dts/sdk/src/cli/site-commands/entryCommands.d.ts +85 -0
  310. package/dist/_dts/sdk/src/cli/site-commands/index.d.ts +2 -0
  311. package/dist/_dts/sdk/src/cli/site-commands/pushExecution.d.ts +30 -0
  312. package/dist/_dts/sdk/src/cli/sync/executor.d.ts +1 -0
  313. package/dist/_dts/sdk/src/cli/sync/index.d.ts +1 -1
  314. package/dist/_dts/sdk/src/public-api/contracts.d.ts +4 -1
  315. package/dist/_dts/sdk/src/version.d.ts +1 -1
  316. package/dist/_dts/site-commands/src/adapter.d.ts +23 -0
  317. package/dist/_dts/site-commands/src/capabilityGaps.d.ts +8 -0
  318. package/dist/_dts/site-commands/src/commands.d.ts +1944 -0
  319. package/dist/_dts/site-commands/src/domain.d.ts +104 -0
  320. package/dist/_dts/site-commands/src/guards.d.ts +1 -0
  321. package/dist/_dts/site-commands/src/index.d.ts +9 -0
  322. package/dist/_dts/site-commands/src/metadata.d.ts +412 -0
  323. package/dist/_dts/site-commands/src/planner.d.ts +51 -0
  324. package/dist/_dts/site-commands/src/refContributions.d.ts +10 -0
  325. package/dist/_dts/site-commands/src/refs.d.ts +75 -0
  326. package/dist/_dts/site-commands/src/staticExecutionGaps.d.ts +10 -0
  327. package/dist/_dts/surfaces/src/index.d.ts +1 -0
  328. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  329. package/dist/_dts/theme-core/src/index.d.ts +1 -1
  330. package/dist/_dts/theme-core/src/palette/variants/types.d.ts +2 -21
  331. package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +3 -67
  332. package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +4 -62
  333. package/dist/_dts/theme-core/src/site-styles/appearancePresets.d.ts +1 -1
  334. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +24 -0
  335. package/dist/_dts/theme-core/src/site-styles/customizableSurfaces.d.ts +94 -0
  336. package/dist/_dts/theme-core/src/site-styles/footerLooks.d.ts +59 -0
  337. package/dist/_dts/theme-core/src/site-styles/generatedDesignPipeline.d.ts +4 -0
  338. package/dist/_dts/theme-core/src/site-styles/headerCtaVariants.d.ts +3 -0
  339. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +155 -0
  340. package/dist/_dts/theme-core/src/site-styles/headerOpeningSection.d.ts +15 -0
  341. package/dist/_dts/theme-core/src/site-styles/index.d.ts +6 -0
  342. package/dist/_dts/theme-core/src/site-styles/pageDesignAuthority.d.ts +7 -0
  343. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +25 -0
  344. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +15 -1
  345. package/dist/_dts/theme-core/src/site-styles/records.d.ts +1 -0
  346. package/dist/_dts/theme-core/src/site-styles/siteStyleBlockPolicies.d.ts +96 -0
  347. package/dist/_dts/theme-core/src/site-styles/types.d.ts +1 -2
  348. package/dist/_dts/theme-core/src/siteChrome.d.ts +44 -2
  349. package/dist/_dts/theme-core/src/tokens/colorTokenParts.d.ts +13 -0
  350. package/dist/_dts/theme-core/src/tokens/index.d.ts +2 -0
  351. package/dist/_dts/theme-core/src/tokens/themeColorTokens.d.ts +29 -0
  352. package/dist/_dts/theme-core/src/utils/tokenOrColor.d.ts +27 -1
  353. package/dist/cli/index.mjs +5049 -932
  354. package/dist/cli/init-docs/content/cli-reference.md +18 -0
  355. package/dist/client/bookings.mjs +544 -393
  356. package/dist/client/client.mjs +5189 -4144
  357. package/dist/client/hooks.mjs +3233 -2540
  358. package/dist/client/rendering/client.mjs +4649 -3597
  359. package/dist/client/rendering/islands.mjs +19533 -13480
  360. package/dist/client/rendering.mjs +5218 -4171
  361. package/dist/preview-next/before-render.mjs +161 -6
  362. package/dist/preview-next/client/runtime.mjs +5676 -3565
  363. package/dist/preview-next/editor-base.css +31 -0
  364. package/dist/preview-next/middleware.mjs +154 -6
  365. package/dist/server/components.mjs +3333 -2575
  366. package/dist/server/config-validation.mjs +3447 -2754
  367. package/dist/server/config.mjs +3450 -2757
  368. package/dist/server/data.mjs +3233 -2540
  369. package/dist/server/index.mjs +730 -543
  370. package/dist/server/next.mjs +3651 -2893
  371. package/dist/server/page-converter.mjs +2512 -2031
  372. package/dist/server/prebuild.mjs +1 -1
  373. package/dist/server/rendering/server.mjs +3333 -2575
  374. package/dist/server/rendering.mjs +3352 -2594
  375. package/dist/server/routing.mjs +3351 -2640
  376. package/dist/server/server.mjs +3262 -2569
  377. package/dist/server/theme-bridge.mjs +1260 -767
  378. package/dist/server/theme.mjs +623 -498
  379. package/dist/styles/index.css +33 -0
  380. package/package.json +2 -1
  381. package/dist/_dts/blocks/src/system/transforms/registry/_utils/colorResolution.d.ts +0 -13
  382. package/dist/_dts/content-editor/src/ai/patch/allowed.d.ts +0 -2
  383. package/dist/_dts/content-editor/src/ai/patch/diff.d.ts +0 -17
  384. package/dist/_dts/content-editor/src/ai/patch/schema.d.ts +0 -49
  385. package/dist/_dts/preview-next/src/client/blocks/overlay.d.ts +0 -30
  386. package/dist/_dts/theme-core/src/site-styles/siteChromeAppearancePresets.d.ts +0 -67
@@ -0,0 +1,70 @@
1
+ import { type BlockManifest } from '@riverbankcms/blocks';
2
+ import type { EditorSyncState } from '@riverbankcms/core';
3
+ import type { z } from 'zod';
4
+ type ManifestValidationIssue = z.core.$ZodIssue;
5
+ export type BlockDraftValidationIssue = Readonly<{
6
+ code: ManifestValidationIssue['code'];
7
+ path: (string | number)[];
8
+ fieldPath: string;
9
+ message: string;
10
+ }>;
11
+ export type BlockManifestValidationMode = 'draft' | 'strict';
12
+ export type BlockDraftSaveability = Readonly<{
13
+ kind: 'pristine';
14
+ issues: readonly BlockDraftValidationIssue[];
15
+ }> | Readonly<{
16
+ kind: 'incomplete';
17
+ issues: readonly BlockDraftValidationIssue[];
18
+ }> | Readonly<{
19
+ kind: 'saveable';
20
+ issues: readonly [];
21
+ }> | Readonly<{
22
+ kind: 'save_failed';
23
+ issues: readonly BlockDraftValidationIssue[];
24
+ error: string;
25
+ }>;
26
+ export declare const unfinishedBlockCopy: {
27
+ readonly title: "Fix this block to save it";
28
+ readonly description: "Some fields need a quick check. Your changes are safe here for now.";
29
+ };
30
+ export declare const recoveryConflictCopy: {
31
+ readonly reviewActionLabel: "Review affected blocks";
32
+ readonly discardActionLabel: "Discard browser recovery";
33
+ readonly blockNoticeTitle: "We couldn’t restore unfinished edits here automatically";
34
+ readonly blockNoticeDescription: "The saved version changed before we could put them back.";
35
+ readonly pageNoticeDescription: "The saved page changed, so we couldn’t restore them automatically.";
36
+ };
37
+ export declare const unfinishedBlocksSummaryCopy: {
38
+ readonly singular: "1 block still needs attention";
39
+ readonly plural: (count: number) => string;
40
+ };
41
+ export declare const publishBlockedCopy: {
42
+ readonly singleInvalidBlock: (blockLabel: string) => string;
43
+ readonly multipleInvalidBlocks: (count: number) => string;
44
+ };
45
+ export declare function formatRecoveryConflictTitle(count: number): string;
46
+ export declare function formatRecoveryConflictSummary(count: number): string | null;
47
+ export declare function formatUnfinishedBlocksSummary(count: number): string | null;
48
+ export declare function formatPublishBlockedMessage(input: Readonly<{
49
+ type: 'single-invalid-block';
50
+ blockLabel: string;
51
+ } | {
52
+ type: 'multiple-invalid-blocks';
53
+ count: number;
54
+ }>): string;
55
+ export declare function deriveBlockDraftSaveability(input: {
56
+ syncState: EditorSyncState;
57
+ issues: readonly BlockDraftValidationIssue[];
58
+ hasMeaningfulEdit: boolean;
59
+ showAllValidation: boolean;
60
+ }): BlockDraftSaveability;
61
+ export declare function shouldShowBlockFieldValidation(input: {
62
+ fieldPath: string;
63
+ touchedPaths: ReadonlySet<string>;
64
+ showAllValidation: boolean;
65
+ }): boolean;
66
+ export declare function validateBlockManifestValues(manifest: BlockManifest, values: Record<string, unknown>): BlockDraftValidationIssue[];
67
+ export declare function validateBlockManifestIssues(manifest: BlockManifest, values: Record<string, unknown>, mode: BlockManifestValidationMode): ManifestValidationIssue[];
68
+ export declare function validateBlockManifest(manifest: BlockManifest, values: Record<string, unknown>, mode: BlockManifestValidationMode): BlockDraftValidationIssue[];
69
+ export declare function normalizeManifestIssueMessage(issue: ManifestValidationIssue): string;
70
+ export {};
@@ -0,0 +1 @@
1
+ export * from '../blockDraftSaveability';
@@ -0,0 +1,30 @@
1
+ export { FormRenderer } from '../FormRenderer';
2
+ export type { FormRendererProps } from '../FormRenderer';
3
+ export { ManifestForm } from '../manifest/ManifestForm';
4
+ export type { ManifestFormProps } from '../manifest/ManifestForm';
5
+ export type { FieldWidgetComponent, FieldWidgetProps } from '../fields/props';
6
+ export { useField, useArrayField } from '../backend/hooks';
7
+ export { createRHFBackend, createStoreBackend, useBackendWatch } from '../backend/types';
8
+ export type { FormBackend, FieldError, FieldState, SetValueOptions } from '../backend/types';
9
+ export type { ManifestAdapterOptions, ManifestAdapterResult, ManifestFormSource, ManifestSchemaOptions, ManifestValidationResult, } from '../manifest/manifestFormAdapter';
10
+ export { createManifestValidation } from '../manifest/manifestFormAdapter';
11
+ export { formatPublishBlockedMessage, formatRecoveryConflictSummary, formatRecoveryConflictTitle, deriveBlockDraftSaveability, formatUnfinishedBlocksSummary, normalizeManifestIssueMessage, recoveryConflictCopy, shouldShowBlockFieldValidation, unfinishedBlockCopy, validateBlockManifest, validateBlockManifestIssues, validateBlockManifestValues, } from './blockDraftSaveability';
12
+ export type { BlockDraftSaveability, BlockDraftValidationIssue, BlockManifestValidationMode, } from './blockDraftSaveability';
13
+ export type { BaseFieldConfig, FieldConfig, TextFieldConfig, NumberFieldConfig, RichTextFieldConfig, MediaFieldConfig, BooleanFieldConfig, DateFieldConfig, TimeFieldConfig, DateTimeFieldConfig, SlugFieldConfig, UrlFieldConfig, LinkFieldConfig, SelectFieldConfig, ReferenceFieldConfig, GroupFieldConfig, RepeaterFieldConfig, ButtonFieldConfig, ContentTypeSelectFieldConfig, EntryPickerFieldConfig, } from '../fields/types';
14
+ export { createManifestFormAdapter } from '../manifest/manifestFormAdapter';
15
+ export { PaletteProvider, usePalette } from '../palette/PaletteContext';
16
+ export { SdkConfigProvider, useSdkConfig, useBlockFieldOptions } from '../sdk-config';
17
+ export type { SdkConfig, SdkConfigProviderProps, SdkThemePalette, SdkSectionBackground, SdkSectionOptions, SdkSiteStyleConfig, SdkFieldSelectOption, SdkBlockFieldConfig, SdkBlockFieldOptionsMap, SdkBlockFieldExtensionsMap, } from '../sdk-config';
18
+ export { BlockContextProvider, useBlockContext } from '../context';
19
+ export type { BlockContextValue, BlockContextProviderProps } from '../context';
20
+ export { DisplayLabelResolverProvider, useDisplayLabelResolvers } from '../context';
21
+ export type { DisplayLabelResolver, DisplayLabelResolverMap, ResolverCallContext } from '../context';
22
+ export { FieldPreviewResolverProvider, useFieldPreviewResolvers } from '../context';
23
+ export type { FieldPreviewResolver, FieldPreviewResolverMap, FieldPreviewResolverCallContext } from '../context';
24
+ export { ImageResolveContextProvider, useImageResolveContextOptional } from '../context';
25
+ export { mergeManifestWithSdkOptions } from '../manifest/mergeManifestWithSdkOptions';
26
+ export { FieldFrame, FieldFrameMessage } from '../widgets/FieldFrame';
27
+ export type { FieldFrameProps, FieldFrameRenderProps, FieldFrameMessageProps } from '../widgets/FieldFrame';
28
+ export { SelectField } from '../widgets/SelectField';
29
+ export { BackgroundColorField } from '../widgets/BackgroundColorWidget';
30
+ export { BackgroundGradientField } from '../widgets/BackgroundGradientWidget';
@@ -0,0 +1,29 @@
1
+ import React from 'react';
2
+ /**
3
+ * Block context value
4
+ *
5
+ * Provides information about the current block being edited.
6
+ * Used by widgets like SdkSelectField to look up SDK-provided field options.
7
+ */
8
+ export interface BlockContextValue {
9
+ /** The block kind (e.g., 'block.embed', 'custom.hero') */
10
+ blockKind: string;
11
+ }
12
+ export interface BlockContextProviderProps {
13
+ blockKind: string;
14
+ children: React.ReactNode;
15
+ }
16
+ /**
17
+ * BlockContextProvider
18
+ *
19
+ * Provides block information to child widgets.
20
+ * Typically used by FormRenderer when editing a block.
21
+ */
22
+ export declare function BlockContextProvider({ blockKind, children }: BlockContextProviderProps): import("react/jsx-runtime").JSX.Element;
23
+ /**
24
+ * useBlockContext
25
+ *
26
+ * Hook to access the current block context.
27
+ * Returns null when not within a BlockContextProvider.
28
+ */
29
+ export declare function useBlockContext(): BlockContextValue | null;
@@ -0,0 +1,33 @@
1
+ import React from 'react';
2
+ import type { FieldConfig } from '../fields/types';
3
+ /**
4
+ * Context passed to a display label resolver, providing access to sibling field values.
5
+ */
6
+ export type ResolverCallContext = {
7
+ getSiblingValue: (fieldId: string) => unknown;
8
+ };
9
+ /**
10
+ * A function that resolves a stored field value to a human-readable display label.
11
+ *
12
+ * Returns null if the value can't be resolved (caller falls back to raw value).
13
+ */
14
+ export type DisplayLabelResolver = (value: unknown, fieldConfig: FieldConfig, context: ResolverCallContext) => Promise<string | null>;
15
+ /**
16
+ * Map of field type to display label resolver.
17
+ * Only field types that need async resolution register here.
18
+ */
19
+ export type DisplayLabelResolverMap = Partial<Record<FieldConfig['type'], DisplayLabelResolver>>;
20
+ /**
21
+ * Provides display label resolvers to descendant components.
22
+ * Repeater items use these resolvers to show human-readable labels
23
+ * instead of raw stored values (e.g. entry titles instead of slugs).
24
+ */
25
+ export declare function DisplayLabelResolverProvider({ resolvers, children, }: {
26
+ resolvers: DisplayLabelResolverMap;
27
+ children: React.ReactNode;
28
+ }): import("react/jsx-runtime").JSX.Element;
29
+ /**
30
+ * Access the display label resolver map.
31
+ * Returns an empty map when no provider is present (resolvers are optional).
32
+ */
33
+ export declare function useDisplayLabelResolvers(): DisplayLabelResolverMap;
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ import type { FieldConfig } from '../fields/types';
3
+ /**
4
+ * Context passed to a field preview resolver, providing access to sibling field values.
5
+ */
6
+ export type FieldPreviewResolverCallContext = {
7
+ getSiblingValue: (fieldId: string) => unknown;
8
+ };
9
+ /**
10
+ * Resolve a stored field value to a preview value consumable by UI widgets.
11
+ *
12
+ * For repeater thumbnails, resolvers can return media-like objects
13
+ * (e.g. `{ type: 'image', src: '...' }`) for field types that do not store media directly.
14
+ */
15
+ export type FieldPreviewResolver = (value: unknown, fieldConfig: FieldConfig, context: FieldPreviewResolverCallContext) => Promise<unknown | null>;
16
+ /**
17
+ * Map of field type to preview resolver.
18
+ */
19
+ export type FieldPreviewResolverMap = Partial<Record<FieldConfig['type'], FieldPreviewResolver>>;
20
+ /**
21
+ * Provides field preview resolvers to descendant components.
22
+ */
23
+ export declare function FieldPreviewResolverProvider({ resolvers, children, }: {
24
+ resolvers: FieldPreviewResolverMap;
25
+ children: React.ReactNode;
26
+ }): import("react/jsx-runtime").JSX.Element;
27
+ /**
28
+ * Access the field preview resolver map.
29
+ */
30
+ export declare function useFieldPreviewResolvers(): FieldPreviewResolverMap;
@@ -0,0 +1 @@
1
+ export { ImageResolveContextProvider, useImageResolveContextOptional, } from '@riverbankcms/blocks/client';
@@ -0,0 +1,4 @@
1
+ export { BlockContextProvider, useBlockContext, type BlockContextValue, type BlockContextProviderProps, } from './BlockContext';
2
+ export { DisplayLabelResolverProvider, useDisplayLabelResolvers, type DisplayLabelResolver, type DisplayLabelResolverMap, type ResolverCallContext, } from './DisplayLabelResolverContext';
3
+ export { FieldPreviewResolverProvider, useFieldPreviewResolvers, type FieldPreviewResolver, type FieldPreviewResolverMap, type FieldPreviewResolverCallContext, } from './FieldPreviewResolverContext';
4
+ export { ImageResolveContextProvider, useImageResolveContextOptional, } from './ImageResolveContext';
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Widget Props Types
3
+ *
4
+ * Runtime props for field widgets - combines field config with runtime context
5
+ */
6
+ import type { ComponentType, ReactNode } from 'react';
7
+ import type { FormBackend } from '../backend/types';
8
+ import type { FieldConfig } from './types';
9
+ /**
10
+ * Function for rendering child fields (used by container widgets like GroupField/RepeaterField)
11
+ */
12
+ export type RenderChildField = (childConfig: FieldConfig, childPath: string) => ReactNode;
13
+ /**
14
+ * Props for field widget components
15
+ *
16
+ * @template TValue - The type of value this field manages
17
+ * @template TConfig - The specific field config type (e.g., TextFieldConfig, GroupFieldConfig)
18
+ */
19
+ export interface FieldWidgetProps<TValue = unknown, TConfig extends FieldConfig = FieldConfig> {
20
+ /** Runtime path to this field (e.g., 'title', 'items.0.name') */
21
+ path: string;
22
+ /** Form backend for reading/writing values */
23
+ backend: FormBackend;
24
+ /** Field configuration (pure definition) */
25
+ config: TConfig;
26
+ /** Function to render child fields (required for container widgets like group/repeater) */
27
+ renderChild?: RenderChildField;
28
+ }
29
+ /**
30
+ * Type for field widget components
31
+ *
32
+ * Widgets are strongly typed with specific config types (TextFieldConfig, etc.) for
33
+ * type safety within their implementation. At the registry boundary, type assertions
34
+ * are used to store them in a homogeneous collection (see registry/widgets.ts).
35
+ *
36
+ * This is safe because:
37
+ * 1. The field.type discriminant ensures the correct widget is selected
38
+ * 2. Each widget receives its expected config subtype at runtime
39
+ * 3. The type system prevents accessing properties that don't exist on BaseFieldConfig
40
+ */
41
+ export type FieldWidgetComponent<TValue = unknown, TConfig extends FieldConfig = FieldConfig> = ComponentType<FieldWidgetProps<TValue, TConfig>>;
42
+ /**
43
+ * Widget registry - maps field type strings to their components
44
+ *
45
+ * This is a heterogeneous collection where each widget has different type parameters,
46
+ * stored with a common base type for lookup. See registry/widgets.ts for implementation.
47
+ */
48
+ export type WidgetRegistry = Record<string, FieldWidgetComponent>;
@@ -0,0 +1,223 @@
1
+ /**
2
+ * Field Configuration Types
3
+ *
4
+ * Pure field definitions independent of how they're created (manifest, manual, etc.)
5
+ * These types describe what a field IS, not where it came from.
6
+ *
7
+ * FieldConfig types are structurally compatible with FieldDefinition from @riverbankcms/blocks,
8
+ * allowing manifest fields to be passed through with minimal transformation.
9
+ */
10
+ import type { FieldDefinition } from '@riverbankcms/blocks';
11
+ import type { ZodTypeAny } from 'zod';
12
+ import type { TabGroupFieldConfig } from '../widgets/TabGroupField/types';
13
+ import type { PresetOrCustomFieldConfig } from '../widgets/PresetOrCustomField/types';
14
+ /**
15
+ * Base configuration for all field types
16
+ */
17
+ export interface BaseFieldConfig {
18
+ /** Unique identifier for this field */
19
+ id: string;
20
+ /** Field type discriminator */
21
+ type: string;
22
+ /** Human-readable label */
23
+ label: string;
24
+ /** Optional description/help text */
25
+ description?: string;
26
+ /** Whether this field is required (defaults to false if not specified) */
27
+ required?: boolean;
28
+ /** Default value for this field */
29
+ defaultValue?: unknown;
30
+ /** UI-specific configuration - uses same type as FieldDefinition for compatibility */
31
+ ui?: FieldDefinition['ui'];
32
+ }
33
+ /**
34
+ * Text field configuration
35
+ */
36
+ export interface TextFieldConfig extends BaseFieldConfig {
37
+ type: 'text';
38
+ multiline?: boolean;
39
+ maxLength?: number;
40
+ }
41
+ /**
42
+ * Number field configuration
43
+ */
44
+ export interface NumberFieldConfig extends BaseFieldConfig {
45
+ type: 'number';
46
+ min?: number;
47
+ max?: number;
48
+ step?: number;
49
+ }
50
+ /**
51
+ * Rich text field configuration
52
+ */
53
+ export interface RichTextFieldConfig extends BaseFieldConfig {
54
+ type: 'richText';
55
+ }
56
+ /**
57
+ * Media field configuration
58
+ */
59
+ export interface MediaFieldConfig extends BaseFieldConfig {
60
+ type: 'media';
61
+ mediaKinds?: ('image' | 'video' | 'audio' | 'document' | 'spreadsheet' | 'archive')[];
62
+ aspectRatio?: string;
63
+ }
64
+ /**
65
+ * Boolean field configuration
66
+ */
67
+ export interface BooleanFieldConfig extends BaseFieldConfig {
68
+ type: 'boolean';
69
+ }
70
+ /**
71
+ * Date field configuration
72
+ */
73
+ export interface DateFieldConfig extends BaseFieldConfig {
74
+ type: 'date';
75
+ }
76
+ /**
77
+ * Time field configuration
78
+ */
79
+ export interface TimeFieldConfig extends BaseFieldConfig {
80
+ type: 'time';
81
+ }
82
+ /**
83
+ * DateTime field configuration
84
+ */
85
+ export interface DateTimeFieldConfig extends BaseFieldConfig {
86
+ type: 'datetime';
87
+ }
88
+ /**
89
+ * Slug field configuration
90
+ */
91
+ export interface SlugFieldConfig extends BaseFieldConfig {
92
+ type: 'slug';
93
+ sourceFieldId?: string;
94
+ statusFieldId?: string;
95
+ maxLength?: number;
96
+ }
97
+ /**
98
+ * URL field configuration
99
+ */
100
+ export interface UrlFieldConfig extends BaseFieldConfig {
101
+ type: 'url';
102
+ allowRelative?: boolean;
103
+ }
104
+ /**
105
+ * Link field configuration
106
+ */
107
+ export interface LinkFieldConfig extends BaseFieldConfig {
108
+ type: 'link';
109
+ }
110
+ /**
111
+ * Select field configuration
112
+ */
113
+ export interface SelectFieldConfig extends BaseFieldConfig {
114
+ type: 'select';
115
+ options: Array<{
116
+ value: string;
117
+ label: string;
118
+ }>;
119
+ multiple?: boolean;
120
+ }
121
+ /**
122
+ * Reference field configuration
123
+ */
124
+ export interface ReferenceFieldConfig extends BaseFieldConfig {
125
+ type: 'reference';
126
+ referenceKind: string;
127
+ allowManualEntry?: boolean;
128
+ }
129
+ /**
130
+ * Group field configuration (nested object)
131
+ */
132
+ export interface GroupFieldConfig extends BaseFieldConfig {
133
+ type: 'group';
134
+ fields: FieldConfig[];
135
+ /** Optional nested schema shape for compatibility with manifest FieldDefinition */
136
+ schema?: {
137
+ fields?: FieldConfig[];
138
+ };
139
+ }
140
+ /**
141
+ * Modal field configuration (nested object shown in a dialog)
142
+ *
143
+ * Modal fields are structurally similar to group fields, but store children under
144
+ * `schema.fields` in the block manifest.
145
+ */
146
+ export interface ModalFieldConfig extends BaseFieldConfig {
147
+ type: 'modal';
148
+ schema: {
149
+ fields: FieldConfig[];
150
+ };
151
+ }
152
+ /**
153
+ * Repeater field configuration (array)
154
+ */
155
+ export type RepeaterFieldConfig = BaseFieldConfig & ({
156
+ /**
157
+ * Optional custom validation schema for the entire repeater field.
158
+ * Useful for complex constraints that aren't expressible via field-level config.
159
+ */
160
+ validation?: ZodTypeAny;
161
+ } & ({
162
+ type: 'repeater';
163
+ itemLabel?: string;
164
+ itemLabelSource?: string;
165
+ minItems?: number;
166
+ maxItems?: number;
167
+ polymorphic?: false;
168
+ fields: FieldConfig[];
169
+ /** Optional nested schema shape for compatibility with manifest FieldDefinition */
170
+ schema?: {
171
+ fields?: FieldConfig[];
172
+ };
173
+ itemTypes?: never;
174
+ allowConversion?: boolean;
175
+ } | {
176
+ type: 'repeater';
177
+ itemLabel?: string;
178
+ itemLabelSource?: string;
179
+ minItems?: number;
180
+ maxItems?: number;
181
+ polymorphic: true;
182
+ fields?: never;
183
+ /** Polymorphic repeaters do not use schema.fields */
184
+ schema?: never;
185
+ itemTypes: Record<string, {
186
+ label: string;
187
+ icon?: string;
188
+ fields: FieldConfig[];
189
+ }>;
190
+ allowConversion?: boolean;
191
+ }));
192
+ /**
193
+ * Button field configuration
194
+ */
195
+ export interface ButtonFieldConfig extends BaseFieldConfig {
196
+ type: 'button';
197
+ allowedSizes?: Array<'sm' | 'md' | 'lg' | 'xl'>;
198
+ defaultSize?: 'sm' | 'md' | 'lg' | 'xl';
199
+ }
200
+ /**
201
+ * Content type select field configuration
202
+ */
203
+ export interface ContentTypeSelectFieldConfig extends BaseFieldConfig {
204
+ type: 'contentTypeSelect';
205
+ /** Filter: all, routable (hasPages=true), nonRoutable (hasPages=false) */
206
+ filter?: 'all' | 'routable' | 'nonRoutable';
207
+ }
208
+ /**
209
+ * Entry picker field configuration
210
+ */
211
+ export interface EntryPickerFieldConfig extends BaseFieldConfig {
212
+ type: 'entryPicker';
213
+ /** Fixed content type to filter entries by (no sibling contentType field required) */
214
+ fixedContentType?: string;
215
+ /** Field ID that contains the content type to filter entries by */
216
+ contentTypeField?: string;
217
+ /** What value should be stored when an entry is selected */
218
+ valueFrom?: 'id' | 'identifier' | 'slug';
219
+ }
220
+ /**
221
+ * Union of all field configuration types
222
+ */
223
+ export type FieldConfig = TextFieldConfig | NumberFieldConfig | RichTextFieldConfig | MediaFieldConfig | BooleanFieldConfig | DateFieldConfig | TimeFieldConfig | DateTimeFieldConfig | SlugFieldConfig | UrlFieldConfig | LinkFieldConfig | SelectFieldConfig | ReferenceFieldConfig | GroupFieldConfig | ModalFieldConfig | RepeaterFieldConfig | ButtonFieldConfig | TabGroupFieldConfig | PresetOrCustomFieldConfig | ContentTypeSelectFieldConfig | EntryPickerFieldConfig;
@@ -0,0 +1,22 @@
1
+ export * from './client/index';
2
+ export { formatPublishBlockedMessage, formatRecoveryConflictSummary, formatRecoveryConflictTitle, formatUnfinishedBlocksSummary, recoveryConflictCopy, unfinishedBlockCopy, } from './blockDraftSaveability';
3
+ export { WIDGET_NAMES, type WidgetName } from './widgets';
4
+ export { WidgetField, WidgetFieldMessage } from './widgets';
5
+ export type { WidgetFieldProps, WidgetFieldMessageProps } from './widgets';
6
+ export { SelectWidget } from './widgets';
7
+ export type { SelectWidgetProps, SelectWidgetOption } from './widgets';
8
+ export { ToggleWidget } from './widgets';
9
+ export type { ToggleWidgetProps } from './widgets';
10
+ export { TextInputWidget } from './widgets';
11
+ export type { TextInputWidgetProps } from './widgets';
12
+ export { BackgroundColorWidget } from './widgets';
13
+ export type { BackgroundColorWidgetProps, BackgroundColorMode } from './widgets';
14
+ export { BackgroundGradientWidget } from './widgets';
15
+ export type { BackgroundGradientWidgetProps } from './widgets';
16
+ export { BoxStyleWidget } from './widgets';
17
+ export { DatePickerPopover, parseDateValue, type DateParseResult, type DatePickerPopoverProps, } from './widgets';
18
+ export { FieldSettingsModal } from './widgets';
19
+ export type { FieldSettingsModalProps } from './widgets';
20
+ export { SettingsModal } from './widgets';
21
+ export type { SettingsModalProps, SettingsTab, SettingsTabId } from './widgets';
22
+ export * from './utils/fieldHelpers';
@@ -0,0 +1,37 @@
1
+ /**
2
+ * ManifestForm - Thin wrapper around FormRenderer for manifest-based forms
3
+ *
4
+ * Responsibilities:
5
+ * 1. Transform manifest FieldDefinitions → FieldConfigs (via adapter)
6
+ * 2. Pass transformed fields to generic FormRenderer
7
+ * 3. Handle manifest-specific options (role visibility, etc.)
8
+ */
9
+ import type { BlockManifest, VisibilityLevel } from '@riverbankcms/blocks';
10
+ import { type FormRendererProps } from '../FormRenderer';
11
+ import type { FormBackend } from '../backend/types';
12
+ export interface ManifestFormProps {
13
+ manifest: BlockManifest;
14
+ className?: string;
15
+ role?: VisibilityLevel;
16
+ backend: FormBackend;
17
+ /** Optional widget overrides - allows replacing widgets at runtime */
18
+ widgetOverrides?: FormRendererProps['widgetOverrides'];
19
+ /** Optional block kind for SDK field options lookup (e.g., 'block.embed', 'custom.hero') */
20
+ blockKind?: string;
21
+ /** Show inline settings trigger for non-content intents (default: true) */
22
+ showSettingsTrigger?: boolean;
23
+ }
24
+ /**
25
+ * ManifestForm - Renders form fields from a block manifest
26
+ *
27
+ * This is a thin adapter that:
28
+ * 1. Converts manifest FieldDefinitions to FieldConfigs (via adapter)
29
+ * 2. Delegates rendering to FormRenderer
30
+ *
31
+ * @example
32
+ * ```tsx
33
+ * const backend = createRHFBackend(form)
34
+ * <ManifestForm manifest={blockManifest} backend={backend} />
35
+ * ```
36
+ */
37
+ export declare function ManifestForm({ manifest, className, role, backend, widgetOverrides, blockKind, showSettingsTrigger, }: ManifestFormProps): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,5 @@
1
+ import { type NativeInputValidationProps } from '@riverbankcms/blocks/system/manifest/fieldValidation';
2
+ import type { z } from 'zod';
3
+ import type { FieldConfig } from '../fields/types';
4
+ export declare function buildCanonicalFieldSchema(field: FieldConfig): z.ZodTypeAny;
5
+ export declare function getCanonicalNativeInputProps(field: FieldConfig): NativeInputValidationProps;
@@ -0,0 +1,44 @@
1
+ /**
2
+ * SDK Tab Filtering
3
+ *
4
+ * Pure function for filtering tab group tabs based on SDK section options.
5
+ * This is used by TabGroupField to respect SDK site configuration.
6
+ */
7
+ import type { SdkSectionOptions } from '../sdk-config';
8
+ /**
9
+ * Tab definition with optional SDK section option.
10
+ * This is a minimal interface that matches what TabGroupField receives.
11
+ */
12
+ export interface FilterableTab {
13
+ id: string;
14
+ sdkSectionOption?: 'backgroundColor' | 'backgroundGradient' | 'backgroundImage';
15
+ }
16
+ export declare function isSdkSectionOptionEnabled(sdkSectionOption: FilterableTab['sdkSectionOption'] | undefined, isSdkSite: boolean, sectionOptions: SdkSectionOptions | null): boolean;
17
+ /**
18
+ * Filters tabs based on SDK section options.
19
+ *
20
+ * This pure function handles the filtering logic that was previously embedded
21
+ * in TabGroupField. It's designed to be testable and reusable.
22
+ *
23
+ * ## Filtering Rules
24
+ *
25
+ * - If not an SDK site or no sectionOptions exist, all tabs are returned
26
+ * - Tabs without `sdkSectionOption` are always visible
27
+ * - Tabs with `sdkSectionOption` are visible unless explicitly disabled
28
+ * - A disabled option is when `sectionOptions[key] === false`
29
+ *
30
+ * @param tabs - Array of tabs to filter
31
+ * @param isSdkSite - Whether this is an SDK-configured site
32
+ * @param sectionOptions - SDK section options (may be null)
33
+ * @returns Filtered array of visible tabs
34
+ *
35
+ * @example
36
+ * ```typescript
37
+ * const visibleTabs = filterTabsBySdkOptions(
38
+ * config.tabs,
39
+ * isSdkSite,
40
+ * sectionOptions
41
+ * )
42
+ * ```
43
+ */
44
+ export declare function filterTabsBySdkOptions<T extends FilterableTab>(tabs: T[], isSdkSite: boolean, sectionOptions: SdkSectionOptions | null): T[];
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Manifest Form Adapter
3
+ *
4
+ * Transforms BlockManifest field definitions into FieldConfigs for form rendering.
5
+ * Handles role-based visibility filtering and structure normalization.
6
+ *
7
+ * This adapter is intentionally minimal - it only does what's truly manifest-specific:
8
+ * 1. Filter fields by role visibility
9
+ * 2. Flatten nested structure (schema.fields → fields)
10
+ *
11
+ * Everything else (validation, defaults, UI) is handled by the generic form system.
12
+ */
13
+ import type { VisibilityLevel, BlockManifest } from '@riverbankcms/blocks';
14
+ import type { ZodType } from 'zod';
15
+ import type { FieldConfig } from '../fields/types';
16
+ export interface ManifestAdapterOptions {
17
+ role?: VisibilityLevel;
18
+ }
19
+ export interface ManifestAdapterResult {
20
+ fields: FieldConfig[];
21
+ schema: ZodType<Record<string, unknown>, Record<string, unknown>>;
22
+ }
23
+ /**
24
+ * Union type for manifest form sources
25
+ * Can be either a BlockManifest or null
26
+ */
27
+ export type ManifestFormSource = BlockManifest | null;
28
+ /**
29
+ * Options for manifest validation schema creation
30
+ */
31
+ export interface ManifestSchemaOptions {
32
+ role?: VisibilityLevel;
33
+ widgets?: unknown;
34
+ }
35
+ /**
36
+ * Result of createManifestValidation
37
+ */
38
+ export interface ManifestValidationResult {
39
+ schema: ZodType<Record<string, unknown>, Record<string, unknown>>;
40
+ fields: FieldConfig[];
41
+ }
42
+ /**
43
+ * Transform a BlockManifest into form fields and validation schema
44
+ */
45
+ export declare function createManifestFormAdapter(manifest: BlockManifest, options?: ManifestAdapterOptions): ManifestAdapterResult;
46
+ /**
47
+ * Create validation schema from a block manifest
48
+ *
49
+ * This is a convenience wrapper around createManifestFormAdapter for RHF validation.
50
+ * Use this when you need a Zod schema for form validation (e.g., with zodResolver).
51
+ *
52
+ * @example
53
+ * ```tsx
54
+ * const validation = createManifestValidation(manifest, { role: 'author' })
55
+ * const form = useForm({
56
+ * resolver: zodResolver(validation.schema),
57
+ * defaultValues: ...
58
+ * })
59
+ * ```
60
+ */
61
+ export declare function createManifestValidation(manifest: BlockManifest, options?: ManifestSchemaOptions): ManifestValidationResult;