@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,27 +1,12 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { $ as FooterComposerPanel, $i as
|
|
3
|
-
import { d as unwrapResponse, f as getDashboardUrl, r as usePreviewAuth } from "./previewAuthStore-
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
2
|
+
import { $ as FooterComposerPanel, $i as VARIANT_ROLES, $o as valueStatus, $t as createStoreBackend, A as markApplySaving, Ai as curatedSiteStyles, An as listPageSurfaceContentSlots, B as setPaletteColors, Ba as CalloutDescription, Bn as resolvePageRouteSlug, C as cancelPreview, D as isPreviewingChange, Do as Maximize2, E as dismissWarnings, Eo as Monitor, F as previewFooterLook, Fa as SelectContent, Fn as routeLifecycleContext, Fo as ChevronDown, Ga as Input, Gi as curatedPalettes, H as syncStyleConfiguratorState, Ha as Popover, Hn as useEditorUiStore, I as previewHeaderLayout, Ia as SelectItem, Ii as resolveSdkFooterMode, Io as Check, Ja as TabsList, Ji as findButtonStyleRecipe, Jt as BlockEditor, Ka as Tabs, Ki as buttonStyleHoverPreferenceValue, L as previewHeaderStyle, La as SelectTrigger, Li as findFooterLook, Ln as isAdapterReferenceKind, Lo as Button, M as palettePreviewProjection, Mi as getCuratedSiteStyle, N as previewButtonStyle, No as ChevronRight, O as markApplyFailed, On as createManifestValidation, Oo as LoaderCircle, P as previewCuratedPalette, Pa as Select, Po as ChevronLeft, Q as resolvePreviewSidebarTab, Qi as buttonStyleSelectionKey, Qo as syncStateOf, Qt as FormRenderer, R as previewSiteStyle, Ra as SelectValue, Ri as getHeaderLayout, S as applyTypographyDraftPatch, T as deriveStyleConfiguratorCapabilities, U as toggleRow, Ua as PopoverContent, Un as useEditorUiStoreInstance, Uo as canWriteLinkedEntry, V as styleConfiguratorHistoryEntryForPersistedSelection, Va as SearchInput, Vn as resolveContentTitle, Vo as isEdited, Wa as PopoverTrigger, X as resolveStyleConfiguratorInitialSnapshot, Xi as updateButtonStyleHoverPreference, Ya as TabsTrigger, Yi as resolveButtonStyleSelection, Z as createOptimisticActionRunner, Zi as updateButtonStyleSelectionChoice, Zo as displayedValues, Zt as ManifestForm, _ as reportPreviewDesignError, _a as paletteColorEntries, _o as Tablet, ao as Surface, at as ContentFieldsForm, b as planSiteChromeSelection, bo as SlidersHorizontal, c as selectionSnapshotFromApplySiteStyleSelectionResponse, co as DropdownMenuItem, do as DropdownMenuTrigger, f as usePreviewDesignCoordinator, ft as useAutosaveStatus, g as PREVIEW_DESIGN_SAVE_ERROR_MESSAGE, io as CollapsibleTrigger, ir as toEditorBlockItem, j as openRow, jn as blocksKeys, jr as ThemedButtonSpecimen, k as markApplySaved, kn as listEntryPageContentSlots, l as deriveSiteStylePreviewUpdate, lo as DropdownMenuLabel, lt as useEntryController, n as useSiteChromeCustomizeOptional, no as Collapsible, oo as DropdownMenu, ot as useUISelector, po as X$1, qa as TabsContent, qi as buttonStyleSelectionParameterValue, ro as CollapsibleContent, s as buildApplySiteStyleSelectionBody, so as DropdownMenuContent, sr as ThemeScope, ts as assertNever$1, u as planConfiguratorPreview, uo as DropdownMenuSeparator, v as buildSiteChromeSelectionModels, va as paletteColorsSchema, vt as LinkedEntryLeaseBanner, w as createStyleConfiguratorState, x as applyResolvedSelections, y as cycleSiteChromeSelectionId, yo as Smartphone, z as resetTypographyToSaved, za as Callout, zi as getHeaderStyle, zn as deriveRouteMetadataPresentation, zo as cn } from "./SiteChromeCustomizeContext-CFJYh6vo.mjs";
|
|
3
|
+
import { d as unwrapResponse, f as getDashboardUrl, r as usePreviewAuth } from "./previewAuthStore-BXXF3hhW.mjs";
|
|
4
|
+
import { S as getSiteFontsStorageUrl, _ as usePreviewBlockCustomizeSelectionOptional, b as buildFontPreviewUrl, d as buildPreviewDashboardSetupUrl, f as resolvePreviewDashboardSetupHandoff, g as useBlockCustomizeControls, h as usePreviewSiteFontStorageUrl, m as resolvePreviewSidebarChromeModel, p as resolvePreviewEditorGuidanceModel, u as canInspectSiteStyle, v as PreviewFormProvider, x as generateFontFaceCss, y as previewWidgetOverrides } from "./SdkPreviewModeRuntime-DJ6utQ_R.mjs";
|
|
5
|
+
import { t as Separator } from "./separator-CuNhBAhS.mjs";
|
|
6
6
|
import React, { createContext, forwardRef, useCallback, useContext, useEffect, useId, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore, useTransition } from "react";
|
|
7
7
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
8
8
|
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
9
9
|
import { useRouter } from "next/navigation.js";
|
|
10
|
-
//#region ../preview-next/src/client/preview/footerInspection.ts
|
|
11
|
-
/** Shared by sidebar routing and the footer panel's initial editing target. */
|
|
12
|
-
function resolveFooterInspection(inspection) {
|
|
13
|
-
return inspection?.kind === "footer" || inspection?.kind === "footer-module" ? inspection : null;
|
|
14
|
-
}
|
|
15
|
-
function footerComposerInspectionProps(inspection) {
|
|
16
|
-
return {
|
|
17
|
-
initialTarget: inspection?.kind === "footer-module" ? {
|
|
18
|
-
kind: "module",
|
|
19
|
-
moduleId: inspection.moduleId
|
|
20
|
-
} : { kind: "overview" },
|
|
21
|
-
initialTargetRequestId: inspection?.requestId
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
//#endregion
|
|
25
10
|
//#region ../../node_modules/.pnpm/react-colorful@5.7.0_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/react-colorful/dist/index.mjs
|
|
26
11
|
function u() {
|
|
27
12
|
return (u = Object.assign || function(e) {
|
|
@@ -818,6 +803,21 @@ function normalizeFieldUi(value) {
|
|
|
818
803
|
return value;
|
|
819
804
|
}
|
|
820
805
|
//#endregion
|
|
806
|
+
//#region ../preview-next/src/client/preview/footerInspection.ts
|
|
807
|
+
/** Shared by sidebar routing and the footer panel's initial editing target. */
|
|
808
|
+
function resolveFooterInspection(inspection) {
|
|
809
|
+
return inspection?.kind === "footer" || inspection?.kind === "footer-module" ? inspection : null;
|
|
810
|
+
}
|
|
811
|
+
function footerComposerInspectionProps(inspection) {
|
|
812
|
+
return {
|
|
813
|
+
initialTarget: inspection?.kind === "footer-module" ? {
|
|
814
|
+
kind: "module",
|
|
815
|
+
moduleId: inspection.moduleId
|
|
816
|
+
} : { kind: "overview" },
|
|
817
|
+
initialTargetRequestId: inspection?.requestId
|
|
818
|
+
};
|
|
819
|
+
}
|
|
820
|
+
//#endregion
|
|
821
821
|
//#region ../preview-next/src/client/preview/PreviewZoomControls.tsx
|
|
822
822
|
function PreviewZoomControls({ zoom, onZoomChange, disabled }) {
|
|
823
823
|
return /* @__PURE__ */ jsxs(Select, {
|
|
@@ -1075,13 +1075,37 @@ function resolveSubrouteNotice(ctx, args) {
|
|
|
1075
1075
|
const EMPTY_BLOCKS = [];
|
|
1076
1076
|
const EMPTY_SLOTS = [];
|
|
1077
1077
|
const EMPTY_SELECTION = { kind: "none" };
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1078
|
+
/**
|
|
1079
|
+
* The shared slot-list keys, so the controller's refreshes (a lease grant, a
|
|
1080
|
+
* discard that reverts sections) re-read this panel's slots.
|
|
1081
|
+
*/
|
|
1082
|
+
function pageContentSlotsKey(siteId, typeKey, entryId, pageSurfaceId) {
|
|
1083
|
+
return pageSurfaceId ? blocksKeys.surfaceSlots(siteId, pageSurfaceId) : blocksKeys.entrySlots(siteId, typeKey, entryId);
|
|
1084
|
+
}
|
|
1085
|
+
function loadContentSlots(apiClient, siteId, typeKey, entryId, pageSurfaceId) {
|
|
1086
|
+
return pageSurfaceId ? listPageSurfaceContentSlots(apiClient, {
|
|
1081
1087
|
siteId,
|
|
1082
|
-
|
|
1088
|
+
pageSurfaceId
|
|
1089
|
+
}) : listEntryPageContentSlots(apiClient, {
|
|
1090
|
+
siteId,
|
|
1091
|
+
type: typeKey,
|
|
1083
1092
|
entryId
|
|
1084
|
-
|
|
1093
|
+
});
|
|
1094
|
+
}
|
|
1095
|
+
function slotOwner(slot, typeKey, entryId, pageSurfaceId) {
|
|
1096
|
+
if (!pageSurfaceId) return {
|
|
1097
|
+
kind: "entry-slot",
|
|
1098
|
+
type: typeKey,
|
|
1099
|
+
entryId,
|
|
1100
|
+
slotKey: slot.slotKey
|
|
1101
|
+
};
|
|
1102
|
+
if (!("compositionHash" in slot)) throw new Error("Page surface slot is missing its revision");
|
|
1103
|
+
return {
|
|
1104
|
+
kind: "surface-slot",
|
|
1105
|
+
pageSurfaceId,
|
|
1106
|
+
slotKey: slot.slotKey,
|
|
1107
|
+
compositionHash: slot.compositionHash
|
|
1108
|
+
};
|
|
1085
1109
|
}
|
|
1086
1110
|
function getAllowedBlockKinds(slot) {
|
|
1087
1111
|
return slot.allowedBlocks.blockKinds;
|
|
@@ -1126,26 +1150,23 @@ function updateBlocksWithSavedContent(blocks, blockId, content) {
|
|
|
1126
1150
|
function getErrorMessage(error) {
|
|
1127
1151
|
return error instanceof Error ? error.message : "Unable to load Page Content.";
|
|
1128
1152
|
}
|
|
1129
|
-
function EntrySlotBlockEditorPanel({ siteId, dashboardBaseUrl, typeKey, entryId, theme = null, apiClient, sdkConfig = null, widgets }) {
|
|
1153
|
+
function EntrySlotBlockEditorPanel({ siteId, dashboardBaseUrl, typeKey, entryId, pageSurfaceId, theme = null, apiClient, sdkConfig = null, widgets }) {
|
|
1130
1154
|
const router = useRouter();
|
|
1131
1155
|
const queryClient = useQueryClient();
|
|
1132
1156
|
const uiStore = useEditorUiStoreInstance();
|
|
1133
1157
|
const blockEditorRef = useRef(null);
|
|
1134
1158
|
const focusRequest = useEditorUiStore((state) => state.focusRequest);
|
|
1135
|
-
const blockAutosaveStatus =
|
|
1159
|
+
const blockAutosaveStatus = useAutosaveStatus("blocks").status;
|
|
1136
1160
|
const [slotSelection, setSlotSelection] = useState(EMPTY_SELECTION);
|
|
1137
|
-
const queryKey = useMemo(() =>
|
|
1161
|
+
const queryKey = useMemo(() => pageContentSlotsKey(siteId, typeKey, entryId, pageSurfaceId), [
|
|
1138
1162
|
entryId,
|
|
1163
|
+
pageSurfaceId,
|
|
1139
1164
|
siteId,
|
|
1140
1165
|
typeKey
|
|
1141
1166
|
]);
|
|
1142
1167
|
const slotsQuery = useQuery({
|
|
1143
1168
|
queryKey,
|
|
1144
|
-
queryFn: () =>
|
|
1145
|
-
siteId,
|
|
1146
|
-
type: typeKey,
|
|
1147
|
-
entryId
|
|
1148
|
-
}),
|
|
1169
|
+
queryFn: () => loadContentSlots(apiClient, siteId, typeKey, entryId, pageSurfaceId),
|
|
1149
1170
|
staleTime: 3e4
|
|
1150
1171
|
});
|
|
1151
1172
|
const handleBlockSave = useCallback((blockId, content) => {
|
|
@@ -1175,7 +1196,17 @@ function EntrySlotBlockEditorPanel({ siteId, dashboardBaseUrl, typeKey, entryId,
|
|
|
1175
1196
|
const warnings = slotsQuery.data?.warnings ?? [];
|
|
1176
1197
|
const selection = useMemo(() => resolveSlotSelection(slotSelection, slots), [slotSelection, slots]);
|
|
1177
1198
|
const selectedSlot = useMemo(() => findSelectedSlot(selection, slots), [selection, slots]);
|
|
1178
|
-
const selectedBlocks = selectedSlot?.blocks ?? EMPTY_BLOCKS;
|
|
1199
|
+
const selectedBlocks = useMemo(() => (selectedSlot?.blocks ?? EMPTY_BLOCKS).map(toEditorBlockItem), [selectedSlot]);
|
|
1200
|
+
const collectionReads = useMemo(() => slots.map((slot) => ({
|
|
1201
|
+
owner: slotOwner(slot, typeKey, entryId, pageSurfaceId),
|
|
1202
|
+
currentBlockIds: slot.blocks.map((block) => block.id),
|
|
1203
|
+
publishedBlockIds: slot.publishedBlockIds
|
|
1204
|
+
})), [
|
|
1205
|
+
slots,
|
|
1206
|
+
typeKey,
|
|
1207
|
+
entryId,
|
|
1208
|
+
pageSurfaceId
|
|
1209
|
+
]);
|
|
1179
1210
|
const focusRequestedBlockField = useCallback((editor) => {
|
|
1180
1211
|
if (!editor) return false;
|
|
1181
1212
|
if (!focusRequest?.blockId) return false;
|
|
@@ -1227,13 +1258,12 @@ function EntrySlotBlockEditorPanel({ siteId, dashboardBaseUrl, typeKey, entryId,
|
|
|
1227
1258
|
ref: handleBlockEditorRef,
|
|
1228
1259
|
siteId,
|
|
1229
1260
|
dashboardBaseUrl,
|
|
1230
|
-
owner:
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
slotKey: selectedSlot.slotKey
|
|
1261
|
+
owner: slotOwner(selectedSlot, typeKey, entryId, pageSurfaceId),
|
|
1262
|
+
source: {
|
|
1263
|
+
kind: "server",
|
|
1264
|
+
blocks: selectedBlocks
|
|
1235
1265
|
},
|
|
1236
|
-
|
|
1266
|
+
collectionReads,
|
|
1237
1267
|
apiClient,
|
|
1238
1268
|
uiStore,
|
|
1239
1269
|
theme,
|
|
@@ -1263,7 +1293,11 @@ function EntrySlotBlockEditorPanel({ siteId, dashboardBaseUrl, typeKey, entryId,
|
|
|
1263
1293
|
value: selectedSlot.slotKey,
|
|
1264
1294
|
onValueChange: async (nextSlotKey) => {
|
|
1265
1295
|
if (blockAutosaveStatus === "saving") return;
|
|
1266
|
-
|
|
1296
|
+
const blockKeys = uiStore.getState().drafts.inspect().map((draft) => ({
|
|
1297
|
+
kind: "block",
|
|
1298
|
+
blockId: draft.id
|
|
1299
|
+
}));
|
|
1300
|
+
await uiStore.getState().autosave.flushValues("save-draft", { keys: blockKeys }).catch(() => null);
|
|
1267
1301
|
setSlotSelection({
|
|
1268
1302
|
kind: "selected",
|
|
1269
1303
|
slotKey: nextSlotKey
|
|
@@ -1285,7 +1319,7 @@ function EntrySlotBlockEditorPanel({ siteId, dashboardBaseUrl, typeKey, entryId,
|
|
|
1285
1319
|
}
|
|
1286
1320
|
//#endregion
|
|
1287
1321
|
//#region ../preview-next/src/client/preview/EntryEditorPanel.tsx
|
|
1288
|
-
function EntryEditorPanel({ siteId, dashboardBaseUrl, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, apiClient, entrySubrouteContext, metadataPanel, linkedEntrySection, widgets, sdkConfig, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange }) {
|
|
1322
|
+
function EntryEditorPanel({ siteId, dashboardBaseUrl, entryData, pageSurfaceId, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, apiClient, entrySubrouteContext, metadataPanel, linkedEntrySection, widgets, sdkConfig, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange }) {
|
|
1289
1323
|
const [contentOpen, setContentOpen] = useState(true);
|
|
1290
1324
|
const [pageContentOpen, setPageContentOpen] = useState(false);
|
|
1291
1325
|
const [templateOpen, setTemplateOpen] = useState(false);
|
|
@@ -1350,7 +1384,6 @@ function EntryEditorPanel({ siteId, dashboardBaseUrl, entryData, contentTypeSche
|
|
|
1350
1384
|
theme: theme ?? null,
|
|
1351
1385
|
previewClient: apiClient,
|
|
1352
1386
|
children: /* @__PURE__ */ jsx(ContentFieldsForm, {
|
|
1353
|
-
siteId,
|
|
1354
1387
|
form: contentFormSpec,
|
|
1355
1388
|
initialValues: contentInitialValues,
|
|
1356
1389
|
widgets
|
|
@@ -1387,6 +1420,7 @@ function EntryEditorPanel({ siteId, dashboardBaseUrl, entryData, contentTypeSche
|
|
|
1387
1420
|
dashboardBaseUrl,
|
|
1388
1421
|
typeKey: entryData.type,
|
|
1389
1422
|
entryId: entryData.id,
|
|
1423
|
+
pageSurfaceId,
|
|
1390
1424
|
theme,
|
|
1391
1425
|
apiClient,
|
|
1392
1426
|
sdkConfig: sdkConfig ?? null,
|
|
@@ -1617,14 +1651,38 @@ function formatBlockKindLabel(blockKind) {
|
|
|
1617
1651
|
//#endregion
|
|
1618
1652
|
//#region ../preview-next/src/client/preview/PageBlockEditorPanel.tsx
|
|
1619
1653
|
function usePageBlockEditorPanelControls(uiStoreForBlockEditor) {
|
|
1620
|
-
const
|
|
1654
|
+
const customize = useBlockCustomizeNavigation();
|
|
1621
1655
|
const [designOpen, setDesignOpen] = useState(false);
|
|
1622
|
-
const [customizeOpen, setCustomizeOpen] = useState(false);
|
|
1623
1656
|
const [contentOpen, setContentOpen] = useState(true);
|
|
1624
1657
|
const [detailsOpen, setDetailsOpen] = useState(false);
|
|
1625
1658
|
const pendingDesignOpenRequest = useUISelector(uiStoreForBlockEditor, (state) => state.previewDesignOpenRequest);
|
|
1626
1659
|
const [designOpenRequest, setDesignOpenRequest] = useState(null);
|
|
1627
1660
|
const designSectionRef = useRef(null);
|
|
1661
|
+
useEffect(() => {
|
|
1662
|
+
if (!pendingDesignOpenRequest) return;
|
|
1663
|
+
setDesignOpenRequest(pendingDesignOpenRequest);
|
|
1664
|
+
setDesignOpen(true);
|
|
1665
|
+
designSectionRef.current?.scrollIntoView({
|
|
1666
|
+
block: "start",
|
|
1667
|
+
behavior: "smooth"
|
|
1668
|
+
});
|
|
1669
|
+
uiStoreForBlockEditor.getState().consumePreviewDesignOpenRequest(pendingDesignOpenRequest.requestId);
|
|
1670
|
+
}, [pendingDesignOpenRequest, uiStoreForBlockEditor]);
|
|
1671
|
+
return {
|
|
1672
|
+
...customize,
|
|
1673
|
+
designOpen,
|
|
1674
|
+
setDesignOpen,
|
|
1675
|
+
contentOpen,
|
|
1676
|
+
setContentOpen,
|
|
1677
|
+
detailsOpen,
|
|
1678
|
+
setDetailsOpen,
|
|
1679
|
+
designOpenRequest,
|
|
1680
|
+
designSectionRef
|
|
1681
|
+
};
|
|
1682
|
+
}
|
|
1683
|
+
function useBlockCustomizeNavigation() {
|
|
1684
|
+
const customizeSelection = usePreviewBlockCustomizeSelectionOptional();
|
|
1685
|
+
const [customizeOpen, setCustomizeOpen] = useState(false);
|
|
1628
1686
|
const customizeSectionRef = useRef(null);
|
|
1629
1687
|
const selectionKind = customizeSelection?.selection.kind;
|
|
1630
1688
|
const selectionRequestId = customizeSelection?.selection.kind === "selected" ? customizeSelection.selection.requestId : 0;
|
|
@@ -1632,46 +1690,39 @@ function usePageBlockEditorPanelControls(uiStoreForBlockEditor) {
|
|
|
1632
1690
|
customizeSelection?.inspectBlock(blockId);
|
|
1633
1691
|
setCustomizeOpen(true);
|
|
1634
1692
|
}, [customizeSelection]);
|
|
1693
|
+
const handleCustomizeMenuClose = useCallback(() => {
|
|
1694
|
+
customizeSectionRef.current?.focus({ preventScroll: true });
|
|
1695
|
+
customizeSectionRef.current?.scrollIntoView({
|
|
1696
|
+
block: "start",
|
|
1697
|
+
behavior: "smooth"
|
|
1698
|
+
});
|
|
1699
|
+
}, []);
|
|
1635
1700
|
const blockActionPresentation = useMemo(() => customizeSelection ? {
|
|
1636
1701
|
kind: "menu",
|
|
1637
1702
|
customize: {
|
|
1638
1703
|
kind: "external",
|
|
1639
|
-
onSelect: handleCustomizeBlock
|
|
1704
|
+
onSelect: handleCustomizeBlock,
|
|
1705
|
+
onAfterMenuClose: handleCustomizeMenuClose
|
|
1640
1706
|
}
|
|
1641
1707
|
} : {
|
|
1642
1708
|
kind: "menu",
|
|
1643
1709
|
customize: { kind: "modal" }
|
|
1644
|
-
}, [
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
|
|
1648
|
-
|
|
1649
|
-
block: "start",
|
|
1650
|
-
behavior: "smooth"
|
|
1651
|
-
});
|
|
1652
|
-
}
|
|
1653
|
-
}, [selectionKind, selectionRequestId]);
|
|
1710
|
+
}, [
|
|
1711
|
+
customizeSelection,
|
|
1712
|
+
handleCustomizeBlock,
|
|
1713
|
+
handleCustomizeMenuClose
|
|
1714
|
+
]);
|
|
1654
1715
|
useEffect(() => {
|
|
1655
|
-
if (
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
designSectionRef.current?.scrollIntoView({
|
|
1716
|
+
if (selectionKind !== "selected") return;
|
|
1717
|
+
setCustomizeOpen(true);
|
|
1718
|
+
customizeSectionRef.current?.scrollIntoView({
|
|
1659
1719
|
block: "start",
|
|
1660
1720
|
behavior: "smooth"
|
|
1661
1721
|
});
|
|
1662
|
-
|
|
1663
|
-
}, [pendingDesignOpenRequest, uiStoreForBlockEditor]);
|
|
1722
|
+
}, [selectionKind, selectionRequestId]);
|
|
1664
1723
|
return {
|
|
1665
|
-
designOpen,
|
|
1666
|
-
setDesignOpen,
|
|
1667
1724
|
customizeOpen,
|
|
1668
1725
|
setCustomizeOpen,
|
|
1669
|
-
contentOpen,
|
|
1670
|
-
setContentOpen,
|
|
1671
|
-
detailsOpen,
|
|
1672
|
-
setDetailsOpen,
|
|
1673
|
-
designOpenRequest,
|
|
1674
|
-
designSectionRef,
|
|
1675
1726
|
customizeSectionRef,
|
|
1676
1727
|
blockActionPresentation
|
|
1677
1728
|
};
|
|
@@ -1698,7 +1749,7 @@ function PageBlockEditorPanel(props) {
|
|
|
1698
1749
|
bookingOfferingPresets: props.bookingOfferingPresets,
|
|
1699
1750
|
sdkConfig: props.sdkConfig ?? null,
|
|
1700
1751
|
children: /* @__PURE__ */ jsxs("div", {
|
|
1701
|
-
className: `min-h-0 flex-1 space-y-0 ${takeover ? "flex flex-col overflow-hidden" : "overflow-auto"}`,
|
|
1752
|
+
className: `min-h-0 flex-1 space-y-0 ${takeover ? "flex flex-col overflow-hidden" : "overflow-x-hidden overflow-y-auto"}`,
|
|
1702
1753
|
"data-design-takeover-active": takeover ? "true" : "false",
|
|
1703
1754
|
children: [
|
|
1704
1755
|
/* @__PURE__ */ jsx(LinkedEntrySection, {
|
|
@@ -1736,7 +1787,7 @@ function PageBlockEditorPanel(props) {
|
|
|
1736
1787
|
kind: "page",
|
|
1737
1788
|
pageId: props.pageId
|
|
1738
1789
|
},
|
|
1739
|
-
|
|
1790
|
+
source: { kind: "mounted" },
|
|
1740
1791
|
uiStore: props.uiStoreForBlockEditor,
|
|
1741
1792
|
apiClient: props.apiClient,
|
|
1742
1793
|
onBlocksChange: props.onBlocksChange,
|
|
@@ -1770,11 +1821,12 @@ function StandardSection({ label, open, onOpenChange, hidden, sectionRef, childr
|
|
|
1770
1821
|
open,
|
|
1771
1822
|
onOpenChange,
|
|
1772
1823
|
children: /* @__PURE__ */ jsxs("div", {
|
|
1773
|
-
ref: sectionRef,
|
|
1774
1824
|
className: "border-b",
|
|
1775
1825
|
children: [/* @__PURE__ */ jsx(CollapsibleTrigger, {
|
|
1776
1826
|
asChild: true,
|
|
1777
1827
|
children: /* @__PURE__ */ jsxs("div", {
|
|
1828
|
+
ref: sectionRef,
|
|
1829
|
+
tabIndex: sectionRef ? 0 : void 0,
|
|
1778
1830
|
className: "flex cursor-pointer items-center gap-2 px-4 py-3 hover:bg-accent/40",
|
|
1779
1831
|
children: [/* @__PURE__ */ jsx(ChevronRight, { className: `h-4 w-4 transition ${open ? "rotate-90" : ""}` }), /* @__PURE__ */ jsx("span", {
|
|
1780
1832
|
className: "text-sm font-semibold",
|
|
@@ -4423,7 +4475,10 @@ function isRecord(value) {
|
|
|
4423
4475
|
}
|
|
4424
4476
|
//#endregion
|
|
4425
4477
|
//#region ../preview-next/src/client/preview/PreviewEditorSidebar.tsx
|
|
4426
|
-
function
|
|
4478
|
+
function assistantTabAvailable(input) {
|
|
4479
|
+
return input.enabled && Boolean(input.pageId && input.bearerToken && input.canEdit);
|
|
4480
|
+
}
|
|
4481
|
+
function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl = null, pageId, pageNodeType, entryData, contentTypeSchema, referenceContentTypeKeys = [], draftContent, currentTemplate, theme, themeId = null, themeSelectionId = null, themeSelectionVersion = null, themeSelectionUpdatedAt = null, themeSelectionButtonStyleSelection = null, themeSelectionButtonStyleRepairs, themeSelectionHeaderSelection = null, themeSelectionFooterLookId = null, themeSelectionHeaderLogo, apiClient, bearerToken, entrySubrouteContext, assistantPanel, sdkConfig, bookingOfferingPresets, siteStyleAccess = { kind: "hidden" }, activeTab, onTabChange, onClose, onFooterSaved, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange }) {
|
|
4427
4482
|
const controller = useEntryController();
|
|
4428
4483
|
const controllerBlocks = controller.blocks;
|
|
4429
4484
|
const uiStore = useEditorUiStoreInstance();
|
|
@@ -4449,28 +4504,16 @@ function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl = null, page
|
|
|
4449
4504
|
surfaceId
|
|
4450
4505
|
]);
|
|
4451
4506
|
const showAssistantTab = Boolean(assistantPanel);
|
|
4452
|
-
const assistantAvailable =
|
|
4507
|
+
const assistantAvailable = assistantTabAvailable({
|
|
4508
|
+
enabled: showAssistantTab,
|
|
4509
|
+
pageId,
|
|
4510
|
+
bearerToken,
|
|
4511
|
+
canEdit
|
|
4512
|
+
});
|
|
4453
4513
|
const effectiveActiveTab = showAssistantTab ? resolvePreviewSidebarTab(activeTab) : "editor";
|
|
4454
4514
|
const blockItems = useMemo(() => controllerBlocks.list, [controllerBlocks.list]);
|
|
4455
4515
|
const blockEditorRef = useRef(null);
|
|
4456
4516
|
const contentFormWidgets = useMemo(() => previewWidgetOverrides, []);
|
|
4457
|
-
const handleBlocksChange = useCallback((nextItems) => {
|
|
4458
|
-
controllerBlocks.actions.setList(nextItems);
|
|
4459
|
-
const drafts = uiStore.getState().drafts;
|
|
4460
|
-
const extractData = (content) => {
|
|
4461
|
-
if (!content || typeof content !== "object") return null;
|
|
4462
|
-
const obj = content;
|
|
4463
|
-
if ("data" in obj && obj.data && typeof obj.data === "object") return obj.data;
|
|
4464
|
-
return obj;
|
|
4465
|
-
};
|
|
4466
|
-
for (const block of nextItems) {
|
|
4467
|
-
if (!block.id) continue;
|
|
4468
|
-
const baseline = extractData(block.content ?? block.draftContent ?? block.publishedContent ?? null);
|
|
4469
|
-
const blockId = unsafeAsEditorBlockId(block.id);
|
|
4470
|
-
if (drafts.getBlockSnapshot(blockId)) drafts.updateBlockBaseline(blockId, baseline, { kind: block.kind });
|
|
4471
|
-
else drafts.initNewBlock(blockId, baseline, { kind: block.kind });
|
|
4472
|
-
}
|
|
4473
|
-
}, [controllerBlocks.actions, uiStore]);
|
|
4474
4517
|
useEffect(() => {
|
|
4475
4518
|
if (entryData) return;
|
|
4476
4519
|
const req = focusRequest;
|
|
@@ -4488,10 +4531,12 @@ function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl = null, page
|
|
|
4488
4531
|
return /* @__PURE__ */ jsx(PreviewMetadataPanel, {
|
|
4489
4532
|
ownerKind: entryData ? "content" : "page",
|
|
4490
4533
|
contentTypeKey: entryData?.type ?? null,
|
|
4491
|
-
entry: controller.entry
|
|
4534
|
+
entry: controller.entry,
|
|
4535
|
+
statusMessage: controller.toolbar.publishedMessage ?? null
|
|
4492
4536
|
});
|
|
4493
4537
|
}, [
|
|
4494
4538
|
controller.entry,
|
|
4539
|
+
controller.toolbar.publishedMessage,
|
|
4495
4540
|
entryData,
|
|
4496
4541
|
pageId
|
|
4497
4542
|
]);
|
|
@@ -4525,6 +4570,7 @@ function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl = null, page
|
|
|
4525
4570
|
siteId,
|
|
4526
4571
|
dashboardBaseUrl,
|
|
4527
4572
|
entryData,
|
|
4573
|
+
pageSurfaceId: pageNodeType === "page_surface" ? pageId : null,
|
|
4528
4574
|
contentTypeSchema,
|
|
4529
4575
|
referenceContentTypeKeys,
|
|
4530
4576
|
draftContent,
|
|
@@ -4551,7 +4597,7 @@ function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl = null, page
|
|
|
4551
4597
|
blockItems,
|
|
4552
4598
|
uiStoreForBlockEditor,
|
|
4553
4599
|
blockEditorRef,
|
|
4554
|
-
onBlocksChange:
|
|
4600
|
+
onBlocksChange: controllerBlocks.actions.setList,
|
|
4555
4601
|
metadataPanel: metadataSectionContent,
|
|
4556
4602
|
designTakeoverActive,
|
|
4557
4603
|
designPanel: canInspectSiteStyle(siteStyleAccess) ? /* @__PURE__ */ jsx(StyleConfigurator, {
|
|
@@ -4651,10 +4697,33 @@ function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl = null, page
|
|
|
4651
4697
|
})
|
|
4652
4698
|
});
|
|
4653
4699
|
}
|
|
4654
|
-
function PreviewMetadataPanel({ ownerKind, contentTypeKey, entry }) {
|
|
4655
|
-
const
|
|
4700
|
+
function PreviewMetadataPanel({ ownerKind, contentTypeKey, entry, statusMessage }) {
|
|
4701
|
+
const metadataPresentation = usePreviewMetadataPresentation(ownerKind, contentTypeKey, entry);
|
|
4702
|
+
const manifest = metadataPresentation.manifest;
|
|
4703
|
+
const backend = usePreviewMetadataBackend(manifest, routeLifecycleContext(entry)?.draftStatus ?? "draft");
|
|
4704
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
4705
|
+
className: "space-y-4",
|
|
4706
|
+
children: [
|
|
4707
|
+
metadataPresentation.kind === "page-homepage" ? /* @__PURE__ */ jsx("div", {
|
|
4708
|
+
className: "inline-flex rounded-md bg-muted px-2 py-1 text-xs font-medium text-muted-foreground",
|
|
4709
|
+
children: "Homepage"
|
|
4710
|
+
}) : null,
|
|
4711
|
+
statusMessage ? /* @__PURE__ */ jsx("p", {
|
|
4712
|
+
className: "text-xs text-muted-foreground",
|
|
4713
|
+
"data-testid": "preview-metadata-status",
|
|
4714
|
+
children: statusMessage
|
|
4715
|
+
}) : null,
|
|
4716
|
+
/* @__PURE__ */ jsx(ManifestForm, {
|
|
4717
|
+
manifest,
|
|
4718
|
+
backend,
|
|
4719
|
+
className: "space-y-4"
|
|
4720
|
+
})
|
|
4721
|
+
]
|
|
4722
|
+
});
|
|
4723
|
+
}
|
|
4724
|
+
function usePreviewMetadataPresentation(ownerKind, contentTypeKey, entry) {
|
|
4656
4725
|
const currentSlug = useEditorUiStore((state) => state.metadata.getAtPath("draftSlug")) ?? void 0;
|
|
4657
|
-
|
|
4726
|
+
return useMemo(() => {
|
|
4658
4727
|
if (ownerKind === "content") return deriveRouteMetadataPresentation({
|
|
4659
4728
|
kind: "content",
|
|
4660
4729
|
typeKey: contentTypeKey
|
|
@@ -4671,33 +4740,89 @@ function PreviewMetadataPanel({ ownerKind, contentTypeKey, entry }) {
|
|
|
4671
4740
|
entry,
|
|
4672
4741
|
ownerKind
|
|
4673
4742
|
]);
|
|
4674
|
-
|
|
4675
|
-
|
|
4743
|
+
}
|
|
4744
|
+
/** The metadata form's backend; slug auto-generation reads the snapshot's status from its read-only context (row SL1). */
|
|
4745
|
+
function usePreviewMetadataBackend(manifest, draftStatus) {
|
|
4746
|
+
const uiStore = useEditorUiStoreInstance();
|
|
4676
4747
|
const validation = useMemo(() => createManifestValidation(manifest), [manifest]);
|
|
4677
|
-
|
|
4748
|
+
return useMemo(() => createStoreBackend({
|
|
4678
4749
|
scope: "metadata",
|
|
4679
4750
|
store: uiStore,
|
|
4751
|
+
context: { draftStatus },
|
|
4680
4752
|
validateFn: (values) => {
|
|
4681
4753
|
const result = validation.schema.safeParse(values);
|
|
4682
|
-
|
|
4683
|
-
return [];
|
|
4754
|
+
return result.success ? [] : result.error.issues;
|
|
4684
4755
|
}
|
|
4685
|
-
}), [
|
|
4756
|
+
}), [
|
|
4757
|
+
draftStatus,
|
|
4758
|
+
uiStore,
|
|
4759
|
+
validation
|
|
4760
|
+
]);
|
|
4761
|
+
}
|
|
4762
|
+
function LinkedEntryEditorPanel({ siteId, apiClient, theme, widgets, entry, fields }) {
|
|
4763
|
+
const uiStore = useEditorUiStoreInstance();
|
|
4764
|
+
const canWrite = useUISelector(uiStore, (state) => canWriteLinkedEntry(state, entry.meta.entryId));
|
|
4765
|
+
const { manifest, backend } = useLinkedEntryForm(entry, fields, widgets);
|
|
4766
|
+
const syncState = syncStateOf(entry.sync);
|
|
4767
|
+
const errorMessage = syncState.kind === "failed" ? syncState.error : null;
|
|
4768
|
+
const dirty = isEdited(entry.sync);
|
|
4769
|
+
const isSaving = valueStatus(entry.sync) === "saving";
|
|
4770
|
+
const displayTitle = resolveContentTitle(displayedValues(entry.sync), entry.meta.titleField, entry.meta.title);
|
|
4686
4771
|
return /* @__PURE__ */ jsxs("div", {
|
|
4687
|
-
className: "
|
|
4688
|
-
children: [
|
|
4689
|
-
|
|
4690
|
-
|
|
4691
|
-
|
|
4692
|
-
|
|
4693
|
-
|
|
4694
|
-
|
|
4695
|
-
|
|
4772
|
+
className: "bg-muted/20",
|
|
4773
|
+
children: [
|
|
4774
|
+
/* @__PURE__ */ jsx(LinkedEntryLeaseBanner, { entryId: entry.meta.entryId }),
|
|
4775
|
+
/* @__PURE__ */ jsxs("div", {
|
|
4776
|
+
className: "flex items-start justify-between gap-3 px-4 py-3",
|
|
4777
|
+
children: [/* @__PURE__ */ jsxs("div", {
|
|
4778
|
+
className: "min-w-0",
|
|
4779
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
4780
|
+
className: "truncate text-sm font-medium",
|
|
4781
|
+
children: displayTitle
|
|
4782
|
+
}), /* @__PURE__ */ jsx("p", {
|
|
4783
|
+
className: "mt-1 text-xs leading-5 text-muted-foreground",
|
|
4784
|
+
children: "Changes update this linked entry wherever it appears."
|
|
4785
|
+
})]
|
|
4786
|
+
}), /* @__PURE__ */ jsx("div", {
|
|
4787
|
+
className: "flex shrink-0 items-center gap-2",
|
|
4788
|
+
children: /* @__PURE__ */ jsx(Button, {
|
|
4789
|
+
type: "button",
|
|
4790
|
+
variant: "outline",
|
|
4791
|
+
size: "sm",
|
|
4792
|
+
onClick: () => {
|
|
4793
|
+
if (dirty) uiStore.getState().linkedEntries.discard(entry.meta.entryId);
|
|
4794
|
+
else uiStore.getState().linkedEntries.close();
|
|
4795
|
+
},
|
|
4796
|
+
children: dirty ? "Discard" : "Close"
|
|
4797
|
+
})
|
|
4798
|
+
})]
|
|
4799
|
+
}),
|
|
4800
|
+
/* @__PURE__ */ jsxs("div", {
|
|
4801
|
+
className: "px-4 pb-4",
|
|
4802
|
+
inert: !canWrite,
|
|
4803
|
+
children: [errorMessage ? /* @__PURE__ */ jsx("div", {
|
|
4804
|
+
className: "mb-3 rounded-md border border-red-500 bg-red-50 px-3 py-2 text-sm text-red-700",
|
|
4805
|
+
children: errorMessage
|
|
4806
|
+
}) : isSaving ? /* @__PURE__ */ jsx("div", {
|
|
4807
|
+
className: "mb-3 rounded-md border border-sky-500 bg-sky-50 px-3 py-2 text-sm text-sky-700",
|
|
4808
|
+
children: "Saving changes"
|
|
4809
|
+
}) : null, /* @__PURE__ */ jsx(PreviewFormProvider, {
|
|
4810
|
+
siteId,
|
|
4811
|
+
theme: theme ?? null,
|
|
4812
|
+
previewClient: apiClient,
|
|
4813
|
+
children: /* @__PURE__ */ jsx(ManifestForm, {
|
|
4814
|
+
manifest,
|
|
4815
|
+
backend,
|
|
4816
|
+
widgetOverrides: widgets,
|
|
4817
|
+
className: "space-y-4"
|
|
4818
|
+
})
|
|
4819
|
+
})]
|
|
4820
|
+
})
|
|
4821
|
+
]
|
|
4696
4822
|
});
|
|
4697
4823
|
}
|
|
4698
|
-
function
|
|
4824
|
+
function useLinkedEntryForm(entry, fields, widgets) {
|
|
4699
4825
|
const uiStore = useEditorUiStoreInstance();
|
|
4700
|
-
const linkedEntriesAutosave = useUISelector(uiStore, (state) => state.autosave.linkedEntries);
|
|
4701
4826
|
const manifest = useMemo(() => ({
|
|
4702
4827
|
name: `linked-content-${entry.meta.contentTypeKey}`,
|
|
4703
4828
|
version: "1.0",
|
|
@@ -4712,65 +4837,17 @@ function LinkedEntryEditorPanel({ siteId, apiClient, theme, widgets, entry, fiel
|
|
|
4712
4837
|
fields
|
|
4713
4838
|
]);
|
|
4714
4839
|
const validation = useMemo(() => createManifestValidation(manifest, { widgets }), [manifest, widgets]);
|
|
4715
|
-
|
|
4716
|
-
|
|
4717
|
-
|
|
4718
|
-
|
|
4719
|
-
|
|
4720
|
-
|
|
4721
|
-
|
|
4722
|
-
|
|
4723
|
-
|
|
4724
|
-
|
|
4725
|
-
|
|
4726
|
-
const isSaving = linkedEntriesAutosave.status === "saving" && dirty;
|
|
4727
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
4728
|
-
className: "bg-muted/20",
|
|
4729
|
-
children: [/* @__PURE__ */ jsxs("div", {
|
|
4730
|
-
className: "flex items-start justify-between gap-3 px-4 py-3",
|
|
4731
|
-
children: [/* @__PURE__ */ jsxs("div", {
|
|
4732
|
-
className: "min-w-0",
|
|
4733
|
-
children: [/* @__PURE__ */ jsx("div", {
|
|
4734
|
-
className: "truncate text-sm font-medium",
|
|
4735
|
-
children: resolveContentTitle(entry.current ?? entry.baseline ?? null, entry.meta.titleField, entry.meta.title)
|
|
4736
|
-
}), /* @__PURE__ */ jsx("p", {
|
|
4737
|
-
className: "mt-1 text-xs leading-5 text-muted-foreground",
|
|
4738
|
-
children: "Changes update this linked entry wherever it appears."
|
|
4739
|
-
})]
|
|
4740
|
-
}), /* @__PURE__ */ jsx("div", {
|
|
4741
|
-
className: "flex shrink-0 items-center gap-2",
|
|
4742
|
-
children: /* @__PURE__ */ jsx(Button, {
|
|
4743
|
-
type: "button",
|
|
4744
|
-
variant: "outline",
|
|
4745
|
-
size: "sm",
|
|
4746
|
-
onClick: () => {
|
|
4747
|
-
if (dirty) uiStore.getState().linkedEntries.discard(entry.meta.entryId);
|
|
4748
|
-
else uiStore.getState().linkedEntries.close();
|
|
4749
|
-
},
|
|
4750
|
-
children: dirty ? "Discard" : "Close"
|
|
4751
|
-
})
|
|
4752
|
-
})]
|
|
4753
|
-
}), /* @__PURE__ */ jsxs("div", {
|
|
4754
|
-
className: "px-4 pb-4",
|
|
4755
|
-
children: [errorMessage ? /* @__PURE__ */ jsx("div", {
|
|
4756
|
-
className: "mb-3 rounded-md border border-red-500 bg-red-50 px-3 py-2 text-sm text-red-700",
|
|
4757
|
-
children: errorMessage
|
|
4758
|
-
}) : isSaving ? /* @__PURE__ */ jsx("div", {
|
|
4759
|
-
className: "mb-3 rounded-md border border-sky-500 bg-sky-50 px-3 py-2 text-sm text-sky-700",
|
|
4760
|
-
children: "Saving changes"
|
|
4761
|
-
}) : null, /* @__PURE__ */ jsx(PreviewFormProvider, {
|
|
4762
|
-
siteId,
|
|
4763
|
-
theme: theme ?? null,
|
|
4764
|
-
previewClient: apiClient,
|
|
4765
|
-
children: /* @__PURE__ */ jsx(ManifestForm, {
|
|
4766
|
-
manifest,
|
|
4767
|
-
backend,
|
|
4768
|
-
widgetOverrides: widgets,
|
|
4769
|
-
className: "space-y-4"
|
|
4770
|
-
})
|
|
4771
|
-
})]
|
|
4772
|
-
})]
|
|
4773
|
-
});
|
|
4840
|
+
return {
|
|
4841
|
+
manifest,
|
|
4842
|
+
backend: useMemo(() => createStoreBackend({
|
|
4843
|
+
scope: "linkedContent",
|
|
4844
|
+
store: uiStore,
|
|
4845
|
+
validateFn: (values) => {
|
|
4846
|
+
const result = validation.schema.safeParse(values);
|
|
4847
|
+
return result.success ? [] : result.error.issues;
|
|
4848
|
+
}
|
|
4849
|
+
}), [uiStore, validation])
|
|
4850
|
+
};
|
|
4774
4851
|
}
|
|
4775
4852
|
function buildLinkedEntrySidebarSection(input) {
|
|
4776
4853
|
const { snapshot, inspection, renderContent } = input;
|