@riverbankcms/sdk 0.138.0 → 0.140.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/README.md +12 -16
- package/dist/{PreviewEditorSidebar-BVPur_CU.mjs → PreviewEditorSidebar-CUyTzd5z.mjs} +4 -4
- package/dist/{PreviewEditorUI-DLhWX8oh.mjs → PreviewEditorUI-Agkw4v5i.mjs} +3 -3
- package/dist/{PreviewQueryProvider-BguJY1SW.mjs → PreviewQueryProvider-CN0ewic5.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-Tda6qw4z.mjs → SdkPreviewModeRuntime-DdbeAdS8.mjs} +62 -28
- package/dist/{SiteChromeCustomizeContext-BHFgMjde.mjs → SiteChromeCustomizeContext-CqGOz-Kv.mjs} +8467 -5616
- package/dist/_dts/ai/src/contracts/proposals.d.ts +264 -495
- package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +221 -242
- package/dist/_dts/api/src/accessAdmin.d.ts +74 -104
- package/dist/_dts/api/src/aiEndpoints.d.ts +5 -1
- package/dist/_dts/api/src/authSubmission.d.ts +46 -0
- package/dist/_dts/api/src/billing.d.ts +18 -7
- package/dist/_dts/api/src/billingEndpointDefinitions.d.ts +23 -0
- package/dist/_dts/api/src/billingEndpointTypes.d.ts +26 -0
- package/dist/_dts/api/src/blocks.d.ts +2 -0
- package/dist/_dts/api/src/bookingRecords.d.ts +1 -2
- package/dist/_dts/api/src/commercePortalEndpoints.d.ts +8 -1
- package/dist/_dts/api/src/communications.d.ts +0 -1
- package/dist/_dts/api/src/contentRuntime.d.ts +16 -4
- package/dist/_dts/api/src/endpoints.d.ts +275 -167
- package/dist/_dts/api/src/event-destination-policy.d.ts +2 -1
- package/dist/_dts/api/src/footerSettings.d.ts +10 -10
- package/dist/_dts/api/src/index.d.ts +11 -10
- 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/mailchimpIntegration.d.ts +2 -59
- package/dist/_dts/api/src/mailingListIntegration.d.ts +123 -0
- package/dist/_dts/api/src/navigation/dashboardSettingsNav.d.ts +1 -1
- package/dist/_dts/api/src/navigation/locations.d.ts +1 -0
- package/dist/_dts/api/src/navigation/types.d.ts +1 -1
- package/dist/_dts/api/src/navigation.d.ts +1 -26
- package/dist/_dts/api/src/newsletterEndpointDefinitions.d.ts +109 -2
- package/dist/_dts/api/src/onboarding/confirmationResend.d.ts +25 -0
- package/dist/_dts/api/src/onboarding/surfaceData.d.ts +185 -0
- package/dist/_dts/api/src/privacyPolicy.d.ts +74 -2
- package/dist/_dts/api/src/publicBookingAvailabilityEndpointDefinitions.d.ts +14 -6
- package/dist/_dts/api/src/publicEventEndpointDefinitions.d.ts +1 -1
- package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +1 -0
- package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +11 -3
- package/dist/_dts/api/src/publicExperience/newsletterEndpoints.d.ts +2 -4
- package/dist/_dts/api/src/publicExperience/sharedTypes.d.ts +9 -49
- package/dist/_dts/api/src/publicOnboardingAttemptEndpointDefinitions.d.ts +65 -0
- package/dist/_dts/api/src/publicReadEndpointDefinitions.d.ts +73 -0
- package/dist/_dts/api/src/saveOutcome.d.ts +20 -0
- package/dist/_dts/api/src/schemas/site-api-keys.d.ts +1 -1
- package/dist/_dts/api/src/sdkContracts.d.ts +5 -32
- package/dist/_dts/api/src/sdkPushContracts.d.ts +18 -0
- package/dist/_dts/api/src/sdkThemeWire.d.ts +46 -46
- package/dist/_dts/api/src/settings/permissions.d.ts +12 -0
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +9 -34
- package/dist/_dts/api/src/siteOnboarding.d.ts +84 -228
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +3 -13
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +3 -1
- package/dist/_dts/api/src/siteSettings.d.ts +38 -6
- package/dist/_dts/api/src/types.d.ts +78 -77
- package/dist/_dts/api/src/wholeSeriesRuns.d.ts +2 -37
- package/dist/_dts/billing/src/membership/index.d.ts +17 -7
- package/dist/_dts/billing/src/plans/display.d.ts +15 -0
- package/dist/_dts/billing/src/plans/registry.d.ts +2 -0
- package/dist/_dts/billing/src/plans/standing.d.ts +19 -0
- package/dist/_dts/billing/src/plans/types.d.ts +4 -7
- package/dist/_dts/billing/src/site-arrangements.d.ts +14 -3
- package/dist/_dts/billing/src/subscriptions/evidence.d.ts +12 -0
- package/dist/_dts/billing/src/subscriptions/standingEvidence.d.ts +31 -0
- package/dist/_dts/billing/src/subscriptions/store.d.ts +23 -5
- package/dist/_dts/blocks/src/PageRenderer.d.ts +6 -15
- package/dist/_dts/blocks/src/client.d.ts +1 -1
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +48 -20
- package/dist/_dts/blocks/src/pageRenderAdmission.d.ts +2 -0
- package/dist/_dts/blocks/src/pageRendererContracts.d.ts +9 -0
- package/dist/_dts/blocks/src/pageRenderingMode.d.ts +12 -6
- package/dist/_dts/blocks/src/portal/types.d.ts +2 -4
- package/dist/_dts/blocks/src/portal/waitlist-types.d.ts +35 -0
- package/dist/_dts/blocks/src/system/blocks/appointment-services.d.ts +11 -0
- package/dist/_dts/blocks/src/system/blocks/contact-newsletter.d.ts +39 -66
- package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +42 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +4 -0
- package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +39 -114
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/catalogue.d.ts +18 -0
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/fields.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/index.d.ts +4 -0
- package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +7 -13
- package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
- package/dist/_dts/blocks/src/system/data/index.d.ts +4 -4
- package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
- package/dist/_dts/blocks/src/system/data/prefetchBlockData.d.ts +2 -1
- package/dist/_dts/blocks/src/system/data/publicLoaderCachePolicy.d.ts +2 -74
- package/dist/_dts/blocks/src/system/data/types.d.ts +9 -0
- package/dist/_dts/blocks/src/system/fragments/library/newsletterForm.d.ts +33 -100
- package/dist/_dts/blocks/src/system/registry.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +0 -28
- package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +7 -3
- package/dist/_dts/blocks/src/system/runtime/api/types/newsletter.d.ts +5 -15
- package/dist/_dts/blocks/src/system/runtime/api/types/portal.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/waitlist-claims.d.ts +7 -2
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +78 -30
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +39 -15
- package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.state.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarToday.d.ts +22 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/appointment-services.d.ts +94 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationSurface.d.ts +1 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/TicketSelectionStep.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/checkoutRecovery.d.ts +14 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventSourceRecovery.d.ts +56 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +6 -8
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useCheckoutRecovery.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +8 -7
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +12 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventSourceRecovery.d.ts +18 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.client.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +24 -7
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.server.d.ts +4 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +28 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/bookability.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/dates.d.ts +14 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/duration.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/index.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/location.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/quickDates.d.ts +16 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/AgendaEventCard.d.ts +9 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/CalendarDayCell.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/CalendarDayHeaders.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/DayEventsModal.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventModals.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventQuickDates.d.ts +15 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekAgendaView.d.ts +7 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekTimetableView.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/index.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/timetableModel.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/useHydrationReady.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.client.state.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +62 -33
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.submission.d.ts +3 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +14 -31
- package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview-catalogue.d.ts +14 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview-content.d.ts +23 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +4 -2
- package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +2 -6
- package/dist/_dts/blocks/src/system/runtime/shared/index.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/shared/useWaitlistClaim.d.ts +2 -0
- package/dist/_dts/blocks/src/system/transforms/registry/formatting.d.ts +5 -0
- package/dist/_dts/commerce/src/purchase/event-registration-errors.d.ts +4 -0
- package/dist/_dts/commerce/src/purchase/index.d.ts +1 -0
- package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +32 -16
- package/dist/_dts/commerce/src/purchase/stripeCommissionMetadata.d.ts +34 -0
- package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +2 -1
- package/dist/_dts/content-editor/src/footerEngagementDraft.d.ts +6 -24
- package/dist/_dts/content-editor/src/hooks/useBlockAutosave.d.ts +3 -1
- package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +4 -2
- package/dist/_dts/core/src/branded.d.ts +0 -8
- package/dist/_dts/core/src/footer-engagement.d.ts +2 -6
- package/dist/_dts/core/src/index.d.ts +10 -1
- package/dist/_dts/core/src/mailing-list-identifiers.d.ts +21 -0
- package/dist/_dts/core/src/mailing-list-runtime.d.ts +42 -0
- package/dist/_dts/core/src/mailing-list-setup-parser.d.ts +14 -0
- package/dist/_dts/core/src/mailing-list-setup.d.ts +142 -0
- package/dist/_dts/core/src/mailing-list-submission.d.ts +224 -0
- package/dist/_dts/core/src/mailing-list-targeting-parser.d.ts +12 -0
- package/dist/_dts/core/src/mailing-list-targeting.d.ts +93 -0
- package/dist/_dts/core/src/navigation-locations.d.ts +28 -0
- package/dist/_dts/core/src/participants.d.ts +2 -29
- package/dist/_dts/core/src/public-experience.d.ts +4 -0
- package/dist/_dts/core/src/public-profile.d.ts +35 -1
- package/dist/_dts/core/src/public-read-cache-contract.d.ts +45 -0
- package/dist/_dts/core/src/site-route-target.d.ts +9 -2
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +797 -954
- package/dist/_dts/editor-blocks/src/widgets/index.d.ts +1 -0
- package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/MailingListGlobalSettingsSummary.d.ts +10 -0
- package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/MailingListTargetingField.d.ts +12 -0
- package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/context.d.ts +14 -0
- package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/index.d.ts +3 -0
- package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/loaders.d.ts +7 -0
- package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/targetingState.d.ts +19 -0
- package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +1 -0
- package/dist/_dts/sdk/src/client/publicAppointmentReadOperations.d.ts +12 -0
- package/dist/_dts/sdk/src/client/publicEventReadOperations.d.ts +2 -1
- package/dist/_dts/sdk/src/client/publicLoaderCacheAccess.d.ts +11 -4
- package/dist/_dts/sdk/src/config/content-types.d.ts +3 -13
- package/dist/_dts/sdk/src/config/content-validation.d.ts +5 -8
- package/dist/_dts/sdk/src/constants.d.ts +3 -3
- package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +12 -31
- package/dist/_dts/sdk/src/navigation/index.d.ts +11 -29
- package/dist/_dts/sdk/src/next/index.d.ts +4 -4
- package/dist/_dts/sdk/src/prebuild/types.d.ts +1 -5
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +44 -33
- package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +5 -0
- package/dist/_dts/sdk/src/rendering/client.d.ts +3 -20
- package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +5 -0
- package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +4 -0
- package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +8 -1
- package/dist/_dts/sdk/src/rendering/helpers/templateContent.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/index.d.ts +1 -1
- package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/accordions/types.d.ts +3 -3
- package/dist/_dts/theme-core/src/cards/types.d.ts +21 -21
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/header/interactionPalette.d.ts +8 -2
- package/dist/_dts/theme-core/src/header/legacyHeaderVariant.d.ts +2 -2
- package/dist/_dts/theme-core/src/hosted-booking-appearance.d.ts +41 -0
- package/dist/_dts/theme-core/src/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/inputs/types.d.ts +2 -2
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +54 -54
- package/dist/_dts/theme-core/src/runtime/buildThemeRuntime.d.ts +0 -1
- package/dist/_dts/theme-core/src/runtime/buildThemeRuntimeFromBridge.d.ts +1 -4
- package/dist/_dts/theme-core/src/schema.d.ts +84 -84
- package/dist/_dts/theme-core/src/shared/componentStyles.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
- package/dist/_dts/theme-core/src/surfaces/foregroundInteraction.d.ts +77 -0
- package/dist/_dts/theme-core/src/surfaces/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/tokens/tokens.d.ts +7 -0
- package/dist/_dts/theme-core/src/typography/generateTypographyCss.d.ts +2 -2
- package/dist/_dts/ui/src/badge.d.ts +1 -1
- package/dist/_dts/ui/src/callout.d.ts +1 -1
- package/dist/_dts/ui/src/lib/use-delayed-flag.d.ts +9 -0
- package/dist/_dts/ui/src/pending-button.d.ts +10 -0
- package/dist/client/{BookingConsentAgreement-DQUik1Mx.mjs → BookingConsentAgreement-CuKa82V4.mjs} +4 -4
- package/dist/client/{DiscountCodeDisclosure-CU67Q4vH.mjs → DiscountCodeDisclosure-BbYieKWB.mjs} +1 -1
- package/dist/client/{EventCombined.client-a02TXUgg.mjs → EventCombined.client-LTfR1Aby.mjs} +444 -200
- package/dist/client/{EventListing.client-99qx7jFl.mjs → EventListing.client-DUHpYSuo.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-CWzcq73L.mjs → LeafletStaticMap-CHRupL6m.mjs} +1 -1
- package/dist/client/{accordion-D1nb3-Oj.mjs → accordion-6HiIFxNL.mjs} +1 -1
- package/dist/client/{bookingForm-BGrmLhaO.mjs → bookingForm-Dlmid43H.mjs} +7 -7
- package/dist/client/bookings.mjs +368 -142
- package/dist/client/{carousel-DSmOx3ad.mjs → carousel-DmkZRRq_.mjs} +2 -2
- package/dist/client/{carousel.client-59G_WMr4.mjs → carousel.client-DQTjCVQT.mjs} +1 -1
- package/dist/client/{cart-COWeOIUk.mjs → cart-CIC24330.mjs} +3 -3
- package/dist/client/{checkout-CeysaIJK.mjs → checkout-D1Zw9imo.mjs} +3 -3
- package/dist/client/{checkoutUrls-BuseL0dw.mjs → checkoutUrls-FL6lRkrt.mjs} +1 -1
- package/dist/client/client.mjs +5017 -2258
- package/dist/client/{colorStyles-CrxJrPjJ.mjs → colorStyles-3013aRAY.mjs} +3 -1
- package/dist/client/{context-DBzX85Xc.mjs → context-Cy1OayHx.mjs} +9 -21
- package/dist/client/{dates-DCYhZBlW.mjs → dates-aDcfoLHr.mjs} +21 -3
- package/dist/client/{eventCalendar-BgsN73Ul.mjs → eventCalendar-FQxMPAjf.mjs} +81 -79
- package/dist/client/{eventCombined-DcZQAMQP.mjs → eventCombined-Dr3ac6Hb.mjs} +3 -3
- package/dist/client/{eventDetails-BWwGJ54l.mjs → eventDetails-D-AzUHFQ.mjs} +4 -4
- package/dist/client/{eventListing-DqYqV8vp.mjs → eventListing-B3XxBf3i.mjs} +3 -3
- package/dist/client/{eventRegistration-DQGDgu_e.mjs → eventRegistration-I6EaokFD.mjs} +543 -155
- package/dist/client/{form-ClfpasVT.mjs → form-BbWckVWY.mjs} +3 -3
- package/dist/client/{headerSection-BuOMe98N.mjs → headerSection-C9qU4Y7x.mjs} +2 -2
- package/dist/client/hooks.mjs +1685 -716
- package/dist/client/{locationMap-CEqu_sfa.mjs → locationMap-CLCShvlG.mjs} +3 -3
- package/dist/client/{media-BOHuueS5.mjs → media-DHpfFwd3.mjs} +1 -1
- package/dist/client/newsletterForm-Briukxzi.mjs +444 -0
- package/dist/client/{pricing-xj7MPZlK.mjs → pricing-Copadu-2.mjs} +1 -1
- package/dist/client/{productDetail-vxqTt5Xj.mjs → productDetail-oujlRd-r.mjs} +3 -3
- package/dist/client/{productList-OTdZu8sb.mjs → productList-BRiIRUcd.mjs} +3 -3
- package/dist/client/{propsDecoder-CY9gGEF7.mjs → propsDecoder-CB2KS_ko.mjs} +706 -160
- package/dist/client/rendering/client.mjs +3161 -1226
- package/dist/client/rendering/islands.mjs +19 -19
- package/dist/client/rendering.mjs +4864 -1914
- package/dist/client/{scrollToBlock--BFV6kl-.mjs → scrollToBlock-B1IS1_ua.mjs} +1 -1
- package/dist/client/{shop-CP4YbDL9.mjs → shop-Vn6yNFED.mjs} +6 -6
- package/dist/client/{shop-commerce-APs4XBXE.mjs → shop-commerce-BVTqipYp.mjs} +7 -7
- package/dist/client/{shop-commerce-store-CAVLxLFr.mjs → shop-commerce-store-BVnJVy7v.mjs} +1 -1
- package/dist/client/{shopShared-BnSRrwXI.mjs → shopShared-COIeK77T.mjs} +4 -4
- package/dist/client/{useEventFilters-1a1by4c8.mjs → useEventFilters-DzIUcS9n.mjs} +58 -11
- package/dist/preview-next/before-render.mjs +357 -175
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/keepAlive.mjs +357 -175
- package/dist/preview-next/middleware.mjs +357 -175
- package/dist/{previewAuthStore-BkEgnYPP.mjs → previewAuthStore-Gjb6r6vz.mjs} +357 -175
- package/dist/{sdk-runtime-DwGfsT0S.mjs → sdk-runtime-CnCLvZRv.mjs} +2 -2
- package/dist/{separator-BeqDLneQ.mjs → separator-DKDRJ1oH.mjs} +1 -1
- package/dist/server/components.mjs +3389 -1251
- package/dist/server/config-validation.mjs +2737 -1784
- package/dist/server/config.mjs +2742 -1788
- package/dist/server/data.mjs +1586 -615
- package/dist/server/index.mjs +496 -352
- package/dist/server/navigation.mjs +16 -47
- package/dist/server/next.mjs +3978 -2007
- package/dist/server/page-converter.mjs +1109 -553
- package/dist/server/prebuild.mjs +2 -3
- package/dist/server/rendering/server.mjs +4101 -1951
- package/dist/server/rendering.mjs +3416 -1259
- package/dist/server/routing.mjs +1869 -786
- package/dist/server/server.mjs +3260 -2482
- package/dist/server/theme-bridge.mjs +725 -124
- package/dist/server/theme.mjs +8 -2
- package/dist/styles/index.css +526 -68
- package/package.json +1 -1
- package/dist/_dts/api/src/navigation/identity.d.ts +0 -59
- package/dist/_dts/blocks/src/system/blocks/newsletter-signup-destination.d.ts +0 -291
- package/dist/_dts/blocks/src/system/runtime/shared/components/BookingOptionCompactRow.d.ts +0 -29
- package/dist/_dts/blocks/src/system/runtime/shared/components/BookingOptionList.d.ts +0 -13
- package/dist/_dts/core/src/newsletter-signup-destination.d.ts +0 -38
- package/dist/client/newsletterForm-IbrHjMxy.mjs +0 -322
|
@@ -1,16 +1,11 @@
|
|
|
1
|
+
import { type StripeBookingCommissionOrderItemMetadata } from './stripeCommissionMetadata';
|
|
2
|
+
export { parseStripeBookingCommissionMetadata, type StripeBookingCommissionOrderItemMetadata } from './stripeCommissionMetadata';
|
|
1
3
|
import { type BrandedIdParseError, type CheckoutLineId, type RetiredCourseId, type CustomerId, type DatedOfferingCapacityHoldAuditRef, type DatedOfferingCapacityHoldId, type EventSeriesId, type EventInstanceId, type OccurrenceId, type PassId, type PricingOptionId, type Result } from '../../../core/src/index';
|
|
2
4
|
import type { OrderItemKind } from './orderTypes';
|
|
3
5
|
export type CheckoutLineMetadata = Readonly<{
|
|
4
6
|
checkoutLineId?: CheckoutLineId;
|
|
5
7
|
displayName?: string;
|
|
6
8
|
}>;
|
|
7
|
-
export type StripeBookingCommissionOrderItemMetadata = Readonly<{
|
|
8
|
-
stripeBookingCommission?: Readonly<{
|
|
9
|
-
kind: 'application_fee_amount';
|
|
10
|
-
amountCents: number;
|
|
11
|
-
percent: number;
|
|
12
|
-
}>;
|
|
13
|
-
}>;
|
|
14
9
|
export type SlidingScaleOrderItemPricingSnapshot = Readonly<{
|
|
15
10
|
kind: 'sliding_scale';
|
|
16
11
|
version: 1;
|
|
@@ -31,8 +26,17 @@ export declare const DATED_OFFERING_ORDER_ITEM_ENGINE_METADATA_KEYS: {
|
|
|
31
26
|
readonly courseId: "courseId";
|
|
32
27
|
readonly customerId: "customerId";
|
|
33
28
|
readonly eventSeriesId: "eventSeriesId";
|
|
34
|
-
readonly
|
|
29
|
+
readonly settlementKind: "datedOfferingEngineSettlementKind";
|
|
35
30
|
};
|
|
31
|
+
/**
|
|
32
|
+
* How a shared whole-series registration order item was settled.
|
|
33
|
+
*
|
|
34
|
+
* A checkout item is the one that consumed a capacity hold and carries its
|
|
35
|
+
* ids; a non-cash item names its settlement outright, because there is no hold
|
|
36
|
+
* to identify it by. The registration itself is `event_series_registration_id`
|
|
37
|
+
* on the row.
|
|
38
|
+
*/
|
|
39
|
+
export type DatedOfferingOrderItemSettlementKind = 'non_cash_registration';
|
|
36
40
|
export type DatedOfferingOrderItemEngineMetadata = Readonly<{
|
|
37
41
|
datedOfferingEngineContractVersion: 'shared_v1';
|
|
38
42
|
datedOfferingEngineRouteKind: 'shared_whole_series_registration';
|
|
@@ -44,10 +48,24 @@ export type DatedOfferingOrderItemEngineMetadata = Readonly<{
|
|
|
44
48
|
export type DatedOfferingNonCashOrderItemEngineMetadata = Readonly<{
|
|
45
49
|
datedOfferingEngineContractVersion: 'shared_v1';
|
|
46
50
|
datedOfferingEngineRouteKind: 'shared_whole_series_registration';
|
|
47
|
-
|
|
51
|
+
datedOfferingEngineSettlementKind: DatedOfferingOrderItemSettlementKind;
|
|
48
52
|
customerId: CustomerId;
|
|
49
53
|
eventSeriesId: EventSeriesId;
|
|
50
54
|
}>;
|
|
55
|
+
/**
|
|
56
|
+
* What each arm forbids the other from carrying.
|
|
57
|
+
*
|
|
58
|
+
* Both arms share the same version and route literals, so without these a
|
|
59
|
+
* hybrid carrying hold identity *and* a settlement kind satisfies the union —
|
|
60
|
+
* exactly the object both parsers below reject.
|
|
61
|
+
*/
|
|
62
|
+
type NoDatedOfferingSettlementKind = Readonly<{
|
|
63
|
+
datedOfferingEngineSettlementKind?: never;
|
|
64
|
+
}>;
|
|
65
|
+
type NoDatedOfferingCapacityHold = Readonly<{
|
|
66
|
+
datedOfferingCapacityHoldId?: never;
|
|
67
|
+
datedOfferingCapacityHoldAuditRef?: never;
|
|
68
|
+
}>;
|
|
51
69
|
export type DatedOfferingOrderItemEngineMetadataParseError = Readonly<{
|
|
52
70
|
kind: 'invalid_engine_contract';
|
|
53
71
|
}> | Readonly<{
|
|
@@ -71,11 +89,11 @@ export type DatedOfferingMetadataRefParseError = Readonly<{
|
|
|
71
89
|
kind: 'invalid_uuid';
|
|
72
90
|
}>;
|
|
73
91
|
type LegacyDatedOfferingOrderItemEngineMetadata = Readonly<{
|
|
74
|
-
[TKey in keyof DatedOfferingOrderItemEngineMetadata]?: never;
|
|
92
|
+
[TKey in keyof DatedOfferingOrderItemEngineMetadata | keyof DatedOfferingNonCashOrderItemEngineMetadata]?: never;
|
|
75
93
|
}>;
|
|
76
94
|
export type EventSeriesRegistrationEngineMetadata = (LegacyDatedOfferingOrderItemEngineMetadata & Readonly<{
|
|
77
95
|
courseId: RetiredCourseId;
|
|
78
|
-
}>) | DatedOfferingOrderItemEngineMetadata | DatedOfferingNonCashOrderItemEngineMetadata;
|
|
96
|
+
}>) | (DatedOfferingOrderItemEngineMetadata & NoDatedOfferingSettlementKind) | (DatedOfferingNonCashOrderItemEngineMetadata & NoDatedOfferingCapacityHold);
|
|
79
97
|
export type EventTicketOrderItemMetadata = CheckoutLineMetadata & StripeBookingCommissionOrderItemMetadata & BookableOrderItemPricingMetadata & Readonly<{
|
|
80
98
|
eventSeriesId: string;
|
|
81
99
|
occurrenceId: OccurrenceId;
|
|
@@ -87,7 +105,7 @@ export type EventTicketOrderItemMetadata = CheckoutLineMetadata & StripeBookingC
|
|
|
87
105
|
attendeeEmail: string;
|
|
88
106
|
attendeeName: string;
|
|
89
107
|
}>;
|
|
90
|
-
export type ProductOrderItemMetadata = CheckoutLineMetadata & Readonly<{
|
|
108
|
+
export type ProductOrderItemMetadata = CheckoutLineMetadata & StripeBookingCommissionOrderItemMetadata & Readonly<{
|
|
91
109
|
productType?: 'physical' | 'digital';
|
|
92
110
|
requiresShipping?: boolean;
|
|
93
111
|
}>;
|
|
@@ -101,7 +119,7 @@ export type PassBundleFulfillmentMetadata = Readonly<{
|
|
|
101
119
|
}>;
|
|
102
120
|
export type CreditProductUseCase = 'event_pass' | 'appointment_package';
|
|
103
121
|
export declare function normalizeOrderCreditProductUseCase(value: unknown): Result<CreditProductUseCase, string>;
|
|
104
|
-
export type PassOrderItemMetadata = CheckoutLineMetadata & Readonly<{
|
|
122
|
+
export type PassOrderItemMetadata = CheckoutLineMetadata & StripeBookingCommissionOrderItemMetadata & Readonly<{
|
|
105
123
|
passId: PassId;
|
|
106
124
|
productUseCase?: CreditProductUseCase;
|
|
107
125
|
creditsTotal: number;
|
|
@@ -131,7 +149,7 @@ export type MembershipBundleFulfillmentMetadata = Readonly<{
|
|
|
131
149
|
attendeeName: string;
|
|
132
150
|
membershipName: string;
|
|
133
151
|
}>;
|
|
134
|
-
export type MembershipOrderItemMetadata = CheckoutLineMetadata & Readonly<{
|
|
152
|
+
export type MembershipOrderItemMetadata = CheckoutLineMetadata & StripeBookingCommissionOrderItemMetadata & Readonly<{
|
|
135
153
|
bundleFulfillment?: MembershipBundleFulfillmentMetadata;
|
|
136
154
|
}>;
|
|
137
155
|
export type OrderItemMetadataByKind = {
|
|
@@ -143,7 +161,6 @@ export type OrderItemMetadataByKind = {
|
|
|
143
161
|
membership: MembershipOrderItemMetadata;
|
|
144
162
|
};
|
|
145
163
|
export type OrderItemMetadata = OrderItemMetadataByKind[OrderItemKind];
|
|
146
|
-
export declare function parseStripeBookingCommissionMetadata(raw: Record<string, unknown>): Result<StripeBookingCommissionOrderItemMetadata, string>;
|
|
147
164
|
export declare function parseBookableOrderItemPricingMetadata(raw: Record<string, unknown>): Result<BookableOrderItemPricingMetadata, string>;
|
|
148
165
|
export declare function parseOrderItemMetadata(kind: 'event_ticket', raw: unknown): Result<EventTicketOrderItemMetadata, string>;
|
|
149
166
|
export declare function parseOrderItemMetadata(kind: 'product', raw: unknown): Result<ProductOrderItemMetadata, string>;
|
|
@@ -151,4 +168,3 @@ export declare function parseOrderItemMetadata(kind: 'pass', raw: unknown): Resu
|
|
|
151
168
|
export declare function parseOrderItemMetadata(kind: 'event_series_registration', raw: unknown): Result<EventSeriesRegistrationOrderItemMetadata, string>;
|
|
152
169
|
export declare function parseOrderItemMetadata(kind: 'appointment', raw: unknown): Result<AppointmentOrderItemMetadata, string>;
|
|
153
170
|
export declare function parseOrderItemMetadata(kind: 'membership', raw: unknown): Result<MembershipOrderItemMetadata, string>;
|
|
154
|
-
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { type Result } from '../../../core/src/index';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
/** Reasons are payment evidence, not an independent pricing policy. */
|
|
4
|
+
export declare const STRIPE_COMMISSION_FREE_REASONS: readonly ["managed_billing", "no_commission_plan", "billing_evidence_invalid", "fee_rounds_to_zero", "non_commissionable_scope", "payment_not_stripe"];
|
|
5
|
+
export type StripeCommissionFreeReason = (typeof STRIPE_COMMISSION_FREE_REASONS)[number];
|
|
6
|
+
declare const commissionEvidenceSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
7
|
+
currency: z.ZodOptional<z.ZodString>;
|
|
8
|
+
sourcePlanId: z.ZodOptional<z.ZodString>;
|
|
9
|
+
kind: z.ZodLiteral<"commission_free">;
|
|
10
|
+
reason: z.ZodEnum<{
|
|
11
|
+
managed_billing: "managed_billing";
|
|
12
|
+
no_commission_plan: "no_commission_plan";
|
|
13
|
+
billing_evidence_invalid: "billing_evidence_invalid";
|
|
14
|
+
fee_rounds_to_zero: "fee_rounds_to_zero";
|
|
15
|
+
non_commissionable_scope: "non_commissionable_scope";
|
|
16
|
+
payment_not_stripe: "payment_not_stripe";
|
|
17
|
+
}>;
|
|
18
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
19
|
+
currency: z.ZodOptional<z.ZodString>;
|
|
20
|
+
sourcePlanId: z.ZodOptional<z.ZodString>;
|
|
21
|
+
kind: z.ZodLiteral<"application_fee_amount">;
|
|
22
|
+
amountCents: z.ZodNumber;
|
|
23
|
+
percent: z.ZodNumber;
|
|
24
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
25
|
+
currency: z.ZodOptional<z.ZodString>;
|
|
26
|
+
sourcePlanId: z.ZodOptional<z.ZodString>;
|
|
27
|
+
kind: z.ZodLiteral<"application_fee_percent">;
|
|
28
|
+
percent: z.ZodNumber;
|
|
29
|
+
}, z.core.$strip>], "kind">;
|
|
30
|
+
export type StripeBookingCommissionOrderItemMetadata = Readonly<{
|
|
31
|
+
stripeBookingCommission?: z.infer<typeof commissionEvidenceSchema>;
|
|
32
|
+
}>;
|
|
33
|
+
export declare function parseStripeBookingCommissionMetadata(raw: Record<string, unknown>): Result<StripeBookingCommissionOrderItemMetadata, string>;
|
|
34
|
+
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type ContentEntrySnapshot, type ContentTypeSchema, type ToolbarState } from '../../../content-model/src/index';
|
|
2
|
-
import type { EditorBlockId } from '../../../core/src/index';
|
|
2
|
+
import type { EditorBlockId, MailingListProviderScope } from '../../../core/src/index';
|
|
3
3
|
import type { BlockItem } from '../../../editor-blocks/src/block-editor/types';
|
|
4
4
|
import { type ReactNode } from 'react';
|
|
5
5
|
import { type PublishOptions } from '../hooks/useEntryActions';
|
|
@@ -90,6 +90,7 @@ type BaseInternalProps = {
|
|
|
90
90
|
onEntryUpdated?: (response: unknown) => void;
|
|
91
91
|
historyShortcutsEnabled?: boolean;
|
|
92
92
|
resolveBlockManifest?: ResolveBlockManifest;
|
|
93
|
+
getExpectedMailingListProviderScope?: () => MailingListProviderScope | null;
|
|
93
94
|
};
|
|
94
95
|
type EditorOwnerServiceProps = Readonly<{
|
|
95
96
|
owner: {
|
|
@@ -1,26 +1,15 @@
|
|
|
1
|
-
import { type FooterEngagementSection, type Result } from '../../core/src/index';
|
|
1
|
+
import { type FooterEngagementSection, type MailingListPlacementTargeting, type Result } from '../../core/src/index';
|
|
2
2
|
type FooterEngagementDraftBase = Readonly<{
|
|
3
3
|
treatment: FooterEngagementSection['treatment'];
|
|
4
4
|
heading: string;
|
|
5
5
|
intro: string;
|
|
6
6
|
}>;
|
|
7
|
-
type FooterMailingCopyDraft = Readonly<{
|
|
8
|
-
buttonLabel: string;
|
|
9
|
-
successMessage: string;
|
|
10
|
-
privacyNote: string;
|
|
11
|
-
}>;
|
|
12
7
|
export type FooterEngagementDraft = (FooterEngagementDraftBase & Readonly<{
|
|
13
8
|
kind: 'standard-contact';
|
|
14
9
|
formId: string;
|
|
15
|
-
}>) | (FooterEngagementDraftBase &
|
|
10
|
+
}>) | (FooterEngagementDraftBase & Readonly<{
|
|
16
11
|
kind: 'mailing-list';
|
|
17
|
-
|
|
18
|
-
provider: 'riverbank';
|
|
19
|
-
listId: string;
|
|
20
|
-
}> | Readonly<{
|
|
21
|
-
provider: 'mailchimp';
|
|
22
|
-
audienceId: string;
|
|
23
|
-
}>;
|
|
12
|
+
targeting: MailingListPlacementTargeting;
|
|
24
13
|
}>);
|
|
25
14
|
export type FooterEngagementDraftEvent = Readonly<{
|
|
26
15
|
type: 'select-kind';
|
|
@@ -38,20 +27,13 @@ export type FooterEngagementDraftEvent = Readonly<{
|
|
|
38
27
|
type: 'set-form';
|
|
39
28
|
formId: string;
|
|
40
29
|
}> | Readonly<{
|
|
41
|
-
type: '
|
|
42
|
-
|
|
43
|
-
}> | Readonly<{
|
|
44
|
-
type: 'set-mailing-destination';
|
|
45
|
-
id: string;
|
|
46
|
-
}> | Readonly<{
|
|
47
|
-
type: 'set-mailing-copy';
|
|
48
|
-
field: keyof FooterMailingCopyDraft;
|
|
49
|
-
value: string;
|
|
30
|
+
type: 'set-mailing-targeting';
|
|
31
|
+
targeting: MailingListPlacementTargeting;
|
|
50
32
|
}>;
|
|
51
33
|
export declare function reduceFooterEngagementDraft(draft: FooterEngagementDraft, event: FooterEngagementDraftEvent): FooterEngagementDraft;
|
|
52
34
|
export declare function createFooterEngagementDraft(section: FooterEngagementSection | null): FooterEngagementDraft;
|
|
53
35
|
type DraftParseError = Readonly<{
|
|
54
36
|
message: string;
|
|
55
37
|
}>;
|
|
56
|
-
export declare function parseFooterEngagementDraft(draft: FooterEngagementDraft, currentId: string
|
|
38
|
+
export declare function parseFooterEngagementDraft(draft: FooterEngagementDraft, currentId: string): Result<FooterEngagementSection, DraftParseError>;
|
|
57
39
|
export {};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type MailingListProviderScope } from '../../../core/src/index';
|
|
1
2
|
import type { ApiClient } from '../services';
|
|
2
3
|
import type { EditorUiStoreInstance } from '../ui/editorUiStore';
|
|
3
4
|
export type BlockAutosaveOptions = {
|
|
@@ -10,6 +11,7 @@ export type BlockAutosaveOptions = {
|
|
|
10
11
|
/** Whether this entry has a route (pages have blocks, content entries don't) */
|
|
11
12
|
hasRoute: boolean;
|
|
12
13
|
owner: BlockAutosaveOwner;
|
|
14
|
+
getExpectedMailingListProviderScope?: () => MailingListProviderScope | null;
|
|
13
15
|
};
|
|
14
16
|
export type BlockAutosaveOwner = Readonly<{
|
|
15
17
|
kind: 'contentEntry';
|
|
@@ -32,4 +34,4 @@ export declare function planBlockSaveRevisionForOwner(owner: BlockAutosaveOwner,
|
|
|
32
34
|
*
|
|
33
35
|
* Only enabled for pages (hasRoute=true), as content entries don't have blocks.
|
|
34
36
|
*/
|
|
35
|
-
export declare function useBlockAutosave({ uiStore, apiClient, siteId, hasRoute, owner, }: BlockAutosaveOptions): import("./useSimpleAutosave").AutosaveHandle;
|
|
37
|
+
export declare function useBlockAutosave({ uiStore, apiClient, siteId, hasRoute, owner, getExpectedMailingListProviderScope, }: BlockAutosaveOptions): import("./useSimpleAutosave").AutosaveHandle;
|
|
@@ -32,8 +32,10 @@ export declare function useFooterComposerState({ apiClient, canEdit, initialTarg
|
|
|
32
32
|
compositionSnapshot: FooterCompositionSnapshot | null;
|
|
33
33
|
engagementOptions: Readonly<{
|
|
34
34
|
forms: readonly import("../../api/src/footerSettings").FooterFormSummary[];
|
|
35
|
-
|
|
36
|
-
|
|
35
|
+
mailingList: import("../../core/src/index").MailingListRuntimeContext;
|
|
36
|
+
expectedMailingListProviderScope: import("../../core/src/index").MailingListProviderScope | null;
|
|
37
|
+
confirmation: import("../../core/src/index").ConfiguredMailingListProvider["confirmation"] | null;
|
|
38
|
+
canManageMailingListSetup: boolean;
|
|
37
39
|
}> | null;
|
|
38
40
|
load: () => Promise<void>;
|
|
39
41
|
loadError: string | null;
|
|
@@ -60,7 +60,6 @@ export type BookingSessionId = Brand<string, 'BookingSessionId'>;
|
|
|
60
60
|
export type DatedOfferingCapacityHoldId = Brand<string, 'DatedOfferingCapacityHoldId'>;
|
|
61
61
|
export type DatedOfferingCapacityHoldAuditRef = Brand<string, 'DatedOfferingCapacityHoldAuditRef'>;
|
|
62
62
|
export type DatedOfferingRevocationAuditEventId = Brand<string, 'DatedOfferingRevocationAuditEventId'>;
|
|
63
|
-
export type DatedOfferingNonCashProjectionClaimToken = Brand<string, 'DatedOfferingNonCashProjectionClaimToken'>;
|
|
64
63
|
export type DatedOfferingWaitlistCapacityEffectId = Brand<string, 'DatedOfferingWaitlistCapacityEffectId'>;
|
|
65
64
|
export type DatedOfferingWaitlistCapacityEffectClaimToken = Brand<string, 'DatedOfferingWaitlistCapacityEffectClaimToken'>;
|
|
66
65
|
export type DatedOfferingRunCancellationOperationId = Brand<string, 'DatedOfferingRunCancellationOperationId'>;
|
|
@@ -99,7 +98,6 @@ export type EventRegistrationCommandId = Brand<string, 'EventRegistrationCommand
|
|
|
99
98
|
* is meant.
|
|
100
99
|
*/
|
|
101
100
|
export type EventRegistrationCommandRowId = Brand<string, 'EventRegistrationCommandRowId'>;
|
|
102
|
-
export type EventRegistrationProjectionClaimToken = Brand<string, 'EventRegistrationProjectionClaimToken'>;
|
|
103
101
|
export type CustomerPassId = Brand<string, 'CustomerPassId'>;
|
|
104
102
|
export type CustomerMembershipId = Brand<string, 'CustomerMembershipId'>;
|
|
105
103
|
export type AppointmentId = Brand<string, 'AppointmentId'>;
|
|
@@ -146,7 +144,6 @@ export type ParticipantId = Brand<string, 'ParticipantId'>;
|
|
|
146
144
|
export type ParticipantParticipationId = Brand<string, 'ParticipantParticipationId'>;
|
|
147
145
|
export type ParticipantRosterAssertionJobId = Brand<string, 'ParticipantRosterAssertionJobId'>;
|
|
148
146
|
export type ParticipantBookingQuestionsTaskId = Brand<string, 'ParticipantBookingQuestionsTaskId'>;
|
|
149
|
-
export type EventAttendeeGuestId = Brand<string, 'EventAttendeeGuestId'>;
|
|
150
147
|
export type PersonRecordId = Brand<string, 'PersonRecordId'>;
|
|
151
148
|
export type EncounterRecordId = Brand<string, 'EncounterRecordId'>;
|
|
152
149
|
export type RecordEntryId = Brand<string, 'RecordEntryId'>;
|
|
@@ -212,7 +209,6 @@ export declare const unsafeAsBookingSessionId: (id: string) => BookingSessionId;
|
|
|
212
209
|
export declare const unsafeAsDatedOfferingCapacityHoldId: (value: string) => DatedOfferingCapacityHoldId;
|
|
213
210
|
export declare const unsafeAsDatedOfferingCapacityHoldAuditRef: (value: string) => DatedOfferingCapacityHoldAuditRef;
|
|
214
211
|
export declare const unsafeAsDatedOfferingRevocationAuditEventId: (value: string) => DatedOfferingRevocationAuditEventId;
|
|
215
|
-
export declare const unsafeAsDatedOfferingNonCashProjectionClaimToken: (value: string) => DatedOfferingNonCashProjectionClaimToken;
|
|
216
212
|
export declare const unsafeAsDatedOfferingWaitlistCapacityEffectId: (value: string) => DatedOfferingWaitlistCapacityEffectId;
|
|
217
213
|
export declare const unsafeAsDatedOfferingWaitlistCapacityEffectClaimToken: (value: string) => DatedOfferingWaitlistCapacityEffectClaimToken;
|
|
218
214
|
export declare const unsafeAsDatedOfferingRunCancellationOperationId: (value: string) => DatedOfferingRunCancellationOperationId;
|
|
@@ -236,7 +232,6 @@ export declare const unsafeAsCheckoutLineId: (id: string) => CheckoutLineId;
|
|
|
236
232
|
export declare const unsafeAsAttendeeId: (id: string) => AttendeeId;
|
|
237
233
|
export declare const unsafeAsEventRegistrationCommandId: (id: string) => EventRegistrationCommandId;
|
|
238
234
|
export declare const unsafeAsEventRegistrationCommandRowId: (id: string) => EventRegistrationCommandRowId;
|
|
239
|
-
export declare const unsafeAsEventRegistrationProjectionClaimToken: (id: string) => EventRegistrationProjectionClaimToken;
|
|
240
235
|
export declare const unsafeAsCustomerPassId: (id: string) => CustomerPassId;
|
|
241
236
|
export declare const unsafeAsCustomerMembershipId: (id: string) => CustomerMembershipId;
|
|
242
237
|
export declare const unsafeAsAppointmentId: (id: string) => AppointmentId;
|
|
@@ -282,7 +277,6 @@ export declare const unsafeAsParticipantId: (id: string) => ParticipantId;
|
|
|
282
277
|
export declare const unsafeAsParticipantParticipationId: (id: string) => ParticipantParticipationId;
|
|
283
278
|
export declare const unsafeAsParticipantRosterAssertionJobId: (id: string) => ParticipantRosterAssertionJobId;
|
|
284
279
|
export declare const unsafeAsParticipantBookingQuestionsTaskId: (id: string) => ParticipantBookingQuestionsTaskId;
|
|
285
|
-
export declare const unsafeAsEventAttendeeGuestId: (id: string) => EventAttendeeGuestId;
|
|
286
280
|
export declare const unsafeAsPersonRecordId: (id: string) => PersonRecordId;
|
|
287
281
|
export declare const unsafeAsEncounterRecordId: (id: string) => EncounterRecordId;
|
|
288
282
|
export declare const unsafeAsRecordEntryId: (id: string) => RecordEntryId;
|
|
@@ -318,11 +312,9 @@ export declare const parseAppointmentReservationRunId: (value: unknown) => Resul
|
|
|
318
312
|
export declare const parseAttendeeId: (value: unknown) => Result<AttendeeId, BrandedIdParseError>;
|
|
319
313
|
export declare const parseEventRegistrationCommandId: (value: unknown) => Result<EventRegistrationCommandId, BrandedIdParseError>;
|
|
320
314
|
export declare const parseEventRegistrationCommandRowId: (value: unknown) => Result<EventRegistrationCommandRowId, BrandedIdParseError>;
|
|
321
|
-
export declare const parseEventRegistrationProjectionClaimToken: (value: unknown) => Result<EventRegistrationProjectionClaimToken, BrandedIdParseError>;
|
|
322
315
|
export declare const parseDatedOfferingCapacityHoldId: (value: unknown) => Result<DatedOfferingCapacityHoldId, BrandedIdParseError>;
|
|
323
316
|
export declare const parseDatedOfferingCapacityHoldAuditRef: (value: unknown) => Result<DatedOfferingCapacityHoldAuditRef, BrandedIdParseError>;
|
|
324
317
|
export declare const parseDatedOfferingRevocationAuditEventId: (value: unknown) => Result<DatedOfferingRevocationAuditEventId, BrandedIdParseError>;
|
|
325
|
-
export declare const parseDatedOfferingNonCashProjectionClaimToken: (value: unknown) => Result<DatedOfferingNonCashProjectionClaimToken, BrandedIdParseError>;
|
|
326
318
|
export declare const parseDatedOfferingWaitlistCapacityEffectId: (value: unknown) => Result<DatedOfferingWaitlistCapacityEffectId, BrandedIdParseError>;
|
|
327
319
|
export declare const parseDatedOfferingWaitlistCapacityEffectClaimToken: (value: unknown) => Result<DatedOfferingWaitlistCapacityEffectClaimToken, BrandedIdParseError>;
|
|
328
320
|
export declare const parseDatedOfferingRunCancellationOperationId: (value: unknown) => Result<DatedOfferingRunCancellationOperationId, BrandedIdParseError>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type FormId } from './branded';
|
|
2
|
-
import {
|
|
2
|
+
import type { MailingListPlacementTargeting } from './mailing-list-targeting';
|
|
3
3
|
import { type Result } from './result';
|
|
4
4
|
import type { FooterCompositionError, FooterModuleId } from './footer-composition-types';
|
|
5
5
|
export type FooterEngagementTreatment = 'integrated' | 'separate-row';
|
|
@@ -9,12 +9,8 @@ export type FooterEngagementSource = Readonly<{
|
|
|
9
9
|
intro: string | null;
|
|
10
10
|
}> | Readonly<{
|
|
11
11
|
kind: 'mailing-list';
|
|
12
|
-
|
|
12
|
+
targeting: MailingListPlacementTargeting;
|
|
13
13
|
intro: string | null;
|
|
14
|
-
buttonLabel: string;
|
|
15
|
-
successMessage: string;
|
|
16
|
-
privacyNote: string | null;
|
|
17
|
-
fieldPreset: 'emailOnly';
|
|
18
14
|
}>;
|
|
19
15
|
export type FooterEngagementSection = Readonly<{
|
|
20
16
|
id: FooterModuleId;
|
|
@@ -35,13 +35,20 @@ export * from './participants';
|
|
|
35
35
|
export * from './participant-identity';
|
|
36
36
|
export * from './public-url-validation';
|
|
37
37
|
export * from './public-profile';
|
|
38
|
+
export * from './public-experience';
|
|
38
39
|
export * from './rich-text';
|
|
39
40
|
export * from './footer-composition';
|
|
40
41
|
export * from './footer-navigation-layout';
|
|
41
42
|
export * from './footer-arrangement';
|
|
42
43
|
export * from './footer-composition-types';
|
|
43
44
|
export * from './footer-engagement';
|
|
44
|
-
export * from './
|
|
45
|
+
export * from './mailing-list-identifiers';
|
|
46
|
+
export * from './mailing-list-setup';
|
|
47
|
+
export * from './mailing-list-setup-parser';
|
|
48
|
+
export * from './mailing-list-targeting';
|
|
49
|
+
export * from './mailing-list-runtime';
|
|
50
|
+
export * from './mailing-list-targeting-parser';
|
|
51
|
+
export * from './mailing-list-submission';
|
|
45
52
|
export * from './number-input';
|
|
46
53
|
export * from './field-errors';
|
|
47
54
|
export * from './form-submission-preview';
|
|
@@ -63,5 +70,7 @@ export { disabledSelection, enabledSelection, plannerNoChange, plannerPatch, pla
|
|
|
63
70
|
export type { DisabledSelection, EnabledSelection, OptionalSelection, PlannerNoChange, PlannerPatch, PlannerUpdate, PlanningClock, PlanningDateInput, PlanningTimeOptions, } from './planner';
|
|
64
71
|
export { isValidBookingTimeZone, parseBookingTimeZone, type BookingTimeZone, type BookingTimeZoneParseError, } from './booking-time-zone';
|
|
65
72
|
export { CANCELLED_SESSION_STATUS, firstLiveRunSessionStartMs, isWholeSeriesRegistrationOpen, orderedLiveRunSessions, resolveWholeSeriesBookingPhase, resolveWholeSeriesRunLifecycle, type WholeSeriesBookingPhase, type WholeSeriesRunLifecycle, type WholeSeriesScheduleSession, } from './whole-series-run-schedule';
|
|
73
|
+
export * from './public-read-cache-contract';
|
|
66
74
|
export * from './booking-verticals';
|
|
67
75
|
export * from './event-series-behaviour';
|
|
76
|
+
export * from './navigation-locations';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Brand } from './branded';
|
|
2
|
+
export type NewsletterListId = Brand<string, 'NewsletterListId'>;
|
|
3
|
+
export type MailchimpConnectionId = Brand<string, 'MailchimpConnectionId'>;
|
|
4
|
+
export type MailchimpAccountId = Brand<string, 'MailchimpAccountId'>;
|
|
5
|
+
export type MailchimpAudienceId = Brand<string, 'MailchimpAudienceId'>;
|
|
6
|
+
export type MailchimpInterestId = Brand<string, 'MailchimpInterestId'>;
|
|
7
|
+
export type MailchimpTagName = Brand<string, 'MailchimpTagName'>;
|
|
8
|
+
export type BrevoConnectionId = Brand<string, 'BrevoConnectionId'>;
|
|
9
|
+
export type BrevoAccountId = Brand<string, 'BrevoAccountId'>;
|
|
10
|
+
export type BrevoListId = Brand<number, 'BrevoListId'>;
|
|
11
|
+
export type BrevoConfirmationTemplateId = Brand<number, 'BrevoConfirmationTemplateId'>;
|
|
12
|
+
export declare function parseNewsletterListId(value: unknown): NewsletterListId | null;
|
|
13
|
+
export declare function parseMailchimpConnectionId(value: unknown): MailchimpConnectionId | null;
|
|
14
|
+
export declare function parseMailchimpAccountId(value: unknown): MailchimpAccountId | null;
|
|
15
|
+
export declare function parseMailchimpAudienceId(value: unknown): MailchimpAudienceId | null;
|
|
16
|
+
export declare function parseMailchimpInterestId(value: unknown): MailchimpInterestId | null;
|
|
17
|
+
export declare function parseMailchimpTagName(value: unknown): MailchimpTagName | null;
|
|
18
|
+
export declare function parseBrevoConnectionId(value: unknown): BrevoConnectionId | null;
|
|
19
|
+
export declare function parseBrevoAccountId(value: unknown): BrevoAccountId | null;
|
|
20
|
+
export declare function parseBrevoListId(value: unknown): BrevoListId | null;
|
|
21
|
+
export declare function parseBrevoConfirmationTemplateId(value: unknown): BrevoConfirmationTemplateId | null;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { BrevoListId, MailchimpAudienceId, MailchimpInterestId } from './mailing-list-identifiers';
|
|
2
|
+
import { type Result } from './result';
|
|
3
|
+
import type { MailingListGlobalForm, MailingListSetupRevision, NativeMailingListTopicId } from './mailing-list-setup';
|
|
4
|
+
export type MailingListRuntimeContext = Readonly<{
|
|
5
|
+
tag: 'not_configured';
|
|
6
|
+
}> | Readonly<{
|
|
7
|
+
tag: 'configured';
|
|
8
|
+
revision: MailingListSetupRevision;
|
|
9
|
+
form: MailingListGlobalForm;
|
|
10
|
+
provider: MailingListRuntimeProvider;
|
|
11
|
+
}>;
|
|
12
|
+
export type MailingListRuntimeProvider = Readonly<{
|
|
13
|
+
provider: 'native';
|
|
14
|
+
defaultTopicId: NativeMailingListTopicId;
|
|
15
|
+
topics: readonly Readonly<{
|
|
16
|
+
id: NativeMailingListTopicId;
|
|
17
|
+
name: string;
|
|
18
|
+
}>[];
|
|
19
|
+
}> | Readonly<{
|
|
20
|
+
provider: 'brevo';
|
|
21
|
+
defaultListId: BrevoListId;
|
|
22
|
+
lists: readonly Readonly<{
|
|
23
|
+
id: BrevoListId;
|
|
24
|
+
name: string;
|
|
25
|
+
}>[];
|
|
26
|
+
}> | Readonly<{
|
|
27
|
+
provider: 'mailchimp';
|
|
28
|
+
defaultAudienceId: MailchimpAudienceId;
|
|
29
|
+
audiences: readonly Readonly<{
|
|
30
|
+
id: MailchimpAudienceId;
|
|
31
|
+
name: string;
|
|
32
|
+
interests: readonly Readonly<{
|
|
33
|
+
id: MailchimpInterestId;
|
|
34
|
+
name: string;
|
|
35
|
+
categoryName: string;
|
|
36
|
+
}>[];
|
|
37
|
+
}>[];
|
|
38
|
+
}>;
|
|
39
|
+
export type MailingListRuntimeContextParseError = Readonly<{
|
|
40
|
+
tag: 'invalid_mailing_list_runtime_context';
|
|
41
|
+
}>;
|
|
42
|
+
export declare function parseMailingListRuntimeContext(value: unknown): Result<MailingListRuntimeContext, MailingListRuntimeContextParseError>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ConfiguredMailingListProvider, MailingListGlobalForm, MailingListSetupRevision, MailingListSiteSetup } from './mailing-list-setup';
|
|
2
|
+
import { type Result } from './result';
|
|
3
|
+
export type MailingListSetupParseError = Readonly<{
|
|
4
|
+
tag: 'invalid_mailing_list_setup';
|
|
5
|
+
field: 'shape' | 'tag' | 'siteId' | 'revision' | 'form' | 'provider' | 'connectionId' | 'accountId' | 'defaultTargetId' | 'confirmation';
|
|
6
|
+
}>;
|
|
7
|
+
export type MailingListGlobalFormParseError = Readonly<{
|
|
8
|
+
tag: 'invalid_mailing_list_global_form';
|
|
9
|
+
field: 'shape' | 'fields' | 'includeOptionalPhone' | 'buttonLabel' | 'successMessage' | 'privacyNote';
|
|
10
|
+
}>;
|
|
11
|
+
export declare function parseMailingListGlobalForm(value: unknown): Result<MailingListGlobalForm, MailingListGlobalFormParseError>;
|
|
12
|
+
export declare function parseMailingListSiteSetup(value: unknown): Result<MailingListSiteSetup, MailingListSetupParseError>;
|
|
13
|
+
export declare function parseConfiguredMailingListProvider(value: unknown): Result<ConfiguredMailingListProvider, MailingListSetupParseError>;
|
|
14
|
+
export declare function parseMailingListSetupRevision(value: unknown): MailingListSetupRevision | null;
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import type { Brand, SiteId } from './branded';
|
|
2
|
+
import { type BrevoAccountId, type BrevoConfirmationTemplateId, type BrevoConnectionId, type BrevoListId, type MailchimpAccountId, type MailchimpAudienceId, type MailchimpConnectionId, type NewsletterListId } from './mailing-list-identifiers';
|
|
3
|
+
import { type Result } from './result';
|
|
4
|
+
export type MailingListProvider = 'native' | 'mailchimp' | 'brevo';
|
|
5
|
+
/** The name shown to people for each provider; the native one is the product brand. */
|
|
6
|
+
export declare function mailingListProviderName(provider: MailingListProvider): string;
|
|
7
|
+
export type NativeMailingListTopicId = NewsletterListId;
|
|
8
|
+
export type MailingListSetupRevision = Brand<number, 'MailingListSetupRevision'>;
|
|
9
|
+
export type MailingListProfileField = 'name' | 'first_name' | 'last_name' | 'company' | 'phone';
|
|
10
|
+
export type MailingListGlobalFields = Readonly<{
|
|
11
|
+
preset: 'emailOnly';
|
|
12
|
+
}> | Readonly<{
|
|
13
|
+
preset: 'emailName';
|
|
14
|
+
name: 'required' | 'optional';
|
|
15
|
+
}> | Readonly<{
|
|
16
|
+
preset: 'emailFirstLast';
|
|
17
|
+
firstName: 'required' | 'optional';
|
|
18
|
+
lastName: 'required' | 'optional';
|
|
19
|
+
}> | Readonly<{
|
|
20
|
+
preset: 'emailNameCompany';
|
|
21
|
+
name: 'required' | 'optional';
|
|
22
|
+
company: 'required' | 'optional';
|
|
23
|
+
}>;
|
|
24
|
+
export type MailingListGlobalForm = Readonly<{
|
|
25
|
+
fields: MailingListGlobalFields;
|
|
26
|
+
includeOptionalPhone: boolean;
|
|
27
|
+
buttonLabel: string;
|
|
28
|
+
successMessage: string;
|
|
29
|
+
privacyNote: string | null;
|
|
30
|
+
}>;
|
|
31
|
+
export declare const DEFAULT_MAILING_LIST_SUCCESS_MESSAGE = "Thanks \u2014 you're on the list.";
|
|
32
|
+
/**
|
|
33
|
+
* Seeded into a new setup so every signup form carries a preferences/unsubscribe
|
|
34
|
+
* reassurance out of the box. Administrators can edit or clear it.
|
|
35
|
+
*/
|
|
36
|
+
export declare const DEFAULT_MAILING_LIST_PRIVACY_NOTE = "Change your preferences or unsubscribe at any time.";
|
|
37
|
+
export type ToggleConfirmation = Readonly<{
|
|
38
|
+
tag: 'off';
|
|
39
|
+
}> | Readonly<{
|
|
40
|
+
tag: 'on';
|
|
41
|
+
}>;
|
|
42
|
+
export type BrevoConfirmation = Readonly<{
|
|
43
|
+
tag: 'off';
|
|
44
|
+
}> | Readonly<{
|
|
45
|
+
tag: 'on';
|
|
46
|
+
templateId: BrevoConfirmationTemplateId;
|
|
47
|
+
redirectUrl: string;
|
|
48
|
+
}>;
|
|
49
|
+
export type NativeMailingListSetup = Readonly<{
|
|
50
|
+
provider: 'native';
|
|
51
|
+
defaultTopicId: NativeMailingListTopicId;
|
|
52
|
+
confirmation: ToggleConfirmation;
|
|
53
|
+
}>;
|
|
54
|
+
export type MailchimpMailingListSetup = Readonly<{
|
|
55
|
+
provider: 'mailchimp';
|
|
56
|
+
connectionId: MailchimpConnectionId;
|
|
57
|
+
accountId: MailchimpAccountId;
|
|
58
|
+
defaultAudienceId: MailchimpAudienceId;
|
|
59
|
+
confirmation: ToggleConfirmation;
|
|
60
|
+
}>;
|
|
61
|
+
export type BrevoMailingListSetup = Readonly<{
|
|
62
|
+
provider: 'brevo';
|
|
63
|
+
connectionId: BrevoConnectionId;
|
|
64
|
+
accountId: BrevoAccountId;
|
|
65
|
+
defaultListId: BrevoListId;
|
|
66
|
+
confirmation: BrevoConfirmation;
|
|
67
|
+
}>;
|
|
68
|
+
export type ConfiguredMailingListProvider = NativeMailingListSetup | MailchimpMailingListSetup | BrevoMailingListSetup;
|
|
69
|
+
export type MailingListSiteSetup = Readonly<{
|
|
70
|
+
tag: 'not_configured';
|
|
71
|
+
siteId: SiteId;
|
|
72
|
+
}> | Readonly<{
|
|
73
|
+
tag: 'configured';
|
|
74
|
+
siteId: SiteId;
|
|
75
|
+
revision: MailingListSetupRevision;
|
|
76
|
+
form: MailingListGlobalForm;
|
|
77
|
+
provider: ConfiguredMailingListProvider;
|
|
78
|
+
}>;
|
|
79
|
+
export type MailingListDestinationFieldRequirements = Readonly<{
|
|
80
|
+
destinationKey: string;
|
|
81
|
+
requiredFields: readonly MailingListProfileField[];
|
|
82
|
+
acceptedFields: readonly MailingListProfileField[];
|
|
83
|
+
}>;
|
|
84
|
+
export type MailingListFieldCompatibilityIssue = Readonly<{
|
|
85
|
+
tag: 'destination_requires_uncollected_field';
|
|
86
|
+
destinationKey: string;
|
|
87
|
+
field: MailingListProfileField;
|
|
88
|
+
}> | Readonly<{
|
|
89
|
+
tag: 'destination_requires_site_required_field';
|
|
90
|
+
destinationKey: string;
|
|
91
|
+
field: MailingListProfileField;
|
|
92
|
+
}> | Readonly<{
|
|
93
|
+
tag: 'destination_rejects_required_site_field';
|
|
94
|
+
destinationKey: string;
|
|
95
|
+
field: MailingListProfileField;
|
|
96
|
+
}> | Readonly<{
|
|
97
|
+
tag: 'destination_rejects_collected_site_field';
|
|
98
|
+
destinationKey: string;
|
|
99
|
+
field: MailingListProfileField;
|
|
100
|
+
}>;
|
|
101
|
+
export type MailingListFieldCompatibilityPlan = Readonly<{
|
|
102
|
+
tag: 'compatible';
|
|
103
|
+
}> | Readonly<{
|
|
104
|
+
tag: 'blocked';
|
|
105
|
+
issues: readonly [
|
|
106
|
+
MailingListFieldCompatibilityIssue,
|
|
107
|
+
...MailingListFieldCompatibilityIssue[]
|
|
108
|
+
];
|
|
109
|
+
}>;
|
|
110
|
+
export declare function planMailingListFieldCompatibility(input: Readonly<{
|
|
111
|
+
form: MailingListGlobalForm;
|
|
112
|
+
destinations: readonly MailingListDestinationFieldRequirements[];
|
|
113
|
+
}>): MailingListFieldCompatibilityPlan;
|
|
114
|
+
export type MailingListSetupSwitchPlan = Readonly<{
|
|
115
|
+
tag: 'activate';
|
|
116
|
+
affectedPlacementCount: 0;
|
|
117
|
+
}> | Readonly<{
|
|
118
|
+
tag: 'update_same_scope';
|
|
119
|
+
affectedPlacementCount: number;
|
|
120
|
+
}> | Readonly<{
|
|
121
|
+
tag: 'replace_scope';
|
|
122
|
+
affectedPlacementCount: number;
|
|
123
|
+
}>;
|
|
124
|
+
export declare function planMailingListSetupSwitch(input: Readonly<{
|
|
125
|
+
previousScope: MailingListProviderScope | null;
|
|
126
|
+
nextScope: MailingListProviderScope;
|
|
127
|
+
placementModes: readonly ('default' | 'custom')[];
|
|
128
|
+
defaultChanged: boolean;
|
|
129
|
+
}>): MailingListSetupSwitchPlan;
|
|
130
|
+
export type MailingListProviderScope = Readonly<{
|
|
131
|
+
provider: 'native';
|
|
132
|
+
}> | Readonly<{
|
|
133
|
+
provider: 'mailchimp';
|
|
134
|
+
accountId: MailchimpAccountId;
|
|
135
|
+
}> | Readonly<{
|
|
136
|
+
provider: 'brevo';
|
|
137
|
+
accountId: BrevoAccountId;
|
|
138
|
+
}>;
|
|
139
|
+
export declare function mailingListProviderScopeFromConfigured(provider: ConfiguredMailingListProvider): MailingListProviderScope;
|
|
140
|
+
export declare function parseMailingListProviderScope(value: unknown): Result<MailingListProviderScope, 'invalid_mailing_list_provider_scope'>;
|
|
141
|
+
export declare function sameMailingListProviderScope(previous: MailingListProviderScope, next: MailingListProviderScope): boolean;
|
|
142
|
+
export declare function countDefaultMailingListPlacements(placementModes: readonly ('default' | 'custom')[]): number;
|