@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
|
@@ -4,6 +4,7 @@ export * from './entry-picker/index';
|
|
|
4
4
|
export * from './icon-picker/index';
|
|
5
5
|
export * from './inline-text/index';
|
|
6
6
|
export * from './link/index';
|
|
7
|
+
export * from './mailing-list-targeting/index';
|
|
7
8
|
export * from './offerings-preview/index';
|
|
8
9
|
export * from './reference/index';
|
|
9
10
|
export * from './rich-text/index';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { MailingListAuthoringContext } from '../../../../api/src/index';
|
|
2
|
+
import type { ReactElement } from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* The read-only "what every signup on this site shares" card. Editors only
|
|
5
|
+
* choose targeting; fields, confirmation and copy are set once by an
|
|
6
|
+
* administrator, so this tells them what they are working inside of.
|
|
7
|
+
*/
|
|
8
|
+
export declare function MailingListGlobalSettingsSummary({ context }: Readonly<{
|
|
9
|
+
context: MailingListAuthoringContext;
|
|
10
|
+
}>): ReactElement | null;
|
package/dist/_dts/editor-blocks/src/widgets/mailing-list-targeting/MailingListTargetingField.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { FieldWidgetProps, GroupFieldConfig } from '../../../../block-form/src/index';
|
|
2
|
+
import { type MailingListPlacementTargeting, type MailingListRuntimeContext } from '../../../../core/src/index';
|
|
3
|
+
export { MailingListGlobalSettingsSummary } from './MailingListGlobalSettingsSummary';
|
|
4
|
+
export declare function MailingListTargetingField({ path, backend, config, }: FieldWidgetProps<MailingListPlacementTargeting, GroupFieldConfig>): import("react").JSX.Element;
|
|
5
|
+
export declare function MailingListTargetingControl({ context, targeting, onChange, name, }: Readonly<{
|
|
6
|
+
context: Extract<MailingListRuntimeContext, {
|
|
7
|
+
tag: 'configured';
|
|
8
|
+
}>;
|
|
9
|
+
targeting: MailingListPlacementTargeting;
|
|
10
|
+
onChange: (value: MailingListPlacementTargeting) => void;
|
|
11
|
+
name: string;
|
|
12
|
+
}>): import("react").JSX.Element;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { MailingListAuthoringContext } from '../../../../api/src/index';
|
|
3
|
+
import type { SiteId } from '../../../../core/src/index';
|
|
4
|
+
export type MailingListAuthoringContextLoader = (siteId: SiteId) => Promise<MailingListAuthoringContext>;
|
|
5
|
+
type Value = Readonly<{
|
|
6
|
+
siteId: SiteId;
|
|
7
|
+
load: MailingListAuthoringContextLoader;
|
|
8
|
+
manageHref?: string;
|
|
9
|
+
}>;
|
|
10
|
+
export declare function MailingListTargetingProvider({ children, load, manageHref, siteId, }: Value & Readonly<{
|
|
11
|
+
children: ReactNode;
|
|
12
|
+
}>): import("react").JSX.Element;
|
|
13
|
+
export declare function useMailingListTargetingContext(): Value;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { MailingListAuthoringContext } from '../../../../api/src/index';
|
|
2
|
+
import type { ApiClient } from '../../../../api/src/request';
|
|
3
|
+
import type { SiteId } from '../../../../core/src/index';
|
|
4
|
+
export declare function loadMailingListAuthoringContext(input: Readonly<{
|
|
5
|
+
apiClient: ApiClient;
|
|
6
|
+
siteId: SiteId;
|
|
7
|
+
}>): Promise<MailingListAuthoringContext>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type MailingListPlacementTargeting, type MailingListRuntimeContext } from '../../../../core/src/index';
|
|
2
|
+
type ConfiguredContext = Extract<MailingListRuntimeContext, {
|
|
3
|
+
tag: 'configured';
|
|
4
|
+
}>;
|
|
5
|
+
type CustomTargeting = Exclude<MailingListPlacementTargeting, {
|
|
6
|
+
mode: 'default';
|
|
7
|
+
}>;
|
|
8
|
+
/** The name of the site's default topic/list/audience, or null when it no longer exists. */
|
|
9
|
+
export declare function defaultItemName(context: ConfiguredContext): string | null;
|
|
10
|
+
/** What the editor is choosing between, in the provider's own words. */
|
|
11
|
+
export declare function choiceNoun(context: ConfiguredContext, form?: 'singular' | 'plural'): string;
|
|
12
|
+
export declare function providerDisplayName(context: ConfiguredContext): string;
|
|
13
|
+
export declare function providerDefaultIsAvailable(context: ConfiguredContext): boolean;
|
|
14
|
+
export declare function createInitialCustom(context: ConfiguredContext): CustomTargeting;
|
|
15
|
+
export declare function changeSelectionMode(context: ConfiguredContext, targeting: CustomTargeting, mode: 'fixed' | 'visitor_choice'): CustomTargeting;
|
|
16
|
+
export declare function canOfferVisitorChoice(context: ConfiguredContext, targeting: CustomTargeting): boolean;
|
|
17
|
+
export declare function toggle(values: readonly string[], id: string): string[];
|
|
18
|
+
export declare function toggleRequired(values: readonly string[], id: string): string[];
|
|
19
|
+
export {};
|
|
@@ -30,6 +30,7 @@ export declare const previewWidgetOverrides: {
|
|
|
30
30
|
readonly buttonVariant: FieldWidgetComponent;
|
|
31
31
|
readonly offeringGroupOrder: FieldWidgetComponent;
|
|
32
32
|
readonly siteOptionPicker: FieldWidgetComponent;
|
|
33
|
+
readonly mailingListTargeting: FieldWidgetComponent;
|
|
33
34
|
};
|
|
34
35
|
export type { FieldWidgetComponent };
|
|
35
36
|
export { __testUtils, createPreviewEntryPickerAdapter, createPreviewLinkAdapters, createPreviewReferenceAdapters, createPreviewSiteOptionAdapters, };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ApiClient, ApiResult } from '../../../api/src/public/index';
|
|
2
|
+
import type { PublicReadEndpoint } from '../../../blocks/src/system/data/index';
|
|
3
|
+
import type { RiverbankClient } from './types';
|
|
4
|
+
type PublicAppointmentReadDeps = Readonly<{
|
|
5
|
+
apiClient: ApiClient;
|
|
6
|
+
resilientFetchData: <T>(policyEndpoint: PublicReadEndpoint, cacheKey: string, fetcher: (signal: AbortSignal) => Promise<ApiResult<T>>, options: Readonly<{
|
|
7
|
+
signal?: AbortSignal;
|
|
8
|
+
}>) => Promise<T>;
|
|
9
|
+
}>;
|
|
10
|
+
export type PublicAppointmentReadOperations = Pick<RiverbankClient, 'getPublicBookingServices' | 'getPublicWeeklySlotAvailability'>;
|
|
11
|
+
export declare function createPublicAppointmentReadOperations(deps: PublicAppointmentReadDeps): PublicAppointmentReadOperations;
|
|
12
|
+
export {};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { ApiClient, ApiResult } from '../../../api/src/public/index';
|
|
2
|
+
import type { PublicReadEndpoint } from '../../../blocks/src/system/data/index';
|
|
2
3
|
import type { RiverbankClient } from './types';
|
|
3
4
|
type PublicEventReadDeps = Readonly<{
|
|
4
5
|
apiClient: ApiClient;
|
|
5
|
-
resilientFetchData: <T>(cacheKey: string, fetcher: (signal: AbortSignal) => Promise<ApiResult<T>>, options: Readonly<{
|
|
6
|
+
resilientFetchData: <T>(policyEndpoint: PublicReadEndpoint, cacheKey: string, fetcher: (signal: AbortSignal) => Promise<ApiResult<T>>, options: Readonly<{
|
|
6
7
|
signal?: AbortSignal;
|
|
7
8
|
force?: boolean;
|
|
8
9
|
}>) => Promise<T>;
|
|
@@ -1,6 +1,13 @@
|
|
|
1
|
-
import { type SupportedLoaderEndpoint } from '../../../blocks/src/system/data/index';
|
|
2
1
|
export declare function shouldWrite(cacheEnabled: boolean, force: boolean | undefined): boolean;
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Applies the canonical block-loader freshness policy at the SDK fetch seam.
|
|
4
|
+
*
|
|
5
|
+
* Callers provide the endpoint identity, but do not opt into live behavior.
|
|
6
|
+
* This makes a newly-live endpoint bypass memory and fallback caches without a
|
|
7
|
+
* second method-level wiring change.
|
|
8
|
+
*/
|
|
9
|
+
export declare function applyPublicLoaderCachePolicy<TOptions extends Readonly<{
|
|
10
|
+
force?: boolean;
|
|
11
|
+
}>>(endpoint: string, options: TOptions): TOptions & Readonly<{
|
|
12
|
+
force?: boolean;
|
|
6
13
|
}>;
|
|
@@ -281,9 +281,7 @@ export type NavigationItemConfig = NavigationConfigItemInput;
|
|
|
281
281
|
* @example
|
|
282
282
|
* ```typescript
|
|
283
283
|
* {
|
|
284
|
-
*
|
|
285
|
-
* name: 'Main Navigation',
|
|
286
|
-
* isPrimary: true,
|
|
284
|
+
* location: 'main',
|
|
287
285
|
* items: [
|
|
288
286
|
* { label: 'Home', link: { kind: 'page', identifier: 'home' } },
|
|
289
287
|
* { label: 'About', link: { kind: 'page', identifier: 'about' } },
|
|
@@ -292,16 +290,8 @@ export type NavigationItemConfig = NavigationConfigItemInput;
|
|
|
292
290
|
* ```
|
|
293
291
|
*/
|
|
294
292
|
export interface NavigationMenuConfig {
|
|
295
|
-
/**
|
|
296
|
-
|
|
297
|
-
/** Menu display name */
|
|
298
|
-
name: string;
|
|
299
|
-
/** Is this the primary/main menu? */
|
|
300
|
-
isPrimary?: boolean;
|
|
301
|
-
/** Is this the footer menu? */
|
|
302
|
-
isFooter?: boolean;
|
|
303
|
-
/** Named footer destination. Prefer this for new configurations. */
|
|
304
|
-
footerRole?: 'main' | 'legal-policy' | null;
|
|
293
|
+
/** Fixed site destination. */
|
|
294
|
+
location: 'main' | 'footer' | 'legal';
|
|
305
295
|
/** Menu items */
|
|
306
296
|
items: NavigationItemConfig[];
|
|
307
297
|
}
|
|
@@ -93,14 +93,11 @@ export declare const entryConfigSchema: z.ZodObject<{
|
|
|
93
93
|
}, z.core.$strip>;
|
|
94
94
|
export declare const navigationItemConfigSchema: z.ZodType<NavigationConfigItemInput>;
|
|
95
95
|
export declare const navigationMenuConfigSchema: z.ZodObject<{
|
|
96
|
-
|
|
97
|
-
name: z.ZodString;
|
|
98
|
-
isPrimary: z.ZodOptional<z.ZodBoolean>;
|
|
99
|
-
isFooter: z.ZodOptional<z.ZodBoolean>;
|
|
100
|
-
footerRole: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
96
|
+
location: z.ZodEnum<{
|
|
101
97
|
main: "main";
|
|
102
|
-
|
|
103
|
-
|
|
98
|
+
legal: "legal";
|
|
99
|
+
footer: "footer";
|
|
100
|
+
}>;
|
|
104
101
|
items: z.ZodArray<z.ZodType<Readonly<{
|
|
105
102
|
label: string;
|
|
106
103
|
link: import("../../../api/src/index").NavigationAuthoringLinkInput;
|
|
@@ -112,7 +109,7 @@ export declare const navigationMenuConfigSchema: z.ZodObject<{
|
|
|
112
109
|
isCta?: boolean;
|
|
113
110
|
children?: readonly NavigationConfigItemInput[];
|
|
114
111
|
}>, unknown>>>;
|
|
115
|
-
}, z.core.$
|
|
112
|
+
}, z.core.$strict>;
|
|
116
113
|
export declare const siteSettingsConfigSchema: z.ZodObject<{
|
|
117
114
|
homepagePath: z.ZodOptional<z.ZodString>;
|
|
118
115
|
siteTitle: z.ZodOptional<z.ZodString>;
|
|
@@ -10,14 +10,14 @@
|
|
|
10
10
|
export declare const PREBUILD_PAGE_SIZE = 50;
|
|
11
11
|
/**
|
|
12
12
|
* Default ISR revalidation interval in seconds.
|
|
13
|
-
*
|
|
13
|
+
* Public pages can contain availability, whose freshness contract is 60 seconds.
|
|
14
14
|
*/
|
|
15
|
-
export declare const ISR_REVALIDATE_SECONDS =
|
|
15
|
+
export declare const ISR_REVALIDATE_SECONDS = 60;
|
|
16
16
|
/**
|
|
17
17
|
* Default cache TTL in seconds.
|
|
18
18
|
* Matches ISR_REVALIDATE_SECONDS for consistency.
|
|
19
19
|
*/
|
|
20
|
-
export declare const CACHE_TTL_SECONDS =
|
|
20
|
+
export declare const CACHE_TTL_SECONDS = 60;
|
|
21
21
|
/**
|
|
22
22
|
* Default maximum age for prebuild cache in seconds.
|
|
23
23
|
* 24 hours - older prebuilds are rejected.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export type { TipTapNode, TipTapMark, RichTextDoc, InlineText, InlineTextAccentTone, InlineTextHighlightTone, InlineTextMark, InlineTextRun, Media, LinkValue, InternalRouteOnlyLinkValue, InternalResolvedLinkValue, InternalLinkValue, ExternalLinkValue, CustomLinkValue, PageLinkValue, EntryLinkValue, RichTextPrimitiveProps, RichTextVariant, } from './content';
|
|
2
|
-
export type { AppointmentBookingContent, BlogListingContent, BlogPostContent, BodyTextAlignment, BodyTextContent, ButtonVariant, CalendarTabViews, CartContent, CardRole, CardStylesContent, CheckoutContent, CollectionContent, ColumnsContent, ColumnOption, ContainerStylesContent, ContentFrameIntent, CtaFullContent, DisplayMode, EmbedContent, EventCalendarContent, EventDetailsContent, EventLayout, EventListingContent, EventRegistrationContent, EventSpotlightContent, FaqContent, FaqItem, FeatureCardLegacySurfaceRole, FeatureCardSurfaceRole, FilterAutoShow, FormBlockContent, GiftingContent, HeroContent, HeroCta, HeroCtaInput, HeroMedia, ImageColSize, ImageGalleryContent, IntroContent, LocationMapContent, LayoutAlign, LayoutWidth, MediaTextAlignment, MediaTextAspectRatio, MediaTextContent, MediaTextImagePosition, NewsletterSignupContent,
|
|
2
|
+
export type { AppointmentBookingContent, BlogListingContent, BlogPostContent, BodyTextAlignment, BodyTextContent, ButtonVariant, CalendarTabViews, CartContent, CardRole, CardStylesContent, CheckoutContent, CollectionContent, ColumnsContent, ColumnOption, ContainerStylesContent, ContentFrameIntent, CtaFullContent, DisplayMode, EmbedContent, EventCalendarContent, EventDetailsContent, EventLayout, EventListingContent, EventRegistrationContent, EventSpotlightContent, FaqContent, FaqItem, FeatureCardLegacySurfaceRole, FeatureCardSurfaceRole, FilterAutoShow, FormBlockContent, GiftingContent, HeroContent, HeroCta, HeroCtaInput, HeroMedia, ImageColSize, ImageGalleryContent, IntroContent, LocationMapContent, LayoutAlign, LayoutWidth, MediaTextAlignment, MediaTextAspectRatio, MediaTextContent, MediaTextImagePosition, NewsletterSignupContent, OfferingsPreviewContent, ProductDetailContent, ProductListContent, RecurringScheduleContent, SectionStylesContent, SemanticIconId, SemanticSpacing, ShopContent, SingleButtonContent, SiteFooterContent, SiteHeaderContent, StackContentAlignment, StackImagePosition, SystemBlockContentByFullKind, SystemBlockContentByKind, SystemBlockContentFor, SystemBlockShortKind, TeamMembersContent, TestimonialEntryContent, TestimonialsBlockContent, ThumbnailPadding, ThumbnailShape, VideoGridContent, WeekStart, BlockIconValue, FeatureCardIconTreatment, } from './system-block-content';
|
|
3
3
|
export type { PageOutline, PageRuntimeBoundary, BlockOutline, RouteMap, RouteMapEntry, OccurrenceContextData, EntrySubrouteContextData, } from './page';
|
|
4
4
|
export type { Theme, ThemeTokens } from './theme';
|
|
5
5
|
export type { CustomCssDeclarationsInput, CustomCssRuleInput, CustomCssNestedRuleInput, CustomCssAtRuleInput, KeyframesAtRuleInput, FontFaceAtRuleInput, MediaAtRuleInput, SupportsAtRuleInput, RawAtRuleInput, } from './custom-css';
|
|
@@ -9,6 +9,8 @@ import type { EventRegistrationContent } from './event-registration-content';
|
|
|
9
9
|
export type { EventRegistrationContent } from './event-registration-content';
|
|
10
10
|
import type { Brand, EventCategoryId, RichTextDoc, VenueId } from '../../../core/src/index';
|
|
11
11
|
import type { SiteFooterContent as BlocksSiteFooterContent } from '../../../blocks/src/system/blocks/site-footer';
|
|
12
|
+
import type { NewsletterSignupContent as BlocksNewsletterSignupContent } from '../../../blocks/src/system/blocks/newsletter-signup';
|
|
13
|
+
import type { ContactNewsletterContent as BlocksContactNewsletterContent } from '../../../blocks/src/system/blocks/contact-newsletter';
|
|
12
14
|
import type { EventDetailsContent as BlocksEventDetailsContent } from '../../../blocks/src/system/blocks/event-details';
|
|
13
15
|
import type { EventCalendarContent as BlocksEventCalendarContent } from '../../../blocks/src/system/blocks/events/event-calendar';
|
|
14
16
|
import type { CalendarTabViews as BlocksCalendarTabViews, CalendarView as BlocksCalendarView, ColumnOption as BlocksColumnOption, DisplayMode as BlocksDisplayMode, EventLayout as BlocksEventLayout, FilterAutoShow as BlocksFilterAutoShow, WeekStart as BlocksWeekStart } from '../../../blocks/src/system/blocks/events/shared/types';
|
|
@@ -230,6 +232,8 @@ export type OfferingsPreviewGroupOverride = {
|
|
|
230
232
|
};
|
|
231
233
|
export type OfferingsPreviewGroupOrder = readonly OfferingsPreviewSourceKey[];
|
|
232
234
|
export type OfferingsPreviewContent = {
|
|
235
|
+
/** Internal system composition; not exposed as an editor control. */
|
|
236
|
+
displayMode?: 'preview' | 'catalogue';
|
|
233
237
|
heading?: string | null;
|
|
234
238
|
description?: unknown;
|
|
235
239
|
itemLimit?: '1' | '2' | '3' | '4' | '5' | '6' | null;
|
|
@@ -380,20 +384,7 @@ export type MediaTextContent = {
|
|
|
380
384
|
/** Compiler-owned: the frame a Look asks for around the block's content. */
|
|
381
385
|
_frameStyles?: ContentFrameIntent | null;
|
|
382
386
|
};
|
|
383
|
-
export type
|
|
384
|
-
export type NewsletterSignupContent = {
|
|
385
|
-
title?: string | null;
|
|
386
|
-
subtitle?: RichTextDoc | null;
|
|
387
|
-
listId?: string | null;
|
|
388
|
-
preset: NewsletterSignupPreset;
|
|
389
|
-
includePhone?: boolean | null;
|
|
390
|
-
buttonLabel?: string | null;
|
|
391
|
-
buttonVariant?: ButtonVariant | null;
|
|
392
|
-
successMessage?: string | null;
|
|
393
|
-
privacyNote?: string | null;
|
|
394
|
-
tags?: string | null;
|
|
395
|
-
_sectionStyles?: SectionStylesContent;
|
|
396
|
-
};
|
|
387
|
+
export type NewsletterSignupContent = BlocksNewsletterSignupContent;
|
|
397
388
|
export type RecurringScheduleContent = {
|
|
398
389
|
eyebrow?: string | null;
|
|
399
390
|
heading?: string | null;
|
|
@@ -407,23 +398,7 @@ export type RecurringScheduleContent = {
|
|
|
407
398
|
emptyMessage?: string | null;
|
|
408
399
|
_sectionStyles?: SectionStylesContent;
|
|
409
400
|
};
|
|
410
|
-
export type ContactNewsletterContent =
|
|
411
|
-
newsletterTitle?: string | null;
|
|
412
|
-
newsletterSubtitle?: RichTextDoc | null;
|
|
413
|
-
listId?: string | null;
|
|
414
|
-
preset?: NewsletterSignupPreset;
|
|
415
|
-
includePhone?: boolean;
|
|
416
|
-
newsletterButtonLabel?: string | null;
|
|
417
|
-
newsletterSuccessMessage?: string | null;
|
|
418
|
-
newsletterPrivacyNote?: string | null;
|
|
419
|
-
newsletterTags?: string | null;
|
|
420
|
-
contactTitle?: string | null;
|
|
421
|
-
contactIntro?: RichTextDoc | null;
|
|
422
|
-
formSlug: string;
|
|
423
|
-
contactSubmitLabel?: string | null;
|
|
424
|
-
contactSuccessMessage?: string | null;
|
|
425
|
-
_sectionStyles?: SectionStylesContent;
|
|
426
|
-
};
|
|
401
|
+
export type ContactNewsletterContent = BlocksContactNewsletterContent;
|
|
427
402
|
export type ShopContent = {
|
|
428
403
|
showPasses?: boolean | null;
|
|
429
404
|
showMemberships?: boolean | null;
|
|
@@ -581,6 +556,11 @@ export type AppointmentBookingContent = {
|
|
|
581
556
|
description?: unknown;
|
|
582
557
|
_sectionStyles?: SectionStylesContent;
|
|
583
558
|
};
|
|
559
|
+
export type AppointmentServicesContent = {
|
|
560
|
+
heading?: string | null;
|
|
561
|
+
description?: unknown;
|
|
562
|
+
_sectionStyles?: SectionStylesContent;
|
|
563
|
+
};
|
|
584
564
|
export type WeeklySlotAvailabilityContent = {
|
|
585
565
|
serviceId: string;
|
|
586
566
|
resourceId?: string | null;
|
|
@@ -659,6 +639,7 @@ export type SystemBlockContentByFullKind = {
|
|
|
659
639
|
'block.form': FormBlockContent;
|
|
660
640
|
'block.contact-newsletter': ContactNewsletterContent;
|
|
661
641
|
'block.appointment-booking': AppointmentBookingContent;
|
|
642
|
+
'block.appointment-services': AppointmentServicesContent;
|
|
662
643
|
'block.weekly-slot-availability': WeeklySlotAvailabilityContent;
|
|
663
644
|
'block.event-registration': EventRegistrationContent;
|
|
664
645
|
'block.event-details': EventDetailsContent;
|
|
@@ -259,39 +259,36 @@ export type SimpleMenuViewModel = Menu;
|
|
|
259
259
|
/** @deprecated Use `Logo` instead */
|
|
260
260
|
export type SimpleLogo = Logo;
|
|
261
261
|
/**
|
|
262
|
-
* Get the
|
|
263
|
-
* Returns
|
|
262
|
+
* Get the fixed main navigation menu object.
|
|
263
|
+
* Returns null when the runtime payload is incomplete.
|
|
264
264
|
*
|
|
265
265
|
* @example
|
|
266
266
|
* ```ts
|
|
267
267
|
* const menu = getPrimaryNavigation(siteData.navigation);
|
|
268
|
-
* console.log(menu?.
|
|
268
|
+
* console.log(menu?.location); // "main"
|
|
269
269
|
* ```
|
|
270
270
|
*/
|
|
271
271
|
export declare function getPrimaryNavigation(navigation: NavigationMenuWithItems[] | null | undefined): NavigationMenuWithItems | null;
|
|
272
272
|
/**
|
|
273
|
-
* Get the footer navigation menu object.
|
|
274
|
-
* Returns menu marked as isFooter, or null if none marked.
|
|
273
|
+
* Get the fixed footer navigation menu object.
|
|
275
274
|
*
|
|
276
275
|
* @example
|
|
277
276
|
* ```ts
|
|
278
277
|
* const menu = getFooterNavigation(siteData.navigation);
|
|
279
|
-
* console.log(menu?.
|
|
278
|
+
* console.log(menu?.location); // "footer"
|
|
280
279
|
* ```
|
|
281
280
|
*/
|
|
282
281
|
export declare function getFooterNavigation(navigation: NavigationMenuWithItems[] | null | undefined): NavigationMenuWithItems | null;
|
|
283
282
|
export declare function getFooterNavigationByRole(navigation: NavigationMenuWithItems[] | null | undefined, role: 'main' | 'legal-policy'): NavigationMenuWithItems | null;
|
|
284
283
|
/**
|
|
285
|
-
*
|
|
286
|
-
*
|
|
287
|
-
*
|
|
288
|
-
*
|
|
289
|
-
* const footerMenu = getNavigationBySlug(siteData.navigation, 'footer');
|
|
290
|
-
* ```
|
|
284
|
+
* Select one of the three fixed navigation destinations.
|
|
285
|
+
* A canonical payload has exactly one menu for each location; returning null
|
|
286
|
+
* keeps malformed or incomplete payloads visible to the caller rather than
|
|
287
|
+
* borrowing a different location's links.
|
|
291
288
|
*/
|
|
292
|
-
export declare function
|
|
289
|
+
export declare function getNavigationByLocation(navigation: NavigationMenuWithItems[] | null | undefined, location: 'main' | 'footer' | 'legal'): NavigationMenuWithItems | null;
|
|
293
290
|
/**
|
|
294
|
-
* Get nav items from the
|
|
291
|
+
* Get nav items from the fixed main menu.
|
|
295
292
|
* Returns nested structure supporting both links and dropdowns.
|
|
296
293
|
* For canonical links (`kind: 'page' | 'entry'`), pass `routes` + identifier maps in options.
|
|
297
294
|
*
|
|
@@ -310,21 +307,6 @@ export declare function getNavigationBySlug(navigation: NavigationMenuWithItems[
|
|
|
310
307
|
* ```
|
|
311
308
|
*/
|
|
312
309
|
export declare function getPrimaryNavItems(navigation: NavigationMenuWithItems[], options?: NavigationRenderOptions): NavItem[];
|
|
313
|
-
/**
|
|
314
|
-
* Get nav items from a specific menu by slug.
|
|
315
|
-
* Returns nested structure supporting both links and dropdowns.
|
|
316
|
-
* For canonical links (`kind: 'page' | 'entry'`), pass `routes` + identifier maps in options.
|
|
317
|
-
*
|
|
318
|
-
* @example
|
|
319
|
-
* ```ts
|
|
320
|
-
* const footerNav = getNavItemsBySlug(siteData.navigation, 'footer', {
|
|
321
|
-
* routes: siteData.routes,
|
|
322
|
-
* pagesByIdentifier: siteData.pagesByIdentifier,
|
|
323
|
-
* entriesByIdentifier: siteData.entriesByIdentifier,
|
|
324
|
-
* });
|
|
325
|
-
* ```
|
|
326
|
-
*/
|
|
327
|
-
export declare function getNavItemsBySlug(navigation: NavigationMenuWithItems[], slug: string, options?: NavigationRenderOptions): NavItem[];
|
|
328
310
|
/**
|
|
329
311
|
* Transform a menu into NavItem array.
|
|
330
312
|
* Builds nested structure from flat items, supporting dropdowns with children.
|
|
@@ -49,14 +49,14 @@ export { createSitemap, type CreateSitemapOptions, type SitemapGenerator, } from
|
|
|
49
49
|
export { createRobots, type CreateRobotsOptions } from './robots';
|
|
50
50
|
/**
|
|
51
51
|
* ISR revalidation duration in seconds for production mode.
|
|
52
|
-
*
|
|
52
|
+
* Public pages can contain availability, whose freshness contract is 60 seconds.
|
|
53
53
|
*/
|
|
54
|
-
export declare const ISR_REVALIDATE_SECONDS =
|
|
54
|
+
export declare const ISR_REVALIDATE_SECONDS = 60;
|
|
55
55
|
export interface ISRConfig {
|
|
56
56
|
/**
|
|
57
57
|
* Revalidation interval in seconds.
|
|
58
58
|
* - 0: Dynamic rendering (no caching) - used in preview mode
|
|
59
|
-
* -
|
|
59
|
+
* - 60: one minute ISR - used in production mode
|
|
60
60
|
*/
|
|
61
61
|
revalidate: number | false;
|
|
62
62
|
/**
|
|
@@ -70,7 +70,7 @@ export interface ISRConfig {
|
|
|
70
70
|
*
|
|
71
71
|
* Do not use the returned value directly in a Next.js route-segment config
|
|
72
72
|
* export. Next statically analyzes those exports and requires a literal such as
|
|
73
|
-
* `export const revalidate =
|
|
73
|
+
* `export const revalidate = 60`.
|
|
74
74
|
*
|
|
75
75
|
* @deprecated Next.js route-segment config must be statically analyzable, which
|
|
76
76
|
* was this helper's intended use. Export a literal `revalidate` value and use
|
|
@@ -138,12 +138,8 @@ export interface EntriesCacheFile {
|
|
|
138
138
|
export interface NavigationCacheFile {
|
|
139
139
|
/** Navigation menu data */
|
|
140
140
|
menus: Array<{
|
|
141
|
-
/** Menu identifier (used as lookup key) */
|
|
142
|
-
identifier: string | null;
|
|
143
|
-
/** Menu ID (fallback if no identifier) */
|
|
144
141
|
id: string;
|
|
145
|
-
|
|
146
|
-
name: string;
|
|
142
|
+
location: 'main' | 'footer' | 'legal';
|
|
147
143
|
/** Navigation items in this menu */
|
|
148
144
|
items: NavigationItemRecord[];
|
|
149
145
|
}>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { AddressedLocationValue,
|
|
1
|
+
import type { AddressedLocationValue, BusinessAddress } from '../../../core/src/index';
|
|
2
2
|
import type { ResolvedInternalLinkEntityType } from '../../../blocks/src/index';
|
|
3
|
-
import type { APIEndpoints, RoutableContentItem as ApiRoutableContentItem, SdkRuntimePageSurfaceSubject as ApiSdkRuntimePageSurfaceSubject, SiteBySlugResponse as ApiSiteBySlugResponse, SiteBookingOfferingPresetSummary as ApiSiteBookingOfferingPresetSummary, SdkBlockContentAdmission } from '../../../api/src/index';
|
|
3
|
+
import type { APIEndpoints, PublicBookingService as ApiPublicBookingService, RoutableContentItem as ApiRoutableContentItem, SdkRuntimePageSurfaceSubject as ApiSdkRuntimePageSurfaceSubject, SiteBySlugResponse as ApiSiteBySlugResponse, SiteBookingOfferingPresetSummary as ApiSiteBookingOfferingPresetSummary, SdkBlockContentAdmission } from '../../../api/src/index';
|
|
4
4
|
import type { MediaAssetIndexItem, SiteFooterContent, SiteHeaderContent } from '../contracts';
|
|
5
5
|
import type { CompiledBoundaryRuntime } from '../../../theme-core/src/site-styles/index';
|
|
6
6
|
import type { BlockFieldConfig as SdkBlockFieldConfig, BlockFieldOptionsMap as SdkBlockFieldOptionsMap, ContentConfig as SdkContentConfig, ContainerOptionsConfig as SdkContainerOptionsConfig, FieldSelectOption as SdkFieldSelectOption, SdkCustomBlock, SdkThemeConfig, SdkThemePalette, SectionBackground as SdkSectionBackground, SectionOptionsConfig as SdkSectionOptionsConfig, SiteStyleConfig as SdkSiteStyleConfig } from '../config/types';
|
|
@@ -169,11 +169,7 @@ export interface NavigationItemRecord {
|
|
|
169
169
|
}
|
|
170
170
|
export interface NavigationMenuRecord {
|
|
171
171
|
id: string;
|
|
172
|
-
|
|
173
|
-
name: string;
|
|
174
|
-
isPrimary: boolean;
|
|
175
|
-
isFooter: boolean;
|
|
176
|
-
footerRole: 'main' | 'legal-policy' | null;
|
|
172
|
+
location: 'main' | 'footer' | 'legal';
|
|
177
173
|
createdAt?: string | null;
|
|
178
174
|
updatedAt?: string | null;
|
|
179
175
|
}
|
|
@@ -226,10 +222,31 @@ export type SitePrivacyPolicyDocument = {
|
|
|
226
222
|
sections: SitePrivacyPolicySection[];
|
|
227
223
|
};
|
|
228
224
|
export type SiteLegalJurisdiction = 'UK' | 'US' | 'EU' | 'CA' | 'AU' | 'OTHER';
|
|
225
|
+
export type SiteLegalIdentitySource = 'public' | 'custom';
|
|
229
226
|
export type SiteLegalProfilePayload = {
|
|
230
227
|
legalEntityName: string | null;
|
|
231
228
|
privacyContactEmail: string | null;
|
|
232
229
|
jurisdiction: SiteLegalJurisdiction;
|
|
230
|
+
legalEntityNameSource: SiteLegalIdentitySource;
|
|
231
|
+
privacyContactEmailSource: SiteLegalIdentitySource;
|
|
232
|
+
privacyPolicyPublished: boolean;
|
|
233
|
+
};
|
|
234
|
+
export type SiteRuntimeBusinessDetails = {
|
|
235
|
+
tagline: string | null;
|
|
236
|
+
contact: {
|
|
237
|
+
kind: 'phone';
|
|
238
|
+
phone: string;
|
|
239
|
+
email: null;
|
|
240
|
+
} | {
|
|
241
|
+
kind: 'email';
|
|
242
|
+
phone: null;
|
|
243
|
+
email: string;
|
|
244
|
+
} | {
|
|
245
|
+
kind: 'phone-and-email';
|
|
246
|
+
phone: string;
|
|
247
|
+
email: string;
|
|
248
|
+
} | null;
|
|
249
|
+
addressVisibility: 'shown' | 'hidden';
|
|
233
250
|
};
|
|
234
251
|
export type SiteRuntimePrivacyPolicy = {
|
|
235
252
|
path: string;
|
|
@@ -269,10 +286,9 @@ export type SiteRouteRecord = {
|
|
|
269
286
|
publishedAt?: string | null;
|
|
270
287
|
};
|
|
271
288
|
export type SiteBookingOfferingPresetSummary = ApiSiteBookingOfferingPresetSummary;
|
|
272
|
-
|
|
273
|
-
type SiteSelectionResponse = Pick<ApiSiteBySlugResponse, 'theme' | 'themeId' | Extract<keyof ApiSiteBySlugResponse, `selection${string}`>>;
|
|
289
|
+
type SiteSelectionResponse = Pick<ApiSiteBySlugResponse, 'theme' | 'themeId' | 'bookingAttribution' | Extract<keyof ApiSiteBySlugResponse, `selection${string}`>>;
|
|
274
290
|
export type SiteResponse = SiteSelectionResponse & {
|
|
275
|
-
site: {
|
|
291
|
+
site: ApiSiteBySlugResponse['site'] & {
|
|
276
292
|
id: string;
|
|
277
293
|
title: string;
|
|
278
294
|
slug: string;
|
|
@@ -295,9 +311,11 @@ export type SiteResponse = SiteSelectionResponse & {
|
|
|
295
311
|
portalEnabled?: boolean;
|
|
296
312
|
commerceEnabled?: boolean;
|
|
297
313
|
bookingOfferingPresets?: readonly SiteBookingOfferingPresetSummary[];
|
|
314
|
+
mailingList?: import('../../../core/src/index').MailingListRuntimeContext;
|
|
298
315
|
bookingTimeZone?: string;
|
|
299
316
|
analytics?: SiteAnalyticsSettingsPayload;
|
|
300
317
|
privacyPolicy?: SiteRuntimePrivacyPolicy;
|
|
318
|
+
businessDetails?: SiteRuntimeBusinessDetails;
|
|
301
319
|
routes: Record<string, SiteRouteRecord>;
|
|
302
320
|
layout: SiteLayoutResolvedPayload;
|
|
303
321
|
customDomain: string | null;
|
|
@@ -335,6 +353,7 @@ export type SdkRuntimePage = {
|
|
|
335
353
|
canonicalUrl?: string | null;
|
|
336
354
|
blocks: Array<{
|
|
337
355
|
id: string;
|
|
356
|
+
contentVersionId: string | null;
|
|
338
357
|
kind: string;
|
|
339
358
|
purpose?: string;
|
|
340
359
|
content: Record<string, unknown>;
|
|
@@ -353,37 +372,34 @@ export type SdkTemplate = {
|
|
|
353
372
|
bindings: Record<string, unknown> | null;
|
|
354
373
|
}>;
|
|
355
374
|
};
|
|
375
|
+
type SdkSlotBlockIdentity = {
|
|
376
|
+
id: string;
|
|
377
|
+
blockId?: string;
|
|
378
|
+
contentVersionId: string;
|
|
379
|
+
kind: string;
|
|
380
|
+
purpose: string;
|
|
381
|
+
orderIndex?: number | null;
|
|
382
|
+
admission?: SdkBlockContentAdmission;
|
|
383
|
+
};
|
|
356
384
|
export type SdkEntrySlotContent = {
|
|
357
385
|
entrySlotId: string;
|
|
358
386
|
slotKey: string;
|
|
359
|
-
blocks: Array<{
|
|
360
|
-
id: string;
|
|
361
|
-
blockId?: string;
|
|
362
|
-
kind: string;
|
|
363
|
-
purpose: string;
|
|
364
|
-
orderIndex?: number | null;
|
|
387
|
+
blocks: Array<SdkSlotBlockIdentity & {
|
|
365
388
|
content: Record<string, unknown> | null;
|
|
366
|
-
admission?: SdkBlockContentAdmission;
|
|
367
389
|
}>;
|
|
368
390
|
};
|
|
369
391
|
export type SdkSurfaceSlotContent = {
|
|
370
392
|
surfaceSlotId: string;
|
|
371
393
|
pageSurfaceId: string;
|
|
372
394
|
slotKey: string;
|
|
373
|
-
blocks: Array<{
|
|
374
|
-
id: string;
|
|
375
|
-
blockId?: string;
|
|
395
|
+
blocks: Array<SdkSlotBlockIdentity & {
|
|
376
396
|
surfaceSlotId: string;
|
|
377
397
|
identifier?: string | null;
|
|
378
|
-
kind: string;
|
|
379
|
-
purpose: string;
|
|
380
|
-
orderIndex?: number | null;
|
|
381
398
|
content: Record<string, unknown>;
|
|
382
399
|
draftContent?: unknown;
|
|
383
400
|
publishedContent?: unknown;
|
|
384
401
|
draftContentId?: string | null;
|
|
385
402
|
publishedContentId?: string | null;
|
|
386
|
-
admission?: SdkBlockContentAdmission;
|
|
387
403
|
}>;
|
|
388
404
|
};
|
|
389
405
|
export type SdkRuntimePageSurfaceSubject = ApiSdkRuntimePageSurfaceSubject;
|
|
@@ -534,16 +550,11 @@ export type PublicFormResponse = {
|
|
|
534
550
|
export type PublicFormsResponse = {
|
|
535
551
|
forms: FormRecord[];
|
|
536
552
|
};
|
|
537
|
-
export type PublicBookingService =
|
|
538
|
-
id: string;
|
|
539
|
-
siteId: string;
|
|
540
|
-
title: string;
|
|
541
|
-
description: string | null;
|
|
542
|
-
durationMinutes: number;
|
|
543
|
-
consent?: BookingConsent;
|
|
544
|
-
};
|
|
553
|
+
export type PublicBookingService = ApiPublicBookingService;
|
|
545
554
|
export type PublicBookingServicesResponse = {
|
|
546
|
-
services: PublicBookingService
|
|
555
|
+
services: Array<Omit<PublicBookingService, 'description'> & {
|
|
556
|
+
description?: string;
|
|
557
|
+
}>;
|
|
547
558
|
};
|
|
548
559
|
export type PublicWeeklySlotAvailabilityOption = {
|
|
549
560
|
id: string;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
import type { BlockLoaderFailures } from '../../../blocks/src/system/data/index';
|
|
2
3
|
import type { RenderablePageOutline as BlocksRenderablePageOutline } from '../../../blocks/src/index';
|
|
3
4
|
import type { EntrySubrouteContextData, MediaAssetIndexItem, OccurrenceContextData, PageOutline, PageRuntimeBoundary, ResolveImageUrlContextInput, RouteMap, Theme, ThemeTokens } from '../contracts';
|
|
4
5
|
import type { SdkCustomBlock } from '../config/types';
|
|
@@ -20,8 +21,12 @@ export declare const MissingBlockOverrideError: MissingBlockOverrideErrorConstru
|
|
|
20
21
|
export type PageRendererDataContext = {
|
|
21
22
|
siteId?: string;
|
|
22
23
|
pageId?: string;
|
|
24
|
+
/** Canonical request pathname used by blocks when resolving same-site destinations. */
|
|
25
|
+
pathname?: string;
|
|
23
26
|
resolvedData?: Record<string, Record<string, unknown>>;
|
|
27
|
+
loaderFailures?: BlockLoaderFailures;
|
|
24
28
|
bookingOfferingPresets?: readonly SiteBookingOfferingPresetSummary[];
|
|
29
|
+
mailingList?: import('../../../core/src/index').MailingListRuntimeContext;
|
|
25
30
|
bookingTimeZone?: string;
|
|
26
31
|
previewStage?: 'published' | 'preview';
|
|
27
32
|
routes?: RouteMap;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type ReactElement, type ReactNode } from 'react';
|
|
2
|
+
import { type BlockApiClient } from '../../../blocks/src/client';
|
|
2
3
|
export type BlockApiAuth = Readonly<{
|
|
3
4
|
type: 'api-key';
|
|
4
5
|
key: string;
|
|
@@ -14,26 +15,8 @@ export type BlockApiConfig = Readonly<{
|
|
|
14
15
|
siteId?: string;
|
|
15
16
|
isPreview?: boolean;
|
|
16
17
|
}>;
|
|
17
|
-
export type NewsletterSubscribeInput =
|
|
18
|
-
|
|
19
|
-
firstName?: string;
|
|
20
|
-
lastName?: string;
|
|
21
|
-
name?: string;
|
|
22
|
-
company?: string;
|
|
23
|
-
phone?: string;
|
|
24
|
-
target: Readonly<{
|
|
25
|
-
tag: 'published_block_ref';
|
|
26
|
-
destinationRef: Readonly<{
|
|
27
|
-
tag: 'block_ref';
|
|
28
|
-
blockId: string;
|
|
29
|
-
}>;
|
|
30
|
-
}>;
|
|
31
|
-
tags?: string[];
|
|
32
|
-
}>;
|
|
33
|
-
export type NewsletterSubscribeResult = Readonly<{
|
|
34
|
-
subscribed: boolean;
|
|
35
|
-
requiresConfirmation?: boolean;
|
|
36
|
-
}>;
|
|
18
|
+
export type NewsletterSubscribeInput = Parameters<BlockApiClient['subscribeNewsletter']>[0];
|
|
19
|
+
export type NewsletterSubscribeResult = Awaited<ReturnType<BlockApiClient['subscribeNewsletter']>>;
|
|
37
20
|
export declare function BlockApiProvider({ config, children, }: Readonly<{
|
|
38
21
|
config: BlockApiConfig;
|
|
39
22
|
children: ReactNode;
|