@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.
- package/CHANGELOG.md +28 -0
- package/dist/{PreviewEditorSidebar-kg2r2Fyi.mjs → PreviewEditorSidebar-DvEPG3Z2.mjs} +249 -172
- package/dist/{PreviewEditorUI-sWMLp5dT.mjs → PreviewEditorUI-D6eb6fkx.mjs} +68 -60
- package/dist/{PreviewQueryProvider-Cg51xq1w.mjs → PreviewQueryProvider-5znTyJuz.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-h2ti3Hch.mjs → SdkPreviewModeRuntime-DJ6utQ_R.mjs} +1180 -475
- package/dist/{SiteChromeCustomizeContext-DEACFH9m.mjs → SiteChromeCustomizeContext-CFJYh6vo.mjs} +199078 -193767
- package/dist/_dts/ai/src/contracts/proposals.d.ts +198 -33
- package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +18 -3
- package/dist/_dts/api/src/accessAdmin.d.ts +0 -4
- package/dist/_dts/api/src/accountApi.d.ts +6 -6
- package/dist/_dts/api/src/admin.d.ts +22 -22
- package/dist/_dts/api/src/aiPatch.d.ts +2 -2
- package/dist/_dts/api/src/aiPlayground.d.ts +1 -0
- package/dist/_dts/api/src/analytics.d.ts +2 -2
- package/dist/_dts/api/src/apiEndpointTypes.d.ts +2 -0
- package/dist/_dts/api/src/appointmentSetup.d.ts +2 -2
- package/dist/_dts/api/src/auth.d.ts +10 -10
- package/dist/_dts/api/src/availability.d.ts +6 -6
- package/dist/_dts/api/src/billing.d.ts +42 -15
- package/dist/_dts/api/src/billingEndpointDefinitions.d.ts +8 -0
- package/dist/_dts/api/src/billingEndpointTypes.d.ts +15 -6
- package/dist/_dts/api/src/blocks.d.ts +15 -14
- package/dist/_dts/api/src/blocksKeys.d.ts +2 -0
- package/dist/_dts/api/src/bookingConfig.d.ts +16 -2
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +4 -13
- package/dist/_dts/api/src/bookingOperations.d.ts +6 -48
- package/dist/_dts/api/src/bookingPeople.d.ts +92 -0
- package/dist/_dts/api/src/bookingPeopleEndpointDefinitions.d.ts +38 -0
- package/dist/_dts/api/src/bookingRecords.d.ts +12 -49
- package/dist/_dts/api/src/bookingSettingsSections.d.ts +1 -1
- package/dist/_dts/api/src/bookings.d.ts +8 -7
- package/dist/_dts/api/src/calendar.d.ts +9 -9
- package/dist/_dts/api/src/commercePortalEndpoints.d.ts +7 -6
- package/dist/_dts/api/src/common/envelope.d.ts +2 -2
- package/dist/_dts/api/src/content-editor.d.ts +2 -2
- package/dist/_dts/api/src/contentEntries.d.ts +17 -48
- package/dist/_dts/api/src/contentRuntime.d.ts +51 -37
- package/dist/_dts/api/src/contentTypes.d.ts +11 -11
- package/dist/_dts/api/src/contentVersionHistoryClient.d.ts +6 -6
- package/dist/_dts/api/src/documentLifecycle.d.ts +67 -0
- package/dist/_dts/api/src/domains.d.ts +16 -16
- package/dist/_dts/api/src/editLeaseEndpoints.d.ts +72 -0
- package/dist/_dts/api/src/emailSettings.d.ts +4 -4
- package/dist/_dts/api/src/endpoints.d.ts +725 -607
- package/dist/_dts/api/src/eventEmailTemplates.d.ts +2 -2
- package/dist/_dts/api/src/eventManagementContracts.d.ts +48 -8
- package/dist/_dts/api/src/eventManagementEndpointDefinitions.d.ts +1 -9
- package/dist/_dts/api/src/eventPageWords.d.ts +7 -12
- package/dist/_dts/api/src/footerSettings.d.ts +6 -6
- package/dist/_dts/api/src/index.d.ts +8 -6
- package/dist/_dts/api/src/indexCoreTypes.d.ts +2 -1
- package/dist/_dts/api/src/indexExtendedTypes.d.ts +1 -1
- package/dist/_dts/api/src/launchReadiness.d.ts +1 -6
- package/dist/_dts/api/src/mailingListIntegration.d.ts +6 -0
- package/dist/_dts/api/src/navigation/dashboardBookingsNav.d.ts +1 -1
- package/dist/_dts/api/src/navigation.d.ts +5 -5
- package/dist/_dts/api/src/newsletterEndpointDefinitions.d.ts +15 -0
- package/dist/_dts/api/src/occurrenceScheduling.d.ts +19 -0
- package/dist/_dts/api/src/pageSurfaceEditorEndpoints.d.ts +55 -0
- package/dist/_dts/api/src/pageSurfaceEndpoints.d.ts +28 -7
- package/dist/_dts/api/src/pages.d.ts +7 -7
- package/dist/_dts/api/src/performance.d.ts +1 -1
- package/dist/_dts/api/src/public/index.d.ts +1 -1
- package/dist/_dts/api/src/publicAppointmentBookingContracts.d.ts +50 -0
- package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +4 -0
- package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +7 -0
- package/dist/_dts/api/src/redirects.d.ts +3 -3
- package/dist/_dts/api/src/request.d.ts +10 -1
- package/dist/_dts/api/src/resources.d.ts +4 -4
- package/dist/_dts/api/src/routes.d.ts +8 -3
- package/dist/_dts/api/src/sdk-event-upsert.d.ts +15 -1
- package/dist/_dts/api/src/sdkBlockUpsertContracts.d.ts +21 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +5 -28
- package/dist/_dts/api/src/sdkCourseBooking.d.ts +4 -4
- package/dist/_dts/api/src/sdkEventEndpointDefinitions.d.ts +1 -1
- package/dist/_dts/api/src/sdkEventOccurrenceRequestContracts.d.ts +43 -0
- package/dist/_dts/api/src/sdkManagedEventContracts.d.ts +4 -2
- package/dist/_dts/api/src/sdkPullEventContracts.d.ts +8 -1
- package/dist/_dts/api/src/seo.d.ts +4 -4
- package/dist/_dts/api/src/services.d.ts +4 -4
- package/dist/_dts/api/src/siteLifecycleEndpoints.d.ts +61 -0
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +19 -25
- package/dist/_dts/api/src/siteMembers.d.ts +10 -10
- package/dist/_dts/api/src/siteOnboarding.d.ts +16 -14
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +7 -3
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +5 -12
- package/dist/_dts/api/src/siteRuntimeEntry.d.ts +31 -0
- package/dist/_dts/billing/src/checkout/platform.d.ts +77 -0
- package/dist/_dts/billing/src/components/index.d.ts +25 -40
- package/dist/_dts/billing/src/membership/index.d.ts +1 -3
- package/dist/_dts/billing/src/plans/entitlements.d.ts +80 -0
- package/dist/_dts/billing/src/plans/registry.d.ts +16 -16
- package/dist/_dts/billing/src/plans/standing.d.ts +9 -2
- package/dist/_dts/billing/src/plans/types.d.ts +5 -15
- package/dist/_dts/billing/src/site-arrangements.d.ts +2 -2
- package/dist/_dts/billing/src/subscriptions/standingEvidence.d.ts +2 -4
- package/dist/_dts/billing/src/subscriptions/store.d.ts +17 -11
- package/dist/_dts/block-form/src/backend/store-backend.d.ts +6 -7
- package/dist/_dts/block-form/src/backend/types.d.ts +7 -0
- package/dist/_dts/block-form/src/widgets/FieldFrame.d.ts +3 -1
- package/dist/_dts/blocks/src/PageRenderer.d.ts +3 -4
- package/dist/_dts/blocks/src/client/events.d.ts +3 -0
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +24 -4
- package/dist/_dts/blocks/src/index.d.ts +1 -1
- package/dist/_dts/blocks/src/pageRenderAdmission.d.ts +18 -9
- package/dist/_dts/blocks/src/pageRendererContracts.d.ts +4 -0
- package/dist/_dts/blocks/src/portal/types.d.ts +0 -2
- package/dist/_dts/blocks/src/system/blocks/contact-newsletter.d.ts +2 -1
- package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +3 -1
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +4 -4
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +6 -1
- package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +4 -1
- package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/appointments.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +18 -0
- package/dist/_dts/blocks/src/system/runtime/api/types/portal.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/api/types/shop.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/components/booking/SuccessMessage.d.ts +4 -1
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +36 -6
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +18 -3
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessBookingFlow.d.ts +11 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/usePaymentVerification.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/hooks/usePolling.d.ts +7 -48
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.checkout-return-context.d.ts +7 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.completion.d.ts +11 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.headless.state.d.ts +13 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.interactive.d.ts +28 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.mailing-list-choice.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.mailing-list-state.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.payment-confirmation.d.ts +13 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.reserved-fields.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.state.d.ts +17 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.submit-actions.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.submit-handler.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.submit-success.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-runtime-sources.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/checkout.server.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/AttendeeDetailsStep.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationSurface.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationWizard.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/SuccessStep.d.ts +7 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/sessionStorage.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +5 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +18 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/dates.d.ts +37 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.client.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.d.ts +16 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCardPresentations.d.ts +13 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +5 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.block-submission.d.ts +2 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/shared/MagicLinkForm.d.ts +1 -14
- package/dist/_dts/blocks/src/system/runtime/nodes/shared/MagicLinkForm.state.d.ts +12 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/shop.interactive.d.ts +13 -0
- package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/shared/components/BookingMailingListNote.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/shared/components/DemoBookingPortalAccess.d.ts +22 -0
- package/dist/_dts/blocks/src/system/runtime/shared/components/DemoPortalSignInLink.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/shared/mailingListSignupCopy.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/shared/types.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/shared/utils/demoBookingPassStorage.d.ts +10 -0
- package/dist/_dts/blocks/src/system/runtime/shared/utils/demoPortalMagicLink.d.ts +29 -0
- package/dist/_dts/blocks/src/system/transforms/registry/_utils/surfaceForegroundStyles.d.ts +3 -2
- package/dist/_dts/blocks/src/system/transforms/registry/core.d.ts +2 -0
- package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +1 -3
- package/dist/_dts/commerce/src/purchase/event-registration-errors.d.ts +4 -0
- package/dist/_dts/content-editor/src/components/ContentFieldsForm.d.ts +2 -7
- package/dist/_dts/content-editor/src/controller/EditLeaseController.d.ts +39 -0
- package/dist/_dts/content-editor/src/controller/EditorWriteGate.d.ts +38 -0
- package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +25 -61
- package/dist/_dts/content-editor/src/controller/LinkedEntryLeaseBanner.d.ts +7 -0
- package/dist/_dts/content-editor/src/controller/LinkedEntryLeaseControllers.d.ts +14 -0
- package/dist/_dts/content-editor/src/controller/deriveEditorUnpublishedState.d.ts +6 -0
- package/dist/_dts/content-editor/src/controller/documentValueBaseline.d.ts +25 -0
- package/dist/_dts/content-editor/src/controller/editLeaseLossSignal.d.ts +6 -0
- package/dist/_dts/content-editor/src/controller/editLeaseNotice.d.ts +28 -0
- package/dist/_dts/content-editor/src/controller/editorClientId.d.ts +2 -0
- package/dist/_dts/content-editor/src/controller/editorEditability.d.ts +38 -0
- package/dist/_dts/content-editor/src/controller/editorLeaseParticipation.d.ts +34 -0
- package/dist/_dts/content-editor/src/controller/normalizedMetadataBaseline.d.ts +29 -0
- package/dist/_dts/content-editor/src/controller/pageSurfaceDocumentBaselines.d.ts +14 -0
- package/dist/_dts/content-editor/src/controller/pageSurfaceLifecycle.d.ts +11 -0
- package/dist/_dts/content-editor/src/controller/planDocumentBaselineRefresh.d.ts +19 -0
- package/dist/_dts/content-editor/src/controller/readDocumentLeaseBaselines.d.ts +19 -0
- package/dist/_dts/content-editor/src/controller/refreshDocumentLeaseBaseline.d.ts +12 -0
- package/dist/_dts/content-editor/src/controller/refreshLinkedEntry.d.ts +17 -0
- package/dist/_dts/content-editor/src/controller/replayRestoredEditorEffects.d.ts +2 -3
- package/dist/_dts/content-editor/src/controller/routeWrites.d.ts +26 -0
- package/dist/_dts/content-editor/src/controller/useAutosaveTriggers.d.ts +16 -17
- package/dist/_dts/content-editor/src/controller/useBlockedPublishPlan.d.ts +6 -2
- package/dist/_dts/content-editor/src/controller/useBlocksList.d.ts +3 -3
- package/dist/_dts/content-editor/src/controller/useEntryValueAutosaves.d.ts +21 -0
- package/dist/_dts/content-editor/src/controller/useInitialEditorUiStore.d.ts +24 -0
- package/dist/_dts/content-editor/src/controller/useServerBaselineReconciliation.d.ts +17 -0
- package/dist/_dts/content-editor/src/footerComposerPanelTypes.d.ts +1 -1
- package/dist/_dts/content-editor/src/hooks/applyBlockedPublishPlan.d.ts +5 -1
- package/dist/_dts/content-editor/src/hooks/blockDraftLifecycle.d.ts +8 -47
- package/dist/_dts/content-editor/src/hooks/editLeaseMachine.d.ts +120 -0
- package/dist/_dts/content-editor/src/hooks/publishability.d.ts +6 -10
- package/dist/_dts/content-editor/src/hooks/useAutosaveStatus.d.ts +3 -0
- package/dist/_dts/content-editor/src/hooks/useBlockAutosave.d.ts +5 -15
- package/dist/_dts/content-editor/src/hooks/useDebouncedLatestSave.d.ts +7 -5
- package/dist/_dts/content-editor/src/hooks/useEditLease.d.ts +28 -0
- package/dist/_dts/content-editor/src/hooks/useEntryActions.d.ts +25 -39
- package/dist/_dts/content-editor/src/hooks/useEntryMutations.d.ts +17 -19
- package/dist/_dts/content-editor/src/hooks/useLinkedEntryAutosave.d.ts +5 -8
- package/dist/_dts/content-editor/src/hooks/useValueAutosave.d.ts +64 -0
- package/dist/_dts/content-editor/src/hooks/validateBlocksForPublish.d.ts +0 -7
- package/dist/_dts/content-editor/src/index.d.ts +26 -7
- package/dist/_dts/content-editor/src/linkedEntries/domain.d.ts +12 -0
- package/dist/_dts/content-editor/src/linkedEntries/owner.d.ts +9 -0
- package/dist/_dts/content-editor/src/liveDrafts/draftProjection.d.ts +66 -0
- package/dist/_dts/content-editor/src/liveDrafts/linkedSaveHandovers.d.ts +37 -0
- package/dist/_dts/content-editor/src/liveDrafts/remoteDraftOverlay.d.ts +113 -0
- package/dist/_dts/content-editor/src/liveDrafts/useLiveDrafts.d.ts +32 -0
- package/dist/_dts/content-editor/src/liveDrafts/useRetentionTicks.d.ts +7 -0
- package/dist/_dts/content-editor/src/primitives/shared/activePreviewField.d.ts +6 -0
- package/dist/_dts/content-editor/src/primitives/shared/storeBinding.d.ts +1 -0
- package/dist/_dts/content-editor/src/services/contentEntryServices.d.ts +96 -19
- package/dist/_dts/content-editor/src/services/editorApiClient.d.ts +13 -0
- package/dist/_dts/content-editor/src/services/index.d.ts +2 -0
- package/dist/_dts/content-editor/src/services/pageSurfaceEditorServices.d.ts +23 -0
- package/dist/_dts/content-editor/src/sync/flushValues.d.ts +13 -0
- package/dist/_dts/content-editor/src/sync/lifecycleFailure.d.ts +51 -0
- package/dist/_dts/content-editor/src/sync/runLifecycle.d.ts +64 -0
- package/dist/_dts/content-editor/src/sync/schedulerValues.d.ts +27 -0
- package/dist/_dts/content-editor/src/sync/sendPlanning.d.ts +104 -0
- package/dist/_dts/content-editor/src/sync/valueSync.d.ts +114 -0
- package/dist/_dts/content-editor/src/ui/blockCollection.d.ts +8 -0
- package/dist/_dts/content-editor/src/ui/documentLifecycle.d.ts +18 -0
- package/dist/_dts/content-editor/src/ui/editorLeaseUiState.d.ts +7 -0
- package/dist/_dts/content-editor/src/ui/editorRefresh.d.ts +82 -0
- package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +102 -127
- package/dist/_dts/content-editor/src/ui/editorTransactionState.d.ts +1 -1
- package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +126 -72
- package/dist/_dts/content-editor/src/ui/editorValueSnapshot.d.ts +18 -0
- package/dist/_dts/content-editor/src/ui/serverBlockAdmission.d.ts +26 -0
- package/dist/_dts/content-editor/src/ui/stores/autosaveStore.d.ts +16 -27
- package/dist/_dts/content-editor/src/ui/stores/blockVersionsStore.d.ts +24 -0
- package/dist/_dts/content-editor/src/ui/stores/linkedEntryLeaseStore.d.ts +54 -0
- package/dist/_dts/content-editor/src/ui/stores/linkedSaveHandoversStore.d.ts +11 -0
- package/dist/_dts/content-editor/src/ui/stores/remoteDraftsStore.d.ts +10 -0
- package/dist/_dts/content-editor/src/ui/stores/types.d.ts +63 -3
- package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +2 -2
- package/dist/_dts/content-editor/src/useFooterNavigationLayout.d.ts +1 -1
- package/dist/_dts/content-model/src/content-types/builtin-schemas.d.ts +4 -4
- package/dist/_dts/content-model/src/content-types/builtins.d.ts +4 -4
- package/dist/_dts/content-model/src/definitions/shared.d.ts +11 -2
- package/dist/_dts/content-model/src/entry-slots/index.d.ts +1 -0
- package/dist/_dts/content-model/src/entry-slots/serializeAllowedBlocks.d.ts +2 -0
- package/dist/_dts/content-model/src/metadataConfig.d.ts +10 -38
- package/dist/_dts/content-model/src/templates/defaults.d.ts +0 -1
- package/dist/_dts/content-model/src/types.d.ts +0 -1
- package/dist/_dts/core/src/block-content-identity.d.ts +49 -1
- package/dist/_dts/core/src/branded.d.ts +12 -0
- package/dist/_dts/core/src/currency-format.d.ts +8 -2
- package/dist/_dts/core/src/demo-lifecycle-status.d.ts +2 -2
- package/dist/_dts/core/src/demo-warm-pool-target.d.ts +8 -0
- package/dist/_dts/core/src/edit-lease.d.ts +55 -0
- package/dist/_dts/core/src/editor-state.d.ts +38 -13
- package/dist/_dts/core/src/editor-value-sync.d.ts +79 -0
- package/dist/_dts/core/src/html-entities.d.ts +6 -0
- package/dist/_dts/core/src/index.d.ts +5 -1
- package/dist/_dts/core/src/mailing-list-runtime.d.ts +15 -0
- package/dist/_dts/core/src/mailing-list-setup.d.ts +2 -0
- package/dist/_dts/core/src/mailing-list-submission.d.ts +6 -0
- package/dist/_dts/core/src/navigation-portal-labels.d.ts +9 -0
- package/dist/_dts/core/src/participants.d.ts +0 -38
- package/dist/_dts/core/src/uuid.d.ts +7 -5
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +261 -175
- package/dist/_dts/editor/src/EditorProvider.d.ts +5 -0
- package/dist/_dts/editor/src/chrome/EditorChrome.d.ts +14 -0
- package/dist/_dts/editor/src/chrome/EditorStatusBar.d.ts +1 -0
- package/dist/_dts/editor/src/chrome/statusBarPresentation.d.ts +0 -1
- package/dist/_dts/editor/src/index.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +10 -9
- package/dist/_dts/editor-blocks/src/BlockForm.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/BlockCardFrame.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/BlockSettingsModal.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/actionPresentation.d.ts +1 -0
- package/dist/_dts/editor-blocks/src/block-editor/applyExtendedFieldDefaults.d.ts +3 -4
- package/dist/_dts/editor-blocks/src/block-editor/blockDraftBaselineSeed.d.ts +4 -8
- package/dist/_dts/editor-blocks/src/block-editor/editorBlockItem.d.ts +23 -0
- package/dist/_dts/editor-blocks/src/block-editor/generatedIconApplyCoordination.d.ts +2 -7
- package/dist/_dts/editor-blocks/src/block-editor/hooks/applyBlockStructureChange.d.ts +4 -0
- package/dist/_dts/editor-blocks/src/block-editor/hooks/buildInsertBlockHistoryCommand.d.ts +14 -5
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockBaselineSync.d.ts +21 -19
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockCreation.d.ts +2 -10
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockDuplication.d.ts +8 -16
- package/dist/_dts/editor-blocks/src/block-editor/owner.d.ts +6 -16
- package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +37 -9
- package/dist/_dts/editor-blocks/src/index.d.ts +2 -1
- package/dist/_dts/editor-blocks/src/widgets/entry-picker/loaders.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/link/loaders.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/loaders.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/reference/loaders.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/loaders.d.ts +3 -2
- package/dist/_dts/media-core/src/fileStorage.d.ts +4 -0
- package/dist/_dts/media-editor/src/context.d.ts +1 -1
- package/dist/_dts/media-editor/src/createMediaEditorProvider.d.ts +1 -2
- package/dist/_dts/media-editor/src/provider.d.ts +3 -2
- package/dist/_dts/media-react/src/hooks/internal/classification.d.ts +1 -1
- package/dist/_dts/media-react/src/hooks/useApiMediaUploader.d.ts +3 -1
- package/dist/_dts/preview-next/src/client/blocks/EditablePageRenderer.d.ts +7 -1
- package/dist/_dts/preview-next/src/client/blocks/composer/mergeDrafts.d.ts +8 -3
- package/dist/_dts/preview-next/src/client/blocks/composer/types.d.ts +10 -6
- package/dist/_dts/preview-next/src/client/blocks/linkedEntryRenderOverlay.d.ts +22 -2
- package/dist/_dts/preview-next/src/client/blocks/previewProjection/entryFieldRebinding.d.ts +13 -0
- package/dist/_dts/preview-next/src/client/blocks/previewProjection/index.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/blocks/previewProjection/types.d.ts +11 -1
- package/dist/_dts/preview-next/src/client/blocks/renderPrecedence.d.ts +17 -0
- package/dist/_dts/preview-next/src/client/blocks/useLinkedSaveHandoverRetention.d.ts +20 -0
- package/dist/_dts/preview-next/src/client/index.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/EntrySlotBlockEditorPanel.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewAccessBanners.d.ts +7 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewEntryControllerProvider.d.ts +24 -14
- package/dist/_dts/preview-next/src/client/preview/PreviewLeaseEditingMode.d.ts +2 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +9 -2
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeAutosave.d.ts +5 -0
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeWorkflowState.d.ts +3 -4
- package/dist/_dts/preview-next/src/client/preview/sdkConfig.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/preview/usePreviewCustomizeWorkflowState.d.ts +4 -0
- package/dist/_dts/realtime/src/client.d.ts +3 -0
- package/dist/_dts/realtime/src/draftChannel.d.ts +91 -0
- package/dist/_dts/realtime/src/drafts.d.ts +210 -0
- package/dist/_dts/realtime/src/index.d.ts +3 -0
- package/dist/_dts/realtime/src/leaseChangeSubscriptions.d.ts +8 -0
- package/dist/_dts/realtime/src/types.d.ts +113 -0
- package/dist/_dts/realtime/src/useDraftChannel.d.ts +34 -0
- package/dist/_dts/realtime/src/useSiteRealtimeReload.d.ts +27 -0
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +6 -55
- package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +2 -0
- package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +2 -0
- package/dist/_dts/sdk/src/rendering/helpers/loadPage.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +4 -2
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/surfaces/src/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/buttons/effects/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/footer/effectiveNavLinkStyle.d.ts +13 -0
- package/dist/_dts/theme-core/src/footer/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/header/effectiveNavLinkStyle.d.ts +17 -0
- package/dist/_dts/theme-core/src/header/generateHeaderLogoStyles.d.ts +15 -0
- package/dist/_dts/theme-core/src/header/generateHeaderNavLinkStyles.d.ts +4 -0
- package/dist/_dts/theme-core/src/header/index.d.ts +3 -0
- package/dist/_dts/theme-core/src/header/legacyNavLinkStyle.d.ts +1 -1
- package/dist/_dts/theme-core/src/header/openingForegroundProjection.d.ts +7 -0
- package/dist/_dts/theme-core/src/header/rootPaint.d.ts +4 -0
- package/dist/_dts/theme-core/src/navigation/effectPolicy.d.ts +38 -0
- package/dist/_dts/theme-core/src/navigation/generateNavLinkCSS.d.ts +4 -0
- package/dist/_dts/theme-core/src/navigation/types.d.ts +4 -0
- package/dist/_dts/theme-core/src/site-styles/accessibleSurfaces.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +2 -2
- package/dist/_dts/theme-core/src/surfaces/foregroundContract.d.ts +7 -0
- package/dist/_dts/theme-core/src/surfaces/foregroundInteraction.d.ts +29 -22
- package/dist/_dts/theme-core/src/surfaces/foregroundRoles.d.ts +10 -2
- package/dist/_dts/theme-core/src/surfaces/resolveSurfaceForeground.d.ts +9 -0
- package/dist/_dts/theme-core/src/utils/cssDeclarations.d.ts +2 -0
- package/dist/_dts/ui/src/badge.d.ts +2 -1
- package/dist/_dts/ui/src/button.d.ts +1 -1
- package/dist/_dts/ui/src/combobox-keys.d.ts +23 -0
- package/dist/_dts/ui/src/combobox-rows.d.ts +34 -0
- package/dist/_dts/ui/src/combobox.d.ts +26 -1
- package/dist/_dts/ui/src/date-picker.d.ts +5 -8
- package/dist/_dts/ui/src/editor-item-card.d.ts +1 -0
- package/dist/_dts/ui/src/field-trigger.d.ts +39 -0
- package/dist/_dts/ui/src/fieldControl.d.ts +27 -0
- package/dist/_dts/ui/src/index.d.ts +4 -1
- package/dist/_dts/ui/src/native-select.d.ts +8 -0
- package/dist/_dts/ui/src/popover.d.ts +7 -1
- package/dist/_dts/ui/src/segmented-control.d.ts +4 -0
- package/dist/_dts/ui/src/surface.d.ts +1 -1
- package/dist/client/{BookingConsentAgreement-BQKL045f.mjs → BookingMailingListNote-CzRt2dF_.mjs} +110 -97
- package/dist/client/{CheckboxChoice--W2n6yKs.mjs → CheckboxChoice-B33MqoUo.mjs} +1 -1
- package/dist/client/DemoBookingPortalAccess-mxqwap3f.mjs +344 -0
- package/dist/client/{EventCombined.client-BdRjVbhH.mjs → EventCombined.client-CDb11igO.mjs} +7 -7
- package/dist/client/{EventListing.client-DBxC6xOU.mjs → EventListing.client-EgYhzKPa.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-mHEJKrTs.mjs → LeafletStaticMap-gtmtaA2b.mjs} +1 -1
- package/dist/client/{scrollToBlock-BNgaEUpo.mjs → TerminalPanel-DvNUP5ot.mjs} +77 -77
- package/dist/client/{ThemedButton-CE5KYT6z.mjs → ThemedButton-C7CeUJjW.mjs} +2 -2
- package/dist/client/{accordion-BEQNSptH.mjs → accordion-kjvt49rA.mjs} +1 -1
- package/dist/client/{bookingForm-AMr-s5vw.mjs → bookingForm-pbRZordh.mjs} +411 -141
- package/dist/client/bookings.mjs +966 -396
- package/dist/client/{carousel-Bbt_QgJy.mjs → carousel-f4Zbmicv.mjs} +2 -2
- package/dist/client/{carousel.client-jahpU9Vz.mjs → carousel.client-A2lG-9od.mjs} +1 -1
- package/dist/client/{cart-CnWi30zJ.mjs → cart-DO20An50.mjs} +3 -3
- package/dist/client/{checkout-f3nkWgd4.mjs → checkout-Du5amDR_.mjs} +3 -3
- package/dist/client/{checkoutUrls-CW3-78uu.mjs → checkoutUrls-CXhko2Rv.mjs} +1 -1
- package/dist/client/client.mjs +3837 -2202
- package/dist/client/{colorStyles-CuJBiS-1.mjs → colorStyles-j5U9v5JA.mjs} +5 -1
- package/dist/client/{context-Bc8T6pCe.mjs → context-eW97E945.mjs} +4 -3
- package/dist/client/{dates-DUsCEzLb.mjs → dates-jPCirRea.mjs} +56 -11
- package/dist/client/{eventCalendar-CKwgXui5.mjs → eventCalendar-C2M-iE4j.mjs} +10 -10
- package/dist/client/{eventCombined-CBAOSTGR.mjs → eventCombined-W6ns3LHg.mjs} +4 -4
- package/dist/client/{eventDetails-Dh-_WiBD.mjs → eventDetails-CR-GT0f0.mjs} +4 -4
- package/dist/client/{eventListing-CA3frIH5.mjs → eventListing-BK8AfYZz.mjs} +4 -4
- package/dist/client/{eventRegistration-BHtsgdcg.mjs → eventRegistration-BJSd4KUu.mjs} +461 -266
- package/dist/client/{form-C2h3YAcg.mjs → form-BvpfbQaT.mjs} +5 -5
- package/dist/client/{headerSection-lwMuMTH9.mjs → headerSection-I5sUQ8x-.mjs} +3 -3
- package/dist/client/hooks.mjs +909 -163
- package/dist/client/{locationMap-DJ2bLODV.mjs → locationMap-BLvwf9_f.mjs} +4 -4
- package/dist/client/{FieldValidationMessage-AYanWFb-.mjs → mailingListSignupCopy-DZSHZrm6.mjs} +14 -1
- package/dist/client/{media-BtJ37tzS.mjs → media-Cl38iOMI.mjs} +11 -4
- package/dist/client/{newsletterForm-8Pu5K32g.mjs → newsletterForm-DrQ2weE8.mjs} +6 -6
- package/dist/client/{pricing-HHx3IgBz.mjs → pricing-BES87mrR.mjs} +1 -1
- package/dist/client/{productDetail-C_1odnAf.mjs → productDetail-Url9jcc5.mjs} +3 -3
- package/dist/client/{productList-CtCv-Nmx.mjs → productList-DE7ngEZJ.mjs} +3 -3
- package/dist/client/{propsDecoder-Dcgsncxb.mjs → propsDecoder-D1OtGXDV.mjs} +140 -22
- package/dist/client/rendering/client.mjs +2366 -997
- package/dist/client/rendering/islands.mjs +19 -19
- package/dist/client/rendering.mjs +4607 -2884
- package/dist/client/{routeIslandApiConfig-CWLP7wu3.mjs → routeIslandApiConfig-BG9Y-SHg.mjs} +1 -1
- package/dist/client/{shop-DQXrQ8kJ.mjs → shop-CJkuySJ3.mjs} +126 -79
- package/dist/client/{shop-commerce-B88zmWWo.mjs → shop-commerce-4rKj5n9h.mjs} +26 -14
- package/dist/client/{shop-commerce-store-DtSfkKuX.mjs → shop-commerce-store-Bxm75Pg6.mjs} +1 -1
- package/dist/client/{shopShared-cuaONpkJ.mjs → shopShared-DpoQDWfz.mjs} +5 -5
- package/dist/client/{useEventFilters-Bukew6Gb.mjs → useEventFilters-D8HliSqR.mjs} +33 -18
- package/dist/preview-next/before-render.mjs +314 -133
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/editor-base.css +53 -2
- package/dist/preview-next/editor-chrome.css +7 -4
- package/dist/preview-next/keepAlive.mjs +314 -133
- package/dist/preview-next/middleware.mjs +314 -133
- package/dist/{previewAuthStore-h5IgbSp4.mjs → previewAuthStore-BXXF3hhW.mjs} +316 -133
- package/dist/{sdk-runtime-DTc1uIXn.mjs → sdk-runtime-C2a05WjL.mjs} +2 -2
- package/dist/{separator-BpHS1KZK.mjs → separator-CuNhBAhS.mjs} +1 -1
- package/dist/server/components.mjs +6888 -6157
- package/dist/server/config-validation.mjs +931 -199
- package/dist/server/config.mjs +931 -199
- package/dist/server/data.mjs +929 -198
- package/dist/server/index.mjs +317 -134
- package/dist/server/navigation.mjs +13 -2
- package/dist/server/next.mjs +5003 -4340
- package/dist/server/page-converter.mjs +160 -78
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +6421 -5687
- package/dist/server/rendering.mjs +7683 -6933
- package/dist/server/routing.mjs +1035 -338
- package/dist/server/server.mjs +946 -256
- package/dist/server/theme-bridge.mjs +66 -17
- package/dist/server/theme.mjs +5 -1
- package/dist/styles/index.css +32 -4
- package/package.json +1 -1
- package/dist/_dts/billing/src/plans/display.d.ts +0 -15
- package/dist/_dts/content-editor/src/controller/buildBlockPublishedBaselines.d.ts +0 -4
- package/dist/_dts/content-editor/src/controller/buildPublishSuccessTransition.d.ts +0 -16
- package/dist/_dts/content-editor/src/controller/driver.d.ts +0 -14
- package/dist/_dts/content-editor/src/controller/seedDraftBaselinesFromBlocks.d.ts +0 -7
- package/dist/_dts/content-editor/src/controller/useEntrySyncHelpers.d.ts +0 -29
- package/dist/_dts/content-editor/src/hooks/autosaveScopePlanning.d.ts +0 -26
- package/dist/_dts/content-editor/src/hooks/useSimpleAutosave.d.ts +0 -64
- package/dist/_dts/content-editor/src/hooks/useStoreAutosave.d.ts +0 -48
- package/dist/_dts/content-editor/src/types.d.ts +0 -44
- package/dist/_dts/core/src/participant-identity.d.ts +0 -135
- 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) =>
|
|
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 {
|
|
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:
|
|
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:
|
|
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
|
|
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
|
|
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 {
|
|
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 =
|
|
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
|
-
|
|
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 =
|
|
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
|
-
|
|
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
|
|
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 {
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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 {};
|
|
@@ -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
|
|
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?:
|
|
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;
|