@riverbankcms/sdk 0.145.0 → 0.147.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 +29 -0
- package/dist/{PreviewEditorSidebar-O-V6Pl5a.mjs → PreviewEditorSidebar-DtpB3_sS.mjs} +51 -33
- package/dist/{PreviewEditorUI-1UlX_9cw.mjs → PreviewEditorUI-DxTLgaHo.mjs} +3 -3
- package/dist/{PreviewQueryProvider-BxGwdOCV.mjs → PreviewQueryProvider-Dd4dxOiU.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-DYbA_4iv.mjs → SdkPreviewModeRuntime-DMMNCngt.mjs} +311 -186
- package/dist/{SiteChromeCustomizeContext-CNTKQ9nx.mjs → SiteChromeCustomizeContext-DQXZXiqS.mjs} +3808 -2395
- package/dist/_dts/ai/src/contracts/proposals.d.ts +1122 -0
- package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +102 -0
- package/dist/_dts/api/src/accountApi.d.ts +5 -5
- package/dist/_dts/api/src/bookingConfig.d.ts +24 -1
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +11 -26
- package/dist/_dts/api/src/bookingManagementEventEndpointTypes.d.ts +45 -1
- package/dist/_dts/api/src/bookingOperations.d.ts +2 -44
- 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 +11 -49
- package/dist/_dts/api/src/bookingSettingsSections.d.ts +1 -1
- package/dist/_dts/api/src/bookings.d.ts +1 -0
- package/dist/_dts/api/src/clientErrorReporting.d.ts +50 -0
- package/dist/_dts/api/src/communications.d.ts +20 -4
- package/dist/_dts/api/src/contentRuntime.d.ts +3 -7
- package/dist/_dts/api/src/endpoints.d.ts +816 -655
- package/dist/_dts/api/src/event-visibility.d.ts +20 -0
- package/dist/_dts/api/src/eventManagementContracts.d.ts +72 -4
- package/dist/_dts/api/src/eventManagementEndpointDefinitions.d.ts +24 -0
- package/dist/_dts/api/src/eventPageWords.d.ts +19 -0
- package/dist/_dts/api/src/eventSeriesRegistrationEndpointDefinitions.d.ts +14 -0
- package/dist/_dts/api/src/index.d.ts +9 -2
- package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -1
- package/dist/_dts/api/src/indexExtendedTypes.d.ts +1 -1
- package/dist/_dts/api/src/launchReadiness.d.ts +19 -6
- package/dist/_dts/api/src/launchRequirementPriority.d.ts +3 -0
- 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/newsletterCampaignCommandEndpoints.d.ts +13 -0
- package/dist/_dts/api/src/newsletterEndpointDefinitions.d.ts +57 -0
- package/dist/_dts/api/src/occurrenceScheduling.d.ts +29 -0
- package/dist/_dts/api/src/pageSurfaceEndpoints.d.ts +44 -0
- package/dist/_dts/api/src/participantMessaging.d.ts +11 -1
- package/dist/_dts/api/src/publicAppointmentBookingContracts.d.ts +48 -0
- package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +7 -0
- package/dist/_dts/api/src/sdk-event-upsert.d.ts +55 -1
- package/dist/_dts/api/src/sdkContracts.d.ts +3 -42
- package/dist/_dts/api/src/sdkCourseBooking.d.ts +30 -0
- package/dist/_dts/api/src/sdkEventEndpointDefinitions.d.ts +76 -0
- package/dist/_dts/api/src/sdkEventLifecycle.d.ts +37 -0
- package/dist/_dts/api/src/sdkManagedEventContracts.d.ts +18 -0
- package/dist/_dts/api/src/sdkPageDesign.d.ts +388 -0
- package/dist/_dts/api/src/sdkPageDesignEndpointDefinitions.d.ts +22 -0
- package/dist/_dts/api/src/sdkPullEventContracts.d.ts +46 -0
- package/dist/_dts/api/src/siteAddressEndpoints.d.ts +29 -0
- package/dist/_dts/api/src/siteLifecycleEndpoints.d.ts +61 -0
- package/dist/_dts/api/src/siteManagementEndpointDefinitions.d.ts +49 -0
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +6 -49
- package/dist/_dts/api/src/siteOnboarding.d.ts +72 -18
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +1 -1
- package/dist/_dts/api/src/types.d.ts +7 -1
- package/dist/_dts/api/src/wholeSeriesRuns.d.ts +14 -0
- package/dist/_dts/blocks/src/PageRenderer.d.ts +3 -4
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +8 -0
- package/dist/_dts/blocks/src/index.d.ts +2 -0
- package/dist/_dts/blocks/src/pageRenderAdmission.d.ts +29 -1
- package/dist/_dts/blocks/src/pageRendererContracts.d.ts +5 -1
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +27 -5
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +14 -1
- package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +4 -1
- package/dist/_dts/blocks/src/system/icons/social.d.ts +1 -1
- package/dist/_dts/blocks/src/system/registry.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/appointments.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +12 -0
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +12 -0
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessBookingFlow.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.completion.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.headless.state.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.interactive.d.ts +19 -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-note.d.ts +3 -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.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 +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.submit-handler.d.ts +8 -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 +3 -0
- 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/SuccessStep.d.ts +3 -0
- 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/eventSourceRecovery.d.ts +1 -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 +6 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +3 -0
- 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 +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +20 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/form.fields.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.block-submission.d.ts +34 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.client.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +6 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.parts.d.ts +46 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +4 -1
- package/dist/_dts/blocks/src/system/runtime/shared/components/BookingMailingListNote.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/shared/components/CheckboxChoice.d.ts +18 -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/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/content-editor/src/index.d.ts +1 -0
- package/dist/_dts/content-editor/src/primitives/previewEditableOutline.d.ts +2 -0
- package/dist/_dts/content-editor/src/ui/editorBlockEquality.d.ts +3 -0
- package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +3 -5
- package/dist/_dts/core/src/block-content-identity.d.ts +5 -0
- package/dist/_dts/core/src/editor-state.d.ts +2 -7
- package/dist/_dts/core/src/index.d.ts +2 -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 +9 -1
- 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/public-event-booking-availability.d.ts +20 -1
- package/dist/_dts/core/src/public-profile.d.ts +3 -1
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +151 -24
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +3 -0
- package/dist/_dts/editor-blocks/src/block-editor/EmptyState.d.ts +13 -1
- package/dist/_dts/editor-blocks/src/block-editor/actionPresentation.d.ts +1 -0
- package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +2 -8
- package/dist/_dts/editor-blocks/src/index.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/blocks/EditablePageRenderer.d.ts +7 -1
- package/dist/_dts/preview-next/src/client/blocks/composer/types.d.ts +5 -5
- package/dist/_dts/preview-next/src/client/preview/PreviewEntryControllerProvider.d.ts +1 -2
- package/dist/_dts/sdk/src/next/renderSdkContent.d.ts +0 -1
- package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +3 -2
- package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +3 -2
- package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +6 -1
- package/dist/_dts/sdk/src/rendering/helpers/loadPage.d.ts +5 -2
- package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +6 -1
- package/dist/_dts/sdk/src/rendering/helpers/templateContent.d.ts +2 -0
- package/dist/_dts/sdk/src/rendering/hooks/useContent.d.ts +5 -1
- package/dist/_dts/sdk/src/rendering/hooks/usePage.d.ts +5 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/surfaces/src/index.d.ts +9 -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/inputs/checkable.d.ts +42 -0
- package/dist/_dts/theme-core/src/inputs/inputGroup.d.ts +19 -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/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/navigation-tabs.d.ts +2 -1
- 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-DlVOmpW4.mjs → BookingMailingListNote-1n4Ch_u_.mjs} +15 -4
- package/dist/client/CheckboxChoice-B33MqoUo.mjs +24 -0
- package/dist/client/{DiscountCodeDisclosure-T9q623PQ.mjs → DiscountCodeDisclosure-CKJtz0mY.mjs} +1 -1
- package/dist/client/{EventCombined.client-DnsUeONl.mjs → EventCombined.client-C0pgma9y.mjs} +7 -7
- package/dist/client/{EventListing.client-CNBFqJS4.mjs → EventListing.client-4fhLOvHP.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-C7higg52.mjs → LeafletStaticMap-DScC4F3w.mjs} +1 -1
- package/dist/client/{scrollToBlock-CWs8EIdo.mjs → TerminalPanel-B5ZUsYhe.mjs} +77 -77
- package/dist/client/{ThemedButton-LAJTNrS8.mjs → ThemedButton-DoVIV1Ao.mjs} +2 -2
- package/dist/client/{accordion-BcNF9TjX.mjs → accordion-CoT5g7zo.mjs} +1 -1
- package/dist/client/{bookingForm-BUaQ3S03.mjs → bookingForm-BWxB46xD.mjs} +251 -150
- package/dist/client/bookings.mjs +415 -234
- package/dist/client/{carousel-CTdF6e0V.mjs → carousel-DtNYWFd3.mjs} +2 -2
- package/dist/client/{carousel.client-jahpU9Vz.mjs → carousel.client-A2lG-9od.mjs} +1 -1
- package/dist/client/{cart-pGtyf_XU.mjs → cart-z4qZih1Y.mjs} +3 -3
- package/dist/client/{checkout-Da9WSn7Y.mjs → checkout-DpL7euFH.mjs} +3 -3
- package/dist/client/{checkoutUrls-CW3-78uu.mjs → checkoutUrls-BEfR7kVu.mjs} +1 -1
- package/dist/client/client.mjs +3721 -2220
- package/dist/client/{colorStyles-CuJBiS-1.mjs → colorStyles-j5U9v5JA.mjs} +5 -1
- package/dist/client/{context-BFeY_Wbm.mjs → context-C8TinPJc.mjs} +1 -1
- package/dist/client/{dates-BhwVSxDg.mjs → dates-vwwxTeB0.mjs} +2 -3
- package/dist/client/{eventCalendar-BAtdnR4s.mjs → eventCalendar-DIbHfJXO.mjs} +10 -10
- package/dist/client/{eventCombined-RksA3tRC.mjs → eventCombined-DoGMJ6cg.mjs} +4 -4
- package/dist/client/{eventDetails-BB9hB4wR.mjs → eventDetails-BjN9v6a1.mjs} +4 -4
- package/dist/client/{eventListing-BpJBkviM.mjs → eventListing-DajjWgOv.mjs} +4 -4
- package/dist/client/{eventRegistration-B18jFq_o.mjs → eventRegistration-DMq9gMA-.mjs} +121 -54
- package/dist/client/{form-Dodt8Y8t.mjs → form-Qf6qTbos.mjs} +136 -105
- package/dist/client/{headerSection-B0qj9ttg.mjs → headerSection-D7qJrqFX.mjs} +3 -3
- package/dist/client/hooks.mjs +1148 -179
- package/dist/client/{locationMap-gn-iMk7a.mjs → locationMap-CCF9-t_0.mjs} +4 -4
- package/dist/client/{FieldValidationMessage-AYanWFb-.mjs → mailingListSignupCopy-DZSHZrm6.mjs} +14 -1
- package/dist/client/{media-BtJ37tzS.mjs → media-CwBGetqC.mjs} +1 -1
- package/dist/client/{newsletterForm-oByLdFkr.mjs → newsletterForm-DzCLSP4S.mjs} +206 -104
- package/dist/client/{pricing-BOU0_Hai.mjs → pricing-Cgxv2KLC.mjs} +1 -1
- package/dist/client/{productDetail-D9v1zH2j.mjs → productDetail-ru9w5GHx.mjs} +3 -3
- package/dist/client/{productList-D-mItx1n.mjs → productList-zaapKSl-.mjs} +3 -3
- package/dist/client/{propsDecoder-C3TP_z4x.mjs → propsDecoder-CwvvNOHx.mjs} +91 -28
- package/dist/client/rendering/client.mjs +1441 -826
- package/dist/client/rendering/islands.mjs +19 -19
- package/dist/client/rendering.mjs +3652 -2005
- package/dist/client/{routeIslandApiConfig-DzN1W0sq.mjs → routeIslandApiConfig-BwVFo0Y4.mjs} +1 -1
- package/dist/client/{shop-commerce-gklw_hLF.mjs → shop-commerce-De7gEnkA.mjs} +8 -8
- package/dist/client/{shop-commerce-store-Sf1eyTaZ.mjs → shop-commerce-store-B3MCxIBW.mjs} +1 -1
- package/dist/client/{shop-Dufw7N7o.mjs → shop-mktkXvbV.mjs} +7 -7
- package/dist/client/{shopShared-B5nyA41S.mjs → shopShared-TqExh235.mjs} +5 -5
- package/dist/client/{useEventFilters-CLL829vy.mjs → useEventFilters-n_OjkIjX.mjs} +8 -8
- package/dist/preview-next/before-render.mjs +490 -153
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/editor-base.css +64 -2
- package/dist/preview-next/editor-chrome.css +7 -4
- package/dist/preview-next/keepAlive.mjs +450 -153
- package/dist/preview-next/middleware.mjs +451 -153
- package/dist/{previewAuthStore-BxAFlu-j.mjs → previewAuthStore-C_EHQ5XA.mjs} +475 -153
- package/dist/{sdk-runtime-D0uZFev7.mjs → sdk-runtime-BIkJg5y1.mjs} +2 -2
- package/dist/{separator-EvdCAn4V.mjs → separator-C9qDP95Z.mjs} +1 -1
- package/dist/server/components.mjs +4957 -3509
- package/dist/server/config-validation.mjs +1115 -189
- package/dist/server/config.mjs +1115 -189
- package/dist/server/data.mjs +1113 -188
- package/dist/server/index.mjs +492 -154
- package/dist/server/navigation.mjs +13 -2
- package/dist/server/next.mjs +4798 -3462
- package/dist/server/page-converter.mjs +143 -89
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +3862 -2414
- package/dist/server/rendering.mjs +5648 -4154
- package/dist/server/routing.mjs +1223 -329
- package/dist/server/server.mjs +1172 -314
- package/dist/server/theme-bridge.mjs +533 -128
- package/dist/server/theme.mjs +5 -1
- package/dist/styles/index.css +218 -69
- package/package.json +1 -1
- package/dist/_dts/core/src/participant-identity.d.ts +0 -135
package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts
CHANGED
|
@@ -488,11 +488,15 @@ export declare const eventCollectionSourceSchemaShape: {
|
|
|
488
488
|
series_archived: "series_archived";
|
|
489
489
|
parent_archived: "parent_archived";
|
|
490
490
|
parent_inconsistent: "parent_inconsistent";
|
|
491
|
-
not_public: "not_public";
|
|
492
491
|
already_started: "already_started";
|
|
493
492
|
enrollment_closed: "enrollment_closed";
|
|
494
493
|
}>;
|
|
495
494
|
}, z.core.$strip>], "kind">;
|
|
495
|
+
bookingClosedDetail: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
496
|
+
kind: z.ZodLiteral<"opensSoon">;
|
|
497
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
498
|
+
kind: z.ZodLiteral<"paused">;
|
|
499
|
+
}, z.core.$strip>], "kind">>;
|
|
496
500
|
deliveryMode: z.ZodEnum<{
|
|
497
501
|
in_person: "in_person";
|
|
498
502
|
online: "online";
|
|
@@ -973,11 +977,15 @@ export declare const eventCollectionSourceSchemaShape: {
|
|
|
973
977
|
series_archived: "series_archived";
|
|
974
978
|
parent_archived: "parent_archived";
|
|
975
979
|
parent_inconsistent: "parent_inconsistent";
|
|
976
|
-
not_public: "not_public";
|
|
977
980
|
already_started: "already_started";
|
|
978
981
|
enrollment_closed: "enrollment_closed";
|
|
979
982
|
}>;
|
|
980
983
|
}, z.core.$strip>], "kind">;
|
|
984
|
+
bookingClosedDetail: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
985
|
+
kind: z.ZodLiteral<"opensSoon">;
|
|
986
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
987
|
+
kind: z.ZodLiteral<"paused">;
|
|
988
|
+
}, z.core.$strip>], "kind">>;
|
|
981
989
|
deliveryMode: z.ZodEnum<{
|
|
982
990
|
in_person: "in_person";
|
|
983
991
|
online: "online";
|
|
@@ -1519,11 +1527,15 @@ export declare const eventCollectionDisplaySchemaShape: {
|
|
|
1519
1527
|
series_archived: "series_archived";
|
|
1520
1528
|
parent_archived: "parent_archived";
|
|
1521
1529
|
parent_inconsistent: "parent_inconsistent";
|
|
1522
|
-
not_public: "not_public";
|
|
1523
1530
|
already_started: "already_started";
|
|
1524
1531
|
enrollment_closed: "enrollment_closed";
|
|
1525
1532
|
}>;
|
|
1526
1533
|
}, z.core.$strip>], "kind">;
|
|
1534
|
+
bookingClosedDetail: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
1535
|
+
kind: z.ZodLiteral<"opensSoon">;
|
|
1536
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
1537
|
+
kind: z.ZodLiteral<"paused">;
|
|
1538
|
+
}, z.core.$strip>], "kind">>;
|
|
1527
1539
|
deliveryMode: z.ZodEnum<{
|
|
1528
1540
|
in_person: "in_person";
|
|
1529
1541
|
online: "online";
|
|
@@ -2004,11 +2016,15 @@ export declare const eventCollectionDisplaySchemaShape: {
|
|
|
2004
2016
|
series_archived: "series_archived";
|
|
2005
2017
|
parent_archived: "parent_archived";
|
|
2006
2018
|
parent_inconsistent: "parent_inconsistent";
|
|
2007
|
-
not_public: "not_public";
|
|
2008
2019
|
already_started: "already_started";
|
|
2009
2020
|
enrollment_closed: "enrollment_closed";
|
|
2010
2021
|
}>;
|
|
2011
2022
|
}, z.core.$strip>], "kind">;
|
|
2023
|
+
bookingClosedDetail: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
2024
|
+
kind: z.ZodLiteral<"opensSoon">;
|
|
2025
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
2026
|
+
kind: z.ZodLiteral<"paused">;
|
|
2027
|
+
}, z.core.$strip>], "kind">>;
|
|
2012
2028
|
deliveryMode: z.ZodEnum<{
|
|
2013
2029
|
in_person: "in_person";
|
|
2014
2030
|
online: "online";
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { type MailingListSignupSourceRef } from '../../../../../core/src/index';
|
|
2
|
+
import type { PublishedBlockPlacementRead } from '../../../pageRenderAdmission';
|
|
3
|
+
export type NewsletterBlockSubmission = Readonly<{
|
|
4
|
+
tag: 'ready';
|
|
5
|
+
sourceRef: Extract<MailingListSignupSourceRef, {
|
|
6
|
+
tag: 'block_ref';
|
|
7
|
+
}>;
|
|
8
|
+
}> | Readonly<{
|
|
9
|
+
tag: 'unpublished-form';
|
|
10
|
+
}> | Readonly<{
|
|
11
|
+
tag: 'unpublished-settings';
|
|
12
|
+
}> | Readonly<{
|
|
13
|
+
tag: 'unavailable';
|
|
14
|
+
}>;
|
|
15
|
+
type BlockPlacement = Readonly<{
|
|
16
|
+
blockId: string | null;
|
|
17
|
+
selectedContentVersionId: string | null;
|
|
18
|
+
publishedPlacement: PublishedBlockPlacementRead;
|
|
19
|
+
renderedContent: Record<string, unknown>;
|
|
20
|
+
stage: 'published' | 'preview' | undefined;
|
|
21
|
+
}>;
|
|
22
|
+
/** Authorise one block source for both public and preview rendering. */
|
|
23
|
+
export declare function planNewsletterBlockSubmission(placement: BlockPlacement): NewsletterBlockSubmission;
|
|
24
|
+
type PreviewPlacement = Readonly<{
|
|
25
|
+
blockId: string | null;
|
|
26
|
+
publishedContentId: string | null;
|
|
27
|
+
renderedContent: Record<string, unknown>;
|
|
28
|
+
publishedContent: Record<string, unknown> | null;
|
|
29
|
+
}>;
|
|
30
|
+
/** Decide whether the visible draft can safely cite the published placement. */
|
|
31
|
+
export declare function planNewsletterPreviewSubmission(placement: PreviewPlacement): Exclude<NewsletterBlockSubmission, {
|
|
32
|
+
tag: 'unavailable';
|
|
33
|
+
}>;
|
|
34
|
+
export {};
|
|
@@ -31,7 +31,12 @@ export type NewsletterFormHydrationTarget = Readonly<{
|
|
|
31
31
|
sourceRef: MailingListSignupSignedSourceRef;
|
|
32
32
|
}> | Readonly<{
|
|
33
33
|
tag: 'preview';
|
|
34
|
+
}> | Readonly<{
|
|
35
|
+
tag: 'unpublished-preview';
|
|
36
|
+
reason: 'unpublished-form' | 'unpublished-settings';
|
|
34
37
|
}>;
|
|
38
|
+
export declare const NEWSLETTER_SIGNUPS_PAUSED_MESSAGE = "We can\u2019t accept signups right now. Please try again later.";
|
|
39
|
+
export declare function newsletterBlockSubmissionMessage(target: NewsletterFormHydrationTarget): string | null;
|
|
35
40
|
type MailingListSignupBlockSourceRef = Extract<MailingListSignupSourceRef, {
|
|
36
41
|
tag: 'block_ref';
|
|
37
42
|
}>;
|
|
@@ -42,7 +47,7 @@ type NewsletterIslandMeta = Readonly<{
|
|
|
42
47
|
siteId?: string;
|
|
43
48
|
apiBaseUrl?: string;
|
|
44
49
|
}>;
|
|
45
|
-
export declare function buildNewsletterDisplay(source: NewsletterFormSourceProps): NewsletterFormDisplay;
|
|
50
|
+
export declare function buildNewsletterDisplay(source: Pick<NewsletterFormSourceProps, 'source' | 'mailingList' | 'targeting' | 'buttonVariant' | 'className'>): NewsletterFormDisplay;
|
|
46
51
|
export type NewsletterFormInteractiveIslandProps = InteractiveIslandProps<NewsletterIslandMeta, 'newsletter-form', typeof newsletterFormBlockRuntime>;
|
|
47
52
|
export declare const newsletterFormBlockRuntime: Readonly<{
|
|
48
53
|
kind: "progressive";
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { NewsletterButtonVariant, NewsletterFieldDef } from './newsletter-form.types';
|
|
3
|
+
/**
|
|
4
|
+
* Newsletter form pieces shared by the SSR render and the hydrated island, so
|
|
5
|
+
* both produce the same markup.
|
|
6
|
+
*
|
|
7
|
+
* Labels are visually hidden: every field has a placeholder, and a visible
|
|
8
|
+
* "Email *" label over a single field reads like a generic form. Screen
|
|
9
|
+
* readers still get the label.
|
|
10
|
+
*/
|
|
11
|
+
export declare const TOPIC_CHOICE_FIELD_ID = "mailingListChoice";
|
|
12
|
+
type FieldState = Readonly<{
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
error?: string | null;
|
|
15
|
+
}>;
|
|
16
|
+
/** Splits the preset's fields into the email (joined with the button) and the rest. */
|
|
17
|
+
export declare function partitionNewsletterFields(fields: readonly NewsletterFieldDef[]): Readonly<{
|
|
18
|
+
email: NewsletterFieldDef | null;
|
|
19
|
+
extra: readonly NewsletterFieldDef[];
|
|
20
|
+
}>;
|
|
21
|
+
export declare function NewsletterExtraField({ field, disabled, error, }: Readonly<{
|
|
22
|
+
field: NewsletterFieldDef;
|
|
23
|
+
}> & FieldState): React.ReactElement;
|
|
24
|
+
/** The email field and submit button sharing one input-styled shell. */
|
|
25
|
+
export declare function NewsletterEmailEntry({ field, buttonVariant, buttonLabel, disabled, error, }: Readonly<{
|
|
26
|
+
field: NewsletterFieldDef;
|
|
27
|
+
buttonVariant: NewsletterButtonVariant;
|
|
28
|
+
buttonLabel: string;
|
|
29
|
+
}> & FieldState): React.ReactElement;
|
|
30
|
+
/**
|
|
31
|
+
* The submit action: joined to the email field when the preset has one
|
|
32
|
+
* (every current preset does), otherwise a plain themed button.
|
|
33
|
+
*/
|
|
34
|
+
export declare function NewsletterSubmitRow({ emailField, buttonVariant, buttonLabel, disabled, error, }: Readonly<{
|
|
35
|
+
emailField: NewsletterFieldDef | null;
|
|
36
|
+
buttonVariant: NewsletterButtonVariant;
|
|
37
|
+
buttonLabel: string;
|
|
38
|
+
}> & FieldState): React.ReactElement;
|
|
39
|
+
/** Visitor-chosen topics as toggle chips. Real checkboxes underneath. */
|
|
40
|
+
export declare function NewsletterTopicChips({ choices, disabled, error, }: Readonly<{
|
|
41
|
+
choices: readonly Readonly<{
|
|
42
|
+
id: string;
|
|
43
|
+
label: string;
|
|
44
|
+
}>[];
|
|
45
|
+
}> & FieldState): React.ReactElement;
|
|
46
|
+
export {};
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { MailingListGlobalForm, MailingListPlacementTargeting, MailingListRuntimeContext, MailingListSignupSourceRef } from '../../../../../core/src/index';
|
|
7
7
|
import type { BlockButtonRole } from '../../constants/buttonRoles';
|
|
8
|
+
import type { NewsletterBlockSubmission } from './newsletter-form.block-submission';
|
|
8
9
|
export type NewsletterPreset = MailingListGlobalForm['fields']['preset'];
|
|
9
10
|
export type NewsletterFieldDef = {
|
|
10
11
|
id: string;
|
|
@@ -33,7 +34,7 @@ type NewsletterFormCommonProps = {
|
|
|
33
34
|
type BlockNewsletterFormSource = Readonly<{
|
|
34
35
|
source: 'block';
|
|
35
36
|
blockId?: string | null;
|
|
36
|
-
|
|
37
|
+
newsletterBlockSubmission: NewsletterBlockSubmission;
|
|
37
38
|
}>;
|
|
38
39
|
type SignedFooterNewsletterFormSource = Readonly<{
|
|
39
40
|
source: 'signed-footer';
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
+
import type { ThemeColorToken } from '../../../../theme-core/src/tokens/index';
|
|
2
3
|
import type { ConditionalAuthoringPresence, NodeDefinition } from "../node";
|
|
3
4
|
import { bindingSchema } from "../node";
|
|
4
5
|
import { type ThemeTokens } from "../theme";
|
|
5
6
|
import type { TransformRegistry, RouteMap, PageIdentifierMap, EntryIdentifierMap } from "../transforms";
|
|
6
7
|
import type { ResolveImageUrlContext } from "./nodes/media";
|
|
8
|
+
import type { NewsletterBlockSubmission } from './nodes/newsletter-form.block-submission';
|
|
7
9
|
export type ViewModel = Record<string, unknown>;
|
|
8
10
|
export type ComponentRegistry = Record<string, React.ElementType>;
|
|
9
11
|
export type PreviewTextFieldConstraints = Readonly<{
|
|
@@ -23,6 +25,7 @@ export type ResolverContext = {
|
|
|
23
25
|
registry: ComponentRegistry;
|
|
24
26
|
transforms?: TransformRegistry;
|
|
25
27
|
theme?: ThemeTokens;
|
|
28
|
+
proseHoverCandidate?: ThemeColorToken;
|
|
26
29
|
routes?: RouteMap;
|
|
27
30
|
/** Page identifier -> routeId lookup for { kind: 'page' } links */
|
|
28
31
|
pagesByIdentifier?: PageIdentifierMap;
|
|
@@ -30,7 +33,7 @@ export type ResolverContext = {
|
|
|
30
33
|
entriesByIdentifier?: EntryIdentifierMap;
|
|
31
34
|
pathBase?: string;
|
|
32
35
|
blockId?: string | null;
|
|
33
|
-
|
|
36
|
+
newsletterBlockSubmission?: NewsletterBlockSubmission;
|
|
34
37
|
blockKind?: string;
|
|
35
38
|
blockContent?: unknown;
|
|
36
39
|
blockBindings?: Record<string, unknown>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
type CheckboxChoiceProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'className'> & Readonly<{
|
|
3
|
+
label: React.ReactNode;
|
|
4
|
+
/**
|
|
5
|
+
* `row` for options and plain checkbox fields. `tile` for agreements the
|
|
6
|
+
* customer must accept (booking consent, consent fields): a bordered,
|
|
7
|
+
* fully clickable panel that tints when ticked.
|
|
8
|
+
*/
|
|
9
|
+
presentation?: 'row' | 'tile';
|
|
10
|
+
className?: string;
|
|
11
|
+
}>;
|
|
12
|
+
/**
|
|
13
|
+
* The customer-facing checkbox every block renders. Styling comes from the
|
|
14
|
+
* theme's input CSS (`.form-check`, `.form-checkbox`), so it follows each
|
|
15
|
+
* site's input colours, borders and corners.
|
|
16
|
+
*/
|
|
17
|
+
export declare function CheckboxChoice({ label, presentation, className, ...inputProps }: CheckboxChoiceProps): React.ReactElement;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { BookingMailingListNote as BookingSignupNote } from '../../../../../core/src/index';
|
|
2
|
+
export declare const MAILING_LIST_CONFIRMATION_MESSAGE = "Please check your inbox to confirm your signup.";
|
|
3
|
+
export declare function getBookingMailingListNoteCopy(note: BookingSignupNote, context: 'booking' | 'waitlist'): Readonly<{
|
|
4
|
+
title: string;
|
|
5
|
+
detail: string | null;
|
|
6
|
+
}>;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { resolveSurfaceForeground, type ResolvedSurfaceForeground } from '../../../../../../theme-core/src/surfaces/index';
|
|
2
|
-
import type { ThemeHeader } from '../../../../../../theme-core/src/schema';
|
|
2
|
+
import type { ThemeFooter, ThemeHeader } from '../../../../../../theme-core/src/schema';
|
|
3
|
+
import type { ThemeColorToken } from '../../../../../../theme-core/src/tokens/index';
|
|
3
4
|
import type { TransformContext } from '../core';
|
|
4
|
-
export declare function resolveHeaderLeafTextColor(header: Partial<ThemeHeader> | undefined): NonNullable<ThemeHeader['textColor']>;
|
|
5
5
|
export declare function resolveHeaderRootForeground(header: Partial<ThemeHeader> | undefined, palette: Parameters<typeof resolveSurfaceForeground>[1], isTransparent: boolean): ResolvedSurfaceForeground;
|
|
6
|
+
export declare function resolveFooterRootForeground(footer: Partial<ThemeFooter> | undefined, palette: Parameters<typeof resolveSurfaceForeground>[1], proseHoverCandidate?: ThemeColorToken): ResolvedSurfaceForeground;
|
|
6
7
|
export declare function resolveSurfaceForegroundStyles(value: unknown, context: TransformContext, options?: Readonly<{
|
|
7
8
|
fallbackToken?: string;
|
|
8
9
|
}>): Record<string, string>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { z } from "zod";
|
|
2
2
|
import type { ThemeTokens } from "../../theme";
|
|
3
3
|
import type { ButtonSystem } from "../../../../../theme-core/src/buttons/index";
|
|
4
|
+
import type { ThemeColorToken } from "../../../../../theme-core/src/tokens/index";
|
|
4
5
|
type BivariantCallback<TArgs extends unknown[], TResult> = {
|
|
5
6
|
bivarianceHack(...args: TArgs): TResult;
|
|
6
7
|
}["bivarianceHack"];
|
|
@@ -20,6 +21,7 @@ export type TransformContext = {
|
|
|
20
21
|
theme: ThemeTokens & Readonly<{
|
|
21
22
|
buttons?: ButtonSystem;
|
|
22
23
|
}>;
|
|
24
|
+
proseHoverCandidate?: ThemeColorToken;
|
|
23
25
|
locale?: string;
|
|
24
26
|
stage?: "preview" | "published";
|
|
25
27
|
/**
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { type
|
|
2
|
+
import { type ThemeHeader } from '../../../../../theme-core/src/schema';
|
|
3
3
|
import { type TransformDefinition } from './core';
|
|
4
|
-
import { resolveSurfaceForeground, type ResolvedSurfaceForeground } from '../../../../../theme-core/src/surfaces/index';
|
|
5
4
|
declare const headerLogoClassSchema: z.ZodObject<{
|
|
6
5
|
base: z.ZodOptional<z.ZodString>;
|
|
7
6
|
}, z.core.$strip>;
|
|
@@ -42,7 +41,6 @@ export declare function resolveHeaderVisualStyles(header: Partial<ThemeHeader> |
|
|
|
42
41
|
readonly backgroundToken: "transparent";
|
|
43
42
|
readonly isTransparent: true;
|
|
44
43
|
};
|
|
45
|
-
export declare function resolveFooterRootForeground(footer: Partial<ThemeFooter> | undefined, palette: Parameters<typeof resolveSurfaceForeground>[1]): ResolvedSurfaceForeground;
|
|
46
44
|
export declare const headerRootClassTransform: TransformDefinition<HeaderRootOptions>;
|
|
47
45
|
declare const footerRootClassSchema: z.ZodObject<{
|
|
48
46
|
base: z.ZodOptional<z.ZodString>;
|
|
@@ -21,6 +21,7 @@ export { useUISelector } from './ui/useUISelector';
|
|
|
21
21
|
export { EditorUiStoreProvider, useEditorUiStore, useEditorUiStoreInstance, useOptionalEditorUiStoreInstance, createEditorUiStore, } from './ui/editorUiStore';
|
|
22
22
|
export type { ActivePreviewField, EditorUiStoreInstance, EditorUiState, EditorPreviewInspectorStore, EditorLinkedEntrySnapshot, PreviewDesignRow, PreviewDesignOpenRequest, PreviewEditorOpenIntent, PreviewInspection, PreviewSidebarTab, ViewportMode, ViewportWidth, ViewportState, ZoomLevel, } from './ui/editorUiStore';
|
|
23
23
|
export { PreviewTextEditor } from './primitives/PreviewTextEditor';
|
|
24
|
+
export { PREVIEW_EDITABLE_OUTLINE, PREVIEW_EDITABLE_OUTLINE_OFFSET, } from './primitives/previewEditableOutline';
|
|
24
25
|
export { PreviewInlineTextEditor } from './primitives/PreviewInlineTextEditor';
|
|
25
26
|
export { PreviewRichTextEditor } from './primitives/PreviewRichTextEditor';
|
|
26
27
|
export { recordsEqual as editorValuesEqual } from './ui/stores/utils';
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { NormalizedEditorBlockItem } from './editorSnapshot';
|
|
2
|
+
export declare function normalizedBlockEqual(left: NormalizedEditorBlockItem, right: NormalizedEditorBlockItem): boolean;
|
|
3
|
+
export declare function normalizedBlocksEqual(left: readonly NormalizedEditorBlockItem[], right: readonly NormalizedEditorBlockItem[]): boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { unsafeAsEditorBlockId, unsafeAsEditorBlockValues, unsafeAsEditorContentValues, unsafeAsEditorEntryId, unsafeAsEditorMetadataValues, unsafeAsEditorPageId, unsafeAsEditorSiteId, type EditorBlockBaselineInput, type EditorBlockId, type EditorBlockPublishedBaselineInput, type EditorDraftBlockBaselineUpdateMetaInput, type EditorDraftBlockInitMetaInput, type EditorBlockValues, type EditorContentValues, type EditorEntryId, type EditorMetadataValues, type EditorPageId, type EditorPersistedBlock, type EditorSiteId, type EditorStructuralCommand, type EditorStructuralDraftSnapshot, type EditorSyncState, type EditorValueRecord } from '../../../core/src/index';
|
|
1
|
+
import { unsafeAsEditorBlockId, unsafeAsEditorBlockValues, unsafeAsEditorContentValues, unsafeAsEditorEntryId, unsafeAsEditorMetadataValues, unsafeAsEditorPageId, unsafeAsEditorSiteId, type EditorBlockBaselineInput, type EditorBlockId, type EditorBlockPublishedBaselineInput, type EditorDraftBlockBaselineUpdateMetaInput, type EditorDraftBlockInitMetaInput, type EditorBlockValues, type EditorContentValues, type EditorEntryId, type EditorMetadataValues, type EditorPageId, type EditorPersistedBlock, type BlockContentIdentity, type EditorSiteId, type EditorStructuralCommand, type EditorStructuralDraftSnapshot, type EditorSyncState, type EditorValueRecord } from '../../../core/src/index';
|
|
2
2
|
import { type LinkedContentEntryId, type LinkedContentTypeKey } from '../linkedEntries/domain';
|
|
3
3
|
export { unsafeAsEditorBlockId, unsafeAsEditorBlockValues, unsafeAsEditorContentValues, unsafeAsEditorEntryId, unsafeAsEditorMetadataValues, unsafeAsEditorPageId, unsafeAsEditorSiteId, type EditorBlockId, type EditorBlockValues, type EditorContentValues, type EditorEntryId, type EditorMetadataValues, type EditorPageId, type EditorSiteId, };
|
|
4
4
|
export type EditorCommand = {
|
|
@@ -119,9 +119,8 @@ export type DraftBlockInitMetaInput = EditorDraftBlockInitMetaInput;
|
|
|
119
119
|
export type DraftBlockBaselineUpdateMetaInput = EditorDraftBlockBaselineUpdateMetaInput;
|
|
120
120
|
export type DraftBlockBaselineInput = EditorBlockBaselineInput;
|
|
121
121
|
export type BlockPublishedBaselineInput = EditorBlockPublishedBaselineInput;
|
|
122
|
-
export type EditorBlockItem = Readonly<{
|
|
122
|
+
export type EditorBlockItem = Partial<BlockContentIdentity> & Readonly<{
|
|
123
123
|
id?: string | null;
|
|
124
|
-
contentVersionId?: string | null;
|
|
125
124
|
kind: string;
|
|
126
125
|
content?: EditorValueRecord | null;
|
|
127
126
|
orderIndex?: number | null;
|
|
@@ -131,8 +130,7 @@ export type EditorBlockItem = Readonly<{
|
|
|
131
130
|
purpose?: string | null;
|
|
132
131
|
optimisticHash?: string | null;
|
|
133
132
|
}>;
|
|
134
|
-
type NormalizedEditorBlockBase = Readonly<{
|
|
135
|
-
contentVersionId: string | null;
|
|
133
|
+
type NormalizedEditorBlockBase = BlockContentIdentity & Readonly<{
|
|
136
134
|
kind: string;
|
|
137
135
|
content: EditorBlockValues | null;
|
|
138
136
|
orderIndex: number | null;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Brand } from './branded';
|
|
2
|
+
import type { BlockContentIdentity } from './block-content-identity';
|
|
2
3
|
export type EditorSiteId = Brand<string, 'EditorSiteId'>;
|
|
3
4
|
export type EditorPageId = Brand<string, 'EditorPageId'>;
|
|
4
5
|
export type EditorEntryId = Brand<string, 'EditorEntryId'>;
|
|
@@ -61,14 +62,8 @@ export type EditorBlockPublishedBaselineInput = Readonly<{
|
|
|
61
62
|
kind?: string;
|
|
62
63
|
publishedContent?: EditorBlockBaselineInput;
|
|
63
64
|
}>;
|
|
64
|
-
export type EditorPersistedBlock = Readonly<{
|
|
65
|
+
export type EditorPersistedBlock = BlockContentIdentity & Readonly<{
|
|
65
66
|
id: EditorBlockId;
|
|
66
|
-
/**
|
|
67
|
-
* The content version the block was loaded with. Runtime blocks that
|
|
68
|
-
* submit to the API (newsletter signup) cite it so the server can verify
|
|
69
|
-
* the placement, so the editor must carry it rather than strip it.
|
|
70
|
-
*/
|
|
71
|
-
contentVersionId?: string | null;
|
|
72
67
|
kind: string;
|
|
73
68
|
content: EditorBlockValues | null;
|
|
74
69
|
orderIndex: number | null;
|
|
@@ -30,10 +30,10 @@ export { tryAsync } from './try-async';
|
|
|
30
30
|
export * from './narrow-result';
|
|
31
31
|
export * from './non-empty-array';
|
|
32
32
|
export * from './editor-state';
|
|
33
|
+
export * from './block-content-identity';
|
|
33
34
|
export * from './sensitive-collection';
|
|
34
35
|
export * from './assertNever';
|
|
35
36
|
export * from './participants';
|
|
36
|
-
export * from './participant-identity';
|
|
37
37
|
export * from './public-url-validation';
|
|
38
38
|
export * from './public-profile';
|
|
39
39
|
export * from './public-experience';
|
|
@@ -75,5 +75,6 @@ export * from './public-read-cache-contract';
|
|
|
75
75
|
export * from './booking-verticals';
|
|
76
76
|
export * from './event-series-behaviour';
|
|
77
77
|
export * from './navigation-locations';
|
|
78
|
+
export * from './navigation-portal-labels';
|
|
78
79
|
export * from './event-preset-vocabulary';
|
|
79
80
|
export * from './event-catalogue';
|
|
@@ -6,6 +6,7 @@ export type MailingListRuntimeContext = Readonly<{
|
|
|
6
6
|
}> | Readonly<{
|
|
7
7
|
tag: 'configured';
|
|
8
8
|
revision: MailingListSetupRevision;
|
|
9
|
+
bookingSignup: BookingSignupOffer;
|
|
9
10
|
form: MailingListGlobalForm;
|
|
10
11
|
provider: MailingListRuntimeProvider;
|
|
11
12
|
}>;
|
|
@@ -40,3 +41,17 @@ export type MailingListRuntimeContextParseError = Readonly<{
|
|
|
40
41
|
tag: 'invalid_mailing_list_runtime_context';
|
|
41
42
|
}>;
|
|
42
43
|
export declare function parseMailingListRuntimeContext(value: unknown): Result<MailingListRuntimeContext, MailingListRuntimeContextParseError>;
|
|
44
|
+
export type BookingSignupOffer = Readonly<{
|
|
45
|
+
tag: 'offered';
|
|
46
|
+
}> | Readonly<{
|
|
47
|
+
tag: 'unavailable';
|
|
48
|
+
reason: 'disabled' | 'fields' | 'destination';
|
|
49
|
+
}>;
|
|
50
|
+
/** Destination facts are resolved once by the provider adapter, before projection. */
|
|
51
|
+
export declare function planBookingSignupOffer(setup: Readonly<{
|
|
52
|
+
bookingOptInEnabled: boolean;
|
|
53
|
+
form: MailingListGlobalForm;
|
|
54
|
+
}>, destination: 'available' | 'unavailable'): BookingSignupOffer;
|
|
55
|
+
export declare function resolveBookingSignupOffer(context: MailingListRuntimeContext | undefined, siteName: string | undefined): Readonly<{
|
|
56
|
+
siteName: string;
|
|
57
|
+
}> | null;
|
|
@@ -73,6 +73,7 @@ export type MailingListSiteSetup = Readonly<{
|
|
|
73
73
|
tag: 'configured';
|
|
74
74
|
siteId: SiteId;
|
|
75
75
|
revision: MailingListSetupRevision;
|
|
76
|
+
bookingOptInEnabled: boolean;
|
|
76
77
|
form: MailingListGlobalForm;
|
|
77
78
|
provider: ConfiguredMailingListProvider;
|
|
78
79
|
}>;
|
|
@@ -111,6 +112,7 @@ export declare function planMailingListFieldCompatibility(input: Readonly<{
|
|
|
111
112
|
form: MailingListGlobalForm;
|
|
112
113
|
destinations: readonly MailingListDestinationFieldRequirements[];
|
|
113
114
|
}>): MailingListFieldCompatibilityPlan;
|
|
115
|
+
export declare function resolveRequiredGlobalFields(fields: MailingListGlobalFields): readonly MailingListProfileField[];
|
|
114
116
|
export type MailingListSetupSwitchPlan = Readonly<{
|
|
115
117
|
tag: 'activate';
|
|
116
118
|
affectedPlacementCount: 0;
|
|
@@ -29,6 +29,10 @@ export type MailingListSignupSource = Readonly<{
|
|
|
29
29
|
tag: 'sdk_footer_block';
|
|
30
30
|
blockId: MailingListSdkFooterBlockId;
|
|
31
31
|
contentHash: MailingListSdkContentHash;
|
|
32
|
+
}> | Readonly<{
|
|
33
|
+
tag: 'booking';
|
|
34
|
+
kind: 'event' | 'appointment';
|
|
35
|
+
attemptId: string;
|
|
32
36
|
}>;
|
|
33
37
|
/** Public proof of which published placement owns a signup request. */
|
|
34
38
|
export type MailingListSignupSourceRef = Readonly<{
|
|
@@ -49,7 +53,9 @@ export type MailingListSignupTokenSource = Readonly<{
|
|
|
49
53
|
blockId: MailingListSdkFooterBlockId;
|
|
50
54
|
contentHash: MailingListSdkContentHash;
|
|
51
55
|
}>;
|
|
52
|
-
export declare function buildMailingListSignupBlockSourceRef(blockId: unknown, contentVersionId: unknown): MailingListSignupSourceRef
|
|
56
|
+
export declare function buildMailingListSignupBlockSourceRef(blockId: unknown, contentVersionId: unknown): Extract<MailingListSignupSourceRef, {
|
|
57
|
+
tag: 'block_ref';
|
|
58
|
+
}> | null;
|
|
53
59
|
type MailingListSignupProfileBase = Readonly<{
|
|
54
60
|
email: NormalizedSubscriberEmail;
|
|
55
61
|
phone: Readonly<{
|
|
@@ -221,4 +227,6 @@ export type ExternalSignupConsentRecord = (ExternalSignupConsentRecordBase & Rea
|
|
|
221
227
|
}>;
|
|
222
228
|
confirmation: BrevoConfirmation;
|
|
223
229
|
}>);
|
|
230
|
+
/** Absence of a note means booking proceeds without a signup message. */
|
|
231
|
+
export type BookingMailingListNote = 'confirmation_required' | 'not_confirmed';
|
|
224
232
|
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a customer sign-in link in a site's menu says when the site hasn't set
|
|
3
|
+
* its own text. The site renderer falls back to these, and the dashboard's
|
|
4
|
+
* menu editor shows them, so what an editor sees is what visitors get.
|
|
5
|
+
*/
|
|
6
|
+
export declare const PORTAL_NAV_DEFAULT_LABELS: {
|
|
7
|
+
readonly loggedOut: "Login";
|
|
8
|
+
readonly loggedIn: "My Account";
|
|
9
|
+
};
|
|
@@ -115,30 +115,6 @@ export type ParticipantRosterProjection = Readonly<{
|
|
|
115
115
|
slots: readonly ParticipantRosterSlot[];
|
|
116
116
|
issues: readonly ParticipantRosterReconciliationIssue[];
|
|
117
117
|
}>;
|
|
118
|
-
export type ExistingParticipantByEmail = Readonly<{
|
|
119
|
-
participantId: ParticipantId;
|
|
120
|
-
email: ParticipantEmail;
|
|
121
|
-
}>;
|
|
122
|
-
export type ParticipantSubjectResolution = {
|
|
123
|
-
kind: 'create_participant';
|
|
124
|
-
slotKey: ParticipantSlotKey;
|
|
125
|
-
email: ParticipantEmail;
|
|
126
|
-
displayName: string | null;
|
|
127
|
-
phone: string | null;
|
|
128
|
-
} | {
|
|
129
|
-
kind: 'reuse_participant_by_site_email';
|
|
130
|
-
slotKey: ParticipantSlotKey;
|
|
131
|
-
email: ParticipantEmail;
|
|
132
|
-
participantId: ParticipantId;
|
|
133
|
-
} | {
|
|
134
|
-
kind: 'staff_managed_slot';
|
|
135
|
-
slotKey: ParticipantSlotKey;
|
|
136
|
-
} | {
|
|
137
|
-
kind: 'blocked_duplicate_participant_in_booking';
|
|
138
|
-
slotKey: ParticipantSlotKey;
|
|
139
|
-
email: ParticipantEmail;
|
|
140
|
-
conflictingSlotKeys: readonly ParticipantSlotKey[];
|
|
141
|
-
};
|
|
142
118
|
type ParticipantContactInput = Readonly<{
|
|
143
119
|
name: string | null;
|
|
144
120
|
email: string | null;
|
|
@@ -166,13 +142,6 @@ export type EventSeriesRegistrationParticipantProjectionInput = Readonly<{
|
|
|
166
142
|
customerId: CustomerId;
|
|
167
143
|
};
|
|
168
144
|
}>;
|
|
169
|
-
export type EventSeriesSessionAttendanceParticipantProjectionInput = Readonly<{
|
|
170
|
-
attendeeId: AttendeeId;
|
|
171
|
-
registrationId: EventSeriesRegistrationId;
|
|
172
|
-
enrollmentSlot: ParticipantParticipationLinkSlot<Extract<ParticipantParticipation, {
|
|
173
|
-
kind: 'event_series_registration';
|
|
174
|
-
}>>;
|
|
175
|
-
}>;
|
|
176
145
|
export type SingleSubjectParticipantRosterTarget = Readonly<{
|
|
177
146
|
kind: 'appointment';
|
|
178
147
|
appointmentId: AppointmentId;
|
|
@@ -211,16 +180,9 @@ export declare function projectEventSeriesRegistrationParticipantSlot(input: Eve
|
|
|
211
180
|
}>>;
|
|
212
181
|
export declare function projectSingleSubjectParticipantRoster(input: SingleSubjectParticipantRosterProjectionInput): ParticipantRosterProjection;
|
|
213
182
|
export declare function buildSingleSubjectParticipantPersistenceIntent(input: SingleSubjectParticipantRosterProjectionInput): SingleSubjectParticipantPersistenceIntent;
|
|
214
|
-
export declare function projectEventSeriesSessionAttendanceParticipantSlot(input: EventSeriesSessionAttendanceParticipantProjectionInput): ParticipantParticipationLinkSlot<Extract<ParticipantParticipation, {
|
|
215
|
-
kind: 'event_series_session_attendance';
|
|
216
|
-
}>>;
|
|
217
183
|
export declare function projectEventRegistrationParticipantRoster(input: EventRegistrationParticipantProjectionInput): ParticipantRosterProjection;
|
|
218
184
|
export declare function reconcileParticipantRoster(input: {
|
|
219
185
|
expectedCount: ParticipantCount;
|
|
220
186
|
slots: readonly ParticipantRosterSlot[];
|
|
221
187
|
}): readonly ParticipantRosterReconciliationIssue[];
|
|
222
|
-
export declare function planParticipantSubjectResolution(input: {
|
|
223
|
-
projection: ParticipantRosterProjection;
|
|
224
|
-
existingParticipantsByEmail: readonly ExistingParticipantByEmail[];
|
|
225
|
-
}): readonly ParticipantSubjectResolution[];
|
|
226
188
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type PublicEventBookingClosedReason = 'occurrence_cancelled' | 'occurrence_completed' | 'series_draft' | 'series_cancelled' | 'series_completed' | 'series_archived' | 'parent_archived' | 'parent_inconsistent' | '
|
|
1
|
+
export type PublicEventBookingClosedReason = 'occurrence_cancelled' | 'occurrence_completed' | 'series_draft' | 'series_cancelled' | 'series_completed' | 'series_archived' | 'parent_archived' | 'parent_inconsistent' | 'already_started' | 'enrollment_closed';
|
|
2
2
|
/** Public wire projection; persisted facts remain authoritative. */
|
|
3
3
|
export type PublicEventBookingAvailability = Readonly<{
|
|
4
4
|
kind: 'open';
|
|
@@ -6,3 +6,22 @@ export type PublicEventBookingAvailability = Readonly<{
|
|
|
6
6
|
kind: 'closed';
|
|
7
7
|
reason: PublicEventBookingClosedReason;
|
|
8
8
|
}>;
|
|
9
|
+
/**
|
|
10
|
+
* Why an event's own page is up while bookings are shut.
|
|
11
|
+
*
|
|
12
|
+
* `series_draft` is one reason from the booking decision's point of view, but a
|
|
13
|
+
* visitor standing on the page is owed two different sentences: an event that
|
|
14
|
+
* has never opened will open, and one that was open and was taken offline has
|
|
15
|
+
* closed. The difference is whether the unit has ever been live, which is a
|
|
16
|
+
* persisted fact the public wire deliberately does not carry as a timestamp.
|
|
17
|
+
*
|
|
18
|
+
* This refines `bookingAvailability` rather than replacing it. It is only ever
|
|
19
|
+
* present alongside a closed `series_draft`, so nothing that already reads the
|
|
20
|
+
* availability changes its mind because of it, and booking stays refused
|
|
21
|
+
* wherever it is refused today.
|
|
22
|
+
*/
|
|
23
|
+
export type PublicEventBookingClosedDetail = Readonly<{
|
|
24
|
+
kind: 'opensSoon';
|
|
25
|
+
}> | Readonly<{
|
|
26
|
+
kind: 'paused';
|
|
27
|
+
}>;
|
|
@@ -5,8 +5,10 @@ export type OpeningHoursTime = Brand<string, 'OpeningHoursTime'>;
|
|
|
5
5
|
export type PublicSocialLinkId = Brand<string, 'PublicSocialLinkId'>;
|
|
6
6
|
export declare const publicProfileWeekdays: readonly ["monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday"];
|
|
7
7
|
export type PublicProfileWeekday = (typeof publicProfileWeekdays)[number];
|
|
8
|
-
export declare const knownSocialPlatforms: readonly ["facebook", "instagram", "linkedin", "tiktok", "x", "youtube"];
|
|
8
|
+
export declare const knownSocialPlatforms: readonly ["facebook", "instagram", "linkedin", "tiktok", "whatsapp", "x", "youtube"];
|
|
9
9
|
export type KnownSocialPlatform = (typeof knownSocialPlatforms)[number];
|
|
10
|
+
/** How each platform is named wherever people see it (settings, composer, footer link labels). */
|
|
11
|
+
export declare const knownSocialPlatformLabels: Readonly<Record<KnownSocialPlatform, string>>;
|
|
10
12
|
export type PublicContactDetails = Readonly<{
|
|
11
13
|
kind: 'phone';
|
|
12
14
|
phone: string;
|