@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
package/dist/server/server.mjs
CHANGED
|
@@ -52,6 +52,64 @@ function defineEndpointDefinitions(definitions) {
|
|
|
52
52
|
return definitions;
|
|
53
53
|
}
|
|
54
54
|
//#endregion
|
|
55
|
+
//#region ../api/src/apiEndpointTypes.ts
|
|
56
|
+
function allowedDemoMutationPolicy() {
|
|
57
|
+
return {
|
|
58
|
+
classification: "allowed",
|
|
59
|
+
publicMessage: ""
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
function blockedDemoMutationPolicy(classification, publicMessage) {
|
|
63
|
+
if (publicMessage.trim() === "") throw new Error(`Demo mutation policy ${classification} requires publicMessage.`);
|
|
64
|
+
return {
|
|
65
|
+
classification,
|
|
66
|
+
publicMessage
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
//#endregion
|
|
70
|
+
//#region ../api/src/demoMutationPolicies.ts
|
|
71
|
+
const DEMO_MUTATION_BLOCKED_HIDDEN = blockedDemoMutationPolicy("blocked-hidden", "This action is not available in demo sites.");
|
|
72
|
+
const DEMO_MUTATION_BLOCKED_DISABLED = blockedDemoMutationPolicy("blocked-disabled", "This setting is disabled in demo sites.");
|
|
73
|
+
const DEMO_MUTATION_INTERNAL_ONLY = blockedDemoMutationPolicy("internal-only", "This internal operation is not available in demo sites.");
|
|
74
|
+
const DEMO_MUTATION_ALLOWED = allowedDemoMutationPolicy();
|
|
75
|
+
//#endregion
|
|
76
|
+
//#region ../api/src/siteLifecycleEndpoints.ts
|
|
77
|
+
const SITE_LIFECYCLE_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
78
|
+
createSite: {
|
|
79
|
+
path: "/sites/manage",
|
|
80
|
+
method: "POST",
|
|
81
|
+
tags: ["site"],
|
|
82
|
+
auth: "user",
|
|
83
|
+
responseKind: "json",
|
|
84
|
+
errors: []
|
|
85
|
+
},
|
|
86
|
+
createSiteManual: {
|
|
87
|
+
path: "/sites/manual",
|
|
88
|
+
method: "POST",
|
|
89
|
+
tags: ["site"],
|
|
90
|
+
auth: "user",
|
|
91
|
+
responseKind: "json",
|
|
92
|
+
errors: []
|
|
93
|
+
},
|
|
94
|
+
updateSite: {
|
|
95
|
+
path: "/sites/manage",
|
|
96
|
+
method: "PUT",
|
|
97
|
+
tags: ["site"],
|
|
98
|
+
auth: "user",
|
|
99
|
+
responseKind: "json",
|
|
100
|
+
errors: []
|
|
101
|
+
},
|
|
102
|
+
deleteSite: {
|
|
103
|
+
path: "/sites/{siteId}",
|
|
104
|
+
method: "DELETE",
|
|
105
|
+
tags: ["site", "site-{siteId}"],
|
|
106
|
+
auth: "user",
|
|
107
|
+
responseKind: "json",
|
|
108
|
+
errors: [],
|
|
109
|
+
demoMutation: DEMO_MUTATION_BLOCKED_HIDDEN
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
//#endregion
|
|
55
113
|
//#region ../api/src/publicNewsletterEndpointDefinitions.ts
|
|
56
114
|
const PUBLIC_NEWSLETTER_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
57
115
|
subscribeNewsletter: {
|
|
@@ -112,27 +170,6 @@ const PUBLIC_NEWSLETTER_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
112
170
|
}
|
|
113
171
|
});
|
|
114
172
|
//#endregion
|
|
115
|
-
//#region ../api/src/apiEndpointTypes.ts
|
|
116
|
-
function allowedDemoMutationPolicy() {
|
|
117
|
-
return {
|
|
118
|
-
classification: "allowed",
|
|
119
|
-
publicMessage: ""
|
|
120
|
-
};
|
|
121
|
-
}
|
|
122
|
-
function blockedDemoMutationPolicy(classification, publicMessage) {
|
|
123
|
-
if (publicMessage.trim() === "") throw new Error(`Demo mutation policy ${classification} requires publicMessage.`);
|
|
124
|
-
return {
|
|
125
|
-
classification,
|
|
126
|
-
publicMessage
|
|
127
|
-
};
|
|
128
|
-
}
|
|
129
|
-
//#endregion
|
|
130
|
-
//#region ../api/src/demoMutationPolicies.ts
|
|
131
|
-
const DEMO_MUTATION_BLOCKED_HIDDEN = blockedDemoMutationPolicy("blocked-hidden", "This action is not available in demo sites.");
|
|
132
|
-
const DEMO_MUTATION_BLOCKED_DISABLED = blockedDemoMutationPolicy("blocked-disabled", "This setting is disabled in demo sites.");
|
|
133
|
-
const DEMO_MUTATION_INTERNAL_ONLY = blockedDemoMutationPolicy("internal-only", "This internal operation is not available in demo sites.");
|
|
134
|
-
const DEMO_MUTATION_ALLOWED = allowedDemoMutationPolicy();
|
|
135
|
-
//#endregion
|
|
136
173
|
//#region ../api/src/cache-tags.ts
|
|
137
174
|
/**
|
|
138
175
|
* Tag templates for endpoint definitions (support `{param}` placeholders).
|
|
@@ -1159,6 +1196,20 @@ const NEWSLETTER_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
1159
1196
|
responseKind: "json",
|
|
1160
1197
|
errors: ["auth:forbidden", "server:internal_error"]
|
|
1161
1198
|
},
|
|
1199
|
+
setMailingListBookingOptIn: {
|
|
1200
|
+
path: "/sites/{siteId}/mailing-list/setup/booking-opt-in",
|
|
1201
|
+
method: "PUT",
|
|
1202
|
+
tags: [TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter],
|
|
1203
|
+
auth: "user",
|
|
1204
|
+
responseKind: "json",
|
|
1205
|
+
demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
|
|
1206
|
+
errors: [
|
|
1207
|
+
"auth:forbidden",
|
|
1208
|
+
"validation:invalid_input",
|
|
1209
|
+
"resource:conflict",
|
|
1210
|
+
"server:internal_error"
|
|
1211
|
+
]
|
|
1212
|
+
},
|
|
1162
1213
|
getMailingListAuthoringContext: {
|
|
1163
1214
|
path: "/sites/{siteId}/mailing-list/authoring-context",
|
|
1164
1215
|
method: "GET",
|
|
@@ -1574,6 +1625,7 @@ const SDK_EVENT_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
1574
1625
|
responseKind: "json",
|
|
1575
1626
|
errors: [
|
|
1576
1627
|
"resource:not_found",
|
|
1628
|
+
"validation:invalid_input",
|
|
1577
1629
|
"resource:conflict",
|
|
1578
1630
|
"server:internal_error"
|
|
1579
1631
|
]
|
|
@@ -1680,6 +1732,19 @@ const CURRENCY_LOCALE_BY_CODE = {
|
|
|
1680
1732
|
function resolveCurrencyLocale(currencyCode, override) {
|
|
1681
1733
|
return override ?? CURRENCY_LOCALE_BY_CODE[currencyCode] ?? "en";
|
|
1682
1734
|
}
|
|
1735
|
+
function fractionDigitsFor(decimals, exactFormatter) {
|
|
1736
|
+
switch (decimals) {
|
|
1737
|
+
case "exact": return {};
|
|
1738
|
+
case "auto": return {
|
|
1739
|
+
minimumFractionDigits: 0,
|
|
1740
|
+
maximumFractionDigits: exactFormatter.resolvedOptions().maximumFractionDigits
|
|
1741
|
+
};
|
|
1742
|
+
case "whole": return {
|
|
1743
|
+
minimumFractionDigits: 0,
|
|
1744
|
+
maximumFractionDigits: 0
|
|
1745
|
+
};
|
|
1746
|
+
}
|
|
1747
|
+
}
|
|
1683
1748
|
/**
|
|
1684
1749
|
* The single currency-amount formatter for the product: minor units in,
|
|
1685
1750
|
* localized string out.
|
|
@@ -1690,6 +1755,13 @@ function resolveCurrencyLocale(currencyCode, override) {
|
|
|
1690
1755
|
* own `Intl.NumberFormat`.
|
|
1691
1756
|
*/
|
|
1692
1757
|
function formatCurrencyAmount(amountCents, currency, options) {
|
|
1758
|
+
return formatCurrencyMajorUnits(amountCents / 100, currency, options);
|
|
1759
|
+
}
|
|
1760
|
+
/**
|
|
1761
|
+
* `formatCurrencyAmount` for an amount already in MAJOR units (29.99 = £29.99),
|
|
1762
|
+
* such as a registrar price. Prefer minor units everywhere else.
|
|
1763
|
+
*/
|
|
1764
|
+
function formatCurrencyMajorUnits(amount, currency, options) {
|
|
1693
1765
|
const currencyCode = currency.toUpperCase();
|
|
1694
1766
|
const locale = resolveCurrencyLocale(currencyCode, options?.locale);
|
|
1695
1767
|
try {
|
|
@@ -1697,17 +1769,13 @@ function formatCurrencyAmount(amountCents, currency, options) {
|
|
|
1697
1769
|
style: "currency",
|
|
1698
1770
|
currency: currencyCode
|
|
1699
1771
|
});
|
|
1700
|
-
const fractionDigits = options?.decimals === "auto" ? {
|
|
1701
|
-
minimumFractionDigits: 0,
|
|
1702
|
-
maximumFractionDigits: exactFormatter.resolvedOptions().maximumFractionDigits
|
|
1703
|
-
} : {};
|
|
1704
1772
|
return new Intl.NumberFormat(locale, {
|
|
1705
1773
|
style: "currency",
|
|
1706
1774
|
currency: currencyCode,
|
|
1707
|
-
...
|
|
1708
|
-
}).format(
|
|
1775
|
+
...fractionDigitsFor(options?.decimals ?? "exact", exactFormatter)
|
|
1776
|
+
}).format(amount);
|
|
1709
1777
|
} catch {
|
|
1710
|
-
return `${
|
|
1778
|
+
return `${amount.toFixed(2)} ${currencyCode}`;
|
|
1711
1779
|
}
|
|
1712
1780
|
}
|
|
1713
1781
|
//#endregion
|
|
@@ -2116,6 +2184,26 @@ function toLocationCoordinates(value) {
|
|
|
2116
2184
|
};
|
|
2117
2185
|
}
|
|
2118
2186
|
//#endregion
|
|
2187
|
+
//#region ../core/src/block-content-identity.ts
|
|
2188
|
+
function readContentVersionId(value) {
|
|
2189
|
+
const parsed = parseContentVersionId(value);
|
|
2190
|
+
return parsed.ok ? parsed.value : null;
|
|
2191
|
+
}
|
|
2192
|
+
/** The one pairing of a published id with its content. */
|
|
2193
|
+
function readPublishedBlockPlacement(id, content) {
|
|
2194
|
+
if (id == null && content == null) return null;
|
|
2195
|
+
const versionId = readContentVersionId(id);
|
|
2196
|
+
return versionId !== null && content != null ? {
|
|
2197
|
+
kind: "published",
|
|
2198
|
+
id: versionId,
|
|
2199
|
+
content
|
|
2200
|
+
} : {
|
|
2201
|
+
kind: "incomplete",
|
|
2202
|
+
id: id ?? null,
|
|
2203
|
+
content: content ?? null
|
|
2204
|
+
};
|
|
2205
|
+
}
|
|
2206
|
+
//#endregion
|
|
2119
2207
|
//#region ../core/src/mailing-list-identifiers.ts
|
|
2120
2208
|
const UUID_PATTERN = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/iu;
|
|
2121
2209
|
const OPAQUE_ID_PATTERN = /^[A-Za-z0-9_-]{1,100}$/u;
|
|
@@ -2284,17 +2372,35 @@ function parseMailingListRuntimeContext(value) {
|
|
|
2284
2372
|
if (!isRecord$15(value)) return invalidRuntimeContext();
|
|
2285
2373
|
if (value.tag === "not_configured") return ok$1({ tag: "not_configured" });
|
|
2286
2374
|
if (value.tag !== "configured") return invalidRuntimeContext();
|
|
2375
|
+
return parseConfiguredRuntimeContext(value);
|
|
2376
|
+
}
|
|
2377
|
+
function parseConfiguredRuntimeContext(value) {
|
|
2287
2378
|
const revision = parseMailingListSetupRevision(value.revision);
|
|
2288
2379
|
const form = parseMailingListGlobalForm(value.form);
|
|
2289
2380
|
const provider = parseRuntimeProvider(value.provider);
|
|
2290
|
-
|
|
2381
|
+
const bookingSignup = parseBookingSignupOffer(value.bookingSignup);
|
|
2382
|
+
if (revision === null || !form.ok || provider === null || bookingSignup === null) return invalidRuntimeContext();
|
|
2291
2383
|
return ok$1({
|
|
2292
2384
|
tag: "configured",
|
|
2293
2385
|
revision,
|
|
2386
|
+
bookingSignup,
|
|
2294
2387
|
form: form.value,
|
|
2295
2388
|
provider
|
|
2296
2389
|
});
|
|
2297
2390
|
}
|
|
2391
|
+
function parseBookingSignupOffer(value) {
|
|
2392
|
+
if (value === void 0) return {
|
|
2393
|
+
tag: "unavailable",
|
|
2394
|
+
reason: "disabled"
|
|
2395
|
+
};
|
|
2396
|
+
if (!isRecord$15(value)) return null;
|
|
2397
|
+
if (value.tag === "offered") return { tag: "offered" };
|
|
2398
|
+
if (value.tag === "unavailable" && (value.reason === "disabled" || value.reason === "fields" || value.reason === "destination")) return {
|
|
2399
|
+
tag: "unavailable",
|
|
2400
|
+
reason: value.reason
|
|
2401
|
+
};
|
|
2402
|
+
return null;
|
|
2403
|
+
}
|
|
2298
2404
|
function parseRuntimeProvider(value) {
|
|
2299
2405
|
if (!isRecord$15(value)) return null;
|
|
2300
2406
|
switch (value.provider) {
|
|
@@ -3332,28 +3438,6 @@ const EVENT_MANAGEMENT_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
3332
3438
|
"resource:conflict",
|
|
3333
3439
|
"server:internal_error"
|
|
3334
3440
|
]
|
|
3335
|
-
},
|
|
3336
|
-
/**
|
|
3337
|
-
* The Content tab's one write: the short introduction, image and
|
|
3338
|
-
* description of an event's page, published without its layout.
|
|
3339
|
-
*/
|
|
3340
|
-
saveEventPageWords: {
|
|
3341
|
-
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/words",
|
|
3342
|
-
method: "PUT",
|
|
3343
|
-
tags: [
|
|
3344
|
-
TAG_TEMPLATES.siteCollection,
|
|
3345
|
-
TAG_TEMPLATES.siteRoutableContent,
|
|
3346
|
-
TAG_TEMPLATES.pageSurfaceById
|
|
3347
|
-
],
|
|
3348
|
-
auth: "user",
|
|
3349
|
-
responseKind: "json",
|
|
3350
|
-
errors: [
|
|
3351
|
-
"auth:forbidden",
|
|
3352
|
-
"validation:invalid_input",
|
|
3353
|
-
"resource:not_found",
|
|
3354
|
-
"resource:conflict",
|
|
3355
|
-
"server:internal_error"
|
|
3356
|
-
]
|
|
3357
3441
|
}
|
|
3358
3442
|
});
|
|
3359
3443
|
//#endregion
|
|
@@ -3778,6 +3862,15 @@ const BILLING_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
3778
3862
|
auth: "user",
|
|
3779
3863
|
responseKind: "json"
|
|
3780
3864
|
},
|
|
3865
|
+
/** Continue on Free from the onboarding card page; only the attempt's owner. */
|
|
3866
|
+
continueOnboardingOnFree: {
|
|
3867
|
+
path: "/onboarding/attempts/{attemptToken}/plan/free",
|
|
3868
|
+
method: "POST",
|
|
3869
|
+
tags: ["billing"],
|
|
3870
|
+
auth: "user",
|
|
3871
|
+
errors: [],
|
|
3872
|
+
responseKind: "json"
|
|
3873
|
+
},
|
|
3781
3874
|
createBillingPortalSession: {
|
|
3782
3875
|
path: "/billing/portal/session",
|
|
3783
3876
|
method: "POST",
|
|
@@ -3787,6 +3880,209 @@ const BILLING_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
3787
3880
|
}
|
|
3788
3881
|
});
|
|
3789
3882
|
//#endregion
|
|
3883
|
+
//#region ../api/src/editLeaseEndpoints.ts
|
|
3884
|
+
const path = "/sites/{siteId}/edit-leases/{nodeType}/{nodeId}";
|
|
3885
|
+
const lifecycleErrors = [
|
|
3886
|
+
"auth:lease_required",
|
|
3887
|
+
"auth:forbidden",
|
|
3888
|
+
"resource:not_found",
|
|
3889
|
+
"validation:invalid_input",
|
|
3890
|
+
"server:internal_error"
|
|
3891
|
+
];
|
|
3892
|
+
const EDIT_LEASE_ENDPOINT_DEFINITIONS = {
|
|
3893
|
+
readEditLease: {
|
|
3894
|
+
path,
|
|
3895
|
+
method: "GET",
|
|
3896
|
+
editLease: "lifecycle",
|
|
3897
|
+
errors: lifecycleErrors,
|
|
3898
|
+
auth: "user",
|
|
3899
|
+
responseKind: "json"
|
|
3900
|
+
},
|
|
3901
|
+
acquireEditLease: {
|
|
3902
|
+
path,
|
|
3903
|
+
method: "POST",
|
|
3904
|
+
editLease: "lifecycle",
|
|
3905
|
+
errors: lifecycleErrors,
|
|
3906
|
+
auth: "user",
|
|
3907
|
+
responseKind: "json"
|
|
3908
|
+
},
|
|
3909
|
+
takeOverEditLease: {
|
|
3910
|
+
path,
|
|
3911
|
+
method: "PUT",
|
|
3912
|
+
editLease: "lifecycle",
|
|
3913
|
+
errors: lifecycleErrors,
|
|
3914
|
+
auth: "user",
|
|
3915
|
+
responseKind: "json"
|
|
3916
|
+
},
|
|
3917
|
+
heartbeatEditLease: {
|
|
3918
|
+
path,
|
|
3919
|
+
method: "PATCH",
|
|
3920
|
+
editLease: "lifecycle",
|
|
3921
|
+
errors: [...lifecycleErrors, "auth:lease_lost"],
|
|
3922
|
+
auth: "user",
|
|
3923
|
+
responseKind: "json"
|
|
3924
|
+
},
|
|
3925
|
+
releaseEditLease: {
|
|
3926
|
+
path,
|
|
3927
|
+
method: "DELETE",
|
|
3928
|
+
editLease: "lifecycle",
|
|
3929
|
+
errors: lifecycleErrors,
|
|
3930
|
+
auth: "user",
|
|
3931
|
+
responseKind: "json"
|
|
3932
|
+
}
|
|
3933
|
+
};
|
|
3934
|
+
//#endregion
|
|
3935
|
+
//#region ../api/src/pageSurfaceEditorEndpoints.ts
|
|
3936
|
+
const surfaceTags = [TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById];
|
|
3937
|
+
const PAGE_SURFACE_EDITOR_ENDPOINT_DEFINITIONS = {
|
|
3938
|
+
getPageSurfaceEditorDocument: {
|
|
3939
|
+
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/content",
|
|
3940
|
+
method: "GET",
|
|
3941
|
+
errors: [
|
|
3942
|
+
"auth:forbidden",
|
|
3943
|
+
"validation:invalid_input",
|
|
3944
|
+
"resource:not_found",
|
|
3945
|
+
"resource:conflict",
|
|
3946
|
+
"server:internal_error"
|
|
3947
|
+
],
|
|
3948
|
+
tags: surfaceTags,
|
|
3949
|
+
auth: "user",
|
|
3950
|
+
responseKind: "json"
|
|
3951
|
+
},
|
|
3952
|
+
updatePageSurfaceDraftContent: {
|
|
3953
|
+
editLease: "managed",
|
|
3954
|
+
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/content",
|
|
3955
|
+
method: "PUT",
|
|
3956
|
+
errors: [
|
|
3957
|
+
"validation:invalid_input",
|
|
3958
|
+
"resource:not_found",
|
|
3959
|
+
"resource:conflict",
|
|
3960
|
+
"server:internal_error"
|
|
3961
|
+
],
|
|
3962
|
+
tags: surfaceTags,
|
|
3963
|
+
auth: "user",
|
|
3964
|
+
responseKind: "json"
|
|
3965
|
+
},
|
|
3966
|
+
discardPageSurfaceDraftContent: {
|
|
3967
|
+
editLease: "managed",
|
|
3968
|
+
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/content/draft",
|
|
3969
|
+
method: "DELETE",
|
|
3970
|
+
errors: [
|
|
3971
|
+
"validation:invalid_input",
|
|
3972
|
+
"resource:not_found",
|
|
3973
|
+
"resource:conflict",
|
|
3974
|
+
"server:internal_error"
|
|
3975
|
+
],
|
|
3976
|
+
tags: surfaceTags,
|
|
3977
|
+
auth: "user",
|
|
3978
|
+
responseKind: "json"
|
|
3979
|
+
},
|
|
3980
|
+
updatePageSurfaceRouteMetadata: {
|
|
3981
|
+
editLease: "managed",
|
|
3982
|
+
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/metadata",
|
|
3983
|
+
method: "PATCH",
|
|
3984
|
+
errors: [
|
|
3985
|
+
"validation:invalid_input",
|
|
3986
|
+
"resource:not_found",
|
|
3987
|
+
"resource:conflict",
|
|
3988
|
+
"server:internal_error"
|
|
3989
|
+
],
|
|
3990
|
+
tags: [
|
|
3991
|
+
TAG_TEMPLATES.siteCollection,
|
|
3992
|
+
TAG_TEMPLATES.siteRoutableContent,
|
|
3993
|
+
TAG_TEMPLATES.pageSurfaceById
|
|
3994
|
+
],
|
|
3995
|
+
auth: "user",
|
|
3996
|
+
responseKind: "json"
|
|
3997
|
+
},
|
|
3998
|
+
publishPageSurface: {
|
|
3999
|
+
editLease: "managed",
|
|
4000
|
+
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/publication",
|
|
4001
|
+
method: "POST",
|
|
4002
|
+
errors: [
|
|
4003
|
+
"auth:forbidden",
|
|
4004
|
+
"validation:invalid_input",
|
|
4005
|
+
"resource:not_found",
|
|
4006
|
+
"resource:conflict",
|
|
4007
|
+
"server:internal_error"
|
|
4008
|
+
],
|
|
4009
|
+
tags: [
|
|
4010
|
+
TAG_TEMPLATES.siteCollection,
|
|
4011
|
+
TAG_TEMPLATES.siteRoutableContent,
|
|
4012
|
+
TAG_TEMPLATES.pageSurfaceById
|
|
4013
|
+
],
|
|
4014
|
+
auth: "user",
|
|
4015
|
+
responseKind: "json"
|
|
4016
|
+
},
|
|
4017
|
+
saveEventContentTab: {
|
|
4018
|
+
editLease: "managed",
|
|
4019
|
+
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/event-content",
|
|
4020
|
+
method: "PUT",
|
|
4021
|
+
errors: [
|
|
4022
|
+
"auth:forbidden",
|
|
4023
|
+
"validation:invalid_input",
|
|
4024
|
+
"resource:not_found",
|
|
4025
|
+
"resource:conflict",
|
|
4026
|
+
"server:internal_error"
|
|
4027
|
+
],
|
|
4028
|
+
tags: [
|
|
4029
|
+
TAG_TEMPLATES.siteCollection,
|
|
4030
|
+
TAG_TEMPLATES.siteRoutableContent,
|
|
4031
|
+
TAG_TEMPLATES.pageSurfaceById
|
|
4032
|
+
],
|
|
4033
|
+
auth: "user",
|
|
4034
|
+
responseKind: "json"
|
|
4035
|
+
}
|
|
4036
|
+
};
|
|
4037
|
+
//#endregion
|
|
4038
|
+
//#region ../api/src/bookingPeopleEndpointDefinitions.ts
|
|
4039
|
+
/**
|
|
4040
|
+
* People endpoints (#1356): the People list, its CSV export, and deleting a
|
|
4041
|
+
* person when nothing is attached to them.
|
|
4042
|
+
*/
|
|
4043
|
+
const BOOKING_PEOPLE_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
4044
|
+
listPeople: {
|
|
4045
|
+
path: "/sites/{siteId}/bookings/people",
|
|
4046
|
+
method: "GET",
|
|
4047
|
+
tags: ["site-{siteId}", "customers-{siteId}"],
|
|
4048
|
+
auth: "user",
|
|
4049
|
+
responseKind: "json",
|
|
4050
|
+
errors: ["server:internal_error"]
|
|
4051
|
+
},
|
|
4052
|
+
exportPeopleCsv: {
|
|
4053
|
+
path: "/sites/{siteId}/bookings/people/export.csv",
|
|
4054
|
+
method: "GET",
|
|
4055
|
+
tags: ["site-{siteId}", "customers-{siteId}"],
|
|
4056
|
+
auth: "user",
|
|
4057
|
+
errors: [],
|
|
4058
|
+
responseKind: "blob"
|
|
4059
|
+
},
|
|
4060
|
+
checkPersonDeletion: {
|
|
4061
|
+
path: "/sites/{siteId}/bookings/people/{personId}/deletion-check",
|
|
4062
|
+
method: "GET",
|
|
4063
|
+
tags: ["site-{siteId}", "customers-{siteId}"],
|
|
4064
|
+
auth: "user",
|
|
4065
|
+
responseKind: "json",
|
|
4066
|
+
errors: [
|
|
4067
|
+
"auth:forbidden",
|
|
4068
|
+
"resource:not_found",
|
|
4069
|
+
"server:internal_error"
|
|
4070
|
+
]
|
|
4071
|
+
},
|
|
4072
|
+
deletePerson: {
|
|
4073
|
+
path: "/sites/{siteId}/bookings/people/{personId}",
|
|
4074
|
+
method: "DELETE",
|
|
4075
|
+
tags: ["site-{siteId}", "customers-{siteId}"],
|
|
4076
|
+
auth: "user",
|
|
4077
|
+
responseKind: "json",
|
|
4078
|
+
errors: [
|
|
4079
|
+
"auth:forbidden",
|
|
4080
|
+
"resource:not_found",
|
|
4081
|
+
"server:internal_error"
|
|
4082
|
+
]
|
|
4083
|
+
}
|
|
4084
|
+
});
|
|
4085
|
+
//#endregion
|
|
3790
4086
|
//#region ../api/src/clientErrorReporting.ts
|
|
3791
4087
|
const CLIENT_ERROR_REPORT_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({ reportClientError: {
|
|
3792
4088
|
path: "/client/error-report",
|
|
@@ -3822,6 +4118,7 @@ z.object({
|
|
|
3822
4118
|
sourceLocation: z.string().max(CLIENT_ERROR_REPORT_LIMITS.sourceLocation).nullable()
|
|
3823
4119
|
}).strict();
|
|
3824
4120
|
const API_ENDPOINTS$1 = {
|
|
4121
|
+
...SITE_LIFECYCLE_ENDPOINT_DEFINITIONS,
|
|
3825
4122
|
...CLIENT_ERROR_REPORT_ENDPOINT_DEFINITIONS,
|
|
3826
4123
|
...PUBLIC_NEWSLETTER_ENDPOINT_DEFINITIONS,
|
|
3827
4124
|
...ACCOUNT_ENDPOINT_DEFINITIONS,
|
|
@@ -3830,6 +4127,8 @@ const API_ENDPOINTS$1 = {
|
|
|
3830
4127
|
...GIFTING_ENDPOINT_DEFINITIONS,
|
|
3831
4128
|
...PUBLIC_READ_ENDPOINT_DEFINITIONS,
|
|
3832
4129
|
...BILLING_ENDPOINT_DEFINITIONS,
|
|
4130
|
+
...EDIT_LEASE_ENDPOINT_DEFINITIONS,
|
|
4131
|
+
...PAGE_SURFACE_EDITOR_ENDPOINT_DEFINITIONS,
|
|
3833
4132
|
...SITE_MANAGEMENT_ENDPOINT_DEFINITIONS,
|
|
3834
4133
|
aiContentUpdateChat: {
|
|
3835
4134
|
path: "/ai/content-update-chat",
|
|
@@ -3851,6 +4150,7 @@ const API_ENDPOINTS$1 = {
|
|
|
3851
4150
|
responseKind: "json"
|
|
3852
4151
|
},
|
|
3853
4152
|
aiDesignerPageOpsApply: {
|
|
4153
|
+
editLease: "managed",
|
|
3854
4154
|
path: "/sites/{siteId}/ai/designer/page/apply",
|
|
3855
4155
|
method: "POST",
|
|
3856
4156
|
tags: [TAG_TEMPLATES.siteCollection],
|
|
@@ -4357,13 +4657,6 @@ const API_ENDPOINTS$1 = {
|
|
|
4357
4657
|
auth: "user",
|
|
4358
4658
|
responseKind: "json"
|
|
4359
4659
|
},
|
|
4360
|
-
createSiteManual: {
|
|
4361
|
-
path: "/sites/manual",
|
|
4362
|
-
method: "POST",
|
|
4363
|
-
tags: ["site"],
|
|
4364
|
-
auth: "user",
|
|
4365
|
-
responseKind: "json"
|
|
4366
|
-
},
|
|
4367
4660
|
listSiteMembers: {
|
|
4368
4661
|
path: "/sites/{siteId}/members",
|
|
4369
4662
|
method: "GET",
|
|
@@ -4692,6 +4985,7 @@ const API_ENDPOINTS$1 = {
|
|
|
4692
4985
|
responseKind: "json"
|
|
4693
4986
|
},
|
|
4694
4987
|
restoreContentEntryVersion: {
|
|
4988
|
+
editLease: "managed",
|
|
4695
4989
|
path: "/sites/{siteId}/content/{type}/{entryId}/versions/{versionId}/restore",
|
|
4696
4990
|
method: "POST",
|
|
4697
4991
|
errors: [
|
|
@@ -4709,6 +5003,7 @@ const API_ENDPOINTS$1 = {
|
|
|
4709
5003
|
responseKind: "json"
|
|
4710
5004
|
},
|
|
4711
5005
|
updateContentEntryContent: {
|
|
5006
|
+
editLease: "managed",
|
|
4712
5007
|
path: "/sites/{siteId}/content/{type}/{entryId}/content",
|
|
4713
5008
|
method: "PUT",
|
|
4714
5009
|
tags: [
|
|
@@ -4725,67 +5020,6 @@ const API_ENDPOINTS$1 = {
|
|
|
4725
5020
|
],
|
|
4726
5021
|
responseKind: "json"
|
|
4727
5022
|
},
|
|
4728
|
-
updatePageSurfaceDraftContent: {
|
|
4729
|
-
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/content",
|
|
4730
|
-
method: "PUT",
|
|
4731
|
-
errors: [
|
|
4732
|
-
"validation:invalid_input",
|
|
4733
|
-
"resource:not_found",
|
|
4734
|
-
"resource:conflict",
|
|
4735
|
-
"server:internal_error"
|
|
4736
|
-
],
|
|
4737
|
-
tags: [TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById],
|
|
4738
|
-
auth: "user",
|
|
4739
|
-
responseKind: "json"
|
|
4740
|
-
},
|
|
4741
|
-
discardPageSurfaceDraftContent: {
|
|
4742
|
-
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/content/draft",
|
|
4743
|
-
method: "DELETE",
|
|
4744
|
-
errors: [
|
|
4745
|
-
"validation:invalid_input",
|
|
4746
|
-
"resource:not_found",
|
|
4747
|
-
"resource:conflict",
|
|
4748
|
-
"server:internal_error"
|
|
4749
|
-
],
|
|
4750
|
-
tags: [TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById],
|
|
4751
|
-
auth: "user",
|
|
4752
|
-
responseKind: "json"
|
|
4753
|
-
},
|
|
4754
|
-
updatePageSurfaceRouteMetadata: {
|
|
4755
|
-
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/metadata",
|
|
4756
|
-
method: "PATCH",
|
|
4757
|
-
errors: [
|
|
4758
|
-
"validation:invalid_input",
|
|
4759
|
-
"resource:not_found",
|
|
4760
|
-
"resource:conflict",
|
|
4761
|
-
"server:internal_error"
|
|
4762
|
-
],
|
|
4763
|
-
tags: [
|
|
4764
|
-
TAG_TEMPLATES.siteCollection,
|
|
4765
|
-
TAG_TEMPLATES.siteRoutableContent,
|
|
4766
|
-
TAG_TEMPLATES.pageSurfaceById
|
|
4767
|
-
],
|
|
4768
|
-
auth: "user",
|
|
4769
|
-
responseKind: "json"
|
|
4770
|
-
},
|
|
4771
|
-
publishPageSurface: {
|
|
4772
|
-
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/publication",
|
|
4773
|
-
method: "POST",
|
|
4774
|
-
errors: [
|
|
4775
|
-
"auth:forbidden",
|
|
4776
|
-
"validation:invalid_input",
|
|
4777
|
-
"resource:not_found",
|
|
4778
|
-
"resource:conflict",
|
|
4779
|
-
"server:internal_error"
|
|
4780
|
-
],
|
|
4781
|
-
tags: [
|
|
4782
|
-
TAG_TEMPLATES.siteCollection,
|
|
4783
|
-
TAG_TEMPLATES.siteRoutableContent,
|
|
4784
|
-
TAG_TEMPLATES.pageSurfaceById
|
|
4785
|
-
],
|
|
4786
|
-
auth: "user",
|
|
4787
|
-
responseKind: "json"
|
|
4788
|
-
},
|
|
4789
5023
|
runSdkWorkflow: {
|
|
4790
5024
|
path: "/sites/{siteId}/content/{type}/{entryId}/workflows/{workflowId}/run",
|
|
4791
5025
|
method: "POST",
|
|
@@ -4822,6 +5056,7 @@ const API_ENDPOINTS$1 = {
|
|
|
4822
5056
|
responseKind: "json"
|
|
4823
5057
|
},
|
|
4824
5058
|
updateRouteMetadata: {
|
|
5059
|
+
editLease: "managed",
|
|
4825
5060
|
path: "/sites/{siteId}/routes/{routeId}/metadata",
|
|
4826
5061
|
method: "PATCH",
|
|
4827
5062
|
tags: [
|
|
@@ -4839,6 +5074,7 @@ const API_ENDPOINTS$1 = {
|
|
|
4839
5074
|
responseKind: "json"
|
|
4840
5075
|
},
|
|
4841
5076
|
publishContentEntry: {
|
|
5077
|
+
editLease: "managed",
|
|
4842
5078
|
path: "/sites/{siteId}/content/{type}/{entryId}/publish",
|
|
4843
5079
|
method: "POST",
|
|
4844
5080
|
tags: [
|
|
@@ -4850,6 +5086,7 @@ const API_ENDPOINTS$1 = {
|
|
|
4850
5086
|
responseKind: "json"
|
|
4851
5087
|
},
|
|
4852
5088
|
scheduleContentEntry: {
|
|
5089
|
+
editLease: "managed",
|
|
4853
5090
|
path: "/sites/{siteId}/content/{type}/{entryId}/schedule",
|
|
4854
5091
|
method: "POST",
|
|
4855
5092
|
tags: [
|
|
@@ -4867,6 +5104,7 @@ const API_ENDPOINTS$1 = {
|
|
|
4867
5104
|
responseKind: "json"
|
|
4868
5105
|
},
|
|
4869
5106
|
cancelScheduledContentEntry: {
|
|
5107
|
+
editLease: "managed",
|
|
4870
5108
|
path: "/sites/{siteId}/content/{type}/{entryId}/schedule",
|
|
4871
5109
|
method: "DELETE",
|
|
4872
5110
|
tags: [
|
|
@@ -4884,6 +5122,7 @@ const API_ENDPOINTS$1 = {
|
|
|
4884
5122
|
responseKind: "json"
|
|
4885
5123
|
},
|
|
4886
5124
|
discardContentEntry: {
|
|
5125
|
+
editLease: "managed",
|
|
4887
5126
|
path: "/sites/{siteId}/content/{type}/{entryId}/discard",
|
|
4888
5127
|
method: "POST",
|
|
4889
5128
|
tags: [
|
|
@@ -4902,6 +5141,7 @@ const API_ENDPOINTS$1 = {
|
|
|
4902
5141
|
responseKind: "json"
|
|
4903
5142
|
},
|
|
4904
5143
|
unpublishContentEntry: {
|
|
5144
|
+
editLease: "managed",
|
|
4905
5145
|
path: "/sites/{siteId}/content/{type}/{entryId}/unpublish",
|
|
4906
5146
|
method: "POST",
|
|
4907
5147
|
tags: [
|
|
@@ -4943,6 +5183,7 @@ const API_ENDPOINTS$1 = {
|
|
|
4943
5183
|
responseKind: "json"
|
|
4944
5184
|
},
|
|
4945
5185
|
deleteContentEntry: {
|
|
5186
|
+
editLease: "managed",
|
|
4946
5187
|
path: "/sites/{siteId}/content/{type}/{entryId}",
|
|
4947
5188
|
method: "DELETE",
|
|
4948
5189
|
tags: [
|
|
@@ -6152,6 +6393,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6152
6393
|
responseKind: "json"
|
|
6153
6394
|
},
|
|
6154
6395
|
saveBlockContent: {
|
|
6396
|
+
editLease: "owner-derived",
|
|
6155
6397
|
path: "/blocks/{blockId}/content",
|
|
6156
6398
|
method: "POST",
|
|
6157
6399
|
tags: [
|
|
@@ -6189,6 +6431,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6189
6431
|
errors: ["resource:not_found", "resource:conflict"]
|
|
6190
6432
|
},
|
|
6191
6433
|
createEntrySlotBlock: {
|
|
6434
|
+
editLease: "managed",
|
|
6192
6435
|
path: "/sites/{siteId}/content/{type}/{entryId}/slots/{slotKey}/blocks",
|
|
6193
6436
|
method: "POST",
|
|
6194
6437
|
tags: [
|
|
@@ -6206,6 +6449,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6206
6449
|
]
|
|
6207
6450
|
},
|
|
6208
6451
|
reorderEntrySlotBlocks: {
|
|
6452
|
+
editLease: "managed",
|
|
6209
6453
|
path: "/sites/{siteId}/content/{type}/{entryId}/slots/{slotKey}/blocks/reorder",
|
|
6210
6454
|
method: "POST",
|
|
6211
6455
|
tags: [
|
|
@@ -6223,6 +6467,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6223
6467
|
]
|
|
6224
6468
|
},
|
|
6225
6469
|
deleteEntrySlotBlock: {
|
|
6470
|
+
editLease: "managed",
|
|
6226
6471
|
path: "/sites/{siteId}/content/{type}/{entryId}/slots/{slotKey}/blocks/{blockId}",
|
|
6227
6472
|
method: "DELETE",
|
|
6228
6473
|
tags: [
|
|
@@ -6253,6 +6498,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6253
6498
|
]
|
|
6254
6499
|
},
|
|
6255
6500
|
createPageSurfaceSlotBlock: {
|
|
6501
|
+
editLease: "managed",
|
|
6256
6502
|
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/slots/{slotKey}/blocks",
|
|
6257
6503
|
method: "POST",
|
|
6258
6504
|
tags: [
|
|
@@ -6271,6 +6517,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6271
6517
|
]
|
|
6272
6518
|
},
|
|
6273
6519
|
reorderPageSurfaceSlotBlocks: {
|
|
6520
|
+
editLease: "managed",
|
|
6274
6521
|
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/slots/{slotKey}/blocks/reorder",
|
|
6275
6522
|
method: "POST",
|
|
6276
6523
|
tags: [
|
|
@@ -6289,6 +6536,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6289
6536
|
]
|
|
6290
6537
|
},
|
|
6291
6538
|
deletePageSurfaceSlotBlock: {
|
|
6539
|
+
editLease: "managed",
|
|
6292
6540
|
path: "/sites/{siteId}/page-surfaces/{pageSurfaceId}/slots/{slotKey}/blocks/{blockId}",
|
|
6293
6541
|
method: "DELETE",
|
|
6294
6542
|
tags: [
|
|
@@ -6306,6 +6554,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6306
6554
|
]
|
|
6307
6555
|
},
|
|
6308
6556
|
createBlock: {
|
|
6557
|
+
editLease: "managed",
|
|
6309
6558
|
path: "/sites/{siteId}/pages/{pageId}/blocks",
|
|
6310
6559
|
method: "POST",
|
|
6311
6560
|
tags: [
|
|
@@ -6317,6 +6566,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6317
6566
|
responseKind: "json"
|
|
6318
6567
|
},
|
|
6319
6568
|
reorderBlocks: {
|
|
6569
|
+
editLease: "managed",
|
|
6320
6570
|
path: "/sites/{siteId}/pages/{pageId}/blocks/reorder",
|
|
6321
6571
|
method: "POST",
|
|
6322
6572
|
tags: [
|
|
@@ -6328,6 +6578,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6328
6578
|
responseKind: "json"
|
|
6329
6579
|
},
|
|
6330
6580
|
deleteBlock: {
|
|
6581
|
+
editLease: "managed",
|
|
6331
6582
|
path: "/sites/{siteId}/pages/{pageId}/blocks/{blockId}",
|
|
6332
6583
|
method: "DELETE",
|
|
6333
6584
|
tags: [
|
|
@@ -6373,6 +6624,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6373
6624
|
responseKind: "json"
|
|
6374
6625
|
},
|
|
6375
6626
|
publishPageDraft: {
|
|
6627
|
+
editLease: "managed",
|
|
6376
6628
|
path: "/sites/{siteId}/pages/{pageId}/publish",
|
|
6377
6629
|
method: "POST",
|
|
6378
6630
|
tags: [TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById],
|
|
@@ -6380,6 +6632,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6380
6632
|
responseKind: "json"
|
|
6381
6633
|
},
|
|
6382
6634
|
discardPageDraft: {
|
|
6635
|
+
editLease: "managed",
|
|
6383
6636
|
path: "/sites/{siteId}/pages/{pageId}/discard",
|
|
6384
6637
|
method: "POST",
|
|
6385
6638
|
tags: [TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById],
|
|
@@ -6395,6 +6648,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6395
6648
|
errors: ["resource:not_found", "server:internal_error"]
|
|
6396
6649
|
},
|
|
6397
6650
|
savePageDesignState: {
|
|
6651
|
+
editLease: "managed",
|
|
6398
6652
|
path: "/sites/{siteId}/pages/{pageId}/design-state",
|
|
6399
6653
|
method: "POST",
|
|
6400
6654
|
tags: [TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById],
|
|
@@ -6424,6 +6678,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6424
6678
|
responseKind: "json"
|
|
6425
6679
|
},
|
|
6426
6680
|
restorePageVersion: {
|
|
6681
|
+
editLease: "managed",
|
|
6427
6682
|
path: "/sites/{siteId}/pages/{pageId}/versions/{versionId}/restore",
|
|
6428
6683
|
method: "POST",
|
|
6429
6684
|
errors: [
|
|
@@ -6437,6 +6692,7 @@ const API_ENDPOINTS$1 = {
|
|
|
6437
6692
|
responseKind: "json"
|
|
6438
6693
|
},
|
|
6439
6694
|
applyPageDesignEditorAction: {
|
|
6695
|
+
editLease: "managed",
|
|
6440
6696
|
path: "/sites/{siteId}/pages/{pageId}/design/actions",
|
|
6441
6697
|
method: "POST",
|
|
6442
6698
|
tags: [TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById],
|
|
@@ -7869,21 +8125,7 @@ const API_ENDPOINTS$1 = {
|
|
|
7869
8125
|
responseKind: "json",
|
|
7870
8126
|
errors: []
|
|
7871
8127
|
},
|
|
7872
|
-
|
|
7873
|
-
path: "/sites/{siteId}/bookings/customers",
|
|
7874
|
-
method: "GET",
|
|
7875
|
-
tags: ["site-{siteId}", "customers-{siteId}"],
|
|
7876
|
-
auth: "user",
|
|
7877
|
-
responseKind: "json"
|
|
7878
|
-
},
|
|
7879
|
-
exportBookingCustomersCsv: {
|
|
7880
|
-
path: "/sites/{siteId}/bookings/customers/export.csv",
|
|
7881
|
-
method: "GET",
|
|
7882
|
-
tags: ["site-{siteId}", "customers-{siteId}"],
|
|
7883
|
-
auth: "user",
|
|
7884
|
-
errors: [],
|
|
7885
|
-
responseKind: "blob"
|
|
7886
|
-
},
|
|
8128
|
+
...BOOKING_PEOPLE_ENDPOINT_DEFINITIONS,
|
|
7887
8129
|
createBookingCustomer: {
|
|
7888
8130
|
path: "/sites/{siteId}/bookings/customers",
|
|
7889
8131
|
method: "POST",
|
|
@@ -7974,13 +8216,6 @@ const API_ENDPOINTS$1 = {
|
|
|
7974
8216
|
"server:internal_error"
|
|
7975
8217
|
]
|
|
7976
8218
|
},
|
|
7977
|
-
listCustomerAttendances: {
|
|
7978
|
-
path: "/sites/{siteId}/bookings/customers/{customerId}/attendances",
|
|
7979
|
-
method: "GET",
|
|
7980
|
-
tags: ["site-{siteId}", "customers-{siteId}"],
|
|
7981
|
-
auth: "user",
|
|
7982
|
-
responseKind: "json"
|
|
7983
|
-
},
|
|
7984
8219
|
createPersonRecordEntry: {
|
|
7985
8220
|
path: "/sites/{siteId}/bookings/person-records/entries",
|
|
7986
8221
|
method: "POST",
|
|
@@ -9314,6 +9549,8 @@ const API_ERROR_CODE_SET = /* @__PURE__ */ new Set([
|
|
|
9314
9549
|
"auth:sudo_required",
|
|
9315
9550
|
"auth:insufficient_permissions",
|
|
9316
9551
|
"auth:impersonation_restricted",
|
|
9552
|
+
"auth:lease_required",
|
|
9553
|
+
"auth:lease_lost",
|
|
9317
9554
|
"validation:invalid_input",
|
|
9318
9555
|
"validation:missing_field",
|
|
9319
9556
|
"validation:invalid_format",
|
|
@@ -9865,7 +10102,7 @@ var SimpleCache = class {
|
|
|
9865
10102
|
* 1. This constant
|
|
9866
10103
|
* 2. The "version" field in package.json
|
|
9867
10104
|
*/
|
|
9868
|
-
const SDK_VERSION = "0.
|
|
10105
|
+
const SDK_VERSION = "0.148.0";
|
|
9869
10106
|
//#endregion
|
|
9870
10107
|
//#region src/client/error.ts
|
|
9871
10108
|
let _Symbol$for;
|
|
@@ -11068,13 +11305,16 @@ const SURFACE_FOREGROUND_CSS_VARS = {
|
|
|
11068
11305
|
text: "--rb-surface-text-color",
|
|
11069
11306
|
heading: "--rb-surface-heading-color",
|
|
11070
11307
|
link: "--rb-surface-link-color",
|
|
11308
|
+
linkHover: "--rb-surface-link-hover-color",
|
|
11071
11309
|
supporting: "--rb-surface-supporting-color"
|
|
11072
11310
|
};
|
|
11073
11311
|
const DEFAULT_SURFACE_TEXT_COLOR = "rgb(var(--tb-text, 17 24 39))";
|
|
11312
|
+
const DEFAULT_SURFACE_LINK_COLOR = "rgb(var(--tb-primary, var(--tb-text, 17 24 39)))";
|
|
11074
11313
|
const DEFAULT_ROLE_FALLBACKS = {
|
|
11075
11314
|
text: DEFAULT_SURFACE_TEXT_COLOR,
|
|
11076
11315
|
heading: DEFAULT_SURFACE_TEXT_COLOR,
|
|
11077
|
-
link:
|
|
11316
|
+
link: DEFAULT_SURFACE_LINK_COLOR,
|
|
11317
|
+
linkHover: DEFAULT_SURFACE_LINK_COLOR,
|
|
11078
11318
|
supporting: "rgb(var(--tb-mutedText, 100 116 139))"
|
|
11079
11319
|
};
|
|
11080
11320
|
function requireSurfaceColorValue(role, value) {
|
|
@@ -11084,10 +11324,12 @@ function requireSurfaceColorValue(role, value) {
|
|
|
11084
11324
|
}
|
|
11085
11325
|
function completeSurfaceForegrounds(input) {
|
|
11086
11326
|
const text = requireSurfaceColorValue("text", input.text);
|
|
11327
|
+
const link = input.link === void 0 ? text : requireSurfaceColorValue("link", input.link);
|
|
11087
11328
|
return {
|
|
11088
11329
|
text,
|
|
11089
11330
|
heading: input.heading === void 0 ? text : requireSurfaceColorValue("heading", input.heading),
|
|
11090
|
-
link
|
|
11331
|
+
link,
|
|
11332
|
+
linkHover: input.linkHover === void 0 ? link : requireSurfaceColorValue("linkHover", input.linkHover),
|
|
11091
11333
|
supporting: input.supporting === void 0 ? text : requireSurfaceColorValue("supporting", input.supporting)
|
|
11092
11334
|
};
|
|
11093
11335
|
}
|
|
@@ -11095,6 +11337,7 @@ function surfaceForegroundValue(role, outsideProviderFallback = DEFAULT_ROLE_FAL
|
|
|
11095
11337
|
const roleVariable = SURFACE_FOREGROUND_CSS_VARS[role];
|
|
11096
11338
|
const fallback = requireSurfaceColorValue("fallback", outsideProviderFallback);
|
|
11097
11339
|
if (role === "text") return `var(${roleVariable}, ${fallback})`;
|
|
11340
|
+
if (role === "linkHover") return `var(${roleVariable}, ${surfaceForegroundValue("link", fallback)})`;
|
|
11098
11341
|
return `var(${roleVariable}, var(${SURFACE_FOREGROUND_CSS_VARS.text}, ${fallback}))`;
|
|
11099
11342
|
}
|
|
11100
11343
|
function surfaceForegroundValueWithOpacity(role, opacityPercent) {
|
|
@@ -11108,9 +11351,25 @@ function surfaceForegroundStyle(input) {
|
|
|
11108
11351
|
[SURFACE_FOREGROUND_CSS_VARS.text]: foregrounds.text,
|
|
11109
11352
|
[SURFACE_FOREGROUND_CSS_VARS.heading]: foregrounds.heading,
|
|
11110
11353
|
[SURFACE_FOREGROUND_CSS_VARS.link]: foregrounds.link,
|
|
11111
|
-
[SURFACE_FOREGROUND_CSS_VARS.
|
|
11354
|
+
[SURFACE_FOREGROUND_CSS_VARS.linkHover]: foregrounds.linkHover,
|
|
11355
|
+
[SURFACE_FOREGROUND_CSS_VARS.supporting]: foregrounds.supporting,
|
|
11356
|
+
"--rb-surface-link-hover-decoration": hoverDecoration(input)
|
|
11357
|
+
};
|
|
11358
|
+
}
|
|
11359
|
+
function surfaceForegroundInputFromResolved(foreground, color) {
|
|
11360
|
+
const { roles } = foreground;
|
|
11361
|
+
return {
|
|
11362
|
+
text: color(roles.text),
|
|
11363
|
+
heading: color(roles.heading),
|
|
11364
|
+
link: color(roles.link),
|
|
11365
|
+
linkHover: color(roles.linkHover),
|
|
11366
|
+
supporting: color(roles.supporting),
|
|
11367
|
+
hoverDecoration: foreground.hoverDecoration
|
|
11112
11368
|
};
|
|
11113
11369
|
}
|
|
11370
|
+
function hoverDecoration(input) {
|
|
11371
|
+
return input.hoverDecoration ?? "underline";
|
|
11372
|
+
}
|
|
11114
11373
|
//#endregion
|
|
11115
11374
|
//#region ../theme-core/src/buttons/constants.ts
|
|
11116
11375
|
/**
|
|
@@ -11967,6 +12226,64 @@ function parseAlpha(source) {
|
|
|
11967
12226
|
function isRgbChannel(value) {
|
|
11968
12227
|
return Number.isFinite(value) && value >= 0 && value <= 255;
|
|
11969
12228
|
}
|
|
12229
|
+
/**
|
|
12230
|
+
* Derive the hover foreground that belongs with a resolved resting foreground.
|
|
12231
|
+
*
|
|
12232
|
+
* A resting foreground is chosen to be legible against a known surface. A hover
|
|
12233
|
+
* state derived from it stays within a bounded distance of that colour, so it
|
|
12234
|
+
* inherits most of the resting colour's contrast margin instead of asserting
|
|
12235
|
+
* an unrelated brand colour that no one checked against the surface.
|
|
12236
|
+
*
|
|
12237
|
+
* That bounded-distance property is what lets this be used on a transparent
|
|
12238
|
+
* overlay header, where the backdrop is only partly knowable: the scrolled
|
|
12239
|
+
* state composites a 60% glass tint over arbitrary page content, so no
|
|
12240
|
+
* compile-time contrast proof is available there. Staying near a colour that
|
|
12241
|
+
* is already trusted in both states is a weaker claim than a contrast proof,
|
|
12242
|
+
* and it is one this function can actually keep.
|
|
12243
|
+
*
|
|
12244
|
+
* Returns `null` when the resting token is not a plain palette token — an
|
|
12245
|
+
* already-faded or raw value has no well-defined softening, and the caller
|
|
12246
|
+
* should leave hover alone rather than guess.
|
|
12247
|
+
*/
|
|
12248
|
+
function deriveForegroundHoverToken(restingToken) {
|
|
12249
|
+
const parts = parseColorTokenParts(restingToken);
|
|
12250
|
+
if (parts.kind !== "token") return null;
|
|
12251
|
+
if (parts.opacityPercent !== null) return null;
|
|
12252
|
+
return parseThemeColorToken(`${parts.token}/85`);
|
|
12253
|
+
}
|
|
12254
|
+
/**
|
|
12255
|
+
* Prefer an authored hover that survives every measured backdrop, then a
|
|
12256
|
+
* checked softening of the resting colour. A null backdrop set represents a
|
|
12257
|
+
* trusted treatment: only an explicit authored hover may change the colour.
|
|
12258
|
+
* When neither option works, retain the resting colour and underline it.
|
|
12259
|
+
*/
|
|
12260
|
+
function planForegroundHover(input) {
|
|
12261
|
+
const { restingToken, candidate, palette, backdrops } = input;
|
|
12262
|
+
if (candidate && candidate !== restingToken) {
|
|
12263
|
+
if (backdrops === null || survivesEveryBackdrop(candidate, palette, backdrops)) return {
|
|
12264
|
+
kind: "candidate",
|
|
12265
|
+
token: candidate,
|
|
12266
|
+
decoration: "initial"
|
|
12267
|
+
};
|
|
12268
|
+
}
|
|
12269
|
+
const softened = deriveForegroundHoverToken(restingToken);
|
|
12270
|
+
if (softened && backdrops && survivesEveryBackdrop(softened, palette, backdrops)) return {
|
|
12271
|
+
kind: "softened",
|
|
12272
|
+
token: softened,
|
|
12273
|
+
decoration: "initial"
|
|
12274
|
+
};
|
|
12275
|
+
return {
|
|
12276
|
+
kind: "resting",
|
|
12277
|
+
token: restingToken,
|
|
12278
|
+
decoration: "underline"
|
|
12279
|
+
};
|
|
12280
|
+
}
|
|
12281
|
+
function survivesEveryBackdrop(token, palette, backdrops) {
|
|
12282
|
+
return backdrops.length > 0 && backdrops.every((backdrop) => {
|
|
12283
|
+
const foreground = resolveOpaqueSurfaceHex(token, palette, backdrop);
|
|
12284
|
+
return foreground !== null && contrastRatio(foreground, backdrop) >= 4.5;
|
|
12285
|
+
});
|
|
12286
|
+
}
|
|
11970
12287
|
//#endregion
|
|
11971
12288
|
//#region ../theme-core/src/surfaces/resolveSurfaceForeground.ts
|
|
11972
12289
|
const FALLBACK_TEXT_TOKENS = [
|
|
@@ -12013,12 +12330,16 @@ function resolveSurfaceForeground(background, palette, candidates = {}, options
|
|
|
12013
12330
|
}
|
|
12014
12331
|
function foregroundCandidates(background, overrides) {
|
|
12015
12332
|
return {
|
|
12016
|
-
text: overrides.text
|
|
12017
|
-
heading: overrides.heading
|
|
12018
|
-
link: overrides.link
|
|
12019
|
-
|
|
12333
|
+
text: candidateOrBackground(overrides.text, background?.textColor),
|
|
12334
|
+
heading: candidateOrBackground(overrides.heading, background?.headingColor),
|
|
12335
|
+
link: candidateOrBackground(overrides.link, background?.linkColor),
|
|
12336
|
+
linkHover: candidateOrBackground(overrides.linkHover),
|
|
12337
|
+
supporting: candidateOrBackground(overrides.supporting, background?.supportingColor)
|
|
12020
12338
|
};
|
|
12021
12339
|
}
|
|
12340
|
+
function candidateOrBackground(candidate, backgroundValue) {
|
|
12341
|
+
return candidate ?? backgroundValue ?? null;
|
|
12342
|
+
}
|
|
12022
12343
|
function resolveDeterministicForeground(backgroundReference, candidates, palette, compositeBase) {
|
|
12023
12344
|
const backgroundHex = resolveOpaqueSurfaceHex(backgroundReference, palette, compositeBase);
|
|
12024
12345
|
if (!backgroundHex) return resolveTrustedTreatmentForeground(candidates, palette);
|
|
@@ -12030,29 +12351,51 @@ function resolveDeterministicForeground(backgroundReference, candidates, palette
|
|
|
12030
12351
|
...FALLBACK_TEXT_TOKENS
|
|
12031
12352
|
], backgroundHex, palette, derivedOnToken ? [derivedOnToken] : []);
|
|
12032
12353
|
if (!text) return { kind: "unknown" };
|
|
12033
|
-
return {
|
|
12034
|
-
|
|
12035
|
-
|
|
12036
|
-
|
|
12037
|
-
|
|
12038
|
-
|
|
12039
|
-
|
|
12040
|
-
|
|
12041
|
-
};
|
|
12354
|
+
return knownForeground({
|
|
12355
|
+
text,
|
|
12356
|
+
heading: safeTokenOr(candidates.heading, text, backgroundHex, palette),
|
|
12357
|
+
link: safeTokenOr(candidates.link, text, backgroundHex, palette),
|
|
12358
|
+
supporting: safeTokenOr(candidates.supporting, text, backgroundHex, palette)
|
|
12359
|
+
}, {
|
|
12360
|
+
kind: "measured",
|
|
12361
|
+
backdropHex: backgroundHex
|
|
12362
|
+
}, candidates.linkHover, palette);
|
|
12042
12363
|
}
|
|
12043
12364
|
function resolveTrustedTreatmentForeground(candidates, palette) {
|
|
12044
12365
|
const text = canonicalToken(candidates.text, palette);
|
|
12045
12366
|
if (!text) return { kind: "unknown" };
|
|
12367
|
+
return knownForeground({
|
|
12368
|
+
text,
|
|
12369
|
+
heading: canonicalToken(candidates.heading, palette) ?? text,
|
|
12370
|
+
link: canonicalToken(candidates.link, palette) ?? text,
|
|
12371
|
+
supporting: canonicalToken(candidates.supporting, palette) ?? text
|
|
12372
|
+
}, { kind: "trusted-treatment" }, candidates.linkHover, palette);
|
|
12373
|
+
}
|
|
12374
|
+
function knownForeground(roles, provenance, hoverCandidate, palette) {
|
|
12375
|
+
const hover = planForegroundHover({
|
|
12376
|
+
restingToken: roles.link,
|
|
12377
|
+
candidate: canonicalHoverToken(hoverCandidate, palette),
|
|
12378
|
+
palette,
|
|
12379
|
+
backdrops: provenance.kind === "measured" ? [provenance.backdropHex] : null
|
|
12380
|
+
});
|
|
12046
12381
|
return {
|
|
12047
12382
|
kind: "known",
|
|
12383
|
+
provenance,
|
|
12048
12384
|
roles: {
|
|
12049
|
-
|
|
12050
|
-
|
|
12051
|
-
|
|
12052
|
-
|
|
12053
|
-
}
|
|
12385
|
+
...roles,
|
|
12386
|
+
linkHover: hover.token
|
|
12387
|
+
},
|
|
12388
|
+
hoverDecoration: hover.decoration
|
|
12054
12389
|
};
|
|
12055
12390
|
}
|
|
12391
|
+
function canonicalHoverToken(reference, palette) {
|
|
12392
|
+
const token = parseThemeColorToken(reference);
|
|
12393
|
+
if (token) {
|
|
12394
|
+
const parts = parseColorTokenParts(token);
|
|
12395
|
+
if (parts.kind === "token" && resolveConcreteColorHex(parts.token, palette)) return token;
|
|
12396
|
+
}
|
|
12397
|
+
return canonicalToken(reference, palette);
|
|
12398
|
+
}
|
|
12056
12399
|
function safeTokenOr(candidate, fallback, backgroundHex, palette) {
|
|
12057
12400
|
return firstSafeToken([candidate], backgroundHex, palette) ?? fallback;
|
|
12058
12401
|
}
|
|
@@ -14992,6 +15335,43 @@ const effectCompositionSchema = z.object({
|
|
|
14992
15335
|
/** Effects applied on focus */
|
|
14993
15336
|
focus: z.array(effectApplicationSchema).optional()
|
|
14994
15337
|
});
|
|
15338
|
+
const policiesById = {
|
|
15339
|
+
"darken-background": "other",
|
|
15340
|
+
"lighten-background": "other",
|
|
15341
|
+
"fade-background": "other",
|
|
15342
|
+
"opacity-reduce": "other",
|
|
15343
|
+
"animated-gradient": "other",
|
|
15344
|
+
"background-on-hover": "paired-hover",
|
|
15345
|
+
"background-on-hover-alpha": "paired-hover",
|
|
15346
|
+
"border-glow": "other",
|
|
15347
|
+
"drop-shadow": "other",
|
|
15348
|
+
"inner-shadow": "other",
|
|
15349
|
+
"neumorphic-shadow": "other",
|
|
15350
|
+
"outer-glow": "other",
|
|
15351
|
+
"retro-3d-shadow": "other",
|
|
15352
|
+
"scale-up": "other",
|
|
15353
|
+
"scale-down": "other",
|
|
15354
|
+
lift: "other",
|
|
15355
|
+
"press-down": "other",
|
|
15356
|
+
pop: "other",
|
|
15357
|
+
"aurora-glow": "other",
|
|
15358
|
+
"cosmic-stardust": "other",
|
|
15359
|
+
"gradient-border-fill": "other",
|
|
15360
|
+
"animated-gradient-border-fill": "other",
|
|
15361
|
+
"border-bottom-grow": "other",
|
|
15362
|
+
"gradient-text": "other",
|
|
15363
|
+
"text-color-change": "text-colour",
|
|
15364
|
+
"border-color-change": "other",
|
|
15365
|
+
"sketchy-border": "other",
|
|
15366
|
+
"pulse-animation": "other",
|
|
15367
|
+
"nav-underline": "underline",
|
|
15368
|
+
"nav-frosted-base": "other",
|
|
15369
|
+
"nav-frosted-hover": "other",
|
|
15370
|
+
"nav-frosted-active": "other"
|
|
15371
|
+
};
|
|
15372
|
+
function navEffectPolicy(effectId) {
|
|
15373
|
+
return policiesById[effectId] ?? null;
|
|
15374
|
+
}
|
|
14995
15375
|
//#endregion
|
|
14996
15376
|
//#region ../theme-core/src/navigation/types.ts
|
|
14997
15377
|
/**
|
|
@@ -15080,6 +15460,16 @@ const navLinkStyleSchema = z.object({
|
|
|
15080
15460
|
/** Composable effects */
|
|
15081
15461
|
effects: effectCompositionSchema.optional()
|
|
15082
15462
|
});
|
|
15463
|
+
function navLinkHoverColorCandidate(style) {
|
|
15464
|
+
const effect = style?.effects?.hover?.find((item) => navEffectPolicy(item.effectId) === "text-colour");
|
|
15465
|
+
return parseThemeColorToken(effect?.options?.hoverColorToken ?? style?.hoverColorToken);
|
|
15466
|
+
}
|
|
15467
|
+
function navLinkOwnsHoverForeground(style) {
|
|
15468
|
+
return style?.effects?.hover?.some((effect) => navEffectPolicy(effect.effectId) === "paired-hover") ?? false;
|
|
15469
|
+
}
|
|
15470
|
+
function navLinkOwnsUnderline(style) {
|
|
15471
|
+
return style?.effects?.hover?.some((effect) => navEffectPolicy(effect.effectId) === "underline") ?? false;
|
|
15472
|
+
}
|
|
15083
15473
|
//#endregion
|
|
15084
15474
|
//#region ../theme-core/src/customCss/validation.ts
|
|
15085
15475
|
/**
|
|
@@ -25527,6 +25917,14 @@ const blockDesignFallback = {
|
|
|
25527
25917
|
};
|
|
25528
25918
|
blockDesignFallback.sectionSurface, blockDesignFallback.contentFrame, blockDesignFallback.sectionHeight, blockDesignFallback.heroLegibility, blockDesignFallback.imageSurfaceTreatment, blockDesignFallback.imageSurfaceMotion, blockDesignFallback.tileTreatment, blockDesignFallback.eventListTreatment, blockDesignFallback.eyebrowTreatment, blockDesignFallback.accordionIconTreatment, blockDesignFallback.composition;
|
|
25529
25919
|
//#endregion
|
|
25920
|
+
//#region ../theme-core/src/header/rootPaint.ts
|
|
25921
|
+
/** The nav container takes precedence when a floating header also has one. */
|
|
25922
|
+
function headerRootPaint(header) {
|
|
25923
|
+
const navContainerType = header?.navContainer?.type ?? "none";
|
|
25924
|
+
if (navContainerType === "glass" || navContainerType === "pill") return "contained-nav";
|
|
25925
|
+
return header?.variant === "floating" ? "overlay" : "own-surface";
|
|
25926
|
+
}
|
|
25927
|
+
//#endregion
|
|
25530
25928
|
//#region ../theme-core/src/site-styles/siteChromeBackgrounds.ts
|
|
25531
25929
|
const siteChromeBackgroundColorTokens = toSiteChromeBackgroundColorTokens(backgroundAppearanceColorTokenNames);
|
|
25532
25930
|
const quickSiteChromeBackgroundColorTokens = toSiteChromeBackgroundColorTokens(backgroundAppearanceQuickColorTokenNames);
|
|
@@ -25706,6 +26104,259 @@ z.object(headerPreferencesShape).omit({
|
|
|
25706
26104
|
structure: true
|
|
25707
26105
|
}).strict();
|
|
25708
26106
|
//#endregion
|
|
26107
|
+
//#region ../theme-core/src/navigation/presets.ts
|
|
26108
|
+
/**
|
|
26109
|
+
* Built-in nav link style presets
|
|
26110
|
+
*
|
|
26111
|
+
* Each preset uses composable effects to achieve its look.
|
|
26112
|
+
*/
|
|
26113
|
+
const NAV_LINK_PRESETS = {
|
|
26114
|
+
/**
|
|
26115
|
+
* Minimal - subtle color change on hover
|
|
26116
|
+
*/
|
|
26117
|
+
minimal: {
|
|
26118
|
+
name: "Minimal",
|
|
26119
|
+
typography: "body",
|
|
26120
|
+
fontWeight: "medium",
|
|
26121
|
+
textTransform: "none",
|
|
26122
|
+
italic: false,
|
|
26123
|
+
colorToken: "text",
|
|
26124
|
+
hoverColorToken: "primary",
|
|
26125
|
+
padding: "none",
|
|
26126
|
+
borderRadius: "none",
|
|
26127
|
+
effects: { hover: [{
|
|
26128
|
+
effectId: "text-color-change",
|
|
26129
|
+
options: { hoverColorToken: "primary" }
|
|
26130
|
+
}] }
|
|
26131
|
+
},
|
|
26132
|
+
/**
|
|
26133
|
+
* Underline - static underline appears on hover
|
|
26134
|
+
*/
|
|
26135
|
+
underline: {
|
|
26136
|
+
name: "Underline",
|
|
26137
|
+
typography: "body",
|
|
26138
|
+
fontWeight: "medium",
|
|
26139
|
+
textTransform: "none",
|
|
26140
|
+
italic: false,
|
|
26141
|
+
colorToken: "text",
|
|
26142
|
+
padding: "none",
|
|
26143
|
+
borderRadius: "none",
|
|
26144
|
+
effects: { hover: [{
|
|
26145
|
+
effectId: "nav-underline",
|
|
26146
|
+
options: { style: "static" }
|
|
26147
|
+
}] }
|
|
26148
|
+
},
|
|
26149
|
+
/**
|
|
26150
|
+
* Underline Grow - animated underline grows from center on hover
|
|
26151
|
+
*/
|
|
26152
|
+
"underline-grow": {
|
|
26153
|
+
name: "Underline Grow",
|
|
26154
|
+
typography: "body",
|
|
26155
|
+
fontWeight: "medium",
|
|
26156
|
+
textTransform: "none",
|
|
26157
|
+
italic: false,
|
|
26158
|
+
colorToken: "text",
|
|
26159
|
+
padding: "none",
|
|
26160
|
+
borderRadius: "none",
|
|
26161
|
+
effects: { hover: [{
|
|
26162
|
+
effectId: "nav-underline",
|
|
26163
|
+
options: { style: "grow" }
|
|
26164
|
+
}] }
|
|
26165
|
+
},
|
|
26166
|
+
/**
|
|
26167
|
+
* Capsule - pill-shaped background on hover
|
|
26168
|
+
*/
|
|
26169
|
+
capsule: {
|
|
26170
|
+
name: "Capsule",
|
|
26171
|
+
typography: "body",
|
|
26172
|
+
fontWeight: "medium",
|
|
26173
|
+
textTransform: "none",
|
|
26174
|
+
italic: false,
|
|
26175
|
+
colorToken: "text",
|
|
26176
|
+
padding: "compact",
|
|
26177
|
+
borderRadius: "full",
|
|
26178
|
+
effects: {
|
|
26179
|
+
hover: [{
|
|
26180
|
+
effectId: "background-on-hover-alpha",
|
|
26181
|
+
options: {
|
|
26182
|
+
colorToken: "primary",
|
|
26183
|
+
opacity: 10
|
|
26184
|
+
}
|
|
26185
|
+
}],
|
|
26186
|
+
active: [{
|
|
26187
|
+
effectId: "background-on-hover-alpha",
|
|
26188
|
+
options: {
|
|
26189
|
+
colorToken: "primary",
|
|
26190
|
+
opacity: 15
|
|
26191
|
+
}
|
|
26192
|
+
}]
|
|
26193
|
+
}
|
|
26194
|
+
},
|
|
26195
|
+
/**
|
|
26196
|
+
* Solid - solid background color on hover
|
|
26197
|
+
*/
|
|
26198
|
+
solid: {
|
|
26199
|
+
name: "Solid",
|
|
26200
|
+
typography: "body",
|
|
26201
|
+
fontWeight: "medium",
|
|
26202
|
+
textTransform: "none",
|
|
26203
|
+
italic: false,
|
|
26204
|
+
colorToken: "text",
|
|
26205
|
+
padding: "compact",
|
|
26206
|
+
borderRadius: "none",
|
|
26207
|
+
effects: {
|
|
26208
|
+
hover: [{
|
|
26209
|
+
effectId: "background-on-hover",
|
|
26210
|
+
options: {
|
|
26211
|
+
colorToken: "primary",
|
|
26212
|
+
textColorToken: "primaryForeground"
|
|
26213
|
+
}
|
|
26214
|
+
}],
|
|
26215
|
+
active: [{
|
|
26216
|
+
effectId: "background-on-hover",
|
|
26217
|
+
options: {
|
|
26218
|
+
colorToken: "primary",
|
|
26219
|
+
textColorToken: "primaryForeground"
|
|
26220
|
+
}
|
|
26221
|
+
}]
|
|
26222
|
+
}
|
|
26223
|
+
},
|
|
26224
|
+
/**
|
|
26225
|
+
* Scale - gentle scale-up on hover
|
|
26226
|
+
*/
|
|
26227
|
+
scale: {
|
|
26228
|
+
name: "Scale",
|
|
26229
|
+
typography: "body",
|
|
26230
|
+
fontWeight: "medium",
|
|
26231
|
+
textTransform: "none",
|
|
26232
|
+
italic: false,
|
|
26233
|
+
colorToken: "text",
|
|
26234
|
+
padding: "none",
|
|
26235
|
+
borderRadius: "none",
|
|
26236
|
+
effects: { hover: [{
|
|
26237
|
+
effectId: "scale-up",
|
|
26238
|
+
options: { scale: 1.05 }
|
|
26239
|
+
}] }
|
|
26240
|
+
},
|
|
26241
|
+
/**
|
|
26242
|
+
* Frosted - semi-transparent glass-like background
|
|
26243
|
+
*/
|
|
26244
|
+
frosted: {
|
|
26245
|
+
name: "Frosted",
|
|
26246
|
+
typography: "body",
|
|
26247
|
+
fontWeight: "medium",
|
|
26248
|
+
textTransform: "none",
|
|
26249
|
+
italic: false,
|
|
26250
|
+
colorToken: "text",
|
|
26251
|
+
padding: "compact",
|
|
26252
|
+
borderRadius: "md",
|
|
26253
|
+
effects: {
|
|
26254
|
+
base: [{ effectId: "nav-frosted-base" }],
|
|
26255
|
+
hover: [{ effectId: "nav-frosted-hover" }],
|
|
26256
|
+
active: [{ effectId: "nav-frosted-active" }]
|
|
26257
|
+
}
|
|
26258
|
+
}
|
|
26259
|
+
};
|
|
26260
|
+
/**
|
|
26261
|
+
* Get a nav link style preset by ID
|
|
26262
|
+
*/
|
|
26263
|
+
function getNavLinkPreset(presetId) {
|
|
26264
|
+
return NAV_LINK_PRESETS[presetId];
|
|
26265
|
+
}
|
|
26266
|
+
Object.keys(NAV_LINK_PRESETS);
|
|
26267
|
+
//#endregion
|
|
26268
|
+
//#region ../theme-core/src/header/legacyNavLinkStyle.ts
|
|
26269
|
+
function buildLegacyHeaderNavLinkStyle(header, contrastTreatment, navTextSize) {
|
|
26270
|
+
const navStyle = header.navStyle ?? "minimal";
|
|
26271
|
+
const basePreset = getNavLinkPreset(navStyle);
|
|
26272
|
+
if (!basePreset) return null;
|
|
26273
|
+
const style = {
|
|
26274
|
+
...basePreset,
|
|
26275
|
+
fontWeight: header.navWeight ?? basePreset.fontWeight,
|
|
26276
|
+
colorToken: (header.navColor ?? header.textColor)?.trim() || basePreset.colorToken,
|
|
26277
|
+
...contrastTreatment ? { contrastTreatment } : {},
|
|
26278
|
+
...navTextSize ? { textSize: navTextSize } : {}
|
|
26279
|
+
};
|
|
26280
|
+
if (header.navWeight === "bold" && navStyle === "solid") style.textTransform = "uppercase";
|
|
26281
|
+
applyLegacyGlassTreatment(style, header, navStyle);
|
|
26282
|
+
return style;
|
|
26283
|
+
}
|
|
26284
|
+
function applyLegacyGlassTreatment(style, header, navStyle) {
|
|
26285
|
+
if (header.navContainer?.type !== "glass" || navStyle !== "minimal") return;
|
|
26286
|
+
style.borderRadius = "full";
|
|
26287
|
+
style.effects = {
|
|
26288
|
+
...style.effects,
|
|
26289
|
+
hover: glassStateEffects(10),
|
|
26290
|
+
active: glassStateEffects(18)
|
|
26291
|
+
};
|
|
26292
|
+
}
|
|
26293
|
+
function glassStateEffects(opacity) {
|
|
26294
|
+
return [{
|
|
26295
|
+
effectId: "background-on-hover-alpha",
|
|
26296
|
+
options: {
|
|
26297
|
+
colorToken: "neutral-50",
|
|
26298
|
+
opacity
|
|
26299
|
+
}
|
|
26300
|
+
}, {
|
|
26301
|
+
effectId: "text-color-change",
|
|
26302
|
+
options: { hoverColorToken: "neutral-50" }
|
|
26303
|
+
}];
|
|
26304
|
+
}
|
|
26305
|
+
//#endregion
|
|
26306
|
+
//#region ../theme-core/src/header/openingForegroundProjection.ts
|
|
26307
|
+
function readOpeningForegroundProjection(header) {
|
|
26308
|
+
return header?.__runtimeOpeningForeground ?? null;
|
|
26309
|
+
}
|
|
26310
|
+
//#endregion
|
|
26311
|
+
//#region ../theme-core/src/header/effectiveNavLinkStyle.ts
|
|
26312
|
+
function effectiveHeaderNavLinkStyle(header, contrastTreatment = null, navTextSize = null) {
|
|
26313
|
+
if (!header) return null;
|
|
26314
|
+
if (!header.navLinkStyle) return buildLegacyHeaderNavLinkStyle(header, contrastTreatment, navTextSize);
|
|
26315
|
+
return {
|
|
26316
|
+
...header.navLinkStyle,
|
|
26317
|
+
...contrastTreatment ? { contrastTreatment } : {},
|
|
26318
|
+
...navTextSize ? { textSize: navTextSize } : {}
|
|
26319
|
+
};
|
|
26320
|
+
}
|
|
26321
|
+
function headerForegroundCandidates(header) {
|
|
26322
|
+
if (!header) return {};
|
|
26323
|
+
const style = effectiveHeaderNavLinkStyle(header);
|
|
26324
|
+
return {
|
|
26325
|
+
text: header.textColor ?? header.background?.textColor,
|
|
26326
|
+
link: style?.colorToken ?? header.navColor ?? header.textColor,
|
|
26327
|
+
linkHover: navLinkHoverColorCandidate(style)
|
|
26328
|
+
};
|
|
26329
|
+
}
|
|
26330
|
+
function headerLeafTextColor(header) {
|
|
26331
|
+
if (!header) return "text";
|
|
26332
|
+
return header.textColor ?? header.navColor ?? header.background?.textColor ?? header.navLinkStyle?.colorToken ?? "text";
|
|
26333
|
+
}
|
|
26334
|
+
/** Transparent chrome must reset the whole contract on its own root. */
|
|
26335
|
+
function transparentHeaderForegroundInput(header, palette) {
|
|
26336
|
+
const projection = readOpeningForegroundProjection(header);
|
|
26337
|
+
if (projection?.kind === "known") return surfaceForegroundInputFromResolved(projection, rgbColorValue);
|
|
26338
|
+
return authoredTransparentHeaderForegroundInput(header, palette);
|
|
26339
|
+
}
|
|
26340
|
+
function authoredTransparentHeaderForegroundInput(header, palette) {
|
|
26341
|
+
const text = headerLeafTextColor(header);
|
|
26342
|
+
const style = effectiveHeaderNavLinkStyle(header);
|
|
26343
|
+
const link = style?.colorToken ?? text;
|
|
26344
|
+
const restingToken = parseThemeColorToken(link) ?? parseThemeColorToken("text");
|
|
26345
|
+
if (!restingToken) throw new Error("Built-in text colour token is invalid");
|
|
26346
|
+
const hover = planForegroundHover({
|
|
26347
|
+
restingToken,
|
|
26348
|
+
candidate: navLinkOwnsHoverForeground(style) ? null : navLinkHoverColorCandidate(style),
|
|
26349
|
+
palette,
|
|
26350
|
+
backdrops: null
|
|
26351
|
+
});
|
|
26352
|
+
return {
|
|
26353
|
+
text: rgbColorValue(text),
|
|
26354
|
+
link: rgbColorValue(link),
|
|
26355
|
+
linkHover: rgbColorValue(hover.token),
|
|
26356
|
+
hoverDecoration: navLinkOwnsUnderline(style) ? "initial" : hover.decoration
|
|
26357
|
+
};
|
|
26358
|
+
}
|
|
26359
|
+
//#endregion
|
|
25709
26360
|
//#region ../theme-core/src/site-styles/pageDesignAuthority.ts
|
|
25710
26361
|
const nonEmptyStringSchema = z.string().min(1);
|
|
25711
26362
|
const blockContentVersionIdSchema = nonEmptyStringSchema.transform(asBlockContentVersionId);
|
|
@@ -27697,6 +28348,28 @@ function createTransformRegistry(definitions) {
|
|
|
27697
28348
|
return registry;
|
|
27698
28349
|
}
|
|
27699
28350
|
//#endregion
|
|
28351
|
+
//#region ../theme-core/src/footer/effectiveNavLinkStyle.ts
|
|
28352
|
+
function effectiveFooterNavLinkStyle(footer) {
|
|
28353
|
+
if (!footer) return null;
|
|
28354
|
+
if (footer.navLinkStyle) return footer.navLinkStyle;
|
|
28355
|
+
const basePreset = getNavLinkPreset(footer.navStyle ?? "minimal");
|
|
28356
|
+
if (!basePreset) return null;
|
|
28357
|
+
return {
|
|
28358
|
+
...basePreset,
|
|
28359
|
+
fontWeight: footer.navWeight ?? basePreset.fontWeight,
|
|
28360
|
+
colorToken: footer.navColor?.trim() || basePreset.colorToken
|
|
28361
|
+
};
|
|
28362
|
+
}
|
|
28363
|
+
function footerForegroundCandidates(footer, proseHoverCandidate) {
|
|
28364
|
+
if (!footer) return {};
|
|
28365
|
+
const style = effectiveFooterNavLinkStyle(footer);
|
|
28366
|
+
return {
|
|
28367
|
+
text: footer.background?.textColor,
|
|
28368
|
+
link: style?.colorToken ?? footer.navColor ?? footer.background?.textColor,
|
|
28369
|
+
linkHover: navLinkOwnsHoverForeground(style) ? proseHoverCandidate : navLinkHoverColorCandidate(style)
|
|
28370
|
+
};
|
|
28371
|
+
}
|
|
28372
|
+
//#endregion
|
|
27700
28373
|
//#region ../blocks/src/system/fields/backgroundContent.ts
|
|
27701
28374
|
function parseBackgroundContent(value) {
|
|
27702
28375
|
const result = boxBackgroundSchema.safeParse(value);
|
|
@@ -27714,33 +28387,28 @@ function resolveBackgroundColorValue(value, context) {
|
|
|
27714
28387
|
//#endregion
|
|
27715
28388
|
//#region ../blocks/src/system/transforms/registry/_utils/surfaceForegroundStyles.ts
|
|
27716
28389
|
const contextualButtonStylesCache = /* @__PURE__ */ new WeakMap();
|
|
27717
|
-
function resolveHeaderLeafTextColor(header) {
|
|
27718
|
-
return header?.textColor ?? header?.navColor ?? header?.background?.textColor ?? header?.navLinkStyle?.colorToken ?? "text";
|
|
27719
|
-
}
|
|
27720
28390
|
function resolveHeaderRootForeground(header, palette, isTransparent) {
|
|
27721
|
-
if (isTransparent) return { kind: "unknown" };
|
|
28391
|
+
if (isTransparent) return readOpeningForegroundProjection(header) ?? { kind: "unknown" };
|
|
27722
28392
|
const background = header?.background;
|
|
27723
28393
|
return resolveSurfaceForeground(background ?? {
|
|
27724
28394
|
type: "color",
|
|
27725
28395
|
color: "surface"
|
|
27726
|
-
}, palette,
|
|
27727
|
-
|
|
27728
|
-
|
|
27729
|
-
|
|
28396
|
+
}, palette, headerForegroundCandidates(header));
|
|
28397
|
+
}
|
|
28398
|
+
function resolveFooterRootForeground(footer, palette, proseHoverCandidate) {
|
|
28399
|
+
return resolveSurfaceForeground(footer?.background ?? {
|
|
28400
|
+
type: "color",
|
|
28401
|
+
color: "surface"
|
|
28402
|
+
}, palette, footerForegroundCandidates(footer, proseHoverCandidate), { compositeBase: "background" });
|
|
27730
28403
|
}
|
|
27731
28404
|
function resolveSurfaceForegroundStyles(value, context, options) {
|
|
27732
28405
|
const input = parseBackgroundContent(value);
|
|
27733
|
-
const foreground = input ? resolveSurfaceForeground(input, context.theme.palette, {}, { compositeBase: options?.fallbackToken }) : { kind: "unknown" };
|
|
28406
|
+
const foreground = input ? resolveSurfaceForeground(input, context.theme.palette, { linkHover: context.proseHoverCandidate }, { compositeBase: options?.fallbackToken }) : { kind: "unknown" };
|
|
27734
28407
|
const buttonStyles = resolveContextualButtonStyles(input, foreground, context, options);
|
|
27735
28408
|
if (foreground.kind === "unknown") return buttonStyles;
|
|
27736
28409
|
return {
|
|
27737
28410
|
...buttonStyles,
|
|
27738
|
-
...surfaceForegroundStyle(
|
|
27739
|
-
text: resolveBackgroundColorValue(foreground.roles.text, context),
|
|
27740
|
-
heading: resolveBackgroundColorValue(foreground.roles.heading, context),
|
|
27741
|
-
link: resolveBackgroundColorValue(foreground.roles.link, context),
|
|
27742
|
-
supporting: resolveBackgroundColorValue(foreground.roles.supporting, context)
|
|
27743
|
-
})
|
|
28411
|
+
...surfaceForegroundStyle(surfaceForegroundInputFromResolved(foreground, (token) => resolveBackgroundColorValue(token, context)))
|
|
27744
28412
|
};
|
|
27745
28413
|
}
|
|
27746
28414
|
function resolveContextualButtonStyles(background, foreground, context, options) {
|
|
@@ -33589,10 +34257,7 @@ function resolveBackgroundVisualStyles(backgroundColor, defaultToken = "surface"
|
|
|
33589
34257
|
};
|
|
33590
34258
|
}
|
|
33591
34259
|
function resolveHeaderVisualStyles(header) {
|
|
33592
|
-
|
|
33593
|
-
const hasContainedNav = navContainerType === "glass" || navContainerType === "pill";
|
|
33594
|
-
const hasOverlayVariant = header?.variant === "floating";
|
|
33595
|
-
if (hasContainedNav || hasOverlayVariant) return {
|
|
34260
|
+
if (headerRootPaint(header) !== "own-surface") return {
|
|
33596
34261
|
backgroundToken: "transparent",
|
|
33597
34262
|
isTransparent: true
|
|
33598
34263
|
};
|
|
@@ -33603,23 +34268,7 @@ function resolveHeaderVisualStyles(header) {
|
|
|
33603
34268
|
}
|
|
33604
34269
|
function resolvedForegroundStyle(foreground) {
|
|
33605
34270
|
if (foreground.kind === "unknown") return void 0;
|
|
33606
|
-
|
|
33607
|
-
return surfaceForegroundStyle({
|
|
33608
|
-
text: rgbColorValue(roles.text),
|
|
33609
|
-
heading: rgbColorValue(roles.heading),
|
|
33610
|
-
link: rgbColorValue(roles.link),
|
|
33611
|
-
supporting: rgbColorValue(roles.supporting)
|
|
33612
|
-
});
|
|
33613
|
-
}
|
|
33614
|
-
function resolveFooterRootForeground(footer, palette) {
|
|
33615
|
-
const background = footer?.background;
|
|
33616
|
-
return resolveSurfaceForeground(background ?? {
|
|
33617
|
-
type: "color",
|
|
33618
|
-
color: "surface"
|
|
33619
|
-
}, palette, {
|
|
33620
|
-
text: background?.textColor,
|
|
33621
|
-
link: footer?.navLinkStyle?.colorToken ?? footer?.navColor ?? background?.textColor
|
|
33622
|
-
});
|
|
34271
|
+
return surfaceForegroundStyle(surfaceForegroundInputFromResolved(foreground, rgbColorValue));
|
|
33623
34272
|
}
|
|
33624
34273
|
function footerBottomBarBorderWidthStyle(width) {
|
|
33625
34274
|
if (!width) return void 0;
|
|
@@ -33646,8 +34295,7 @@ const headerRootClassTransform = {
|
|
|
33646
34295
|
const placement = planSiteChromePlacement(parseHeaderPositioning(content.positioning));
|
|
33647
34296
|
const header = asPartialObject(value);
|
|
33648
34297
|
const visuals = resolveHeaderVisualStyles(header);
|
|
33649
|
-
const
|
|
33650
|
-
const hasContainedNav = navContainerType === "glass" || navContainerType === "pill";
|
|
34298
|
+
const hasContainedNav = headerRootPaint(header) === "contained-nav";
|
|
33651
34299
|
const backgroundClass = visuals.isTransparent || hasContainedNav ? "rb-bg-transparent" : null;
|
|
33652
34300
|
const classes = [config.base, backgroundClass];
|
|
33653
34301
|
if (!hasContainedNav) {
|
|
@@ -33690,7 +34338,7 @@ const headerRootStyleTransform = {
|
|
|
33690
34338
|
run: (value, _options, context) => {
|
|
33691
34339
|
const header = asPartialObject(value);
|
|
33692
34340
|
const visuals = resolveHeaderVisualStyles(header);
|
|
33693
|
-
return mergeStyles(resolvedForegroundStyle(resolveHeaderRootForeground(header, context.theme.palette, visuals.isTransparent)) ?? { color: rgbColorValue(
|
|
34341
|
+
return mergeStyles(resolvedForegroundStyle(resolveHeaderRootForeground(header, context.theme.palette, visuals.isTransparent)) ?? (visuals.isTransparent ? surfaceForegroundStyle(transparentHeaderForegroundInput(header, context.theme.palette)) : { color: rgbColorValue(headerLeafTextColor(header)) }), borderColorStyle(header?.border?.colorToken ?? "border"));
|
|
33694
34342
|
}
|
|
33695
34343
|
};
|
|
33696
34344
|
const headerSectionBackgroundTransform = {
|
|
@@ -33698,9 +34346,7 @@ const headerSectionBackgroundTransform = {
|
|
|
33698
34346
|
kind: "string",
|
|
33699
34347
|
summary: "Resolve the inner site-header section background token",
|
|
33700
34348
|
run: (value) => {
|
|
33701
|
-
|
|
33702
|
-
const navContainerType = header?.navContainer?.type ?? "none";
|
|
33703
|
-
return header?.variant === "floating" || navContainerType === "glass" || navContainerType === "pill" ? "raw:transparent" : "background";
|
|
34349
|
+
return headerRootPaint(asPartialObject(value)) !== "own-surface" ? "raw:transparent" : "background";
|
|
33704
34350
|
}
|
|
33705
34351
|
};
|
|
33706
34352
|
const footerRootStyleTransform = {
|
|
@@ -33718,7 +34364,7 @@ const footerRootStyleTransform = {
|
|
|
33718
34364
|
styleParts.push(backgroundColorStyle(token));
|
|
33719
34365
|
}
|
|
33720
34366
|
}
|
|
33721
|
-
styleParts.push(resolvedForegroundStyle(resolveFooterRootForeground(footer, context.theme.palette)));
|
|
34367
|
+
styleParts.push(resolvedForegroundStyle(resolveFooterRootForeground(footer, context.theme.palette, context.proseHoverCandidate)));
|
|
33722
34368
|
styleParts.push(borderColorStyle("border"));
|
|
33723
34369
|
return mergeStyles(...styleParts);
|
|
33724
34370
|
}
|
|
@@ -33780,22 +34426,28 @@ const footerBottomBarStyleTransform = {
|
|
|
33780
34426
|
run: (value, _options, context) => {
|
|
33781
34427
|
const footer = asPartialObject(value);
|
|
33782
34428
|
const bottomBar = footer?.bottomBar;
|
|
33783
|
-
|
|
33784
|
-
const background = bottomBar?.background;
|
|
33785
|
-
if (background?.type === "color") styleParts.push(backgroundColorStyle(background.color ?? "surface"));
|
|
33786
|
-
styleParts.push(borderColorStyle(bottomBar?.borderTop?.colorToken ?? "border"), footerBottomBarBorderWidthStyle(bottomBar?.borderTop?.width));
|
|
33787
|
-
const foreground = resolveSurfaceForeground(background?.type === "color" ? background : {
|
|
33788
|
-
type: "color",
|
|
33789
|
-
color: "transparent"
|
|
33790
|
-
}, context.theme.palette, {
|
|
33791
|
-
text: bottomBar?.textColor,
|
|
33792
|
-
link: footer?.bottomTextLinkStyle?.colorToken ?? bottomBar?.textColor
|
|
33793
|
-
});
|
|
33794
|
-
if (background?.type === "color") styleParts.push(resolvedForegroundStyle(foreground));
|
|
33795
|
-
else if (bottomBar?.textColor) styleParts.push(textColorStyle(bottomBar.textColor));
|
|
33796
|
-
return mergeStyles(...styleParts);
|
|
34429
|
+
return mergeStyles(bottomBar?.background?.type === "color" ? backgroundColorStyle(bottomBar.background.color ?? "surface") : void 0, borderColorStyle(bottomBar?.borderTop?.colorToken ?? "border"), footerBottomBarBorderWidthStyle(bottomBar?.borderTop?.width), footerBottomBarForegroundStyle(footer, context.theme.palette));
|
|
33797
34430
|
}
|
|
33798
34431
|
};
|
|
34432
|
+
function footerBottomBarForegroundStyle(footer, palette) {
|
|
34433
|
+
if (!footer?.bottomBar) return void 0;
|
|
34434
|
+
const bar = footer.bottomBar;
|
|
34435
|
+
if (bar.background?.type !== "color") return backgroundlessBottomBarForegroundStyle(footer);
|
|
34436
|
+
return resolvedForegroundStyle(resolveSurfaceForeground(bar.background, palette, {
|
|
34437
|
+
text: bar.textColor,
|
|
34438
|
+
link: footer.bottomTextLinkStyle?.colorToken ?? bar.textColor,
|
|
34439
|
+
linkHover: footer.bottomTextLinkStyle?.hoverColorToken
|
|
34440
|
+
}, { compositeBase: measuredFooterBackdrop(footer, palette) }));
|
|
34441
|
+
}
|
|
34442
|
+
function backgroundlessBottomBarForegroundStyle(footer) {
|
|
34443
|
+
if (footer.background?.contentOwner === "site-chrome-editor") return;
|
|
34444
|
+
const textColor = footer.bottomBar?.textColor;
|
|
34445
|
+
return textColor ? textColorStyle(textColor) : void 0;
|
|
34446
|
+
}
|
|
34447
|
+
function measuredFooterBackdrop(footer, palette) {
|
|
34448
|
+
const foreground = resolveFooterRootForeground(footer, palette);
|
|
34449
|
+
return foreground.kind === "known" && foreground.provenance.kind === "measured" ? foreground.provenance.backdropHex : null;
|
|
34450
|
+
}
|
|
33799
34451
|
const footerSplitMainClassTransform = {
|
|
33800
34452
|
id: "layout.footerSplitMainClass",
|
|
33801
34453
|
kind: "string",
|
|
@@ -33891,7 +34543,7 @@ function chromeSurfaceTextToken(surface, theme, palette) {
|
|
|
33891
34543
|
case "header-root": {
|
|
33892
34544
|
const header = theme.header;
|
|
33893
34545
|
const foreground = resolveHeaderRootForeground(header, palette, resolveHeaderVisualStyles(header).isTransparent);
|
|
33894
|
-
return foreground.kind === "known" ? foreground.roles.text :
|
|
34546
|
+
return foreground.kind === "known" ? foreground.roles.text : headerLeafTextColor(header);
|
|
33895
34547
|
}
|
|
33896
34548
|
case "header-mobile-panel": return theme.header?.dropdownStyle?.textColor ?? "text";
|
|
33897
34549
|
case "footer-root": {
|
|
@@ -35967,13 +36619,19 @@ const bookingDescription = richText({}, bind("content.description"), when("conte
|
|
|
35967
36619
|
* that hydration never rewrites.
|
|
35968
36620
|
*/
|
|
35969
36621
|
const bookingWizard = bookingForm(withApiBindings({
|
|
36622
|
+
demoEmailSuppressed: { $bind: {
|
|
36623
|
+
from: "$root.demoEmailSuppressed",
|
|
36624
|
+
fallback: false
|
|
36625
|
+
} },
|
|
35970
36626
|
portalToken: { $bind: {
|
|
35971
36627
|
from: "$root.portalToken",
|
|
35972
36628
|
fallback: null
|
|
35973
36629
|
} },
|
|
35974
36630
|
formId: { $bind: { from: "content.formId" } },
|
|
35975
36631
|
form: { $bind: { from: "data.form" } },
|
|
35976
|
-
services: { $bind: { from: "data.services" } }
|
|
36632
|
+
services: { $bind: { from: "data.services" } },
|
|
36633
|
+
mailingList: { $bind: { from: "$root.mailingList" } },
|
|
36634
|
+
siteName: { $bind: { from: "$root.siteName" } }
|
|
35977
36635
|
}));
|
|
35978
36636
|
/** Both variants sit in the same section shell; only the inner layout differs. */
|
|
35979
36637
|
function bookingSection(children) {
|
|
@@ -36691,7 +37349,6 @@ const publicEventBaseSchema = z.object({
|
|
|
36691
37349
|
description: z.string().nullable(),
|
|
36692
37350
|
content: z.object({ body: RichTextDocSchema.nullable().optional() }).optional(),
|
|
36693
37351
|
presentation: z.object({
|
|
36694
|
-
cardTitleOverride: z.string().nullable().optional(),
|
|
36695
37352
|
summary: z.string().nullable().optional(),
|
|
36696
37353
|
image: mediaSchema.nullable().optional()
|
|
36697
37354
|
}).optional(),
|
|
@@ -36724,6 +37381,7 @@ const publicEventBaseSchema = z.object({
|
|
|
36724
37381
|
"archived"
|
|
36725
37382
|
]).optional(),
|
|
36726
37383
|
timeZone: z.string(),
|
|
37384
|
+
siteTimeZone: z.string().optional(),
|
|
36727
37385
|
pricing: publicEventPricingSchema,
|
|
36728
37386
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
36729
37387
|
cancellationPolicy: z.object({ refunds: z.object({
|
|
@@ -37387,6 +38045,7 @@ const EVENT_REGISTRATION_SHELL_STEP_LABELS = [
|
|
|
37387
38045
|
];
|
|
37388
38046
|
const eventRegistrationPublicEventSchema = z.preprocess(normalizeEventRegistrationEventInput, publicEventSchema);
|
|
37389
38047
|
const eventRegistrationHydrationSchemaShape = {
|
|
38048
|
+
demoEmailSuppressed: z.boolean().optional(),
|
|
37390
38049
|
occurrenceContext: occurrenceContextSchema.optional(),
|
|
37391
38050
|
subject: eventRegistrationPageSurfaceSubjectSchema.nullable().optional(),
|
|
37392
38051
|
maxTickets: z.string().optional(),
|
|
@@ -37398,7 +38057,13 @@ const eventRegistrationHydrationSchemaShape = {
|
|
|
37398
38057
|
spamProtectionEnabled: z.boolean().optional(),
|
|
37399
38058
|
supportEmail: z.string().optional(),
|
|
37400
38059
|
sitePasses: publicPassProductCollectionSchema.nullable().optional(),
|
|
37401
|
-
siteMemberships: publicMembershipProductCollectionSchema.nullable().optional()
|
|
38060
|
+
siteMemberships: publicMembershipProductCollectionSchema.nullable().optional(),
|
|
38061
|
+
mailingList: z.unknown().transform((value) => {
|
|
38062
|
+
if (value === void 0) return void 0;
|
|
38063
|
+
const parsed = parseMailingListRuntimeContext(value);
|
|
38064
|
+
return parsed.ok ? parsed.value : void 0;
|
|
38065
|
+
}),
|
|
38066
|
+
siteName: z.string().optional()
|
|
37402
38067
|
};
|
|
37403
38068
|
const eventRegistrationEventSourceSchema = z.discriminatedUnion("kind", [z.object({
|
|
37404
38069
|
kind: z.literal("loaded"),
|
|
@@ -37561,6 +38226,7 @@ const eventRegistrationBlockRuntime = defineClientOwnedBlockRuntime({
|
|
|
37561
38226
|
...eventSource,
|
|
37562
38227
|
events: [...scopedSourceEvents]
|
|
37563
38228
|
} : eventSource,
|
|
38229
|
+
demoEmailSuppressed: source.demoEmailSuppressed,
|
|
37564
38230
|
maxTickets: source.maxTickets ?? void 0,
|
|
37565
38231
|
showVenue: source.showVenue,
|
|
37566
38232
|
showCapacity: source.showCapacity,
|
|
@@ -37570,7 +38236,9 @@ const eventRegistrationBlockRuntime = defineClientOwnedBlockRuntime({
|
|
|
37570
38236
|
spamProtectionEnabled: source.spamProtectionEnabled,
|
|
37571
38237
|
supportEmail: source.supportEmail,
|
|
37572
38238
|
sitePasses: source.sitePasses ?? null,
|
|
37573
|
-
siteMemberships: source.siteMemberships ?? null
|
|
38239
|
+
siteMemberships: source.siteMemberships ?? null,
|
|
38240
|
+
mailingList: source.mailingList,
|
|
38241
|
+
siteName: source.siteName
|
|
37574
38242
|
}
|
|
37575
38243
|
};
|
|
37576
38244
|
}
|
|
@@ -37687,8 +38355,8 @@ const eventRegistrationBlockDefinition = {
|
|
|
37687
38355
|
description: "Message shown after successful registration",
|
|
37688
38356
|
required: false,
|
|
37689
38357
|
multiline: true,
|
|
37690
|
-
|
|
37691
|
-
|
|
38358
|
+
maxLength: 500,
|
|
38359
|
+
ui: { placeholder: "Thank you for registering! Check your email for confirmation details." }
|
|
37692
38360
|
},
|
|
37693
38361
|
{
|
|
37694
38362
|
id: "buttonText",
|
|
@@ -37709,6 +38377,10 @@ const eventRegistrationBlockDefinition = {
|
|
|
37709
38377
|
text({ as: "h2" }, bind("content.heading"), when("content.heading")),
|
|
37710
38378
|
richText({ className: "rb-prose rb-max-w-none" }, bind("content.description"), when("content.description")),
|
|
37711
38379
|
eventRegistration(withApiBindings({
|
|
38380
|
+
demoEmailSuppressed: { $bind: {
|
|
38381
|
+
from: "$root.demoEmailSuppressed",
|
|
38382
|
+
fallback: false
|
|
38383
|
+
} },
|
|
37712
38384
|
readAuthority: { $bind: { from: "$root.readAuthority" } },
|
|
37713
38385
|
occurrenceContext: { $bind: { from: "$root.occurrenceContext" } },
|
|
37714
38386
|
subject: { $bind: { from: "$root.subject" } },
|
|
@@ -37738,6 +38410,8 @@ const eventRegistrationBlockDefinition = {
|
|
|
37738
38410
|
events: { $bind: { from: "data.events" } },
|
|
37739
38411
|
wholeSeriesRunEvents: { $bind: { from: "data.wholeSeriesRunEvents" } },
|
|
37740
38412
|
loaderFailures: { $bind: { from: "$root.loaderFailures" } },
|
|
38413
|
+
mailingList: { $bind: { from: "$root.mailingList" } },
|
|
38414
|
+
siteName: { $bind: { from: "$root.siteName" } },
|
|
37741
38415
|
sitePasses: { $bind: { from: "data.sitePasses" } },
|
|
37742
38416
|
siteMemberships: { $bind: { from: "data.siteMemberships" } },
|
|
37743
38417
|
stage: { $bind: {
|
|
@@ -43160,6 +43834,7 @@ const shopSourceSchema = z.object({
|
|
|
43160
43834
|
memberships: z.array(publicMembershipProductSchema).nullable().optional(),
|
|
43161
43835
|
products: z.array(publicProductSchema).nullable().optional(),
|
|
43162
43836
|
siteId: z.string().optional(),
|
|
43837
|
+
demoEmailSuppressed: z.boolean().optional(),
|
|
43163
43838
|
apiBaseUrl: z.string().optional(),
|
|
43164
43839
|
readAuthority: browserReadAuthoritySchema.optional(),
|
|
43165
43840
|
stage: previewStageSchema.optional()
|
|
@@ -43279,7 +43954,8 @@ const checkoutDisplaySchema = z.object({
|
|
|
43279
43954
|
const passesMembershipsHydrationSchema = z.object({
|
|
43280
43955
|
memberships: z.array(publicMembershipProductSchema),
|
|
43281
43956
|
passPurchaseMode: z.enum(["add_to_cart", "buy_now"]),
|
|
43282
|
-
buttonVariant: blockButtonRoleSchema
|
|
43957
|
+
buttonVariant: blockButtonRoleSchema,
|
|
43958
|
+
demoEmailSuppressed: z.boolean().optional()
|
|
43283
43959
|
});
|
|
43284
43960
|
const productListHydrationSchema = z.object({
|
|
43285
43961
|
products: z.array(publicProductSchema),
|
|
@@ -43301,7 +43977,8 @@ const cartHydrationSchema = z.object({
|
|
|
43301
43977
|
});
|
|
43302
43978
|
const checkoutHydrationSchema = z.object({
|
|
43303
43979
|
emptyStateText: z.string(),
|
|
43304
|
-
submitButtonText: z.string()
|
|
43980
|
+
submitButtonText: z.string(),
|
|
43981
|
+
demoEmailSuppressed: z.boolean().optional()
|
|
43305
43982
|
});
|
|
43306
43983
|
const passesMembershipsRenderSchema = z.object({
|
|
43307
43984
|
display: passesMembershipsDisplaySchema,
|
|
@@ -43360,7 +44037,8 @@ const shopBlockRuntime = defineProgressiveBlockRuntime({
|
|
|
43360
44037
|
hydration: {
|
|
43361
44038
|
memberships: source.showMemberships === false ? [] : source.memberships ?? [],
|
|
43362
44039
|
passPurchaseMode,
|
|
43363
|
-
buttonVariant: source.buttonVariant ?? "primary"
|
|
44040
|
+
buttonVariant: source.buttonVariant ?? "primary",
|
|
44041
|
+
demoEmailSuppressed: source.demoEmailSuppressed
|
|
43364
44042
|
}
|
|
43365
44043
|
};
|
|
43366
44044
|
}
|
|
@@ -43453,7 +44131,8 @@ const checkoutBlockRuntime = defineClientOwnedBlockRuntime({
|
|
|
43453
44131
|
}),
|
|
43454
44132
|
hydration: {
|
|
43455
44133
|
emptyStateText: source.emptyStateText ?? "Add something to your cart to continue.",
|
|
43456
|
-
submitButtonText: source.submitButtonText ?? "Checkout"
|
|
44134
|
+
submitButtonText: source.submitButtonText ?? "Checkout",
|
|
44135
|
+
demoEmailSuppressed: source.demoEmailSuppressed
|
|
43457
44136
|
}
|
|
43458
44137
|
})
|
|
43459
44138
|
});
|
|
@@ -43671,6 +44350,10 @@ const shopBlockDefinition = {
|
|
|
43671
44350
|
spacing: "spacious",
|
|
43672
44351
|
children: sectionContainer([shop(withApiBindings({
|
|
43673
44352
|
readAuthority: { $bind: { from: "$root.readAuthority" } },
|
|
44353
|
+
demoEmailSuppressed: { $bind: {
|
|
44354
|
+
from: "$root.demoEmailSuppressed",
|
|
44355
|
+
fallback: false
|
|
44356
|
+
} },
|
|
43674
44357
|
mode: "passes-memberships",
|
|
43675
44358
|
showPasses: { $bind: {
|
|
43676
44359
|
from: "content.showPasses",
|
|
@@ -44213,6 +44896,10 @@ const checkoutBlockDefinition = {
|
|
|
44213
44896
|
baseClass: "",
|
|
44214
44897
|
spacing: "spacious",
|
|
44215
44898
|
children: sectionContainer([checkout(withApiBindings({
|
|
44899
|
+
demoEmailSuppressed: { $bind: {
|
|
44900
|
+
from: "$root.demoEmailSuppressed",
|
|
44901
|
+
fallback: false
|
|
44902
|
+
} },
|
|
44216
44903
|
readAuthority: { $bind: { from: "$root.readAuthority" } },
|
|
44217
44904
|
mode: "checkout",
|
|
44218
44905
|
heading: { $bind: {
|
|
@@ -44903,18 +45590,11 @@ const newsletterSignupManifest = createBlockManifest({
|
|
|
44903
45590
|
],
|
|
44904
45591
|
icon: "Mail"
|
|
44905
45592
|
});
|
|
45593
|
+
const newsletterPublicFieldIds = [...(newsletterSignupManifest.fields ?? []).map((field) => field.id), "_containerStyles"];
|
|
44906
45594
|
function sanitizeNewsletterSignupPublicContent(content) {
|
|
44907
45595
|
if (typeof content !== "object" || content === null || Array.isArray(content)) return content;
|
|
44908
45596
|
const value = content;
|
|
44909
|
-
return
|
|
44910
|
-
title: value.title,
|
|
44911
|
-
subtitle: value.subtitle,
|
|
44912
|
-
targeting: value.targeting,
|
|
44913
|
-
buttonVariant: value.buttonVariant,
|
|
44914
|
-
mailingListSource: value.mailingListSource,
|
|
44915
|
-
mailingListSourceToken: value.mailingListSourceToken,
|
|
44916
|
-
_sectionStyles: value._sectionStyles
|
|
44917
|
-
};
|
|
45597
|
+
return Object.fromEntries(newsletterPublicFieldIds.map((id) => [id, value[id]]));
|
|
44918
45598
|
}
|
|
44919
45599
|
const newsletterSignupBlockDefinition = {
|
|
44920
45600
|
manifest: newsletterSignupManifest,
|
|
@@ -49925,17 +50605,6 @@ const navigationLinkInputSchemaOptions = [
|
|
|
49925
50605
|
];
|
|
49926
50606
|
z.discriminatedUnion("kind", navigationLinkInputSchemaOptions);
|
|
49927
50607
|
//#endregion
|
|
49928
|
-
//#region ../blocks/src/pageRenderAdmission.ts
|
|
49929
|
-
/** Pair a published version with the content it authorises at the render boundary. */
|
|
49930
|
-
function readPublishedBlockPlacement(id, content) {
|
|
49931
|
-
if (id == null && content == null) return null;
|
|
49932
|
-
if (id == null || content == null) throw new Error("Published block placement requires both an ID and content");
|
|
49933
|
-
return {
|
|
49934
|
-
id,
|
|
49935
|
-
content
|
|
49936
|
-
};
|
|
49937
|
-
}
|
|
49938
|
-
//#endregion
|
|
49939
50608
|
//#region ../api/src/sdkConfig/contracts.ts
|
|
49940
50609
|
/**
|
|
49941
50610
|
* Canonical SDK config Zod contracts.
|
|
@@ -51401,9 +52070,17 @@ function readBlockContentId(value, name) {
|
|
|
51401
52070
|
function readTransportedBlockIdentity(block, kind, stage) {
|
|
51402
52071
|
return {
|
|
51403
52072
|
draftContentId: readBlockContentId(block.draftContentId, "draft content id"),
|
|
51404
|
-
publishedPlacement: stage === "preview" ?
|
|
52073
|
+
publishedPlacement: stage === "preview" ? readSdkPreviewPublishedPlacement(block, kind) : null
|
|
51405
52074
|
};
|
|
51406
52075
|
}
|
|
52076
|
+
/** Pair SDK preview publication data whether it is transported or already admitted. */
|
|
52077
|
+
function readSdkPreviewPublishedPlacement(block, kind) {
|
|
52078
|
+
if (block.publishedPlacement !== void 0 && block.publishedPlacement !== null) {
|
|
52079
|
+
if (!isRecord$1(block.publishedPlacement)) throw new Error("Invalid published placement in page");
|
|
52080
|
+
return readPublishedBlockPlacement(readBlockContentId(block.publishedPlacement.id, "published content id"), sanitizeNullableSdkRuntimeBlockContent(kind, readContentRecord(block.publishedPlacement.content) ?? null));
|
|
52081
|
+
}
|
|
52082
|
+
return readPublishedBlockPlacement(readBlockContentId(block.publishedContentId, "published content id"), sanitizeNullableSdkRuntimeBlockContent(kind, readSdkPublishedContentRecord(block.publishedContent)));
|
|
52083
|
+
}
|
|
51407
52084
|
function convertPageResponseBlock(block, stage) {
|
|
51408
52085
|
if (!isRecord$1(block)) throw new Error("Invalid block format in page API response");
|
|
51409
52086
|
const header = readTransportedBlockHeader(block);
|
|
@@ -51512,6 +52189,10 @@ function readNestedContentRecord(value) {
|
|
|
51512
52189
|
if (!isRecord$1(value)) return null;
|
|
51513
52190
|
return readContentRecord(value.data) ?? null;
|
|
51514
52191
|
}
|
|
52192
|
+
function readSdkPublishedContentRecord(value) {
|
|
52193
|
+
if (!isRecord$1(value)) return null;
|
|
52194
|
+
return "data" in value ? readContentRecord(value.data) ?? null : value;
|
|
52195
|
+
}
|
|
51515
52196
|
function sanitizeSdkRuntimeBlockContent(blockKind, content) {
|
|
51516
52197
|
if (blockKind !== "block.newsletter-signup") return content;
|
|
51517
52198
|
const sanitized = sanitizeNewsletterSignupPublicContent(content);
|
|
@@ -51603,15 +52284,14 @@ async function loadPageWithDeps(deps, params) {
|
|
|
51603
52284
|
const { client, siteId, path, pageId, preview = false, dataLoaderOverrides, searchParams, forceSite } = params;
|
|
51604
52285
|
const [site, pageResponse] = await Promise.all([client.getSite({
|
|
51605
52286
|
id: siteId,
|
|
52287
|
+
currentPath: path,
|
|
51606
52288
|
...forceSite ? { force: true } : {}
|
|
51607
52289
|
}), client.getPage({
|
|
51608
52290
|
siteId,
|
|
51609
52291
|
path,
|
|
51610
52292
|
preview
|
|
51611
52293
|
})]);
|
|
51612
|
-
|
|
51613
|
-
if ("pageSurface" in pageResponse) throw new Error("This path resolves to a page surface, not a page. Use loadContent() instead, which handles pages, entries, and page surfaces.");
|
|
51614
|
-
const { page: pageData } = pageResponse;
|
|
52294
|
+
const pageData = requirePageRecord(pageResponse);
|
|
51615
52295
|
const support = buildSiteRenderSupport(site, collectMediaAssetSidecar(pageResponse.mediaAssets));
|
|
51616
52296
|
const previewStage = preview ? "preview" : "published";
|
|
51617
52297
|
const pageOutline = buildRenderablePageOutline({
|
|
@@ -51641,8 +52321,11 @@ async function loadPageWithDeps(deps, params) {
|
|
|
51641
52321
|
theme: requireSdkTheme(support.theme, siteId),
|
|
51642
52322
|
sdkConfig: support.sdkConfig,
|
|
51643
52323
|
siteId,
|
|
52324
|
+
dataContext: {
|
|
52325
|
+
siteName: support.site.title,
|
|
52326
|
+
previewStage
|
|
52327
|
+
},
|
|
51644
52328
|
resolvedData,
|
|
51645
|
-
dataContext: { previewStage },
|
|
51646
52329
|
bookingOfferingPresets: support.bookingOfferingPresets,
|
|
51647
52330
|
mailingList: support.mailingList,
|
|
51648
52331
|
bookingTimeZone: support.bookingTimeZone,
|
|
@@ -51654,6 +52337,11 @@ async function loadPageWithDeps(deps, params) {
|
|
|
51654
52337
|
entriesByIdentifier: support.entriesByIdentifier
|
|
51655
52338
|
};
|
|
51656
52339
|
}
|
|
52340
|
+
function requirePageRecord(response) {
|
|
52341
|
+
if ("entry" in response) throw new Error("This path resolves to a content entry, not a page. Use loadContent() instead, which handles both pages and entries. For entries, loadContent() returns the raw entry data for custom rendering.");
|
|
52342
|
+
if ("pageSurface" in response) throw new Error("This path resolves to a page surface, not a page. Use loadContent() instead, which handles pages, entries, and page surfaces.");
|
|
52343
|
+
return response.page;
|
|
52344
|
+
}
|
|
51657
52345
|
//#endregion
|
|
51658
52346
|
//#region ../content-model/src/entry-slots/types.ts
|
|
51659
52347
|
function ok(value) {
|
|
@@ -52077,6 +52765,7 @@ function resolveTemplateBlock(block, bindingContext, customBlocks) {
|
|
|
52077
52765
|
id: block.id,
|
|
52078
52766
|
kind: block.blockKind,
|
|
52079
52767
|
purpose: block.scope === "template" ? "template-layout" : "entry-content",
|
|
52768
|
+
publishedPlacement: null,
|
|
52080
52769
|
...isRecord(block.bindings) ? { bindings: block.bindings } : {}
|
|
52081
52770
|
};
|
|
52082
52771
|
const manifest = resolveSdkBlockManifest(block.blockKind, customBlocks);
|
|
@@ -52242,6 +52931,7 @@ async function loadContentWithDeps(deps, params) {
|
|
|
52242
52931
|
const { client, siteId, path, preview = false, forceSite, dataLoaderOverrides, searchParams } = params;
|
|
52243
52932
|
const [siteResult, contentResult] = await Promise.allSettled([client.getSite({
|
|
52244
52933
|
id: siteId,
|
|
52934
|
+
currentPath: path,
|
|
52245
52935
|
...forceSite ? { force: true } : {}
|
|
52246
52936
|
}), client.getPage({
|
|
52247
52937
|
siteId,
|