@riverbankcms/sdk 0.77.0 → 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 (237) hide show
  1. package/README.md +69 -0
  2. package/dist/{PreviewEditorSidebar-XSX7QKHQ.mjs → PreviewEditorSidebar-RIKFQ72L.mjs} +4916 -4847
  3. package/dist/{PreviewEditorUI-YZNEZ3QD.mjs → PreviewEditorUI-XO7TUWKK.mjs} +3 -3
  4. package/dist/SdkPreviewModeRuntime-LAGYMPNF.mjs +8 -0
  5. package/dist/_dts/ai/src/contracts/proposals.d.ts +194 -184
  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/customBlockRegistry.d.ts +20 -1
  26. package/dist/_dts/blocks/src/index.d.ts +3 -2
  27. package/dist/_dts/blocks/src/system/blocks/appointment-booking.d.ts +288 -288
  28. package/dist/_dts/blocks/src/system/blocks/blog-listing.d.ts +288 -288
  29. package/dist/_dts/blocks/src/system/blocks/cart.d.ts +288 -288
  30. package/dist/_dts/blocks/src/system/blocks/checkout.d.ts +288 -288
  31. package/dist/_dts/blocks/src/system/blocks/collection.d.ts +288 -288
  32. package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +2 -2
  33. package/dist/_dts/blocks/src/system/blocks/faq.d.ts +294 -289
  34. package/dist/_dts/blocks/src/system/blocks/gifting.d.ts +288 -288
  35. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +1 -1
  36. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +21 -21
  37. package/dist/_dts/blocks/src/system/blocks/product-detail.d.ts +288 -288
  38. package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +288 -288
  39. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +288 -288
  40. package/dist/_dts/blocks/src/system/blocks/site-header.d.ts +2 -2
  41. package/dist/_dts/blocks/src/system/data/index.d.ts +5 -3
  42. package/dist/_dts/blocks/src/system/data/previewResolvedDataState.d.ts +45 -0
  43. package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +2 -1
  44. package/dist/_dts/blocks/src/system/fragments/library/faqAccordion.d.ts +5 -0
  45. package/dist/_dts/blocks/src/system/manifest/fieldValidation/index.d.ts +5 -0
  46. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +29 -29
  47. package/dist/_dts/blocks/src/system/node/fragments/headingDecoration.d.ts +10 -0
  48. package/dist/_dts/blocks/src/system/node/fragments/index.d.ts +1 -0
  49. package/dist/_dts/blocks/src/system/node/fragments/styledSection.d.ts +9 -0
  50. package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +3 -2
  51. package/dist/_dts/blocks/src/system/runtime/api/endpoints.d.ts +8 -0
  52. package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
  53. package/dist/_dts/blocks/src/system/runtime/api/types.d.ts +43 -8
  54. package/dist/_dts/blocks/src/system/runtime/components/multi-step/runtimeFormValidation.d.ts +28 -0
  55. package/dist/_dts/blocks/src/system/runtime/header/shared.d.ts +8 -7
  56. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCompactRow.d.ts +1 -4
  57. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/utils.d.ts +7 -0
  58. package/dist/_dts/blocks/src/system/runtime/nodes/header-section.client.d.ts +2 -8
  59. package/dist/_dts/blocks/src/system/runtime/nodes/header-section.server.d.ts +2 -9
  60. package/dist/_dts/blocks/src/system/runtime/nodes/shop-cart-discount-ui.d.ts +5 -0
  61. package/dist/_dts/blocks/src/system/runtime/nodes/shop-checkout-form.d.ts +76 -0
  62. package/dist/_dts/blocks/src/system/runtime/nodes/shop-checkout.state.d.ts +1 -4
  63. package/dist/_dts/blocks/src/system/runtime/nodes/shop-commerce-store.d.ts +2 -0
  64. package/dist/_dts/blocks/src/system/runtime/nodes/shop-commerce.shared.d.ts +1 -0
  65. package/dist/_dts/blocks/src/system/runtime/nodes/shop-discount-apply.state.d.ts +52 -0
  66. package/dist/_dts/blocks/src/system/runtime/nodes/shop.state.d.ts +2 -4
  67. package/dist/_dts/blocks/src/system/runtime/nodes/useDiscountApply.d.ts +21 -0
  68. package/dist/_dts/blocks/src/system/runtime/shared/components/DiscountCodeDisclosure.d.ts +54 -0
  69. package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +2 -0
  70. package/dist/_dts/blocks/src/system/runtime/shared/index.d.ts +2 -2
  71. package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +4 -4
  72. package/dist/_dts/blocks/src/system/transforms/registry/ui.d.ts +1 -1
  73. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +1 -1
  74. package/dist/_dts/content-editor/src/contentTypeEditorContentState.d.ts +26 -0
  75. package/dist/_dts/content-editor/src/definitions/factory.d.ts +75 -0
  76. package/dist/_dts/content-editor/src/entryWorkflows.d.ts +2 -0
  77. package/dist/_dts/content-editor/src/footerBlocksEditorState.d.ts +76 -0
  78. package/dist/_dts/content-editor/src/index.d.ts +5 -0
  79. package/dist/_dts/content-editor/src/pageWorkflowContent.d.ts +29 -0
  80. package/dist/_dts/content-model/src/content-types/schema.d.ts +3 -3
  81. package/dist/_dts/content-model/src/index.d.ts +1 -0
  82. package/dist/_dts/content-model/src/routeTemplate.d.ts +4 -0
  83. package/dist/_dts/content-model/src/templates/editorState.d.ts +25 -0
  84. package/dist/_dts/core/src/csv-cells.d.ts +10 -0
  85. package/dist/_dts/core/src/csv-date-filter.d.ts +27 -0
  86. package/dist/_dts/core/src/csv-escape.d.ts +1 -0
  87. package/dist/_dts/core/src/csv-filename.d.ts +18 -0
  88. package/dist/_dts/core/src/csv-render.d.ts +4 -0
  89. package/dist/_dts/core/src/csv-types.d.ts +116 -0
  90. package/dist/_dts/core/src/currency-format.d.ts +4 -0
  91. package/dist/_dts/core/src/demo-capability-policy.d.ts +29 -0
  92. package/dist/_dts/core/src/demo-claim-access.d.ts +14 -0
  93. package/dist/_dts/core/src/demo-lifecycle-status.d.ts +11 -0
  94. package/dist/_dts/core/src/demo-runtime.d.ts +47 -0
  95. package/dist/_dts/core/src/duration.d.ts +14 -0
  96. package/dist/_dts/core/src/email-format.d.ts +10 -0
  97. package/dist/_dts/core/src/field-errors.d.ts +1 -0
  98. package/dist/_dts/core/src/form-submission-preview.d.ts +24 -0
  99. package/dist/_dts/core/src/index.d.ts +20 -0
  100. package/dist/_dts/core/src/number-input.d.ts +22 -0
  101. package/dist/_dts/core/src/public-url-validation.d.ts +12 -0
  102. package/dist/_dts/core/src/slug.d.ts +39 -0
  103. package/dist/_dts/core/src/string.d.ts +19 -0
  104. package/dist/_dts/core/src/uuid.d.ts +6 -0
  105. package/dist/_dts/db/src/schemas/forms.d.ts +50 -50
  106. package/dist/_dts/media-core/src/assetsInUseSummary.d.ts +34 -0
  107. package/dist/_dts/media-core/src/bulkDeletePlanning.d.ts +24 -0
  108. package/dist/_dts/media-core/src/canonicalCropReview.d.ts +66 -0
  109. package/dist/_dts/media-core/src/classifyAllPlanning.d.ts +48 -0
  110. package/dist/_dts/media-core/src/filename.d.ts +1 -0
  111. package/dist/_dts/media-core/src/index.d.ts +10 -0
  112. package/dist/_dts/media-core/src/mediaAssetUsageStatus.d.ts +47 -0
  113. package/dist/_dts/media-core/src/mediaSettingsState.d.ts +3 -0
  114. package/dist/_dts/media-core/src/portableMediaReferences.d.ts +38 -0
  115. package/dist/_dts/media-core/src/uploadVerificationContract.d.ts +28 -0
  116. package/dist/_dts/media-core/src/videoAssetRepair.d.ts +38 -0
  117. package/dist/_dts/media-editor/src/mediaEditorDebug.d.ts +1 -0
  118. package/dist/_dts/path-utils/src/index.d.ts +8 -0
  119. package/dist/_dts/path-utils/src/redirectPaths.d.ts +26 -0
  120. package/dist/_dts/path-utils/src/safeAppPath.d.ts +26 -0
  121. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeButton.d.ts +2 -1
  122. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +4 -0
  123. package/dist/_dts/preview-next/src/client/preview/previewDocumentFrame.d.ts +31 -0
  124. package/dist/_dts/sdk/src/client/error.d.ts +3 -0
  125. package/dist/_dts/sdk/src/client/index.d.ts +2 -2
  126. package/dist/_dts/sdk/src/client/types.d.ts +37 -19
  127. package/dist/_dts/sdk/src/contracts/theme.d.ts +1 -1
  128. package/dist/_dts/sdk/src/index.d.ts +2 -2
  129. package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +16 -16
  130. package/dist/_dts/sdk/src/next/content-load-failure.d.ts +51 -0
  131. package/dist/_dts/sdk/src/next/index.d.ts +2 -1
  132. package/dist/_dts/sdk/src/next/types.d.ts +19 -0
  133. package/dist/_dts/sdk/src/portal/redirects.d.ts +1 -1
  134. package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +2 -2
  135. package/dist/_dts/sdk/src/routing/index.d.ts +3 -2
  136. package/dist/_dts/sdk/src/routing/resolvePageContent.d.ts +71 -6
  137. package/dist/_dts/sdk/src/version.d.ts +1 -1
  138. package/dist/_dts/site-commands/src/commands.d.ts +12 -12
  139. package/dist/_dts/site-commands/src/index.d.ts +1 -0
  140. package/dist/_dts/site-commands/src/pagePaths.d.ts +6 -0
  141. package/dist/_dts/theme-core/src/accordions/siteStyleDefaults.d.ts +26 -0
  142. package/dist/_dts/theme-core/src/accordions/types.d.ts +1 -0
  143. package/dist/_dts/theme-core/src/blocks/vars/index.d.ts +1 -0
  144. package/dist/_dts/theme-core/src/fonts/index.d.ts +1 -0
  145. package/dist/_dts/theme-core/src/fonts/uploadFormat.d.ts +44 -0
  146. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  147. package/dist/_dts/theme-core/src/index.d.ts +3 -1
  148. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +63 -51
  149. package/dist/_dts/theme-core/src/navigation/generateNavLinkCSS.d.ts +6 -1
  150. package/dist/_dts/theme-core/src/navigation/types.d.ts +12 -0
  151. package/dist/_dts/theme-core/src/palette/variants/types.d.ts +3 -3
  152. package/dist/_dts/theme-core/src/runtime/themeCssVarNames.d.ts +7 -0
  153. package/dist/_dts/theme-core/src/schema.d.ts +90 -48
  154. package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +214 -34
  155. package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +5 -2
  156. package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +214 -34
  157. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +25 -1
  158. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +35 -7
  159. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -4
  160. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +96 -34
  161. package/dist/_dts/theme-core/src/site-styles/rawStyleFields.d.ts +4 -2
  162. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +9 -1
  163. package/dist/_dts/theme-core/src/site-styles/types.d.ts +27 -2
  164. package/dist/_dts/theme-core/src/siteChrome.d.ts +17 -34
  165. package/dist/_dts/theme-core/src/siteChromeOverlayClearance.d.ts +22 -0
  166. package/dist/_dts/theme-core/src/siteChromePlacement.d.ts +22 -0
  167. package/dist/_dts/theme-core/src/siteChromePlanning.d.ts +32 -0
  168. package/dist/_dts/theme-core/src/tokens/themeColorTokens.d.ts +2 -2
  169. package/dist/{chunk-EAWHBECW.mjs → chunk-F7RTCZYN.mjs} +229 -50
  170. package/dist/{chunk-GSQX43EZ.mjs → chunk-NIDXI46P.mjs} +22 -41
  171. package/dist/{chunk-WLQBJN2Z.mjs → chunk-OECWLDHN.mjs} +4538 -1911
  172. package/dist/{chunk-VX7B5VAC.mjs → chunk-SVMMM2NA.mjs} +8 -0
  173. package/dist/{chunk-6SMUFTXD.mjs → chunk-SXOLGNMX.mjs} +1 -1
  174. package/dist/{chunk-ANKDYZ2E.mjs → chunk-TXDES5P2.mjs} +2 -2
  175. package/dist/cli/index.mjs +2036 -594
  176. package/dist/client/{accordion-RZMQSYLR.mjs → accordion-EVDEOUPR.mjs} +2 -2
  177. package/dist/client/{bookingForm-NF4ASVNV.mjs → bookingForm-DIHBLC64.mjs} +27 -30
  178. package/dist/client/bookings.mjs +3707 -259
  179. package/dist/client/{carousel-LDX47ZIK.mjs → carousel-FEBQHIWI.mjs} +3 -4
  180. package/dist/client/{cart-RGXDS5F4.mjs → cart-7CKSXAE4.mjs} +8 -8
  181. package/dist/client/{checkout-P7WWSNNY.mjs → checkout-WKYCANLV.mjs} +8 -8
  182. package/dist/client/{chunk-JNC7CGHX.mjs → chunk-2SAVKN2M.mjs} +2 -2
  183. package/dist/client/{chunk-TQ5MSPDX.mjs → chunk-36WJCERQ.mjs} +1 -1
  184. package/dist/client/{chunk-R56FQ3RR.mjs → chunk-65F47D7Y.mjs} +280 -71
  185. package/dist/client/{chunk-L3DNHIJX.mjs → chunk-GUK2FPXQ.mjs} +23 -45
  186. package/dist/client/{chunk-PMAIXMAB.mjs → chunk-IVNCUVAV.mjs} +26 -21
  187. package/dist/client/{chunk-II7O4XN3.mjs → chunk-OFMSCGNY.mjs} +2 -2
  188. package/dist/client/chunk-PD6NBCEY.mjs +66 -0
  189. package/dist/client/{chunk-GMVTOKYG.mjs → chunk-RV6FX7UH.mjs} +510 -64
  190. package/dist/client/{chunk-E2TDNXCL.mjs → chunk-RZDWX7QW.mjs} +2 -1
  191. package/dist/client/{chunk-M3L3KYYR.mjs → chunk-UDNSI5PY.mjs} +12 -0
  192. package/dist/client/{chunk-JEZECJ3W.mjs → chunk-VPPMNXCF.mjs} +129 -3
  193. package/dist/client/{chunk-UFSWADAO.mjs → chunk-YDSEG6GZ.mjs} +5 -66
  194. package/dist/client/client.mjs +8983 -6152
  195. package/dist/client/{courseRegistration-7F65K5ZR.mjs → courseRegistration-5QF2PHKM.mjs} +14 -11
  196. package/dist/client/{eventCalendar-GLSC5KTL.mjs → eventCalendar-4ZOSETDU.mjs} +9 -9
  197. package/dist/client/{eventCombined-ZHK4WKUR.mjs → eventCombined-WQGU7JUX.mjs} +9 -9
  198. package/dist/client/{eventDetails-E3PJYBIN.mjs → eventDetails-AYWVUJ5Y.mjs} +9 -9
  199. package/dist/client/{eventListing-EMS3WC3E.mjs → eventListing-NT7C6UT5.mjs} +9 -9
  200. package/dist/client/{eventRegistration-NZOTVNPI.mjs → eventRegistration-OH24F4ZJ.mjs} +9 -9
  201. package/dist/client/{form-ETFZFATW.mjs → form-7L42SRBB.mjs} +6 -6
  202. package/dist/client/{headerSection-4LBP7ULT.mjs → headerSection-OZRZNZ52.mjs} +3 -3
  203. package/dist/client/hooks.mjs +1388 -427
  204. package/dist/client/{locationMap-5M655YSJ.mjs → locationMap-ZBXRPQ7C.mjs} +2 -2
  205. package/dist/client/{newsletterForm-QOUYW44O.mjs → newsletterForm-SNAGFF2I.mjs} +3 -3
  206. package/dist/client/{productDetail-O4DOCWQG.mjs → productDetail-I46BOFGV.mjs} +8 -8
  207. package/dist/client/{productList-A5RO5WIS.mjs → productList-BOYHTYI6.mjs} +8 -8
  208. package/dist/client/rendering/client.mjs +7090 -2645
  209. package/dist/client/rendering/islands.mjs +19 -19
  210. package/dist/client/rendering.mjs +7395 -4767
  211. package/dist/client/{shop-L4MZH4I2.mjs → shop-XTXPZTKR.mjs} +8 -8
  212. package/dist/preview-next/before-render.mjs +8 -0
  213. package/dist/preview-next/client/runtime.mjs +5 -5
  214. package/dist/preview-next/editor-chrome.css +10 -0
  215. package/dist/preview-next/middleware.mjs +8 -0
  216. package/dist/{sdk-runtime-Q6MTR4KL.mjs → sdk-runtime-ZJLKC6DR.mjs} +6 -6
  217. package/dist/server/components.mjs +4175 -2480
  218. package/dist/server/config-validation.mjs +1619 -658
  219. package/dist/server/config.mjs +1619 -658
  220. package/dist/server/data.mjs +1388 -427
  221. package/dist/server/index.mjs +488 -246
  222. package/dist/server/next.mjs +5607 -3354
  223. package/dist/server/page-converter.mjs +912 -259
  224. package/dist/server/prebuild.mjs +1 -1
  225. package/dist/server/rendering/server.mjs +4176 -2481
  226. package/dist/server/rendering.mjs +4194 -2486
  227. package/dist/server/routing.mjs +2078 -639
  228. package/dist/server/server.mjs +1886 -685
  229. package/dist/server/theme-bridge.mjs +4441 -1300
  230. package/dist/server/theme.mjs +89 -12
  231. package/dist/styles/index.css +1576 -1083
  232. package/package.json +2 -1
  233. package/dist/SdkPreviewModeRuntime-5FS5E6BI.mjs +0 -8
  234. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/DiscountCodeSection.d.ts +0 -7
  235. package/dist/_dts/preview-next/src/client/widgets/PreviewMediaField.d.ts +0 -4
  236. package/dist/client/chunk-OJPZEZU2.mjs +0 -31
  237. package/dist/client/chunk-RTZ3JKKX.mjs +0 -178
@@ -0,0 +1,79 @@
1
+ import { type AppointmentResourceId, type StaffMemberId } from "../../core/src/index";
2
+ import { type StaffOperationalCapability } from "./accessAdmin";
3
+ import { type SiteRole } from "./siteMembers";
4
+ export type { StaffOperationalCapability };
5
+ export type StaffScope = Readonly<{
6
+ kind: "none";
7
+ }> | Readonly<{
8
+ kind: "staff_setup_required";
9
+ reason: "missing_staff_member" | "missing_capabilities";
10
+ }> | Readonly<{
11
+ kind: "appointments";
12
+ staffMemberId: StaffMemberId;
13
+ }> | Readonly<{
14
+ kind: "event_ops_only";
15
+ staffMemberId: StaffMemberId;
16
+ }> | Readonly<{
17
+ kind: "hybrid";
18
+ staffMemberId: StaffMemberId;
19
+ }>;
20
+ export type StaffMembershipInput = Readonly<{
21
+ id?: string;
22
+ membershipRole: SiteRole | null;
23
+ linkedStaffMemberId: string | null;
24
+ staffCapabilities?: readonly StaffOperationalCapability[] | null;
25
+ }>;
26
+ export type StaffSiteHomeDestination = Readonly<{
27
+ kind: "staff_appointments";
28
+ }> | Readonly<{
29
+ kind: "ops_site_events";
30
+ }> | Readonly<{
31
+ kind: "dashboard_site_home";
32
+ }>;
33
+ export type SiteListingDestination = StaffSiteHomeDestination | Readonly<{
34
+ kind: "dashboard_site_open";
35
+ }>;
36
+ export type SiteListingNavigationPlan = Readonly<{
37
+ canUseDashboard: boolean;
38
+ primaryDestination: SiteListingDestination;
39
+ manageDestination: SiteListingDestination;
40
+ manageLabel: "Manage" | "Appointments" | "Ops";
41
+ }>;
42
+ export type OpsLandingDestination = Readonly<{
43
+ kind: "ops_site_events";
44
+ siteId: string;
45
+ }> | Readonly<{
46
+ kind: "ops_home";
47
+ }>;
48
+ export type LinkedAppointmentIdentity = Readonly<{
49
+ kind: "none";
50
+ }> | Readonly<{
51
+ kind: "linked";
52
+ staffMemberId: StaffMemberId;
53
+ resourceId: AppointmentResourceId;
54
+ }>;
55
+ export declare function roleAtLeast(role: SiteRole, minimum: SiteRole): boolean;
56
+ export declare function roleAtLeastOrNone(role: SiteRole | null | undefined, minimum: SiteRole): boolean;
57
+ export declare function appointmentResourceIdFromStaffMemberId(staffMemberId: StaffMemberId): AppointmentResourceId;
58
+ export declare function deriveStaffScope(input: StaffMembershipInput): StaffScope;
59
+ export declare function isStaffScoped(scope: StaffScope): boolean;
60
+ export declare function isTeamMemberScope(scope: StaffScope): boolean;
61
+ export declare function hasAppointmentStaffAccess(scope: StaffScope): boolean;
62
+ export declare function hasEventOpsAccess(scope: StaffScope): boolean;
63
+ export declare function getLinkedStaffMemberId(scope: StaffScope): StaffMemberId | null;
64
+ export declare function getOwnAppointmentResourceId(scope: StaffScope): AppointmentResourceId | null;
65
+ export declare function canAccessOwnAppointmentResource(scope: StaffScope, resourceId: string | AppointmentResourceId): boolean;
66
+ export declare function deriveLinkedAppointmentIdentity(input: Readonly<{
67
+ membershipRole: SiteRole | null;
68
+ linkedStaffMemberId: string | null;
69
+ }>): LinkedAppointmentIdentity;
70
+ export declare function getIdentityStaffMemberId(identity: LinkedAppointmentIdentity): StaffMemberId | null;
71
+ export declare function getIdentityStaffMemberIdValue(identity: LinkedAppointmentIdentity): string | null;
72
+ export declare function getIdentityAppointmentResourceId(identity: LinkedAppointmentIdentity): AppointmentResourceId | null;
73
+ export declare function getIdentityAppointmentResourceIdValue(identity: LinkedAppointmentIdentity): string | null;
74
+ export declare function isLinkedAppointmentResource(identity: LinkedAppointmentIdentity, resourceId: AppointmentResourceId): boolean;
75
+ export declare function deriveStaffSiteHomeDestination(staffScope: StaffScope): StaffSiteHomeDestination;
76
+ export declare function isEventOpsOnlyUser(sites: readonly StaffMembershipInput[]): boolean;
77
+ export declare function deriveSiteListingNavigationPlan(site: StaffMembershipInput): SiteListingNavigationPlan;
78
+ export declare function shouldRedirectStaffScopeToOps(staffScope: StaffScope): boolean;
79
+ export declare function deriveOpsLandingDestination(sites: readonly StaffMembershipInput[]): OpsLandingDestination;
@@ -3,7 +3,9 @@ export type { AccessPolicyContract, AccessPolicyTag, CreateMediaAssetBody, Entit
3
3
  export type { AnalyticsPreset, AnalyticsReferrer, AnalyticsReportFilters, AnalyticsReportQuery, AnalyticsReportResponse, AnalyticsSeriesPoint, AnalyticsTopPage, AnalyticsTotals, } from "./analytics";
4
4
  export type { AIChatMessage, AiBriefTurn, JsonPrimitive, JsonValue, MediaUsageCheckItem, MediaUsageCheckResponse, MediaUsageLocation, } from "./shared-contracts";
5
5
  export type * from "./accessAdmin";
6
- export { STAFF_OPERATIONAL_CAPABILITIES } from "./accessAdmin";
6
+ export { STAFF_OPERATIONAL_CAPABILITIES, getDefaultStaffCapabilities, } from "./accessAdmin";
7
+ export type * from "./staffAccess";
8
+ export { appointmentResourceIdFromStaffMemberId, canAccessOwnAppointmentResource, deriveLinkedAppointmentIdentity, deriveOpsLandingDestination, deriveSiteListingNavigationPlan, deriveStaffScope, deriveStaffSiteHomeDestination, getIdentityAppointmentResourceId, getIdentityAppointmentResourceIdValue, getIdentityStaffMemberId, getIdentityStaffMemberIdValue, getLinkedStaffMemberId, getOwnAppointmentResourceId, hasAppointmentStaffAccess, hasEventOpsAccess, isEventOpsOnlyUser, isLinkedAppointmentResource, isStaffScoped, isTeamMemberScope, roleAtLeast, roleAtLeastOrNone, shouldRedirectStaffScopeToOps, } from "./staffAccess";
7
9
  export type * from "./aiEndpoints";
8
10
  export type * from "./apiEndpointTypes";
9
11
  export type * from "./bookingAdjustments";
@@ -0,0 +1,21 @@
1
+ import type { RiverbankSiteConfig, SdkWorkflowConfig } from "../sdkContracts";
2
+ export type EntryDraftUpdatedWorkflowTriggerSource = Readonly<{
3
+ type: "entry.draft.updated";
4
+ changedFields: readonly string[];
5
+ dedupeKey: string;
6
+ }>;
7
+ export type WorkflowTriggerSource = Readonly<{
8
+ type: "manual";
9
+ }> | EntryDraftUpdatedWorkflowTriggerSource;
10
+ export type AutomaticWorkflowCandidate = Readonly<{
11
+ workflow: SdkWorkflowConfig;
12
+ trigger: EntryDraftUpdatedWorkflowTriggerSource;
13
+ }>;
14
+ export type PlanEntryDraftUpdatedWorkflowTriggersInput = Readonly<{
15
+ sdkConfig: RiverbankSiteConfig | null | undefined;
16
+ contentType: string;
17
+ previousDraftContent: Record<string, unknown> | null | undefined;
18
+ nextDraftContent: Record<string, unknown>;
19
+ knownFieldIds?: readonly string[];
20
+ }>;
21
+ export declare function planEntryDraftUpdatedWorkflowTriggers(input: PlanEntryDraftUpdatedWorkflowTriggersInput): readonly AutomaticWorkflowCandidate[];
@@ -14,7 +14,10 @@ export type SiteChromeRenderModel = Readonly<{
14
14
  header: SiteChromeBlockRenderSpec;
15
15
  footer: SiteChromeBlockRenderSpec;
16
16
  }>;
17
- export declare function renderSiteChromeBlock(model: SiteChromeRenderModel, surface: 'header' | 'footer', theme: Theme): ReactNode;
17
+ export type SiteChromeBlockRenderOptions = Readonly<{
18
+ themeConfigOverrideMode?: 'apply' | 'ignore';
19
+ }>;
20
+ export declare function renderSiteChromeBlock(model: SiteChromeRenderModel, surface: 'header' | 'footer', theme: Theme, options?: SiteChromeBlockRenderOptions): ReactNode;
18
21
  export declare function SiteChromeBlockRenderer({ model, surface, theme, }: {
19
22
  model: SiteChromeRenderModel;
20
23
  surface: 'header' | 'footer';
@@ -13,6 +13,17 @@ export type CustomBlockManifestSource = {
13
13
  } | {
14
14
  kind: 'managed-database';
15
15
  };
16
+ export type CustomBlockSourcePolicy = {
17
+ kind: 'canonical-db-fallback-sdk';
18
+ };
19
+ export type CustomBlockConflictReason = 'db-canonical-sdk-fallback';
20
+ export type CustomBlockRegistryConflict = {
21
+ kind: 'conflict';
22
+ blockKind: `custom.${string}`;
23
+ winner: CustomBlockManifestSource;
24
+ loser: CustomBlockManifestSource;
25
+ reason: CustomBlockConflictReason;
26
+ };
16
27
  export type CustomBlockRegistryEntry = {
17
28
  manifest: SdkCustomBlock;
18
29
  source: CustomBlockManifestSource;
@@ -25,14 +36,22 @@ export type ResolvedCustomBlockManifest = {
25
36
  };
26
37
  export type CustomBlockRegistry = {
27
38
  entries: readonly ResolvedCustomBlockManifest[];
39
+ conflicts: readonly CustomBlockRegistryConflict[];
28
40
  findManifest: (blockKind: string) => ResolvedCustomBlockManifest | undefined;
29
41
  };
30
42
  export type CustomBlockRegistryInput = {
31
43
  sdkConfig?: SdkConfigForBlockPicker | null;
32
44
  customBlocks?: readonly CustomBlockRegistryEntry[];
45
+ policy?: CustomBlockSourcePolicy;
33
46
  onConflict?: (message: string) => void;
34
47
  };
48
+ export type CustomBlockRegistryResolutionPlan = {
49
+ policy: CustomBlockSourcePolicy;
50
+ entries: readonly ResolvedCustomBlockManifest[];
51
+ conflicts: readonly CustomBlockRegistryConflict[];
52
+ };
35
53
  declare function transformToBlockDescriptor(sdkBlock: SdkCustomBlock, source?: BlockDescriptor['source']): BlockDescriptor;
36
- export declare function createCustomBlockRegistry({ sdkConfig, customBlocks, onConflict, }: CustomBlockRegistryInput): CustomBlockRegistry;
54
+ export declare function planCustomBlockRegistryResolution({ sdkConfig, customBlocks, policy, }: Omit<CustomBlockRegistryInput, 'onConflict'>): CustomBlockRegistryResolutionPlan;
55
+ export declare function createCustomBlockRegistry({ sdkConfig, customBlocks, policy, onConflict, }: CustomBlockRegistryInput): CustomBlockRegistry;
37
56
  export declare function mergeBlockDescriptorsWithRegistry(systemBlocks: readonly BlockDescriptor[], registry: CustomBlockRegistry, onConflict?: (message: string) => void): BlockDescriptor[];
38
57
  export { transformSdkBlockToManifest, transformSdkBlockToDefinition, transformToBlockDescriptor, };
@@ -1,6 +1,6 @@
1
1
  export { default as PageRenderer } from './PageRenderer';
2
- export { createCustomBlockRegistry, mergeBlockDescriptorsWithRegistry, transformToBlockDescriptor, } from './customBlockRegistry';
3
- export type { CustomBlockManifestSource, CustomBlockRegistry, CustomBlockRegistryEntry, ResolvedCustomBlockManifest, SdkConfigForBlockPicker, } from './customBlockRegistry';
2
+ export { createCustomBlockRegistry, mergeBlockDescriptorsWithRegistry, planCustomBlockRegistryResolution, transformToBlockDescriptor, } from './customBlockRegistry';
3
+ export type { CustomBlockConflictReason, CustomBlockManifestSource, CustomBlockRegistry, CustomBlockRegistryConflict, CustomBlockRegistryEntry, CustomBlockRegistryResolutionPlan, CustomBlockSourcePolicy, ResolvedCustomBlockManifest, SdkConfigForBlockPicker, } from './customBlockRegistry';
4
4
  export type { BlockOverrideComponent, BlockOverrideProps, BlockOverrides, EntrySubrouteContextData, OccurrenceContextData, SdkConfigForRenderer, } from './PageRenderer';
5
5
  export * from './subroutes';
6
6
  export * from './primitives/content/components/Button';
@@ -30,6 +30,7 @@ export * from '../../theme-core/src/runtime/buildThemeRuntime';
30
30
  export * from '../../theme-core/src/runtime/buildThemeRuntimeFromBridge';
31
31
  export * from '../../theme-core/src/siteChrome';
32
32
  export * from '../../theme-core/src/blocks/index';
33
+ export { EDITABLE_SURFACE_FORWARDING_PROP, markEditableSurfaceForwarding, type EditableSurfaceForwardingComponent, } from './system/runtime/header/shared';
33
34
  export * from './system';
34
35
  export { SUPPORTED_LOADER_ENDPOINTS, isSupportedLoaderEndpoint, type SupportedLoaderEndpoint, } from './system/data';
35
36
  export type { AuthoredLinkValue, LinkValue, InternalLinkValue, InternalResolvedLinkValue, InternalRouteOnlyLinkValue, ExternalLinkValue, CustomLinkValue, PageLinkValue, EntryLinkValue, } from './system/types/link';