@riverbankcms/sdk 0.147.0 → 0.149.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 +16 -0
- package/README.md +1 -1
- package/dist/{PreviewEditorSidebar-DtpB3_sS.mjs → PreviewEditorSidebar-DBKln68M.mjs} +301 -205
- package/dist/{PreviewEditorUI-DxTLgaHo.mjs → PreviewEditorUI-DpRX4Mum.mjs} +68 -63
- package/dist/{PreviewQueryProvider-Dd4dxOiU.mjs → PreviewQueryProvider-C0mndwHB.mjs} +3 -3
- package/dist/{SdkPreviewModeRuntime-DMMNCngt.mjs → SdkPreviewModeRuntime-DJPmPY-r.mjs} +1247 -541
- package/dist/{SiteChromeCustomizeContext-DQXZXiqS.mjs → SiteChromeCustomizeContext-JYA0cJ_Z.mjs} +209720 -204978
- package/dist/_dts/ai/src/contracts/proposals.d.ts +0 -33
- package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +0 -3
- package/dist/_dts/api/src/accessAdmin.d.ts +0 -4
- package/dist/_dts/api/src/accountApi.d.ts +1 -1
- 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 +33 -50
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +2 -6
- package/dist/_dts/api/src/bookingOperations.d.ts +9 -11
- package/dist/_dts/api/src/bookingRecords.d.ts +16 -11
- package/dist/_dts/api/src/bookingRefundOutcomes.d.ts +5 -5
- package/dist/_dts/api/src/bookings.d.ts +7 -7
- package/dist/_dts/api/src/calendar.d.ts +9 -9
- package/dist/_dts/api/src/clientErrorReporting.d.ts +11 -0
- package/dist/_dts/api/src/commercePortalEndpoints.d.ts +7 -8
- package/dist/_dts/api/src/common/cancellation.d.ts +23 -0
- 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/customerMembershipOutcomes.d.ts +1 -1
- 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 +135 -51
- package/dist/_dts/api/src/eventEmailTemplates.d.ts +2 -2
- package/dist/_dts/api/src/eventManagementContracts.d.ts +29 -7
- package/dist/_dts/api/src/eventManagementEndpointDefinitions.d.ts +0 -8
- 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 -7
- package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -0
- package/dist/_dts/api/src/indexExtendedTypes.d.ts +1 -1
- package/dist/_dts/api/src/navigation.d.ts +5 -5
- 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 +4 -2
- package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +6 -29
- package/dist/_dts/api/src/redirects.d.ts +3 -3
- package/dist/_dts/api/src/request.d.ts +11 -2
- 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 +1 -2
- 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/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 +9 -2
- 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/siteManagementEndpoints.d.ts +15 -8
- package/dist/_dts/api/src/siteMembers.d.ts +10 -10
- package/dist/_dts/api/src/siteOnboarding.d.ts +14 -0
- package/dist/_dts/api/src/siteOperations.d.ts +6 -2
- 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/client/events.d.ts +3 -0
- package/dist/_dts/blocks/src/contracts/index.d.ts +1 -1
- package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +2 -2
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +54 -14
- package/dist/_dts/blocks/src/pageRenderAdmission.d.ts +4 -13
- package/dist/_dts/blocks/src/pageRendererContracts.d.ts +2 -0
- package/dist/_dts/blocks/src/portal/types.d.ts +9 -8
- 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 +28 -28
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +7 -2
- package/dist/_dts/blocks/src/system/blocks/shared/bookingPaymentTerms.d.ts +84 -160
- package/dist/_dts/blocks/src/system/blocks/shop.d.ts +2 -2
- package/dist/_dts/blocks/src/system/blocks/shop.shared.d.ts +31 -4
- 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 +4 -2
- package/dist/_dts/blocks/src/system/runtime/api/types/core.d.ts +3 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +6 -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 +72 -12
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +36 -6
- package/dist/_dts/blocks/src/system/runtime/hooks/useBookingNowIso.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessBookingFlow.d.ts +3 -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 +3 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.headless.state.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.interactive.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.state.d.ts +17 -2
- 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 +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-runtime-sources.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/checkout.server.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/commerce/shared/display.d.ts +9 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-details/presentation.d.ts +14 -2
- 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/PaymentSelectionStep.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/SuccessStep.d.ts +4 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventPaymentOptions.d.ts +3 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +2 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +9 -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 +29 -29
- 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 +54 -6
- package/dist/_dts/blocks/src/system/runtime/shared/bookingPaymentOptions.d.ts +7 -2
- 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/utils/demoBookingPassStorage.d.ts +10 -0
- package/dist/_dts/blocks/src/system/runtime/shared/utils/demoPortalMagicLink.d.ts +29 -0
- package/dist/_dts/commerce/src/purchase/bookingPaymentSelection.d.ts +54 -0
- package/dist/_dts/commerce/src/purchase/checkoutCommitPlan.d.ts +58 -13
- package/dist/_dts/commerce/src/purchase/checkoutErrorCodes.d.ts +1 -1
- package/dist/_dts/commerce/src/purchase/checkoutPaymentPlanPlanning.d.ts +16 -21
- package/dist/_dts/commerce/src/purchase/checkoutPaymentTerms.d.ts +23 -40
- package/dist/_dts/commerce/src/purchase/checkoutSessionMetadata.d.ts +2 -2
- package/dist/_dts/commerce/src/purchase/checkoutStripeSessionPlanning.d.ts +5 -4
- package/dist/_dts/commerce/src/purchase/event-registration-errors.d.ts +4 -0
- package/dist/_dts/commerce/src/purchase/index.d.ts +1 -3
- package/dist/_dts/commerce/src/purchase/membershipOrderItemMetadata.d.ts +4 -0
- package/dist/_dts/commerce/src/purchase/oneTimeCheckoutPlanning.d.ts +9 -4
- package/dist/_dts/commerce/src/purchase/orderInstalmentClosure.d.ts +13 -1
- package/dist/_dts/commerce/src/purchase/orderInstalmentLifecycle.d.ts +5 -0
- package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +3 -1
- package/dist/_dts/commerce/src/purchase/orderTypes.d.ts +7 -1
- package/dist/_dts/commerce/src/purchase/refundRailSplit.d.ts +1 -1
- package/dist/_dts/commerce/src/purchase/stateTransitions.d.ts +2 -2
- package/dist/_dts/commerce/src/purchase/stripeMinimumCharge.d.ts +6 -0
- package/dist/_dts/commerce/src/purchase/types.d.ts +2 -1
- 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/editLeaseHandover.d.ts +30 -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/lib/browserStorage.d.ts +5 -0
- 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/booking-flexible-balance.d.ts +2 -2
- package/dist/_dts/core/src/booking-instalment-deposit.d.ts +20 -0
- package/dist/_dts/core/src/booking-live-payment-terms.d.ts +72 -0
- package/dist/_dts/core/src/booking-payment-options.d.ts +24 -0
- package/dist/_dts/core/src/booking-payment-schemas.d.ts +522 -0
- package/dist/_dts/core/src/branded.d.ts +15 -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 +60 -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 +7 -0
- package/dist/_dts/core/src/uuid.d.ts +7 -5
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +456 -189
- 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/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/MediaPickerDialog.d.ts +3 -1
- package/dist/_dts/media-editor/src/MediaPickerMiniDialog.d.ts +10 -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/index.d.ts +2 -0
- 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/composer/mergeDrafts.d.ts +8 -3
- package/dist/_dts/preview-next/src/client/blocks/composer/types.d.ts +6 -3
- 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 +23 -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/preview-next/src/client/previewAuthStore.d.ts +7 -0
- package/dist/_dts/preview-next/src/constants.d.ts +4 -0
- package/dist/_dts/preview-next/src/keepAlive.d.ts +1 -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 +1 -0
- package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +2 -0
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +2 -12
- 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/site-styles/designState.d.ts +2 -2
- package/dist/_dts/theme-core/src/site-styles/pageDesignIntent.d.ts +0 -5
- package/dist/_dts/ui/src/color-picker.d.ts +1 -1
- package/dist/_dts/ui/src/palette/useHexDraft.d.ts +7 -0
- package/dist/client/{BookingMailingListNote-1n4Ch_u_.mjs → BookingMailingListNote-Cr3EeTP5.mjs} +504 -163
- package/dist/client/DemoBookingPortalAccess-BFGB1Fay.mjs +344 -0
- package/dist/client/{EventCombined.client-C0pgma9y.mjs → EventCombined.client-DKYV0_ft.mjs} +6 -6
- package/dist/client/{EventListing.client-4fhLOvHP.mjs → EventListing.client-B9UIcEYc.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-DScC4F3w.mjs → LeafletStaticMap-CFLPkP0K.mjs} +1 -1
- package/dist/client/{TerminalPanel-B5ZUsYhe.mjs → TerminalPanel-JjmgxEsR.mjs} +1 -1
- package/dist/client/{ThemedButton-DoVIV1Ao.mjs → ThemedButton-CKV1Jh2m.mjs} +1 -1
- package/dist/client/{accordion-CoT5g7zo.mjs → accordion-DXWIfT3T.mjs} +1 -1
- package/dist/client/{bookingForm-BWxB46xD.mjs → bookingForm-CjZgHNvv.mjs} +216 -63
- package/dist/client/bookings.mjs +1187 -692
- package/dist/client/{carousel-DtNYWFd3.mjs → carousel-DSLikmvZ.mjs} +1 -1
- package/dist/client/{cart-z4qZih1Y.mjs → cart-HDjWReFt.mjs} +3 -3
- package/dist/client/{checkout-DpL7euFH.mjs → checkout-CUvRZA3W.mjs} +3 -3
- package/dist/client/{checkoutUrls-BEfR7kVu.mjs → checkoutUrls-CXhko2Rv.mjs} +1 -1
- package/dist/client/client.mjs +2711 -1684
- package/dist/client/{context-C8TinPJc.mjs → context-DFmaZa-Q.mjs} +4 -3
- package/dist/client/{dates-vwwxTeB0.mjs → dates-BBep1JnF.mjs} +56 -11
- package/dist/client/{eventCalendar-DIbHfJXO.mjs → eventCalendar-zEobhxo4.mjs} +9 -9
- package/dist/client/{eventCombined-DoGMJ6cg.mjs → eventCombined-Dp7bz5k-.mjs} +4 -4
- package/dist/client/{eventDetails-BjN9v6a1.mjs → eventDetails-FE-zqTt7.mjs} +4 -4
- package/dist/client/{eventListing-DajjWgOv.mjs → eventListing-BMt5snal.mjs} +4 -4
- package/dist/client/{eventRegistration-DMq9gMA-.mjs → eventRegistration-O6ZxHfOb.mjs} +422 -570
- package/dist/client/{form-Qf6qTbos.mjs → form-DFa1D8vt.mjs} +3 -3
- package/dist/client/{headerSection-D7qJrqFX.mjs → headerSection-CmjHLR-N.mjs} +3 -3
- package/dist/client/hooks.mjs +414 -182
- package/dist/client/{locationMap-CCF9-t_0.mjs → locationMap-BXKP_lGh.mjs} +3 -3
- package/dist/client/{media-CwBGetqC.mjs → media-Cl38iOMI.mjs} +10 -3
- package/dist/client/{newsletterForm-DzCLSP4S.mjs → newsletterForm-CU-HmxGx.mjs} +3 -3
- package/dist/client/{pricing-Cgxv2KLC.mjs → pricing-KEAEsibq.mjs} +1 -1
- package/dist/client/{productDetail-ru9w5GHx.mjs → productDetail-Ckp7MGnt.mjs} +3 -3
- package/dist/client/{productList-zaapKSl-.mjs → productList-D91V0sYa.mjs} +3 -3
- package/dist/client/{propsDecoder-CwvvNOHx.mjs → propsDecoder-DZd6RJeA.mjs} +244 -94
- package/dist/client/rendering/client.mjs +2656 -1705
- package/dist/client/rendering/islands.mjs +18 -18
- package/dist/client/rendering.mjs +3430 -2352
- package/dist/client/{routeIslandApiConfig-BwVFo0Y4.mjs → routeIslandApiConfig-E1EkhhYY.mjs} +1 -1
- package/dist/client/{shop-mktkXvbV.mjs → shop-4F2jLQPI.mjs} +131 -85
- package/dist/client/{shop-commerce-De7gEnkA.mjs → shop-commerce-BbfCJjB3.mjs} +25 -13
- package/dist/client/{shop-commerce-store-B3MCxIBW.mjs → shop-commerce-store-vicweP2K.mjs} +1 -1
- package/dist/client/{shopShared-TqExh235.mjs → shopShared-DlONJt0T.mjs} +4 -4
- package/dist/client/{useEventFilters-n_OjkIjX.mjs → useEventFilters-COYyL3m7.mjs} +32 -17
- package/dist/preview-next/before-render.mjs +207 -105
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/constants.mjs +5 -1
- package/dist/preview-next/index.mjs +5 -1
- package/dist/preview-next/keepAlive.mjs +341 -165
- package/dist/preview-next/middleware.mjs +207 -105
- package/dist/{previewAuthStore-C_EHQ5XA.mjs → previewAuthStore-BBmV7UsW.mjs} +243 -112
- package/dist/{sdk-runtime-BIkJg5y1.mjs → sdk-runtime-CwvFFjB-.mjs} +2 -2
- package/dist/{separator-C9qDP95Z.mjs → separator-ByL72zUT.mjs} +1 -1
- package/dist/server/components.mjs +1839 -1475
- package/dist/server/config-validation.mjs +381 -166
- package/dist/server/config.mjs +381 -166
- package/dist/server/data.mjs +381 -166
- package/dist/server/index.mjs +214 -110
- package/dist/server/next.mjs +663 -351
- package/dist/server/page-converter.mjs +198 -79
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +1536 -1169
- package/dist/server/rendering.mjs +2432 -2068
- package/dist/server/routing.mjs +456 -173
- package/dist/server/server.mjs +447 -267
- package/package.json +1 -1
- package/dist/_dts/api/src/bookingPaymentTermSchemas.d.ts +0 -123
- package/dist/_dts/billing/src/plans/display.d.ts +0 -15
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.mailing-list-note.d.ts +0 -3
- package/dist/_dts/commerce/src/purchase/checkoutPaymentTermPlanning.d.ts +0 -10
- package/dist/_dts/commerce/src/purchase/checkoutValidatedItemPlanning.d.ts +0 -55
- package/dist/_dts/commerce/src/purchase/orderInstalmentPayoff.d.ts +0 -24
- 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/client/DiscountCodeDisclosure-CKJtz0mY.mjs +0 -137
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type EditorBlockValues, type EditorContentValues, type EditorMetadataValues, type EditorValueRecord, type ValueSync } from '../../../core/src/index';
|
|
2
|
+
/**
|
|
3
|
+
* One editor value: its sync state (baseline, local intent and request) plus the
|
|
4
|
+
* published baseline. `version` counts changes for history, subscriptions and publish
|
|
5
|
+
* reconciliation; it is never a save acknowledgement.
|
|
6
|
+
*/
|
|
7
|
+
export type EditorValueSnapshot<TValue extends EditorValueRecord | null> = Readonly<{
|
|
8
|
+
version: number;
|
|
9
|
+
sync: ValueSync<TValue>;
|
|
10
|
+
publishedBaseline: TValue;
|
|
11
|
+
}>;
|
|
12
|
+
export type EditorBrandedValues = EditorMetadataValues | EditorContentValues | EditorBlockValues;
|
|
13
|
+
export type NullableEditorValues<TValue extends EditorBrandedValues> = TValue | null;
|
|
14
|
+
export declare function createValueSnapshot<TValue extends EditorBrandedValues>(): EditorValueSnapshot<NullableEditorValues<TValue>>;
|
|
15
|
+
type ValueSnapshotUpdates<TValue extends EditorValueRecord | null> = Partial<Pick<EditorValueSnapshot<TValue>, 'sync' | 'publishedBaseline'>>;
|
|
16
|
+
/** Applies updates, bumping `version` only when something changed. */
|
|
17
|
+
export declare function updateValueSnapshot<TValue extends EditorValueRecord | null>(snapshot: EditorValueSnapshot<TValue>, updates: ValueSnapshotUpdates<TValue>): EditorValueSnapshot<TValue>;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { EditorBlockId, EditorBlockVersions } from '../../../core/src/index';
|
|
2
|
+
import { type BlockFieldExtensions } from '../../../editor-blocks/src/block-editor/blockDraftBaselineSeed';
|
|
3
|
+
import type { ServerBlockItem } from '../../../editor-blocks/src/block-editor/types';
|
|
4
|
+
import type { RefreshPolicy } from '../sync/valueSync';
|
|
5
|
+
import type { EditorHistorySnapshot } from './editorSnapshot';
|
|
6
|
+
export type ServerBlockAdmission = Readonly<{
|
|
7
|
+
block: ServerBlockItem;
|
|
8
|
+
action: 'reconcile' | 'replace';
|
|
9
|
+
}>;
|
|
10
|
+
/** Seed preparation and the request-aware refresh reducer are the sole draft admission transition. */
|
|
11
|
+
export declare function prepareServerBlockAdmissions(entries: readonly ServerBlockAdmission[], extensions?: BlockFieldExtensions | null): {
|
|
12
|
+
action: "replace" | "reconcile";
|
|
13
|
+
seed: Readonly<{
|
|
14
|
+
blockId: EditorBlockId;
|
|
15
|
+
baseline: import("../../../core/src/index").EditorBlockBaselineInput;
|
|
16
|
+
initMeta: import("../../../core/src/index").EditorDraftBlockInitMetaInput;
|
|
17
|
+
refreshMeta: import("../../../core/src/index").EditorDraftBlockBaselineUpdateMetaInput;
|
|
18
|
+
}>;
|
|
19
|
+
versions: Readonly<{
|
|
20
|
+
draftContentId: import("../../../core/src/index").ContentVersionId | null;
|
|
21
|
+
publishedPlacement: import("../../../core/src/index").PublishedBlockPlacementRead;
|
|
22
|
+
}>;
|
|
23
|
+
}[];
|
|
24
|
+
export declare function admitBlockDrafts(snapshot: EditorHistorySnapshot, entries: ReturnType<typeof prepareServerBlockAdmissions>, policy?: RefreshPolicy): EditorHistorySnapshot;
|
|
25
|
+
/** History can restore admitted blocks; it cannot invent server identity. */
|
|
26
|
+
export declare function assertAdmittedDrafts(previous: EditorHistorySnapshot, next: EditorHistorySnapshot, requireVersions: (id: EditorBlockId) => EditorBlockVersions): void;
|
|
@@ -1,36 +1,25 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* 2. Before publish, saveNow() / flushAllPending() may be called to ensure all changes are saved
|
|
7
|
-
* 3. useEntryActions waits for all saves to complete via status subscriptions
|
|
2
|
+
* The autosave handle registry. Each scheduler registers its handle; `flushValues`
|
|
3
|
+
* is the one waiter for "saved before X" (publish, Save draft, slot switches, generated
|
|
4
|
+
* icons) and asks the handles to send through `sendRequests`. Status isn't stored here:
|
|
5
|
+
* it's derived from the values (`selectAutosaveStatus`, issue 1553).
|
|
8
6
|
*/
|
|
9
|
-
import type {
|
|
7
|
+
import type { FlushPolicy, FlushRequest, FlushResult, SendAcknowledgement } from '../../sync/sendPlanning';
|
|
8
|
+
import type { FlushOptions } from '../../sync/flushValues';
|
|
9
|
+
import type { AutosaveHandle, AutosaveType } from './types';
|
|
10
10
|
export type AutosaveState = {
|
|
11
|
-
metadata: AutosaveStatus;
|
|
12
|
-
content: AutosaveStatus;
|
|
13
|
-
blocks: AutosaveStatus;
|
|
14
|
-
linkedEntries: AutosaveStatus;
|
|
15
|
-
setMetadataStatus: (status: Partial<AutosaveStatus>) => void;
|
|
16
|
-
setContentStatus: (status: Partial<AutosaveStatus>) => void;
|
|
17
|
-
setBlocksStatus: (status: Partial<AutosaveStatus>) => void;
|
|
18
|
-
setLinkedEntriesStatus: (status: Partial<AutosaveStatus>) => void;
|
|
19
11
|
registerAutosave: (type: AutosaveType, handle: AutosaveHandle) => void;
|
|
20
12
|
unregisterAutosave: (type: AutosaveType) => void;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
saveNow: (types: AutosaveType[]) => Promise<void>;
|
|
28
|
-
flushAllPending: () => void;
|
|
13
|
+
registeredSchedulers: () => readonly AutosaveType[];
|
|
14
|
+
/** Sends each request's values in its scheduler's next batch; resolves once the batches finish. */
|
|
15
|
+
sendRequests: (requests: readonly FlushRequest[]) => Promise<readonly SendAcknowledgement[]>;
|
|
16
|
+
/** Resolves once the values in scope are saved, or can't be (`planFlush`). */
|
|
17
|
+
flushValues: (policy: FlushPolicy, options?: FlushOptions) => Promise<FlushResult>;
|
|
18
|
+
cancelPending: (scheduler: AutosaveType) => void;
|
|
29
19
|
cancelAllPending: () => void;
|
|
30
20
|
};
|
|
31
21
|
/**
|
|
32
|
-
* Creates the autosave
|
|
33
|
-
*
|
|
34
|
-
* @param triggerUpdate - Callback to trigger React re-renders
|
|
22
|
+
* Creates the autosave registry. `flush` is the store-bound `flushValues`; the registry
|
|
23
|
+
* holds no status of its own.
|
|
35
24
|
*/
|
|
36
|
-
export declare function createAutosaveSlice(
|
|
25
|
+
export declare function createAutosaveSlice(flush: (policy: FlushPolicy, options?: FlushOptions) => Promise<FlushResult>): AutosaveState;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type EditorBlockId, type EditorBlockVersions, type EditorBlockVersionsEntry, type SavedBlockContentVersion } from '../../../../core/src/index';
|
|
2
|
+
/**
|
|
3
|
+
* Server versions per block. Server-owned, so this lives outside undo history:
|
|
4
|
+
* undoing an edit never brings back an id the server has already replaced.
|
|
5
|
+
*/
|
|
6
|
+
export type BlockVersionsState = Readonly<{
|
|
7
|
+
revision: number;
|
|
8
|
+
/** Null for blocks not admitted to this editor. */
|
|
9
|
+
get: (blockId: EditorBlockId) => EditorBlockVersions | null;
|
|
10
|
+
require: (blockId: EditorBlockId) => EditorBlockVersions;
|
|
11
|
+
set: (entries: readonly EditorBlockVersionsEntry[]) => void;
|
|
12
|
+
applySaved: (blockId: EditorBlockId, saved: SavedBlockContentVersion) => void;
|
|
13
|
+
}>;
|
|
14
|
+
type BlockVersionsSnapshot = Readonly<{
|
|
15
|
+
byId: ReadonlyMap<EditorBlockId, EditorBlockVersions>;
|
|
16
|
+
revision: number;
|
|
17
|
+
}>;
|
|
18
|
+
export declare function withBlockVersions(snapshot: BlockVersionsSnapshot, entries: readonly EditorBlockVersionsEntry[]): BlockVersionsSnapshot;
|
|
19
|
+
/** Internal record operation lets the editor commit versions and drafts before notifying. */
|
|
20
|
+
export declare function createBlockVersionsSlice(triggerUpdate: () => void): Readonly<{
|
|
21
|
+
state: BlockVersionsState;
|
|
22
|
+
record: (entries: readonly EditorBlockVersionsEntry[]) => boolean;
|
|
23
|
+
}>;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { ApiClient } from '../../../../api/src/request';
|
|
2
|
+
import type { DraftTarget } from '../../../../realtime/src/index';
|
|
3
|
+
import { type EditorEditability } from '../../controller/editorEditability';
|
|
4
|
+
export type LinkedEntryLeaseBinding = Readonly<{
|
|
5
|
+
contentTypeKey: string;
|
|
6
|
+
apiClient: ApiClient;
|
|
7
|
+
takeOver: () => void;
|
|
8
|
+
retry: () => void;
|
|
9
|
+
}>;
|
|
10
|
+
export type LinkedEntryLeaseSession = LinkedEntryLeaseBinding & (Readonly<{
|
|
11
|
+
kind: 'linked';
|
|
12
|
+
editability: EditorEditability;
|
|
13
|
+
discarded: boolean;
|
|
14
|
+
}> | Readonly<{
|
|
15
|
+
kind: 'parent';
|
|
16
|
+
}>);
|
|
17
|
+
type WriteAuthorityState = Pick<LinkedEntryLeaseState, 'linkedEntryLeases'> & Readonly<{
|
|
18
|
+
editability: EditorEditability;
|
|
19
|
+
}>;
|
|
20
|
+
type LeaseOwnerState = Pick<LinkedEntryLeaseState, 'linkedEntryLeases'> & Readonly<{
|
|
21
|
+
editability: EditorEditability;
|
|
22
|
+
leaseDiscardedChanges: boolean;
|
|
23
|
+
}>;
|
|
24
|
+
export declare function readLinkedEntryLease(state: LeaseOwnerState, entryId: string): (Readonly<{
|
|
25
|
+
contentTypeKey: string;
|
|
26
|
+
apiClient: ApiClient;
|
|
27
|
+
takeOver: () => void;
|
|
28
|
+
retry: () => void;
|
|
29
|
+
}> & Readonly<{
|
|
30
|
+
kind: "linked";
|
|
31
|
+
editability: EditorEditability;
|
|
32
|
+
discarded: boolean;
|
|
33
|
+
}>) | {
|
|
34
|
+
editability: EditorEditability;
|
|
35
|
+
discarded: boolean;
|
|
36
|
+
contentTypeKey: string;
|
|
37
|
+
apiClient: ApiClient;
|
|
38
|
+
takeOver: () => void;
|
|
39
|
+
retry: () => void;
|
|
40
|
+
kind: "parent";
|
|
41
|
+
} | undefined;
|
|
42
|
+
export type LinkedEntryLeaseState = {
|
|
43
|
+
linkedEntryLeases: Readonly<Record<string, LinkedEntryLeaseSession | undefined>>;
|
|
44
|
+
registerLinkedEntryLease: (entryId: string, binding: LinkedEntryLeaseBinding, kind: LinkedEntryLeaseSession['kind']) => void;
|
|
45
|
+
setLinkedEntryLease: (entryId: string, session: LinkedEntryLeaseSession | undefined) => void;
|
|
46
|
+
};
|
|
47
|
+
export declare function createLinkedEntryLeaseSlice(set: (update: (state: LinkedEntryLeaseState) => Partial<LinkedEntryLeaseState>) => void): LinkedEntryLeaseState;
|
|
48
|
+
export declare function canWriteLinkedEntry(state: WriteAuthorityState, entryId: string): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Per-item write authority, shared by autosave and the live-drafts projection: the
|
|
51
|
+
* document's own values follow the document lease; a linked entry follows its own.
|
|
52
|
+
*/
|
|
53
|
+
export declare function canWriteDraftTarget(state: WriteAuthorityState, target: DraftTarget): boolean;
|
|
54
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type LinkedSaveHandovers } from '../../liveDrafts/linkedSaveHandovers';
|
|
2
|
+
/**
|
|
3
|
+
* This tab's accepted linked-entry saves, handing over to the rendered data (issue 1553, D).
|
|
4
|
+
* Outside history, snapshots and autosave, beside `remoteDrafts`: `settle` records them,
|
|
5
|
+
* and the renderer's retention replaces the map as they drop.
|
|
6
|
+
*/
|
|
7
|
+
export type LinkedSaveHandoversState = {
|
|
8
|
+
linkedSaveHandovers: LinkedSaveHandovers;
|
|
9
|
+
setLinkedSaveHandovers: (handovers: LinkedSaveHandovers) => void;
|
|
10
|
+
};
|
|
11
|
+
export declare function createLinkedSaveHandoversSlice(set: (update: (state: LinkedSaveHandoversState) => Partial<LinkedSaveHandoversState>) => void): LinkedSaveHandoversState;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type RemoteDraftOverlay } from '../../liveDrafts/remoteDraftOverlay';
|
|
2
|
+
/**
|
|
3
|
+
* Read-only overlay of another tab's live drafts (issue 1545). Deliberately outside
|
|
4
|
+
* history, snapshots, autosave and linked-entry save inputs: only the renderer reads it.
|
|
5
|
+
*/
|
|
6
|
+
export type RemoteDraftsState = {
|
|
7
|
+
remoteDrafts: RemoteDraftOverlay;
|
|
8
|
+
setRemoteDrafts: (overlay: RemoteDraftOverlay) => void;
|
|
9
|
+
};
|
|
10
|
+
export declare function createRemoteDraftsSlice(set: (update: (state: RemoteDraftsState) => Partial<RemoteDraftsState>) => void): RemoteDraftsState;
|
|
@@ -1,17 +1,77 @@
|
|
|
1
|
-
import type { EditorBlockId } from '../../../../core/src/index';
|
|
1
|
+
import type { EditorBlockId, SendId } from '../../../../core/src/index';
|
|
2
|
+
import type { FlushCheckpoint, SendAcknowledgement } from '../../sync/sendPlanning';
|
|
3
|
+
import type { EditorValueKey } from '../editorSnapshot';
|
|
2
4
|
export type AutosaveStatusValue = 'idle' | 'saving' | 'success' | 'error';
|
|
3
5
|
export type AutosaveStatus = {
|
|
4
6
|
status: AutosaveStatusValue;
|
|
5
7
|
lastSavedAt: string | null;
|
|
6
8
|
hasFailedSaves: boolean;
|
|
7
9
|
};
|
|
10
|
+
/**
|
|
11
|
+
* One autosave scheduler's handle. `sendNow` sends the given values in the scheduler's
|
|
12
|
+
* next batch, retrying failures explicitly, alongside anything the background would send.
|
|
13
|
+
*/
|
|
8
14
|
export type AutosaveHandle = {
|
|
9
15
|
trigger: () => void;
|
|
10
|
-
cancel
|
|
11
|
-
flush: () =>
|
|
16
|
+
cancel: () => void;
|
|
17
|
+
flush: () => Promise<void>;
|
|
12
18
|
isPending: () => boolean;
|
|
19
|
+
sendNow: (keys: readonly EditorValueKey[], checkpoints?: readonly FlushCheckpoint[], signal?: AbortSignal) => Promise<readonly SendAcknowledgement[]>;
|
|
13
20
|
};
|
|
14
21
|
export type AutosaveType = 'metadata' | 'content' | 'blocks' | 'linkedEntries';
|
|
22
|
+
/**
|
|
23
|
+
* Operations that write the document's route or draft on the server; while one's request
|
|
24
|
+
* is out, the document's values are held (issue 1553, B-ownership).
|
|
25
|
+
*/
|
|
26
|
+
export type HeldOperation = 'publish' | 'schedule' | 'cancel-schedule' | 'discard-draft' | 'delete';
|
|
27
|
+
/** Operations on the whole document; their status sits beside the values' (issue 1553). */
|
|
28
|
+
export type LifecycleOperation = 'save-draft' | 'restore-replay' | HeldOperation;
|
|
29
|
+
/**
|
|
30
|
+
* Why an operation didn't happen. `server` is a refused request; the others are refusals
|
|
31
|
+
* before any request: values whose saves failed, values that can't be sent (not writable
|
|
32
|
+
* or not saveable), and blocks that fail publish validation.
|
|
33
|
+
*/
|
|
34
|
+
export type LifecycleFailure = Readonly<{
|
|
35
|
+
kind: 'server';
|
|
36
|
+
message: string;
|
|
37
|
+
}> | Readonly<{
|
|
38
|
+
kind: 'values-failed';
|
|
39
|
+
ids: readonly SendId[];
|
|
40
|
+
}> | Readonly<{
|
|
41
|
+
kind: 'values-blocked';
|
|
42
|
+
keys: readonly EditorValueKey[];
|
|
43
|
+
}> | Readonly<{
|
|
44
|
+
kind: 'invalid-blocks';
|
|
45
|
+
}>;
|
|
46
|
+
/**
|
|
47
|
+
* A failed status records the failure and how many saves had been accepted when it
|
|
48
|
+
* failed, so whether it still holds is derived (`activeFailure`) rather than cleared.
|
|
49
|
+
* `holding` is a held operation whose request is out (or about to be): the document's
|
|
50
|
+
* values aren't sent until it ends, and edits typed meanwhile wait (`schedulerValues`).
|
|
51
|
+
*/
|
|
52
|
+
export type LifecycleStatus = Readonly<{
|
|
53
|
+
kind: 'idle';
|
|
54
|
+
}> | Readonly<{
|
|
55
|
+
kind: 'running';
|
|
56
|
+
operation: LifecycleOperation;
|
|
57
|
+
}> | Readonly<{
|
|
58
|
+
kind: 'holding';
|
|
59
|
+
operation: HeldOperation;
|
|
60
|
+
}> | Readonly<{
|
|
61
|
+
kind: 'failed';
|
|
62
|
+
operation: LifecycleOperation;
|
|
63
|
+
failure: LifecycleFailure;
|
|
64
|
+
acceptedSaves: number;
|
|
65
|
+
}>;
|
|
66
|
+
/** What a lifecycle action tells its caller. Expected refusals are results, not throws. */
|
|
67
|
+
export type LifecycleOutcome = Readonly<{
|
|
68
|
+
kind: 'done';
|
|
69
|
+
}> | Readonly<{
|
|
70
|
+
kind: 'no-changes';
|
|
71
|
+
}> | Readonly<{
|
|
72
|
+
kind: 'failed';
|
|
73
|
+
failure: LifecycleFailure;
|
|
74
|
+
}>;
|
|
15
75
|
export type FocusSettingsTab = 'display' | 'behavior' | 'style';
|
|
16
76
|
export type FocusTarget = Readonly<{
|
|
17
77
|
kind: 'block';
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { type FooterCompositionSnapshot, type PublicProfileSnapshot } from '../../api/src/footer-settings';
|
|
2
|
-
import type {
|
|
2
|
+
import type { FooterComposerPanelProps } from './footerComposerPanelTypes';
|
|
3
3
|
import { type FooterCompositionV1, type PublicProfile } from '../../core/src/index';
|
|
4
4
|
import type { FooterEditorTarget } from './footerComposer';
|
|
5
5
|
import { type FooterNavigationLayoutAccess } from './useFooterNavigationLayout';
|
|
6
6
|
export type SaveState = 'idle' | 'saving' | 'saved' | 'conflict' | 'failed';
|
|
7
7
|
export type CompositionSaveOutcome = 'saved' | 'conflict' | 'failed';
|
|
8
8
|
type FooterComposerStateOptions = Readonly<{
|
|
9
|
-
apiClient:
|
|
9
|
+
apiClient: FooterComposerPanelProps['apiClient'];
|
|
10
10
|
canEdit: boolean;
|
|
11
11
|
initialTarget?: FooterEditorTarget;
|
|
12
12
|
initialTargetRequestId?: number;
|
|
@@ -11,7 +11,7 @@ export type FooterNavigationLayoutAccess = Readonly<{
|
|
|
11
11
|
selectionVersion: number;
|
|
12
12
|
}>;
|
|
13
13
|
export declare function useFooterNavigationLayout({ apiClient, siteId, access, onSaved, onSaveStateChange, onMessageChange, }: Readonly<{
|
|
14
|
-
apiClient: ApiClient
|
|
14
|
+
apiClient: ApiClient<'applySiteStyleSelection'>;
|
|
15
15
|
siteId: string;
|
|
16
16
|
access: FooterNavigationLayoutAccess;
|
|
17
17
|
onSaved?: () => void;
|
|
@@ -58,18 +58,18 @@ export declare const EVENT_CONTENT_TYPE_SCHEMA: {
|
|
|
58
58
|
readonly id: "summary";
|
|
59
59
|
readonly type: "textarea";
|
|
60
60
|
readonly label: "Short introduction";
|
|
61
|
-
readonly description: "
|
|
61
|
+
readonly description: "Shown in your listings and search results, and at the top of its page.";
|
|
62
62
|
readonly rows: 3;
|
|
63
63
|
}, {
|
|
64
64
|
readonly id: "image";
|
|
65
65
|
readonly type: "media";
|
|
66
66
|
readonly label: "Event image";
|
|
67
|
-
readonly description: "
|
|
67
|
+
readonly description: "At the top of its page and beside it in your listings.";
|
|
68
68
|
}, {
|
|
69
69
|
readonly id: "body";
|
|
70
70
|
readonly type: "richText";
|
|
71
|
-
readonly label: "
|
|
72
|
-
readonly description: "
|
|
71
|
+
readonly label: "Full description";
|
|
72
|
+
readonly description: "The main text on its page, under the introduction.";
|
|
73
73
|
}];
|
|
74
74
|
readonly routing: {
|
|
75
75
|
readonly enabled: true;
|
|
@@ -161,18 +161,18 @@ export declare const BUILTIN_CONTENT_TYPE_SCHEMAS: {
|
|
|
161
161
|
readonly id: "summary";
|
|
162
162
|
readonly type: "textarea";
|
|
163
163
|
readonly label: "Short introduction";
|
|
164
|
-
readonly description: "
|
|
164
|
+
readonly description: "Shown in your listings and search results, and at the top of its page.";
|
|
165
165
|
readonly rows: 3;
|
|
166
166
|
}, {
|
|
167
167
|
readonly id: "image";
|
|
168
168
|
readonly type: "media";
|
|
169
169
|
readonly label: "Event image";
|
|
170
|
-
readonly description: "
|
|
170
|
+
readonly description: "At the top of its page and beside it in your listings.";
|
|
171
171
|
}, {
|
|
172
172
|
readonly id: "body";
|
|
173
173
|
readonly type: "richText";
|
|
174
|
-
readonly label: "
|
|
175
|
-
readonly description: "
|
|
174
|
+
readonly label: "Full description";
|
|
175
|
+
readonly description: "The main text on its page, under the introduction.";
|
|
176
176
|
}];
|
|
177
177
|
readonly routing: {
|
|
178
178
|
readonly enabled: true;
|
|
@@ -69,8 +69,6 @@ type EnsureRecord<T extends Record<string, unknown>> = T;
|
|
|
69
69
|
export type RoutableMetadataValues = EnsureRecord<{
|
|
70
70
|
draftTitle: string;
|
|
71
71
|
draftSlug: string;
|
|
72
|
-
draftStatus: string;
|
|
73
|
-
scheduledPublishAt: string | null;
|
|
74
72
|
draftMetaTitle: string | null;
|
|
75
73
|
draftMetaDescription: string | null;
|
|
76
74
|
ogImageId: string | null;
|
|
@@ -87,6 +85,17 @@ export declare function createMetadataStateFromSnapshot(snapshot: ContentEntrySn
|
|
|
87
85
|
values: RoutableMetadataValues | Record<string, never>;
|
|
88
86
|
baseline: RoutableMetadataValues | Record<string, never>;
|
|
89
87
|
};
|
|
88
|
+
/**
|
|
89
|
+
* The route's lifecycle fields as the editor reads them: from the entry snapshot, never
|
|
90
|
+
* from metadata values (issue 1553, FO2). Lifecycle operations (publish, schedule,
|
|
91
|
+
* cancel, discard) own them; forms get them read-only, e.g. slug auto-generation's
|
|
92
|
+
* `statusFieldId`. Non-routable content has none.
|
|
93
|
+
*/
|
|
94
|
+
export type RouteLifecycleContext = Readonly<{
|
|
95
|
+
draftStatus: string;
|
|
96
|
+
scheduledPublishAt: string | null;
|
|
97
|
+
}>;
|
|
98
|
+
export declare function routeLifecycleContext(snapshot: ContentEntrySnapshot): RouteLifecycleContext | null;
|
|
90
99
|
/**
|
|
91
100
|
* Extract published metadata values from a snapshot.
|
|
92
101
|
* Used to set the publishedBaseline for unpublished changes detection.
|
|
@@ -33,7 +33,7 @@ export type RouteMetadataPresentation = Readonly<{
|
|
|
33
33
|
manifest: RouteMetadataManifest;
|
|
34
34
|
typeKey: string | null;
|
|
35
35
|
}>;
|
|
36
|
-
export type RouteMetadataFieldId = "draftTitle" | "draftSlug" | "
|
|
36
|
+
export type RouteMetadataFieldId = "draftTitle" | "draftSlug" | "draftMetaTitle" | "draftMetaDescription" | "ogImageId";
|
|
37
37
|
type RouteMetadataTextField = {
|
|
38
38
|
id: "draftTitle" | "draftMetaTitle" | "draftMetaDescription" | "ogImageId";
|
|
39
39
|
type: "text";
|
|
@@ -54,39 +54,17 @@ type RouteMetadataSlugField = {
|
|
|
54
54
|
description: string;
|
|
55
55
|
required: true;
|
|
56
56
|
sourceFieldId?: "draftTitle";
|
|
57
|
+
/**
|
|
58
|
+
* Auto-generation runs only while this reads "draft". It isn't a metadata value: the
|
|
59
|
+
* form backend supplies it read-only from the entry snapshot (`routeLifecycleContext`).
|
|
60
|
+
*/
|
|
57
61
|
statusFieldId: "draftStatus";
|
|
58
62
|
maxLength: number;
|
|
59
63
|
ui: {
|
|
60
64
|
showSlugPreview: true;
|
|
61
65
|
};
|
|
62
66
|
};
|
|
63
|
-
type
|
|
64
|
-
id: "draftStatus";
|
|
65
|
-
type: "select";
|
|
66
|
-
label: string;
|
|
67
|
-
description: string;
|
|
68
|
-
required: true;
|
|
69
|
-
defaultValue: string;
|
|
70
|
-
options: Array<{
|
|
71
|
-
value: string;
|
|
72
|
-
label: string;
|
|
73
|
-
}>;
|
|
74
|
-
multiple: false;
|
|
75
|
-
};
|
|
76
|
-
type RouteMetadataDatetimeField = {
|
|
77
|
-
id: "scheduledPublishAt";
|
|
78
|
-
type: "datetime";
|
|
79
|
-
label: string;
|
|
80
|
-
description: string;
|
|
81
|
-
required: false;
|
|
82
|
-
ui: {
|
|
83
|
-
visibleWhen: {
|
|
84
|
-
field: "draftStatus";
|
|
85
|
-
equals: "scheduled";
|
|
86
|
-
};
|
|
87
|
-
};
|
|
88
|
-
};
|
|
89
|
-
export type RouteMetadataField = RouteMetadataTextField | RouteMetadataSlugField | RouteMetadataSelectField | RouteMetadataDatetimeField;
|
|
67
|
+
export type RouteMetadataField = RouteMetadataTextField | RouteMetadataSlugField;
|
|
90
68
|
export type RouteMetadataManifest = {
|
|
91
69
|
name: string;
|
|
92
70
|
version: string;
|
|
@@ -97,22 +75,16 @@ export type RouteMetadataManifest = {
|
|
|
97
75
|
slots: [];
|
|
98
76
|
};
|
|
99
77
|
export declare const ROUTE_METADATA_MANIFEST: RouteMetadataManifest;
|
|
100
|
-
export declare const METADATA_WORKFLOW_FIELDS: {
|
|
101
|
-
readonly title: "draftTitle";
|
|
102
|
-
readonly slug: "draftSlug";
|
|
103
|
-
readonly status: "draftStatus";
|
|
104
|
-
readonly publishAt: "scheduledPublishAt";
|
|
105
|
-
};
|
|
106
78
|
export declare function pageRouteSlugFromEditorValue(value: string | null | undefined): PageRouteSlug;
|
|
107
79
|
export declare function pageRouteSlugToEditorValue(slug: PageRouteSlug): string;
|
|
108
80
|
export declare function pageRouteSlugToStoredValue(slug: PageRouteSlug): string | null;
|
|
109
81
|
export declare function isHomepagePageRouteSlug(slug: PageRouteSlug): boolean;
|
|
110
82
|
export declare function resolvePageRouteSlug(entry: ContentEntrySnapshot, currentSlug?: string | null): PageRouteSlug | null;
|
|
111
83
|
export declare const ROUTE_METADATA_MANAGED_FIELDS_BY_TYPE: {
|
|
112
|
-
readonly event: readonly ["draftTitle", "draftSlug"
|
|
113
|
-
readonly product: readonly ["draftTitle", "draftSlug"
|
|
114
|
-
readonly "product-category": readonly ["draftTitle", "draftSlug"
|
|
115
|
-
readonly "team-member": readonly ["draftTitle", "draftSlug"
|
|
84
|
+
readonly event: readonly ["draftTitle", "draftSlug"];
|
|
85
|
+
readonly product: readonly ["draftTitle", "draftSlug"];
|
|
86
|
+
readonly "product-category": readonly ["draftTitle", "draftSlug"];
|
|
87
|
+
readonly "team-member": readonly ["draftTitle", "draftSlug"];
|
|
116
88
|
};
|
|
117
89
|
export declare function getManagedRouteMetadataFieldIdsForType(typeKey: string | null | undefined): ReadonlyArray<RouteMetadataFieldId>;
|
|
118
90
|
export declare function isRouteMetadataFieldEditableForType(typeKey: string | null | undefined, fieldId: string): boolean;
|
|
@@ -154,7 +154,6 @@ export declare const DEFAULT_TEMPLATE_DEFINITIONS: {
|
|
|
154
154
|
readonly maxTickets: "5";
|
|
155
155
|
readonly showVenue: true;
|
|
156
156
|
readonly showCapacity: true;
|
|
157
|
-
readonly successMessage: "Thank you for registering! Check your email for confirmation details.";
|
|
158
157
|
readonly buttonText: "Complete Registration";
|
|
159
158
|
readonly buttonVariant: "primary";
|
|
160
159
|
};
|
|
@@ -74,7 +74,6 @@ export type ContentEntryDefinition<TEntry extends ContentEntrySnapshot, TValues
|
|
|
74
74
|
routing: RoutingHelpers;
|
|
75
75
|
hasRoute: boolean;
|
|
76
76
|
services: {
|
|
77
|
-
saveMetadata: (payload: TMetadataPayload) => Promise<TMetadataResponse>;
|
|
78
77
|
publish: (payload: TPublishPayload | undefined) => Promise<TEntry>;
|
|
79
78
|
discardDraft: () => Promise<TEntry>;
|
|
80
79
|
deleteEntry: () => Promise<void>;
|
|
@@ -1,5 +1,53 @@
|
|
|
1
|
-
|
|
1
|
+
import { type ContentVersionId } from './branded';
|
|
2
|
+
/** A block version ID is meaningful only with its draft or published stage (wire shape). */
|
|
2
3
|
export type BlockContentIdentity = Readonly<{
|
|
3
4
|
draftContentId: string | null;
|
|
4
5
|
publishedContentId: string | null;
|
|
5
6
|
}>;
|
|
7
|
+
/** A published version paired with the content it authorises. */
|
|
8
|
+
export type PublishedBlockPlacement = Readonly<{
|
|
9
|
+
kind: 'published';
|
|
10
|
+
id: ContentVersionId;
|
|
11
|
+
content: Record<string, unknown>;
|
|
12
|
+
}>;
|
|
13
|
+
/**
|
|
14
|
+
* A published pointer the server sent without its content, or with an id that
|
|
15
|
+
* isn't a content version id. It can't be cited as published.
|
|
16
|
+
*/
|
|
17
|
+
export type IncompleteBlockPlacement = Readonly<{
|
|
18
|
+
kind: 'incomplete';
|
|
19
|
+
id: string | null;
|
|
20
|
+
content: Record<string, unknown> | null;
|
|
21
|
+
}>;
|
|
22
|
+
/** What a read of a block's published version finds; `null` when it was never published. */
|
|
23
|
+
export type PublishedBlockPlacementRead = PublishedBlockPlacement | IncompleteBlockPlacement | null;
|
|
24
|
+
/** The one pairing of a published id with its content. */
|
|
25
|
+
export declare function readPublishedBlockPlacement(id: string | null | undefined, content: Record<string, unknown> | null | undefined): PublishedBlockPlacementRead;
|
|
26
|
+
/**
|
|
27
|
+
* The server's versions of one editor block. This is server-owned state: the
|
|
28
|
+
* editor keeps it outside undo history, so undo never restores a replaced id.
|
|
29
|
+
*/
|
|
30
|
+
export type EditorBlockVersions = Readonly<{
|
|
31
|
+
draftContentId: ContentVersionId | null;
|
|
32
|
+
publishedPlacement: PublishedBlockPlacementRead;
|
|
33
|
+
}>;
|
|
34
|
+
export declare const NO_BLOCK_VERSIONS: EditorBlockVersions;
|
|
35
|
+
/** The one conversion from wire identity to editor identity. */
|
|
36
|
+
export declare function readEditorBlockVersions(wire: Partial<BlockContentIdentity> & Readonly<{
|
|
37
|
+
publishedContent?: Record<string, unknown> | null;
|
|
38
|
+
}>): EditorBlockVersions;
|
|
39
|
+
/** Editor identity from a render block, whose published placement is already paired. */
|
|
40
|
+
export declare function readEditorBlockVersionsFromPlacement(draftContentId: string | null | undefined, publishedPlacement: PublishedBlockPlacementRead): EditorBlockVersions;
|
|
41
|
+
/** The published version a block can cite, if it has a complete one. */
|
|
42
|
+
export declare function publishedVersionOf(versions: EditorBlockVersions | undefined): PublishedBlockPlacement | null;
|
|
43
|
+
/** The content version a block renders: its draft if it has one, else its published version. */
|
|
44
|
+
export declare function selectedContentVersionId(versions: EditorBlockVersions): ContentVersionId | null;
|
|
45
|
+
/** Published content the editor treats as its dirty-state baseline. */
|
|
46
|
+
export declare function publishedContentOf(versions: EditorBlockVersions | undefined): Record<string, unknown> | null;
|
|
47
|
+
export type SavedBlockContentVersion = Readonly<{
|
|
48
|
+
contentId: string;
|
|
49
|
+
stage: 'draft' | 'published';
|
|
50
|
+
data: unknown;
|
|
51
|
+
}>;
|
|
52
|
+
/** A block's versions after the server acknowledges one content save. */
|
|
53
|
+
export declare function applySavedBlockContentVersion(versions: EditorBlockVersions, saved: SavedBlockContentVersion): EditorBlockVersions;
|
|
@@ -11,7 +11,7 @@ export type BookingFlexibleBalanceConfig = Readonly<{
|
|
|
11
11
|
dueDateRule: BookingFlexibleBalanceDueDateRule;
|
|
12
12
|
depositRefundability: BookingDepositRefundPolicy;
|
|
13
13
|
}>;
|
|
14
|
-
export type BookingFlexibleBalanceContractStatus = 'active' | 'payment_pending' | 'overdue' | 'completed' | 'waived' | 'cancelled_due_to_non_payment' | 'refunded';
|
|
14
|
+
export type BookingFlexibleBalanceContractStatus = 'active' | 'payment_pending' | 'overdue' | 'completed' | 'waived' | 'cancelled_due_to_non_payment' | 'refunded' | 'closed_order_failed';
|
|
15
15
|
export type BookingFlexibleBalanceReminderKind = 'due_7_days' | 'due_1_day' | 'overdue_1_day';
|
|
16
16
|
export declare const DEFAULT_FLEXIBLE_BALANCE_STRIPE_MINIMUM_CHARGE_CENTS = 50;
|
|
17
17
|
export type BookingFlexibleBalanceReminderState = Readonly<{
|
|
@@ -30,7 +30,7 @@ export type FlexibleBalancePaymentEligibility = Readonly<{
|
|
|
30
30
|
reason: 'overdue' | 'dust_balance';
|
|
31
31
|
}> | Readonly<{
|
|
32
32
|
kind: 'unavailable';
|
|
33
|
-
reason: 'already_settled' | 'payment_pending' | 'cancelled_due_to_non_payment' | 'refunded' | 'waived';
|
|
33
|
+
reason: 'already_settled' | 'payment_pending' | 'cancelled_due_to_non_payment' | 'refunded' | 'waived' | 'order_failed';
|
|
34
34
|
}>;
|
|
35
35
|
export declare function resolveFlexibleBalanceInitialPaymentCents(input: Readonly<{
|
|
36
36
|
totalAmountCents: number;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type Result } from './result';
|
|
2
|
+
import { type BookingInstalmentPlanConfig } from './booking-instalments';
|
|
3
|
+
import type { BookingPaymentCollectionOption } from './booking-payment-options';
|
|
4
|
+
/** A plan that starts with a deposit whose deposit is below the card minimum. */
|
|
5
|
+
export type InstalmentDepositBelowMinimum = Readonly<{
|
|
6
|
+
kind: 'instalment_deposit_below_minimum';
|
|
7
|
+
minimumCents: number;
|
|
8
|
+
}>;
|
|
9
|
+
/**
|
|
10
|
+
* A plan that starts with a deposit takes it by card when the customer books
|
|
11
|
+
* and saves the card for the later payments, so the deposit must be at least
|
|
12
|
+
* the card minimum for the site's currency. Plans without a deposit step
|
|
13
|
+
* (equal instalments) charge their first instalment instead and are not
|
|
14
|
+
* checked here.
|
|
15
|
+
*/
|
|
16
|
+
export declare function checkInstalmentPlanDeposit(plan: BookingInstalmentPlanConfig, minimumCents: number): Result<void, InstalmentDepositBelowMinimum>;
|
|
17
|
+
/** The deposit check for whichever instalment option a set of payment options offers. */
|
|
18
|
+
export declare function checkPaymentOptionsInstalmentDeposit(allowedOptions: readonly BookingPaymentCollectionOption[], minimumCents: number): Result<void, InstalmentDepositBelowMinimum>;
|
|
19
|
+
/** The one message for a deposit below the minimum, shown in the editor and returned by the server. */
|
|
20
|
+
export declare function describeInstalmentDepositBelowMinimum(failure: InstalmentDepositBelowMinimum, currency: string): string;
|