@riverbankcms/sdk 0.146.0 → 0.148.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 (466) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/{PreviewEditorSidebar-kg2r2Fyi.mjs → PreviewEditorSidebar-DvEPG3Z2.mjs} +249 -172
  3. package/dist/{PreviewEditorUI-sWMLp5dT.mjs → PreviewEditorUI-D6eb6fkx.mjs} +68 -60
  4. package/dist/{PreviewQueryProvider-Cg51xq1w.mjs → PreviewQueryProvider-5znTyJuz.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-h2ti3Hch.mjs → SdkPreviewModeRuntime-DJ6utQ_R.mjs} +1180 -475
  6. package/dist/{SiteChromeCustomizeContext-DEACFH9m.mjs → SiteChromeCustomizeContext-CFJYh6vo.mjs} +199078 -193767
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +198 -33
  8. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +18 -3
  9. package/dist/_dts/api/src/accessAdmin.d.ts +0 -4
  10. package/dist/_dts/api/src/accountApi.d.ts +6 -6
  11. package/dist/_dts/api/src/admin.d.ts +22 -22
  12. package/dist/_dts/api/src/aiPatch.d.ts +2 -2
  13. package/dist/_dts/api/src/aiPlayground.d.ts +1 -0
  14. package/dist/_dts/api/src/analytics.d.ts +2 -2
  15. package/dist/_dts/api/src/apiEndpointTypes.d.ts +2 -0
  16. package/dist/_dts/api/src/appointmentSetup.d.ts +2 -2
  17. package/dist/_dts/api/src/auth.d.ts +10 -10
  18. package/dist/_dts/api/src/availability.d.ts +6 -6
  19. package/dist/_dts/api/src/billing.d.ts +42 -15
  20. package/dist/_dts/api/src/billingEndpointDefinitions.d.ts +8 -0
  21. package/dist/_dts/api/src/billingEndpointTypes.d.ts +15 -6
  22. package/dist/_dts/api/src/blocks.d.ts +15 -14
  23. package/dist/_dts/api/src/blocksKeys.d.ts +2 -0
  24. package/dist/_dts/api/src/bookingConfig.d.ts +16 -2
  25. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +4 -13
  26. package/dist/_dts/api/src/bookingOperations.d.ts +6 -48
  27. package/dist/_dts/api/src/bookingPeople.d.ts +92 -0
  28. package/dist/_dts/api/src/bookingPeopleEndpointDefinitions.d.ts +38 -0
  29. package/dist/_dts/api/src/bookingRecords.d.ts +12 -49
  30. package/dist/_dts/api/src/bookingSettingsSections.d.ts +1 -1
  31. package/dist/_dts/api/src/bookings.d.ts +8 -7
  32. package/dist/_dts/api/src/calendar.d.ts +9 -9
  33. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +7 -6
  34. package/dist/_dts/api/src/common/envelope.d.ts +2 -2
  35. package/dist/_dts/api/src/content-editor.d.ts +2 -2
  36. package/dist/_dts/api/src/contentEntries.d.ts +17 -48
  37. package/dist/_dts/api/src/contentRuntime.d.ts +51 -37
  38. package/dist/_dts/api/src/contentTypes.d.ts +11 -11
  39. package/dist/_dts/api/src/contentVersionHistoryClient.d.ts +6 -6
  40. package/dist/_dts/api/src/documentLifecycle.d.ts +67 -0
  41. package/dist/_dts/api/src/domains.d.ts +16 -16
  42. package/dist/_dts/api/src/editLeaseEndpoints.d.ts +72 -0
  43. package/dist/_dts/api/src/emailSettings.d.ts +4 -4
  44. package/dist/_dts/api/src/endpoints.d.ts +725 -607
  45. package/dist/_dts/api/src/eventEmailTemplates.d.ts +2 -2
  46. package/dist/_dts/api/src/eventManagementContracts.d.ts +48 -8
  47. package/dist/_dts/api/src/eventManagementEndpointDefinitions.d.ts +1 -9
  48. package/dist/_dts/api/src/eventPageWords.d.ts +7 -12
  49. package/dist/_dts/api/src/footerSettings.d.ts +6 -6
  50. package/dist/_dts/api/src/index.d.ts +8 -6
  51. package/dist/_dts/api/src/indexCoreTypes.d.ts +2 -1
  52. package/dist/_dts/api/src/indexExtendedTypes.d.ts +1 -1
  53. package/dist/_dts/api/src/launchReadiness.d.ts +1 -6
  54. package/dist/_dts/api/src/mailingListIntegration.d.ts +6 -0
  55. package/dist/_dts/api/src/navigation/dashboardBookingsNav.d.ts +1 -1
  56. package/dist/_dts/api/src/navigation.d.ts +5 -5
  57. package/dist/_dts/api/src/newsletterEndpointDefinitions.d.ts +15 -0
  58. package/dist/_dts/api/src/occurrenceScheduling.d.ts +19 -0
  59. package/dist/_dts/api/src/pageSurfaceEditorEndpoints.d.ts +55 -0
  60. package/dist/_dts/api/src/pageSurfaceEndpoints.d.ts +28 -7
  61. package/dist/_dts/api/src/pages.d.ts +7 -7
  62. package/dist/_dts/api/src/performance.d.ts +1 -1
  63. package/dist/_dts/api/src/public/index.d.ts +1 -1
  64. package/dist/_dts/api/src/publicAppointmentBookingContracts.d.ts +50 -0
  65. package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +4 -0
  66. package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +7 -0
  67. package/dist/_dts/api/src/redirects.d.ts +3 -3
  68. package/dist/_dts/api/src/request.d.ts +10 -1
  69. package/dist/_dts/api/src/resources.d.ts +4 -4
  70. package/dist/_dts/api/src/routes.d.ts +8 -3
  71. package/dist/_dts/api/src/sdk-event-upsert.d.ts +15 -1
  72. package/dist/_dts/api/src/sdkBlockUpsertContracts.d.ts +21 -0
  73. package/dist/_dts/api/src/sdkContracts.d.ts +5 -28
  74. package/dist/_dts/api/src/sdkCourseBooking.d.ts +4 -4
  75. package/dist/_dts/api/src/sdkEventEndpointDefinitions.d.ts +1 -1
  76. package/dist/_dts/api/src/sdkEventOccurrenceRequestContracts.d.ts +43 -0
  77. package/dist/_dts/api/src/sdkManagedEventContracts.d.ts +4 -2
  78. package/dist/_dts/api/src/sdkPullEventContracts.d.ts +8 -1
  79. package/dist/_dts/api/src/seo.d.ts +4 -4
  80. package/dist/_dts/api/src/services.d.ts +4 -4
  81. package/dist/_dts/api/src/siteLifecycleEndpoints.d.ts +61 -0
  82. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +19 -25
  83. package/dist/_dts/api/src/siteMembers.d.ts +10 -10
  84. package/dist/_dts/api/src/siteOnboarding.d.ts +16 -14
  85. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +7 -3
  86. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +5 -12
  87. package/dist/_dts/api/src/siteRuntimeEntry.d.ts +31 -0
  88. package/dist/_dts/billing/src/checkout/platform.d.ts +77 -0
  89. package/dist/_dts/billing/src/components/index.d.ts +25 -40
  90. package/dist/_dts/billing/src/membership/index.d.ts +1 -3
  91. package/dist/_dts/billing/src/plans/entitlements.d.ts +80 -0
  92. package/dist/_dts/billing/src/plans/registry.d.ts +16 -16
  93. package/dist/_dts/billing/src/plans/standing.d.ts +9 -2
  94. package/dist/_dts/billing/src/plans/types.d.ts +5 -15
  95. package/dist/_dts/billing/src/site-arrangements.d.ts +2 -2
  96. package/dist/_dts/billing/src/subscriptions/standingEvidence.d.ts +2 -4
  97. package/dist/_dts/billing/src/subscriptions/store.d.ts +17 -11
  98. package/dist/_dts/block-form/src/backend/store-backend.d.ts +6 -7
  99. package/dist/_dts/block-form/src/backend/types.d.ts +7 -0
  100. package/dist/_dts/block-form/src/widgets/FieldFrame.d.ts +3 -1
  101. package/dist/_dts/blocks/src/PageRenderer.d.ts +3 -4
  102. package/dist/_dts/blocks/src/client/events.d.ts +3 -0
  103. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +24 -4
  104. package/dist/_dts/blocks/src/index.d.ts +1 -1
  105. package/dist/_dts/blocks/src/pageRenderAdmission.d.ts +18 -9
  106. package/dist/_dts/blocks/src/pageRendererContracts.d.ts +4 -0
  107. package/dist/_dts/blocks/src/portal/types.d.ts +0 -2
  108. package/dist/_dts/blocks/src/system/blocks/contact-newsletter.d.ts +2 -1
  109. package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +3 -1
  110. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +4 -4
  111. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +6 -1
  112. package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +4 -1
  113. package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +2 -2
  114. package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
  115. package/dist/_dts/blocks/src/system/runtime/api/types/appointments.d.ts +6 -0
  116. package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +18 -0
  117. package/dist/_dts/blocks/src/system/runtime/api/types/portal.d.ts +6 -0
  118. package/dist/_dts/blocks/src/system/runtime/api/types/shop.d.ts +4 -0
  119. package/dist/_dts/blocks/src/system/runtime/components/booking/SuccessMessage.d.ts +4 -1
  120. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +36 -6
  121. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +18 -3
  122. package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessBookingFlow.d.ts +11 -0
  123. package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +2 -0
  124. package/dist/_dts/blocks/src/system/runtime/hooks/usePaymentVerification.d.ts +2 -1
  125. package/dist/_dts/blocks/src/system/runtime/hooks/usePolling.d.ts +7 -48
  126. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.checkout-return-context.d.ts +7 -0
  127. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.completion.d.ts +11 -0
  128. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.headless.state.d.ts +13 -0
  129. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.interactive.d.ts +28 -0
  130. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.mailing-list-choice.d.ts +5 -0
  131. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.mailing-list-state.d.ts +9 -0
  132. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.payment-confirmation.d.ts +13 -0
  133. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.reserved-fields.d.ts +1 -1
  134. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.server.d.ts +1 -1
  135. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.state.d.ts +17 -1
  136. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.submit-actions.d.ts +8 -0
  137. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.submit-handler.d.ts +9 -0
  138. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.submit-success.d.ts +9 -0
  139. package/dist/_dts/blocks/src/system/runtime/nodes/booking-runtime-sources.d.ts +4 -0
  140. package/dist/_dts/blocks/src/system/runtime/nodes/checkout.server.d.ts +2 -1
  141. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/AttendeeDetailsStep.d.ts +3 -0
  142. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationSurface.d.ts +2 -1
  143. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationWizard.d.ts +5 -0
  144. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/SuccessStep.d.ts +7 -1
  145. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +3 -0
  146. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/sessionStorage.d.ts +2 -0
  147. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +8 -0
  148. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +5 -5
  149. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +8 -0
  150. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +18 -5
  151. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +6 -0
  152. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/dates.d.ts +37 -3
  153. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.client.d.ts +1 -1
  154. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.d.ts +16 -1
  155. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCardPresentations.d.ts +13 -0
  156. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +5 -5
  157. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.block-submission.d.ts +2 -4
  158. package/dist/_dts/blocks/src/system/runtime/nodes/shared/MagicLinkForm.d.ts +1 -14
  159. package/dist/_dts/blocks/src/system/runtime/nodes/shared/MagicLinkForm.state.d.ts +12 -0
  160. package/dist/_dts/blocks/src/system/runtime/nodes/shop.interactive.d.ts +13 -0
  161. package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +2 -0
  162. package/dist/_dts/blocks/src/system/runtime/shared/components/BookingMailingListNote.d.ts +6 -0
  163. package/dist/_dts/blocks/src/system/runtime/shared/components/DemoBookingPortalAccess.d.ts +22 -0
  164. package/dist/_dts/blocks/src/system/runtime/shared/components/DemoPortalSignInLink.d.ts +4 -0
  165. package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +1 -0
  166. package/dist/_dts/blocks/src/system/runtime/shared/mailingListSignupCopy.d.ts +6 -0
  167. package/dist/_dts/blocks/src/system/runtime/shared/types.d.ts +1 -0
  168. package/dist/_dts/blocks/src/system/runtime/shared/utils/demoBookingPassStorage.d.ts +10 -0
  169. package/dist/_dts/blocks/src/system/runtime/shared/utils/demoPortalMagicLink.d.ts +29 -0
  170. package/dist/_dts/blocks/src/system/transforms/registry/_utils/surfaceForegroundStyles.d.ts +3 -2
  171. package/dist/_dts/blocks/src/system/transforms/registry/core.d.ts +2 -0
  172. package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +1 -3
  173. package/dist/_dts/commerce/src/purchase/event-registration-errors.d.ts +4 -0
  174. package/dist/_dts/content-editor/src/components/ContentFieldsForm.d.ts +2 -7
  175. package/dist/_dts/content-editor/src/controller/EditLeaseController.d.ts +39 -0
  176. package/dist/_dts/content-editor/src/controller/EditorWriteGate.d.ts +38 -0
  177. package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +25 -61
  178. package/dist/_dts/content-editor/src/controller/LinkedEntryLeaseBanner.d.ts +7 -0
  179. package/dist/_dts/content-editor/src/controller/LinkedEntryLeaseControllers.d.ts +14 -0
  180. package/dist/_dts/content-editor/src/controller/deriveEditorUnpublishedState.d.ts +6 -0
  181. package/dist/_dts/content-editor/src/controller/documentValueBaseline.d.ts +25 -0
  182. package/dist/_dts/content-editor/src/controller/editLeaseLossSignal.d.ts +6 -0
  183. package/dist/_dts/content-editor/src/controller/editLeaseNotice.d.ts +28 -0
  184. package/dist/_dts/content-editor/src/controller/editorClientId.d.ts +2 -0
  185. package/dist/_dts/content-editor/src/controller/editorEditability.d.ts +38 -0
  186. package/dist/_dts/content-editor/src/controller/editorLeaseParticipation.d.ts +34 -0
  187. package/dist/_dts/content-editor/src/controller/normalizedMetadataBaseline.d.ts +29 -0
  188. package/dist/_dts/content-editor/src/controller/pageSurfaceDocumentBaselines.d.ts +14 -0
  189. package/dist/_dts/content-editor/src/controller/pageSurfaceLifecycle.d.ts +11 -0
  190. package/dist/_dts/content-editor/src/controller/planDocumentBaselineRefresh.d.ts +19 -0
  191. package/dist/_dts/content-editor/src/controller/readDocumentLeaseBaselines.d.ts +19 -0
  192. package/dist/_dts/content-editor/src/controller/refreshDocumentLeaseBaseline.d.ts +12 -0
  193. package/dist/_dts/content-editor/src/controller/refreshLinkedEntry.d.ts +17 -0
  194. package/dist/_dts/content-editor/src/controller/replayRestoredEditorEffects.d.ts +2 -3
  195. package/dist/_dts/content-editor/src/controller/routeWrites.d.ts +26 -0
  196. package/dist/_dts/content-editor/src/controller/useAutosaveTriggers.d.ts +16 -17
  197. package/dist/_dts/content-editor/src/controller/useBlockedPublishPlan.d.ts +6 -2
  198. package/dist/_dts/content-editor/src/controller/useBlocksList.d.ts +3 -3
  199. package/dist/_dts/content-editor/src/controller/useEntryValueAutosaves.d.ts +21 -0
  200. package/dist/_dts/content-editor/src/controller/useInitialEditorUiStore.d.ts +24 -0
  201. package/dist/_dts/content-editor/src/controller/useServerBaselineReconciliation.d.ts +17 -0
  202. package/dist/_dts/content-editor/src/footerComposerPanelTypes.d.ts +1 -1
  203. package/dist/_dts/content-editor/src/hooks/applyBlockedPublishPlan.d.ts +5 -1
  204. package/dist/_dts/content-editor/src/hooks/blockDraftLifecycle.d.ts +8 -47
  205. package/dist/_dts/content-editor/src/hooks/editLeaseMachine.d.ts +120 -0
  206. package/dist/_dts/content-editor/src/hooks/publishability.d.ts +6 -10
  207. package/dist/_dts/content-editor/src/hooks/useAutosaveStatus.d.ts +3 -0
  208. package/dist/_dts/content-editor/src/hooks/useBlockAutosave.d.ts +5 -15
  209. package/dist/_dts/content-editor/src/hooks/useDebouncedLatestSave.d.ts +7 -5
  210. package/dist/_dts/content-editor/src/hooks/useEditLease.d.ts +28 -0
  211. package/dist/_dts/content-editor/src/hooks/useEntryActions.d.ts +25 -39
  212. package/dist/_dts/content-editor/src/hooks/useEntryMutations.d.ts +17 -19
  213. package/dist/_dts/content-editor/src/hooks/useLinkedEntryAutosave.d.ts +5 -8
  214. package/dist/_dts/content-editor/src/hooks/useValueAutosave.d.ts +64 -0
  215. package/dist/_dts/content-editor/src/hooks/validateBlocksForPublish.d.ts +0 -7
  216. package/dist/_dts/content-editor/src/index.d.ts +26 -7
  217. package/dist/_dts/content-editor/src/linkedEntries/domain.d.ts +12 -0
  218. package/dist/_dts/content-editor/src/linkedEntries/owner.d.ts +9 -0
  219. package/dist/_dts/content-editor/src/liveDrafts/draftProjection.d.ts +66 -0
  220. package/dist/_dts/content-editor/src/liveDrafts/linkedSaveHandovers.d.ts +37 -0
  221. package/dist/_dts/content-editor/src/liveDrafts/remoteDraftOverlay.d.ts +113 -0
  222. package/dist/_dts/content-editor/src/liveDrafts/useLiveDrafts.d.ts +32 -0
  223. package/dist/_dts/content-editor/src/liveDrafts/useRetentionTicks.d.ts +7 -0
  224. package/dist/_dts/content-editor/src/primitives/shared/activePreviewField.d.ts +6 -0
  225. package/dist/_dts/content-editor/src/primitives/shared/storeBinding.d.ts +1 -0
  226. package/dist/_dts/content-editor/src/services/contentEntryServices.d.ts +96 -19
  227. package/dist/_dts/content-editor/src/services/editorApiClient.d.ts +13 -0
  228. package/dist/_dts/content-editor/src/services/index.d.ts +2 -0
  229. package/dist/_dts/content-editor/src/services/pageSurfaceEditorServices.d.ts +23 -0
  230. package/dist/_dts/content-editor/src/sync/flushValues.d.ts +13 -0
  231. package/dist/_dts/content-editor/src/sync/lifecycleFailure.d.ts +51 -0
  232. package/dist/_dts/content-editor/src/sync/runLifecycle.d.ts +64 -0
  233. package/dist/_dts/content-editor/src/sync/schedulerValues.d.ts +27 -0
  234. package/dist/_dts/content-editor/src/sync/sendPlanning.d.ts +104 -0
  235. package/dist/_dts/content-editor/src/sync/valueSync.d.ts +114 -0
  236. package/dist/_dts/content-editor/src/ui/blockCollection.d.ts +8 -0
  237. package/dist/_dts/content-editor/src/ui/documentLifecycle.d.ts +18 -0
  238. package/dist/_dts/content-editor/src/ui/editorLeaseUiState.d.ts +7 -0
  239. package/dist/_dts/content-editor/src/ui/editorRefresh.d.ts +82 -0
  240. package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +102 -127
  241. package/dist/_dts/content-editor/src/ui/editorTransactionState.d.ts +1 -1
  242. package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +126 -72
  243. package/dist/_dts/content-editor/src/ui/editorValueSnapshot.d.ts +18 -0
  244. package/dist/_dts/content-editor/src/ui/serverBlockAdmission.d.ts +26 -0
  245. package/dist/_dts/content-editor/src/ui/stores/autosaveStore.d.ts +16 -27
  246. package/dist/_dts/content-editor/src/ui/stores/blockVersionsStore.d.ts +24 -0
  247. package/dist/_dts/content-editor/src/ui/stores/linkedEntryLeaseStore.d.ts +54 -0
  248. package/dist/_dts/content-editor/src/ui/stores/linkedSaveHandoversStore.d.ts +11 -0
  249. package/dist/_dts/content-editor/src/ui/stores/remoteDraftsStore.d.ts +10 -0
  250. package/dist/_dts/content-editor/src/ui/stores/types.d.ts +63 -3
  251. package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +2 -2
  252. package/dist/_dts/content-editor/src/useFooterNavigationLayout.d.ts +1 -1
  253. package/dist/_dts/content-model/src/content-types/builtin-schemas.d.ts +4 -4
  254. package/dist/_dts/content-model/src/content-types/builtins.d.ts +4 -4
  255. package/dist/_dts/content-model/src/definitions/shared.d.ts +11 -2
  256. package/dist/_dts/content-model/src/entry-slots/index.d.ts +1 -0
  257. package/dist/_dts/content-model/src/entry-slots/serializeAllowedBlocks.d.ts +2 -0
  258. package/dist/_dts/content-model/src/metadataConfig.d.ts +10 -38
  259. package/dist/_dts/content-model/src/templates/defaults.d.ts +0 -1
  260. package/dist/_dts/content-model/src/types.d.ts +0 -1
  261. package/dist/_dts/core/src/block-content-identity.d.ts +49 -1
  262. package/dist/_dts/core/src/branded.d.ts +12 -0
  263. package/dist/_dts/core/src/currency-format.d.ts +8 -2
  264. package/dist/_dts/core/src/demo-lifecycle-status.d.ts +2 -2
  265. package/dist/_dts/core/src/demo-warm-pool-target.d.ts +8 -0
  266. package/dist/_dts/core/src/edit-lease.d.ts +55 -0
  267. package/dist/_dts/core/src/editor-state.d.ts +38 -13
  268. package/dist/_dts/core/src/editor-value-sync.d.ts +79 -0
  269. package/dist/_dts/core/src/html-entities.d.ts +6 -0
  270. package/dist/_dts/core/src/index.d.ts +5 -1
  271. package/dist/_dts/core/src/mailing-list-runtime.d.ts +15 -0
  272. package/dist/_dts/core/src/mailing-list-setup.d.ts +2 -0
  273. package/dist/_dts/core/src/mailing-list-submission.d.ts +6 -0
  274. package/dist/_dts/core/src/navigation-portal-labels.d.ts +9 -0
  275. package/dist/_dts/core/src/participants.d.ts +0 -38
  276. package/dist/_dts/core/src/uuid.d.ts +7 -5
  277. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +261 -175
  278. package/dist/_dts/editor/src/EditorProvider.d.ts +5 -0
  279. package/dist/_dts/editor/src/chrome/EditorChrome.d.ts +14 -0
  280. package/dist/_dts/editor/src/chrome/EditorStatusBar.d.ts +1 -0
  281. package/dist/_dts/editor/src/chrome/statusBarPresentation.d.ts +0 -1
  282. package/dist/_dts/editor/src/index.d.ts +1 -1
  283. package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +10 -9
  284. package/dist/_dts/editor-blocks/src/BlockForm.d.ts +1 -1
  285. package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +1 -1
  286. package/dist/_dts/editor-blocks/src/block-editor/BlockCardFrame.d.ts +1 -1
  287. package/dist/_dts/editor-blocks/src/block-editor/BlockSettingsModal.d.ts +1 -1
  288. package/dist/_dts/editor-blocks/src/block-editor/actionPresentation.d.ts +1 -0
  289. package/dist/_dts/editor-blocks/src/block-editor/applyExtendedFieldDefaults.d.ts +3 -4
  290. package/dist/_dts/editor-blocks/src/block-editor/blockDraftBaselineSeed.d.ts +4 -8
  291. package/dist/_dts/editor-blocks/src/block-editor/editorBlockItem.d.ts +23 -0
  292. package/dist/_dts/editor-blocks/src/block-editor/generatedIconApplyCoordination.d.ts +2 -7
  293. package/dist/_dts/editor-blocks/src/block-editor/hooks/applyBlockStructureChange.d.ts +4 -0
  294. package/dist/_dts/editor-blocks/src/block-editor/hooks/buildInsertBlockHistoryCommand.d.ts +14 -5
  295. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockBaselineSync.d.ts +21 -19
  296. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockCreation.d.ts +2 -10
  297. package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockDuplication.d.ts +8 -16
  298. package/dist/_dts/editor-blocks/src/block-editor/owner.d.ts +6 -16
  299. package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +37 -9
  300. package/dist/_dts/editor-blocks/src/index.d.ts +2 -1
  301. package/dist/_dts/editor-blocks/src/widgets/entry-picker/loaders.d.ts +1 -1
  302. package/dist/_dts/editor-blocks/src/widgets/link/loaders.d.ts +1 -1
  303. package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/loaders.d.ts +1 -1
  304. package/dist/_dts/editor-blocks/src/widgets/reference/loaders.d.ts +1 -1
  305. package/dist/_dts/editor-blocks/src/widgets/site-option-picker/loaders.d.ts +3 -2
  306. package/dist/_dts/media-core/src/fileStorage.d.ts +4 -0
  307. package/dist/_dts/media-editor/src/context.d.ts +1 -1
  308. package/dist/_dts/media-editor/src/createMediaEditorProvider.d.ts +1 -2
  309. package/dist/_dts/media-editor/src/provider.d.ts +3 -2
  310. package/dist/_dts/media-react/src/hooks/internal/classification.d.ts +1 -1
  311. package/dist/_dts/media-react/src/hooks/useApiMediaUploader.d.ts +3 -1
  312. package/dist/_dts/preview-next/src/client/blocks/EditablePageRenderer.d.ts +7 -1
  313. package/dist/_dts/preview-next/src/client/blocks/composer/mergeDrafts.d.ts +8 -3
  314. package/dist/_dts/preview-next/src/client/blocks/composer/types.d.ts +10 -6
  315. package/dist/_dts/preview-next/src/client/blocks/linkedEntryRenderOverlay.d.ts +22 -2
  316. package/dist/_dts/preview-next/src/client/blocks/previewProjection/entryFieldRebinding.d.ts +13 -0
  317. package/dist/_dts/preview-next/src/client/blocks/previewProjection/index.d.ts +2 -1
  318. package/dist/_dts/preview-next/src/client/blocks/previewProjection/types.d.ts +11 -1
  319. package/dist/_dts/preview-next/src/client/blocks/renderPrecedence.d.ts +17 -0
  320. package/dist/_dts/preview-next/src/client/blocks/useLinkedSaveHandoverRetention.d.ts +20 -0
  321. package/dist/_dts/preview-next/src/client/index.d.ts +1 -1
  322. package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +2 -1
  323. package/dist/_dts/preview-next/src/client/preview/EntrySlotBlockEditorPanel.d.ts +2 -1
  324. package/dist/_dts/preview-next/src/client/preview/PreviewAccessBanners.d.ts +7 -0
  325. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +2 -1
  326. package/dist/_dts/preview-next/src/client/preview/PreviewEntryControllerProvider.d.ts +24 -14
  327. package/dist/_dts/preview-next/src/client/preview/PreviewLeaseEditingMode.d.ts +2 -0
  328. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +9 -2
  329. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +1 -0
  330. package/dist/_dts/preview-next/src/client/preview/previewCustomizeAutosave.d.ts +5 -0
  331. package/dist/_dts/preview-next/src/client/preview/previewCustomizeWorkflowState.d.ts +3 -4
  332. package/dist/_dts/preview-next/src/client/preview/sdkConfig.d.ts +1 -0
  333. package/dist/_dts/preview-next/src/client/preview/usePreviewCustomizeWorkflowState.d.ts +4 -0
  334. package/dist/_dts/realtime/src/client.d.ts +3 -0
  335. package/dist/_dts/realtime/src/draftChannel.d.ts +91 -0
  336. package/dist/_dts/realtime/src/drafts.d.ts +210 -0
  337. package/dist/_dts/realtime/src/index.d.ts +3 -0
  338. package/dist/_dts/realtime/src/leaseChangeSubscriptions.d.ts +8 -0
  339. package/dist/_dts/realtime/src/types.d.ts +113 -0
  340. package/dist/_dts/realtime/src/useDraftChannel.d.ts +34 -0
  341. package/dist/_dts/realtime/src/useSiteRealtimeReload.d.ts +27 -0
  342. package/dist/_dts/sdk/src/public-api/contracts.d.ts +6 -55
  343. package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +2 -0
  344. package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +2 -0
  345. package/dist/_dts/sdk/src/rendering/helpers/loadPage.d.ts +1 -1
  346. package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +4 -2
  347. package/dist/_dts/sdk/src/version.d.ts +1 -1
  348. package/dist/_dts/surfaces/src/index.d.ts +1 -0
  349. package/dist/_dts/theme-core/src/buttons/effects/types.d.ts +1 -1
  350. package/dist/_dts/theme-core/src/footer/effectiveNavLinkStyle.d.ts +13 -0
  351. package/dist/_dts/theme-core/src/footer/index.d.ts +1 -0
  352. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  353. package/dist/_dts/theme-core/src/header/effectiveNavLinkStyle.d.ts +17 -0
  354. package/dist/_dts/theme-core/src/header/generateHeaderLogoStyles.d.ts +15 -0
  355. package/dist/_dts/theme-core/src/header/generateHeaderNavLinkStyles.d.ts +4 -0
  356. package/dist/_dts/theme-core/src/header/index.d.ts +3 -0
  357. package/dist/_dts/theme-core/src/header/legacyNavLinkStyle.d.ts +1 -1
  358. package/dist/_dts/theme-core/src/header/openingForegroundProjection.d.ts +7 -0
  359. package/dist/_dts/theme-core/src/header/rootPaint.d.ts +4 -0
  360. package/dist/_dts/theme-core/src/navigation/effectPolicy.d.ts +38 -0
  361. package/dist/_dts/theme-core/src/navigation/generateNavLinkCSS.d.ts +4 -0
  362. package/dist/_dts/theme-core/src/navigation/types.d.ts +4 -0
  363. package/dist/_dts/theme-core/src/site-styles/accessibleSurfaces.d.ts +1 -1
  364. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +2 -2
  365. package/dist/_dts/theme-core/src/surfaces/foregroundContract.d.ts +7 -0
  366. package/dist/_dts/theme-core/src/surfaces/foregroundInteraction.d.ts +29 -22
  367. package/dist/_dts/theme-core/src/surfaces/foregroundRoles.d.ts +10 -2
  368. package/dist/_dts/theme-core/src/surfaces/resolveSurfaceForeground.d.ts +9 -0
  369. package/dist/_dts/theme-core/src/utils/cssDeclarations.d.ts +2 -0
  370. package/dist/_dts/ui/src/badge.d.ts +2 -1
  371. package/dist/_dts/ui/src/button.d.ts +1 -1
  372. package/dist/_dts/ui/src/combobox-keys.d.ts +23 -0
  373. package/dist/_dts/ui/src/combobox-rows.d.ts +34 -0
  374. package/dist/_dts/ui/src/combobox.d.ts +26 -1
  375. package/dist/_dts/ui/src/date-picker.d.ts +5 -8
  376. package/dist/_dts/ui/src/editor-item-card.d.ts +1 -0
  377. package/dist/_dts/ui/src/field-trigger.d.ts +39 -0
  378. package/dist/_dts/ui/src/fieldControl.d.ts +27 -0
  379. package/dist/_dts/ui/src/index.d.ts +4 -1
  380. package/dist/_dts/ui/src/native-select.d.ts +8 -0
  381. package/dist/_dts/ui/src/popover.d.ts +7 -1
  382. package/dist/_dts/ui/src/segmented-control.d.ts +4 -0
  383. package/dist/_dts/ui/src/surface.d.ts +1 -1
  384. package/dist/client/{BookingConsentAgreement-BQKL045f.mjs → BookingMailingListNote-CzRt2dF_.mjs} +110 -97
  385. package/dist/client/{CheckboxChoice--W2n6yKs.mjs → CheckboxChoice-B33MqoUo.mjs} +1 -1
  386. package/dist/client/DemoBookingPortalAccess-mxqwap3f.mjs +344 -0
  387. package/dist/client/{EventCombined.client-BdRjVbhH.mjs → EventCombined.client-CDb11igO.mjs} +7 -7
  388. package/dist/client/{EventListing.client-DBxC6xOU.mjs → EventListing.client-EgYhzKPa.mjs} +2 -2
  389. package/dist/client/{LeafletStaticMap-mHEJKrTs.mjs → LeafletStaticMap-gtmtaA2b.mjs} +1 -1
  390. package/dist/client/{scrollToBlock-BNgaEUpo.mjs → TerminalPanel-DvNUP5ot.mjs} +77 -77
  391. package/dist/client/{ThemedButton-CE5KYT6z.mjs → ThemedButton-C7CeUJjW.mjs} +2 -2
  392. package/dist/client/{accordion-BEQNSptH.mjs → accordion-kjvt49rA.mjs} +1 -1
  393. package/dist/client/{bookingForm-AMr-s5vw.mjs → bookingForm-pbRZordh.mjs} +411 -141
  394. package/dist/client/bookings.mjs +966 -396
  395. package/dist/client/{carousel-Bbt_QgJy.mjs → carousel-f4Zbmicv.mjs} +2 -2
  396. package/dist/client/{carousel.client-jahpU9Vz.mjs → carousel.client-A2lG-9od.mjs} +1 -1
  397. package/dist/client/{cart-CnWi30zJ.mjs → cart-DO20An50.mjs} +3 -3
  398. package/dist/client/{checkout-f3nkWgd4.mjs → checkout-Du5amDR_.mjs} +3 -3
  399. package/dist/client/{checkoutUrls-CW3-78uu.mjs → checkoutUrls-CXhko2Rv.mjs} +1 -1
  400. package/dist/client/client.mjs +3837 -2202
  401. package/dist/client/{colorStyles-CuJBiS-1.mjs → colorStyles-j5U9v5JA.mjs} +5 -1
  402. package/dist/client/{context-Bc8T6pCe.mjs → context-eW97E945.mjs} +4 -3
  403. package/dist/client/{dates-DUsCEzLb.mjs → dates-jPCirRea.mjs} +56 -11
  404. package/dist/client/{eventCalendar-CKwgXui5.mjs → eventCalendar-C2M-iE4j.mjs} +10 -10
  405. package/dist/client/{eventCombined-CBAOSTGR.mjs → eventCombined-W6ns3LHg.mjs} +4 -4
  406. package/dist/client/{eventDetails-Dh-_WiBD.mjs → eventDetails-CR-GT0f0.mjs} +4 -4
  407. package/dist/client/{eventListing-CA3frIH5.mjs → eventListing-BK8AfYZz.mjs} +4 -4
  408. package/dist/client/{eventRegistration-BHtsgdcg.mjs → eventRegistration-BJSd4KUu.mjs} +461 -266
  409. package/dist/client/{form-C2h3YAcg.mjs → form-BvpfbQaT.mjs} +5 -5
  410. package/dist/client/{headerSection-lwMuMTH9.mjs → headerSection-I5sUQ8x-.mjs} +3 -3
  411. package/dist/client/hooks.mjs +909 -163
  412. package/dist/client/{locationMap-DJ2bLODV.mjs → locationMap-BLvwf9_f.mjs} +4 -4
  413. package/dist/client/{FieldValidationMessage-AYanWFb-.mjs → mailingListSignupCopy-DZSHZrm6.mjs} +14 -1
  414. package/dist/client/{media-BtJ37tzS.mjs → media-Cl38iOMI.mjs} +11 -4
  415. package/dist/client/{newsletterForm-8Pu5K32g.mjs → newsletterForm-DrQ2weE8.mjs} +6 -6
  416. package/dist/client/{pricing-HHx3IgBz.mjs → pricing-BES87mrR.mjs} +1 -1
  417. package/dist/client/{productDetail-C_1odnAf.mjs → productDetail-Url9jcc5.mjs} +3 -3
  418. package/dist/client/{productList-CtCv-Nmx.mjs → productList-DE7ngEZJ.mjs} +3 -3
  419. package/dist/client/{propsDecoder-Dcgsncxb.mjs → propsDecoder-D1OtGXDV.mjs} +140 -22
  420. package/dist/client/rendering/client.mjs +2366 -997
  421. package/dist/client/rendering/islands.mjs +19 -19
  422. package/dist/client/rendering.mjs +4607 -2884
  423. package/dist/client/{routeIslandApiConfig-CWLP7wu3.mjs → routeIslandApiConfig-BG9Y-SHg.mjs} +1 -1
  424. package/dist/client/{shop-DQXrQ8kJ.mjs → shop-CJkuySJ3.mjs} +126 -79
  425. package/dist/client/{shop-commerce-B88zmWWo.mjs → shop-commerce-4rKj5n9h.mjs} +26 -14
  426. package/dist/client/{shop-commerce-store-DtSfkKuX.mjs → shop-commerce-store-Bxm75Pg6.mjs} +1 -1
  427. package/dist/client/{shopShared-cuaONpkJ.mjs → shopShared-DpoQDWfz.mjs} +5 -5
  428. package/dist/client/{useEventFilters-Bukew6Gb.mjs → useEventFilters-D8HliSqR.mjs} +33 -18
  429. package/dist/preview-next/before-render.mjs +314 -133
  430. package/dist/preview-next/client/runtime.mjs +4 -4
  431. package/dist/preview-next/editor-base.css +53 -2
  432. package/dist/preview-next/editor-chrome.css +7 -4
  433. package/dist/preview-next/keepAlive.mjs +314 -133
  434. package/dist/preview-next/middleware.mjs +314 -133
  435. package/dist/{previewAuthStore-h5IgbSp4.mjs → previewAuthStore-BXXF3hhW.mjs} +316 -133
  436. package/dist/{sdk-runtime-DTc1uIXn.mjs → sdk-runtime-C2a05WjL.mjs} +2 -2
  437. package/dist/{separator-BpHS1KZK.mjs → separator-CuNhBAhS.mjs} +1 -1
  438. package/dist/server/components.mjs +6888 -6157
  439. package/dist/server/config-validation.mjs +931 -199
  440. package/dist/server/config.mjs +931 -199
  441. package/dist/server/data.mjs +929 -198
  442. package/dist/server/index.mjs +317 -134
  443. package/dist/server/navigation.mjs +13 -2
  444. package/dist/server/next.mjs +5003 -4340
  445. package/dist/server/page-converter.mjs +160 -78
  446. package/dist/server/prebuild.mjs +1 -1
  447. package/dist/server/rendering/server.mjs +6421 -5687
  448. package/dist/server/rendering.mjs +7683 -6933
  449. package/dist/server/routing.mjs +1035 -338
  450. package/dist/server/server.mjs +946 -256
  451. package/dist/server/theme-bridge.mjs +66 -17
  452. package/dist/server/theme.mjs +5 -1
  453. package/dist/styles/index.css +32 -4
  454. package/package.json +1 -1
  455. package/dist/_dts/billing/src/plans/display.d.ts +0 -15
  456. package/dist/_dts/content-editor/src/controller/buildBlockPublishedBaselines.d.ts +0 -4
  457. package/dist/_dts/content-editor/src/controller/buildPublishSuccessTransition.d.ts +0 -16
  458. package/dist/_dts/content-editor/src/controller/driver.d.ts +0 -14
  459. package/dist/_dts/content-editor/src/controller/seedDraftBaselinesFromBlocks.d.ts +0 -7
  460. package/dist/_dts/content-editor/src/controller/useEntrySyncHelpers.d.ts +0 -29
  461. package/dist/_dts/content-editor/src/hooks/autosaveScopePlanning.d.ts +0 -26
  462. package/dist/_dts/content-editor/src/hooks/useSimpleAutosave.d.ts +0 -64
  463. package/dist/_dts/content-editor/src/hooks/useStoreAutosave.d.ts +0 -48
  464. package/dist/_dts/content-editor/src/types.d.ts +0 -44
  465. package/dist/_dts/core/src/participant-identity.d.ts +0 -135
  466. package/dist/client/DiscountCodeDisclosure-CsOtjFY7.mjs +0 -137
@@ -1,12 +1,11 @@
1
1
  import type { ReactNode } from 'react';
2
- import type { ApiClient } from '../../api/src/request';
3
2
  import { type MediaEditorProviderProps } from './provider';
4
3
  type BaseProviderProps = {
5
4
  siteId: string;
6
5
  children: ReactNode;
7
6
  };
8
7
  type CreateMediaEditorProviderOptions<P extends BaseProviderProps> = {
9
- resolveApiClient: (props: P) => ApiClient;
8
+ resolveApiClient: (props: P) => MediaEditorProviderProps['apiClient'];
10
9
  resolveProviderProps?: (props: P) => Partial<Omit<MediaEditorProviderProps, 'apiClient' | 'children' | 'siteId'>>;
11
10
  augmentRequest?: MediaEditorProviderProps['augmentRequest'];
12
11
  getPublicUrl?: MediaEditorProviderProps['getPublicUrl'];
@@ -1,5 +1,6 @@
1
1
  import { type ReactNode } from 'react';
2
- import type { ApiClient, APICallParamsStrict, APIEndpoints } from '../../api/src/request';
2
+ import type { APICallParamsStrict, APIEndpoints } from '../../api/src/request';
3
+ import { type ApiClientFn } from '@riverbankcms/media-storage-api';
3
4
  import type { MediaAssetWithLabels } from '@riverbankcms/media-storage-supabase';
4
5
  import { type MediaAssetIndexItem } from '../../blocks/src/index';
5
6
  import { type UseApiMediaUploaderOptions } from '../../media-react/src/index';
@@ -9,7 +10,7 @@ type RequestContext = {
9
10
  type RequestAugmenter = <E extends keyof APIEndpoints>(request: APICallParamsStrict<E>, context: RequestContext) => APICallParamsStrict<E>;
10
11
  export type MediaEditorProviderProps = {
11
12
  siteId: string;
12
- apiClient: ApiClient;
13
+ apiClient: ApiClientFn & UseApiMediaUploaderOptions['apiClient'];
13
14
  children: ReactNode;
14
15
  /**
15
16
  * Public bucket fallback used only when an asset record does not yet carry its
@@ -19,7 +19,7 @@ export type ClassificationHook = (payload: {
19
19
  summary?: ClassificationSummary;
20
20
  }) => void;
21
21
  export declare const triggerClassification: ({ apiClient, assetId, labelHints, onClassification, log, }: {
22
- apiClient: ApiClient;
22
+ apiClient: ApiClient<"classifyMediaAsset">;
23
23
  assetId: string;
24
24
  labelHints?: string[];
25
25
  onClassification?: ClassificationHook;
@@ -7,6 +7,7 @@ import type { Result } from '../../../core/src/index';
7
7
  import type { UploadProgressHandler } from './useUploads';
8
8
  import type { BrowserVideoPrepError, BrowserVideoPrepInput, BrowserVideoPrepResult } from '../videoPrepBrowser';
9
9
  import { type ClassificationHook, type LoggerLike } from './internal/classification';
10
+ type MediaUploadApiClient = ApiClient<'createMediaUploadUrl' | 'mediaUpload' | 'mediaUpdate' | 'classifyMediaAsset'>;
10
11
  export type UploadIntentResolver = UploadIntentContract | ((file: File) => UploadIntentContract | undefined);
11
12
  export type VideoPrepIntentResolver = VideoPrepIntent | ((file: File) => VideoPrepIntent | undefined);
12
13
  export type BrowserVideoPreparer = (input: BrowserVideoPrepInput) => Promise<Result<BrowserVideoPrepResult, BrowserVideoPrepError>>;
@@ -28,7 +29,7 @@ export declare class MediaUploaderError extends Error {
28
29
  export declare function getMediaUploaderErrorCode(error: Error | undefined): ApiErrorCode | undefined;
29
30
  export type UseApiMediaUploaderOptions = {
30
31
  siteId: string;
31
- apiClient: ApiClient;
32
+ apiClient: MediaUploadApiClient;
32
33
  autoClassify?: boolean;
33
34
  uploadIntent?: UploadIntentResolver;
34
35
  videoPrepIntent?: VideoPrepIntentResolver;
@@ -38,3 +39,4 @@ export type UseApiMediaUploaderOptions = {
38
39
  logger?: LoggerLike;
39
40
  };
40
41
  export declare const useApiMediaUploader: ({ siteId, apiClient, autoClassify, uploadIntent, videoPrepIntent, loadVideoPrep, onClassification, onUploadError, logger: providedLogger, }: UseApiMediaUploaderOptions) => (file: File, onProgress?: UploadProgressHandler) => Promise<MediaAssetWithLabels>;
42
+ export {};
@@ -1,8 +1,14 @@
1
1
  import { EditorPageRenderer as PageRenderer } from '../../../../blocks/src/index';
2
+ import type { PageOutline } from '../../../../blocks/src/index';
2
3
  import type { ApiClient as DashboardApiClient } from '../../../../api/src/request';
3
4
  import React, { type ComponentProps } from 'react';
4
5
  type PageRendererProps = ComponentProps<typeof PageRenderer>;
5
- type EditablePageRendererProps = PageRendererProps & {
6
+ type WithEditorPage<T> = T extends {
7
+ page: unknown;
8
+ } ? Omit<T, 'page'> & {
9
+ page: PageOutline | null;
10
+ } : never;
11
+ type EditablePageRendererProps = WithEditorPage<PageRendererProps> & {
6
12
  blockDataApiClient?: DashboardApiClient | null;
7
13
  };
8
14
  export declare function EditablePageRenderer(props: EditablePageRendererProps): React.JSX.Element;
@@ -1,7 +1,12 @@
1
- import type { EditorBlockId } from '../../../../../core/src/index';
1
+ import { type EditorBlockId, type EditorBlockVersions } from '../../../../../core/src/index';
2
2
  import type { BlockItem } from '../../../../../editor-blocks/src/index';
3
3
  import type { DraftSnapshot, EditorDraftInspectorStore, EnrichedBlock } from './types';
4
- import { type PreviewProjection } from '../previewProjection';
4
+ import { type CanonicalBlockContent, type PreviewProjection, type PreviewRenderContent } from '../previewProjection';
5
5
  import { type LinkedEntryRenderOverlay } from '../linkedEntryRenderOverlay';
6
+ /**
7
+ * Draft snapshots as the preview renders them: `current` follows the tab's render
8
+ * source (its own edits, or another tab's live drafts while it only views).
9
+ */
6
10
  export declare function getDraftSnapshots(uiStore: EditorDraftInspectorStore): Map<EditorBlockId, DraftSnapshot>;
7
- export declare function mergeBlockWithDraft(block: BlockItem, draftMap: Map<EditorBlockId, DraftSnapshot>, index: number, projections?: readonly PreviewProjection[], linkedEntryOverlays?: LinkedEntryRenderOverlay): EnrichedBlock;
11
+ export declare function mergeBlockWithDraft(block: BlockItem, draftMap: Map<EditorBlockId, DraftSnapshot>, index: number, projections?: readonly PreviewProjection[], linkedEntryOverlays?: LinkedEntryRenderOverlay, versions?: EditorBlockVersions): EnrichedBlock;
12
+ export declare function renderBlockContent(block: BlockItem, content: CanonicalBlockContent | PreviewRenderContent | null, projections: readonly PreviewProjection[], linkedEntryOverlays?: LinkedEntryRenderOverlay): PreviewRenderContent | null;
@@ -1,17 +1,18 @@
1
- import type { PageOutline } from '../../../../../blocks/src/index';
1
+ import type { PageOutline, PublishedBlockPlacementRead } from '../../../../../blocks/src/index';
2
2
  import type { EditorPreviewInspectorStore } from '../../../../../content-editor/src/index';
3
- import type { BlockContentIdentity, EditorBlockId } from '../../../../../core/src/index';
3
+ import type { EditorBlockId, EditorBlockVersions } from '../../../../../core/src/index';
4
4
  import type { BlockItem } from '../../../../../editor-blocks/src/index';
5
5
  import type { CanonicalBlockContent, PreviewProjection, PreviewRenderContent } from '../previewProjection';
6
6
  import type { LinkedEntryRenderOverlay } from '../linkedEntryRenderOverlay';
7
- export type BlockWithContent = Partial<BlockContentIdentity> & {
7
+ export type BlockWithContent = {
8
8
  [key: string]: unknown;
9
9
  id: string | null;
10
10
  kind: string;
11
11
  purpose: string;
12
12
  content?: PreviewRenderContent;
13
13
  draftContent?: PreviewRenderContent | null;
14
- publishedContent?: PreviewRenderContent | null;
14
+ publishedPlacement: PublishedBlockPlacementRead;
15
+ contentVersionId: string | null;
15
16
  bindings?: Record<string, unknown>;
16
17
  };
17
18
  export type DraftSnapshot = {
@@ -19,16 +20,18 @@ export type DraftSnapshot = {
19
20
  baseline: CanonicalBlockContent | null;
20
21
  current: CanonicalBlockContent | null;
21
22
  };
22
- export type EnrichedBlock = BlockContentIdentity & {
23
+ export type EnrichedBlock = {
23
24
  id: string | null;
24
25
  kind: string;
25
26
  purpose: string;
26
27
  orderIndex: number;
27
28
  content: PreviewRenderContent | null;
28
29
  draftContent: PreviewRenderContent | null;
29
- publishedContent: PreviewRenderContent | null;
30
+ versions: EditorBlockVersions;
30
31
  bindings: Record<string, unknown> | null;
31
32
  };
33
+ /** The editor's server versions for a block, or null until known. */
34
+ export type BlockVersionsLookup = (blockId: EditorBlockId) => EditorBlockVersions | null;
32
35
  export type CachedBlockTransform = {
33
36
  src: EnrichedBlock;
34
37
  out: BlockWithContent;
@@ -46,4 +49,5 @@ export type ComposePreviewRenderPageArgs = {
46
49
  draftSnapshots: readonly DraftSnapshot[];
47
50
  projections: readonly PreviewProjection[];
48
51
  linkedEntryOverlays?: LinkedEntryRenderOverlay;
52
+ blockVersions: BlockVersionsLookup;
49
53
  };
@@ -1,11 +1,31 @@
1
- import { type LinkedContentEntryId } from '../../../../content-editor/src/index';
1
+ import { type EditorPreviewInspectorStore, type LinkedContentEntryId, type RenderedLinkedRevisions } from '../../../../content-editor/src/index';
2
+ /**
3
+ * `optimisticHash` is the local draft's revision; it is absent for another tab's
4
+ * live draft, which keeps the revision the entry was rendered with.
5
+ * `handoverRevision` marks an accepted save handing over to the rendered data
6
+ * (issue 1553, D): it applies only to occurrences not yet rendered at that revision.
7
+ */
2
8
  export type LinkedEntryRenderOverlay = ReadonlyMap<LinkedContentEntryId, Readonly<{
3
9
  content: Record<string, unknown>;
4
- optimisticHash: string | null;
10
+ optimisticHash?: string | null;
11
+ handoverRevision?: string;
5
12
  }>>;
13
+ /**
14
+ * The linked-entry values the preview renders, following the tab's render source
15
+ * (its own edits, or another tab's live drafts while it only views). Entries only
16
+ * another tab is editing are included too. A viewer never reads its own handovers,
17
+ * so a later external write is never masked (row H8).
18
+ */
19
+ export declare function linkedEntryRenderOverlaysFromStore(uiStore: EditorPreviewInspectorStore): LinkedEntryRenderOverlay;
6
20
  type DataContextWithResolvedData = Readonly<{
7
21
  resolvedData?: Record<string, Record<string, unknown>>;
8
22
  }>;
9
23
  export declare function applyLinkedEntryRenderOverlay<T>(value: T, overlays: LinkedEntryRenderOverlay): T;
10
24
  export declare function applyLinkedEntryRenderOverlayToDataContext<T extends DataContextWithResolvedData | undefined>(dataContext: T, overlays: LinkedEntryRenderOverlay): T;
25
+ /**
26
+ * Each linked entry's rendered revisions, one per occurrence in the loader data, read
27
+ * before any overlay. Local handover retention compares them with the saved revision
28
+ * (issue 1553, DP7).
29
+ */
30
+ export declare function renderedLinkedRevisions(dataContext: DataContextWithResolvedData | undefined): RenderedLinkedRevisions;
11
31
  export {};
@@ -0,0 +1,13 @@
1
+ import type { BlockItem } from '../../../../../editor-blocks/src/index';
2
+ import type { CanonicalBlockContent, EntryFieldRebindingProjection, PreviewRenderContent } from './types';
3
+ /**
4
+ * Only the entry fields that changed are bound in again: unchanged fields keep
5
+ * the server's materialised value, which may be richer than the stored one
6
+ * (media the loaders have hydrated, for instance).
7
+ */
8
+ export declare function entryFieldRebindingProjection(changedFields: Readonly<Record<string, unknown>>): EntryFieldRebindingProjection | null;
9
+ /**
10
+ * Binds the changed entry fields into a block with template bindings. A binding
11
+ * whose source did not change resolves to nothing and leaves the content as it is.
12
+ */
13
+ export declare function applyEntryFieldRebindingProjection(block: BlockItem, content: CanonicalBlockContent | PreviewRenderContent | null, projection: EntryFieldRebindingProjection): CanonicalBlockContent | PreviewRenderContent | null;
@@ -1,4 +1,5 @@
1
1
  export { applyContentFieldOverrideProjection, applyStructureProjection, blockHasContentFieldOverrideProjection, previewProjectionsFromAiOverlays, } from './aiProposalProjection';
2
2
  export { applyPreviewContentFieldProjections, applyPreviewRuntimeContentProjections, applyPreviewStructureProjections, blockHasPreviewContentFieldProjection, } from './applyPreviewProjections';
3
+ export { entryFieldRebindingProjection } from './entryFieldRebinding';
3
4
  export { applyRuntimeContentDecorationProjection, runtimeContentDecorationProjectionFromEditorModel, } from './runtimeContentDecoration';
4
- export type { AiProposalProjectionState, CanonicalBlockContent, ContentFieldOverrideProjection, PreviewFieldOverride, PreviewProjection, PreviewProjectionAddedBlock, PreviewRenderContent, RuntimeContentDecorationProjection, StructureProjection, } from './types';
5
+ export type { AiProposalProjectionState, CanonicalBlockContent, ContentFieldOverrideProjection, EntryFieldRebindingProjection, PreviewFieldOverride, PreviewProjection, PreviewProjectionAddedBlock, PreviewRenderContent, RuntimeContentDecorationProjection, StructureProjection, } from './types';
@@ -51,7 +51,7 @@ export type PreviewProjection = Readonly<{
51
51
  source: 'ai-proposal';
52
52
  viewMode: 'before' | 'after';
53
53
  overrides: ReadonlyMap<string, PreviewFieldOverride>;
54
- }> | Readonly<{
54
+ }> | EntryFieldRebindingProjection | Readonly<{
55
55
  kind: 'runtime-content-decoration';
56
56
  source: 'page-design';
57
57
  fieldsByBlockId: ReadonlyMap<DesignBlockId, CompiledBlockRuntimeFields>;
@@ -71,3 +71,13 @@ export type ContentProjectionTarget = Readonly<{
71
71
  editorBlockId: EditorBlockId | null;
72
72
  content: CanonicalBlockContent | null;
73
73
  }>;
74
+ /**
75
+ * An entry template page's blocks arrive with the entry's values already bound
76
+ * in by the server. When the entry's own fields change in the editor (locally,
77
+ * or live from another tab), the fields that changed are bound in again.
78
+ */
79
+ export type EntryFieldRebindingProjection = Readonly<{
80
+ kind: 'entry-field-rebinding';
81
+ source: 'entry-draft';
82
+ changedFields: Readonly<Record<string, unknown>>;
83
+ }>;
@@ -0,0 +1,17 @@
1
+ import type { ComponentProps } from 'react';
2
+ import type { EditorPageRenderer } from '../../../../blocks/src/index';
3
+ import { type EditorUiStoreInstance } from '../../../../content-editor/src/index';
4
+ import type { EditorBlockId } from '../../../../core/src/index';
5
+ import type { ResolvedBlockData } from '../../../../blocks/src/system/data/index';
6
+ type PageRendererDataContext = ComponentProps<typeof EditorPageRenderer>['dataContext'];
7
+ /** A block's content as the preview renders it, from the tab's render source. */
8
+ export declare function renderedBlockContent(uiStore: Pick<EditorUiStoreInstance, 'getState'>, blockId: EditorBlockId): Readonly<Record<string, unknown>> | null;
9
+ /**
10
+ * An entry template page renders the entry's own fields from `contentEntry`. The
11
+ * server sent them as they were on load; the editor's rendered values (local
12
+ * edits, then another tab's live draft) take over from there.
13
+ */
14
+ export declare function withRenderedContentEntry(dataContext: PageRendererDataContext | undefined, content: Readonly<Record<string, unknown>> | null): PageRendererDataContext | undefined;
15
+ /** Loader data fetched in the browser replaces the server's, block by block. */
16
+ export declare function mergeResolvedDataContext(dataContext: PageRendererDataContext | undefined, liveResolvedData: ResolvedBlockData | null): PageRendererDataContext | undefined;
17
+ export {};
@@ -0,0 +1,20 @@
1
+ import { type ComponentProps } from 'react';
2
+ import type { EditorPageRenderer } from '../../../../blocks/src/index';
3
+ import type { ResolvedBlockData } from '../../../../blocks/src/system/data/index';
4
+ import { type EditorUiStoreInstance, type LinkedSaveHandovers } from '../../../../content-editor/src/index';
5
+ type PageRendererDataContext = ComponentProps<typeof EditorPageRenderer>['dataContext'];
6
+ /**
7
+ * The host's refresh of its server data: the same callback live drafts give a viewer
8
+ * whose saved remote draft lags. Absent when the host supplies none.
9
+ */
10
+ export declare const PreviewRefreshBaselinesContext: import("react").Context<(() => void) | null>;
11
+ /** Changes whenever a handover is recorded or dropped, so the renderer re-renders. */
12
+ export declare function linkedSaveHandoversVersion(handovers: LinkedSaveHandovers): string;
13
+ /**
14
+ * Local retention of this tab's linked-entry save handovers (issue 1553, DP7). The
15
+ * renderer holds the rendered data, so it decides catch-up: a handover whose entry is
16
+ * rendered at the saved revision everywhere drops with no refresh (row H1b); otherwise
17
+ * the shared timing asks the host for one refresh, then drops it (row H2).
18
+ */
19
+ export declare function useLinkedSaveHandoverRetention(uiStore: EditorUiStoreInstance, dataContext: PageRendererDataContext | undefined, liveResolvedData: ResolvedBlockData | null): void;
20
+ export {};
@@ -18,7 +18,7 @@ export { PreviewZoomControls } from './preview/PreviewZoomControls';
18
18
  export { PreviewEditorUI } from './preview/PreviewEditorUI';
19
19
  export { PreviewOpenEditorButton } from './preview/PreviewOpenEditorButton';
20
20
  export { MaintenanceModeBadge } from './preview/MaintenanceModeBadge';
21
- export type { PreviewBlock, PreviewContentEntryData, PreviewPageMetadata, } from './preview/PreviewEntryControllerProvider';
21
+ export type { PreviewContentEntryData, PreviewPageMetadata, } from './preview/PreviewEntryControllerProvider';
22
22
  export { PreviewEntryControllerProvider } from './preview/PreviewEntryControllerProvider';
23
23
  export { PAGE_CONTENT_TYPE_SCHEMA } from './preview/pageSchema';
24
24
  export { PreviewThemeOverlayProvider, usePreviewThemeOverlay, } from './preview/themeOverlay';
@@ -12,6 +12,7 @@ type EntryEditorPanelProps = {
12
12
  siteId: string;
13
13
  dashboardBaseUrl?: string | null;
14
14
  entryData: NonNullable<PreviewEditorSidebarProps['entryData']>;
15
+ pageSurfaceId?: string | null;
15
16
  contentTypeSchema?: ContentTypeSchema | null;
16
17
  referenceContentTypeKeys: readonly string[];
17
18
  draftContent?: Record<string, unknown> | null;
@@ -30,5 +31,5 @@ type EntryEditorPanelProps = {
30
31
  onViewportWidthChange: (width: ViewportWidth) => void;
31
32
  onZoomChange: (zoom: ZoomLevel) => void;
32
33
  };
33
- export declare function EntryEditorPanel({ siteId, dashboardBaseUrl, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, apiClient, entrySubrouteContext, metadataPanel, linkedEntrySection, widgets, sdkConfig, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: EntryEditorPanelProps): React.JSX.Element;
34
+ export declare function EntryEditorPanel({ siteId, dashboardBaseUrl, entryData, pageSurfaceId, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, apiClient, entrySubrouteContext, metadataPanel, linkedEntrySection, widgets, sdkConfig, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: EntryEditorPanelProps): React.JSX.Element;
34
35
  export {};
@@ -8,10 +8,11 @@ type EntrySlotBlockEditorPanelProps = {
8
8
  dashboardBaseUrl?: string | null;
9
9
  typeKey: string;
10
10
  entryId: string;
11
+ pageSurfaceId?: string | null;
11
12
  theme?: Theme | null;
12
13
  apiClient: ApiClient;
13
14
  sdkConfig?: SdkConfigForBlockPicker | null;
14
15
  widgets: Record<string, FieldWidgetComponent>;
15
16
  };
16
- export declare function EntrySlotBlockEditorPanel({ siteId, dashboardBaseUrl, typeKey, entryId, theme, apiClient, sdkConfig, widgets, }: EntrySlotBlockEditorPanelProps): React.JSX.Element | null;
17
+ export declare function EntrySlotBlockEditorPanel({ siteId, dashboardBaseUrl, typeKey, entryId, pageSurfaceId, theme, apiClient, sdkConfig, widgets, }: EntrySlotBlockEditorPanelProps): React.JSX.Element | null;
17
18
  export {};
@@ -0,0 +1,7 @@
1
+ import type { SurfaceId } from '../../../../surfaces/src/index';
2
+ export declare function PreviewAccessBanners({ dashboardBaseUrl, surfaceId, isEntry, pageNodeType }: Readonly<{
3
+ dashboardBaseUrl: string | null;
4
+ surfaceId: SurfaceId;
5
+ isEntry: boolean;
6
+ pageNodeType?: 'page' | 'page_surface';
7
+ }>): import("react").JSX.Element;
@@ -24,6 +24,7 @@ export type PreviewEditorSidebarProps = {
24
24
  siteId: string;
25
25
  dashboardBaseUrl?: string | null;
26
26
  pageId: string | null;
27
+ pageNodeType?: 'page' | 'page_surface';
27
28
  entryData?: PreviewEntryData | null;
28
29
  contentTypeSchema?: ContentTypeSchema | null;
29
30
  referenceContentTypeKeys?: readonly string[];
@@ -58,4 +59,4 @@ export type PreviewEditorSidebarProps = {
58
59
  onViewportWidthChange: (width: ViewportWidth) => void;
59
60
  onZoomChange: (zoom: ZoomLevel) => void;
60
61
  };
61
- export declare function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl, pageId, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, themeId, themeSelectionId, themeSelectionVersion, themeSelectionUpdatedAt, themeSelectionButtonStyleSelection, themeSelectionButtonStyleRepairs, themeSelectionHeaderSelection, themeSelectionFooterLookId, themeSelectionHeaderLogo, apiClient, bearerToken, entrySubrouteContext, assistantPanel, sdkConfig, bookingOfferingPresets, siteStyleAccess, activeTab, onTabChange, onClose, onFooterSaved, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: PreviewEditorSidebarProps): React.JSX.Element;
62
+ export declare function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl, pageId, pageNodeType, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, themeId, themeSelectionId, themeSelectionVersion, themeSelectionUpdatedAt, themeSelectionButtonStyleSelection, themeSelectionButtonStyleRepairs, themeSelectionHeaderSelection, themeSelectionFooterLookId, themeSelectionHeaderLogo, apiClient, bearerToken, entrySubrouteContext, assistantPanel, sdkConfig, bookingOfferingPresets, siteStyleAccess, activeTab, onTabChange, onClose, onFooterSaved, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: PreviewEditorSidebarProps): React.JSX.Element;
@@ -1,18 +1,11 @@
1
+ import type { SdkEditorRevision } from '../../../../api/src/index';
2
+ import type { EditLeaseChangeSubscription, LiveDraftsClient } from '../../../../content-editor/src/index';
1
3
  import React, { type ReactNode } from 'react';
2
4
  import type { ApiClient } from '../../../../api/src/request';
3
5
  import { type ContentTypeSchema } from '../../../../content-model/src/index';
4
- export type PreviewBlock = {
5
- id: string | null;
6
- kind: string;
7
- purpose?: string | null;
8
- orderIndex?: number | null;
9
- content?: Record<string, unknown> | null;
10
- draftContent?: Record<string, unknown> | null;
11
- publishedContent?: Record<string, unknown> | null;
12
- bindings?: Record<string, unknown> | null;
13
- optimisticHash?: string | null;
14
- } & Partial<import('../../../../core/src/index').BlockContentIdentity>;
6
+ import type { ServerBlockItem } from '../../../../editor-blocks/src/index';
15
7
  export type PreviewPageMetadata = {
8
+ draftUpdatedAt?: string | null;
16
9
  draftTitle: string;
17
10
  draftPath: string;
18
11
  draftStatus: string;
@@ -28,6 +21,7 @@ export type PreviewPageMetadata = {
28
21
  };
29
22
  export type PreviewContentEntryData = {
30
23
  id: string;
24
+ editorRevision?: SdkEditorRevision;
31
25
  type?: string | null;
32
26
  title?: string | null;
33
27
  slug?: string | null;
@@ -41,19 +35,35 @@ export type PreviewContentEntryData = {
41
35
  draftMetaDescription?: string | null;
42
36
  ogImageId?: string | null;
43
37
  content?: Record<string, unknown> | null;
38
+ /** A page surface's published content; null when it has never been published. */
39
+ publishedContent?: Record<string, unknown> | null;
44
40
  };
45
41
  type PreviewEntryControllerProviderProps = {
46
42
  children: ReactNode;
47
43
  siteId: string;
48
44
  pageId: string | null;
45
+ pageNodeType?: 'page' | 'page_surface';
49
46
  routeId: string | null;
50
47
  entryData?: PreviewContentEntryData | null;
51
48
  contentTypeSchema?: ContentTypeSchema | null;
52
- draftContent?: Record<string, unknown> | null;
53
49
  initialStatus?: 'draft' | 'scheduled' | 'published';
54
- initialBlocks?: PreviewBlock[];
50
+ blockFieldExtensions?: import('../../../../editor-blocks/src/index').BlockFieldExtensions | null;
51
+ initialBlocks?: ServerBlockItem[];
55
52
  pageMetadata?: PreviewPageMetadata;
56
53
  apiClient: ApiClient;
54
+ subscribeToLeaseChanges?: EditLeaseChangeSubscription;
55
+ onLeaseGranted?: () => void;
56
+ liveDrafts?: PreviewLiveDrafts;
57
57
  };
58
- export declare function PreviewEntryControllerProvider({ children, siteId, pageId, routeId: providedRouteId, entryData, contentTypeSchema, draftContent, initialStatus, initialBlocks, pageMetadata, apiClient, }: PreviewEntryControllerProviderProps): React.JSX.Element;
58
+ /**
59
+ * Live drafts in preview (issue 1545): the host's own Supabase client, authorised
60
+ * with the preview token, and how it refreshes server props when a saved value
61
+ * has not arrived.
62
+ */
63
+ export type PreviewLiveDrafts = Readonly<{
64
+ client: LiveDraftsClient;
65
+ previewToken: string;
66
+ refreshBaselines: () => void;
67
+ }>;
68
+ export declare function PreviewEntryControllerProvider({ children, siteId, pageId, pageNodeType, routeId: providedRouteId, entryData, contentTypeSchema, initialStatus, initialBlocks, blockFieldExtensions, pageMetadata, apiClient, subscribeToLeaseChanges, onLeaseGranted, liveDrafts, }: PreviewEntryControllerProviderProps): React.JSX.Element;
59
69
  export {};
@@ -0,0 +1,2 @@
1
+ /** Derives preview editing permission from the live auth and lease authorities. */
2
+ export declare function PreviewLeaseEditingMode(): null;
@@ -1,3 +1,4 @@
1
+ import type { EditLeaseChangeSubscription } from '../../../../content-editor/src/index';
1
2
  import React, { type ComponentProps, type ReactNode } from 'react';
2
3
  import { BlockApiProvider } from '../../../../blocks/src/client';
3
4
  import type { ButtonStyleSelection, ButtonStyleSelectionRepair } from '../../../../theme-core/src/buttons/index';
@@ -5,8 +6,9 @@ import type { FooterLookId, HeaderLayoutStyleSelection, HeaderLogoContext } from
5
6
  import type { EntrySubrouteContextData, BookingOfferingPresetSummary, MediaAssetIndexItem, Theme } from '../../../../blocks/src/index';
6
7
  import type { ContentTypeSchema } from '../../../../content-model/src/index';
7
8
  import type { SdkConfigForPreview } from './sdkConfig';
9
+ import type { ServerBlockItem } from '../../../../editor-blocks/src/index';
8
10
  import type { SurfaceId } from '../../../../surfaces/src/index';
9
- import { type PreviewBlock, type PreviewContentEntryData, type PreviewPageMetadata } from './PreviewEntryControllerProvider';
11
+ import { type PreviewContentEntryData, type PreviewLiveDrafts, type PreviewPageMetadata } from './PreviewEntryControllerProvider';
10
12
  import { type PreviewRenderingMode, type PreviewThemeRuntime } from './themeRuntime';
11
13
  import type { PreviewEditorSidebarProps, PreviewTemplateData } from './PreviewEditorSidebar';
12
14
  import { type PreviewRuntimeSession } from '../../auth-contract';
@@ -27,6 +29,11 @@ type PreviewShellCommonProps = {
27
29
  siteId: string;
28
30
  siteSlug: string;
29
31
  editableId: string | null;
32
+ pageNodeType?: 'page' | 'page_surface';
33
+ subscribeToLeaseChanges?: EditLeaseChangeSubscription;
34
+ onLeaseGranted?: () => void;
35
+ /** Live drafts between tabs; the host supplies a Supabase client dedicated to the preview token. */
36
+ liveDrafts?: Omit<PreviewLiveDrafts, 'previewToken'> | null;
30
37
  previewSession: PreviewRuntimeSession | null;
31
38
  previewToken: string;
32
39
  dashboardBaseUrl?: string | null;
@@ -64,7 +71,7 @@ type PreviewShellCommonProps = {
64
71
  draftContent?: Record<string, unknown> | null;
65
72
  currentTemplate?: PreviewTemplateData | null;
66
73
  initialStatus?: 'draft' | 'scheduled' | 'published';
67
- initialBlocks?: PreviewBlock[];
74
+ initialBlocks?: ServerBlockItem[];
68
75
  pageMetadata?: PreviewPageMetadata;
69
76
  isSiteLaunched: boolean;
70
77
  maintenanceModeEnabled: boolean;
@@ -15,6 +15,7 @@ type PreviewShellLayoutCommonProps = {
15
15
  siteId: string;
16
16
  dashboardBaseUrl?: string | null;
17
17
  pageId: string | null;
18
+ pageNodeType?: 'page' | 'page_surface';
18
19
  entryData?: PreviewEntryData | null;
19
20
  contentTypeSchema?: ContentTypeSchema | null;
20
21
  referenceContentTypeKeys?: readonly string[];
@@ -0,0 +1,5 @@
1
+ import type { PreviewCustomizeWorkflowState, PreviewCustomizeSaveBatch } from './previewCustomizeWorkflowState';
2
+ /** Work selection and checkpoint capture share the existing transaction objects. */
3
+ export declare function previewCustomizeCanAutosave(workflow: PreviewCustomizeWorkflowState): boolean;
4
+ /** Preserve transaction identity and history while a checkpoint waits for an active save. */
5
+ export declare function previewCustomizePendingBatch(workflow: PreviewCustomizeWorkflowState): PreviewCustomizeSaveBatch;
@@ -82,8 +82,8 @@ export type PreviewCustomizeWorkflowState = Readonly<{
82
82
  mutation: PreviewCustomizeMutationState;
83
83
  }>;
84
84
  type PreviewCustomizeTargetKey = `block:${string}:layout` | `block:${string}:look` | `block:${string}:facet:${string}` | `block:${string}:background` | `boundary:${string}:${string}`;
85
- type PreviewCustomizePendingAction = EditorTransaction<PreviewCustomizeAction, PreviewCustomizeHistoryEntry, PreviewCustomizeTargetKey>;
86
- type PreviewCustomizeSaveBatch = EditorSaveBatch<PreviewCustomizeAction, PreviewCustomizeHistoryEntry, PreviewCustomizeTargetKey>;
85
+ export type PreviewCustomizePendingAction = EditorTransaction<PreviewCustomizeAction, PreviewCustomizeHistoryEntry, PreviewCustomizeTargetKey>;
86
+ export type PreviewCustomizeSaveBatch = EditorSaveBatch<PreviewCustomizeAction, PreviewCustomizeHistoryEntry, PreviewCustomizeTargetKey>;
87
87
  export type PreviewCustomizeBeginResult = Readonly<{
88
88
  kind: 'started';
89
89
  state: PreviewCustomizeWorkflowState;
@@ -100,7 +100,7 @@ export declare function failedPreviewCustomizeWorkflowState(message: string): Pr
100
100
  export declare function previewCustomizeLoadSucceeded(pageState: ApiPageDesignEditorStateResponse): PreviewCustomizeWorkflowState;
101
101
  export declare function previewCustomizeWorkflowPageState(workflow: PreviewCustomizeWorkflowState): PreviewPageDesignEditorState;
102
102
  export declare function beginPreviewCustomizeApply(workflow: PreviewCustomizeWorkflowState, action: PreviewCustomizeAction): PreviewCustomizeBeginResult;
103
- export declare function beginPreviewCustomizeAutosave(workflow: PreviewCustomizeWorkflowState): PreviewCustomizeBeginResult;
103
+ export declare function beginPreviewCustomizeAutosave(workflow: PreviewCustomizeWorkflowState, captured?: PreviewCustomizeSaveBatch): PreviewCustomizeBeginResult;
104
104
  export declare function beginPreviewCustomizeUndo(workflow: PreviewCustomizeWorkflowState): PreviewCustomizeBeginResult;
105
105
  export declare function beginPreviewCustomizeRedo(workflow: PreviewCustomizeWorkflowState): PreviewCustomizeBeginResult;
106
106
  export declare function confirmPreviewCustomizeMutation(workflow: PreviewCustomizeWorkflowState, response: ApplyPageDesignEditorActionResponse): PreviewCustomizeWorkflowState;
@@ -117,5 +117,4 @@ export declare function applyPreviewCustomizeActionToState(state: PreviewPageDes
117
117
  export declare function skippedPreviewCustomizeOutcome(reason: PreviewCustomizeSkipReason): Extract<PreviewPageDesignEditorApplyOutcome, {
118
118
  kind: 'skipped';
119
119
  }>;
120
- export declare function previewCustomizePendingActions(workflow: PreviewCustomizeWorkflowState): readonly PreviewCustomizeAction[];
121
120
  export {};
@@ -2,5 +2,6 @@ import type { SdkSiteLayoutConfig } from '../../../../api/src/index';
2
2
  import type { SdkConfigForBlockPicker } from '../../../../editor-blocks/src/index';
3
3
  /** SDK config fields consumed by preview editing, beyond the block picker. */
4
4
  export type SdkConfigForPreview = SdkConfigForBlockPicker & {
5
+ blockFieldExtensions?: import('../../../../editor-blocks/src/index').BlockFieldExtensions;
5
6
  layout?: Pick<SdkSiteLayoutConfig, 'footerMode'>;
6
7
  };
@@ -0,0 +1,4 @@
1
+ import { type SetStateAction } from 'react';
2
+ import { type PreviewCustomizeWorkflowState } from './previewCustomizeWorkflowState';
3
+ /** Update the scheduler's authoritative workflow before its next serialized request. */
4
+ export declare function usePreviewCustomizeWorkflowState(): readonly [PreviewCustomizeWorkflowState, (next: SetStateAction<PreviewCustomizeWorkflowState>) => void, import("react").RefObject<PreviewCustomizeWorkflowState>];
@@ -0,0 +1,3 @@
1
+ export { useSiteRealtimeReload, type SiteRealtimeReloadOptions, type RealtimeStatus, } from './useSiteRealtimeReload';
2
+ export { joinDraftChannel, planDraftAuthChange, toDraftChannelStatus, type DraftBroadcastChannel, type DraftChannelOptions, type DraftRealtimeClient, type DraftSendResult, type DraftChannelAuth, type DraftChannelStatus, type DraftChannelHandlers, type DraftChannelConnection, } from './draftChannel';
3
+ export { useDraftChannel, type UseDraftChannelAuth, type UseDraftChannelOptions, type DraftChannelHookStatus, type DraftHookSendResult, } from './useDraftChannel';
@@ -0,0 +1,91 @@
1
+ import { type DraftStateMessage, type DraftSyncRequestMessage } from './drafts';
2
+ /**
3
+ * Structural slice of a Supabase client that the drafts channel needs, so this
4
+ * package stays free of a supabase-js dependency. A `SupabaseClient` satisfies
5
+ * it (proved by the realtime drafts integration test).
6
+ *
7
+ * Method syntax keeps parameter checks bivariant, which is what lets the real
8
+ * overloaded Supabase methods satisfy these narrower signatures.
9
+ */
10
+ export type DraftBroadcastChannel = {
11
+ on(type: 'broadcast', filter: {
12
+ event: string;
13
+ }, callback: (message: {
14
+ payload: unknown;
15
+ }) => void): unknown;
16
+ subscribe(callback: (status: string, error?: Error) => void): unknown;
17
+ send(args: {
18
+ type: 'broadcast';
19
+ event: string;
20
+ payload: unknown;
21
+ }): Promise<DraftSendResult>;
22
+ };
23
+ export type DraftChannelOptions = {
24
+ config: {
25
+ private: true;
26
+ broadcast: {
27
+ self: false;
28
+ };
29
+ };
30
+ };
31
+ export type DraftRealtimeClient = {
32
+ channel(name: string, options: DraftChannelOptions): DraftBroadcastChannel;
33
+ removeChannel(channel: DraftBroadcastChannel): unknown;
34
+ realtime: {
35
+ setAuth(token?: string | null): Promise<void>;
36
+ };
37
+ };
38
+ export type DraftSendResult = 'ok' | 'timed out' | 'error';
39
+ /**
40
+ * How the channel authenticates:
41
+ * - `session`: the client's own Supabase auth session (dashboard). supabase-js
42
+ * already forwards the session token and its refreshes to Realtime.
43
+ * - `token`: an explicit access token (preview), applied with
44
+ * `realtime.setAuth(token)`. Note this pins the token for every channel on
45
+ * that client until `setAuth()` is called without arguments.
46
+ */
47
+ export type DraftChannelAuth = Readonly<{
48
+ kind: 'session';
49
+ }> | Readonly<{
50
+ kind: 'token';
51
+ accessToken: string;
52
+ }>;
53
+ /** Subscribe status as reported by realtime-js, narrowed to what callers act on. */
54
+ export type DraftChannelStatus = 'joining' | 'joined' | 'timed-out' | 'error' | 'closed';
55
+ export type DraftChannelHandlers = Readonly<{
56
+ onDraftState?: (message: DraftStateMessage) => void;
57
+ onSyncRequest?: (message: DraftSyncRequestMessage) => void;
58
+ onStatus?: (status: DraftChannelStatus, error?: Error) => void;
59
+ onInvalidMessage?: (event: string, error: unknown) => void;
60
+ }>;
61
+ export type DraftChannelConnection = Readonly<{
62
+ sendDraftState: (message: DraftStateMessage) => Promise<DraftSendResult>;
63
+ sendSyncRequest: (message: DraftSyncRequestMessage) => Promise<DraftSendResult>;
64
+ /**
65
+ * Apply a rotated token to the live connection. realtime-js pushes it to
66
+ * every joined channel, where Realtime re-evaluates the RLS policies; no
67
+ * rejoin is needed while the channel is healthy (see `planDraftAuthChange`).
68
+ */
69
+ setAccessToken: (accessToken: string) => Promise<void>;
70
+ leave: () => Promise<void>;
71
+ }>;
72
+ export declare function toDraftChannelStatus(status: string): DraftChannelStatus;
73
+ /**
74
+ * A token change on a healthy (or still joining) channel is applied in place.
75
+ * A channel that was closed, timed out or refused (typically because the old
76
+ * token expired or lacked access) is rebuilt with the new token.
77
+ */
78
+ export declare function planDraftAuthChange(status: DraftChannelStatus): 'reauthorise' | 'rejoin';
79
+ /**
80
+ * Join the private `site:{siteId}:drafts` channel. Validates every incoming
81
+ * message at the boundary; filtering by scope and origin/seq is the caller's
82
+ * decision (`isDraftForScope`, `acceptDraftState`).
83
+ *
84
+ * With token auth the join waits for `setAuth` so the join carries the token.
85
+ */
86
+ export declare function joinDraftChannel(options: Readonly<{
87
+ client: DraftRealtimeClient;
88
+ siteId: string;
89
+ auth: DraftChannelAuth;
90
+ handlers: DraftChannelHandlers;
91
+ }>): DraftChannelConnection;