@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
|
@@ -1634,6 +1634,55 @@ function interpolateHex(startHex, endHex, position) {
|
|
|
1634
1634
|
const channel = (from, to) => Math.round(from + (to - from) * position).toString(16).padStart(2, "0");
|
|
1635
1635
|
return `#${channel(start.r, end.r)}${channel(start.g, end.g)}${channel(start.b, end.b)}`;
|
|
1636
1636
|
}
|
|
1637
|
+
//#endregion
|
|
1638
|
+
//#region ../theme-core/src/utils/colorStyles.ts
|
|
1639
|
+
const COLOR_VAR_PREFIX = "--tb-";
|
|
1640
|
+
function parseToken(source) {
|
|
1641
|
+
const parts = parseColorTokenParts(source);
|
|
1642
|
+
if (parts.kind === "raw") return {
|
|
1643
|
+
token: source,
|
|
1644
|
+
raw: parts.value
|
|
1645
|
+
};
|
|
1646
|
+
if (parts.kind === "invalid") return { token: source };
|
|
1647
|
+
return {
|
|
1648
|
+
token: parts.token,
|
|
1649
|
+
opacityPercent: parts.opacityPercent === null ? void 0 : parts.opacityPercent
|
|
1650
|
+
};
|
|
1651
|
+
}
|
|
1652
|
+
/**
|
|
1653
|
+
* Converts a theme color token to a CSS rgb value.
|
|
1654
|
+
* This is the primary function for applying theme colors to CSS properties.
|
|
1655
|
+
*
|
|
1656
|
+
* @param token - Theme color token (semantic, with opacity, or raw)
|
|
1657
|
+
* @returns CSS color value (rgb with optional alpha, or raw CSS value)
|
|
1658
|
+
*
|
|
1659
|
+
* @example
|
|
1660
|
+
* rgbColorValue('primary') // => 'rgb(var(--tb-primary))'
|
|
1661
|
+
* rgbColorValue('surface/95') // => 'rgb(var(--tb-surface) / 0.95)'
|
|
1662
|
+
* rgbColorValue('raw:transparent') // => 'transparent'
|
|
1663
|
+
*/
|
|
1664
|
+
function rgbColorValue(token) {
|
|
1665
|
+
const { token: baseToken, opacityPercent, raw } = parseToken(token);
|
|
1666
|
+
if (raw) return raw;
|
|
1667
|
+
const cssVar = `${COLOR_VAR_PREFIX}${baseToken}`;
|
|
1668
|
+
if (opacityPercent === void 0) return `rgb(var(${cssVar}))`;
|
|
1669
|
+
return `rgb(var(${cssVar}) / ${opacityPercent / 100})`;
|
|
1670
|
+
}
|
|
1671
|
+
/**
|
|
1672
|
+
* Converts a theme color token to a CSS variable reference.
|
|
1673
|
+
* Note: This returns the base variable without rgb() wrapper, ignoring opacity.
|
|
1674
|
+
*
|
|
1675
|
+
* @param token - Theme color token
|
|
1676
|
+
* @returns CSS variable reference
|
|
1677
|
+
*
|
|
1678
|
+
* @example
|
|
1679
|
+
* cssVarValue('primary') // => 'var(--tb-primary)'
|
|
1680
|
+
* cssVarValue('surface/95') // => 'var(--tb-surface)' (opacity ignored)
|
|
1681
|
+
*/
|
|
1682
|
+
function cssVarValue(token) {
|
|
1683
|
+
const { token: baseToken } = parseToken(token);
|
|
1684
|
+
return `var(${COLOR_VAR_PREFIX}${baseToken})`;
|
|
1685
|
+
}
|
|
1637
1686
|
shadeBackgroundEffect({
|
|
1638
1687
|
id: "darken-background",
|
|
1639
1688
|
name: "Darken on Hover",
|
|
@@ -1688,55 +1737,6 @@ function shadeBackgroundEffect(config) {
|
|
|
1688
1737
|
};
|
|
1689
1738
|
}
|
|
1690
1739
|
//#endregion
|
|
1691
|
-
//#region ../theme-core/src/utils/colorStyles.ts
|
|
1692
|
-
const COLOR_VAR_PREFIX = "--tb-";
|
|
1693
|
-
function parseToken(source) {
|
|
1694
|
-
const parts = parseColorTokenParts(source);
|
|
1695
|
-
if (parts.kind === "raw") return {
|
|
1696
|
-
token: source,
|
|
1697
|
-
raw: parts.value
|
|
1698
|
-
};
|
|
1699
|
-
if (parts.kind === "invalid") return { token: source };
|
|
1700
|
-
return {
|
|
1701
|
-
token: parts.token,
|
|
1702
|
-
opacityPercent: parts.opacityPercent === null ? void 0 : parts.opacityPercent
|
|
1703
|
-
};
|
|
1704
|
-
}
|
|
1705
|
-
/**
|
|
1706
|
-
* Converts a theme color token to a CSS rgb value.
|
|
1707
|
-
* This is the primary function for applying theme colors to CSS properties.
|
|
1708
|
-
*
|
|
1709
|
-
* @param token - Theme color token (semantic, with opacity, or raw)
|
|
1710
|
-
* @returns CSS color value (rgb with optional alpha, or raw CSS value)
|
|
1711
|
-
*
|
|
1712
|
-
* @example
|
|
1713
|
-
* rgbColorValue('primary') // => 'rgb(var(--tb-primary))'
|
|
1714
|
-
* rgbColorValue('surface/95') // => 'rgb(var(--tb-surface) / 0.95)'
|
|
1715
|
-
* rgbColorValue('raw:transparent') // => 'transparent'
|
|
1716
|
-
*/
|
|
1717
|
-
function rgbColorValue(token) {
|
|
1718
|
-
const { token: baseToken, opacityPercent, raw } = parseToken(token);
|
|
1719
|
-
if (raw) return raw;
|
|
1720
|
-
const cssVar = `${COLOR_VAR_PREFIX}${baseToken}`;
|
|
1721
|
-
if (opacityPercent === void 0) return `rgb(var(${cssVar}))`;
|
|
1722
|
-
return `rgb(var(${cssVar}) / ${opacityPercent / 100})`;
|
|
1723
|
-
}
|
|
1724
|
-
/**
|
|
1725
|
-
* Converts a theme color token to a CSS variable reference.
|
|
1726
|
-
* Note: This returns the base variable without rgb() wrapper, ignoring opacity.
|
|
1727
|
-
*
|
|
1728
|
-
* @param token - Theme color token
|
|
1729
|
-
* @returns CSS variable reference
|
|
1730
|
-
*
|
|
1731
|
-
* @example
|
|
1732
|
-
* cssVarValue('primary') // => 'var(--tb-primary)'
|
|
1733
|
-
* cssVarValue('surface/95') // => 'var(--tb-surface)' (opacity ignored)
|
|
1734
|
-
*/
|
|
1735
|
-
function cssVarValue(token) {
|
|
1736
|
-
const { token: baseToken } = parseToken(token);
|
|
1737
|
-
return `var(${COLOR_VAR_PREFIX}${baseToken})`;
|
|
1738
|
-
}
|
|
1739
|
-
//#endregion
|
|
1740
1740
|
//#region ../theme-core/src/utils/tokenOrColor.ts
|
|
1741
1741
|
/**
|
|
1742
1742
|
* Runtime color-reference fields intentionally accept any string, including
|
|
@@ -5076,8 +5076,14 @@ const headerInteractionPillPaletteValues = [
|
|
|
5076
5076
|
"accent"
|
|
5077
5077
|
];
|
|
5078
5078
|
/**
|
|
5079
|
-
* "No pill":
|
|
5080
|
-
*
|
|
5079
|
+
* "No pill": a colour change on hover rather than a filled background.
|
|
5080
|
+
*
|
|
5081
|
+
* The palette step writes nothing (#1318 Phase 4c decision 2), but on a
|
|
5082
|
+
* foreground-adaptive style that is not the end of the story: the hover colour
|
|
5083
|
+
* is derived from the resolved opening foreground at render time, paired with
|
|
5084
|
+
* the resting colour, so `quiet` resolves to a definite colour rather than to
|
|
5085
|
+
* whatever brand token the recipe happened to name. See
|
|
5086
|
+
* `applyOpeningForeground`.
|
|
5081
5087
|
*
|
|
5082
5088
|
* It exists because "a colour change on hover, no filled background" was not
|
|
5083
5089
|
* expressible in the vocabulary, and it is what
|
|
@@ -10921,6 +10927,132 @@ ${root} .step-connector {
|
|
|
10921
10927
|
return cssBlocks.join("\n\n");
|
|
10922
10928
|
}
|
|
10923
10929
|
//#endregion
|
|
10930
|
+
//#region ../theme-core/src/typography/generateTypographyCss.ts
|
|
10931
|
+
function globalHeadingColorFallback(level) {
|
|
10932
|
+
return `var(--hc-h${level}, var(--hc-heading, ${DEFAULT_SURFACE_TEXT_COLOR}))`;
|
|
10933
|
+
}
|
|
10934
|
+
/**
|
|
10935
|
+
* Generate typography CSS for heading elements.
|
|
10936
|
+
*
|
|
10937
|
+
* Creates scoped CSS that:
|
|
10938
|
+
* - Applies font-size, font-weight, letter-spacing, line-height to h1-h6
|
|
10939
|
+
* - Uses clamp() for fluid responsive sizing
|
|
10940
|
+
* - Provides variant classes (.heading-display, .heading-compact)
|
|
10941
|
+
*
|
|
10942
|
+
* Selectors use :where() for zero specificity, allowing site styles to override easily.
|
|
10943
|
+
*/
|
|
10944
|
+
function generateTypographyCss({ themeId }) {
|
|
10945
|
+
const root = `:where([data-theme-scope="${themeId}"])`;
|
|
10946
|
+
const cssBlocks = [];
|
|
10947
|
+
cssBlocks.push(`/* Base heading styles */
|
|
10948
|
+
${root} :where(h1, h2, h3, h4, h5, h6) {
|
|
10949
|
+
font-family: var(--font-heading);
|
|
10950
|
+
font-style: var(--fi-heading, normal);
|
|
10951
|
+
text-transform: var(--tt-heading, none);
|
|
10952
|
+
font-variant: var(--fv-heading, normal);
|
|
10953
|
+
margin: 0;
|
|
10954
|
+
}`);
|
|
10955
|
+
cssBlocks.push(`/* Heading level styles with fluid typography */
|
|
10956
|
+
${root} :where(h1) {
|
|
10957
|
+
font-size: var(--fs-h1-fluid, var(--fs-h1));
|
|
10958
|
+
font-weight: var(--fw-h1, var(--font-weight-heading));
|
|
10959
|
+
font-style: var(--fi-h1, var(--fi-heading, normal));
|
|
10960
|
+
letter-spacing: var(--ls-h1, var(--ls-heading));
|
|
10961
|
+
line-height: var(--lh-h1, var(--lh-heading));
|
|
10962
|
+
color: ${surfaceForegroundValue("heading", globalHeadingColorFallback(1))};
|
|
10963
|
+
}
|
|
10964
|
+
|
|
10965
|
+
${root} :where(h2) {
|
|
10966
|
+
font-size: var(--fs-h2-fluid, var(--fs-h2));
|
|
10967
|
+
font-weight: var(--fw-h2, var(--font-weight-heading));
|
|
10968
|
+
font-style: var(--fi-h2, var(--fi-heading, normal));
|
|
10969
|
+
letter-spacing: var(--ls-h2, var(--ls-heading));
|
|
10970
|
+
line-height: var(--lh-h2, var(--lh-heading));
|
|
10971
|
+
color: ${surfaceForegroundValue("heading", globalHeadingColorFallback(2))};
|
|
10972
|
+
}
|
|
10973
|
+
|
|
10974
|
+
${root} :where(h3) {
|
|
10975
|
+
font-size: var(--fs-h3-fluid, var(--fs-h3));
|
|
10976
|
+
font-weight: var(--fw-h3, var(--font-weight-heading));
|
|
10977
|
+
font-style: var(--fi-h3, var(--fi-heading, normal));
|
|
10978
|
+
letter-spacing: var(--ls-h3, var(--ls-heading));
|
|
10979
|
+
line-height: var(--lh-h3, var(--lh-heading));
|
|
10980
|
+
color: ${surfaceForegroundValue("heading", globalHeadingColorFallback(3))};
|
|
10981
|
+
}
|
|
10982
|
+
|
|
10983
|
+
${root} :where(h4) {
|
|
10984
|
+
font-size: var(--fs-h4-fluid, var(--fs-h4, var(--fs-h3)));
|
|
10985
|
+
font-weight: var(--fw-h4, var(--font-weight-heading));
|
|
10986
|
+
font-style: var(--fi-h4, var(--fi-heading, normal));
|
|
10987
|
+
letter-spacing: var(--ls-h4, var(--ls-heading));
|
|
10988
|
+
line-height: var(--lh-h4, var(--lh-heading));
|
|
10989
|
+
color: ${surfaceForegroundValue("heading", globalHeadingColorFallback(4))};
|
|
10990
|
+
}
|
|
10991
|
+
|
|
10992
|
+
${root} :where(h5) {
|
|
10993
|
+
font-size: var(--fs-h5-fluid, var(--fs-h5, var(--fs-body)));
|
|
10994
|
+
font-weight: var(--fw-h5, var(--font-weight-heading));
|
|
10995
|
+
font-style: var(--fi-h5, var(--fi-heading, normal));
|
|
10996
|
+
letter-spacing: var(--ls-h5, var(--ls-heading));
|
|
10997
|
+
line-height: var(--lh-h5, var(--lh-heading));
|
|
10998
|
+
color: ${surfaceForegroundValue("heading", globalHeadingColorFallback(5))};
|
|
10999
|
+
}
|
|
11000
|
+
|
|
11001
|
+
${root} :where(h6) {
|
|
11002
|
+
font-size: var(--fs-h6-fluid, var(--fs-h6, var(--fs-body)));
|
|
11003
|
+
font-weight: var(--fw-h6, var(--font-weight-heading));
|
|
11004
|
+
font-style: var(--fi-h6, var(--fi-heading, normal));
|
|
11005
|
+
letter-spacing: var(--ls-h6, var(--ls-heading));
|
|
11006
|
+
line-height: var(--lh-h6, var(--lh-heading));
|
|
11007
|
+
color: ${surfaceForegroundValue("heading", globalHeadingColorFallback(6))};
|
|
11008
|
+
}`);
|
|
11009
|
+
cssBlocks.push(`/* Display variant for hero/splash headings */
|
|
11010
|
+
${root} :where(.heading-display) {
|
|
11011
|
+
font-size: var(--fs-display-fluid, var(--fs-display));
|
|
11012
|
+
}
|
|
11013
|
+
|
|
11014
|
+
${root} :where(h1.heading-display) {
|
|
11015
|
+
font-size: var(--fs-h1-display-fluid, var(--fs-h1-display, calc(var(--fs-h1) * 1.5)));
|
|
11016
|
+
}
|
|
11017
|
+
|
|
11018
|
+
${root} :where(h2.heading-display) {
|
|
11019
|
+
font-size: var(--fs-h2-display-fluid, var(--fs-h2-display, calc(var(--fs-h2) * 1.35)));
|
|
11020
|
+
}`);
|
|
11021
|
+
cssBlocks.push(`/* Compact variant for cards/sidebars */
|
|
11022
|
+
${root} :where(.heading-compact) {
|
|
11023
|
+
font-size: var(--fs-compact);
|
|
11024
|
+
}
|
|
11025
|
+
|
|
11026
|
+
${root} :where(h1.heading-compact) {
|
|
11027
|
+
font-size: calc(var(--fs-h1) * 0.75);
|
|
11028
|
+
}
|
|
11029
|
+
|
|
11030
|
+
${root} :where(h2.heading-compact) {
|
|
11031
|
+
font-size: calc(var(--fs-h2) * 0.8);
|
|
11032
|
+
}
|
|
11033
|
+
|
|
11034
|
+
${root} :where(h3.heading-compact) {
|
|
11035
|
+
font-size: calc(var(--fs-h3) * 0.85);
|
|
11036
|
+
}`);
|
|
11037
|
+
cssBlocks.push(`/* Body text base styles */
|
|
11038
|
+
${root} {
|
|
11039
|
+
font-family: var(--font-body);
|
|
11040
|
+
font-weight: var(--font-weight-body);
|
|
11041
|
+
font-size: var(--fs-body);
|
|
11042
|
+
letter-spacing: var(--ls-body);
|
|
11043
|
+
line-height: var(--lh-body);
|
|
11044
|
+
}
|
|
11045
|
+
|
|
11046
|
+
${root} :where(p, li, td, th, label, span) {
|
|
11047
|
+
font-family: var(--font-body);
|
|
11048
|
+
font-weight: var(--font-weight-body);
|
|
11049
|
+
letter-spacing: var(--ls-body);
|
|
11050
|
+
font-size: inherit;
|
|
11051
|
+
line-height: inherit;
|
|
11052
|
+
}`);
|
|
11053
|
+
return `@layer rb-theme {\n${cssBlocks.join("\n\n")}\n}`;
|
|
11054
|
+
}
|
|
11055
|
+
//#endregion
|
|
10924
11056
|
//#region ../theme-core/src/blocks/vars/event-registration.ts
|
|
10925
11057
|
/**
|
|
10926
11058
|
* Generate CSS variables for the event-registration block.
|
|
@@ -16654,7 +16786,8 @@ const containerResponsiveThemeCss = `/*
|
|
|
16654
16786
|
[data-block='event-listing'],
|
|
16655
16787
|
[data-block='event-spotlight'],
|
|
16656
16788
|
[data-block='event-calendar'],
|
|
16657
|
-
[data-block='event-combined']
|
|
16789
|
+
[data-block='event-combined'],
|
|
16790
|
+
.event-card--catalogue
|
|
16658
16791
|
)
|
|
16659
16792
|
.event-card-media {
|
|
16660
16793
|
height: var(--rb-event-card-media-height, 16rem);
|
|
@@ -16667,7 +16800,8 @@ const containerResponsiveThemeCss = `/*
|
|
|
16667
16800
|
[data-block='event-listing'],
|
|
16668
16801
|
[data-block='event-spotlight'],
|
|
16669
16802
|
[data-block='event-calendar'],
|
|
16670
|
-
[data-block='event-combined']
|
|
16803
|
+
[data-block='event-combined'],
|
|
16804
|
+
.event-card--catalogue
|
|
16671
16805
|
)
|
|
16672
16806
|
.event-card-image {
|
|
16673
16807
|
width: 100%;
|
|
@@ -16680,12 +16814,12 @@ const containerResponsiveThemeCss = `/*
|
|
|
16680
16814
|
|
|
16681
16815
|
:where(.theme-scope)
|
|
16682
16816
|
:where(
|
|
16683
|
-
[data-block='event-listing'],
|
|
16684
|
-
[data-block='event-spotlight'],
|
|
16685
|
-
[data-block='event-calendar'],
|
|
16686
|
-
[data-block='event-combined']
|
|
16817
|
+
[data-block='event-listing'] .event-card:hover,
|
|
16818
|
+
[data-block='event-spotlight'] .event-card:hover,
|
|
16819
|
+
[data-block='event-calendar'] .event-card:hover,
|
|
16820
|
+
[data-block='event-combined'] .event-card:hover,
|
|
16821
|
+
.event-card--catalogue:hover
|
|
16687
16822
|
)
|
|
16688
|
-
.event-card:hover
|
|
16689
16823
|
.event-card-image {
|
|
16690
16824
|
transform: scale(var(--rb-event-card-image-hover-scale, 1.08));
|
|
16691
16825
|
}
|
|
@@ -18629,16 +18763,6 @@ const containerResponsiveThemeCss = `/*
|
|
|
18629
18763
|
gap: 0.5rem;
|
|
18630
18764
|
}
|
|
18631
18765
|
|
|
18632
|
-
/* Empty day message */
|
|
18633
|
-
:where(.theme-scope)
|
|
18634
|
-
:where([data-block='event-calendar'])
|
|
18635
|
-
.event-agenda-day-empty {
|
|
18636
|
-
font-size: 0.875rem;
|
|
18637
|
-
opacity: var(--ec-empty-opacity);
|
|
18638
|
-
margin: 0;
|
|
18639
|
-
padding: 0.25rem 0;
|
|
18640
|
-
}
|
|
18641
|
-
|
|
18642
18766
|
/* -----------------------------------------------------------------------------
|
|
18643
18767
|
* Agenda Event Card
|
|
18644
18768
|
* Rich event card for agenda view
|
|
@@ -18722,7 +18846,6 @@ const containerResponsiveThemeCss = `/*
|
|
|
18722
18846
|
gap: 0.75rem;
|
|
18723
18847
|
flex-wrap: wrap;
|
|
18724
18848
|
font-size: 0.75rem;
|
|
18725
|
-
opacity: 0.7;
|
|
18726
18849
|
}
|
|
18727
18850
|
|
|
18728
18851
|
:where(.theme-scope)
|
|
@@ -18735,9 +18858,8 @@ const containerResponsiveThemeCss = `/*
|
|
|
18735
18858
|
|
|
18736
18859
|
:where(.theme-scope)
|
|
18737
18860
|
:where([data-block='event-calendar'])
|
|
18738
|
-
|
|
18861
|
+
.event-agenda-card-icon {
|
|
18739
18862
|
flex-shrink: 0;
|
|
18740
|
-
opacity: 0.7;
|
|
18741
18863
|
}
|
|
18742
18864
|
|
|
18743
18865
|
:where(.theme-scope)
|
|
@@ -18754,11 +18876,199 @@ const containerResponsiveThemeCss = `/*
|
|
|
18754
18876
|
|
|
18755
18877
|
:where(.theme-scope)
|
|
18756
18878
|
:where([data-block='event-calendar'])
|
|
18757
|
-
|
|
18758
|
-
|
|
18879
|
+
.event-agenda-card-capacity--full {
|
|
18880
|
+
font-weight: 600;
|
|
18881
|
+
}
|
|
18882
|
+
|
|
18883
|
+
/*
|
|
18884
|
+
* Agenda rows
|
|
18885
|
+
*
|
|
18886
|
+
* The modal keeps the original button card above. Published agenda rows use
|
|
18887
|
+
* an article so their title and booking action can be separate, accessible
|
|
18888
|
+
* links without nesting anchors.
|
|
18889
|
+
*/
|
|
18890
|
+
:where(.theme-scope)
|
|
18891
|
+
:where([data-block='event-calendar'])
|
|
18892
|
+
.event-agenda-card--agenda {
|
|
18893
|
+
display: grid;
|
|
18894
|
+
grid-template-columns: 0.25rem minmax(4.5rem, auto) minmax(0, 1fr) auto;
|
|
18895
|
+
align-items: center;
|
|
18896
|
+
column-gap: 1rem;
|
|
18897
|
+
padding: 1rem;
|
|
18898
|
+
}
|
|
18899
|
+
|
|
18900
|
+
:where(.theme-scope)
|
|
18901
|
+
:where([data-block='event-calendar'])
|
|
18902
|
+
.event-agenda-card--agenda
|
|
18903
|
+
.event-agenda-card-indicator {
|
|
18904
|
+
grid-column: 1;
|
|
18905
|
+
grid-row: 1;
|
|
18906
|
+
}
|
|
18907
|
+
|
|
18908
|
+
:where(.theme-scope)
|
|
18909
|
+
:where([data-block='event-calendar'])
|
|
18910
|
+
.event-agenda-card--agenda
|
|
18911
|
+
> .event-agenda-card-time {
|
|
18912
|
+
grid-column: 2;
|
|
18913
|
+
grid-row: 1;
|
|
18914
|
+
font-size: 0.875rem;
|
|
18915
|
+
font-weight: 700;
|
|
18916
|
+
opacity: 1;
|
|
18917
|
+
}
|
|
18918
|
+
|
|
18919
|
+
:where(.theme-scope)
|
|
18920
|
+
:where([data-block='event-calendar'])
|
|
18921
|
+
.event-agenda-card--agenda
|
|
18922
|
+
.event-agenda-card-content {
|
|
18923
|
+
grid-column: 3;
|
|
18924
|
+
grid-row: 1;
|
|
18925
|
+
display: block;
|
|
18926
|
+
}
|
|
18927
|
+
|
|
18928
|
+
:where(.theme-scope)
|
|
18929
|
+
:where([data-block='event-calendar'])
|
|
18930
|
+
.event-agenda-card--agenda
|
|
18931
|
+
.event-agenda-card-title {
|
|
18932
|
+
margin: 0;
|
|
18933
|
+
font-size: 0.9375rem;
|
|
18934
|
+
font-weight: 600;
|
|
18935
|
+
line-height: 1.3;
|
|
18936
|
+
}
|
|
18937
|
+
|
|
18938
|
+
:where(.theme-scope)
|
|
18939
|
+
:where([data-block='event-calendar'])
|
|
18940
|
+
.event-agenda-card--agenda
|
|
18941
|
+
.event-agenda-card-title
|
|
18942
|
+
a {
|
|
18943
|
+
color: inherit;
|
|
18944
|
+
text-decoration: none;
|
|
18945
|
+
}
|
|
18946
|
+
|
|
18947
|
+
:where(.theme-scope)
|
|
18948
|
+
:where([data-block='event-calendar'])
|
|
18949
|
+
.event-agenda-card--agenda
|
|
18950
|
+
.event-agenda-card-title
|
|
18951
|
+
a:hover {
|
|
18952
|
+
text-decoration: underline;
|
|
18953
|
+
text-underline-offset: 0.15em;
|
|
18954
|
+
}
|
|
18955
|
+
|
|
18956
|
+
:where(.theme-scope)
|
|
18957
|
+
:where([data-block='event-calendar'])
|
|
18958
|
+
.event-agenda-card--agenda
|
|
18959
|
+
.event-agenda-card-details {
|
|
18960
|
+
align-items: baseline;
|
|
18961
|
+
gap: 0.25rem 0.6rem;
|
|
18962
|
+
margin-top: 0.2rem;
|
|
18963
|
+
font-size: 0.75rem;
|
|
18964
|
+
line-height: 1.35;
|
|
18965
|
+
}
|
|
18966
|
+
|
|
18967
|
+
:where(.theme-scope)
|
|
18968
|
+
:where([data-block='event-calendar'])
|
|
18969
|
+
.event-agenda-card--agenda
|
|
18970
|
+
.event-agenda-card-location {
|
|
18971
|
+
display: inline-flex;
|
|
18972
|
+
align-items: center;
|
|
18973
|
+
gap: 0.25rem;
|
|
18974
|
+
}
|
|
18975
|
+
|
|
18976
|
+
:where(.theme-scope)
|
|
18977
|
+
:where([data-block='event-calendar'])
|
|
18978
|
+
.event-agenda-card--agenda
|
|
18979
|
+
.event-agenda-card-action {
|
|
18980
|
+
grid-column: 4;
|
|
18981
|
+
grid-row: 1;
|
|
18982
|
+
display: flex;
|
|
18983
|
+
flex-direction: column;
|
|
18984
|
+
align-items: flex-end;
|
|
18985
|
+
gap: 0.5rem;
|
|
18986
|
+
min-width: max-content;
|
|
18987
|
+
}
|
|
18988
|
+
|
|
18989
|
+
:where(.theme-scope)
|
|
18990
|
+
:where([data-block='event-calendar'])
|
|
18991
|
+
.event-agenda-card--agenda
|
|
18992
|
+
.event-agenda-card-price {
|
|
18993
|
+
font-size: 0.875rem;
|
|
18994
|
+
font-weight: 700;
|
|
18759
18995
|
opacity: 1;
|
|
18760
18996
|
}
|
|
18761
18997
|
|
|
18998
|
+
:where(.theme-scope)
|
|
18999
|
+
:where([data-block='event-calendar'])
|
|
19000
|
+
.event-agenda-card--agenda
|
|
19001
|
+
.event-agenda-card-status {
|
|
19002
|
+
font-size: 0.75rem;
|
|
19003
|
+
font-weight: 600;
|
|
19004
|
+
white-space: nowrap;
|
|
19005
|
+
}
|
|
19006
|
+
|
|
19007
|
+
:where(.theme-scope)
|
|
19008
|
+
:where([data-block='event-calendar'])
|
|
19009
|
+
.event-agenda-card--agenda
|
|
19010
|
+
.event-agenda-card-icon {
|
|
19011
|
+
width: 0.875rem;
|
|
19012
|
+
height: 0.875rem;
|
|
19013
|
+
}
|
|
19014
|
+
|
|
19015
|
+
:where(.theme-scope)
|
|
19016
|
+
:where([data-block='event-calendar'])
|
|
19017
|
+
.event-agenda-empty {
|
|
19018
|
+
margin: 0;
|
|
19019
|
+
padding: 2rem 1rem;
|
|
19020
|
+
text-align: center;
|
|
19021
|
+
font-size: 0.875rem;
|
|
19022
|
+
opacity: var(--ec-empty-opacity);
|
|
19023
|
+
}
|
|
19024
|
+
|
|
19025
|
+
@container rb-site (max-width: 639px) {
|
|
19026
|
+
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
19027
|
+
:where(.theme-scope)
|
|
19028
|
+
:where([data-block='event-calendar'])
|
|
19029
|
+
.event-agenda-card--agenda {
|
|
19030
|
+
grid-template-columns: minmax(4.25rem, auto) minmax(0, 1fr);
|
|
19031
|
+
grid-template-areas:
|
|
19032
|
+
'time content'
|
|
19033
|
+
'action action';
|
|
19034
|
+
align-items: start;
|
|
19035
|
+
column-gap: 0.75rem;
|
|
19036
|
+
row-gap: 0.65rem;
|
|
19037
|
+
}
|
|
19038
|
+
|
|
19039
|
+
:where(.theme-scope)
|
|
19040
|
+
:where([data-block='event-calendar'])
|
|
19041
|
+
.event-agenda-card--agenda
|
|
19042
|
+
.event-agenda-card-indicator {
|
|
19043
|
+
display: none;
|
|
19044
|
+
}
|
|
19045
|
+
|
|
19046
|
+
:where(.theme-scope)
|
|
19047
|
+
:where([data-block='event-calendar'])
|
|
19048
|
+
.event-agenda-card--agenda
|
|
19049
|
+
> .event-agenda-card-time {
|
|
19050
|
+
grid-area: time;
|
|
19051
|
+
}
|
|
19052
|
+
|
|
19053
|
+
:where(.theme-scope)
|
|
19054
|
+
:where([data-block='event-calendar'])
|
|
19055
|
+
.event-agenda-card--agenda
|
|
19056
|
+
.event-agenda-card-content {
|
|
19057
|
+
grid-area: content;
|
|
19058
|
+
}
|
|
19059
|
+
|
|
19060
|
+
:where(.theme-scope)
|
|
19061
|
+
:where([data-block='event-calendar'])
|
|
19062
|
+
.event-agenda-card--agenda
|
|
19063
|
+
.event-agenda-card-action {
|
|
19064
|
+
grid-area: action;
|
|
19065
|
+
flex-direction: row;
|
|
19066
|
+
align-items: center;
|
|
19067
|
+
justify-content: flex-end;
|
|
19068
|
+
}
|
|
19069
|
+
}
|
|
19070
|
+
}
|
|
19071
|
+
|
|
18762
19072
|
/* -----------------------------------------------------------------------------
|
|
18763
19073
|
* Week Timetable View
|
|
18764
19074
|
* Time-grid layout for recurring class schedules
|
|
@@ -20484,8 +20794,9 @@ const containerResponsiveThemeCss = `/*
|
|
|
20484
20794
|
border: 1px solid rgb(var(--tb-primary));
|
|
20485
20795
|
border-radius: var(--rb-button-radius, 0.375rem);
|
|
20486
20796
|
cursor: pointer;
|
|
20487
|
-
transition:
|
|
20488
|
-
|
|
20797
|
+
transition:
|
|
20798
|
+
background-color var(--rb-block-transition, 150ms) ease,
|
|
20799
|
+
color var(--rb-block-transition, 150ms) ease;
|
|
20489
20800
|
}
|
|
20490
20801
|
|
|
20491
20802
|
:where(.theme-scope) .event-reset-filters-btn:hover {
|
|
@@ -20513,6 +20824,63 @@ const containerResponsiveThemeCss = `/*
|
|
|
20513
20824
|
text-underline-offset: 0.12em;
|
|
20514
20825
|
}
|
|
20515
20826
|
|
|
20827
|
+
/* Catalogue cards can keep their media footprint when an event has no
|
|
20828
|
+
resolved image. The date remains useful content and follows the site's
|
|
20829
|
+
palette and typography tokens. */
|
|
20830
|
+
:where(.theme-scope) .event-card-date-fallback {
|
|
20831
|
+
position: relative;
|
|
20832
|
+
display: flex;
|
|
20833
|
+
min-height: var(--rb-event-card-media-height, 16rem);
|
|
20834
|
+
flex-direction: column;
|
|
20835
|
+
justify-content: flex-end;
|
|
20836
|
+
gap: 0.125rem;
|
|
20837
|
+
overflow: hidden;
|
|
20838
|
+
padding: 1.125rem;
|
|
20839
|
+
border-bottom: 1px solid rgb(var(--tb-border, 229 231 235));
|
|
20840
|
+
background: rgb(var(--tb-surfaceAlt, var(--tb-surface, 255 255 255)));
|
|
20841
|
+
color: rgb(var(--tb-text, 17 24 39));
|
|
20842
|
+
}
|
|
20843
|
+
|
|
20844
|
+
:where(.theme-scope) .event-card-date-fallback::before {
|
|
20845
|
+
position: absolute;
|
|
20846
|
+
inset: 0;
|
|
20847
|
+
pointer-events: none;
|
|
20848
|
+
background: radial-gradient(
|
|
20849
|
+
120% 140% at 0% 0%,
|
|
20850
|
+
color-mix(in srgb, rgb(var(--tb-primary, 0 0 0)) 11%, transparent),
|
|
20851
|
+
transparent 62%
|
|
20852
|
+
);
|
|
20853
|
+
content: '';
|
|
20854
|
+
}
|
|
20855
|
+
|
|
20856
|
+
:where(.theme-scope) .event-card-date-fallback-label,
|
|
20857
|
+
:where(.theme-scope) .event-card-date-fallback-value {
|
|
20858
|
+
position: relative;
|
|
20859
|
+
}
|
|
20860
|
+
|
|
20861
|
+
:where(.theme-scope) .event-card-date-fallback-label {
|
|
20862
|
+
color: rgb(var(--tb-mutedText, var(--tb-muted, 107 114 128)));
|
|
20863
|
+
font-size: 0.72rem;
|
|
20864
|
+
font-weight: 700;
|
|
20865
|
+
letter-spacing: 0.14em;
|
|
20866
|
+
line-height: 1.2;
|
|
20867
|
+
text-transform: uppercase;
|
|
20868
|
+
}
|
|
20869
|
+
|
|
20870
|
+
:where(.theme-scope) .event-card-date-fallback-value {
|
|
20871
|
+
color: rgb(var(--tb-primary, 0 0 0));
|
|
20872
|
+
font-family: var(--font-heading, var(--font-body, inherit));
|
|
20873
|
+
font-size: clamp(1.7rem, 1.35rem + 1.1vw, 2.35rem);
|
|
20874
|
+
font-weight: 500;
|
|
20875
|
+
letter-spacing: -0.025em;
|
|
20876
|
+
line-height: 1.04;
|
|
20877
|
+
}
|
|
20878
|
+
|
|
20879
|
+
:where(.theme-scope) .event-card-price {
|
|
20880
|
+
color: rgb(var(--tb-text, 17 24 39));
|
|
20881
|
+
font-weight: 600;
|
|
20882
|
+
}
|
|
20883
|
+
|
|
20516
20884
|
/* =============================================================================
|
|
20517
20885
|
* Block: Carousel Navigation (Phase 3 client component migration)
|
|
20518
20886
|
* =============================================================================
|
|
@@ -21146,7 +21514,9 @@ const containerResponsiveThemeCss = `/*
|
|
|
21146
21514
|
text-align: left;
|
|
21147
21515
|
}
|
|
21148
21516
|
|
|
21149
|
-
:where(.theme-scope)
|
|
21517
|
+
:where(.theme-scope)
|
|
21518
|
+
:where([data-block="customer-portal"])
|
|
21519
|
+
.cp-login__subtitle {
|
|
21150
21520
|
color: var(--cp-muted);
|
|
21151
21521
|
font-size: 0.9375rem;
|
|
21152
21522
|
text-align: left;
|
|
@@ -21173,7 +21543,9 @@ const containerResponsiveThemeCss = `/*
|
|
|
21173
21543
|
text-align: left;
|
|
21174
21544
|
}
|
|
21175
21545
|
|
|
21176
|
-
:where(.theme-scope)
|
|
21546
|
+
:where(.theme-scope)
|
|
21547
|
+
:where([data-block="customer-portal"])
|
|
21548
|
+
.cp-login__reset-link {
|
|
21177
21549
|
appearance: none;
|
|
21178
21550
|
background: none;
|
|
21179
21551
|
border: 0;
|
|
@@ -21187,11 +21559,15 @@ const containerResponsiveThemeCss = `/*
|
|
|
21187
21559
|
text-underline-offset: 0.15em;
|
|
21188
21560
|
}
|
|
21189
21561
|
|
|
21190
|
-
:where(.theme-scope)
|
|
21562
|
+
:where(.theme-scope)
|
|
21563
|
+
:where([data-block="customer-portal"])
|
|
21564
|
+
.cp-login__reset-link:hover {
|
|
21191
21565
|
color: var(--cp-text);
|
|
21192
21566
|
}
|
|
21193
21567
|
|
|
21194
|
-
:where(.theme-scope)
|
|
21568
|
+
:where(.theme-scope)
|
|
21569
|
+
:where([data-block="customer-portal"])
|
|
21570
|
+
.cp-login__reset-link:focus-visible {
|
|
21195
21571
|
outline: 2px solid currentColor;
|
|
21196
21572
|
outline-offset: 3px;
|
|
21197
21573
|
}
|
|
@@ -21236,7 +21612,9 @@ const containerResponsiveThemeCss = `/*
|
|
|
21236
21612
|
border-bottom: none;
|
|
21237
21613
|
}
|
|
21238
21614
|
|
|
21239
|
-
:where(.theme-scope)
|
|
21615
|
+
:where(.theme-scope)
|
|
21616
|
+
:where([data-block="customer-portal"])
|
|
21617
|
+
.cp-header__welcome {
|
|
21240
21618
|
font-size: 1.125rem;
|
|
21241
21619
|
font-weight: 500;
|
|
21242
21620
|
}
|
|
@@ -21252,8 +21630,14 @@ const containerResponsiveThemeCss = `/*
|
|
|
21252
21630
|
}
|
|
21253
21631
|
|
|
21254
21632
|
@keyframes cp-fade-in {
|
|
21255
|
-
from {
|
|
21256
|
-
|
|
21633
|
+
from {
|
|
21634
|
+
opacity: 0;
|
|
21635
|
+
transform: translateY(4px);
|
|
21636
|
+
}
|
|
21637
|
+
to {
|
|
21638
|
+
opacity: 1;
|
|
21639
|
+
transform: translateY(0);
|
|
21640
|
+
}
|
|
21257
21641
|
}
|
|
21258
21642
|
|
|
21259
21643
|
/* Empty state */
|
|
@@ -21342,6 +21726,77 @@ const containerResponsiveThemeCss = `/*
|
|
|
21342
21726
|
margin-top: 1rem;
|
|
21343
21727
|
}
|
|
21344
21728
|
|
|
21729
|
+
/* Event waitlists */
|
|
21730
|
+
:where(.theme-scope) :where([data-block="customer-portal"]) .cp-waitlist-list {
|
|
21731
|
+
display: grid;
|
|
21732
|
+
gap: 1rem;
|
|
21733
|
+
}
|
|
21734
|
+
|
|
21735
|
+
:where(.theme-scope)
|
|
21736
|
+
:where([data-block="customer-portal"])
|
|
21737
|
+
.cp-waitlists
|
|
21738
|
+
> .cp-alert {
|
|
21739
|
+
margin-bottom: 1rem;
|
|
21740
|
+
}
|
|
21741
|
+
|
|
21742
|
+
:where(.theme-scope) :where([data-block="customer-portal"]) .cp-waitlist-card {
|
|
21743
|
+
transition:
|
|
21744
|
+
border-color 180ms ease,
|
|
21745
|
+
box-shadow 180ms ease;
|
|
21746
|
+
}
|
|
21747
|
+
|
|
21748
|
+
:where(.theme-scope)
|
|
21749
|
+
:where([data-block="customer-portal"])
|
|
21750
|
+
.cp-waitlist-card--focused {
|
|
21751
|
+
border-color: var(--cp-primary);
|
|
21752
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--cp-primary) 22%, transparent);
|
|
21753
|
+
}
|
|
21754
|
+
|
|
21755
|
+
:where(.theme-scope)
|
|
21756
|
+
:where([data-block="customer-portal"])
|
|
21757
|
+
.cp-waitlist-card__summary,
|
|
21758
|
+
:where(.theme-scope)
|
|
21759
|
+
:where([data-block="customer-portal"])
|
|
21760
|
+
.cp-waitlist-card__position {
|
|
21761
|
+
font-weight: 600;
|
|
21762
|
+
}
|
|
21763
|
+
|
|
21764
|
+
:where(.theme-scope)
|
|
21765
|
+
:where([data-block="customer-portal"])
|
|
21766
|
+
.cp-waitlist-card
|
|
21767
|
+
.cp-card-body
|
|
21768
|
+
p {
|
|
21769
|
+
margin: 0.4rem 0;
|
|
21770
|
+
}
|
|
21771
|
+
|
|
21772
|
+
@container rb-site (max-width: 640px) {
|
|
21773
|
+
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
21774
|
+
:where(.theme-scope)
|
|
21775
|
+
:where([data-block="customer-portal"])
|
|
21776
|
+
.cp-waitlist-card
|
|
21777
|
+
.cp-card-header {
|
|
21778
|
+
flex-direction: column-reverse;
|
|
21779
|
+
}
|
|
21780
|
+
|
|
21781
|
+
:where(.theme-scope)
|
|
21782
|
+
:where([data-block="customer-portal"])
|
|
21783
|
+
.cp-waitlist-card
|
|
21784
|
+
.cp-card-actions {
|
|
21785
|
+
align-items: stretch;
|
|
21786
|
+
flex-direction: column;
|
|
21787
|
+
}
|
|
21788
|
+
|
|
21789
|
+
:where(.theme-scope)
|
|
21790
|
+
:where([data-block="customer-portal"])
|
|
21791
|
+
.cp-waitlist-card
|
|
21792
|
+
.cp-card-actions
|
|
21793
|
+
> * {
|
|
21794
|
+
justify-content: center;
|
|
21795
|
+
text-align: center;
|
|
21796
|
+
}
|
|
21797
|
+
}
|
|
21798
|
+
}
|
|
21799
|
+
|
|
21345
21800
|
/* Badge */
|
|
21346
21801
|
:where(.theme-scope) :where([data-block="customer-portal"]) .cp-badge {
|
|
21347
21802
|
display: inline-flex;
|
|
@@ -21478,11 +21933,18 @@ const containerResponsiveThemeCss = `/*
|
|
|
21478
21933
|
background: rgba(var(--tb-border), 0.2);
|
|
21479
21934
|
}
|
|
21480
21935
|
|
|
21481
|
-
:where(.theme-scope)
|
|
21936
|
+
:where(.theme-scope)
|
|
21937
|
+
:where([data-block="customer-portal"])
|
|
21938
|
+
.cp-table
|
|
21939
|
+
tbody
|
|
21940
|
+
tr:last-child
|
|
21941
|
+
td {
|
|
21482
21942
|
border-bottom: none;
|
|
21483
21943
|
}
|
|
21484
21944
|
|
|
21485
|
-
:where(.theme-scope)
|
|
21945
|
+
:where(.theme-scope)
|
|
21946
|
+
:where([data-block="customer-portal"])
|
|
21947
|
+
:is(.cp-row--past, .cp-row--muted) {
|
|
21486
21948
|
opacity: 0.65;
|
|
21487
21949
|
}
|
|
21488
21950
|
|
|
@@ -21495,7 +21957,9 @@ const containerResponsiveThemeCss = `/*
|
|
|
21495
21957
|
line-height: 1.2;
|
|
21496
21958
|
}
|
|
21497
21959
|
|
|
21498
|
-
:where(.theme-scope)
|
|
21960
|
+
:where(.theme-scope)
|
|
21961
|
+
:where([data-block="customer-portal"])
|
|
21962
|
+
.cp-row-title__badges {
|
|
21499
21963
|
margin-left: auto;
|
|
21500
21964
|
display: flex;
|
|
21501
21965
|
flex-wrap: wrap;
|
|
@@ -21503,7 +21967,9 @@ const containerResponsiveThemeCss = `/*
|
|
|
21503
21967
|
gap: 0.375rem;
|
|
21504
21968
|
}
|
|
21505
21969
|
|
|
21506
|
-
:where(.theme-scope)
|
|
21970
|
+
:where(.theme-scope)
|
|
21971
|
+
:where([data-block="customer-portal"])
|
|
21972
|
+
.cp-row-title__text {
|
|
21507
21973
|
min-width: 0;
|
|
21508
21974
|
}
|
|
21509
21975
|
|
|
@@ -21523,12 +21989,16 @@ const containerResponsiveThemeCss = `/*
|
|
|
21523
21989
|
line-height: 1.35;
|
|
21524
21990
|
}
|
|
21525
21991
|
|
|
21526
|
-
:where(.theme-scope)
|
|
21992
|
+
:where(.theme-scope)
|
|
21993
|
+
:where([data-block="customer-portal"])
|
|
21994
|
+
.cp-row-note--success {
|
|
21527
21995
|
border-left-color: rgb(var(--tb-success));
|
|
21528
21996
|
color: rgb(var(--tb-success));
|
|
21529
21997
|
}
|
|
21530
21998
|
|
|
21531
|
-
:where(.theme-scope)
|
|
21999
|
+
:where(.theme-scope)
|
|
22000
|
+
:where([data-block="customer-portal"])
|
|
22001
|
+
.cp-row-note--error {
|
|
21532
22002
|
border-left-color: rgb(var(--tb-destructive));
|
|
21533
22003
|
color: rgb(var(--tb-destructive));
|
|
21534
22004
|
}
|
|
@@ -21547,16 +22017,23 @@ const containerResponsiveThemeCss = `/*
|
|
|
21547
22017
|
white-space: nowrap;
|
|
21548
22018
|
}
|
|
21549
22019
|
|
|
21550
|
-
:where(.theme-scope)
|
|
22020
|
+
:where(.theme-scope)
|
|
22021
|
+
:where([data-block="customer-portal"])
|
|
22022
|
+
.cp-col-actions
|
|
22023
|
+
.btn-sm {
|
|
21551
22024
|
white-space: nowrap;
|
|
21552
22025
|
}
|
|
21553
22026
|
|
|
21554
|
-
:where(.theme-scope)
|
|
22027
|
+
:where(.theme-scope)
|
|
22028
|
+
:where([data-block="customer-portal"])
|
|
22029
|
+
.cp-row-title__link {
|
|
21555
22030
|
color: inherit;
|
|
21556
22031
|
text-decoration: none;
|
|
21557
22032
|
}
|
|
21558
22033
|
|
|
21559
|
-
:where(.theme-scope)
|
|
22034
|
+
:where(.theme-scope)
|
|
22035
|
+
:where([data-block="customer-portal"])
|
|
22036
|
+
.cp-row-title__link:hover {
|
|
21560
22037
|
text-decoration: underline;
|
|
21561
22038
|
text-decoration-thickness: 2px;
|
|
21562
22039
|
text-underline-offset: 2px;
|
|
@@ -21578,7 +22055,9 @@ const containerResponsiveThemeCss = `/*
|
|
|
21578
22055
|
}
|
|
21579
22056
|
|
|
21580
22057
|
/* Profile actions */
|
|
21581
|
-
:where(.theme-scope)
|
|
22058
|
+
:where(.theme-scope)
|
|
22059
|
+
:where([data-block="customer-portal"])
|
|
22060
|
+
.cp-profile__actions {
|
|
21582
22061
|
display: flex;
|
|
21583
22062
|
gap: 0.75rem;
|
|
21584
22063
|
margin-top: 1rem;
|
|
@@ -21645,28 +22124,39 @@ const containerResponsiveThemeCss = `/*
|
|
|
21645
22124
|
gap: 0.375rem;
|
|
21646
22125
|
}
|
|
21647
22126
|
|
|
21648
|
-
:where(.theme-scope)
|
|
22127
|
+
:where(.theme-scope)
|
|
22128
|
+
:where([data-block="customer-portal"])
|
|
22129
|
+
.cp-guest-edit-row__index {
|
|
21649
22130
|
font-size: 0.75rem;
|
|
21650
22131
|
font-weight: 500;
|
|
21651
22132
|
color: var(--cp-muted);
|
|
21652
22133
|
}
|
|
21653
22134
|
|
|
21654
|
-
:where(.theme-scope)
|
|
22135
|
+
:where(.theme-scope)
|
|
22136
|
+
:where([data-block="customer-portal"])
|
|
22137
|
+
.cp-guest-edit-row__fields {
|
|
21655
22138
|
display: flex;
|
|
21656
22139
|
gap: 0.5rem;
|
|
21657
22140
|
}
|
|
21658
22141
|
|
|
21659
|
-
:where(.theme-scope)
|
|
22142
|
+
:where(.theme-scope)
|
|
22143
|
+
:where([data-block="customer-portal"])
|
|
22144
|
+
.cp-guest-edit-row__fields
|
|
22145
|
+
input {
|
|
21660
22146
|
flex: 1;
|
|
21661
22147
|
min-width: 0;
|
|
21662
22148
|
}
|
|
21663
22149
|
|
|
21664
|
-
:where(.theme-scope)
|
|
22150
|
+
:where(.theme-scope)
|
|
22151
|
+
:where([data-block="customer-portal"])
|
|
22152
|
+
.cp-guest-edit-row__error {
|
|
21665
22153
|
font-size: 0.75rem;
|
|
21666
22154
|
color: var(--cp-error);
|
|
21667
22155
|
}
|
|
21668
22156
|
|
|
21669
|
-
:where(.theme-scope)
|
|
22157
|
+
:where(.theme-scope)
|
|
22158
|
+
:where([data-block="customer-portal"])
|
|
22159
|
+
.cp-guests__actions {
|
|
21670
22160
|
display: flex;
|
|
21671
22161
|
gap: 0.5rem;
|
|
21672
22162
|
margin-top: 0.5rem;
|
|
@@ -21680,13 +22170,18 @@ const containerResponsiveThemeCss = `/*
|
|
|
21680
22170
|
}
|
|
21681
22171
|
|
|
21682
22172
|
/* In the actions modal, tiles sit on a surface modal, so use "background" for contrast. */
|
|
21683
|
-
:where(.theme-scope)
|
|
22173
|
+
:where(.theme-scope)
|
|
22174
|
+
:where([data-block="customer-portal"])
|
|
22175
|
+
.cp-actions-list
|
|
22176
|
+
:where(.rb-tile) {
|
|
21684
22177
|
--rb-event-tile-bg: rgb(var(--tb-background));
|
|
21685
22178
|
--rb-event-tile-border: rgb(var(--tb-border));
|
|
21686
22179
|
}
|
|
21687
22180
|
|
|
21688
22181
|
/* Actions trigger: icon-only kebab button */
|
|
21689
|
-
:where(.theme-scope)
|
|
22182
|
+
:where(.theme-scope)
|
|
22183
|
+
:where([data-block="customer-portal"])
|
|
22184
|
+
.cp-actions-trigger.btn-sm {
|
|
21690
22185
|
padding: 0.35rem !important;
|
|
21691
22186
|
line-height: 1 !important;
|
|
21692
22187
|
min-width: 32px;
|
|
@@ -21710,17 +22205,24 @@ const containerResponsiveThemeCss = `/*
|
|
|
21710
22205
|
gap: 0.25rem;
|
|
21711
22206
|
}
|
|
21712
22207
|
|
|
21713
|
-
:where(.theme-scope)
|
|
22208
|
+
:where(.theme-scope)
|
|
22209
|
+
:where([data-block="customer-portal"])
|
|
22210
|
+
.cp-action-tile__title {
|
|
21714
22211
|
font-weight: 600;
|
|
21715
22212
|
font-size: 0.9375rem;
|
|
21716
22213
|
}
|
|
21717
22214
|
|
|
21718
|
-
:where(.theme-scope)
|
|
22215
|
+
:where(.theme-scope)
|
|
22216
|
+
:where([data-block="customer-portal"])
|
|
22217
|
+
.cp-action-tile__desc {
|
|
21719
22218
|
font-size: 0.875rem;
|
|
21720
22219
|
line-height: 1.35;
|
|
21721
22220
|
}
|
|
21722
22221
|
|
|
21723
|
-
:where(.theme-scope)
|
|
22222
|
+
:where(.theme-scope)
|
|
22223
|
+
:where([data-block="customer-portal"])
|
|
22224
|
+
.cp-action-tile--danger
|
|
22225
|
+
.cp-action-tile__title {
|
|
21724
22226
|
color: rgb(var(--tb-destructive));
|
|
21725
22227
|
}
|
|
21726
22228
|
|
|
@@ -21742,7 +22244,9 @@ const containerResponsiveThemeCss = `/*
|
|
|
21742
22244
|
text-decoration: underline;
|
|
21743
22245
|
}
|
|
21744
22246
|
|
|
21745
|
-
:where(.theme-scope)
|
|
22247
|
+
:where(.theme-scope)
|
|
22248
|
+
:where([data-block="customer-portal"])
|
|
22249
|
+
.cp-btn--link:hover {
|
|
21746
22250
|
color: var(--cp-primary-hover);
|
|
21747
22251
|
}
|
|
21748
22252
|
|
|
@@ -21781,34 +22285,48 @@ const containerResponsiveThemeCss = `/*
|
|
|
21781
22285
|
margin-top: 0.75rem;
|
|
21782
22286
|
}
|
|
21783
22287
|
|
|
21784
|
-
:where(.theme-scope)
|
|
22288
|
+
:where(.theme-scope)
|
|
22289
|
+
:where([data-block="customer-portal"])
|
|
22290
|
+
.cp-cancel-confirm__title {
|
|
21785
22291
|
font-weight: 600;
|
|
21786
22292
|
margin-bottom: 0.5rem;
|
|
21787
22293
|
}
|
|
21788
22294
|
|
|
21789
|
-
:where(.theme-scope)
|
|
22295
|
+
:where(.theme-scope)
|
|
22296
|
+
:where([data-block="customer-portal"])
|
|
22297
|
+
.cp-cancel-confirm__message {
|
|
21790
22298
|
margin-bottom: 0.25rem;
|
|
21791
22299
|
}
|
|
21792
22300
|
|
|
21793
|
-
:where(.theme-scope)
|
|
22301
|
+
:where(.theme-scope)
|
|
22302
|
+
:where([data-block="customer-portal"])
|
|
22303
|
+
.cp-cancel-confirm__warning {
|
|
21794
22304
|
margin-bottom: 0.75rem;
|
|
21795
22305
|
}
|
|
21796
22306
|
|
|
21797
|
-
:where(.theme-scope)
|
|
22307
|
+
:where(.theme-scope)
|
|
22308
|
+
:where([data-block="customer-portal"])
|
|
22309
|
+
.cp-cancel-confirm__actions {
|
|
21798
22310
|
display: flex;
|
|
21799
22311
|
gap: 0.75rem;
|
|
21800
22312
|
}
|
|
21801
22313
|
|
|
21802
22314
|
/* Membership actions */
|
|
21803
|
-
:where(.theme-scope)
|
|
22315
|
+
:where(.theme-scope)
|
|
22316
|
+
:where([data-block="customer-portal"])
|
|
22317
|
+
.cp-membership-actions {
|
|
21804
22318
|
margin-top: 0.75rem;
|
|
21805
22319
|
}
|
|
21806
22320
|
|
|
21807
|
-
:where(.theme-scope)
|
|
22321
|
+
:where(.theme-scope)
|
|
22322
|
+
:where([data-block="customer-portal"])
|
|
22323
|
+
.cp-section-actions {
|
|
21808
22324
|
margin-top: 1rem;
|
|
21809
22325
|
}
|
|
21810
22326
|
|
|
21811
|
-
:where(.theme-scope)
|
|
22327
|
+
:where(.theme-scope)
|
|
22328
|
+
:where([data-block="customer-portal"])
|
|
22329
|
+
.cp-card-subtitle--spaced {
|
|
21812
22330
|
margin-top: 0.75rem;
|
|
21813
22331
|
}
|
|
21814
22332
|
|
|
@@ -21832,9 +22350,18 @@ const containerResponsiveThemeCss = `/*
|
|
|
21832
22350
|
display: none;
|
|
21833
22351
|
}
|
|
21834
22352
|
|
|
21835
|
-
:where(.theme-scope)
|
|
21836
|
-
|
|
21837
|
-
|
|
22353
|
+
:where(.theme-scope)
|
|
22354
|
+
:where([data-block="customer-portal"])
|
|
22355
|
+
.cp-table
|
|
22356
|
+
:is(th, td).cp-col-guests,
|
|
22357
|
+
:where(.theme-scope)
|
|
22358
|
+
:where([data-block="customer-portal"])
|
|
22359
|
+
.cp-table
|
|
22360
|
+
:is(th, td).cp-col-tickets,
|
|
22361
|
+
:where(.theme-scope)
|
|
22362
|
+
:where([data-block="customer-portal"])
|
|
22363
|
+
.cp-table
|
|
22364
|
+
:is(th, td).cp-col-actions {
|
|
21838
22365
|
display: none;
|
|
21839
22366
|
}
|
|
21840
22367
|
|
|
@@ -21843,24 +22370,34 @@ const containerResponsiveThemeCss = `/*
|
|
|
21843
22370
|
}
|
|
21844
22371
|
|
|
21845
22372
|
/* Make the cell a positioning context for the kebab */
|
|
21846
|
-
:where(.theme-scope)
|
|
22373
|
+
:where(.theme-scope)
|
|
22374
|
+
:where([data-block="customer-portal"])
|
|
22375
|
+
.cp-row
|
|
22376
|
+
> td:first-child {
|
|
21847
22377
|
position: relative;
|
|
21848
22378
|
padding-right: 2.5rem;
|
|
21849
22379
|
}
|
|
21850
22380
|
|
|
21851
22381
|
/* Position kebab in top-right of the cell */
|
|
21852
|
-
:where(.theme-scope)
|
|
22382
|
+
:where(.theme-scope)
|
|
22383
|
+
:where([data-block="customer-portal"])
|
|
22384
|
+
.cp-row-mobile-actions {
|
|
21853
22385
|
position: absolute;
|
|
21854
22386
|
top: 0.5rem;
|
|
21855
22387
|
right: 0.5rem;
|
|
21856
22388
|
margin-top: 0;
|
|
21857
22389
|
}
|
|
21858
22390
|
|
|
21859
|
-
:where(.theme-scope)
|
|
22391
|
+
:where(.theme-scope)
|
|
22392
|
+
:where([data-block="customer-portal"])
|
|
22393
|
+
.cp-row-mobile-actions
|
|
22394
|
+
.btn-sm {
|
|
21860
22395
|
width: auto;
|
|
21861
22396
|
}
|
|
21862
22397
|
|
|
21863
|
-
:where(.theme-scope)
|
|
22398
|
+
:where(.theme-scope)
|
|
22399
|
+
:where([data-block="customer-portal"])
|
|
22400
|
+
.cp-profile__edit {
|
|
21864
22401
|
align-self: stretch;
|
|
21865
22402
|
}
|
|
21866
22403
|
}
|
|
@@ -22308,6 +22845,30 @@ const containerResponsiveThemeCss = `/*
|
|
|
22308
22845
|
gap: 0.25rem;
|
|
22309
22846
|
}
|
|
22310
22847
|
|
|
22848
|
+
/* Topic choices (visitor picks what to hear about). Same treatment as the
|
|
22849
|
+
form block's .fb-fieldset / .fb-inline, defined here because the newsletter
|
|
22850
|
+
form also renders inside contact-newsletter and the site footer. */
|
|
22851
|
+
:where(.theme-scope) .newsletter-topics {
|
|
22852
|
+
display: flex;
|
|
22853
|
+
flex-direction: column;
|
|
22854
|
+
gap: 0.5rem;
|
|
22855
|
+
border: none;
|
|
22856
|
+
padding: 0;
|
|
22857
|
+
margin: 0;
|
|
22858
|
+
min-width: 0;
|
|
22859
|
+
}
|
|
22860
|
+
|
|
22861
|
+
:where(.theme-scope) .newsletter-topics > legend {
|
|
22862
|
+
padding: 0;
|
|
22863
|
+
margin-bottom: 0.25rem;
|
|
22864
|
+
}
|
|
22865
|
+
|
|
22866
|
+
:where(.theme-scope) .newsletter-topic-choice {
|
|
22867
|
+
display: flex;
|
|
22868
|
+
align-items: center;
|
|
22869
|
+
gap: 0.5rem;
|
|
22870
|
+
}
|
|
22871
|
+
|
|
22311
22872
|
/* Required indicator */
|
|
22312
22873
|
:where(.theme-scope) .newsletter-required {
|
|
22313
22874
|
color: rgb(var(--tb-primary));
|
|
@@ -22357,6 +22918,10 @@ const containerResponsiveThemeCss = `/*
|
|
|
22357
22918
|
flex-shrink: 0;
|
|
22358
22919
|
}
|
|
22359
22920
|
|
|
22921
|
+
:where(.theme-scope) .newsletter-inline .newsletter-topics {
|
|
22922
|
+
flex-basis: 100%;
|
|
22923
|
+
}
|
|
22924
|
+
|
|
22360
22925
|
/* Mobile fallback for inline variant */
|
|
22361
22926
|
@container rb-site (max-width: 640px) {
|
|
22362
22927
|
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
@@ -24375,6 +24940,38 @@ const containerResponsiveThemeCss = `/*
|
|
|
24375
24940
|
box-shadow:
|
|
24376
24941
|
0 0 0 2px rgb(var(--tb-surface)),
|
|
24377
24942
|
0 0 0 4px rgba(var(--tb-primary), 0.3);
|
|
24943
|
+
}
|
|
24944
|
+
|
|
24945
|
+
/* =============================================================================
|
|
24946
|
+
* Block: Appointment Services
|
|
24947
|
+
* ============================================================================= */
|
|
24948
|
+
|
|
24949
|
+
:where(.theme-scope) :where([data-block="appointment-services"]) .appointment-services-row {
|
|
24950
|
+
display: flex;
|
|
24951
|
+
flex-wrap: wrap;
|
|
24952
|
+
align-items: baseline;
|
|
24953
|
+
column-gap: 1rem;
|
|
24954
|
+
row-gap: 0.5rem;
|
|
24955
|
+
}
|
|
24956
|
+
|
|
24957
|
+
:where(.theme-scope) :where([data-block="appointment-services"]) .appointment-services-row-main {
|
|
24958
|
+
flex: 1 1 16rem;
|
|
24959
|
+
}
|
|
24960
|
+
|
|
24961
|
+
:where(.theme-scope) :where([data-block="appointment-services"]) .appointment-services-row-price {
|
|
24962
|
+
flex: 0 0 auto;
|
|
24963
|
+
}
|
|
24964
|
+
|
|
24965
|
+
:where(.theme-scope) :where([data-block="appointment-services"]) .appointment-services-row-action {
|
|
24966
|
+
flex: 1 0 100%;
|
|
24967
|
+
}
|
|
24968
|
+
|
|
24969
|
+
@container rb-site (min-width: 768px) {
|
|
24970
|
+
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
24971
|
+
:where(.theme-scope) :where([data-block="appointment-services"]) .appointment-services-row-action {
|
|
24972
|
+
flex: 0 0 auto;
|
|
24973
|
+
}
|
|
24974
|
+
}
|
|
24378
24975
|
}`;
|
|
24379
24976
|
//#endregion
|
|
24380
24977
|
//#region ../theme-core/src/ThemeScopeCore.tsx
|
|
@@ -24931,19 +25528,21 @@ function normalizeTokenValue(value) {
|
|
|
24931
25528
|
if (trimmedValue.startsWith("#")) return hexToRgbChannels(trimmedValue);
|
|
24932
25529
|
return trimmedValue;
|
|
24933
25530
|
}
|
|
24934
|
-
function
|
|
25531
|
+
function buildThemeRuntimeFromBridge(config) {
|
|
24935
25532
|
validateThemeBridgeConfig(config);
|
|
25533
|
+
return buildBridgeCssVars(config);
|
|
25534
|
+
}
|
|
25535
|
+
function buildThemeBridgeRuntime(config) {
|
|
25536
|
+
const cssVars = buildThemeRuntimeFromBridge(config);
|
|
24936
25537
|
const themeId = "sdk";
|
|
24937
25538
|
const corners = config.corners ?? "rounded";
|
|
24938
|
-
const shadows = config.shadows ?? "medium";
|
|
24939
|
-
const cssVars = buildBridgeCssVars(config);
|
|
24940
25539
|
const generatorTheme = buildBridgeGeneratorTheme(corners);
|
|
24941
25540
|
return {
|
|
24942
25541
|
themeId,
|
|
24943
25542
|
cssVars,
|
|
24944
|
-
buttonCss: shouldGenerateComponent(config.components?.buttons) ? generateButtonsCss(config, corners, shadows) : void 0,
|
|
24945
|
-
cardCss: generateCardsCss(config, corners, shadows),
|
|
24946
|
-
inputCss: shouldGenerateComponent(config.components?.inputs) ? generateInputsCss(corners, shadows) : void 0,
|
|
25543
|
+
buttonCss: shouldGenerateComponent(config.components?.buttons) ? generateButtonsCss(config, corners, config.shadows ?? "medium") : void 0,
|
|
25544
|
+
cardCss: generateCardsCss(config, corners, config.shadows ?? "medium"),
|
|
25545
|
+
inputCss: shouldGenerateComponent(config.components?.inputs) ? generateInputsCss(corners, config.shadows ?? "medium") : void 0,
|
|
24947
25546
|
statusCss: generateStatusCss({
|
|
24948
25547
|
themeId,
|
|
24949
25548
|
theme: generatorTheme
|
|
@@ -24952,6 +25551,7 @@ function buildThemeBridgeRuntime(config) {
|
|
|
24952
25551
|
themeId,
|
|
24953
25552
|
theme: generatorTheme
|
|
24954
25553
|
}),
|
|
25554
|
+
typographyCss: generateTypographyCss({ themeId }),
|
|
24955
25555
|
blockVarsCss: generateAllBlockVarsCss({
|
|
24956
25556
|
themeId,
|
|
24957
25557
|
theme: generatorTheme
|
|
@@ -25210,7 +25810,7 @@ function shouldGenerateComponent(value) {
|
|
|
25210
25810
|
function generateButtonsCss(config, corners, shadows) {
|
|
25211
25811
|
let variants = getDefaultButtonVariants();
|
|
25212
25812
|
const buttonConfig = config.components?.buttons;
|
|
25213
|
-
if (
|
|
25813
|
+
if (typeof buttonConfig === "object" && buttonConfig.variants) {
|
|
25214
25814
|
const requestedIds = new Set(buttonConfig.variants);
|
|
25215
25815
|
variants = variants.filter((variant) => requestedIds.has(variant.id));
|
|
25216
25816
|
}
|
|
@@ -25398,6 +25998,7 @@ function ThemeBridgeProvider({ config, children, className = "" }) {
|
|
|
25398
25998
|
inputCss: runtime.inputCss,
|
|
25399
25999
|
statusCss: runtime.statusCss,
|
|
25400
26000
|
progressCss: runtime.progressCss,
|
|
26001
|
+
typographyCss: runtime.typographyCss,
|
|
25401
26002
|
blockVarsCss: runtime.blockVarsCss,
|
|
25402
26003
|
customCss: runtime.customCss,
|
|
25403
26004
|
children
|