@riverbankcms/sdk 0.134.0 → 0.135.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -3
- package/README.md +1 -1
- package/dist/{PreviewEditorSidebar-DfRhJPFQ.mjs → PreviewEditorSidebar-roNY0GVy.mjs} +4 -4
- package/dist/{PreviewEditorUI-Dppxcr_g.mjs → PreviewEditorUI-KboDbEh_.mjs} +3 -3
- package/dist/{PreviewQueryProvider-D51gQaG3.mjs → PreviewQueryProvider-DcgaESkm.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-8CyGCXir.mjs → SdkPreviewModeRuntime-DBrF7Caa.mjs} +5 -5
- package/dist/{SiteChromeCustomizeContext-DVMTMvqA.mjs → SiteChromeCustomizeContext-DrIEpJKn.mjs} +4070 -8011
- package/dist/_dts/ai/src/contracts/proposals.d.ts +165 -165
- package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +15 -15
- package/dist/_dts/api/src/bookingConfig.d.ts +1 -1
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +25 -60
- package/dist/_dts/api/src/bookingOperations.d.ts +111 -161
- package/dist/_dts/api/src/bookingPaymentTermSchemas.d.ts +123 -0
- package/dist/_dts/api/src/bookingRecords.d.ts +13 -13
- package/dist/_dts/api/src/bookingRefundOutcomes.d.ts +4 -4
- package/dist/_dts/api/src/bookingSessionSummaryTypes.d.ts +34 -0
- package/dist/_dts/api/src/bookings.d.ts +5 -9
- package/dist/_dts/api/src/commercePortalEndpoints.d.ts +7 -7
- package/dist/_dts/api/src/communications.d.ts +1 -1
- package/dist/_dts/api/src/endpoints.d.ts +29 -109
- package/dist/_dts/api/src/eventManagementContracts.d.ts +1 -1
- package/dist/_dts/api/src/eventSeriesRegistrationEndpointDefinitions.d.ts +43 -0
- package/dist/_dts/api/src/index.d.ts +3 -4
- package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -1
- package/dist/_dts/api/src/participantMessaging.d.ts +2 -2
- package/dist/_dts/api/src/publicEventEndpointDefinitions.d.ts +8 -0
- package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +32 -28
- package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +85 -5
- package/dist/_dts/api/src/publicExperience/sharedTypes.d.ts +1 -1
- package/dist/_dts/api/src/publicExperience/wholeSeriesEndpoints.d.ts +9 -100
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +7 -6
- package/dist/_dts/api/src/publicWholeSeriesEndpointDefinitions.d.ts +0 -32
- package/dist/_dts/api/src/sdk-event-payment-terms.d.ts +1 -1
- package/dist/_dts/api/src/sdk-event-upsert.d.ts +1 -1
- package/dist/_dts/api/src/siteOperations.d.ts +2 -2
- package/dist/_dts/api/src/types.d.ts +1 -1
- package/dist/_dts/api/src/{courses.d.ts → wholeSeriesOfferings.d.ts} +43 -95
- package/dist/_dts/blocks/src/client.d.ts +0 -5
- package/dist/_dts/blocks/src/contracts/index.d.ts +1 -1
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +5 -94
- package/dist/_dts/blocks/src/portal/dateFormatting.d.ts +3 -0
- package/dist/_dts/blocks/src/portal/types.d.ts +17 -20
- package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +147 -42
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +10 -10
- package/dist/_dts/blocks/src/system/blocks/events/whole-series/types.d.ts +3 -0
- package/dist/_dts/blocks/src/system/blocks/index.d.ts +0 -2
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +3 -3
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/scheduleSummary.d.ts +3 -3
- package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
- package/dist/_dts/blocks/src/system/node/builder.d.ts +0 -1
- package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +9 -12
- package/dist/_dts/blocks/src/system/runtime/api/endpoints.d.ts +2 -44
- package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/core.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +99 -59
- package/dist/_dts/blocks/src/system/runtime/api/types/portal.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/shop.d.ts +19 -16
- package/dist/_dts/blocks/src/system/runtime/api/types/waitlist-claims.d.ts +7 -0
- package/dist/_dts/blocks/src/system/runtime/api/types.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +24 -247
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +13 -126
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +0 -1
- package/dist/_dts/blocks/src/system/runtime/hooks/usePaymentVerification.d.ts +2 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-details/WholeSeriesPricingDisplay.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationBookingLayer.d.ts +17 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationSurface.d.ts +24 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/PaymentBlockingPanel.d.ts +18 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/TicketSelectionStep.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/constants.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +1 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventPaymentOptions.d.ts +7 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventScope.d.ts +0 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.d.ts +7 -8
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationDerivations.d.ts +4 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationEventAdapter.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationStateMachine.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationWizardContext.d.ts +28 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/sessionStorage.d.ts +12 -11
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +53 -45
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationStripeReturn.d.ts +10 -6
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +9 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +20 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useWaitlistClaimRestoration.d.ts +20 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/utils.d.ts +5 -56
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/waitlistClaimRestoration.d.ts +20 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +6 -22
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/DateTimeTile.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +6 -6
- package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/shared/bookingPaymentOptions.d.ts +6 -1
- package/dist/_dts/blocks/src/system/runtime/shared/components/DiscountCodeDisclosure.d.ts +1 -13
- package/dist/_dts/blocks/src/system/runtime/shared/components/LoggedInAsUser.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/shared/components/MembershipHero.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/shared/components/StateIcon.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/shared/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/shared/types.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/shared/utils/checkoutUrls.d.ts +2 -2
- package/dist/_dts/commerce/src/index.d.ts +16 -0
- package/dist/_dts/commerce/src/money.d.ts +122 -0
- package/dist/_dts/commerce/src/moneyContracts.d.ts +178 -0
- package/dist/_dts/commerce/src/moneyDateUtils.d.ts +22 -0
- package/dist/_dts/commerce/src/moneyPayments.d.ts +59 -0
- package/dist/_dts/commerce/src/moneyPlanningTime.d.ts +4 -0
- package/dist/_dts/commerce/src/moneyReceiptReadModel.d.ts +68 -0
- package/dist/_dts/commerce/src/moneyReport.d.ts +105 -0
- package/dist/_dts/commerce/src/moneyReportBreakdowns.d.ts +3 -0
- package/dist/_dts/commerce/src/moneyReportKindFilter.d.ts +4 -0
- package/dist/_dts/commerce/src/moneyReportPage.d.ts +132 -0
- package/dist/_dts/commerce/src/purchase/checkoutCollectionPlan.d.ts +1 -1
- package/dist/_dts/commerce/src/purchase/confirmationEmailPayment.d.ts +1 -1
- package/dist/_dts/commerce/src/purchase/orderCompletionEmailPlan.d.ts +3 -3
- package/dist/_dts/commerce/src/purchase/orderFulfillmentPlan.d.ts +6 -25
- package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +4 -4
- package/dist/_dts/commerce/src/purchase/orderPlanningTypes.d.ts +11 -11
- package/dist/_dts/commerce/src/purchase/orderTypes.d.ts +1 -1
- package/dist/_dts/commerce/src/purchase/persistedCheckoutLines.d.ts +1 -1
- package/dist/_dts/commerce/src/purchase/types.d.ts +12 -8
- package/dist/_dts/commerce/src/shop/digitalFulfillment.d.ts +111 -0
- package/dist/_dts/commerce/src/shop/fulfillmentStatus.d.ts +10 -0
- package/dist/_dts/commerce/src/shop/inventoryRestore.d.ts +13 -0
- package/dist/_dts/commerce/src/shop/shippingAddress.d.ts +18 -0
- package/dist/_dts/commerce/src/types/json.d.ts +3 -0
- package/dist/_dts/commerce/src/utils/isPlainRecord.d.ts +1 -0
- package/dist/_dts/commerce/src/waitlists.d.ts +172 -0
- package/dist/_dts/content-model/src/content-types/builtin-schemas.d.ts +0 -30
- package/dist/_dts/content-model/src/content-types/builtins.d.ts +2 -39
- package/dist/_dts/content-model/src/metadataConfig.d.ts +0 -1
- package/dist/_dts/content-model/src/templates/defaults.d.ts +0 -68
- package/dist/_dts/core/src/branded.d.ts +3 -3
- package/dist/_dts/core/src/event-pricing.d.ts +6 -6
- package/dist/_dts/core/src/participants.d.ts +17 -17
- package/dist/_dts/core/src/rectification.d.ts +1 -1
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +890 -2154
- package/dist/_dts/sdk/src/bookings/index.d.ts +4 -5
- package/dist/_dts/sdk/src/bookings/types.d.ts +34 -4
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +4 -6
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/blocks/vars/index.d.ts +0 -2
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +1 -1
- package/dist/client/{usePolling-UN4WKnaM.mjs → BookingConsentAgreement-BQqwi8Oa.mjs} +180 -4
- package/dist/client/{DiscountCodeDisclosure-CfuPOHD0.mjs → DiscountCodeDisclosure-B97aMo0V.mjs} +13 -27
- package/dist/client/{EventCombined.client-DB8Qfzi-.mjs → EventCombined.client-Bs2Iw9Q6.mjs} +3 -3
- package/dist/client/{EventListing.client-DD4X8hp4.mjs → EventListing.client-C4QUQdmg.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-QhgIBQbv.mjs → LeafletStaticMap-CwWRk69M.mjs} +1 -1
- package/dist/client/{accordion-DFXpLvwg.mjs → accordion-BA0j8Mpw.mjs} +1 -1
- package/dist/client/{bookingForm-sI05d3lk.mjs → bookingForm-Br2e41H0.mjs} +6 -7
- package/dist/client/bookings.mjs +912 -1906
- package/dist/client/{carousel-wjyWTZCh.mjs → carousel-B4dmwnpD.mjs} +1 -1
- package/dist/client/{cart-DCwdpA4i.mjs → cart-B_ckGW4b.mjs} +3 -3
- package/dist/client/{checkout-DTDW3l0R.mjs → checkout-DAyspHdf.mjs} +3 -3
- package/dist/client/{checkoutUrls-DQYC_Br-.mjs → checkoutUrls-BuseL0dw.mjs} +4 -2
- package/dist/client/client.mjs +5074 -9309
- package/dist/client/{context-TSK1CGx8.mjs → context-DljQn8L5.mjs} +15 -69
- package/dist/client/{eventCalendar-B0Zg-i_w.mjs → eventCalendar-pJu3FUod.mjs} +5 -5
- package/dist/client/{eventCombined-B8Y2wizd.mjs → eventCombined-B6Kacm9F.mjs} +3 -3
- package/dist/client/{eventDetails-DPDOwURJ.mjs → eventDetails-CaX9z1pv.mjs} +8 -8
- package/dist/client/{eventListing-CjBcmSLn.mjs → eventListing-B9aXPO-I.mjs} +3 -3
- package/dist/client/{eventRegistration-CK30HsAq.mjs → eventRegistration-CBSovBkg.mjs} +4522 -3690
- package/dist/client/{form-CUXfsABE.mjs → form-Cm0tu_7o.mjs} +2 -2
- package/dist/client/{headerSection-N-mN3rjr.mjs → headerSection-OgRtHeKS.mjs} +2 -2
- package/dist/client/hooks.mjs +430 -692
- package/dist/client/{locationMap-oiIDQMBt.mjs → locationMap-DmjcYqNM.mjs} +2 -2
- package/dist/client/{newsletterForm-CkQ2tTrM.mjs → newsletterForm-D08OZQAC.mjs} +2 -2
- package/dist/client/{productDetail-CnidyrsN.mjs → productDetail-BqZeu2P4.mjs} +3 -3
- package/dist/client/{productList-CttYcS_S.mjs → productList-mNyIF9FG.mjs} +3 -3
- package/dist/client/{propsDecoder-CeUMxI9a.mjs → propsDecoder-DwHXRm9X.mjs} +4656 -4419
- package/dist/client/rendering/client.mjs +59504 -62158
- package/dist/client/rendering/islands.mjs +17 -19
- package/dist/client/rendering.mjs +5354 -9683
- package/dist/client/{scrollToBlock-lPr1oqxB.mjs → scrollToBlock-DtmdM3v-.mjs} +2 -2
- package/dist/client/{shop-DXQtMo2O.mjs → shop-CNjZK16F.mjs} +6 -6
- package/dist/client/{shop-commerce-quDL411J.mjs → shop-commerce-DkNNao1J.mjs} +6 -6
- package/dist/client/{shop-commerce-store-Dnu-8Iub.mjs → shop-commerce-store-9WA--zuW.mjs} +1 -1
- package/dist/client/{shopShared-BWPUURvG.mjs → shopShared-CHCVfccY.mjs} +3 -3
- package/dist/client/{useEventFilters-DRhWp2_5.mjs → useEventFilters-DvuaB4ZN.mjs} +3 -3
- package/dist/preview-next/before-render.mjs +40 -161
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/keepAlive.mjs +40 -161
- package/dist/preview-next/middleware.mjs +40 -161
- package/dist/{previewAuthStore-BFKd4LrN.mjs → previewAuthStore-C7ksxt5b.mjs} +40 -161
- package/dist/{sdk-runtime-Ca5RD78X.mjs → sdk-runtime-3GhW4knb.mjs} +2 -2
- package/dist/{separator-CMhj6BTi.mjs → separator-D3bCWYYb.mjs} +1 -1
- package/dist/server/components.mjs +535 -2950
- package/dist/server/config-validation.mjs +430 -692
- package/dist/server/config.mjs +430 -692
- package/dist/server/data.mjs +430 -692
- package/dist/server/index.mjs +41 -162
- package/dist/server/next.mjs +549 -2964
- package/dist/server/page-converter.mjs +331 -560
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +534 -2855
- package/dist/server/rendering.mjs +535 -2950
- package/dist/server/routing.mjs +574 -1065
- package/dist/server/server.mjs +444 -706
- package/dist/server/theme-bridge.mjs +41 -1524
- package/dist/styles/index.css +41 -1348
- package/package.json +1 -1
- package/dist/_dts/api/src/courseEndpointDefinitions.d.ts +0 -99
- package/dist/_dts/blocks/src/client/course-registration.d.ts +0 -5
- package/dist/_dts/blocks/src/system/blocks/course-details.d.ts +0 -134
- package/dist/_dts/blocks/src/system/blocks/course-registration.d.ts +0 -130
- package/dist/_dts/blocks/src/system/blocks/courses/shared/index.d.ts +0 -3
- package/dist/_dts/blocks/src/system/blocks/courses/shared/pricing.d.ts +0 -2
- package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +0 -1
- package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +0 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/courses.d.ts +0 -135
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessWholeSeriesRegistrationFlow.d.ts +0 -28
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details/logic.d.ts +0 -11
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details/runs.d.ts +0 -10
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details/view.d.ts +0 -15
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details.server.d.ts +0 -20
- package/dist/_dts/blocks/src/system/runtime/nodes/course-page-surface-scope.d.ts +0 -14
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.client.d.ts +0 -10
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +0 -181
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.server.d.ts +0 -12
- package/dist/_dts/blocks/src/system/runtime/nodes/event-details/CoursePricingDisplay.d.ts +0 -8
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/BookingModeStep.d.ts +0 -32
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/CheckIcon.d.ts +0 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/ErrorStep.d.ts +0 -17
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/MembershipHero.d.ts +0 -12
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/PaymentFailedStep.d.ts +0 -17
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/PortalAuthSidebar.d.ts +0 -9
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/StepIndicator.d.ts +0 -6
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/SuccessStep.d.ts +0 -14
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/VerifyingTimeoutStep.d.ts +0 -17
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WaitlistStep.d.ts +0 -12
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationActiveSteps.d.ts +0 -9
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationErrorBoundary.d.ts +0 -25
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationTerminalContent.d.ts +0 -8
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationWizard.d.ts +0 -8
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/components.d.ts +0 -46
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/index.d.ts +0 -18
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/presentation.d.ts +0 -7
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/pricing.d.ts +0 -14
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/types.d.ts +0 -105
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesEligibility.d.ts +0 -24
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesPaymentVerification.d.ts +0 -10
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationActions.d.ts +0 -35
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationPortal.d.ts +0 -7
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationSelection.d.ts +0 -35
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationWizard.d.ts +0 -185
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesWaitlistSelection.d.ts +0 -14
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/utils.d.ts +0 -43
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/whole-series-registration.headless.contract.d.ts +0 -325
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/whole-series-registration.headless.planning.d.ts +0 -27
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/wholeSeriesPageSurfaceScope.d.ts +0 -17
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/wholeSeriesRegistrationViewState.d.ts +0 -21
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/wizardSteps.d.ts +0 -30
- package/dist/_dts/sdk/src/rendering/islands/enhancers/courseRegistration.d.ts +0 -3
- package/dist/_dts/theme-core/src/blocks/vars/course-details.d.ts +0 -16
- package/dist/_dts/theme-core/src/blocks/vars/course-registration.d.ts +0 -21
- package/dist/client/BookingConsentAgreement-BxgpGEFD.mjs +0 -160
- package/dist/client/WholeSeriesRegistrationWizard-DwtC7bCs.mjs +0 -2546
- package/dist/client/courseRegistration-A-Tg7qw_.mjs +0 -52
- package/dist/client/pricing-Caa0QWzh.mjs +0 -195
|
@@ -9651,7 +9651,7 @@ function publicEventPricingType(pricing) {
|
|
|
9651
9651
|
case "single_paid":
|
|
9652
9652
|
case "ticket_types":
|
|
9653
9653
|
case "sliding_scale":
|
|
9654
|
-
case "
|
|
9654
|
+
case "whole_series": return isFreePublicEventPriceDisplay(pricing.display) ? "free" : "paid";
|
|
9655
9655
|
case "external": return "external";
|
|
9656
9656
|
}
|
|
9657
9657
|
}
|
|
@@ -9662,14 +9662,14 @@ function publicEventPricingCurrency(pricing) {
|
|
|
9662
9662
|
case "single_paid":
|
|
9663
9663
|
case "ticket_types":
|
|
9664
9664
|
case "sliding_scale": return pricing.currency;
|
|
9665
|
-
case "
|
|
9665
|
+
case "whole_series": return pricing.display.display.currency;
|
|
9666
9666
|
case "external": return null;
|
|
9667
9667
|
}
|
|
9668
9668
|
}
|
|
9669
9669
|
function isFreePublicEventPriceDisplay(display) {
|
|
9670
9670
|
switch (display.kind) {
|
|
9671
9671
|
case "free": return true;
|
|
9672
|
-
case "
|
|
9672
|
+
case "whole_series": return display.display.kind === "free";
|
|
9673
9673
|
case "exact":
|
|
9674
9674
|
case "from":
|
|
9675
9675
|
case "range":
|
|
@@ -9705,7 +9705,7 @@ function formatBookingPriceDisplay(display, options = {}) {
|
|
|
9705
9705
|
case "mixed": return display.paidToAmount > display.paidFromAmount ? `Free / ${formatCurrencyAmount(display.paidFromAmount, display.currency, options)} - ${formatCurrencyAmount(display.paidToAmount, display.currency, options)}` : `Free / ${formatCurrencyAmount(display.paidFromAmount, display.currency, options)}`;
|
|
9706
9706
|
case "unavailable": return "Pricing unavailable";
|
|
9707
9707
|
case "external": return display.label;
|
|
9708
|
-
case "
|
|
9708
|
+
case "whole_series": return formatCoursePriceDisplayLabel(display.display, options);
|
|
9709
9709
|
default: return assertNever$23(display);
|
|
9710
9710
|
}
|
|
9711
9711
|
}
|
|
@@ -14893,7 +14893,7 @@ defineBlockAppearancePreset({
|
|
|
14893
14893
|
id: "schedule-details-brand-depth",
|
|
14894
14894
|
target: "events",
|
|
14895
14895
|
label: "Brand-depth schedule details",
|
|
14896
|
-
blockKinds: ["block.event-details"
|
|
14896
|
+
blockKinds: ["block.event-details"],
|
|
14897
14897
|
design: {
|
|
14898
14898
|
sectionSurface: "brand-depth-band",
|
|
14899
14899
|
contentFrame: plainFrame,
|
|
@@ -21510,7 +21510,6 @@ const productDetail = (props, children, ...mods) => el("product-detail", props,
|
|
|
21510
21510
|
const cart = (props, children, ...mods) => el("cart", props, children, ...mods);
|
|
21511
21511
|
const checkout = (props, children, ...mods) => el("checkout", props, children, ...mods);
|
|
21512
21512
|
const gifting = (props, children, ...mods) => el("gifting", props, children, ...mods);
|
|
21513
|
-
const courseRegistration = (props, children, ...mods) => el("course-registration", props, children, ...mods);
|
|
21514
21513
|
function bind(from, options) {
|
|
21515
21514
|
return (node) => ({
|
|
21516
21515
|
...node,
|
|
@@ -31604,12 +31603,12 @@ const weeklySlotAvailabilityBlockDefinition = {
|
|
|
31604
31603
|
};
|
|
31605
31604
|
//#endregion
|
|
31606
31605
|
//#region ../blocks/src/system/blocks/shared/bookingPaymentTerms.ts
|
|
31607
|
-
const bookingDepositRefundPolicySchema = z$1.enum(["refundable", "non_refundable"]);
|
|
31608
|
-
const bookingInstalmentPlanSchema = z$1.union([
|
|
31606
|
+
const bookingDepositRefundPolicySchema$1 = z$1.enum(["refundable", "non_refundable"]);
|
|
31607
|
+
const bookingInstalmentPlanSchema$1 = z$1.union([
|
|
31609
31608
|
z$1.object({
|
|
31610
31609
|
kind: z$1.literal("deposit_plus_one_remainder"),
|
|
31611
31610
|
depositAmountCents: z$1.number().int().min(0),
|
|
31612
|
-
depositRefundability: bookingDepositRefundPolicySchema,
|
|
31611
|
+
depositRefundability: bookingDepositRefundPolicySchema$1,
|
|
31613
31612
|
remainderDueCount: z$1.number().int().positive(),
|
|
31614
31613
|
intervalUnit: z$1.enum([
|
|
31615
31614
|
"day",
|
|
@@ -31620,7 +31619,7 @@ const bookingInstalmentPlanSchema = z$1.union([
|
|
|
31620
31619
|
z$1.object({
|
|
31621
31620
|
kind: z$1.literal("deposit_plus_scheduled_instalments"),
|
|
31622
31621
|
depositAmountCents: z$1.number().int().min(0),
|
|
31623
|
-
depositRefundability: bookingDepositRefundPolicySchema,
|
|
31622
|
+
depositRefundability: bookingDepositRefundPolicySchema$1,
|
|
31624
31623
|
instalmentCount: z$1.number().int().positive(),
|
|
31625
31624
|
intervalCount: z$1.number().int().positive(),
|
|
31626
31625
|
intervalUnit: z$1.enum([
|
|
@@ -31640,28 +31639,28 @@ const bookingInstalmentPlanSchema = z$1.union([
|
|
|
31640
31639
|
])
|
|
31641
31640
|
})
|
|
31642
31641
|
]);
|
|
31643
|
-
const bookingFlexibleBalanceDueDateRuleSchema = z$1.union([z$1.object({
|
|
31642
|
+
const bookingFlexibleBalanceDueDateRuleSchema$1 = z$1.union([z$1.object({
|
|
31644
31643
|
kind: z$1.literal("relative_to_start_date"),
|
|
31645
31644
|
daysBeforeStart: z$1.number().int().positive()
|
|
31646
31645
|
}), z$1.object({
|
|
31647
31646
|
kind: z$1.literal("fixed_calendar_date"),
|
|
31648
31647
|
dueAt: z$1.string().datetime()
|
|
31649
31648
|
})]);
|
|
31650
|
-
const bookingFlexibleBalanceConfigSchema = z$1.object({
|
|
31649
|
+
const bookingFlexibleBalanceConfigSchema$1 = z$1.object({
|
|
31651
31650
|
upfrontAmountCents: z$1.number().int().min(0),
|
|
31652
|
-
dueDateRule: bookingFlexibleBalanceDueDateRuleSchema,
|
|
31653
|
-
depositRefundability: bookingDepositRefundPolicySchema
|
|
31651
|
+
dueDateRule: bookingFlexibleBalanceDueDateRuleSchema$1,
|
|
31652
|
+
depositRefundability: bookingDepositRefundPolicySchema$1
|
|
31654
31653
|
});
|
|
31655
31654
|
const blockBookingPaymentCollectionOptionSchema = z$1.union([
|
|
31656
31655
|
z$1.object({ kind: z$1.literal("upfront") }),
|
|
31657
31656
|
z$1.object({ kind: z$1.literal("deferred_manual") }),
|
|
31658
31657
|
z$1.object({
|
|
31659
31658
|
kind: z$1.literal("instalment_plan"),
|
|
31660
|
-
plan: bookingInstalmentPlanSchema
|
|
31659
|
+
plan: bookingInstalmentPlanSchema$1
|
|
31661
31660
|
}),
|
|
31662
31661
|
z$1.object({
|
|
31663
31662
|
kind: z$1.literal("flexible_balance"),
|
|
31664
|
-
config: bookingFlexibleBalanceConfigSchema
|
|
31663
|
+
config: bookingFlexibleBalanceConfigSchema$1
|
|
31665
31664
|
})
|
|
31666
31665
|
]);
|
|
31667
31666
|
const blockBookingPaymentTermsSchema = z$1.object({ allowedOptions: z$1.array(blockBookingPaymentCollectionOptionSchema).min(1) });
|
|
@@ -31915,6 +31914,13 @@ const publicWholeSeriesOfferingSchema = z$1.object({
|
|
|
31915
31914
|
title: z$1.string(),
|
|
31916
31915
|
slug: z$1.string(),
|
|
31917
31916
|
description: z$1.unknown().nullable(),
|
|
31917
|
+
deliveryMode: z$1.enum([
|
|
31918
|
+
"in_person",
|
|
31919
|
+
"online",
|
|
31920
|
+
"hybrid"
|
|
31921
|
+
]),
|
|
31922
|
+
waitlistEnabled: z$1.boolean(),
|
|
31923
|
+
requireGuestDetails: z$1.boolean(),
|
|
31918
31924
|
teamMembers: z$1.array(wholeSeriesTeamMemberSummarySchema).optional(),
|
|
31919
31925
|
enrollmentOpen: z$1.boolean(),
|
|
31920
31926
|
pricing: wholeSeriesPricingSchema,
|
|
@@ -32030,7 +32036,7 @@ const mixedPriceDisplaySchema = z$1.object({
|
|
|
32030
32036
|
paidToAmount: z$1.number(),
|
|
32031
32037
|
currency: z$1.string()
|
|
32032
32038
|
});
|
|
32033
|
-
const
|
|
32039
|
+
const publicWholeSeriesPriceDisplaySchema = z$1.discriminatedUnion("kind", [
|
|
32034
32040
|
freePriceDisplaySchema,
|
|
32035
32041
|
exactPriceDisplaySchema,
|
|
32036
32042
|
fromPriceDisplaySchema,
|
|
@@ -32048,8 +32054,8 @@ z$1.discriminatedUnion("kind", [
|
|
|
32048
32054
|
label: z$1.string()
|
|
32049
32055
|
}),
|
|
32050
32056
|
z$1.object({
|
|
32051
|
-
kind: z$1.literal("
|
|
32052
|
-
display:
|
|
32057
|
+
kind: z$1.literal("whole_series"),
|
|
32058
|
+
display: publicWholeSeriesPriceDisplaySchema
|
|
32053
32059
|
})
|
|
32054
32060
|
]);
|
|
32055
32061
|
const publicEventTicketTypePriceDisplaySchema = z$1.union([
|
|
@@ -32151,10 +32157,10 @@ const publicEventPricingSchema = z$1.discriminatedUnion("kind", [
|
|
|
32151
32157
|
})
|
|
32152
32158
|
}),
|
|
32153
32159
|
z$1.object({
|
|
32154
|
-
kind: z$1.literal("
|
|
32160
|
+
kind: z$1.literal("whole_series"),
|
|
32155
32161
|
display: z$1.object({
|
|
32156
|
-
kind: z$1.literal("
|
|
32157
|
-
display:
|
|
32162
|
+
kind: z$1.literal("whole_series"),
|
|
32163
|
+
display: publicWholeSeriesPriceDisplaySchema
|
|
32158
32164
|
})
|
|
32159
32165
|
}),
|
|
32160
32166
|
z$1.object({
|
|
@@ -32597,7 +32603,8 @@ function resolveEventRegistrationScope(context) {
|
|
|
32597
32603
|
};
|
|
32598
32604
|
return { kind: "unscoped" };
|
|
32599
32605
|
}
|
|
32600
|
-
function
|
|
32606
|
+
function resolveEventRegistrationScopedEvents(events, context) {
|
|
32607
|
+
const scope = resolveEventRegistrationScope(context);
|
|
32601
32608
|
switch (scope.kind) {
|
|
32602
32609
|
case "occurrenceSeries":
|
|
32603
32610
|
case "pageSurfaceSeries": return events.filter((event) => event.seriesId === scope.seriesId);
|
|
@@ -32609,9 +32616,6 @@ function applyEventRegistrationScope(events, scope) {
|
|
|
32609
32616
|
case "unscoped": return [...events];
|
|
32610
32617
|
}
|
|
32611
32618
|
}
|
|
32612
|
-
function resolveEventRegistrationScopedEvents(events, context) {
|
|
32613
|
-
return applyEventRegistrationScope(events, resolveEventRegistrationScope(context));
|
|
32614
|
-
}
|
|
32615
32619
|
//#endregion
|
|
32616
32620
|
//#region ../blocks/src/system/runtime/nodes/event-registration/registrationSurface.ts
|
|
32617
32621
|
function planEventRegistrationScope(input) {
|
|
@@ -32705,14 +32709,14 @@ function isRecord$23(value) {
|
|
|
32705
32709
|
}
|
|
32706
32710
|
function isPublicEventPricing(value) {
|
|
32707
32711
|
if (!isRecord$23(value) || typeof value.kind !== "string") return false;
|
|
32708
|
-
return value.kind === "drop_in" || value.kind === "free_registration" || value.kind === "single_paid" || value.kind === "sliding_scale" || value.kind === "ticket_types" || value.kind === "
|
|
32712
|
+
return value.kind === "drop_in" || value.kind === "free_registration" || value.kind === "single_paid" || value.kind === "sliding_scale" || value.kind === "ticket_types" || value.kind === "whole_series" || value.kind === "external";
|
|
32709
32713
|
}
|
|
32710
32714
|
function isPublicEventTicketType(value) {
|
|
32711
32715
|
return isRecord$23(value) && typeof value.id === "string";
|
|
32712
32716
|
}
|
|
32713
32717
|
function readTicketTypePriceDisplay(value, currency) {
|
|
32714
32718
|
const display = readLegacyPriceDisplay(value, currency);
|
|
32715
|
-
return display.kind === "
|
|
32719
|
+
return display.kind === "whole_series" || display.kind === "external" ? {
|
|
32716
32720
|
kind: "unavailable",
|
|
32717
32721
|
currency
|
|
32718
32722
|
} : display;
|
|
@@ -32770,11 +32774,11 @@ function readLegacyPriceDisplay(value, currency) {
|
|
|
32770
32774
|
kind: "unavailable",
|
|
32771
32775
|
currency: displayCurrency
|
|
32772
32776
|
};
|
|
32773
|
-
case "
|
|
32774
|
-
kind: "
|
|
32777
|
+
case "whole_series": return isRecord$23(value.display) ? {
|
|
32778
|
+
kind: "whole_series",
|
|
32775
32779
|
display: readCoursePriceDisplay(value.display, displayCurrency)
|
|
32776
32780
|
} : {
|
|
32777
|
-
kind: "
|
|
32781
|
+
kind: "whole_series",
|
|
32778
32782
|
display: {
|
|
32779
32783
|
kind: "unavailable",
|
|
32780
32784
|
currency: displayCurrency
|
|
@@ -32897,7 +32901,7 @@ function getWizardStepsForContext(hasPreSelectedContext, needsPaymentStep) {
|
|
|
32897
32901
|
//#endregion
|
|
32898
32902
|
//#region ../blocks/src/system/runtime/nodes/event-registration/registrationDerivations.ts
|
|
32899
32903
|
function eventMatchesOccurrenceId(event, occurrenceId) {
|
|
32900
|
-
return event.
|
|
32904
|
+
return event.registrationSubject.kind === "occurrence" && (event.registrationSubject.occurrenceId === occurrenceId || event.selectionId === occurrenceId);
|
|
32901
32905
|
}
|
|
32902
32906
|
function findPreSelectedEvent(input) {
|
|
32903
32907
|
const occurrenceContext = input.occurrenceContext;
|
|
@@ -32923,12 +32927,127 @@ function toRegistrationEvent(event) {
|
|
|
32923
32927
|
return {
|
|
32924
32928
|
...event,
|
|
32925
32929
|
pricing: resolveRuntimeEventPricing(event),
|
|
32926
|
-
|
|
32927
|
-
|
|
32930
|
+
selectionId: event.id,
|
|
32931
|
+
registrationSubject: {
|
|
32932
|
+
kind: "occurrence",
|
|
32933
|
+
occurrenceId: event.occurrenceId
|
|
32934
|
+
}
|
|
32928
32935
|
};
|
|
32929
32936
|
}
|
|
32930
32937
|
function toRegistrationEvents(events) {
|
|
32931
|
-
return events.map(toRegistrationEvent);
|
|
32938
|
+
return events.filter((event) => event.bookingScope === "single_occurrence").map(toRegistrationEvent);
|
|
32939
|
+
}
|
|
32940
|
+
function toWholeSeriesTicketType(option) {
|
|
32941
|
+
return {
|
|
32942
|
+
...option,
|
|
32943
|
+
capacityMode: option.capacityLimit === null ? "unlimited" : "limited",
|
|
32944
|
+
attendanceScope: option.attendanceScope ?? void 0,
|
|
32945
|
+
availability: {
|
|
32946
|
+
kind: "available",
|
|
32947
|
+
remainingCapacity: option.capacityLimit
|
|
32948
|
+
}
|
|
32949
|
+
};
|
|
32950
|
+
}
|
|
32951
|
+
function toWholeSeriesPricing(offering) {
|
|
32952
|
+
const resolved = resolveWholeSeriesPricingState(offering);
|
|
32953
|
+
switch (offering.pricing.pricingStrategy) {
|
|
32954
|
+
case "free": return {
|
|
32955
|
+
kind: "free_registration",
|
|
32956
|
+
currency: offering.currency,
|
|
32957
|
+
display: {
|
|
32958
|
+
kind: "free",
|
|
32959
|
+
currency: offering.currency
|
|
32960
|
+
}
|
|
32961
|
+
};
|
|
32962
|
+
case "single": {
|
|
32963
|
+
const amount = offering.pricing.singlePriceAmount ?? 0;
|
|
32964
|
+
return amount === 0 ? {
|
|
32965
|
+
kind: "free_registration",
|
|
32966
|
+
currency: offering.currency,
|
|
32967
|
+
display: {
|
|
32968
|
+
kind: "free",
|
|
32969
|
+
currency: offering.currency
|
|
32970
|
+
}
|
|
32971
|
+
} : {
|
|
32972
|
+
kind: "single_paid",
|
|
32973
|
+
amount,
|
|
32974
|
+
currency: offering.currency,
|
|
32975
|
+
display: {
|
|
32976
|
+
kind: "exact",
|
|
32977
|
+
amount,
|
|
32978
|
+
currency: offering.currency
|
|
32979
|
+
}
|
|
32980
|
+
};
|
|
32981
|
+
}
|
|
32982
|
+
case "tiered": return {
|
|
32983
|
+
kind: "ticket_types",
|
|
32984
|
+
currency: offering.currency,
|
|
32985
|
+
ticketTypes: resolved.selectableOptions.map((option) => toWholeSeriesTicketType(option)),
|
|
32986
|
+
display: resolved.display
|
|
32987
|
+
};
|
|
32988
|
+
case "sliding_scale": return {
|
|
32989
|
+
kind: "sliding_scale",
|
|
32990
|
+
minAmount: offering.pricing.slidingMinAmount ?? 0,
|
|
32991
|
+
maxAmount: offering.pricing.slidingMaxAmount ?? 0,
|
|
32992
|
+
suggestedAmount: offering.pricing.slidingSuggestedAmount ?? null,
|
|
32993
|
+
currency: offering.currency,
|
|
32994
|
+
display: {
|
|
32995
|
+
kind: "range",
|
|
32996
|
+
minAmount: offering.pricing.slidingMinAmount ?? 0,
|
|
32997
|
+
maxAmount: offering.pricing.slidingMaxAmount ?? 0,
|
|
32998
|
+
currency: offering.currency
|
|
32999
|
+
}
|
|
33000
|
+
};
|
|
33001
|
+
}
|
|
33002
|
+
}
|
|
33003
|
+
function toAttendanceModes(offering) {
|
|
33004
|
+
return (offering.deliveryMode === "hybrid" ? ["in_person", "online"] : [offering.deliveryMode]).map((mode) => ({
|
|
33005
|
+
mode,
|
|
33006
|
+
capacity: offering.enrollmentCapacity,
|
|
33007
|
+
registeredCount: offering.enrolledCount,
|
|
33008
|
+
availableSpots: offering.availableSpots,
|
|
33009
|
+
waitlistEnabled: offering.waitlistEnabled
|
|
33010
|
+
}));
|
|
33011
|
+
}
|
|
33012
|
+
function toWholeSeriesRegistrationEvent(offering) {
|
|
33013
|
+
const firstSession = offering.sessions[0];
|
|
33014
|
+
const lastSession = offering.sessions[offering.sessions.length - 1];
|
|
33015
|
+
return {
|
|
33016
|
+
selectionId: offering.eventSeriesId,
|
|
33017
|
+
registrationSubject: {
|
|
33018
|
+
kind: "wholeSeries",
|
|
33019
|
+
eventSeriesId: offering.eventSeriesId,
|
|
33020
|
+
sessions: offering.sessions
|
|
33021
|
+
},
|
|
33022
|
+
seriesId: offering.eventSeriesId,
|
|
33023
|
+
title: offering.title,
|
|
33024
|
+
startsAt: firstSession?.startsAt ?? "",
|
|
33025
|
+
endsAt: lastSession?.endsAt ?? firstSession?.endsAt ?? "",
|
|
33026
|
+
bookingAvailability: offering.enrollmentOpen ? { kind: "open" } : {
|
|
33027
|
+
kind: "closed",
|
|
33028
|
+
reason: "enrollment_closed"
|
|
33029
|
+
},
|
|
33030
|
+
deliveryMode: offering.deliveryMode,
|
|
33031
|
+
attendanceModes: toAttendanceModes(offering),
|
|
33032
|
+
capacity: offering.enrollmentCapacity,
|
|
33033
|
+
registeredCount: offering.enrolledCount,
|
|
33034
|
+
availableSpots: offering.availableSpots,
|
|
33035
|
+
waitlistEnabled: offering.waitlistEnabled,
|
|
33036
|
+
venue: offering.venue ? {
|
|
33037
|
+
...offering.venue,
|
|
33038
|
+
location: null
|
|
33039
|
+
} : null,
|
|
33040
|
+
eventCategory: null,
|
|
33041
|
+
teamMembers: offering.teamMembers,
|
|
33042
|
+
status: offering.status,
|
|
33043
|
+
timeZone: firstSession?.timeZone ?? "UTC",
|
|
33044
|
+
pricing: toWholeSeriesPricing(offering),
|
|
33045
|
+
paymentTerms: offering.paymentTerms,
|
|
33046
|
+
consent: offering.consent,
|
|
33047
|
+
requireGuestDetails: offering.requireGuestDetails,
|
|
33048
|
+
acceptsPasses: false,
|
|
33049
|
+
acceptsMemberships: offering.acceptsMemberships
|
|
33050
|
+
};
|
|
32932
33051
|
}
|
|
32933
33052
|
//#endregion
|
|
32934
33053
|
//#region ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
|
|
@@ -32954,11 +33073,7 @@ const eventRegistrationHydrationSchemaShape = {
|
|
|
32954
33073
|
maxTickets: z$1.string().optional(),
|
|
32955
33074
|
showVenue: z$1.boolean().optional(),
|
|
32956
33075
|
showCapacity: z$1.boolean().optional(),
|
|
32957
|
-
showSessions: z$1.boolean().optional(),
|
|
32958
|
-
showPrice: z$1.boolean().optional(),
|
|
32959
33076
|
successMessage: z$1.string().optional(),
|
|
32960
|
-
waitlistMessage: z$1.string().optional(),
|
|
32961
|
-
membershipMessage: z$1.string().optional(),
|
|
32962
33077
|
buttonVariant: registrationButtonVariantSchema.optional(),
|
|
32963
33078
|
overlayEnabled: z$1.boolean().optional(),
|
|
32964
33079
|
spamProtectionEnabled: z$1.boolean().optional(),
|
|
@@ -33028,6 +33143,15 @@ function resolveWholeSeriesOffering(source) {
|
|
|
33028
33143
|
return source.wholeSeriesOffering ?? source.subjectWholeSeriesOffering ?? null;
|
|
33029
33144
|
}
|
|
33030
33145
|
function buildEventRegistrationShellStepLabels(source) {
|
|
33146
|
+
const selectedOffering = resolveWholeSeriesOffering(source);
|
|
33147
|
+
if (selectedOffering) {
|
|
33148
|
+
const selectedEvent = toWholeSeriesRegistrationEvent(selectedOffering);
|
|
33149
|
+
return getWizardStepsForContext(true, resolveEventRequiresPayment({
|
|
33150
|
+
eligibility: null,
|
|
33151
|
+
selectedTicketType: null,
|
|
33152
|
+
event: selectedEvent
|
|
33153
|
+
})).map((step) => shellLabelForRegistrationStep(step, [selectedEvent]));
|
|
33154
|
+
}
|
|
33031
33155
|
const scopedEvents = scopeEventRegistrationEvents(source);
|
|
33032
33156
|
if (scopedEvents.length === 0) return EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS;
|
|
33033
33157
|
const preSelectedEvent = findPreSelectedEvent({
|
|
@@ -33091,11 +33215,7 @@ const eventRegistrationBlockRuntime = defineClientOwnedBlockRuntime({
|
|
|
33091
33215
|
maxTickets: source.maxTickets ?? void 0,
|
|
33092
33216
|
showVenue: source.showVenue,
|
|
33093
33217
|
showCapacity: source.showCapacity,
|
|
33094
|
-
showSessions: source.showSessions,
|
|
33095
|
-
showPrice: source.showPrice,
|
|
33096
33218
|
successMessage: source.successMessage,
|
|
33097
|
-
waitlistMessage: source.waitlistMessage,
|
|
33098
|
-
membershipMessage: source.membershipMessage,
|
|
33099
33219
|
buttonVariant: source.buttonVariant,
|
|
33100
33220
|
overlayEnabled: source.overlayEnabled,
|
|
33101
33221
|
spamProtectionEnabled: source.spamProtectionEnabled,
|
|
@@ -33225,24 +33345,6 @@ const eventRegistrationBlockDefinition = {
|
|
|
33225
33345
|
defaultValue: true,
|
|
33226
33346
|
ui: { intent: "display" }
|
|
33227
33347
|
},
|
|
33228
|
-
{
|
|
33229
|
-
id: "showSessions",
|
|
33230
|
-
type: "boolean",
|
|
33231
|
-
label: "Show complete schedule",
|
|
33232
|
-
description: "Display every session for whole-series registrations",
|
|
33233
|
-
required: false,
|
|
33234
|
-
defaultValue: true,
|
|
33235
|
-
ui: { intent: "display" }
|
|
33236
|
-
},
|
|
33237
|
-
{
|
|
33238
|
-
id: "showPrice",
|
|
33239
|
-
type: "boolean",
|
|
33240
|
-
label: "Show price",
|
|
33241
|
-
description: "Display the whole-series price",
|
|
33242
|
-
required: false,
|
|
33243
|
-
defaultValue: true,
|
|
33244
|
-
ui: { intent: "display" }
|
|
33245
|
-
},
|
|
33246
33348
|
{
|
|
33247
33349
|
id: "successMessage",
|
|
33248
33350
|
type: "text",
|
|
@@ -33253,26 +33355,6 @@ const eventRegistrationBlockDefinition = {
|
|
|
33253
33355
|
defaultValue: "Thank you for registering! Check your email for confirmation details.",
|
|
33254
33356
|
maxLength: 500
|
|
33255
33357
|
},
|
|
33256
|
-
{
|
|
33257
|
-
id: "waitlistMessage",
|
|
33258
|
-
type: "text",
|
|
33259
|
-
label: "Waitlist message",
|
|
33260
|
-
description: "Message shown after joining a whole-series waitlist",
|
|
33261
|
-
required: false,
|
|
33262
|
-
multiline: true,
|
|
33263
|
-
defaultValue: "You've been added to the waitlist. We'll email you if a place becomes available.",
|
|
33264
|
-
maxLength: 500
|
|
33265
|
-
},
|
|
33266
|
-
{
|
|
33267
|
-
id: "membershipMessage",
|
|
33268
|
-
type: "text",
|
|
33269
|
-
label: "Membership registration message",
|
|
33270
|
-
description: "Message shown when a whole-series place is covered by membership",
|
|
33271
|
-
required: false,
|
|
33272
|
-
multiline: true,
|
|
33273
|
-
defaultValue: "Registered using your membership. Check your email for session details.",
|
|
33274
|
-
maxLength: 500
|
|
33275
|
-
},
|
|
33276
33358
|
{
|
|
33277
33359
|
id: "buttonText",
|
|
33278
33360
|
type: "text",
|
|
@@ -33304,11 +33386,7 @@ const eventRegistrationBlockDefinition = {
|
|
|
33304
33386
|
} },
|
|
33305
33387
|
showVenue: { $bind: { from: "content.showVenue" } },
|
|
33306
33388
|
showCapacity: { $bind: { from: "content.showCapacity" } },
|
|
33307
|
-
showSessions: { $bind: { from: "content.showSessions" } },
|
|
33308
|
-
showPrice: { $bind: { from: "content.showPrice" } },
|
|
33309
33389
|
successMessage: { $bind: { from: "content.successMessage" } },
|
|
33310
|
-
waitlistMessage: { $bind: { from: "content.waitlistMessage" } },
|
|
33311
|
-
membershipMessage: { $bind: { from: "content.membershipMessage" } },
|
|
33312
33390
|
buttonText: { $bind: {
|
|
33313
33391
|
from: "content.buttonText",
|
|
33314
33392
|
fallback: "Complete Registration"
|
|
@@ -33425,267 +33503,6 @@ const eventRegistrationBlockDefinition = {
|
|
|
33425
33503
|
}
|
|
33426
33504
|
};
|
|
33427
33505
|
//#endregion
|
|
33428
|
-
//#region ../blocks/src/system/runtime/nodes/course-registration.interactive.ts
|
|
33429
|
-
const courseRegistrationHydrationSchemaShape = {
|
|
33430
|
-
subject: eventRegistrationPageSurfaceSubjectSchema.nullable().optional(),
|
|
33431
|
-
courses: z$1.array(publicWholeSeriesOfferingSchema).nullable().optional(),
|
|
33432
|
-
showSessions: z$1.boolean().optional(),
|
|
33433
|
-
showPrice: z$1.boolean().optional(),
|
|
33434
|
-
showCapacity: z$1.boolean().optional(),
|
|
33435
|
-
showVenue: z$1.boolean().optional(),
|
|
33436
|
-
successMessage: z$1.string().optional(),
|
|
33437
|
-
waitlistMessage: z$1.string().optional(),
|
|
33438
|
-
membershipMessage: z$1.string().optional(),
|
|
33439
|
-
buttonVariant: registrationButtonVariantSchema.optional()
|
|
33440
|
-
};
|
|
33441
|
-
const courseRegistrationSourceSchema = z$1.object({
|
|
33442
|
-
siteId: z$1.string().optional(),
|
|
33443
|
-
apiBaseUrl: z$1.string().optional(),
|
|
33444
|
-
portalToken: z$1.string().nullable().optional(),
|
|
33445
|
-
...courseRegistrationHydrationSchemaShape,
|
|
33446
|
-
className: z$1.string().nullable().optional(),
|
|
33447
|
-
buttonText: z$1.string().nullable().optional(),
|
|
33448
|
-
stage: previewStageSchema.optional()
|
|
33449
|
-
});
|
|
33450
|
-
const courseRegistrationDisplaySchema = z$1.object({
|
|
33451
|
-
kind: z$1.literal("course-registration"),
|
|
33452
|
-
state: z$1.literal("shell"),
|
|
33453
|
-
className: z$1.string().nullable(),
|
|
33454
|
-
summaryButtonText: z$1.string()
|
|
33455
|
-
});
|
|
33456
|
-
const courseRegistrationHydrationSchema = z$1.object(courseRegistrationHydrationSchemaShape);
|
|
33457
|
-
const courseRegistrationRenderSchema = z$1.object({
|
|
33458
|
-
display: courseRegistrationDisplaySchema,
|
|
33459
|
-
hydration: courseRegistrationHydrationSchema
|
|
33460
|
-
});
|
|
33461
|
-
z$1.object({
|
|
33462
|
-
siteId: z$1.string().optional(),
|
|
33463
|
-
apiBaseUrl: z$1.string().optional(),
|
|
33464
|
-
portalToken: z$1.string().nullable().optional(),
|
|
33465
|
-
stage: previewStageSchema.optional()
|
|
33466
|
-
});
|
|
33467
|
-
function buildCourseRegistrationDisplay(source) {
|
|
33468
|
-
return {
|
|
33469
|
-
kind: "course-registration",
|
|
33470
|
-
state: "shell",
|
|
33471
|
-
className: source.className ?? null,
|
|
33472
|
-
summaryButtonText: source.buttonText?.trim() || "Sign up"
|
|
33473
|
-
};
|
|
33474
|
-
}
|
|
33475
|
-
const courseRegistrationBlockRuntime = defineClientOwnedBlockRuntime({
|
|
33476
|
-
kind: "client-owned",
|
|
33477
|
-
contracts: {
|
|
33478
|
-
source: createZodCodec(courseRegistrationSourceSchema),
|
|
33479
|
-
render: createZodCodec(courseRegistrationRenderSchema)
|
|
33480
|
-
},
|
|
33481
|
-
buildRender: (source) => ({
|
|
33482
|
-
display: buildCourseRegistrationDisplay(source),
|
|
33483
|
-
hydration: {
|
|
33484
|
-
subject: source.subject ?? null,
|
|
33485
|
-
courses: source.courses ?? null,
|
|
33486
|
-
showSessions: source.showSessions,
|
|
33487
|
-
showPrice: source.showPrice,
|
|
33488
|
-
showCapacity: source.showCapacity,
|
|
33489
|
-
showVenue: source.showVenue,
|
|
33490
|
-
successMessage: source.successMessage,
|
|
33491
|
-
waitlistMessage: source.waitlistMessage,
|
|
33492
|
-
membershipMessage: source.membershipMessage,
|
|
33493
|
-
buttonVariant: source.buttonVariant
|
|
33494
|
-
}
|
|
33495
|
-
})
|
|
33496
|
-
});
|
|
33497
|
-
function buildCourseRegistrationInteractiveIslandProps(props) {
|
|
33498
|
-
return buildInteractiveIslandProps({
|
|
33499
|
-
runtime: courseRegistrationBlockRuntime,
|
|
33500
|
-
mode: "course-registration",
|
|
33501
|
-
meta: {
|
|
33502
|
-
siteId: props.siteId,
|
|
33503
|
-
apiBaseUrl: props.apiBaseUrl,
|
|
33504
|
-
portalToken: props.portalToken,
|
|
33505
|
-
stage: props.stage
|
|
33506
|
-
},
|
|
33507
|
-
source: props
|
|
33508
|
-
});
|
|
33509
|
-
}
|
|
33510
|
-
const courseRegistrationBlockDefinition = {
|
|
33511
|
-
manifest: createBlockManifest({
|
|
33512
|
-
id: "block.course-registration",
|
|
33513
|
-
version: "1.0.0",
|
|
33514
|
-
title: "Course Registration",
|
|
33515
|
-
titleSource: "heading",
|
|
33516
|
-
description: "Enrollment form for multi-session courses",
|
|
33517
|
-
category: "interactive",
|
|
33518
|
-
contentSource: { kind: "inline" },
|
|
33519
|
-
tags: [
|
|
33520
|
-
"courses",
|
|
33521
|
-
"enrollment",
|
|
33522
|
-
"booking",
|
|
33523
|
-
"form",
|
|
33524
|
-
"signup",
|
|
33525
|
-
"education"
|
|
33526
|
-
],
|
|
33527
|
-
icon: "GraduationCap",
|
|
33528
|
-
styleTokens: {
|
|
33529
|
-
background: "surface",
|
|
33530
|
-
typography: "body",
|
|
33531
|
-
spacing: "md"
|
|
33532
|
-
},
|
|
33533
|
-
behaviours: {
|
|
33534
|
-
supportsThemeSwitching: true,
|
|
33535
|
-
inlineEditing: false,
|
|
33536
|
-
animation: false,
|
|
33537
|
-
paletteHidden: false
|
|
33538
|
-
},
|
|
33539
|
-
additionalFields: [
|
|
33540
|
-
{
|
|
33541
|
-
id: "heading",
|
|
33542
|
-
type: "text",
|
|
33543
|
-
label: "Heading",
|
|
33544
|
-
description: "Main heading for the registration form",
|
|
33545
|
-
required: false,
|
|
33546
|
-
multiline: false,
|
|
33547
|
-
defaultValue: "Sign up"
|
|
33548
|
-
},
|
|
33549
|
-
{
|
|
33550
|
-
id: "description",
|
|
33551
|
-
type: "richText",
|
|
33552
|
-
label: "Description",
|
|
33553
|
-
description: "Optional introductory text",
|
|
33554
|
-
required: false
|
|
33555
|
-
},
|
|
33556
|
-
{
|
|
33557
|
-
id: "showSessions",
|
|
33558
|
-
type: "boolean",
|
|
33559
|
-
label: "Show sessions",
|
|
33560
|
-
description: "Display the list of course sessions",
|
|
33561
|
-
required: false,
|
|
33562
|
-
defaultValue: true,
|
|
33563
|
-
ui: { intent: "display" }
|
|
33564
|
-
},
|
|
33565
|
-
{
|
|
33566
|
-
id: "showPrice",
|
|
33567
|
-
type: "boolean",
|
|
33568
|
-
label: "Show price",
|
|
33569
|
-
description: "Display the course price",
|
|
33570
|
-
required: false,
|
|
33571
|
-
defaultValue: true,
|
|
33572
|
-
ui: { intent: "display" }
|
|
33573
|
-
},
|
|
33574
|
-
{
|
|
33575
|
-
id: "showCapacity",
|
|
33576
|
-
type: "boolean",
|
|
33577
|
-
label: "Show available spots",
|
|
33578
|
-
description: "Display remaining enrollment capacity",
|
|
33579
|
-
required: false,
|
|
33580
|
-
defaultValue: true,
|
|
33581
|
-
ui: { intent: "display" }
|
|
33582
|
-
},
|
|
33583
|
-
{
|
|
33584
|
-
id: "showVenue",
|
|
33585
|
-
type: "boolean",
|
|
33586
|
-
label: "Show venue",
|
|
33587
|
-
description: "Display venue information",
|
|
33588
|
-
required: false,
|
|
33589
|
-
defaultValue: true,
|
|
33590
|
-
ui: { intent: "display" }
|
|
33591
|
-
},
|
|
33592
|
-
{
|
|
33593
|
-
id: "successMessage",
|
|
33594
|
-
type: "text",
|
|
33595
|
-
label: "Success message",
|
|
33596
|
-
description: "Message shown after successful enrollment",
|
|
33597
|
-
required: false,
|
|
33598
|
-
multiline: true,
|
|
33599
|
-
defaultValue: "You're enrolled! Check your email for confirmation and session details.",
|
|
33600
|
-
maxLength: 500
|
|
33601
|
-
},
|
|
33602
|
-
{
|
|
33603
|
-
id: "waitlistMessage",
|
|
33604
|
-
type: "text",
|
|
33605
|
-
label: "Waitlist message",
|
|
33606
|
-
description: "Message when added to waitlist",
|
|
33607
|
-
required: false,
|
|
33608
|
-
multiline: true,
|
|
33609
|
-
defaultValue: "You've been added to the waitlist. We'll email you a claim link if a spot opens up.",
|
|
33610
|
-
maxLength: 500
|
|
33611
|
-
},
|
|
33612
|
-
{
|
|
33613
|
-
id: "membershipMessage",
|
|
33614
|
-
type: "text",
|
|
33615
|
-
label: "Membership enrollment message",
|
|
33616
|
-
description: "Message when enrolled using a membership",
|
|
33617
|
-
required: false,
|
|
33618
|
-
multiline: true,
|
|
33619
|
-
defaultValue: "Enrolled using your membership! Check your email for session details.",
|
|
33620
|
-
maxLength: 500
|
|
33621
|
-
},
|
|
33622
|
-
{
|
|
33623
|
-
id: "buttonText",
|
|
33624
|
-
type: "text",
|
|
33625
|
-
label: "Submit button text",
|
|
33626
|
-
description: "Text for the enrollment submit button",
|
|
33627
|
-
required: false,
|
|
33628
|
-
multiline: false,
|
|
33629
|
-
defaultValue: "Sign up",
|
|
33630
|
-
maxLength: 40
|
|
33631
|
-
},
|
|
33632
|
-
createButtonVariantField()
|
|
33633
|
-
],
|
|
33634
|
-
layout: [styledSection({
|
|
33635
|
-
baseClass: "",
|
|
33636
|
-
spacing: "spacious",
|
|
33637
|
-
children: sectionContainer([
|
|
33638
|
-
text({ as: "h2" }, bind("content.heading"), when("content.heading")),
|
|
33639
|
-
richText({ className: "rb-prose rb-max-w-none" }, bind("content.description"), when("content.description")),
|
|
33640
|
-
courseRegistration(withApiBindings({
|
|
33641
|
-
subject: { $bind: {
|
|
33642
|
-
from: "$root.subject",
|
|
33643
|
-
fallback: null
|
|
33644
|
-
} },
|
|
33645
|
-
portalToken: { $bind: {
|
|
33646
|
-
from: "$root.portalToken",
|
|
33647
|
-
fallback: null
|
|
33648
|
-
} },
|
|
33649
|
-
showSessions: { $bind: { from: "content.showSessions" } },
|
|
33650
|
-
showPrice: { $bind: { from: "content.showPrice" } },
|
|
33651
|
-
showCapacity: { $bind: { from: "content.showCapacity" } },
|
|
33652
|
-
showVenue: { $bind: { from: "content.showVenue" } },
|
|
33653
|
-
successMessage: { $bind: { from: "content.successMessage" } },
|
|
33654
|
-
waitlistMessage: { $bind: { from: "content.waitlistMessage" } },
|
|
33655
|
-
membershipMessage: { $bind: { from: "content.membershipMessage" } },
|
|
33656
|
-
buttonText: { $bind: {
|
|
33657
|
-
from: "content.buttonText",
|
|
33658
|
-
fallback: "Sign up"
|
|
33659
|
-
} },
|
|
33660
|
-
buttonVariant: { $bind: {
|
|
33661
|
-
from: "content.buttonVariant",
|
|
33662
|
-
fallback: "primary"
|
|
33663
|
-
} },
|
|
33664
|
-
courses: { $bind: { from: "data.courses" } },
|
|
33665
|
-
stage: { $bind: {
|
|
33666
|
-
from: "$root.previewStage",
|
|
33667
|
-
fallback: "published"
|
|
33668
|
-
} }
|
|
33669
|
-
}))
|
|
33670
|
-
], { gap: "lg" })
|
|
33671
|
-
})]
|
|
33672
|
-
}),
|
|
33673
|
-
runtime: courseRegistrationBlockRuntime,
|
|
33674
|
-
dataSchemas: { courses: publicWholeSeriesOfferingsArraySchema.optional() },
|
|
33675
|
-
dataLoaders: { courses: {
|
|
33676
|
-
endpoint: "listPublicWholeSeriesOfferings",
|
|
33677
|
-
params: {
|
|
33678
|
-
siteId: { $bind: { from: "$root.siteId" } },
|
|
33679
|
-
limit: "50",
|
|
33680
|
-
stage: { $bind: {
|
|
33681
|
-
from: "$root.previewStage",
|
|
33682
|
-
fallback: "published"
|
|
33683
|
-
} }
|
|
33684
|
-
},
|
|
33685
|
-
mode: "server"
|
|
33686
|
-
} }
|
|
33687
|
-
};
|
|
33688
|
-
//#endregion
|
|
33689
33506
|
//#region ../blocks/src/system/blocks/event-details.ts
|
|
33690
33507
|
/**
|
|
33691
33508
|
* Event Details Block
|
|
@@ -33932,200 +33749,6 @@ const eventDetailsBlockDefinition = {
|
|
|
33932
33749
|
mode: "server"
|
|
33933
33750
|
} }
|
|
33934
33751
|
};
|
|
33935
|
-
const courseDetailsBlockDefinition = {
|
|
33936
|
-
manifest: createBlockManifest({
|
|
33937
|
-
id: "block.course-details",
|
|
33938
|
-
version: "1.0.0",
|
|
33939
|
-
title: "Course Details",
|
|
33940
|
-
titleSource: "heading",
|
|
33941
|
-
description: "Schedule, venue, price, and enrollment status for a course",
|
|
33942
|
-
category: "content",
|
|
33943
|
-
contentSource: { kind: "entries" },
|
|
33944
|
-
tags: [
|
|
33945
|
-
"courses",
|
|
33946
|
-
"schedule",
|
|
33947
|
-
"sessions",
|
|
33948
|
-
"venue",
|
|
33949
|
-
"pricing"
|
|
33950
|
-
],
|
|
33951
|
-
icon: "GraduationCap",
|
|
33952
|
-
styleTokens: {
|
|
33953
|
-
background: "surface",
|
|
33954
|
-
typography: "body",
|
|
33955
|
-
spacing: "md"
|
|
33956
|
-
},
|
|
33957
|
-
behaviours: {
|
|
33958
|
-
supportsThemeSwitching: true,
|
|
33959
|
-
inlineEditing: false,
|
|
33960
|
-
animation: false,
|
|
33961
|
-
paletteHidden: false
|
|
33962
|
-
},
|
|
33963
|
-
additionalFields: [
|
|
33964
|
-
{
|
|
33965
|
-
id: "heading",
|
|
33966
|
-
type: "text",
|
|
33967
|
-
label: "Heading",
|
|
33968
|
-
description: "Optional heading shown above course details",
|
|
33969
|
-
required: false,
|
|
33970
|
-
multiline: false,
|
|
33971
|
-
defaultValue: "Course details"
|
|
33972
|
-
},
|
|
33973
|
-
{
|
|
33974
|
-
id: "showTitle",
|
|
33975
|
-
type: "boolean",
|
|
33976
|
-
label: "Show course title",
|
|
33977
|
-
required: false,
|
|
33978
|
-
defaultValue: false,
|
|
33979
|
-
ui: { intent: "display" }
|
|
33980
|
-
},
|
|
33981
|
-
{
|
|
33982
|
-
id: "showDescription",
|
|
33983
|
-
type: "boolean",
|
|
33984
|
-
label: "Show course description",
|
|
33985
|
-
description: "Render the course description from the bookings course record",
|
|
33986
|
-
required: false,
|
|
33987
|
-
defaultValue: false,
|
|
33988
|
-
ui: { intent: "display" }
|
|
33989
|
-
},
|
|
33990
|
-
{
|
|
33991
|
-
id: "showSessions",
|
|
33992
|
-
type: "boolean",
|
|
33993
|
-
label: "Show sessions",
|
|
33994
|
-
required: false,
|
|
33995
|
-
defaultValue: true,
|
|
33996
|
-
ui: { intent: "display" }
|
|
33997
|
-
},
|
|
33998
|
-
{
|
|
33999
|
-
id: "sessionsLimit",
|
|
34000
|
-
type: "select",
|
|
34001
|
-
label: "Sessions limit",
|
|
34002
|
-
required: false,
|
|
34003
|
-
multiple: false,
|
|
34004
|
-
defaultValue: "10",
|
|
34005
|
-
options: [
|
|
34006
|
-
{
|
|
34007
|
-
value: "3",
|
|
34008
|
-
label: "3 sessions"
|
|
34009
|
-
},
|
|
34010
|
-
{
|
|
34011
|
-
value: "5",
|
|
34012
|
-
label: "5 sessions"
|
|
34013
|
-
},
|
|
34014
|
-
{
|
|
34015
|
-
value: "10",
|
|
34016
|
-
label: "10 sessions"
|
|
34017
|
-
},
|
|
34018
|
-
{
|
|
34019
|
-
value: "all",
|
|
34020
|
-
label: "All sessions"
|
|
34021
|
-
}
|
|
34022
|
-
],
|
|
34023
|
-
ui: { intent: "display" }
|
|
34024
|
-
},
|
|
34025
|
-
{
|
|
34026
|
-
id: "showVenue",
|
|
34027
|
-
type: "boolean",
|
|
34028
|
-
label: "Show venue",
|
|
34029
|
-
required: false,
|
|
34030
|
-
defaultValue: true,
|
|
34031
|
-
ui: { intent: "display" }
|
|
34032
|
-
},
|
|
34033
|
-
{
|
|
34034
|
-
id: "showPrice",
|
|
34035
|
-
type: "boolean",
|
|
34036
|
-
label: "Show price",
|
|
34037
|
-
required: false,
|
|
34038
|
-
defaultValue: true,
|
|
34039
|
-
ui: { intent: "display" }
|
|
34040
|
-
},
|
|
34041
|
-
{
|
|
34042
|
-
id: "showCapacity",
|
|
34043
|
-
type: "boolean",
|
|
34044
|
-
label: "Show capacity",
|
|
34045
|
-
required: false,
|
|
34046
|
-
defaultValue: true,
|
|
34047
|
-
ui: { intent: "display" }
|
|
34048
|
-
},
|
|
34049
|
-
{
|
|
34050
|
-
id: "showEnrollmentStatus",
|
|
34051
|
-
type: "boolean",
|
|
34052
|
-
label: "Show enrollment status",
|
|
34053
|
-
required: false,
|
|
34054
|
-
defaultValue: true,
|
|
34055
|
-
ui: { intent: "display" }
|
|
34056
|
-
},
|
|
34057
|
-
{
|
|
34058
|
-
id: "showMembershipNote",
|
|
34059
|
-
type: "boolean",
|
|
34060
|
-
label: "Show membership note",
|
|
34061
|
-
description: "Indicate when memberships can be used for free enrollment",
|
|
34062
|
-
required: false,
|
|
34063
|
-
defaultValue: true,
|
|
34064
|
-
ui: { intent: "display" }
|
|
34065
|
-
}
|
|
34066
|
-
],
|
|
34067
|
-
layout: [styledSection({
|
|
34068
|
-
baseClass: "",
|
|
34069
|
-
spacing: "spacious",
|
|
34070
|
-
children: sectionContainer([text({ as: "h2" }, bind("content.heading"), when("content.heading")), el("course-details", {
|
|
34071
|
-
subject: { $bind: {
|
|
34072
|
-
from: "$root.subject",
|
|
34073
|
-
fallback: null
|
|
34074
|
-
} },
|
|
34075
|
-
courses: { $bind: { from: "data.courses" } },
|
|
34076
|
-
showTitle: { $bind: {
|
|
34077
|
-
from: "content.showTitle",
|
|
34078
|
-
fallback: false
|
|
34079
|
-
} },
|
|
34080
|
-
showDescription: { $bind: {
|
|
34081
|
-
from: "content.showDescription",
|
|
34082
|
-
fallback: false
|
|
34083
|
-
} },
|
|
34084
|
-
showSessions: { $bind: {
|
|
34085
|
-
from: "content.showSessions",
|
|
34086
|
-
fallback: true
|
|
34087
|
-
} },
|
|
34088
|
-
sessionsLimit: { $bind: {
|
|
34089
|
-
from: "content.sessionsLimit",
|
|
34090
|
-
fallback: "10"
|
|
34091
|
-
} },
|
|
34092
|
-
showVenue: { $bind: {
|
|
34093
|
-
from: "content.showVenue",
|
|
34094
|
-
fallback: true
|
|
34095
|
-
} },
|
|
34096
|
-
showPrice: { $bind: {
|
|
34097
|
-
from: "content.showPrice",
|
|
34098
|
-
fallback: true
|
|
34099
|
-
} },
|
|
34100
|
-
showCapacity: { $bind: {
|
|
34101
|
-
from: "content.showCapacity",
|
|
34102
|
-
fallback: true
|
|
34103
|
-
} },
|
|
34104
|
-
showEnrollmentStatus: { $bind: {
|
|
34105
|
-
from: "content.showEnrollmentStatus",
|
|
34106
|
-
fallback: true
|
|
34107
|
-
} },
|
|
34108
|
-
showMembershipNote: { $bind: {
|
|
34109
|
-
from: "content.showMembershipNote",
|
|
34110
|
-
fallback: true
|
|
34111
|
-
} }
|
|
34112
|
-
})], { gap: "lg" })
|
|
34113
|
-
})]
|
|
34114
|
-
}),
|
|
34115
|
-
dataSchemas: { courses: publicWholeSeriesOfferingsArraySchema.optional() },
|
|
34116
|
-
dataLoaders: { courses: {
|
|
34117
|
-
endpoint: "listPublicWholeSeriesOfferings",
|
|
34118
|
-
params: {
|
|
34119
|
-
siteId: { $bind: { from: "$root.siteId" } },
|
|
34120
|
-
limit: "50",
|
|
34121
|
-
stage: { $bind: {
|
|
34122
|
-
from: "$root.previewStage",
|
|
34123
|
-
fallback: "published"
|
|
34124
|
-
} }
|
|
34125
|
-
},
|
|
34126
|
-
mode: "server"
|
|
34127
|
-
} }
|
|
34128
|
-
};
|
|
34129
33752
|
const eventSpotlightBlockDefinition = {
|
|
34130
33753
|
manifest: createBlockManifest({
|
|
34131
33754
|
id: "block.event-spotlight",
|
|
@@ -36680,7 +36303,7 @@ const EmptyState = ({ message = "No upcoming events scheduled.", className, hasA
|
|
|
36680
36303
|
//#region ../blocks/src/system/runtime/nodes/events/shared/DateTimeTile.tsx
|
|
36681
36304
|
/**
|
|
36682
36305
|
* Shared tile content for displaying date and time range.
|
|
36683
|
-
* Used by event-details "Other dates"
|
|
36306
|
+
* Used by event-details "Other dates".
|
|
36684
36307
|
*/
|
|
36685
36308
|
function DateTimeTile({ startsAt, endsAt, timeZone }) {
|
|
36686
36309
|
const { date, timeRange } = formatEventDateParts({
|
|
@@ -39209,7 +38832,7 @@ const offeringsPreviewManifest = createBlockManifest({
|
|
|
39209
38832
|
fallback: "published"
|
|
39210
38833
|
} },
|
|
39211
38834
|
routeCandidates: { $bind: { from: "data.routeCandidates" } },
|
|
39212
|
-
|
|
38835
|
+
wholeSeriesOfferings: { $bind: { from: "data.wholeSeriesOfferings" } },
|
|
39213
38836
|
...offeringsPreviewEventDataBindings
|
|
39214
38837
|
})
|
|
39215
38838
|
], { gap: "lg" }),
|
|
@@ -39226,7 +38849,7 @@ const offeringsPreviewBlockDefinition = {
|
|
|
39226
38849
|
dataSchemas: {
|
|
39227
38850
|
...offeringsPreviewEventDataSchemas,
|
|
39228
38851
|
routeCandidates: publicRouteCandidatesSchema.optional(),
|
|
39229
|
-
|
|
38852
|
+
wholeSeriesOfferings: publicWholeSeriesOfferingsArraySchema.optional()
|
|
39230
38853
|
},
|
|
39231
38854
|
dataLoaders: {
|
|
39232
38855
|
...offeringsPreviewEventDataLoaders,
|
|
@@ -39235,7 +38858,7 @@ const offeringsPreviewBlockDefinition = {
|
|
|
39235
38858
|
params: {},
|
|
39236
38859
|
mode: "server"
|
|
39237
38860
|
},
|
|
39238
|
-
|
|
38861
|
+
wholeSeriesOfferings: {
|
|
39239
38862
|
endpoint: "listPublicWholeSeriesOfferings",
|
|
39240
38863
|
params: {
|
|
39241
38864
|
siteId: { $bind: { from: "$root.siteId" } },
|
|
@@ -44317,22 +43940,6 @@ const systemBlockDefinitions = [
|
|
|
44317
43940
|
weight: "standard"
|
|
44318
43941
|
})]
|
|
44319
43942
|
})),
|
|
44320
|
-
withDesignCapability("block.course-registration", courseRegistrationBlockDefinition, sectionOnly(), defineBlockDesignMetadata({
|
|
44321
|
-
flow: conversionFlow,
|
|
44322
|
-
layoutProfiles: [layoutProfile({
|
|
44323
|
-
variantKey: "default",
|
|
44324
|
-
family: "form",
|
|
44325
|
-
weight: "standard"
|
|
44326
|
-
})]
|
|
44327
|
-
})),
|
|
44328
|
-
withDesignCapability("block.course-details", courseDetailsBlockDefinition, scheduleDetailsCapable(), defineBlockDesignMetadata({
|
|
44329
|
-
flow: offeringsFlow,
|
|
44330
|
-
layoutProfiles: [layoutProfile({
|
|
44331
|
-
variantKey: "default",
|
|
44332
|
-
family: "stack",
|
|
44333
|
-
weight: "standard"
|
|
44334
|
-
})]
|
|
44335
|
-
})),
|
|
44336
43943
|
withDesignCapability("block.event-spotlight", eventSpotlightBlockDefinition, eventSpotlightCapable(), defineBlockDesignMetadata({
|
|
44337
43944
|
flow: offeringsFlow,
|
|
44338
43945
|
layoutProfiles: [layoutProfile({
|
|
@@ -47095,7 +46702,7 @@ function emptySelection(timeZone) {
|
|
|
47095
46702
|
timeZone
|
|
47096
46703
|
};
|
|
47097
46704
|
}
|
|
47098
|
-
function parseLimit
|
|
46705
|
+
function parseLimit(value, fallback) {
|
|
47099
46706
|
if (value === "all") return Number.MAX_SAFE_INTEGER;
|
|
47100
46707
|
const n = typeof value === "string" ? parseInt(value, 10) : typeof value === "number" ? value : NaN;
|
|
47101
46708
|
return Number.isFinite(n) && n > 0 ? n : fallback;
|
|
@@ -47178,7 +46785,7 @@ function selectEventDetails(args) {
|
|
|
47178
46785
|
subject: args.subject
|
|
47179
46786
|
}));
|
|
47180
46787
|
const occurrenceContext = args.occurrenceContext ?? null;
|
|
47181
|
-
const otherLimit = parseLimit
|
|
46788
|
+
const otherLimit = parseLimit(args.otherDatesLimit, 5);
|
|
47182
46789
|
const candidate = selectEventCandidate(all, occurrenceContext, args.nowIso);
|
|
47183
46790
|
const timeZone = toBookingTimeZone(candidate?.event.timeZone ?? all[0]?.timeZone ?? null);
|
|
47184
46791
|
if (!candidate) return emptySelection(timeZone);
|
|
@@ -47254,8 +46861,8 @@ function resolveEventDetailsPresentation(input) {
|
|
|
47254
46861
|
};
|
|
47255
46862
|
}
|
|
47256
46863
|
//#endregion
|
|
47257
|
-
//#region ../blocks/src/system/runtime/nodes/event-details/
|
|
47258
|
-
function
|
|
46864
|
+
//#region ../blocks/src/system/runtime/nodes/event-details/WholeSeriesPricingDisplay.tsx
|
|
46865
|
+
function WholeSeriesPricingDisplay({ pricing, acceptedItems }) {
|
|
47259
46866
|
return /* @__PURE__ */ jsxs("div", {
|
|
47260
46867
|
className: "rb-mt-6",
|
|
47261
46868
|
children: [
|
|
@@ -47267,7 +46874,8 @@ function CoursePricingDisplay({ pricing, acceptedItems }) {
|
|
|
47267
46874
|
className: "rb-flex rb-flex-col rb-gap-2",
|
|
47268
46875
|
children: pricing.selectableOptions.map((option) => /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsxs("strong", { children: [
|
|
47269
46876
|
option.name,
|
|
47270
|
-
":
|
|
46877
|
+
":",
|
|
46878
|
+
" ",
|
|
47271
46879
|
formatWholeSeriesPriceAmount(option.priceAmount, pricing.currency)
|
|
47272
46880
|
] }), option.description ? /* @__PURE__ */ jsx("p", {
|
|
47273
46881
|
className: "rb-caption status-muted",
|
|
@@ -47288,7 +46896,7 @@ function formatAutoApplyDiscountLine(preview, currency) {
|
|
|
47288
46896
|
const label = preview.publicLabel.trim() || "Discount";
|
|
47289
46897
|
return preview.minTicketsRequired && preview.minTicketsRequired > 1 ? `${label} — ${rate} when buying ${preview.minTicketsRequired}+ tickets` : `${label} — ${rate} applied automatically`;
|
|
47290
46898
|
}
|
|
47291
|
-
function TeamMemberName
|
|
46899
|
+
function TeamMemberName({ name, profilePath }) {
|
|
47292
46900
|
return profilePath ? /* @__PURE__ */ jsx("a", {
|
|
47293
46901
|
href: profilePath,
|
|
47294
46902
|
className: "rb-hover-opacity-80",
|
|
@@ -47325,7 +46933,7 @@ function EventPricingDetails({ isDropIn, coursePricing, acceptedItems, eventCost
|
|
|
47325
46933
|
children: "No registration required - just show up"
|
|
47326
46934
|
})]
|
|
47327
46935
|
});
|
|
47328
|
-
if (coursePricing) return /* @__PURE__ */ jsx(
|
|
46936
|
+
if (coursePricing) return /* @__PURE__ */ jsx(WholeSeriesPricingDisplay, {
|
|
47329
46937
|
pricing: coursePricing,
|
|
47330
46938
|
acceptedItems: [...acceptedItems]
|
|
47331
46939
|
});
|
|
@@ -47400,7 +47008,7 @@ function EventFacts({ selection, selected, venue, teamMembers, pricing, showCapa
|
|
|
47400
47008
|
children: "With"
|
|
47401
47009
|
}), /* @__PURE__ */ jsx("div", {
|
|
47402
47010
|
className: "rb-flex rb-flex-col rb-gap-3",
|
|
47403
|
-
children: teamMembers.map((member) => /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx(TeamMemberName
|
|
47011
|
+
children: teamMembers.map((member) => /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx(TeamMemberName, {
|
|
47404
47012
|
name: member.name,
|
|
47405
47013
|
profilePath: member.profilePath
|
|
47406
47014
|
}) }), member.summary ? /* @__PURE__ */ jsx("p", {
|
|
@@ -47679,352 +47287,6 @@ function LocationMapSSR(props) {
|
|
|
47679
47287
|
});
|
|
47680
47288
|
}
|
|
47681
47289
|
//#endregion
|
|
47682
|
-
//#region ../blocks/src/system/runtime/nodes/event-registration/whole-series/wholeSeriesPageSurfaceScope.ts
|
|
47683
|
-
/**
|
|
47684
|
-
* Resolves native run-page ownership without falling back to entry or slug
|
|
47685
|
-
* coincidence when a page-surface subject is present but invalid.
|
|
47686
|
-
*/
|
|
47687
|
-
function resolveWholeSeriesPageSurfaceScope(runs, subjectValue) {
|
|
47688
|
-
if (subjectValue === null || subjectValue === void 0) return { kind: "absent" };
|
|
47689
|
-
const parsed = parseEventPageSurfaceSubject(subjectValue);
|
|
47690
|
-
if (!parsed.ok) return {
|
|
47691
|
-
kind: "unsupported",
|
|
47692
|
-
reason: parsed.error.kind
|
|
47693
|
-
};
|
|
47694
|
-
const seriesIds = eventSeriesIdsForSubject(parsed.value);
|
|
47695
|
-
const allowedSeriesIds = new Set(seriesIds);
|
|
47696
|
-
return {
|
|
47697
|
-
kind: "scoped",
|
|
47698
|
-
subject: parsed.value,
|
|
47699
|
-
runs: runs.filter((run) => allowedSeriesIds.has(run.eventSeriesId))
|
|
47700
|
-
};
|
|
47701
|
-
}
|
|
47702
|
-
function eventSeriesIdsForSubject(subject) {
|
|
47703
|
-
switch (subject.kind) {
|
|
47704
|
-
case "eventSeries": return [subject.eventSeriesId];
|
|
47705
|
-
case "eventOffering": return subject.availableEventSeriesIds;
|
|
47706
|
-
default: return assertNever$23(subject);
|
|
47707
|
-
}
|
|
47708
|
-
}
|
|
47709
|
-
//#endregion
|
|
47710
|
-
//#region ../blocks/src/system/runtime/nodes/course-page-surface-scope.ts
|
|
47711
|
-
/** Temporary Course-block adapter over canonical Event run scoping. */
|
|
47712
|
-
function resolveCoursePageSurfaceScope(courses, subjectValue) {
|
|
47713
|
-
const scope = resolveWholeSeriesPageSurfaceScope(courses, subjectValue);
|
|
47714
|
-
return scope.kind === "scoped" ? {
|
|
47715
|
-
kind: "scoped",
|
|
47716
|
-
subject: scope.subject,
|
|
47717
|
-
courses: scope.runs
|
|
47718
|
-
} : scope;
|
|
47719
|
-
}
|
|
47720
|
-
//#endregion
|
|
47721
|
-
//#region ../blocks/src/system/runtime/nodes/course-details/logic.ts
|
|
47722
|
-
function selectCourseDetails(args) {
|
|
47723
|
-
const pageSurfaceScope = resolveCoursePageSurfaceScope((args.courses ?? []).filter(Boolean), args.subject);
|
|
47724
|
-
if (pageSurfaceScope.kind === "unsupported") return {
|
|
47725
|
-
mode: "unsupportedPageSurfaceSubject",
|
|
47726
|
-
selected: null,
|
|
47727
|
-
scoped: []
|
|
47728
|
-
};
|
|
47729
|
-
if (pageSurfaceScope.kind === "scoped") {
|
|
47730
|
-
const scoped = [...pageSurfaceScope.courses];
|
|
47731
|
-
return {
|
|
47732
|
-
mode: "pageSurfaceSubject",
|
|
47733
|
-
selected: scoped.length === 1 ? scoped[0] ?? null : null,
|
|
47734
|
-
scoped
|
|
47735
|
-
};
|
|
47736
|
-
}
|
|
47737
|
-
return {
|
|
47738
|
-
mode: "unsupportedPageSurfaceSubject",
|
|
47739
|
-
selected: null,
|
|
47740
|
-
scoped: []
|
|
47741
|
-
};
|
|
47742
|
-
}
|
|
47743
|
-
//#endregion
|
|
47744
|
-
//#region ../blocks/src/system/runtime/nodes/course-details/runs.ts
|
|
47745
|
-
function toValidDate(value) {
|
|
47746
|
-
if (!value) return null;
|
|
47747
|
-
const date = new Date(value);
|
|
47748
|
-
return Number.isNaN(date.getTime()) ? null : date;
|
|
47749
|
-
}
|
|
47750
|
-
function getCourseDateRange(course) {
|
|
47751
|
-
const datedSessions = (course.sessions ?? []).map((session) => ({
|
|
47752
|
-
session,
|
|
47753
|
-
start: toValidDate(session.startsAt),
|
|
47754
|
-
end: toValidDate(session.endsAt)
|
|
47755
|
-
})).filter((value) => value.start !== null || value.end !== null);
|
|
47756
|
-
if (datedSessions.length === 0) return {
|
|
47757
|
-
start: null,
|
|
47758
|
-
end: null,
|
|
47759
|
-
startIso: null,
|
|
47760
|
-
endIso: null,
|
|
47761
|
-
timeZone: null
|
|
47762
|
-
};
|
|
47763
|
-
const startSession = datedSessions.filter((value) => value.start !== null).reduce((earliest, current) => earliest === null || current.start.getTime() < earliest.start.getTime() ? current : earliest, null);
|
|
47764
|
-
const endSession = datedSessions.filter((value) => value.end !== null).reduce((latest, current) => latest === null || current.end.getTime() > latest.end.getTime() ? current : latest, null);
|
|
47765
|
-
return {
|
|
47766
|
-
start: startSession?.start ?? null,
|
|
47767
|
-
end: endSession?.end ?? null,
|
|
47768
|
-
startIso: startSession?.session.startsAt ?? null,
|
|
47769
|
-
endIso: endSession?.session.endsAt ?? null,
|
|
47770
|
-
timeZone: startSession?.session.timeZone ?? endSession?.session.timeZone ?? null
|
|
47771
|
-
};
|
|
47772
|
-
}
|
|
47773
|
-
function formatCourseDateRange(range) {
|
|
47774
|
-
const { startIso, endIso, timeZone } = range;
|
|
47775
|
-
const dateFormat = {
|
|
47776
|
-
month: "numeric",
|
|
47777
|
-
day: "numeric",
|
|
47778
|
-
year: "numeric"
|
|
47779
|
-
};
|
|
47780
|
-
const effectiveTimeZone = toBookingTimeZone(timeZone);
|
|
47781
|
-
const formatSingleDate = (iso) => formatBookingDate(toScheduledBookingDateTime({
|
|
47782
|
-
startsAt: iso,
|
|
47783
|
-
timeZone: effectiveTimeZone
|
|
47784
|
-
}), dateFormat);
|
|
47785
|
-
const formatRangeDateOnly = (startsAt, endsAt) => {
|
|
47786
|
-
const startText = formatSingleDate(startsAt);
|
|
47787
|
-
const endText = formatSingleDate(endsAt);
|
|
47788
|
-
return startText === endText ? startText : `${startText} – ${endText}`;
|
|
47789
|
-
};
|
|
47790
|
-
if (!startIso && !endIso) return "Dates TBD";
|
|
47791
|
-
if (startIso && !endIso) return formatSingleDate(startIso);
|
|
47792
|
-
if (!startIso && endIso) return formatSingleDate(endIso);
|
|
47793
|
-
if (!startIso || !endIso) return "Dates TBD";
|
|
47794
|
-
return formatRangeDateOnly(startIso, endIso);
|
|
47795
|
-
}
|
|
47796
|
-
//#endregion
|
|
47797
|
-
//#region ../blocks/src/system/runtime/nodes/course-details/view.tsx
|
|
47798
|
-
function TeamMemberName({ name, profilePath }) {
|
|
47799
|
-
return profilePath ? /* @__PURE__ */ jsx("a", {
|
|
47800
|
-
href: profilePath,
|
|
47801
|
-
className: "rb-hover-opacity-80",
|
|
47802
|
-
children: /* @__PURE__ */ jsx("strong", { children: name })
|
|
47803
|
-
}) : /* @__PURE__ */ jsx("strong", { children: name });
|
|
47804
|
-
}
|
|
47805
|
-
function parseLimit(value, fallback) {
|
|
47806
|
-
if (value === "all") return "all";
|
|
47807
|
-
const n = typeof value === "string" ? Number.parseInt(value, 10) : typeof value === "number" ? value : NaN;
|
|
47808
|
-
return Number.isFinite(n) && n > 0 ? n : fallback;
|
|
47809
|
-
}
|
|
47810
|
-
function CourseDetailsView(props) {
|
|
47811
|
-
const { course, showTitle = false, showDescription = false, showSessions = true, sessionsLimit, showVenue = true, showPrice = true, showCapacity = true, showEnrollmentStatus = true, showMembershipNote = true, emptyMessage = "Course details unavailable." } = props;
|
|
47812
|
-
if (!course) return /* @__PURE__ */ jsx("p", {
|
|
47813
|
-
className: "rb-caption status-muted",
|
|
47814
|
-
children: emptyMessage
|
|
47815
|
-
});
|
|
47816
|
-
const pricing = resolveWholeSeriesPricingState(course);
|
|
47817
|
-
const sessionLimit = parseLimit(sessionsLimit, 10);
|
|
47818
|
-
const sortedSessions = [...course.sessions ?? []].sort((a, b) => Date.parse(a.startsAt) - Date.parse(b.startsAt));
|
|
47819
|
-
const visibleSessions = sessionLimit === "all" ? sortedSessions : sortedSessions.slice(0, sessionLimit);
|
|
47820
|
-
const hasMoreSessions = sessionLimit !== "all" && sortedSessions.length > sessionLimit;
|
|
47821
|
-
const descriptionDoc = showDescription ? coerceRichTextDoc(course.description, "block-runtime:course-details:description") : null;
|
|
47822
|
-
const teamMembers = course.teamMembers ?? [];
|
|
47823
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
47824
|
-
className: "rb-flex rb-flex-col rb-gap-6",
|
|
47825
|
-
children: [
|
|
47826
|
-
showTitle && /* @__PURE__ */ jsx("h3", { children: course.title }),
|
|
47827
|
-
/* @__PURE__ */ jsxs("div", {
|
|
47828
|
-
className: "rb-grid rb-grid-cols-1 rb-gap-6 rb-items-start rb-sm-grid-cols-2",
|
|
47829
|
-
children: [/* @__PURE__ */ jsxs("div", {
|
|
47830
|
-
className: "rb-flex rb-flex-col rb-gap-4",
|
|
47831
|
-
children: [
|
|
47832
|
-
showPrice && /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
47833
|
-
className: "rb-label rb-mb-2",
|
|
47834
|
-
children: pricing.selectableOptions.length > 0 ? "Pricing" : "Price"
|
|
47835
|
-
}), pricing.selectableOptions.length > 1 ? /* @__PURE__ */ jsx("div", {
|
|
47836
|
-
className: "rb-flex rb-flex-col rb-gap-2",
|
|
47837
|
-
children: pricing.selectableOptions.map((option) => /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsxs("strong", { children: [
|
|
47838
|
-
option.name,
|
|
47839
|
-
": ",
|
|
47840
|
-
formatWholeSeriesPriceAmount(option.priceAmount, pricing.currency)
|
|
47841
|
-
] }), option.description ? /* @__PURE__ */ jsx("p", {
|
|
47842
|
-
className: "rb-caption status-muted",
|
|
47843
|
-
children: option.description
|
|
47844
|
-
}) : null] }, option.id))
|
|
47845
|
-
}) : /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("strong", { children: formatWholeSeriesPriceDisplay(pricing.display) }) })] }),
|
|
47846
|
-
showCapacity && /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
47847
|
-
className: "rb-label rb-mb-2",
|
|
47848
|
-
children: "Spots"
|
|
47849
|
-
}), /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("strong", { children: course.enrollmentCapacity === null ? "Unlimited" : `${course.availableSpots ?? Math.max(0, course.enrollmentCapacity - course.enrolledCount)} left` }) })] }),
|
|
47850
|
-
showMembershipNote && course.acceptsMemberships && /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
47851
|
-
className: "rb-label rb-mb-2",
|
|
47852
|
-
children: "Membership"
|
|
47853
|
-
}), /* @__PURE__ */ jsx("p", {
|
|
47854
|
-
className: "rb-caption status-muted",
|
|
47855
|
-
children: "Eligible memberships can be used for free enrollment"
|
|
47856
|
-
})] }),
|
|
47857
|
-
teamMembers.length > 0 && /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
47858
|
-
className: "rb-label rb-mb-2",
|
|
47859
|
-
children: "With"
|
|
47860
|
-
}), /* @__PURE__ */ jsx("div", {
|
|
47861
|
-
className: "rb-flex rb-flex-col rb-gap-3",
|
|
47862
|
-
children: teamMembers.map((teamMember) => /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx(TeamMemberName, {
|
|
47863
|
-
name: teamMember.name,
|
|
47864
|
-
profilePath: teamMember.profilePath
|
|
47865
|
-
}) }), teamMember.summary && /* @__PURE__ */ jsx("p", {
|
|
47866
|
-
className: "rb-caption status-muted",
|
|
47867
|
-
children: teamMember.summary
|
|
47868
|
-
})] }, teamMember.id))
|
|
47869
|
-
})] })
|
|
47870
|
-
]
|
|
47871
|
-
}), /* @__PURE__ */ jsxs("div", {
|
|
47872
|
-
className: "rb-flex rb-flex-col rb-gap-4",
|
|
47873
|
-
children: [showVenue && course.venue && /* @__PURE__ */ jsxs("div", { children: [
|
|
47874
|
-
/* @__PURE__ */ jsx("div", {
|
|
47875
|
-
className: "rb-label rb-mb-2",
|
|
47876
|
-
children: "Venue"
|
|
47877
|
-
}),
|
|
47878
|
-
/* @__PURE__ */ jsx("h3", { children: course.venue.name }),
|
|
47879
|
-
course.venue.address && /* @__PURE__ */ jsx("p", {
|
|
47880
|
-
className: "rb-caption status-muted",
|
|
47881
|
-
children: course.venue.address
|
|
47882
|
-
})
|
|
47883
|
-
] }), showEnrollmentStatus && /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
47884
|
-
className: "rb-label rb-mb-2",
|
|
47885
|
-
children: "Enrollment"
|
|
47886
|
-
}), /* @__PURE__ */ jsx("p", {
|
|
47887
|
-
className: course.enrollmentOpen ? "cd-enrollment--open" : "cd-enrollment--closed",
|
|
47888
|
-
children: /* @__PURE__ */ jsx("strong", { children: course.enrollmentOpen ? "Open" : "Closed" })
|
|
47889
|
-
})] })]
|
|
47890
|
-
})]
|
|
47891
|
-
}),
|
|
47892
|
-
descriptionDoc && /* @__PURE__ */ jsx("div", {
|
|
47893
|
-
className: "cd-description",
|
|
47894
|
-
children: /* @__PURE__ */ jsx(RichText$2, { doc: descriptionDoc })
|
|
47895
|
-
}),
|
|
47896
|
-
showSessions && visibleSessions.length > 0 && /* @__PURE__ */ jsxs("div", { children: [
|
|
47897
|
-
/* @__PURE__ */ jsx("div", {
|
|
47898
|
-
className: "rb-label",
|
|
47899
|
-
children: "Sessions"
|
|
47900
|
-
}),
|
|
47901
|
-
/* @__PURE__ */ jsx("div", {
|
|
47902
|
-
className: "rb-mt-2 rb-tiles-grid",
|
|
47903
|
-
children: visibleSessions.map((s) => /* @__PURE__ */ jsx("div", {
|
|
47904
|
-
className: "rb-tile",
|
|
47905
|
-
children: /* @__PURE__ */ jsx(DateTimeTile, {
|
|
47906
|
-
startsAt: s.startsAt,
|
|
47907
|
-
endsAt: s.endsAt
|
|
47908
|
-
})
|
|
47909
|
-
}, s.id))
|
|
47910
|
-
}),
|
|
47911
|
-
hasMoreSessions && /* @__PURE__ */ jsxs("p", {
|
|
47912
|
-
className: "cd-sessions__more",
|
|
47913
|
-
children: [
|
|
47914
|
-
"Showing ",
|
|
47915
|
-
visibleSessions.length,
|
|
47916
|
-
" of ",
|
|
47917
|
-
sortedSessions.length,
|
|
47918
|
-
" sessions."
|
|
47919
|
-
]
|
|
47920
|
-
})
|
|
47921
|
-
] })
|
|
47922
|
-
]
|
|
47923
|
-
});
|
|
47924
|
-
}
|
|
47925
|
-
//#endregion
|
|
47926
|
-
//#region ../blocks/src/system/runtime/nodes/course-details.server.tsx
|
|
47927
|
-
function CourseDetailsSSR({ courses, subject, showTitle, showDescription, showSessions, sessionsLimit, showVenue, showPrice, showCapacity, showEnrollmentStatus, showMembershipNote, className, children }) {
|
|
47928
|
-
const selection = selectCourseDetails({
|
|
47929
|
-
courses: courses ?? null,
|
|
47930
|
-
subject
|
|
47931
|
-
});
|
|
47932
|
-
const parsedSubject = parseEventPageSurfaceSubject(subject);
|
|
47933
|
-
const awaitingOfferingRuns = parsedSubject.ok && parsedSubject.value.kind === "eventOffering" && parsedSubject.value.availableEventSeriesIds.length === 0;
|
|
47934
|
-
const now = /* @__PURE__ */ new Date();
|
|
47935
|
-
const scopedWithRange = selection.scoped.map((c) => ({
|
|
47936
|
-
course: c,
|
|
47937
|
-
range: getCourseDateRange(c)
|
|
47938
|
-
}));
|
|
47939
|
-
const scopedSorted = [...scopedWithRange].sort((a, b) => {
|
|
47940
|
-
return (a.range.start?.getTime() ?? 0) - (b.range.start?.getTime() ?? 0);
|
|
47941
|
-
});
|
|
47942
|
-
const lastPastRun = scopedWithRange.filter(({ range }) => Boolean(range.end && range.end <= now)).sort((a, b) => (b.range.end?.getTime() ?? 0) - (a.range.end?.getTime() ?? 0))[0] ?? null;
|
|
47943
|
-
const nonPastRuns = scopedSorted.filter(({ range }) => !(range.end && range.end <= now));
|
|
47944
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
47945
|
-
className: `course-details ${className ?? ""}`.trim(),
|
|
47946
|
-
"data-block": "course-details",
|
|
47947
|
-
children: [selection.selected ? /* @__PURE__ */ jsx(CourseDetailsView, {
|
|
47948
|
-
course: selection.selected,
|
|
47949
|
-
showTitle,
|
|
47950
|
-
showDescription,
|
|
47951
|
-
showSessions,
|
|
47952
|
-
sessionsLimit,
|
|
47953
|
-
showVenue,
|
|
47954
|
-
showPrice,
|
|
47955
|
-
showCapacity,
|
|
47956
|
-
showEnrollmentStatus,
|
|
47957
|
-
showMembershipNote
|
|
47958
|
-
}) : selection.scoped.length > 0 ? /* @__PURE__ */ jsxs("div", {
|
|
47959
|
-
className: "rb-flex rb-flex-col rb-gap-3",
|
|
47960
|
-
children: [
|
|
47961
|
-
/* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
47962
|
-
className: "rb-label rb-mb-2",
|
|
47963
|
-
children: "Upcoming runs"
|
|
47964
|
-
}), /* @__PURE__ */ jsx("p", {
|
|
47965
|
-
className: "rb-caption status-muted",
|
|
47966
|
-
children: "Choose a run to see sessions and details."
|
|
47967
|
-
})] }),
|
|
47968
|
-
nonPastRuns.length > 0 ? /* @__PURE__ */ jsx("ul", {
|
|
47969
|
-
className: "rb-flex rb-flex-col rb-gap-2",
|
|
47970
|
-
children: nonPastRuns.map(({ course, range }) => {
|
|
47971
|
-
const start = range.start;
|
|
47972
|
-
const end = range.end;
|
|
47973
|
-
const isInProgress = Boolean(start && end && start <= now && end > now);
|
|
47974
|
-
return /* @__PURE__ */ jsx("li", {
|
|
47975
|
-
className: "rb-rounded-md rb-border rb-p-3",
|
|
47976
|
-
children: /* @__PURE__ */ jsx("div", {
|
|
47977
|
-
className: "rb-flex rb-flex-col rb-gap-1",
|
|
47978
|
-
children: /* @__PURE__ */ jsxs("div", {
|
|
47979
|
-
className: "rb-flex rb-items-center rb-justify-between rb-gap-3",
|
|
47980
|
-
children: [/* @__PURE__ */ jsxs("div", {
|
|
47981
|
-
className: "rb-min-w-0",
|
|
47982
|
-
children: [/* @__PURE__ */ jsx("div", {
|
|
47983
|
-
className: "rb-truncate",
|
|
47984
|
-
children: /* @__PURE__ */ jsx("strong", { children: course.title })
|
|
47985
|
-
}), /* @__PURE__ */ jsx("div", {
|
|
47986
|
-
className: "rb-caption status-muted",
|
|
47987
|
-
children: formatCourseDateRange(range)
|
|
47988
|
-
})]
|
|
47989
|
-
}), /* @__PURE__ */ jsx("div", {
|
|
47990
|
-
className: "rb-caption status-muted rb-shrink-0",
|
|
47991
|
-
children: course.enrollmentOpen ? "Enrollment open" : isInProgress ? "Currently in progress" : "Enrollment closed"
|
|
47992
|
-
})]
|
|
47993
|
-
})
|
|
47994
|
-
})
|
|
47995
|
-
}, course.eventSeriesId);
|
|
47996
|
-
})
|
|
47997
|
-
}) : /* @__PURE__ */ jsx("p", {
|
|
47998
|
-
className: "rb-caption status-muted",
|
|
47999
|
-
children: "No upcoming runs."
|
|
48000
|
-
}),
|
|
48001
|
-
lastPastRun ? /* @__PURE__ */ jsxs("div", {
|
|
48002
|
-
className: "rb-caption status-muted",
|
|
48003
|
-
children: [
|
|
48004
|
-
"Last run: ",
|
|
48005
|
-
/* @__PURE__ */ jsx("strong", { children: lastPastRun.course.title }),
|
|
48006
|
-
" (",
|
|
48007
|
-
formatCourseDateRange(lastPastRun.range),
|
|
48008
|
-
")"
|
|
48009
|
-
]
|
|
48010
|
-
}) : null
|
|
48011
|
-
]
|
|
48012
|
-
}) : /* @__PURE__ */ jsx(CourseDetailsView, {
|
|
48013
|
-
course: null,
|
|
48014
|
-
emptyMessage: awaitingOfferingRuns ? "New dates are coming soon." : "Course details unavailable.",
|
|
48015
|
-
showTitle,
|
|
48016
|
-
showDescription,
|
|
48017
|
-
showSessions,
|
|
48018
|
-
sessionsLimit,
|
|
48019
|
-
showVenue,
|
|
48020
|
-
showPrice,
|
|
48021
|
-
showCapacity,
|
|
48022
|
-
showEnrollmentStatus,
|
|
48023
|
-
showMembershipNote
|
|
48024
|
-
}), children]
|
|
48025
|
-
});
|
|
48026
|
-
}
|
|
48027
|
-
//#endregion
|
|
48028
47290
|
//#region ../blocks/src/system/runtime/nodes/events/EventSpotlight.tsx
|
|
48029
47291
|
/**
|
|
48030
47292
|
* EventSpotlight Component
|
|
@@ -48228,7 +47490,7 @@ function deriveCourseScheduleSummary(course) {
|
|
|
48228
47490
|
sessionCount: sessions.length
|
|
48229
47491
|
};
|
|
48230
47492
|
}
|
|
48231
|
-
function
|
|
47493
|
+
function nextWholeSeriesSessionStart(course) {
|
|
48232
47494
|
return [...course.sessions].filter(isValidOccurrence).map((session) => session.startsAt).sort((left, right) => left.localeCompare(right))[0] ?? null;
|
|
48233
47495
|
}
|
|
48234
47496
|
function occurrenceFromEvent(event) {
|
|
@@ -48382,7 +47644,7 @@ const OFFERINGS_PREVIEW_GRID_STYLE = {
|
|
|
48382
47644
|
function buildItemDataMap(props) {
|
|
48383
47645
|
const routeCandidates = props.routeCandidates?.routes ?? [];
|
|
48384
47646
|
const entries = OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => [definition.sourceKey, eventDataFromMaybeArray(props[definition.dataKey])]);
|
|
48385
|
-
return new Map([...entries, ["course", courseDataFromMaybeArray(props.
|
|
47647
|
+
return new Map([...entries, ["course", courseDataFromMaybeArray(props.wholeSeriesOfferings, routeCandidates)]]);
|
|
48386
47648
|
}
|
|
48387
47649
|
function eventDataFromMaybeArray(events) {
|
|
48388
47650
|
return events ? {
|
|
@@ -48436,8 +47698,8 @@ function renderOfferingGroupItems(presentation, items, options) {
|
|
|
48436
47698
|
}
|
|
48437
47699
|
}
|
|
48438
47700
|
function compareCoursesByNextSession(left, right) {
|
|
48439
|
-
const leftStart =
|
|
48440
|
-
const rightStart =
|
|
47701
|
+
const leftStart = nextWholeSeriesSessionStart(left);
|
|
47702
|
+
const rightStart = nextWholeSeriesSessionStart(right);
|
|
48441
47703
|
if (leftStart === null) return rightStart === null ? 0 : 1;
|
|
48442
47704
|
if (rightStart === null) return -1;
|
|
48443
47705
|
return leftStart.localeCompare(rightStart);
|
|
@@ -49376,45 +48638,6 @@ function CheckoutSSR({ blockId, siteId, apiBaseUrl, stage, children, ...rest })
|
|
|
49376
48638
|
});
|
|
49377
48639
|
}
|
|
49378
48640
|
//#endregion
|
|
49379
|
-
//#region ../blocks/src/system/runtime/nodes/course-registration.server.tsx
|
|
49380
|
-
/**
|
|
49381
|
-
* Server-safe placeholder for course registration.
|
|
49382
|
-
* Provides a static container for island hydration without importing client hooks.
|
|
49383
|
-
*/
|
|
49384
|
-
function CourseRegistrationSSR({ blockId, siteId, apiBaseUrl, portalToken, subject, courses, className, showSessions, showPrice, showCapacity, showVenue, successMessage, waitlistMessage, membershipMessage, buttonText, buttonVariant, stage, children }) {
|
|
49385
|
-
const islandProps = buildCourseRegistrationInteractiveIslandProps({
|
|
49386
|
-
siteId,
|
|
49387
|
-
apiBaseUrl,
|
|
49388
|
-
portalToken,
|
|
49389
|
-
subject,
|
|
49390
|
-
courses,
|
|
49391
|
-
className,
|
|
49392
|
-
showSessions,
|
|
49393
|
-
showPrice,
|
|
49394
|
-
showCapacity,
|
|
49395
|
-
showVenue,
|
|
49396
|
-
successMessage,
|
|
49397
|
-
waitlistMessage,
|
|
49398
|
-
membershipMessage,
|
|
49399
|
-
buttonText,
|
|
49400
|
-
buttonVariant,
|
|
49401
|
-
stage
|
|
49402
|
-
});
|
|
49403
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
49404
|
-
className: `course-registration ${className ?? ""}`.trim(),
|
|
49405
|
-
"data-block": "course-registration",
|
|
49406
|
-
...getIslandRootProps("course-registration", blockId),
|
|
49407
|
-
children: [
|
|
49408
|
-
/* @__PURE__ */ jsx(IslandPropsScript, { value: islandProps }),
|
|
49409
|
-
/* @__PURE__ */ jsx("div", {
|
|
49410
|
-
className: "course-registration__summary",
|
|
49411
|
-
children: /* @__PURE__ */ jsx("strong", { children: islandProps.render.display.summaryButtonText })
|
|
49412
|
-
}),
|
|
49413
|
-
children
|
|
49414
|
-
]
|
|
49415
|
-
});
|
|
49416
|
-
}
|
|
49417
|
-
//#endregion
|
|
49418
48641
|
//#region ../blocks/src/system/runtime/nodes/gifting.server.tsx
|
|
49419
48642
|
function GiftingSSR({ blockId, ...rest }) {
|
|
49420
48643
|
const islandProps = buildGiftingInteractiveIslandProps(rest);
|
|
@@ -50900,7 +50123,6 @@ const runtimeBackedBlockServerEntries = {
|
|
|
50900
50123
|
"product-detail": defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(productDetailBlockDefinition), ProductDetailSSR),
|
|
50901
50124
|
cart: defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(cartBlockDefinition), CartSSR),
|
|
50902
50125
|
checkout: defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(checkoutBlockDefinition), CheckoutSSR),
|
|
50903
|
-
"course-registration": defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(courseRegistrationBlockDefinition), CourseRegistrationSSR),
|
|
50904
50126
|
gifting: defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(giftingBlockDefinition), GiftingSSR),
|
|
50905
50127
|
"event-registration": defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(eventRegistrationBlockDefinition), EventRegistrationSSR),
|
|
50906
50128
|
shop: defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(shopBlockDefinition), ShopSSR)
|
|
@@ -50933,7 +50155,6 @@ const serverComponentRegistry = {
|
|
|
50933
50155
|
"booking-form": BookingFormSSR,
|
|
50934
50156
|
"event-details": EventDetailsSSR,
|
|
50935
50157
|
"location-map": LocationMapSSR,
|
|
50936
|
-
"course-details": CourseDetailsSSR,
|
|
50937
50158
|
"event-spotlight": EventSpotlight,
|
|
50938
50159
|
"event-combined": EventCombinedSSR,
|
|
50939
50160
|
"offerings-preview": OfferingsPreviewNode,
|
|
@@ -55388,176 +54609,6 @@ ${root} {
|
|
|
55388
54609
|
`;
|
|
55389
54610
|
}
|
|
55390
54611
|
//#endregion
|
|
55391
|
-
//#region ../theme-core/src/blocks/vars/course-details.ts
|
|
55392
|
-
/**
|
|
55393
|
-
* Generate CSS variables for the course-details block.
|
|
55394
|
-
*
|
|
55395
|
-
* Variables defined:
|
|
55396
|
-
* - Enrollment status colors (open/closed)
|
|
55397
|
-
* - Capacity indicator colors (available/low/full)
|
|
55398
|
-
* - Price display colors (free indicator)
|
|
55399
|
-
*/
|
|
55400
|
-
function generateCourseDetailsVars({ themeId }) {
|
|
55401
|
-
return `
|
|
55402
|
-
${`:where([data-theme-scope="${themeId}"]) :where([data-block="course-details"])`} {
|
|
55403
|
-
/* Enrollment status */
|
|
55404
|
-
--cd-enrollment-open-text: rgb(var(--tb-success));
|
|
55405
|
-
--cd-enrollment-closed-text: rgb(var(--tb-mutedText));
|
|
55406
|
-
|
|
55407
|
-
/* Capacity indicator */
|
|
55408
|
-
--cd-capacity-available-text: rgb(var(--tb-success));
|
|
55409
|
-
--cd-capacity-low-text: rgb(var(--tb-warning));
|
|
55410
|
-
--cd-capacity-full-text: rgb(var(--tb-destructive, 239 68 68));
|
|
55411
|
-
|
|
55412
|
-
/* Price styling */
|
|
55413
|
-
--cd-price-free-text: rgb(var(--tb-success));
|
|
55414
|
-
}
|
|
55415
|
-
`;
|
|
55416
|
-
}
|
|
55417
|
-
//#endregion
|
|
55418
|
-
//#region ../theme-core/src/blocks/vars/course-registration.ts
|
|
55419
|
-
const EVENT_WHOLE_SERIES_VARIABLE_BRIDGE = `
|
|
55420
|
-
/* Temporary bridge while persisted Course blocks render the Event-owned
|
|
55421
|
-
whole-series registration runtime. Removed with the Course block. */
|
|
55422
|
-
--er-step-active: var(--cr-step-active);
|
|
55423
|
-
--er-step-inactive: var(--cr-step-inactive);
|
|
55424
|
-
--er-step-completed: var(--cr-step-completed);
|
|
55425
|
-
--er-step-text: var(--cr-step-text);
|
|
55426
|
-
--er-step-text-active: var(--cr-step-text-active);
|
|
55427
|
-
--er-step-connector: var(--cr-step-connector);
|
|
55428
|
-
--er-step-title-size: var(--cr-step-title-size);
|
|
55429
|
-
--er-success-bg: var(--cr-success-bg);
|
|
55430
|
-
--er-success-text: var(--cr-success-text);
|
|
55431
|
-
--er-error-bg: var(--cr-error-bg);
|
|
55432
|
-
--er-error-text: var(--cr-error-text);
|
|
55433
|
-
--er-waitlist-bg: var(--cr-waitlist-bg);
|
|
55434
|
-
--er-waitlist-text: var(--cr-waitlist-text);
|
|
55435
|
-
--er-capacity-available-bg: var(--cr-capacity-available-bg);
|
|
55436
|
-
--er-capacity-available-text: var(--cr-capacity-available-text);
|
|
55437
|
-
--er-capacity-low-bg: var(--cr-capacity-low-bg);
|
|
55438
|
-
--er-capacity-low-text: var(--cr-capacity-low-text);
|
|
55439
|
-
--er-capacity-soldout-bg: var(--cr-capacity-soldout-bg);
|
|
55440
|
-
--er-capacity-soldout-text: var(--cr-capacity-soldout-text);
|
|
55441
|
-
--er-border: var(--cr-border);
|
|
55442
|
-
--er-border-hover: var(--cr-border-hover);
|
|
55443
|
-
--er-border-selected: var(--cr-border-selected);
|
|
55444
|
-
--er-border-error: var(--cr-border-error);
|
|
55445
|
-
--er-focus-ring: var(--cr-focus-ring);
|
|
55446
|
-
--er-required: var(--cr-required);
|
|
55447
|
-
--er-payment-border: var(--cr-payment-border);
|
|
55448
|
-
--er-payment-border-hover: var(--cr-payment-border-hover);
|
|
55449
|
-
--er-payment-border-selected: var(--cr-payment-border-selected);
|
|
55450
|
-
--er-payment-bg-selected: var(--cr-payment-bg-selected);
|
|
55451
|
-
--er-check-bg: var(--cr-check-bg);
|
|
55452
|
-
--er-check-text: var(--cr-check-text);
|
|
55453
|
-
--er-summary-bg: var(--cr-summary-bg);
|
|
55454
|
-
--er-summary-border: var(--cr-summary-border);
|
|
55455
|
-
--er-on-surface: rgb(var(--tb-onSurface, var(--tb-text)));
|
|
55456
|
-
--er-on-surface-hover-bg: rgba(var(--tb-onSurface, var(--tb-text)), 0.05);
|
|
55457
|
-
`;
|
|
55458
|
-
/**
|
|
55459
|
-
* Generate CSS variables for the course-registration block.
|
|
55460
|
-
*
|
|
55461
|
-
* Variables defined:
|
|
55462
|
-
* - Step indicator colors (active, inactive, completed, text, connector)
|
|
55463
|
-
* - Success/error/waitlist state backgrounds and text colors
|
|
55464
|
-
* - Capacity badge colors (available, low, sold-out)
|
|
55465
|
-
* - Border colors for various interaction states
|
|
55466
|
-
* - Input focus and required marker styling
|
|
55467
|
-
* - Payment option card styling
|
|
55468
|
-
* - Checkmark indicator colors
|
|
55469
|
-
* - Summary styling
|
|
55470
|
-
*/
|
|
55471
|
-
function generateCourseRegistrationVars({ themeId }) {
|
|
55472
|
-
return `
|
|
55473
|
-
${`:where([data-theme-scope="${themeId}"]) :where([data-block="course-registration"])`} {
|
|
55474
|
-
/* Step indicator */
|
|
55475
|
-
--cr-step-active: rgb(var(--tb-primary));
|
|
55476
|
-
--cr-step-inactive: rgb(var(--tb-mutedText));
|
|
55477
|
-
--cr-step-completed: rgb(var(--tb-success));
|
|
55478
|
-
--cr-step-text: rgb(255 255 255);
|
|
55479
|
-
--cr-step-text-active: rgb(var(--tb-primaryText, 255 255 255));
|
|
55480
|
-
--cr-step-connector: rgba(var(--tb-border), 0.5);
|
|
55481
|
-
|
|
55482
|
-
/* Step title */
|
|
55483
|
-
--cr-step-title-size: 1.5rem;
|
|
55484
|
-
|
|
55485
|
-
/* State backgrounds with alpha */
|
|
55486
|
-
--cr-success-bg: rgba(var(--tb-success), 0.1);
|
|
55487
|
-
--cr-success-text: rgb(var(--tb-success));
|
|
55488
|
-
--cr-error-bg: rgba(var(--tb-destructive, 239 68 68), 0.1);
|
|
55489
|
-
--cr-error-text: rgb(var(--tb-destructive, 239 68 68));
|
|
55490
|
-
--cr-waitlist-bg: rgba(var(--tb-warning), 0.1);
|
|
55491
|
-
--cr-waitlist-text: rgb(var(--tb-warning));
|
|
55492
|
-
|
|
55493
|
-
/* Capacity badges */
|
|
55494
|
-
--cr-capacity-available-bg: rgba(var(--tb-success), 0.1);
|
|
55495
|
-
--cr-capacity-available-text: rgb(var(--tb-success));
|
|
55496
|
-
--cr-capacity-low-bg: rgba(var(--tb-warning), 0.1);
|
|
55497
|
-
--cr-capacity-low-text: rgb(var(--tb-warning));
|
|
55498
|
-
--cr-capacity-soldout-bg: rgba(var(--tb-destructive, 239 68 68), 0.1);
|
|
55499
|
-
--cr-capacity-soldout-text: rgb(var(--tb-destructive, 239 68 68));
|
|
55500
|
-
|
|
55501
|
-
/* Borders */
|
|
55502
|
-
--cr-border: rgb(var(--tb-border));
|
|
55503
|
-
--cr-border-hover: rgba(var(--tb-primary), 0.5);
|
|
55504
|
-
--cr-border-selected: rgb(var(--tb-primary));
|
|
55505
|
-
--cr-border-error: rgb(var(--tb-destructive, 239 68 68));
|
|
55506
|
-
|
|
55507
|
-
/* Input focus */
|
|
55508
|
-
--cr-focus-ring: rgba(var(--tb-primary), 0.3);
|
|
55509
|
-
|
|
55510
|
-
/* Required marker */
|
|
55511
|
-
--cr-required: rgb(var(--tb-destructive, 239 68 68));
|
|
55512
|
-
|
|
55513
|
-
/* Payment option cards */
|
|
55514
|
-
--cr-payment-border: rgb(var(--tb-border));
|
|
55515
|
-
--cr-payment-border-hover: rgba(var(--tb-primary), 0.5);
|
|
55516
|
-
--cr-payment-border-selected: rgb(var(--tb-primary));
|
|
55517
|
-
--cr-payment-bg-selected: rgba(var(--tb-primary), 0.08);
|
|
55518
|
-
|
|
55519
|
-
/* Checkmark indicator */
|
|
55520
|
-
--cr-check-bg: rgb(var(--tb-primary));
|
|
55521
|
-
--cr-check-text: rgb(var(--tb-primaryText, 255 255 255));
|
|
55522
|
-
|
|
55523
|
-
/* Summary */
|
|
55524
|
-
--cr-summary-bg: rgba(var(--tb-primary), 0.1);
|
|
55525
|
-
--cr-summary-border: rgb(var(--tb-border));
|
|
55526
|
-
|
|
55527
|
-
${EVENT_WHOLE_SERIES_VARIABLE_BRIDGE}
|
|
55528
|
-
|
|
55529
|
-
/* Shared registration-surface mappings (issue 1174).
|
|
55530
|
-
Route the shared --rb-reg-* contract through this block's Tier 3 vars
|
|
55531
|
-
(palette tokens where no --cr-* var exists) so existing --cr-* overrides
|
|
55532
|
-
keep working unchanged. */
|
|
55533
|
-
--rb-reg-radius: var(--rb-block-radius);
|
|
55534
|
-
--rb-reg-border: var(--cr-border);
|
|
55535
|
-
--rb-reg-border-hover: var(--cr-border-hover);
|
|
55536
|
-
--rb-reg-border-selected: var(--cr-border-selected);
|
|
55537
|
-
--rb-reg-bg-selected: var(--cr-payment-bg-selected);
|
|
55538
|
-
--rb-reg-option-bg: rgb(var(--tb-background));
|
|
55539
|
-
--rb-reg-option-hover-shadow: 0 8px 18px rgba(var(--tb-shadow, 15 23 42), 0.08);
|
|
55540
|
-
--rb-reg-surface-bg: rgb(var(--tb-surface));
|
|
55541
|
-
--rb-reg-on-surface: rgb(var(--tb-onSurface, var(--tb-text)));
|
|
55542
|
-
--rb-reg-on-surface-muted: rgba(var(--tb-onSurface, var(--tb-text)), 0.7);
|
|
55543
|
-
--rb-reg-on-surface-subtle: rgba(var(--tb-onSurface, var(--tb-text)), 0.6);
|
|
55544
|
-
--rb-reg-on-surface-faint: rgba(var(--tb-onSurface, var(--tb-text)), 0.5);
|
|
55545
|
-
--rb-reg-check-bg: var(--cr-check-bg);
|
|
55546
|
-
--rb-reg-check-text: var(--cr-check-text);
|
|
55547
|
-
--rb-reg-step-active: var(--cr-step-active);
|
|
55548
|
-
--rb-reg-step-completed: var(--cr-step-completed);
|
|
55549
|
-
--rb-reg-step-inactive: var(--cr-step-inactive);
|
|
55550
|
-
--rb-reg-step-text: var(--cr-step-text);
|
|
55551
|
-
--rb-reg-step-text-active: var(--cr-step-text-active);
|
|
55552
|
-
--rb-reg-step-connector: var(--cr-step-connector);
|
|
55553
|
-
--rb-reg-summary-bg: var(--cr-summary-bg);
|
|
55554
|
-
--rb-reg-summary-border: var(--cr-summary-border);
|
|
55555
|
-
--rb-reg-focus-ring: var(--cr-focus-ring);
|
|
55556
|
-
--rb-reg-shell-line: rgba(var(--tb-mutedText, 100 116 139), 0.22);
|
|
55557
|
-
}
|
|
55558
|
-
`;
|
|
55559
|
-
}
|
|
55560
|
-
//#endregion
|
|
55561
54612
|
//#region ../theme-core/src/blocks/registry.ts
|
|
55562
54613
|
/**
|
|
55563
54614
|
* Global registry of block var generators.
|
|
@@ -55572,8 +54623,6 @@ blockVarRegistry.set("appointment-booking", generateAppointmentBookingVars);
|
|
|
55572
54623
|
blockVarRegistry.set("form", generateFormBlockVars);
|
|
55573
54624
|
blockVarRegistry.set("customer-portal", generateCustomerPortalVars);
|
|
55574
54625
|
blockVarRegistry.set("testimonials", generateTestimonialsVars);
|
|
55575
|
-
blockVarRegistry.set("course-details", generateCourseDetailsVars);
|
|
55576
|
-
blockVarRegistry.set("course-registration", generateCourseRegistrationVars);
|
|
55577
54626
|
/**
|
|
55578
54627
|
* Generate all Tier 3 block-specific CSS variables.
|
|
55579
54628
|
*
|
|
@@ -60465,7 +59514,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
60465
59514
|
* Shared: Registration Surface (issue 1174)
|
|
60466
59515
|
*
|
|
60467
59516
|
* Wizard-surface primitives shared by the event-registration,
|
|
60468
|
-
*
|
|
59517
|
+
* appointment-booking blocks: surface container,
|
|
60469
59518
|
* selectable option cards, step indicator, wizard actions row, on-surface
|
|
60470
59519
|
* text ramp, layout stacks, summary box and skeleton shell lines.
|
|
60471
59520
|
*
|
|
@@ -60508,7 +59557,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
60508
59557
|
}
|
|
60509
59558
|
|
|
60510
59559
|
/* Surface container */
|
|
60511
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59560
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-surface {
|
|
60512
59561
|
border-radius: var(--rb-reg-radius, var(--rb-block-radius, 1rem));
|
|
60513
59562
|
border: 1px solid var(--rb-reg-border, rgb(var(--tb-border, 226 232 240)));
|
|
60514
59563
|
padding: clamp(1rem, 2vw, 1.5rem);
|
|
@@ -60538,7 +59587,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
60538
59587
|
*
|
|
60539
59588
|
* Mirrors \`contextualButtonSurfaceResetStyles()\` in theme-core/buttons; the
|
|
60540
59589
|
* pairing is pinned by registration-surface-action-reset.test.ts. */
|
|
60541
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59590
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-surface {
|
|
60542
59591
|
--rb-action-primary-base-background-color: initial;
|
|
60543
59592
|
--rb-action-primary-base-background-image: initial;
|
|
60544
59593
|
--rb-action-primary-base-color: initial;
|
|
@@ -60646,7 +59695,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
60646
59695
|
}
|
|
60647
59696
|
|
|
60648
59697
|
/* Selectable option card */
|
|
60649
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59698
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card {
|
|
60650
59699
|
position: relative;
|
|
60651
59700
|
display: flex;
|
|
60652
59701
|
align-items: flex-start;
|
|
@@ -60663,34 +59712,34 @@ const containerResponsiveThemeCss = `/*
|
|
|
60663
59712
|
box-shadow var(--rb-block-transition, 150ms) ease;
|
|
60664
59713
|
}
|
|
60665
59714
|
|
|
60666
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59715
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card:hover:not(:disabled):not([aria-disabled="true"]) {
|
|
60667
59716
|
border-color: var(--rb-reg-border-hover, rgba(var(--tb-primary, 17 24 39), 0.5));
|
|
60668
59717
|
box-shadow: var(--rb-reg-option-hover-shadow, 0 8px 18px rgba(var(--tb-shadow, 15 23 42), 0.08));
|
|
60669
59718
|
}
|
|
60670
59719
|
|
|
60671
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59720
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card:focus-visible {
|
|
60672
59721
|
outline: 2px solid var(--rb-reg-focus-ring, rgba(var(--tb-primary, 17 24 39), 0.3));
|
|
60673
59722
|
outline-offset: 2px;
|
|
60674
59723
|
}
|
|
60675
59724
|
|
|
60676
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59725
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card--selected {
|
|
60677
59726
|
border-color: var(--rb-reg-border-selected, rgb(var(--tb-primary, 17 24 39)));
|
|
60678
59727
|
background-color: var(--rb-reg-bg-selected, rgba(var(--tb-primary, 17 24 39), 0.08));
|
|
60679
59728
|
box-shadow: 0 0 0 1px var(--rb-reg-border-selected, rgb(var(--tb-primary, 17 24 39)));
|
|
60680
59729
|
}
|
|
60681
59730
|
|
|
60682
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59731
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card--disabled {
|
|
60683
59732
|
cursor: not-allowed;
|
|
60684
59733
|
opacity: 0.7;
|
|
60685
59734
|
}
|
|
60686
59735
|
|
|
60687
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59736
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card--disabled:hover {
|
|
60688
59737
|
border-color: var(--rb-reg-border, rgb(var(--tb-border, 226 232 240)));
|
|
60689
59738
|
box-shadow: none;
|
|
60690
59739
|
}
|
|
60691
59740
|
|
|
60692
59741
|
/* Check indicator */
|
|
60693
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59742
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-check {
|
|
60694
59743
|
flex-shrink: 0;
|
|
60695
59744
|
width: 1.25rem;
|
|
60696
59745
|
height: 1.25rem;
|
|
@@ -60701,18 +59750,18 @@ const containerResponsiveThemeCss = `/*
|
|
|
60701
59750
|
justify-content: center;
|
|
60702
59751
|
}
|
|
60703
59752
|
|
|
60704
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59753
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-check svg {
|
|
60705
59754
|
width: 0.75rem;
|
|
60706
59755
|
height: 0.75rem;
|
|
60707
59756
|
color: var(--rb-reg-check-text, rgb(var(--tb-primaryText, var(--tb-primaryForeground, 255 255 255))));
|
|
60708
59757
|
}
|
|
60709
59758
|
|
|
60710
59759
|
/* Step indicator */
|
|
60711
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59760
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-steps-nav {
|
|
60712
59761
|
margin-bottom: 1.5rem;
|
|
60713
59762
|
}
|
|
60714
59763
|
|
|
60715
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59764
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-steps {
|
|
60716
59765
|
display: flex;
|
|
60717
59766
|
align-items: center;
|
|
60718
59767
|
justify-content: center;
|
|
@@ -60722,13 +59771,13 @@ const containerResponsiveThemeCss = `/*
|
|
|
60722
59771
|
margin: 0;
|
|
60723
59772
|
}
|
|
60724
59773
|
|
|
60725
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59774
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step {
|
|
60726
59775
|
display: flex;
|
|
60727
59776
|
align-items: center;
|
|
60728
59777
|
gap: 0.5rem;
|
|
60729
59778
|
}
|
|
60730
59779
|
|
|
60731
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59780
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-circle {
|
|
60732
59781
|
width: 1.75rem;
|
|
60733
59782
|
height: 1.75rem;
|
|
60734
59783
|
border-radius: 50%;
|
|
@@ -60742,47 +59791,47 @@ const containerResponsiveThemeCss = `/*
|
|
|
60742
59791
|
transition: background-color var(--rb-block-transition, 150ms) ease;
|
|
60743
59792
|
}
|
|
60744
59793
|
|
|
60745
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59794
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-circle--active {
|
|
60746
59795
|
background: var(--rb-reg-step-active, rgb(var(--tb-primary, 17 24 39)));
|
|
60747
59796
|
color: var(--rb-reg-step-text-active, rgb(var(--tb-primaryText, var(--tb-primaryForeground, 255 255 255))));
|
|
60748
59797
|
}
|
|
60749
59798
|
|
|
60750
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59799
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-circle--completed {
|
|
60751
59800
|
background: var(--rb-reg-step-completed, rgb(var(--tb-success, 22 163 74)));
|
|
60752
59801
|
color: var(--rb-reg-step-text-active, rgb(var(--tb-primaryText, var(--tb-primaryForeground, 255 255 255))));
|
|
60753
59802
|
}
|
|
60754
59803
|
|
|
60755
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59804
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-check {
|
|
60756
59805
|
width: 0.75rem;
|
|
60757
59806
|
height: 0.75rem;
|
|
60758
59807
|
}
|
|
60759
59808
|
|
|
60760
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59809
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-connector {
|
|
60761
59810
|
width: 2rem;
|
|
60762
59811
|
height: 2px;
|
|
60763
59812
|
background: var(--rb-reg-step-connector, rgba(var(--tb-border, 226 232 240), 0.5));
|
|
60764
59813
|
}
|
|
60765
59814
|
|
|
60766
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59815
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-label {
|
|
60767
59816
|
font-size: 0.75rem;
|
|
60768
59817
|
color: var(--rb-reg-on-surface, rgb(var(--tb-onSurface, var(--tb-text, 15 23 42))));
|
|
60769
59818
|
display: none;
|
|
60770
59819
|
}
|
|
60771
59820
|
|
|
60772
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59821
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-label--active {
|
|
60773
59822
|
font-weight: 500;
|
|
60774
59823
|
}
|
|
60775
59824
|
|
|
60776
59825
|
@container rb-site (min-width: 640px) {
|
|
60777
59826
|
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
60778
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59827
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-label {
|
|
60779
59828
|
display: inline;
|
|
60780
59829
|
}
|
|
60781
59830
|
}
|
|
60782
59831
|
}
|
|
60783
59832
|
|
|
60784
59833
|
/* Wizard actions row */
|
|
60785
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59834
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-wizard-actions {
|
|
60786
59835
|
display: flex;
|
|
60787
59836
|
justify-content: space-between;
|
|
60788
59837
|
align-items: center;
|
|
@@ -60791,56 +59840,56 @@ const containerResponsiveThemeCss = `/*
|
|
|
60791
59840
|
}
|
|
60792
59841
|
|
|
60793
59842
|
/* When there's only one action (no back button), push it to the right */
|
|
60794
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59843
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-wizard-actions > :only-child {
|
|
60795
59844
|
margin-inline-start: auto;
|
|
60796
59845
|
}
|
|
60797
59846
|
|
|
60798
59847
|
/* On-surface text ramp */
|
|
60799
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59848
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-on-surface {
|
|
60800
59849
|
color: var(--rb-reg-on-surface, rgb(var(--tb-onSurface, var(--tb-text, 15 23 42))));
|
|
60801
59850
|
}
|
|
60802
59851
|
|
|
60803
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59852
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-on-surface--muted {
|
|
60804
59853
|
color: var(--rb-reg-on-surface-muted, rgba(var(--tb-onSurface, var(--tb-text, 15 23 42)), 0.7));
|
|
60805
59854
|
}
|
|
60806
59855
|
|
|
60807
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59856
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-on-surface--subtle {
|
|
60808
59857
|
color: var(--rb-reg-on-surface-subtle, rgba(var(--tb-onSurface, var(--tb-text, 15 23 42)), 0.6));
|
|
60809
59858
|
}
|
|
60810
59859
|
|
|
60811
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59860
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-on-surface--faint {
|
|
60812
59861
|
color: var(--rb-reg-on-surface-faint, rgba(var(--tb-onSurface, var(--tb-text, 15 23 42)), 0.5));
|
|
60813
59862
|
}
|
|
60814
59863
|
|
|
60815
59864
|
/* Layout stacks */
|
|
60816
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59865
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-stack {
|
|
60817
59866
|
display: flex;
|
|
60818
59867
|
flex-direction: column;
|
|
60819
59868
|
gap: 1rem;
|
|
60820
59869
|
}
|
|
60821
59870
|
|
|
60822
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59871
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-stack--sm {
|
|
60823
59872
|
gap: 0.75rem;
|
|
60824
59873
|
}
|
|
60825
59874
|
|
|
60826
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59875
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-row {
|
|
60827
59876
|
display: flex;
|
|
60828
59877
|
align-items: center;
|
|
60829
59878
|
gap: 1rem;
|
|
60830
59879
|
}
|
|
60831
59880
|
|
|
60832
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59881
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-row--between {
|
|
60833
59882
|
justify-content: space-between;
|
|
60834
59883
|
align-items: flex-start;
|
|
60835
59884
|
}
|
|
60836
59885
|
|
|
60837
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59886
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-grid {
|
|
60838
59887
|
display: grid;
|
|
60839
59888
|
gap: 0.75rem;
|
|
60840
59889
|
}
|
|
60841
59890
|
|
|
60842
59891
|
/* Summary box */
|
|
60843
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59892
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-summary {
|
|
60844
59893
|
padding: 1rem;
|
|
60845
59894
|
border-radius: calc(var(--rb-reg-radius, var(--rb-block-radius, 1rem)) * 0.75);
|
|
60846
59895
|
border: 1px solid var(--rb-reg-summary-border, rgb(var(--tb-border, 226 232 240)));
|
|
@@ -60848,7 +59897,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
60848
59897
|
}
|
|
60849
59898
|
|
|
60850
59899
|
/* Skeleton shell lines */
|
|
60851
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59900
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-line {
|
|
60852
59901
|
height: 0.75rem;
|
|
60853
59902
|
border-radius: 9999px;
|
|
60854
59903
|
background: linear-gradient(
|
|
@@ -60859,24 +59908,24 @@ const containerResponsiveThemeCss = `/*
|
|
|
60859
59908
|
);
|
|
60860
59909
|
}
|
|
60861
59910
|
|
|
60862
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59911
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-line--lg {
|
|
60863
59912
|
width: min(26rem, 82%);
|
|
60864
59913
|
}
|
|
60865
59914
|
|
|
60866
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59915
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-line--md {
|
|
60867
59916
|
width: min(19rem, 68%);
|
|
60868
59917
|
}
|
|
60869
59918
|
|
|
60870
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59919
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-line--sm {
|
|
60871
59920
|
width: min(14rem, 52%);
|
|
60872
59921
|
}
|
|
60873
59922
|
|
|
60874
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59923
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-line--xs {
|
|
60875
59924
|
width: min(10rem, 42%);
|
|
60876
59925
|
}
|
|
60877
59926
|
|
|
60878
59927
|
/* Skeleton block (rectangular placeholder, pulses) */
|
|
60879
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59928
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-block {
|
|
60880
59929
|
height: 2.5rem;
|
|
60881
59930
|
width: 100%;
|
|
60882
59931
|
border-radius: var(--rb-reg-radius, var(--rb-block-radius, 1rem));
|
|
@@ -60894,7 +59943,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
60894
59943
|
}
|
|
60895
59944
|
|
|
60896
59945
|
@media (prefers-reduced-motion: reduce) {
|
|
60897
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59946
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-block {
|
|
60898
59947
|
animation: none;
|
|
60899
59948
|
}
|
|
60900
59949
|
}
|
|
@@ -67276,1674 +66325,363 @@ const containerResponsiveThemeCss = `/*
|
|
|
67276
66325
|
cursor: not-allowed;
|
|
67277
66326
|
}
|
|
67278
66327
|
|
|
67279
|
-
/*
|
|
67280
|
-
*
|
|
67281
|
-
*
|
|
66328
|
+
/* =============================================================================
|
|
66329
|
+
* Block: Newsletter Signup
|
|
66330
|
+
* =============================================================================
|
|
67282
66331
|
*/
|
|
67283
66332
|
|
|
67284
|
-
|
|
67285
|
-
|
|
67286
|
-
|
|
67287
|
-
|
|
66333
|
+
/* Newsletter copy styling */
|
|
66334
|
+
:where(.theme-scope) :where([data-block="newsletter-signup"]) .newsletter-copy-title {
|
|
66335
|
+
font-size: 1.5rem;
|
|
66336
|
+
font-weight: 600;
|
|
67288
66337
|
}
|
|
67289
66338
|
|
|
67290
|
-
|
|
67291
|
-
:
|
|
67292
|
-
|
|
66339
|
+
:where(.theme-scope) :where([data-block="newsletter-signup"]) .newsletter-copy-subtitle {
|
|
66340
|
+
font-size: 1rem;
|
|
66341
|
+
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
66342
|
+
opacity: 0.85;
|
|
67293
66343
|
}
|
|
67294
66344
|
|
|
67295
|
-
/*
|
|
67296
|
-
:where(.theme-scope) .
|
|
67297
|
-
|
|
67298
|
-
|
|
67299
|
-
|
|
66345
|
+
/* Newsletter form container */
|
|
66346
|
+
:where(.theme-scope) .newsletter-form {
|
|
66347
|
+
width: 100%;
|
|
66348
|
+
max-width: 32rem;
|
|
66349
|
+
margin-left: auto;
|
|
66350
|
+
margin-right: auto;
|
|
67300
66351
|
}
|
|
67301
66352
|
|
|
67302
|
-
/*
|
|
67303
|
-
:where(.theme-scope) .
|
|
67304
|
-
|
|
66353
|
+
/* Newsletter form fields container */
|
|
66354
|
+
:where(.theme-scope) .newsletter-form-fields {
|
|
66355
|
+
display: flex;
|
|
66356
|
+
flex-direction: column;
|
|
66357
|
+
gap: var(--rb-gap-sm, 0.75rem);
|
|
67305
66358
|
}
|
|
67306
66359
|
|
|
67307
|
-
|
|
67308
|
-
|
|
66360
|
+
/* Individual field styling */
|
|
66361
|
+
:where(.theme-scope) .newsletter-field {
|
|
66362
|
+
display: flex;
|
|
66363
|
+
flex-direction: column;
|
|
66364
|
+
gap: 0.25rem;
|
|
67309
66365
|
}
|
|
67310
66366
|
|
|
67311
|
-
/*
|
|
67312
|
-
|
|
67313
|
-
|
|
67314
|
-
|
|
67315
|
-
*/
|
|
67316
|
-
|
|
67317
|
-
/* Block-local surface text tokens for cards/modals that sit on theme surface. */
|
|
67318
|
-
:where(.theme-scope)
|
|
67319
|
-
:where(
|
|
67320
|
-
[data-block='event-registration'],
|
|
67321
|
-
[data-block='course-registration']
|
|
67322
|
-
) {
|
|
67323
|
-
--er-on-surface: rgb(var(--tb-onSurface, var(--tb-text)));
|
|
67324
|
-
--er-on-surface-hover-bg: rgba(var(--tb-onSurface, var(--tb-text)), 0.05);
|
|
66367
|
+
/* Required indicator */
|
|
66368
|
+
:where(.theme-scope) .newsletter-required {
|
|
66369
|
+
color: rgb(var(--tb-primary));
|
|
66370
|
+
margin-left: 0.125rem;
|
|
67325
66371
|
}
|
|
67326
66372
|
|
|
67327
|
-
/*
|
|
67328
|
-
|
|
67329
|
-
|
|
67330
|
-
:where(.theme-scope)
|
|
67331
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67332
|
-
.er-whole-series-container {
|
|
67333
|
-
padding: 1.5rem;
|
|
67334
|
-
margin-inline: auto;
|
|
66373
|
+
/* Submit button container */
|
|
66374
|
+
:where(.theme-scope) .newsletter-submit {
|
|
66375
|
+
margin-top: 0.5rem;
|
|
67335
66376
|
}
|
|
67336
66377
|
|
|
67337
|
-
/*
|
|
67338
|
-
:where(.theme-scope)
|
|
67339
|
-
:
|
|
67340
|
-
|
|
67341
|
-
|
|
67342
|
-
border: 1px dashed rgba(var(--tb-foreground), 0.2);
|
|
67343
|
-
padding: 2.5rem;
|
|
67344
|
-
text-align: center;
|
|
66378
|
+
/* ALTCHA widget container */
|
|
66379
|
+
:where(.theme-scope) .newsletter-altcha {
|
|
66380
|
+
margin-top: 0.75rem;
|
|
66381
|
+
display: flex;
|
|
66382
|
+
justify-content: center;
|
|
67345
66383
|
}
|
|
67346
66384
|
|
|
67347
|
-
|
|
67348
|
-
|
|
67349
|
-
|
|
67350
|
-
|
|
66385
|
+
/* Privacy note */
|
|
66386
|
+
:where(.theme-scope) .newsletter-privacy-note {
|
|
66387
|
+
margin-top: 0.75rem;
|
|
66388
|
+
font-size: 1rem;
|
|
66389
|
+
line-height: 1.6;
|
|
66390
|
+
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
66391
|
+
text-align: center;
|
|
67351
66392
|
}
|
|
67352
66393
|
|
|
67353
66394
|
/* =============================================================================
|
|
67354
|
-
*
|
|
66395
|
+
* Inline Variant - Horizontal layout
|
|
67355
66396
|
* =============================================================================
|
|
67356
66397
|
*/
|
|
67357
|
-
:where(.theme-scope)
|
|
67358
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67359
|
-
.er-whole-series-layout {
|
|
67360
|
-
display: grid;
|
|
67361
|
-
gap: 1.5rem;
|
|
67362
|
-
grid-template-columns: 1fr;
|
|
67363
|
-
}
|
|
67364
66398
|
|
|
67365
|
-
|
|
67366
|
-
|
|
67367
|
-
:
|
|
67368
|
-
|
|
67369
|
-
|
|
67370
|
-
[data-block='course-registration']
|
|
67371
|
-
)
|
|
67372
|
-
.er-whole-series-layout--with-sidebar {
|
|
67373
|
-
grid-template-columns: 1fr 280px;
|
|
67374
|
-
}
|
|
67375
|
-
}
|
|
66399
|
+
:where(.theme-scope) .newsletter-inline .newsletter-form-fields {
|
|
66400
|
+
flex-direction: row;
|
|
66401
|
+
align-items: flex-end;
|
|
66402
|
+
flex-wrap: wrap;
|
|
66403
|
+
gap: var(--rb-gap-sm, 0.75rem);
|
|
67376
66404
|
}
|
|
67377
66405
|
|
|
67378
|
-
:where(.theme-scope)
|
|
67379
|
-
:
|
|
67380
|
-
|
|
67381
|
-
min-width: 0;
|
|
66406
|
+
:where(.theme-scope) .newsletter-inline .newsletter-field {
|
|
66407
|
+
flex: 1 1 auto;
|
|
66408
|
+
min-width: 10rem;
|
|
67382
66409
|
}
|
|
67383
66410
|
|
|
67384
|
-
:where(.theme-scope)
|
|
67385
|
-
:
|
|
67386
|
-
|
|
67387
|
-
display: none;
|
|
66411
|
+
:where(.theme-scope) .newsletter-inline .newsletter-submit {
|
|
66412
|
+
margin-top: 0;
|
|
66413
|
+
flex-shrink: 0;
|
|
67388
66414
|
}
|
|
67389
66415
|
|
|
67390
|
-
|
|
66416
|
+
/* Mobile fallback for inline variant */
|
|
66417
|
+
@container rb-site (max-width: 640px) {
|
|
67391
66418
|
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
67392
|
-
:where(.theme-scope)
|
|
67393
|
-
:
|
|
67394
|
-
|
|
67395
|
-
|
|
67396
|
-
|
|
67397
|
-
|
|
67398
|
-
display: block;
|
|
66419
|
+
:where(.theme-scope) .newsletter-inline .newsletter-form-fields {
|
|
66420
|
+
flex-direction: column;
|
|
66421
|
+
}
|
|
66422
|
+
|
|
66423
|
+
:where(.theme-scope) .newsletter-inline .newsletter-field {
|
|
66424
|
+
min-width: 100%;
|
|
67399
66425
|
}
|
|
67400
66426
|
}
|
|
67401
66427
|
}
|
|
67402
66428
|
|
|
67403
66429
|
/* =============================================================================
|
|
67404
|
-
*
|
|
66430
|
+
* Editorial Split Variant
|
|
67405
66431
|
* =============================================================================
|
|
67406
66432
|
*/
|
|
67407
|
-
:where(.theme-scope)
|
|
67408
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67409
|
-
.er-whole-series-steps {
|
|
67410
|
-
display: flex;
|
|
67411
|
-
align-items: center;
|
|
67412
|
-
gap: 0.5rem;
|
|
67413
|
-
margin-bottom: 1.5rem;
|
|
67414
|
-
}
|
|
67415
66433
|
|
|
67416
|
-
:where(.theme-scope)
|
|
67417
|
-
:
|
|
67418
|
-
|
|
67419
|
-
|
|
66434
|
+
:where(.theme-scope) .newsletter-editorial-split {
|
|
66435
|
+
display: grid;
|
|
66436
|
+
grid-template-columns: minmax(0, 0.9fr) minmax(20rem, 1.1fr);
|
|
66437
|
+
gap: clamp(2.5rem, 7vw, 7rem);
|
|
67420
66438
|
align-items: center;
|
|
67421
|
-
|
|
66439
|
+
text-align: left;
|
|
67422
66440
|
}
|
|
67423
66441
|
|
|
67424
|
-
:where(.theme-scope)
|
|
67425
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67426
|
-
.er-whole-series-step-circle {
|
|
67427
|
-
width: 1.75rem;
|
|
67428
|
-
height: 1.75rem;
|
|
67429
|
-
border-radius: 9999px;
|
|
66442
|
+
:where(.theme-scope) .newsletter-editorial-split-copy {
|
|
67430
66443
|
display: flex;
|
|
67431
|
-
|
|
67432
|
-
|
|
67433
|
-
font-size: 0.75rem;
|
|
67434
|
-
font-weight: 600;
|
|
67435
|
-
background: var(--er-step-inactive);
|
|
67436
|
-
color: var(--er-step-text);
|
|
67437
|
-
transition: background-color 0.2s ease;
|
|
66444
|
+
flex-direction: column;
|
|
66445
|
+
gap: var(--rb-gap-sm, 0.75rem);
|
|
67438
66446
|
}
|
|
67439
66447
|
|
|
67440
|
-
:where(.theme-scope)
|
|
67441
|
-
:
|
|
67442
|
-
.er-whole-series-step-circle--active {
|
|
67443
|
-
background: var(--er-step-active);
|
|
67444
|
-
color: var(--er-step-text-active);
|
|
66448
|
+
:where(.theme-scope) .newsletter-editorial-split-form {
|
|
66449
|
+
min-width: 0;
|
|
67445
66450
|
}
|
|
67446
66451
|
|
|
67447
|
-
:where(.theme-scope)
|
|
67448
|
-
:
|
|
67449
|
-
|
|
67450
|
-
background: var(--er-step-completed);
|
|
67451
|
-
color: var(--er-step-text);
|
|
66452
|
+
:where(.theme-scope) .newsletter-editorial-split .newsletter-form {
|
|
66453
|
+
max-width: none;
|
|
66454
|
+
margin-inline: 0;
|
|
67452
66455
|
}
|
|
67453
66456
|
|
|
67454
|
-
:where(.theme-scope)
|
|
67455
|
-
:
|
|
67456
|
-
.er-whole-series-step-label {
|
|
67457
|
-
font-size: 0.875rem;
|
|
66457
|
+
:where(.theme-scope) .newsletter-editorial-split .newsletter-copy-title {
|
|
66458
|
+
font-size: clamp(2rem, 4vw, 3.5rem);
|
|
67458
66459
|
font-weight: 500;
|
|
67459
|
-
color: rgb(var(--tb-mutedText));
|
|
67460
|
-
display: none;
|
|
67461
66460
|
}
|
|
67462
66461
|
|
|
67463
|
-
|
|
66462
|
+
:where(.theme-scope) .newsletter-editorial-split .newsletter-privacy-note {
|
|
66463
|
+
text-align: left;
|
|
66464
|
+
}
|
|
66465
|
+
|
|
66466
|
+
@container rb-site (max-width: 767px) {
|
|
67464
66467
|
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
67465
|
-
:where(.theme-scope)
|
|
67466
|
-
:
|
|
67467
|
-
|
|
67468
|
-
[data-block='course-registration']
|
|
67469
|
-
)
|
|
67470
|
-
.er-whole-series-step-label {
|
|
67471
|
-
display: block;
|
|
66468
|
+
:where(.theme-scope) .newsletter-editorial-split {
|
|
66469
|
+
grid-template-columns: minmax(0, 1fr);
|
|
66470
|
+
gap: 2rem;
|
|
67472
66471
|
}
|
|
67473
66472
|
}
|
|
67474
66473
|
}
|
|
67475
66474
|
|
|
67476
|
-
|
|
67477
|
-
|
|
67478
|
-
|
|
67479
|
-
|
|
67480
|
-
font-weight: 600;
|
|
67481
|
-
}
|
|
67482
|
-
|
|
67483
|
-
:where(.theme-scope)
|
|
67484
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67485
|
-
.er-whole-series-step-connector {
|
|
67486
|
-
flex: 1;
|
|
67487
|
-
height: 2px;
|
|
67488
|
-
background: var(--er-step-connector);
|
|
67489
|
-
min-width: 1rem;
|
|
67490
|
-
}
|
|
66475
|
+
/* =============================================================================
|
|
66476
|
+
* Success State
|
|
66477
|
+
* =============================================================================
|
|
66478
|
+
*/
|
|
67491
66479
|
|
|
67492
|
-
:where(.theme-scope)
|
|
67493
|
-
:
|
|
67494
|
-
.er-whole-series-step-connector--completed {
|
|
67495
|
-
background: var(--er-step-completed);
|
|
66480
|
+
:where(.theme-scope) .newsletter-success {
|
|
66481
|
+
text-align: center;
|
|
67496
66482
|
}
|
|
67497
66483
|
|
|
67498
|
-
:where(.theme-scope)
|
|
67499
|
-
:
|
|
67500
|
-
|
|
67501
|
-
|
|
67502
|
-
|
|
66484
|
+
:where(.theme-scope) .newsletter-success .fb-success {
|
|
66485
|
+
padding: 1rem 1.5rem;
|
|
66486
|
+
background-color: rgba(var(--tb-success, 34 197 94), 0.1);
|
|
66487
|
+
border-radius: var(--radius-md, 0.5rem);
|
|
66488
|
+
color: rgb(var(--tb-text));
|
|
67503
66489
|
}
|
|
67504
66490
|
|
|
67505
66491
|
/* =============================================================================
|
|
67506
|
-
*
|
|
66492
|
+
* Block: Contact + Newsletter
|
|
67507
66493
|
* =============================================================================
|
|
67508
66494
|
*/
|
|
67509
|
-
|
|
67510
|
-
|
|
67511
|
-
.er-whole-series-run-list {
|
|
66495
|
+
|
|
66496
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-grid {
|
|
67512
66497
|
display: grid;
|
|
67513
|
-
|
|
66498
|
+
grid-template-columns: repeat(auto-fit, minmax(min(24rem, 100%), 1fr));
|
|
66499
|
+
gap: clamp(2.5rem, 6vw, 4rem);
|
|
66500
|
+
align-items: start;
|
|
67514
66501
|
}
|
|
67515
66502
|
|
|
67516
|
-
|
|
67517
|
-
|
|
67518
|
-
* =============================================================================
|
|
67519
|
-
*/
|
|
67520
|
-
:where(.theme-scope)
|
|
67521
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67522
|
-
.er-whole-series-run-card {
|
|
67523
|
-
border-radius: var(--rb-block-radius);
|
|
67524
|
-
border: 1px solid var(--er-border);
|
|
67525
|
-
padding: 1rem;
|
|
67526
|
-
background: rgb(var(--tb-background));
|
|
67527
|
-
cursor: pointer;
|
|
67528
|
-
transition:
|
|
67529
|
-
border-color var(--rb-block-transition) ease,
|
|
67530
|
-
transform var(--rb-block-transition) ease;
|
|
66503
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-column {
|
|
66504
|
+
min-width: 0;
|
|
67531
66505
|
}
|
|
67532
66506
|
|
|
67533
|
-
:where(.theme-scope)
|
|
67534
|
-
:
|
|
67535
|
-
.er-whole-series-run-card:hover {
|
|
67536
|
-
border-color: var(--er-border-hover);
|
|
67537
|
-
transform: translateY(-1px);
|
|
66507
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-copy {
|
|
66508
|
+
margin-bottom: 1.5rem;
|
|
67538
66509
|
}
|
|
67539
66510
|
|
|
67540
|
-
:where(.theme-scope)
|
|
67541
|
-
|
|
67542
|
-
|
|
67543
|
-
outline: 2px solid var(--er-focus-ring);
|
|
67544
|
-
outline-offset: 2px;
|
|
66511
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .form-copy-title,
|
|
66512
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-copy-title {
|
|
66513
|
+
margin: 0 0 0.75rem;
|
|
67545
66514
|
}
|
|
67546
66515
|
|
|
67547
|
-
:where(.theme-scope)
|
|
67548
|
-
|
|
67549
|
-
|
|
67550
|
-
border-color: var(--er-border-selected);
|
|
67551
|
-
box-shadow: 0 0 0 3px var(--er-focus-ring);
|
|
66516
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .form-copy-intro,
|
|
66517
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-copy-subtitle {
|
|
66518
|
+
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
67552
66519
|
}
|
|
67553
66520
|
|
|
67554
|
-
:where(.theme-scope)
|
|
67555
|
-
:
|
|
67556
|
-
|
|
67557
|
-
|
|
67558
|
-
font-weight: 700;
|
|
67559
|
-
font-size: 1.125rem;
|
|
66521
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-info {
|
|
66522
|
+
display: flex;
|
|
66523
|
+
flex-direction: column;
|
|
66524
|
+
align-items: flex-start;
|
|
67560
66525
|
}
|
|
67561
66526
|
|
|
67562
|
-
:where(.theme-scope)
|
|
67563
|
-
:
|
|
67564
|
-
|
|
67565
|
-
margin: 0
|
|
67566
|
-
opacity: 0.8;
|
|
66527
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-form {
|
|
66528
|
+
max-width: none;
|
|
66529
|
+
margin-left: 0;
|
|
66530
|
+
margin-right: 0;
|
|
67567
66531
|
}
|
|
67568
66532
|
|
|
67569
|
-
:where(.theme-scope)
|
|
67570
|
-
:
|
|
67571
|
-
.er-whole-series-run-card__sessions,
|
|
67572
|
-
:where(.theme-scope)
|
|
67573
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67574
|
-
.er-whole-series-run-card__price,
|
|
67575
|
-
:where(.theme-scope)
|
|
67576
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67577
|
-
.er-whole-series-run-card__capacity,
|
|
67578
|
-
:where(.theme-scope)
|
|
67579
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67580
|
-
.er-whole-series-run-card__venue {
|
|
67581
|
-
margin: 0.25rem 0 0 0;
|
|
67582
|
-
opacity: 0.85;
|
|
66533
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-privacy-note {
|
|
66534
|
+
text-align: left;
|
|
67583
66535
|
}
|
|
67584
66536
|
|
|
67585
|
-
|
|
67586
|
-
|
|
67587
|
-
|
|
67588
|
-
|
|
67589
|
-
:where(.theme-scope)
|
|
67590
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67591
|
-
.er-whole-series-capacity-badge {
|
|
67592
|
-
display: inline-block;
|
|
67593
|
-
padding: 0.125rem 0.5rem;
|
|
67594
|
-
border-radius: 9999px;
|
|
67595
|
-
font-size: 0.75rem;
|
|
67596
|
-
font-weight: 500;
|
|
66537
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-form {
|
|
66538
|
+
display: flex;
|
|
66539
|
+
flex-direction: column;
|
|
66540
|
+
gap: 1rem;
|
|
67597
66541
|
}
|
|
67598
66542
|
|
|
67599
|
-
:where(.theme-scope)
|
|
67600
|
-
:
|
|
67601
|
-
|
|
67602
|
-
|
|
67603
|
-
color: var(--er-capacity-available-text);
|
|
66543
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-row-2 {
|
|
66544
|
+
display: grid;
|
|
66545
|
+
grid-template-columns: repeat(auto-fit, minmax(min(14rem, 100%), 1fr));
|
|
66546
|
+
gap: 1rem;
|
|
67604
66547
|
}
|
|
67605
66548
|
|
|
67606
|
-
:where(.theme-scope)
|
|
67607
|
-
:
|
|
67608
|
-
|
|
67609
|
-
|
|
67610
|
-
color: var(--er-capacity-low-text);
|
|
66549
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-field {
|
|
66550
|
+
display: flex;
|
|
66551
|
+
flex-direction: column;
|
|
66552
|
+
gap: 0.25rem;
|
|
67611
66553
|
}
|
|
67612
66554
|
|
|
67613
|
-
:where(.theme-scope)
|
|
67614
|
-
:
|
|
67615
|
-
|
|
67616
|
-
|
|
67617
|
-
|
|
66555
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-fieldset {
|
|
66556
|
+
display: flex;
|
|
66557
|
+
flex-direction: column;
|
|
66558
|
+
gap: 0.5rem;
|
|
66559
|
+
border: none;
|
|
66560
|
+
padding: 0;
|
|
66561
|
+
margin: 0;
|
|
67618
66562
|
}
|
|
67619
66563
|
|
|
67620
|
-
|
|
67621
|
-
|
|
67622
|
-
|
|
67623
|
-
|
|
67624
|
-
:where(.theme-scope)
|
|
67625
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67626
|
-
.er-whole-series-details {
|
|
67627
|
-
display: grid;
|
|
67628
|
-
gap: 1rem;
|
|
66564
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-inline {
|
|
66565
|
+
display: flex;
|
|
66566
|
+
align-items: center;
|
|
66567
|
+
gap: 0.5rem;
|
|
67629
66568
|
}
|
|
67630
66569
|
|
|
67631
|
-
:where(.theme-scope)
|
|
67632
|
-
|
|
67633
|
-
|
|
66570
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-success,
|
|
66571
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-error,
|
|
66572
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-empty {
|
|
67634
66573
|
border-radius: var(--rb-block-radius);
|
|
67635
|
-
border: 1px solid var(--er-summary-border);
|
|
67636
66574
|
padding: 1rem;
|
|
67637
|
-
|
|
67638
|
-
}
|
|
67639
|
-
|
|
67640
|
-
:where(.theme-scope)
|
|
67641
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67642
|
-
.er-whole-series-summary__title {
|
|
67643
|
-
margin: 0;
|
|
67644
|
-
font-size: 1.25rem;
|
|
67645
|
-
font-weight: 800;
|
|
66575
|
+
font-size: 0.875rem;
|
|
67646
66576
|
}
|
|
67647
66577
|
|
|
67648
|
-
:where(.theme-scope)
|
|
67649
|
-
:
|
|
67650
|
-
|
|
67651
|
-
|
|
67652
|
-
font-weight: 700;
|
|
66578
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-success {
|
|
66579
|
+
background-color: var(--fb-success-bg);
|
|
66580
|
+
color: var(--fb-success-text);
|
|
66581
|
+
border: 1px solid var(--fb-success-border);
|
|
67653
66582
|
}
|
|
67654
66583
|
|
|
67655
|
-
:where(.theme-scope)
|
|
67656
|
-
:
|
|
67657
|
-
|
|
67658
|
-
|
|
67659
|
-
padding: 0;
|
|
67660
|
-
margin: 0;
|
|
67661
|
-
display: grid;
|
|
67662
|
-
gap: 0.35rem;
|
|
66584
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-error {
|
|
66585
|
+
background-color: var(--fb-error-bg);
|
|
66586
|
+
color: var(--fb-error-text);
|
|
66587
|
+
border: 1px solid var(--fb-error-border);
|
|
67663
66588
|
}
|
|
67664
66589
|
|
|
67665
|
-
:where(.theme-scope)
|
|
67666
|
-
:
|
|
67667
|
-
|
|
67668
|
-
|
|
66590
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-empty {
|
|
66591
|
+
background-color: var(--fb-empty-bg);
|
|
66592
|
+
color: var(--fb-empty-text);
|
|
66593
|
+
border: 1px dashed var(--fb-empty-border);
|
|
66594
|
+
text-align: center;
|
|
67669
66595
|
}
|
|
67670
66596
|
|
|
67671
|
-
:where(.theme-scope)
|
|
67672
|
-
:
|
|
67673
|
-
.er-whole-series-summary__venue,
|
|
67674
|
-
:where(.theme-scope)
|
|
67675
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67676
|
-
.er-whole-series-summary__price,
|
|
67677
|
-
:where(.theme-scope)
|
|
67678
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67679
|
-
.er-whole-series-summary__membership {
|
|
67680
|
-
margin: 0.5rem 0 0 0;
|
|
67681
|
-
opacity: 0.9;
|
|
66597
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-actions {
|
|
66598
|
+
margin-top: 0.5rem;
|
|
67682
66599
|
}
|
|
67683
66600
|
|
|
67684
66601
|
/* =============================================================================
|
|
67685
|
-
*
|
|
66602
|
+
* Block: Team Members
|
|
67686
66603
|
* =============================================================================
|
|
66604
|
+
*
|
|
66605
|
+
* Site/theme authors sometimes need different thumbnail shapes/sizes without
|
|
66606
|
+
* changing global fragment defaults. We expose these controls on the block and
|
|
66607
|
+
* style them via data attributes on the \`.rb-team-members\` wrapper.
|
|
67687
66608
|
*/
|
|
67688
|
-
|
|
67689
|
-
|
|
67690
|
-
|
|
67691
|
-
|
|
67692
|
-
gap: 1rem;
|
|
66609
|
+
|
|
66610
|
+
/* Scope all block-static CSS to ThemeScope to avoid leaking into host apps/dashboard. */
|
|
66611
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-align="left"]) {
|
|
66612
|
+
text-align: left;
|
|
67693
66613
|
}
|
|
67694
66614
|
|
|
67695
|
-
:where(.theme-scope)
|
|
67696
|
-
:
|
|
67697
|
-
|
|
67698
|
-
display: grid;
|
|
67699
|
-
gap: 0.35rem;
|
|
66615
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-align="left"]) :where(.rb-team-member) {
|
|
66616
|
+
align-items: flex-start;
|
|
66617
|
+
text-align: left;
|
|
67700
66618
|
}
|
|
67701
66619
|
|
|
67702
|
-
|
|
67703
|
-
|
|
67704
|
-
|
|
67705
|
-
|
|
67706
|
-
|
|
66620
|
+
@container rb-site (min-width: 1024px) {
|
|
66621
|
+
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
66622
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-width="lg-3-4-left"]) {
|
|
66623
|
+
width: 75%;
|
|
66624
|
+
margin-left: 0;
|
|
66625
|
+
margin-right: auto;
|
|
66626
|
+
}
|
|
66627
|
+
}
|
|
67707
66628
|
}
|
|
67708
66629
|
|
|
67709
|
-
:where(.theme-scope)
|
|
67710
|
-
:
|
|
67711
|
-
|
|
67712
|
-
|
|
67713
|
-
color: var(--er-required);
|
|
66630
|
+
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-photo {
|
|
66631
|
+
display: block;
|
|
66632
|
+
width: 100%;
|
|
66633
|
+
height: auto;
|
|
67714
66634
|
}
|
|
67715
66635
|
|
|
67716
|
-
:where(.theme-scope)
|
|
67717
|
-
:
|
|
67718
|
-
.er-whole-series-form__input {
|
|
67719
|
-
border-radius: calc(var(--rb-block-radius) * 0.6);
|
|
67720
|
-
border: 1px solid var(--er-border);
|
|
67721
|
-
padding: 0.6rem 0.75rem;
|
|
67722
|
-
background: rgb(var(--tb-background));
|
|
67723
|
-
color: rgb(var(--tb-foreground));
|
|
66636
|
+
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-role {
|
|
66637
|
+
font-weight: 600;
|
|
67724
66638
|
}
|
|
67725
66639
|
|
|
67726
|
-
:
|
|
67727
|
-
|
|
67728
|
-
|
|
67729
|
-
|
|
67730
|
-
border: 1px solid var(--er-border);
|
|
67731
|
-
padding: 0.6rem 0.75rem;
|
|
67732
|
-
background: rgb(var(--tb-background));
|
|
67733
|
-
color: rgb(var(--tb-foreground));
|
|
67734
|
-
resize: vertical;
|
|
66640
|
+
/* Thumbnail sizing: map \`data-image-col-size\` to a sensible max thumbnail width. */
|
|
66641
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members) {
|
|
66642
|
+
--rb-team-thumb-max: 11.25rem; /* ~180px default */
|
|
66643
|
+
--rb-team-image-basis: 33.333%;
|
|
67735
66644
|
}
|
|
67736
66645
|
|
|
67737
|
-
:where(.theme-scope)
|
|
67738
|
-
|
|
67739
|
-
|
|
67740
|
-
:where(.theme-scope)
|
|
67741
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67742
|
-
.er-whole-series-form__textarea:focus {
|
|
67743
|
-
outline: 2px solid var(--er-focus-ring);
|
|
67744
|
-
outline-offset: 2px;
|
|
66646
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/4"]) {
|
|
66647
|
+
--rb-team-thumb-max: 8.75rem; /* ~140px */
|
|
66648
|
+
--rb-team-image-basis: 25%;
|
|
67745
66649
|
}
|
|
67746
66650
|
|
|
67747
|
-
:where(.theme-scope)
|
|
67748
|
-
|
|
67749
|
-
|
|
67750
|
-
:where(.theme-scope)
|
|
67751
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67752
|
-
.er-whole-series-form__textarea.er-whole-series-form__input--error {
|
|
67753
|
-
border-color: var(--er-border-error);
|
|
66651
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/3"]) {
|
|
66652
|
+
--rb-team-thumb-max: 11.25rem; /* ~180px */
|
|
66653
|
+
--rb-team-image-basis: 33.333%;
|
|
67754
66654
|
}
|
|
67755
66655
|
|
|
67756
|
-
:where(.theme-scope)
|
|
67757
|
-
|
|
67758
|
-
|
|
67759
|
-
font-size: 0.875rem;
|
|
67760
|
-
color: var(--er-error-text);
|
|
66656
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="2/5"]) {
|
|
66657
|
+
--rb-team-thumb-max: 13.75rem; /* ~220px */
|
|
66658
|
+
--rb-team-image-basis: 40%;
|
|
67761
66659
|
}
|
|
67762
66660
|
|
|
67763
|
-
:where(.theme-scope)
|
|
67764
|
-
|
|
67765
|
-
|
|
67766
|
-
font-size: 0.875rem;
|
|
67767
|
-
opacity: 0.7;
|
|
66661
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/2"]) {
|
|
66662
|
+
--rb-team-thumb-max: 17.5rem; /* ~280px */
|
|
66663
|
+
--rb-team-image-basis: 50%;
|
|
67768
66664
|
}
|
|
67769
66665
|
|
|
67770
|
-
|
|
67771
|
-
:
|
|
67772
|
-
|
|
67773
|
-
.er-whole-series-logged-in-hint {
|
|
67774
|
-
font-size: 0.875rem;
|
|
67775
|
-
opacity: 0.7;
|
|
67776
|
-
margin: 0.25rem 0 0 0;
|
|
66666
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="2/3"]) {
|
|
66667
|
+
--rb-team-thumb-max: 22.5rem; /* ~360px */
|
|
66668
|
+
--rb-team-image-basis: 66.667%;
|
|
67777
66669
|
}
|
|
67778
66670
|
|
|
67779
|
-
|
|
67780
|
-
|
|
67781
|
-
|
|
67782
|
-
|
|
67783
|
-
border: none;
|
|
67784
|
-
padding: 0;
|
|
67785
|
-
font-size: inherit;
|
|
67786
|
-
color: rgb(var(--tb-primary));
|
|
67787
|
-
cursor: pointer;
|
|
67788
|
-
text-decoration: underline;
|
|
67789
|
-
text-underline-offset: 2px;
|
|
66671
|
+
/* The wrap is the shape/padding boundary; ensure it expands within the grid cell. */
|
|
66672
|
+
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-photo-wrap {
|
|
66673
|
+
width: 100%;
|
|
66674
|
+
overflow: hidden;
|
|
67790
66675
|
}
|
|
67791
66676
|
|
|
67792
|
-
|
|
67793
|
-
|
|
67794
|
-
|
|
67795
|
-
text-decoration: none;
|
|
66677
|
+
/* In grid mode, cap thumbnail width so headshots don't dominate the card. */
|
|
66678
|
+
:where(.theme-scope) :where([data-block="team-members"][data-block-variant="grid"]) :where(.rb-team-member-photo-wrap) {
|
|
66679
|
+
max-width: var(--rb-team-thumb-max);
|
|
67796
66680
|
}
|
|
67797
66681
|
|
|
67798
|
-
|
|
67799
|
-
|
|
67800
|
-
|
|
67801
|
-
*/
|
|
67802
|
-
:where(.theme-scope)
|
|
67803
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67804
|
-
.er-whole-series-actions {
|
|
67805
|
-
display: flex;
|
|
67806
|
-
align-items: center;
|
|
67807
|
-
justify-content: space-between;
|
|
67808
|
-
gap: 0.75rem;
|
|
67809
|
-
margin-top: 0.25rem;
|
|
67810
|
-
}
|
|
67811
|
-
|
|
67812
|
-
:where(.theme-scope)
|
|
67813
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67814
|
-
.er-whole-series-back-btn {
|
|
67815
|
-
border: 0;
|
|
67816
|
-
background: transparent;
|
|
67817
|
-
color: var(--er-on-surface);
|
|
67818
|
-
opacity: 0.8;
|
|
67819
|
-
padding: 0.25rem 0.25rem;
|
|
67820
|
-
cursor: pointer;
|
|
67821
|
-
}
|
|
67822
|
-
|
|
67823
|
-
:where(.theme-scope)
|
|
67824
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67825
|
-
.er-whole-series-back-btn:hover {
|
|
67826
|
-
opacity: 1;
|
|
67827
|
-
text-decoration: underline;
|
|
67828
|
-
}
|
|
67829
|
-
|
|
67830
|
-
/* =============================================================================
|
|
67831
|
-
* Payment Options
|
|
67832
|
-
* =============================================================================
|
|
67833
|
-
*/
|
|
67834
|
-
:where(.theme-scope)
|
|
67835
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67836
|
-
.er-whole-series-payment__options {
|
|
67837
|
-
display: grid;
|
|
67838
|
-
gap: 0.5rem;
|
|
67839
|
-
}
|
|
67840
|
-
|
|
67841
|
-
:where(.theme-scope)
|
|
67842
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67843
|
-
.er-whole-series-payment__option {
|
|
67844
|
-
display: flex;
|
|
67845
|
-
align-items: center;
|
|
67846
|
-
gap: 0.5rem;
|
|
67847
|
-
}
|
|
67848
|
-
|
|
67849
|
-
/* =============================================================================
|
|
67850
|
-
* Payment Tiles (Card Grid)
|
|
67851
|
-
* =============================================================================
|
|
67852
|
-
*/
|
|
67853
|
-
:where(.theme-scope)
|
|
67854
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67855
|
-
.er-whole-series-payment-tiles {
|
|
67856
|
-
display: grid;
|
|
67857
|
-
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
|
|
67858
|
-
gap: 0.75rem;
|
|
67859
|
-
}
|
|
67860
|
-
|
|
67861
|
-
:where(.theme-scope)
|
|
67862
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67863
|
-
.er-whole-series-payment-tile {
|
|
67864
|
-
border-radius: var(--rb-block-radius);
|
|
67865
|
-
border: 1px solid var(--er-payment-border);
|
|
67866
|
-
padding: 1rem;
|
|
67867
|
-
background: rgb(var(--tb-background));
|
|
67868
|
-
cursor: pointer;
|
|
67869
|
-
transition:
|
|
67870
|
-
border-color 0.15s ease,
|
|
67871
|
-
box-shadow 0.15s ease,
|
|
67872
|
-
background-color 0.15s ease;
|
|
67873
|
-
position: relative;
|
|
67874
|
-
}
|
|
67875
|
-
|
|
67876
|
-
:where(.theme-scope)
|
|
67877
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67878
|
-
.er-whole-series-payment-tile:hover {
|
|
67879
|
-
border-color: var(--er-payment-border-hover);
|
|
67880
|
-
}
|
|
67881
|
-
|
|
67882
|
-
:where(.theme-scope)
|
|
67883
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67884
|
-
.er-whole-series-payment-tile:focus-visible {
|
|
67885
|
-
outline: 2px solid var(--er-focus-ring);
|
|
67886
|
-
outline-offset: 2px;
|
|
67887
|
-
}
|
|
67888
|
-
|
|
67889
|
-
:where(.theme-scope)
|
|
67890
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67891
|
-
.er-whole-series-payment-tile--selected {
|
|
67892
|
-
border-color: var(--er-payment-border-selected);
|
|
67893
|
-
background: var(--er-payment-bg-selected);
|
|
67894
|
-
box-shadow: 0 0 0 3px var(--er-focus-ring);
|
|
67895
|
-
}
|
|
67896
|
-
|
|
67897
|
-
:where(.theme-scope)
|
|
67898
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67899
|
-
.er-whole-series-payment-tile--upsell {
|
|
67900
|
-
border-style: dashed;
|
|
67901
|
-
}
|
|
67902
|
-
|
|
67903
|
-
:where(.theme-scope)
|
|
67904
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67905
|
-
.er-whole-series-payment-tile__header {
|
|
67906
|
-
display: flex;
|
|
67907
|
-
align-items: flex-start;
|
|
67908
|
-
justify-content: space-between;
|
|
67909
|
-
gap: 0.5rem;
|
|
67910
|
-
}
|
|
67911
|
-
|
|
67912
|
-
:where(.theme-scope)
|
|
67913
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67914
|
-
.er-whole-series-payment-tile__name {
|
|
67915
|
-
margin: 0;
|
|
67916
|
-
font-weight: 600;
|
|
67917
|
-
font-size: 1rem;
|
|
67918
|
-
}
|
|
67919
|
-
|
|
67920
|
-
:where(.theme-scope)
|
|
67921
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67922
|
-
.er-whole-series-payment-tile__description {
|
|
67923
|
-
margin: 0.25rem 0 0 0;
|
|
67924
|
-
font-size: 0.875rem;
|
|
67925
|
-
opacity: 0.7;
|
|
67926
|
-
}
|
|
67927
|
-
|
|
67928
|
-
:where(.theme-scope)
|
|
67929
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67930
|
-
.er-whole-series-payment-tile__price {
|
|
67931
|
-
font-weight: 600;
|
|
67932
|
-
font-size: 0.875rem;
|
|
67933
|
-
white-space: nowrap;
|
|
67934
|
-
}
|
|
67935
|
-
|
|
67936
|
-
:where(.theme-scope)
|
|
67937
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67938
|
-
.er-whole-series-payment-tile__badge {
|
|
67939
|
-
display: inline-block;
|
|
67940
|
-
padding: 0.125rem 0.5rem;
|
|
67941
|
-
border-radius: 9999px;
|
|
67942
|
-
font-size: 0.75rem;
|
|
67943
|
-
font-weight: 500;
|
|
67944
|
-
margin-top: 0.5rem;
|
|
67945
|
-
}
|
|
67946
|
-
|
|
67947
|
-
/* Checkmark indicator on selected tile */
|
|
67948
|
-
:where(.theme-scope)
|
|
67949
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67950
|
-
.er-whole-series-payment-tile__check {
|
|
67951
|
-
position: absolute;
|
|
67952
|
-
top: 0.5rem;
|
|
67953
|
-
right: 0.5rem;
|
|
67954
|
-
width: 1.25rem;
|
|
67955
|
-
height: 1.25rem;
|
|
67956
|
-
border-radius: 9999px;
|
|
67957
|
-
background: var(--er-check-bg);
|
|
67958
|
-
color: var(--er-check-text);
|
|
67959
|
-
display: flex;
|
|
67960
|
-
align-items: center;
|
|
67961
|
-
justify-content: center;
|
|
67962
|
-
opacity: 0;
|
|
67963
|
-
transition: opacity 0.15s ease;
|
|
67964
|
-
}
|
|
67965
|
-
|
|
67966
|
-
:where(.theme-scope)
|
|
67967
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67968
|
-
.er-whole-series-payment-tile--selected
|
|
67969
|
-
.er-whole-series-payment-tile__check {
|
|
67970
|
-
opacity: 1;
|
|
67971
|
-
}
|
|
67972
|
-
|
|
67973
|
-
/* =============================================================================
|
|
67974
|
-
* Booking Mode Step
|
|
67975
|
-
* =============================================================================
|
|
67976
|
-
*/
|
|
67977
|
-
:where(.theme-scope)
|
|
67978
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67979
|
-
.er-whole-series-booking-mode {
|
|
67980
|
-
display: grid;
|
|
67981
|
-
gap: 1rem;
|
|
67982
|
-
}
|
|
67983
|
-
|
|
67984
|
-
:where(.theme-scope)
|
|
67985
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67986
|
-
.er-whole-series-booking-mode__title {
|
|
67987
|
-
margin: 0;
|
|
67988
|
-
font-size: var(--er-step-title-size);
|
|
67989
|
-
font-weight: 700;
|
|
67990
|
-
}
|
|
67991
|
-
|
|
67992
|
-
:where(.theme-scope)
|
|
67993
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67994
|
-
.er-whole-series-booking-mode__subtitle {
|
|
67995
|
-
margin: 0.25rem 0 0 0;
|
|
67996
|
-
opacity: 0.7;
|
|
67997
|
-
}
|
|
67998
|
-
|
|
67999
|
-
:where(.theme-scope)
|
|
68000
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68001
|
-
.er-whole-series-booking-mode__link {
|
|
68002
|
-
margin-top: 0.5rem;
|
|
68003
|
-
font-size: 0.875rem;
|
|
68004
|
-
}
|
|
68005
|
-
|
|
68006
|
-
:where(.theme-scope)
|
|
68007
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68008
|
-
.er-whole-series-booking-mode__link
|
|
68009
|
-
a {
|
|
68010
|
-
color: rgb(var(--tb-primary));
|
|
68011
|
-
text-decoration: underline;
|
|
68012
|
-
cursor: pointer;
|
|
68013
|
-
}
|
|
68014
|
-
|
|
68015
|
-
:where(.theme-scope)
|
|
68016
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68017
|
-
.er-whole-series-booking-mode__link
|
|
68018
|
-
a:hover {
|
|
68019
|
-
text-decoration: none;
|
|
68020
|
-
}
|
|
68021
|
-
|
|
68022
|
-
/* =============================================================================
|
|
68023
|
-
* Membership Hero
|
|
68024
|
-
* =============================================================================
|
|
68025
|
-
*/
|
|
68026
|
-
:where(.theme-scope)
|
|
68027
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68028
|
-
.er-whole-series-membership-hero {
|
|
68029
|
-
border-radius: var(--rb-block-radius);
|
|
68030
|
-
background: var(--er-success-bg);
|
|
68031
|
-
border: 1px solid rgba(var(--tb-success), 0.2);
|
|
68032
|
-
padding: 1.5rem;
|
|
68033
|
-
text-align: center;
|
|
68034
|
-
}
|
|
68035
|
-
|
|
68036
|
-
:where(.theme-scope)
|
|
68037
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68038
|
-
.er-whole-series-membership-hero__icon {
|
|
68039
|
-
font-size: 2rem;
|
|
68040
|
-
margin-bottom: 0.75rem;
|
|
68041
|
-
}
|
|
68042
|
-
|
|
68043
|
-
:where(.theme-scope)
|
|
68044
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68045
|
-
.er-whole-series-membership-hero__title {
|
|
68046
|
-
margin: 0;
|
|
68047
|
-
font-size: 1.25rem;
|
|
68048
|
-
font-weight: 700;
|
|
68049
|
-
color: var(--er-success-text);
|
|
68050
|
-
}
|
|
68051
|
-
|
|
68052
|
-
:where(.theme-scope)
|
|
68053
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68054
|
-
.er-whole-series-membership-hero__subtitle {
|
|
68055
|
-
margin: 0.25rem 0 0 0;
|
|
68056
|
-
font-size: 0.875rem;
|
|
68057
|
-
opacity: 0.8;
|
|
68058
|
-
}
|
|
68059
|
-
|
|
68060
|
-
/* =============================================================================
|
|
68061
|
-
* Portal Auth Sidebar
|
|
68062
|
-
* =============================================================================
|
|
68063
|
-
*/
|
|
68064
|
-
:where(.theme-scope)
|
|
68065
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68066
|
-
.er-whole-series-portal-sidebar {
|
|
68067
|
-
border-radius: var(--rb-block-radius);
|
|
68068
|
-
border: 1px solid var(--er-border);
|
|
68069
|
-
padding: 1.25rem;
|
|
68070
|
-
background: rgb(var(--tb-surface));
|
|
68071
|
-
color: var(--er-on-surface);
|
|
68072
|
-
}
|
|
68073
|
-
|
|
68074
|
-
:where(.theme-scope)
|
|
68075
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68076
|
-
.er-whole-series-portal-sidebar__icon {
|
|
68077
|
-
font-size: 1.5rem;
|
|
68078
|
-
margin-bottom: 0.5rem;
|
|
68079
|
-
}
|
|
68080
|
-
|
|
68081
|
-
:where(.theme-scope)
|
|
68082
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68083
|
-
.er-whole-series-portal-sidebar__title {
|
|
68084
|
-
margin: 0;
|
|
68085
|
-
font-size: 1rem;
|
|
68086
|
-
font-weight: 600;
|
|
68087
|
-
}
|
|
68088
|
-
|
|
68089
|
-
:where(.theme-scope)
|
|
68090
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68091
|
-
.er-whole-series-portal-sidebar__text {
|
|
68092
|
-
margin: 0.5rem 0 0 0;
|
|
68093
|
-
font-size: 0.875rem;
|
|
68094
|
-
opacity: 0.8;
|
|
68095
|
-
}
|
|
68096
|
-
|
|
68097
|
-
:where(.theme-scope)
|
|
68098
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68099
|
-
.er-whole-series-portal-sidebar__action {
|
|
68100
|
-
margin-top: 1rem;
|
|
68101
|
-
}
|
|
68102
|
-
|
|
68103
|
-
:where(.theme-scope)
|
|
68104
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68105
|
-
.er-whole-series-portal-sidebar__link {
|
|
68106
|
-
color: rgb(var(--tb-primary));
|
|
68107
|
-
cursor: pointer;
|
|
68108
|
-
text-decoration: underline;
|
|
68109
|
-
font-size: 0.875rem;
|
|
68110
|
-
}
|
|
68111
|
-
|
|
68112
|
-
:where(.theme-scope)
|
|
68113
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68114
|
-
.er-whole-series-portal-sidebar__link:hover {
|
|
68115
|
-
text-decoration: none;
|
|
68116
|
-
}
|
|
68117
|
-
|
|
68118
|
-
/* =============================================================================
|
|
68119
|
-
* Modal (for Magic Link)
|
|
68120
|
-
* =============================================================================
|
|
68121
|
-
*/
|
|
68122
|
-
:where(.theme-scope)
|
|
68123
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68124
|
-
.er-whole-series-modal-overlay {
|
|
68125
|
-
position: fixed;
|
|
68126
|
-
inset: 0;
|
|
68127
|
-
background: rgba(var(--tb-scrim), 0.5);
|
|
68128
|
-
display: flex;
|
|
68129
|
-
align-items: center;
|
|
68130
|
-
justify-content: center;
|
|
68131
|
-
z-index: 100;
|
|
68132
|
-
animation: er-whole-series-fade-in 0.15s ease;
|
|
68133
|
-
}
|
|
68134
|
-
|
|
68135
|
-
:where(.theme-scope)
|
|
68136
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68137
|
-
.er-whole-series-modal {
|
|
68138
|
-
background: rgb(var(--tb-surface));
|
|
68139
|
-
color: var(--er-on-surface);
|
|
68140
|
-
border-radius: var(--rb-block-radius);
|
|
68141
|
-
padding: 1.5rem;
|
|
68142
|
-
max-width: 28rem;
|
|
68143
|
-
width: calc(100% - 2rem);
|
|
68144
|
-
position: relative;
|
|
68145
|
-
animation: er-whole-series-slide-up 0.2s ease;
|
|
68146
|
-
}
|
|
68147
|
-
|
|
68148
|
-
:where(.theme-scope)
|
|
68149
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68150
|
-
.er-whole-series-modal-close {
|
|
68151
|
-
position: absolute;
|
|
68152
|
-
top: 0.75rem;
|
|
68153
|
-
right: 0.75rem;
|
|
68154
|
-
background: transparent;
|
|
68155
|
-
border: 0;
|
|
68156
|
-
padding: 0.25rem;
|
|
68157
|
-
cursor: pointer;
|
|
68158
|
-
opacity: 0.6;
|
|
68159
|
-
transition: opacity 0.15s ease;
|
|
68160
|
-
}
|
|
68161
|
-
|
|
68162
|
-
:where(.theme-scope)
|
|
68163
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68164
|
-
.er-whole-series-modal-close:hover {
|
|
68165
|
-
opacity: 1;
|
|
68166
|
-
}
|
|
68167
|
-
|
|
68168
|
-
@keyframes er-whole-series-fade-in {
|
|
68169
|
-
from {
|
|
68170
|
-
opacity: 0;
|
|
68171
|
-
}
|
|
68172
|
-
to {
|
|
68173
|
-
opacity: 1;
|
|
68174
|
-
}
|
|
68175
|
-
}
|
|
68176
|
-
|
|
68177
|
-
@keyframes er-whole-series-slide-up {
|
|
68178
|
-
from {
|
|
68179
|
-
opacity: 0;
|
|
68180
|
-
transform: translateY(10px);
|
|
68181
|
-
}
|
|
68182
|
-
to {
|
|
68183
|
-
opacity: 1;
|
|
68184
|
-
transform: translateY(0);
|
|
68185
|
-
}
|
|
68186
|
-
}
|
|
68187
|
-
|
|
68188
|
-
/* Reduced motion */
|
|
68189
|
-
@media (prefers-reduced-motion: reduce) {
|
|
68190
|
-
:where(.theme-scope)
|
|
68191
|
-
:where(
|
|
68192
|
-
[data-block='event-registration'],
|
|
68193
|
-
[data-block='course-registration']
|
|
68194
|
-
)
|
|
68195
|
-
.er-whole-series-modal-overlay,
|
|
68196
|
-
:where(.theme-scope)
|
|
68197
|
-
:where(
|
|
68198
|
-
[data-block='event-registration'],
|
|
68199
|
-
[data-block='course-registration']
|
|
68200
|
-
)
|
|
68201
|
-
.er-whole-series-modal {
|
|
68202
|
-
animation: none;
|
|
68203
|
-
}
|
|
68204
|
-
}
|
|
68205
|
-
|
|
68206
|
-
/* =============================================================================
|
|
68207
|
-
* Center States
|
|
68208
|
-
* =============================================================================
|
|
68209
|
-
*/
|
|
68210
|
-
:where(.theme-scope)
|
|
68211
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68212
|
-
.er-whole-series-center {
|
|
68213
|
-
display: grid;
|
|
68214
|
-
place-items: center;
|
|
68215
|
-
gap: 0.75rem;
|
|
68216
|
-
padding: 2rem 0;
|
|
68217
|
-
}
|
|
68218
|
-
|
|
68219
|
-
/* =============================================================================
|
|
68220
|
-
* Success/Waitlist/Error States
|
|
68221
|
-
* =============================================================================
|
|
68222
|
-
*/
|
|
68223
|
-
:where(.theme-scope)
|
|
68224
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68225
|
-
.er-whole-series-success,
|
|
68226
|
-
:where(.theme-scope)
|
|
68227
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68228
|
-
.er-whole-series-waitlist,
|
|
68229
|
-
:where(.theme-scope)
|
|
68230
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68231
|
-
.er-whole-series-error,
|
|
68232
|
-
:where(.theme-scope)
|
|
68233
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68234
|
-
.er-whole-series-payment-failed {
|
|
68235
|
-
text-align: center;
|
|
68236
|
-
padding: 2rem 1rem;
|
|
68237
|
-
}
|
|
68238
|
-
|
|
68239
|
-
/* State icon color variants (layout from registration-surface.css) */
|
|
68240
|
-
:where(.theme-scope)
|
|
68241
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68242
|
-
.rb-state-icon--success {
|
|
68243
|
-
background: var(--er-success-bg);
|
|
68244
|
-
color: var(--er-success-text);
|
|
68245
|
-
}
|
|
68246
|
-
|
|
68247
|
-
:where(.theme-scope)
|
|
68248
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68249
|
-
.rb-state-icon--error {
|
|
68250
|
-
background: var(--er-error-bg);
|
|
68251
|
-
color: var(--er-error-text);
|
|
68252
|
-
}
|
|
68253
|
-
|
|
68254
|
-
:where(.theme-scope)
|
|
68255
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68256
|
-
.rb-state-icon--waitlist,
|
|
68257
|
-
:where(.theme-scope)
|
|
68258
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68259
|
-
.rb-state-icon--warning {
|
|
68260
|
-
background: var(--er-waitlist-bg);
|
|
68261
|
-
color: var(--er-waitlist-text);
|
|
68262
|
-
}
|
|
68263
|
-
|
|
68264
|
-
:where(.theme-scope)
|
|
68265
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68266
|
-
.er-whole-series-success__title,
|
|
68267
|
-
:where(.theme-scope)
|
|
68268
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68269
|
-
.er-whole-series-waitlist__title,
|
|
68270
|
-
:where(.theme-scope)
|
|
68271
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68272
|
-
.er-whole-series-error__title,
|
|
68273
|
-
:where(.theme-scope)
|
|
68274
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68275
|
-
.er-whole-series-payment-failed__title {
|
|
68276
|
-
margin: 0.75rem 0 0.5rem 0;
|
|
68277
|
-
font-size: 1.125rem;
|
|
68278
|
-
font-weight: 700;
|
|
68279
|
-
}
|
|
68280
|
-
|
|
68281
|
-
:where(.theme-scope)
|
|
68282
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68283
|
-
.er-whole-series-success__message,
|
|
68284
|
-
:where(.theme-scope)
|
|
68285
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68286
|
-
.er-whole-series-waitlist__message,
|
|
68287
|
-
:where(.theme-scope)
|
|
68288
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68289
|
-
.er-whole-series-error__message,
|
|
68290
|
-
:where(.theme-scope)
|
|
68291
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68292
|
-
.er-whole-series-payment-failed__message {
|
|
68293
|
-
margin: 0;
|
|
68294
|
-
opacity: 0.7;
|
|
68295
|
-
}
|
|
68296
|
-
|
|
68297
|
-
:where(.theme-scope)
|
|
68298
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68299
|
-
.er-whole-series-success__membership {
|
|
68300
|
-
margin-top: 0.5rem;
|
|
68301
|
-
font-size: 0.875rem;
|
|
68302
|
-
color: var(--er-success-text);
|
|
68303
|
-
}
|
|
68304
|
-
|
|
68305
|
-
:where(.theme-scope)
|
|
68306
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68307
|
-
.er-whole-series-error__retry,
|
|
68308
|
-
:where(.theme-scope)
|
|
68309
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68310
|
-
.er-whole-series-payment-failed__retry {
|
|
68311
|
-
margin-top: 1rem;
|
|
68312
|
-
}
|
|
68313
|
-
|
|
68314
|
-
/* =============================================================================
|
|
68315
|
-
* Discount Code Section
|
|
68316
|
-
* =============================================================================
|
|
68317
|
-
*/
|
|
68318
|
-
:where(.theme-scope)
|
|
68319
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68320
|
-
.er-whole-series-discount {
|
|
68321
|
-
margin-top: 0.5rem;
|
|
68322
|
-
}
|
|
68323
|
-
|
|
68324
|
-
:where(.theme-scope)
|
|
68325
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68326
|
-
.er-whole-series-discount__form {
|
|
68327
|
-
display: grid;
|
|
68328
|
-
gap: 0.5rem;
|
|
68329
|
-
}
|
|
68330
|
-
|
|
68331
|
-
:where(.theme-scope)
|
|
68332
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68333
|
-
.er-whole-series-discount__toggle {
|
|
68334
|
-
background: transparent;
|
|
68335
|
-
border: 0;
|
|
68336
|
-
padding: 0;
|
|
68337
|
-
color: rgb(var(--tb-primary));
|
|
68338
|
-
cursor: pointer;
|
|
68339
|
-
font-size: 0.875rem;
|
|
68340
|
-
text-decoration: underline;
|
|
68341
|
-
}
|
|
68342
|
-
|
|
68343
|
-
:where(.theme-scope)
|
|
68344
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68345
|
-
.er-whole-series-discount__toggle:hover {
|
|
68346
|
-
text-decoration: none;
|
|
68347
|
-
}
|
|
68348
|
-
|
|
68349
|
-
:where(.theme-scope)
|
|
68350
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68351
|
-
.er-whole-series-discount__label {
|
|
68352
|
-
font-size: 0.875rem;
|
|
68353
|
-
font-weight: 600;
|
|
68354
|
-
}
|
|
68355
|
-
|
|
68356
|
-
:where(.theme-scope)
|
|
68357
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68358
|
-
.er-whole-series-discount__row {
|
|
68359
|
-
display: flex;
|
|
68360
|
-
gap: 0.5rem;
|
|
68361
|
-
}
|
|
68362
|
-
|
|
68363
|
-
:where(.theme-scope)
|
|
68364
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68365
|
-
.er-whole-series-discount__input {
|
|
68366
|
-
flex: 1;
|
|
68367
|
-
border-radius: calc(var(--rb-block-radius) * 0.6);
|
|
68368
|
-
border: 1px solid var(--er-border);
|
|
68369
|
-
padding: 0.5rem 0.75rem;
|
|
68370
|
-
background: rgb(var(--tb-background));
|
|
68371
|
-
color: rgb(var(--tb-foreground));
|
|
68372
|
-
font-size: 0.875rem;
|
|
68373
|
-
}
|
|
68374
|
-
|
|
68375
|
-
:where(.theme-scope)
|
|
68376
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68377
|
-
.er-whole-series-discount__input:focus {
|
|
68378
|
-
outline: 2px solid var(--er-focus-ring);
|
|
68379
|
-
outline-offset: 2px;
|
|
68380
|
-
}
|
|
68381
|
-
|
|
68382
|
-
:where(.theme-scope)
|
|
68383
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68384
|
-
.er-whole-series-discount__remove {
|
|
68385
|
-
background: transparent;
|
|
68386
|
-
border: 0;
|
|
68387
|
-
padding: 0.25rem;
|
|
68388
|
-
cursor: pointer;
|
|
68389
|
-
opacity: 0.6;
|
|
68390
|
-
}
|
|
68391
|
-
|
|
68392
|
-
:where(.theme-scope)
|
|
68393
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68394
|
-
.er-whole-series-discount__apply {
|
|
68395
|
-
background: transparent;
|
|
68396
|
-
border: 0;
|
|
68397
|
-
padding: 0.25rem;
|
|
68398
|
-
cursor: pointer;
|
|
68399
|
-
opacity: 0.8;
|
|
68400
|
-
}
|
|
68401
|
-
|
|
68402
|
-
:where(.theme-scope)
|
|
68403
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68404
|
-
.er-whole-series-discount__remove:hover {
|
|
68405
|
-
opacity: 1;
|
|
68406
|
-
}
|
|
68407
|
-
|
|
68408
|
-
:where(.theme-scope)
|
|
68409
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68410
|
-
.er-whole-series-discount__apply:hover {
|
|
68411
|
-
opacity: 1;
|
|
68412
|
-
}
|
|
68413
|
-
|
|
68414
|
-
:where(.theme-scope)
|
|
68415
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68416
|
-
.er-whole-series-discount__hint {
|
|
68417
|
-
margin: 0;
|
|
68418
|
-
font-size: 0.875rem;
|
|
68419
|
-
opacity: 0.7;
|
|
68420
|
-
}
|
|
68421
|
-
|
|
68422
|
-
:where(.theme-scope)
|
|
68423
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68424
|
-
.er-whole-series-discount__feedback {
|
|
68425
|
-
margin: 0;
|
|
68426
|
-
font-size: 0.875rem;
|
|
68427
|
-
}
|
|
68428
|
-
|
|
68429
|
-
/* =============================================================================
|
|
68430
|
-
* Altcha (Spam Protection)
|
|
68431
|
-
* =============================================================================
|
|
68432
|
-
*/
|
|
68433
|
-
:where(.theme-scope)
|
|
68434
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68435
|
-
.er-whole-series-altcha {
|
|
68436
|
-
margin-top: 1rem;
|
|
68437
|
-
}
|
|
68438
|
-
|
|
68439
|
-
/* =============================================================================
|
|
68440
|
-
* Magic Link Form
|
|
68441
|
-
* =============================================================================
|
|
68442
|
-
*/
|
|
68443
|
-
:where(.theme-scope)
|
|
68444
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68445
|
-
.er-whole-series-magic-link-form {
|
|
68446
|
-
display: flex;
|
|
68447
|
-
flex-direction: column;
|
|
68448
|
-
gap: 0.75rem;
|
|
68449
|
-
}
|
|
68450
|
-
|
|
68451
|
-
:where(.theme-scope)
|
|
68452
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68453
|
-
.er-whole-series-magic-link-title {
|
|
68454
|
-
margin: 0;
|
|
68455
|
-
font-size: 1.25rem;
|
|
68456
|
-
font-weight: 700;
|
|
68457
|
-
}
|
|
68458
|
-
|
|
68459
|
-
:where(.theme-scope)
|
|
68460
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68461
|
-
.er-whole-series-magic-link-success {
|
|
68462
|
-
display: flex;
|
|
68463
|
-
flex-direction: column;
|
|
68464
|
-
gap: 0.75rem;
|
|
68465
|
-
}
|
|
68466
|
-
|
|
68467
|
-
:where(.theme-scope)
|
|
68468
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68469
|
-
.er-whole-series-portal-auth-text {
|
|
68470
|
-
margin: 0;
|
|
68471
|
-
font-size: 0.875rem;
|
|
68472
|
-
opacity: 0.8;
|
|
68473
|
-
}
|
|
68474
|
-
|
|
68475
|
-
:where(.theme-scope)
|
|
68476
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68477
|
-
.er-whole-series-portal-auth-text--success {
|
|
68478
|
-
color: var(--er-success-text);
|
|
68479
|
-
}
|
|
68480
|
-
|
|
68481
|
-
:where(.theme-scope)
|
|
68482
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68483
|
-
.er-whole-series-portal-auth-text--error {
|
|
68484
|
-
color: var(--er-error-text);
|
|
68485
|
-
}
|
|
68486
|
-
|
|
68487
|
-
:where(.theme-scope)
|
|
68488
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68489
|
-
.er-whole-series-modal-btn {
|
|
68490
|
-
border-radius: calc(var(--rb-block-radius) * 0.6);
|
|
68491
|
-
border: 0;
|
|
68492
|
-
padding: 0.6rem 1rem;
|
|
68493
|
-
font-size: 0.875rem;
|
|
68494
|
-
font-weight: 600;
|
|
68495
|
-
cursor: pointer;
|
|
68496
|
-
transition: opacity 0.15s ease;
|
|
68497
|
-
background: rgb(var(--tb-primary));
|
|
68498
|
-
color: rgb(var(--tb-primaryText, 255 255 255));
|
|
68499
|
-
}
|
|
68500
|
-
|
|
68501
|
-
:where(.theme-scope)
|
|
68502
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68503
|
-
.er-whole-series-modal-btn:hover {
|
|
68504
|
-
opacity: 0.9;
|
|
68505
|
-
}
|
|
68506
|
-
|
|
68507
|
-
:where(.theme-scope)
|
|
68508
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68509
|
-
.er-whole-series-modal-btn:disabled {
|
|
68510
|
-
opacity: 0.5;
|
|
68511
|
-
cursor: not-allowed;
|
|
68512
|
-
}
|
|
68513
|
-
|
|
68514
|
-
:where(.theme-scope)
|
|
68515
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68516
|
-
.er-whole-series-modal-btn--secondary {
|
|
68517
|
-
background: transparent;
|
|
68518
|
-
color: var(--er-on-surface);
|
|
68519
|
-
border: 1px solid var(--er-border);
|
|
68520
|
-
}
|
|
68521
|
-
|
|
68522
|
-
:where(.theme-scope)
|
|
68523
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68524
|
-
.er-whole-series-modal-btn--secondary:hover {
|
|
68525
|
-
background: var(--er-on-surface-hover-bg);
|
|
68526
|
-
}
|
|
68527
|
-
|
|
68528
|
-
/* =============================================================================
|
|
68529
|
-
* Utility Classes
|
|
68530
|
-
* =============================================================================
|
|
68531
|
-
*/
|
|
68532
|
-
:where(.theme-scope)
|
|
68533
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68534
|
-
.er-whole-series-text--muted {
|
|
68535
|
-
opacity: 0.7;
|
|
68536
|
-
}
|
|
68537
|
-
|
|
68538
|
-
:where(.theme-scope)
|
|
68539
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68540
|
-
.er-whole-series-text--error {
|
|
68541
|
-
color: var(--er-error-text);
|
|
68542
|
-
}
|
|
68543
|
-
|
|
68544
|
-
:where(.theme-scope)
|
|
68545
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68546
|
-
.er-whole-series-text--success {
|
|
68547
|
-
color: var(--er-success-text);
|
|
68548
|
-
}
|
|
68549
|
-
|
|
68550
|
-
:where(.theme-scope)
|
|
68551
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68552
|
-
.er-whole-series-sr-only {
|
|
68553
|
-
position: absolute;
|
|
68554
|
-
width: 1px;
|
|
68555
|
-
height: 1px;
|
|
68556
|
-
padding: 0;
|
|
68557
|
-
margin: -1px;
|
|
68558
|
-
overflow: hidden;
|
|
68559
|
-
clip: rect(0, 0, 0, 0);
|
|
68560
|
-
white-space: nowrap;
|
|
68561
|
-
border-width: 0;
|
|
68562
|
-
}
|
|
68563
|
-
|
|
68564
|
-
/* Stack utility */
|
|
68565
|
-
:where(.theme-scope)
|
|
68566
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68567
|
-
.er-whole-series-stack {
|
|
68568
|
-
display: flex;
|
|
68569
|
-
flex-direction: column;
|
|
68570
|
-
}
|
|
68571
|
-
|
|
68572
|
-
:where(.theme-scope)
|
|
68573
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68574
|
-
.er-whole-series-stack--gap-sm {
|
|
68575
|
-
gap: 0.5rem;
|
|
68576
|
-
}
|
|
68577
|
-
|
|
68578
|
-
:where(.theme-scope)
|
|
68579
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68580
|
-
.er-whole-series-stack--gap-md {
|
|
68581
|
-
gap: 1rem;
|
|
68582
|
-
}
|
|
68583
|
-
|
|
68584
|
-
:where(.theme-scope)
|
|
68585
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68586
|
-
.er-whole-series-stack--gap-lg {
|
|
68587
|
-
gap: 1.5rem;
|
|
68588
|
-
}
|
|
68589
|
-
|
|
68590
|
-
/* =============================================================================
|
|
68591
|
-
* Block: Newsletter Signup
|
|
68592
|
-
* =============================================================================
|
|
68593
|
-
*/
|
|
68594
|
-
|
|
68595
|
-
/* Newsletter copy styling */
|
|
68596
|
-
:where(.theme-scope) :where([data-block="newsletter-signup"]) .newsletter-copy-title {
|
|
68597
|
-
font-size: 1.5rem;
|
|
68598
|
-
font-weight: 600;
|
|
68599
|
-
}
|
|
68600
|
-
|
|
68601
|
-
:where(.theme-scope) :where([data-block="newsletter-signup"]) .newsletter-copy-subtitle {
|
|
68602
|
-
font-size: 1rem;
|
|
68603
|
-
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
68604
|
-
opacity: 0.85;
|
|
68605
|
-
}
|
|
68606
|
-
|
|
68607
|
-
/* Newsletter form container */
|
|
68608
|
-
:where(.theme-scope) .newsletter-form {
|
|
68609
|
-
width: 100%;
|
|
68610
|
-
max-width: 32rem;
|
|
68611
|
-
margin-left: auto;
|
|
68612
|
-
margin-right: auto;
|
|
68613
|
-
}
|
|
68614
|
-
|
|
68615
|
-
/* Newsletter form fields container */
|
|
68616
|
-
:where(.theme-scope) .newsletter-form-fields {
|
|
68617
|
-
display: flex;
|
|
68618
|
-
flex-direction: column;
|
|
68619
|
-
gap: var(--rb-gap-sm, 0.75rem);
|
|
68620
|
-
}
|
|
68621
|
-
|
|
68622
|
-
/* Individual field styling */
|
|
68623
|
-
:where(.theme-scope) .newsletter-field {
|
|
68624
|
-
display: flex;
|
|
68625
|
-
flex-direction: column;
|
|
68626
|
-
gap: 0.25rem;
|
|
68627
|
-
}
|
|
68628
|
-
|
|
68629
|
-
/* Required indicator */
|
|
68630
|
-
:where(.theme-scope) .newsletter-required {
|
|
68631
|
-
color: rgb(var(--tb-primary));
|
|
68632
|
-
margin-left: 0.125rem;
|
|
68633
|
-
}
|
|
68634
|
-
|
|
68635
|
-
/* Submit button container */
|
|
68636
|
-
:where(.theme-scope) .newsletter-submit {
|
|
68637
|
-
margin-top: 0.5rem;
|
|
68638
|
-
}
|
|
68639
|
-
|
|
68640
|
-
/* ALTCHA widget container */
|
|
68641
|
-
:where(.theme-scope) .newsletter-altcha {
|
|
68642
|
-
margin-top: 0.75rem;
|
|
68643
|
-
display: flex;
|
|
68644
|
-
justify-content: center;
|
|
68645
|
-
}
|
|
68646
|
-
|
|
68647
|
-
/* Privacy note */
|
|
68648
|
-
:where(.theme-scope) .newsletter-privacy-note {
|
|
68649
|
-
margin-top: 0.75rem;
|
|
68650
|
-
font-size: 1rem;
|
|
68651
|
-
line-height: 1.6;
|
|
68652
|
-
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
68653
|
-
text-align: center;
|
|
68654
|
-
}
|
|
68655
|
-
|
|
68656
|
-
/* =============================================================================
|
|
68657
|
-
* Inline Variant - Horizontal layout
|
|
68658
|
-
* =============================================================================
|
|
68659
|
-
*/
|
|
68660
|
-
|
|
68661
|
-
:where(.theme-scope) .newsletter-inline .newsletter-form-fields {
|
|
68662
|
-
flex-direction: row;
|
|
68663
|
-
align-items: flex-end;
|
|
68664
|
-
flex-wrap: wrap;
|
|
68665
|
-
gap: var(--rb-gap-sm, 0.75rem);
|
|
68666
|
-
}
|
|
68667
|
-
|
|
68668
|
-
:where(.theme-scope) .newsletter-inline .newsletter-field {
|
|
68669
|
-
flex: 1 1 auto;
|
|
68670
|
-
min-width: 10rem;
|
|
68671
|
-
}
|
|
68672
|
-
|
|
68673
|
-
:where(.theme-scope) .newsletter-inline .newsletter-submit {
|
|
68674
|
-
margin-top: 0;
|
|
68675
|
-
flex-shrink: 0;
|
|
68676
|
-
}
|
|
68677
|
-
|
|
68678
|
-
/* Mobile fallback for inline variant */
|
|
68679
|
-
@container rb-site (max-width: 640px) {
|
|
68680
|
-
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
68681
|
-
:where(.theme-scope) .newsletter-inline .newsletter-form-fields {
|
|
68682
|
-
flex-direction: column;
|
|
68683
|
-
}
|
|
68684
|
-
|
|
68685
|
-
:where(.theme-scope) .newsletter-inline .newsletter-field {
|
|
68686
|
-
min-width: 100%;
|
|
68687
|
-
}
|
|
68688
|
-
}
|
|
68689
|
-
}
|
|
68690
|
-
|
|
68691
|
-
/* =============================================================================
|
|
68692
|
-
* Editorial Split Variant
|
|
68693
|
-
* =============================================================================
|
|
68694
|
-
*/
|
|
68695
|
-
|
|
68696
|
-
:where(.theme-scope) .newsletter-editorial-split {
|
|
68697
|
-
display: grid;
|
|
68698
|
-
grid-template-columns: minmax(0, 0.9fr) minmax(20rem, 1.1fr);
|
|
68699
|
-
gap: clamp(2.5rem, 7vw, 7rem);
|
|
68700
|
-
align-items: center;
|
|
68701
|
-
text-align: left;
|
|
68702
|
-
}
|
|
68703
|
-
|
|
68704
|
-
:where(.theme-scope) .newsletter-editorial-split-copy {
|
|
68705
|
-
display: flex;
|
|
68706
|
-
flex-direction: column;
|
|
68707
|
-
gap: var(--rb-gap-sm, 0.75rem);
|
|
68708
|
-
}
|
|
68709
|
-
|
|
68710
|
-
:where(.theme-scope) .newsletter-editorial-split-form {
|
|
68711
|
-
min-width: 0;
|
|
68712
|
-
}
|
|
68713
|
-
|
|
68714
|
-
:where(.theme-scope) .newsletter-editorial-split .newsletter-form {
|
|
68715
|
-
max-width: none;
|
|
68716
|
-
margin-inline: 0;
|
|
68717
|
-
}
|
|
68718
|
-
|
|
68719
|
-
:where(.theme-scope) .newsletter-editorial-split .newsletter-copy-title {
|
|
68720
|
-
font-size: clamp(2rem, 4vw, 3.5rem);
|
|
68721
|
-
font-weight: 500;
|
|
68722
|
-
}
|
|
68723
|
-
|
|
68724
|
-
:where(.theme-scope) .newsletter-editorial-split .newsletter-privacy-note {
|
|
68725
|
-
text-align: left;
|
|
68726
|
-
}
|
|
68727
|
-
|
|
68728
|
-
@container rb-site (max-width: 767px) {
|
|
68729
|
-
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
68730
|
-
:where(.theme-scope) .newsletter-editorial-split {
|
|
68731
|
-
grid-template-columns: minmax(0, 1fr);
|
|
68732
|
-
gap: 2rem;
|
|
68733
|
-
}
|
|
68734
|
-
}
|
|
68735
|
-
}
|
|
68736
|
-
|
|
68737
|
-
/* =============================================================================
|
|
68738
|
-
* Success State
|
|
68739
|
-
* =============================================================================
|
|
68740
|
-
*/
|
|
68741
|
-
|
|
68742
|
-
:where(.theme-scope) .newsletter-success {
|
|
68743
|
-
text-align: center;
|
|
68744
|
-
}
|
|
68745
|
-
|
|
68746
|
-
:where(.theme-scope) .newsletter-success .fb-success {
|
|
68747
|
-
padding: 1rem 1.5rem;
|
|
68748
|
-
background-color: rgba(var(--tb-success, 34 197 94), 0.1);
|
|
68749
|
-
border-radius: var(--radius-md, 0.5rem);
|
|
68750
|
-
color: rgb(var(--tb-text));
|
|
68751
|
-
}
|
|
68752
|
-
|
|
68753
|
-
/* =============================================================================
|
|
68754
|
-
* Block: Contact + Newsletter
|
|
68755
|
-
* =============================================================================
|
|
68756
|
-
*/
|
|
68757
|
-
|
|
68758
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-grid {
|
|
68759
|
-
display: grid;
|
|
68760
|
-
grid-template-columns: repeat(auto-fit, minmax(min(24rem, 100%), 1fr));
|
|
68761
|
-
gap: clamp(2.5rem, 6vw, 4rem);
|
|
68762
|
-
align-items: start;
|
|
68763
|
-
}
|
|
68764
|
-
|
|
68765
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-column {
|
|
68766
|
-
min-width: 0;
|
|
68767
|
-
}
|
|
68768
|
-
|
|
68769
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-copy {
|
|
68770
|
-
margin-bottom: 1.5rem;
|
|
68771
|
-
}
|
|
68772
|
-
|
|
68773
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .form-copy-title,
|
|
68774
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-copy-title {
|
|
68775
|
-
margin: 0 0 0.75rem;
|
|
68776
|
-
}
|
|
68777
|
-
|
|
68778
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .form-copy-intro,
|
|
68779
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-copy-subtitle {
|
|
68780
|
-
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
68781
|
-
}
|
|
68782
|
-
|
|
68783
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-info {
|
|
68784
|
-
display: flex;
|
|
68785
|
-
flex-direction: column;
|
|
68786
|
-
align-items: flex-start;
|
|
68787
|
-
}
|
|
68788
|
-
|
|
68789
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-form {
|
|
68790
|
-
max-width: none;
|
|
68791
|
-
margin-left: 0;
|
|
68792
|
-
margin-right: 0;
|
|
68793
|
-
}
|
|
68794
|
-
|
|
68795
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-privacy-note {
|
|
68796
|
-
text-align: left;
|
|
68797
|
-
}
|
|
68798
|
-
|
|
68799
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-form {
|
|
68800
|
-
display: flex;
|
|
68801
|
-
flex-direction: column;
|
|
68802
|
-
gap: 1rem;
|
|
68803
|
-
}
|
|
68804
|
-
|
|
68805
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-row-2 {
|
|
68806
|
-
display: grid;
|
|
68807
|
-
grid-template-columns: repeat(auto-fit, minmax(min(14rem, 100%), 1fr));
|
|
68808
|
-
gap: 1rem;
|
|
68809
|
-
}
|
|
68810
|
-
|
|
68811
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-field {
|
|
68812
|
-
display: flex;
|
|
68813
|
-
flex-direction: column;
|
|
68814
|
-
gap: 0.25rem;
|
|
68815
|
-
}
|
|
68816
|
-
|
|
68817
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-fieldset {
|
|
68818
|
-
display: flex;
|
|
68819
|
-
flex-direction: column;
|
|
68820
|
-
gap: 0.5rem;
|
|
68821
|
-
border: none;
|
|
68822
|
-
padding: 0;
|
|
68823
|
-
margin: 0;
|
|
68824
|
-
}
|
|
68825
|
-
|
|
68826
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-inline {
|
|
68827
|
-
display: flex;
|
|
68828
|
-
align-items: center;
|
|
68829
|
-
gap: 0.5rem;
|
|
68830
|
-
}
|
|
68831
|
-
|
|
68832
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-success,
|
|
68833
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-error,
|
|
68834
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-empty {
|
|
68835
|
-
border-radius: var(--rb-block-radius);
|
|
68836
|
-
padding: 1rem;
|
|
68837
|
-
font-size: 0.875rem;
|
|
68838
|
-
}
|
|
68839
|
-
|
|
68840
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-success {
|
|
68841
|
-
background-color: var(--fb-success-bg);
|
|
68842
|
-
color: var(--fb-success-text);
|
|
68843
|
-
border: 1px solid var(--fb-success-border);
|
|
68844
|
-
}
|
|
68845
|
-
|
|
68846
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-error {
|
|
68847
|
-
background-color: var(--fb-error-bg);
|
|
68848
|
-
color: var(--fb-error-text);
|
|
68849
|
-
border: 1px solid var(--fb-error-border);
|
|
68850
|
-
}
|
|
68851
|
-
|
|
68852
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-empty {
|
|
68853
|
-
background-color: var(--fb-empty-bg);
|
|
68854
|
-
color: var(--fb-empty-text);
|
|
68855
|
-
border: 1px dashed var(--fb-empty-border);
|
|
68856
|
-
text-align: center;
|
|
68857
|
-
}
|
|
68858
|
-
|
|
68859
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-actions {
|
|
68860
|
-
margin-top: 0.5rem;
|
|
68861
|
-
}
|
|
68862
|
-
|
|
68863
|
-
/* =============================================================================
|
|
68864
|
-
* Block: Team Members
|
|
68865
|
-
* =============================================================================
|
|
68866
|
-
*
|
|
68867
|
-
* Site/theme authors sometimes need different thumbnail shapes/sizes without
|
|
68868
|
-
* changing global fragment defaults. We expose these controls on the block and
|
|
68869
|
-
* style them via data attributes on the \`.rb-team-members\` wrapper.
|
|
68870
|
-
*/
|
|
68871
|
-
|
|
68872
|
-
/* Scope all block-static CSS to ThemeScope to avoid leaking into host apps/dashboard. */
|
|
68873
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-align="left"]) {
|
|
68874
|
-
text-align: left;
|
|
68875
|
-
}
|
|
68876
|
-
|
|
68877
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-align="left"]) :where(.rb-team-member) {
|
|
68878
|
-
align-items: flex-start;
|
|
68879
|
-
text-align: left;
|
|
68880
|
-
}
|
|
68881
|
-
|
|
68882
|
-
@container rb-site (min-width: 1024px) {
|
|
68883
|
-
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
68884
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-width="lg-3-4-left"]) {
|
|
68885
|
-
width: 75%;
|
|
68886
|
-
margin-left: 0;
|
|
68887
|
-
margin-right: auto;
|
|
68888
|
-
}
|
|
68889
|
-
}
|
|
68890
|
-
}
|
|
68891
|
-
|
|
68892
|
-
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-photo {
|
|
68893
|
-
display: block;
|
|
68894
|
-
width: 100%;
|
|
68895
|
-
height: auto;
|
|
68896
|
-
}
|
|
68897
|
-
|
|
68898
|
-
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-role {
|
|
68899
|
-
font-weight: 600;
|
|
68900
|
-
}
|
|
68901
|
-
|
|
68902
|
-
/* Thumbnail sizing: map \`data-image-col-size\` to a sensible max thumbnail width. */
|
|
68903
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members) {
|
|
68904
|
-
--rb-team-thumb-max: 11.25rem; /* ~180px default */
|
|
68905
|
-
--rb-team-image-basis: 33.333%;
|
|
68906
|
-
}
|
|
68907
|
-
|
|
68908
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/4"]) {
|
|
68909
|
-
--rb-team-thumb-max: 8.75rem; /* ~140px */
|
|
68910
|
-
--rb-team-image-basis: 25%;
|
|
68911
|
-
}
|
|
68912
|
-
|
|
68913
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/3"]) {
|
|
68914
|
-
--rb-team-thumb-max: 11.25rem; /* ~180px */
|
|
68915
|
-
--rb-team-image-basis: 33.333%;
|
|
68916
|
-
}
|
|
68917
|
-
|
|
68918
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="2/5"]) {
|
|
68919
|
-
--rb-team-thumb-max: 13.75rem; /* ~220px */
|
|
68920
|
-
--rb-team-image-basis: 40%;
|
|
68921
|
-
}
|
|
68922
|
-
|
|
68923
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/2"]) {
|
|
68924
|
-
--rb-team-thumb-max: 17.5rem; /* ~280px */
|
|
68925
|
-
--rb-team-image-basis: 50%;
|
|
68926
|
-
}
|
|
68927
|
-
|
|
68928
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="2/3"]) {
|
|
68929
|
-
--rb-team-thumb-max: 22.5rem; /* ~360px */
|
|
68930
|
-
--rb-team-image-basis: 66.667%;
|
|
68931
|
-
}
|
|
68932
|
-
|
|
68933
|
-
/* The wrap is the shape/padding boundary; ensure it expands within the grid cell. */
|
|
68934
|
-
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-photo-wrap {
|
|
68935
|
-
width: 100%;
|
|
68936
|
-
overflow: hidden;
|
|
68937
|
-
}
|
|
68938
|
-
|
|
68939
|
-
/* In grid mode, cap thumbnail width so headshots don't dominate the card. */
|
|
68940
|
-
:where(.theme-scope) :where([data-block="team-members"][data-block-variant="grid"]) :where(.rb-team-member-photo-wrap) {
|
|
68941
|
-
max-width: var(--rb-team-thumb-max);
|
|
68942
|
-
}
|
|
68943
|
-
|
|
68944
|
-
:where(.theme-scope) :where([data-block="team-members"][data-block-variant="grid"]) :where(.rb-team-members[data-layout-align="center"]) :where(.rb-team-member-photo-wrap) {
|
|
68945
|
-
margin-left: auto;
|
|
68946
|
-
margin-right: auto;
|
|
66682
|
+
:where(.theme-scope) :where([data-block="team-members"][data-block-variant="grid"]) :where(.rb-team-members[data-layout-align="center"]) :where(.rb-team-member-photo-wrap) {
|
|
66683
|
+
margin-left: auto;
|
|
66684
|
+
margin-right: auto;
|
|
68947
66685
|
}
|
|
68948
66686
|
|
|
68949
66687
|
/* Stack variant: always left-aligned, regardless of the block alignment field. */
|
|
@@ -73945,69 +71683,8 @@ const ACCOUNT_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
73945
71683
|
}
|
|
73946
71684
|
});
|
|
73947
71685
|
//#endregion
|
|
73948
|
-
//#region ../api/src/
|
|
73949
|
-
const
|
|
73950
|
-
listCourses: {
|
|
73951
|
-
path: "/sites/{siteId}/bookings/courses",
|
|
73952
|
-
method: "GET",
|
|
73953
|
-
auth: "user",
|
|
73954
|
-
responseKind: "json"
|
|
73955
|
-
},
|
|
73956
|
-
exportCoursesCsv: {
|
|
73957
|
-
path: "/sites/{siteId}/bookings/courses/export.csv",
|
|
73958
|
-
method: "GET",
|
|
73959
|
-
tags: [
|
|
73960
|
-
"site-{siteId}",
|
|
73961
|
-
"bookings",
|
|
73962
|
-
"courses-{siteId}"
|
|
73963
|
-
],
|
|
73964
|
-
errors: [],
|
|
73965
|
-
auth: "user",
|
|
73966
|
-
responseKind: "blob"
|
|
73967
|
-
},
|
|
73968
|
-
createCourse: {
|
|
73969
|
-
path: "/sites/{siteId}/bookings/courses",
|
|
73970
|
-
method: "POST",
|
|
73971
|
-
auth: "user",
|
|
73972
|
-
responseKind: "json",
|
|
73973
|
-
errors: [
|
|
73974
|
-
"validation:invalid_input",
|
|
73975
|
-
"resource:not_found",
|
|
73976
|
-
"resource:already_exists",
|
|
73977
|
-
"resource:conflict",
|
|
73978
|
-
"server:internal_error"
|
|
73979
|
-
]
|
|
73980
|
-
},
|
|
73981
|
-
getCourse: {
|
|
73982
|
-
path: "/sites/{siteId}/bookings/courses/{courseId}",
|
|
73983
|
-
method: "GET",
|
|
73984
|
-
auth: "user",
|
|
73985
|
-
responseKind: "json"
|
|
73986
|
-
},
|
|
73987
|
-
updateCourse: {
|
|
73988
|
-
path: "/sites/{siteId}/bookings/courses/{courseId}",
|
|
73989
|
-
method: "PATCH",
|
|
73990
|
-
auth: "user",
|
|
73991
|
-
responseKind: "json",
|
|
73992
|
-
errors: [
|
|
73993
|
-
"validation:invalid_input",
|
|
73994
|
-
"resource:not_found",
|
|
73995
|
-
"resource:conflict",
|
|
73996
|
-
"server:internal_error"
|
|
73997
|
-
]
|
|
73998
|
-
},
|
|
73999
|
-
deleteCourse: {
|
|
74000
|
-
path: "/sites/{siteId}/bookings/courses/{courseId}",
|
|
74001
|
-
method: "DELETE",
|
|
74002
|
-
auth: "user",
|
|
74003
|
-
responseKind: "json",
|
|
74004
|
-
errors: [
|
|
74005
|
-
"validation:invalid_input",
|
|
74006
|
-
"resource:not_found",
|
|
74007
|
-
"resource:conflict",
|
|
74008
|
-
"server:internal_error"
|
|
74009
|
-
]
|
|
74010
|
-
},
|
|
71686
|
+
//#region ../api/src/eventSeriesRegistrationEndpointDefinitions.ts
|
|
71687
|
+
const EVENT_SERIES_REGISTRATION_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
74011
71688
|
deleteEventOffering: {
|
|
74012
71689
|
path: "/sites/{siteId}/bookings/event-offerings/{eventOfferingId}",
|
|
74013
71690
|
method: "DELETE",
|
|
@@ -74020,20 +71697,8 @@ const COURSE_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
74020
71697
|
"server:internal_error"
|
|
74021
71698
|
]
|
|
74022
71699
|
},
|
|
74023
|
-
|
|
74024
|
-
path: "/sites/{siteId}/bookings/
|
|
74025
|
-
method: "POST",
|
|
74026
|
-
auth: "user",
|
|
74027
|
-
responseKind: "json",
|
|
74028
|
-
errors: [
|
|
74029
|
-
"validation:invalid_input",
|
|
74030
|
-
"resource:not_found",
|
|
74031
|
-
"resource:already_exists",
|
|
74032
|
-
"server:internal_error"
|
|
74033
|
-
]
|
|
74034
|
-
},
|
|
74035
|
-
changeCourseContentOwnership: {
|
|
74036
|
-
path: "/sites/{siteId}/bookings/courses/{courseId}/content-ownership",
|
|
71700
|
+
changeEventSeriesContentOwnership: {
|
|
71701
|
+
path: "/sites/{siteId}/bookings/event-series/{seriesId}/content-ownership",
|
|
74037
71702
|
method: "POST",
|
|
74038
71703
|
auth: "user",
|
|
74039
71704
|
responseKind: "json",
|
|
@@ -74044,8 +71709,8 @@ const COURSE_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
74044
71709
|
"server:internal_error"
|
|
74045
71710
|
]
|
|
74046
71711
|
},
|
|
74047
|
-
|
|
74048
|
-
path: "/sites/{siteId}/bookings/
|
|
71712
|
+
addEventSeriesRegistration: {
|
|
71713
|
+
path: "/sites/{siteId}/bookings/event-series/{seriesId}/registrations",
|
|
74049
71714
|
method: "POST",
|
|
74050
71715
|
auth: "user",
|
|
74051
71716
|
responseKind: "json",
|
|
@@ -74056,33 +71721,21 @@ const COURSE_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
74056
71721
|
"server:internal_error"
|
|
74057
71722
|
]
|
|
74058
71723
|
},
|
|
74059
|
-
|
|
74060
|
-
path: "/sites/{siteId}/bookings/
|
|
71724
|
+
listEventSeriesRegistrations: {
|
|
71725
|
+
path: "/sites/{siteId}/bookings/event-series/{seriesId}/registrations",
|
|
74061
71726
|
method: "GET",
|
|
74062
71727
|
auth: "user",
|
|
74063
71728
|
responseKind: "json"
|
|
74064
71729
|
},
|
|
74065
|
-
|
|
74066
|
-
path: "/sites/{siteId}/bookings/
|
|
71730
|
+
exportEventSeriesRegistrationsCsv: {
|
|
71731
|
+
path: "/sites/{siteId}/bookings/event-series/{seriesId}/registrations/export.csv",
|
|
74067
71732
|
method: "GET",
|
|
74068
71733
|
auth: "user",
|
|
74069
71734
|
errors: [],
|
|
74070
71735
|
responseKind: "blob"
|
|
74071
71736
|
},
|
|
74072
|
-
|
|
74073
|
-
path: "/sites/{siteId}/bookings/
|
|
74074
|
-
method: "GET",
|
|
74075
|
-
tags: [
|
|
74076
|
-
"site-{siteId}",
|
|
74077
|
-
"bookings",
|
|
74078
|
-
"courses-{courseId}"
|
|
74079
|
-
],
|
|
74080
|
-
auth: "user",
|
|
74081
|
-
responseKind: "blob",
|
|
74082
|
-
errors: []
|
|
74083
|
-
},
|
|
74084
|
-
updateCourseEnrollment: {
|
|
74085
|
-
path: "/sites/{siteId}/bookings/courses/{courseId}/enrollments/{enrollmentId}",
|
|
71737
|
+
updateEventSeriesRegistration: {
|
|
71738
|
+
path: "/sites/{siteId}/bookings/event-series/{seriesId}/registrations/{registrationId}",
|
|
74086
71739
|
method: "PATCH",
|
|
74087
71740
|
auth: "user",
|
|
74088
71741
|
responseKind: "json",
|
|
@@ -74470,71 +72123,35 @@ const PUBLIC_WHOLE_SERIES_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
74470
72123
|
errors: ["resource:not_found", "server:internal_error"],
|
|
74471
72124
|
auth: "public",
|
|
74472
72125
|
responseKind: "json"
|
|
74473
|
-
}
|
|
74474
|
-
|
|
74475
|
-
|
|
74476
|
-
|
|
74477
|
-
|
|
74478
|
-
|
|
74479
|
-
|
|
74480
|
-
"auth:forbidden",
|
|
74481
|
-
"validation:invalid_input",
|
|
74482
|
-
"resource:not_found",
|
|
74483
|
-
"resource:conflict",
|
|
74484
|
-
"resource:already_exists",
|
|
74485
|
-
"server:internal_error"
|
|
74486
|
-
],
|
|
74487
|
-
auth: "public",
|
|
74488
|
-
responseKind: "json"
|
|
74489
|
-
},
|
|
74490
|
-
checkWholeSeriesEligibility: {
|
|
74491
|
-
path: "/public/sites/{siteId}/dated-offerings/whole-series/check-eligibility",
|
|
74492
|
-
method: "POST",
|
|
74493
|
-
tags: [TAG_TEMPLATES.publicWholeSeriesOfferings, "course-enrollment"],
|
|
74494
|
-
errors: [
|
|
74495
|
-
"auth:unauthenticated",
|
|
74496
|
-
"resource:not_found",
|
|
74497
|
-
"resource:conflict",
|
|
74498
|
-
"server:internal_error"
|
|
74499
|
-
],
|
|
74500
|
-
auth: "public",
|
|
74501
|
-
responseKind: "json"
|
|
74502
|
-
},
|
|
74503
|
-
createWholeSeriesCheckout: {
|
|
74504
|
-
path: "/public/sites/{siteId}/dated-offerings/whole-series/checkout",
|
|
72126
|
+
}
|
|
72127
|
+
});
|
|
72128
|
+
//#endregion
|
|
72129
|
+
//#region ../api/src/publicEventEndpointDefinitions.ts
|
|
72130
|
+
const PUBLIC_EVENT_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
72131
|
+
getPublicEventRegistrationOptions: {
|
|
72132
|
+
path: "/public/sites/{siteId}/events/registration-options",
|
|
74505
72133
|
method: "POST",
|
|
74506
|
-
tags: [TAG_TEMPLATES.
|
|
72134
|
+
tags: [TAG_TEMPLATES.publicEvents, "event-registration-options"],
|
|
74507
72135
|
auth: "public",
|
|
74508
72136
|
responseKind: "json",
|
|
74509
72137
|
errors: [
|
|
74510
|
-
"auth:unauthenticated",
|
|
74511
72138
|
"validation:invalid_input",
|
|
74512
72139
|
"resource:not_found",
|
|
74513
72140
|
"resource:conflict",
|
|
74514
72141
|
"server:internal_error"
|
|
74515
72142
|
]
|
|
74516
72143
|
},
|
|
74517
|
-
|
|
74518
|
-
path: "/public/sites/{siteId}/
|
|
72144
|
+
resolveEventSubroute: {
|
|
72145
|
+
path: "/public/sites/{siteId}/events/subroutes/resolve",
|
|
74519
72146
|
method: "GET",
|
|
74520
|
-
|
|
74521
|
-
|
|
72147
|
+
revalidate: 60,
|
|
72148
|
+
tags: [TAG_TEMPLATES.publicEvents, "event-subroute"],
|
|
74522
72149
|
auth: "public",
|
|
74523
|
-
responseKind: "json"
|
|
72150
|
+
responseKind: "json",
|
|
72151
|
+
errors: []
|
|
74524
72152
|
}
|
|
74525
72153
|
});
|
|
74526
72154
|
//#endregion
|
|
74527
|
-
//#region ../api/src/publicEventEndpointDefinitions.ts
|
|
74528
|
-
const PUBLIC_EVENT_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({ resolveEventSubroute: {
|
|
74529
|
-
path: "/public/sites/{siteId}/events/subroutes/resolve",
|
|
74530
|
-
method: "GET",
|
|
74531
|
-
revalidate: 60,
|
|
74532
|
-
tags: [TAG_TEMPLATES.publicEvents, "event-subroute"],
|
|
74533
|
-
auth: "public",
|
|
74534
|
-
responseKind: "json",
|
|
74535
|
-
errors: []
|
|
74536
|
-
} });
|
|
74537
|
-
//#endregion
|
|
74538
72155
|
//#region ../api/src/siteApiKeyEndpointDefinitions.ts
|
|
74539
72156
|
const SITE_API_KEY_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
74540
72157
|
listSiteApiKeys: {
|
|
@@ -74902,7 +72519,7 @@ const SDK_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
74902
72519
|
}), TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, { ...SITE_API_KEY_ENDPOINT_DEFINITIONS }, TAG_TEMPLATES.site, TAG_TEMPLATES.siteBookingSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteBookingSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, {
|
|
74903
72520
|
...NEWSLETTER_ENDPOINT_DEFINITIONS,
|
|
74904
72521
|
...APPOINTMENT_ENDPOINT_DEFINITIONS,
|
|
74905
|
-
...
|
|
72522
|
+
...EVENT_SERIES_REGISTRATION_ENDPOINT_DEFINITIONS
|
|
74906
72523
|
}, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteById, TAG_TEMPLATES.siteBySlug, TAG_TEMPLATES.siteByDomain, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteById, TAG_TEMPLATES.siteBySlug, TAG_TEMPLATES.siteByDomain, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.workflowRunById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.routeById, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.navigationItemById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.navigationItemById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRedirects, TAG_TEMPLATES.siteRouteOutcomes, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRedirects, TAG_TEMPLATES.siteRouteOutcomes, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.formById, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEventFilters, { ...PUBLIC_WHOLE_SERIES_ENDPOINT_DEFINITIONS }, TAG_TEMPLATES.publicTeamMembers, TAG_TEMPLATES.publicWholeSeriesOfferings, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicPasses, TAG_TEMPLATES.publicMemberships, TAG_TEMPLATES.publicProducts, TAG_TEMPLATES.publicShop, TAG_TEMPLATES.publicCheckout, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, { ...EVENT_MANAGEMENT_ENDPOINT_DEFINITIONS }, { ...SDK_ENDPOINT_DEFINITIONS }, { ...SDK_ENTRY_READ_ENDPOINTS };
|
|
74907
72524
|
z$1.object({ refreshToken: z$1.string().min(1).max(4096) }).strict();
|
|
74908
72525
|
z$1.object({
|
|
@@ -76048,6 +73665,68 @@ function stableSerialize(value) {
|
|
|
76048
73665
|
return JSON.stringify(value);
|
|
76049
73666
|
}
|
|
76050
73667
|
//#endregion
|
|
73668
|
+
//#region ../api/src/bookingPaymentTermSchemas.ts
|
|
73669
|
+
const bookingDepositRefundPolicySchema = z$1.enum(["refundable", "non_refundable"]);
|
|
73670
|
+
const bookingInstalmentPlanSchema = z$1.discriminatedUnion("kind", [
|
|
73671
|
+
z$1.object({
|
|
73672
|
+
kind: z$1.literal("deposit_plus_one_remainder"),
|
|
73673
|
+
depositAmountCents: z$1.number().int().nonnegative(),
|
|
73674
|
+
depositRefundability: bookingDepositRefundPolicySchema,
|
|
73675
|
+
remainderDueCount: z$1.number().int().positive(),
|
|
73676
|
+
intervalUnit: z$1.enum([
|
|
73677
|
+
"day",
|
|
73678
|
+
"week",
|
|
73679
|
+
"month"
|
|
73680
|
+
])
|
|
73681
|
+
}),
|
|
73682
|
+
z$1.object({
|
|
73683
|
+
kind: z$1.literal("deposit_plus_scheduled_instalments"),
|
|
73684
|
+
depositAmountCents: z$1.number().int().nonnegative(),
|
|
73685
|
+
depositRefundability: bookingDepositRefundPolicySchema,
|
|
73686
|
+
instalmentCount: z$1.number().int().positive(),
|
|
73687
|
+
intervalCount: z$1.number().int().positive(),
|
|
73688
|
+
intervalUnit: z$1.enum([
|
|
73689
|
+
"day",
|
|
73690
|
+
"week",
|
|
73691
|
+
"month"
|
|
73692
|
+
])
|
|
73693
|
+
}),
|
|
73694
|
+
z$1.object({
|
|
73695
|
+
kind: z$1.literal("equal_scheduled_instalments"),
|
|
73696
|
+
instalmentCount: z$1.number().int().positive(),
|
|
73697
|
+
intervalCount: z$1.number().int().positive(),
|
|
73698
|
+
intervalUnit: z$1.enum([
|
|
73699
|
+
"day",
|
|
73700
|
+
"week",
|
|
73701
|
+
"month"
|
|
73702
|
+
])
|
|
73703
|
+
})
|
|
73704
|
+
]);
|
|
73705
|
+
const bookingFlexibleBalanceDueDateRuleSchema = z$1.discriminatedUnion("kind", [z$1.object({
|
|
73706
|
+
kind: z$1.literal("relative_to_start_date"),
|
|
73707
|
+
daysBeforeStart: z$1.number().int().positive()
|
|
73708
|
+
}), z$1.object({
|
|
73709
|
+
kind: z$1.literal("fixed_calendar_date"),
|
|
73710
|
+
dueAt: z$1.string().datetime()
|
|
73711
|
+
})]);
|
|
73712
|
+
const bookingFlexibleBalanceConfigSchema = z$1.object({
|
|
73713
|
+
upfrontAmountCents: z$1.number().int().nonnegative(),
|
|
73714
|
+
dueDateRule: bookingFlexibleBalanceDueDateRuleSchema,
|
|
73715
|
+
depositRefundability: bookingDepositRefundPolicySchema
|
|
73716
|
+
});
|
|
73717
|
+
z$1.discriminatedUnion("kind", [
|
|
73718
|
+
z$1.object({ kind: z$1.literal("upfront") }),
|
|
73719
|
+
z$1.object({ kind: z$1.literal("deferred_manual") }),
|
|
73720
|
+
z$1.object({
|
|
73721
|
+
kind: z$1.literal("instalment_plan"),
|
|
73722
|
+
plan: bookingInstalmentPlanSchema
|
|
73723
|
+
}),
|
|
73724
|
+
z$1.object({
|
|
73725
|
+
kind: z$1.literal("flexible_balance"),
|
|
73726
|
+
config: bookingFlexibleBalanceConfigSchema
|
|
73727
|
+
})
|
|
73728
|
+
]);
|
|
73729
|
+
//#endregion
|
|
76051
73730
|
//#region ../api/src/navigationMenuValidation.ts
|
|
76052
73731
|
function hasChildren(item) {
|
|
76053
73732
|
return Array.isArray(item.children) && item.children.length > 0;
|
|
@@ -77144,40 +74823,6 @@ const BUILTIN_CONTENT_TYPE_SCHEMAS = {
|
|
|
77144
74823
|
plural: "Events"
|
|
77145
74824
|
}
|
|
77146
74825
|
},
|
|
77147
|
-
course: {
|
|
77148
|
-
version: 1,
|
|
77149
|
-
fields: [
|
|
77150
|
-
{
|
|
77151
|
-
id: "summary",
|
|
77152
|
-
type: "textarea",
|
|
77153
|
-
label: "Summary",
|
|
77154
|
-
description: "Short teaser shown in listings.",
|
|
77155
|
-
rows: 3
|
|
77156
|
-
},
|
|
77157
|
-
{
|
|
77158
|
-
id: "image",
|
|
77159
|
-
type: "media",
|
|
77160
|
-
label: "Listing image",
|
|
77161
|
-
description: "Optional image used for course cards and previews."
|
|
77162
|
-
},
|
|
77163
|
-
{
|
|
77164
|
-
id: "body",
|
|
77165
|
-
type: "richText",
|
|
77166
|
-
label: "Details",
|
|
77167
|
-
description: "Full course details and curriculum."
|
|
77168
|
-
}
|
|
77169
|
-
],
|
|
77170
|
-
routing: {
|
|
77171
|
-
enabled: true,
|
|
77172
|
-
pattern: "/courses/{slug}",
|
|
77173
|
-
slugField: "slug",
|
|
77174
|
-
prefix: "/courses/"
|
|
77175
|
-
},
|
|
77176
|
-
labels: {
|
|
77177
|
-
singular: "Course",
|
|
77178
|
-
plural: "Courses"
|
|
77179
|
-
}
|
|
77180
|
-
},
|
|
77181
74826
|
"team-member": {
|
|
77182
74827
|
version: 1,
|
|
77183
74828
|
fields: [
|
|
@@ -77377,7 +75022,7 @@ const BUILTIN_CONTENT_TYPE_SCHEMAS = {
|
|
|
77377
75022
|
function deriveFieldIdSet(schema) {
|
|
77378
75023
|
return new Set(schema.fields.map((f) => f.id));
|
|
77379
75024
|
}
|
|
77380
|
-
deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS.post), deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS.event), deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS
|
|
75025
|
+
deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS.post), deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS.event), deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS["team-member"]), deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS.product), deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS.testimonial), deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS.page), deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS["product-category"]);
|
|
77381
75026
|
//#endregion
|
|
77382
75027
|
//#region ../field-primitives/src/bindings/index.ts
|
|
77383
75028
|
const BINDING_TRANSFORMS$1 = {
|
|
@@ -77429,7 +75074,6 @@ const SYSTEM_ENTRY_SLOT_BLOCK_KIND = "system.entry-slot";
|
|
|
77429
75074
|
//#region ../content-model/src/templates/defaults.ts
|
|
77430
75075
|
const POST_EXCERPT_FALLBACK = fallbackBinding$1(fieldBinding$1("excerpt"), transformBinding$1(TEMPLATE_BINDING_TRANSFORMS.RICHTEXT_FIRST_PARAGRAPH, { input: fieldBinding$1("body") }));
|
|
77431
75076
|
const EVENT_SUBHEADLINE_FALLBACK = fallbackBinding$1(fieldBinding$1("summary"), transformBinding$1(TEMPLATE_BINDING_TRANSFORMS.RICHTEXT_FIRST_PARAGRAPH, { input: fieldBinding$1("body") }));
|
|
77432
|
-
const COURSE_SUMMARY_FALLBACK = fallbackBinding$1(fieldBinding$1("summary"), transformBinding$1(TEMPLATE_BINDING_TRANSFORMS.RICHTEXT_FIRST_PARAGRAPH, { input: fieldBinding$1("body") }));
|
|
77433
75077
|
const ENTRY_TITLE_INLINE_TEXT = transformBinding$1(TEMPLATE_BINDING_TRANSFORMS.TEXT_INLINE_TEXT, { input: metaBinding$1("title") });
|
|
77434
75078
|
const POST_BODY_TEXT_BINDINGS = {
|
|
77435
75079
|
body: fieldBinding$1("body"),
|
|
@@ -77544,7 +75188,6 @@ const DEFAULT_TEMPLATE_DEFINITIONS = {
|
|
|
77544
75188
|
showVenue: true,
|
|
77545
75189
|
showCapacity: true,
|
|
77546
75190
|
successMessage: "Thank you for registering! Check your email for confirmation details.",
|
|
77547
|
-
waitlistMessage: "You've been added to the waitlist. We'll email you a claim link if a spot opens up.",
|
|
77548
75191
|
buttonText: "Complete Registration",
|
|
77549
75192
|
buttonVariant: "primary"
|
|
77550
75193
|
},
|
|
@@ -77555,64 +75198,6 @@ const DEFAULT_TEMPLATE_DEFINITIONS = {
|
|
|
77555
75198
|
}
|
|
77556
75199
|
]
|
|
77557
75200
|
},
|
|
77558
|
-
course: {
|
|
77559
|
-
templateKey: "default",
|
|
77560
|
-
name: "Course detail",
|
|
77561
|
-
description: "Standard landing page for multi-session courses.",
|
|
77562
|
-
metadata: {},
|
|
77563
|
-
blocks: [
|
|
77564
|
-
{
|
|
77565
|
-
blockKind: "block.hero",
|
|
77566
|
-
scope: "entry",
|
|
77567
|
-
bindings: {
|
|
77568
|
-
eyebrow: literalBinding$1("Course"),
|
|
77569
|
-
headline: metaBinding$1("title"),
|
|
77570
|
-
headlineInline: ENTRY_TITLE_INLINE_TEXT,
|
|
77571
|
-
subheadline: COURSE_SUMMARY_FALLBACK
|
|
77572
|
-
}
|
|
77573
|
-
},
|
|
77574
|
-
{
|
|
77575
|
-
blockKind: "block.course-details",
|
|
77576
|
-
scope: "entry",
|
|
77577
|
-
content: {
|
|
77578
|
-
heading: "Course details",
|
|
77579
|
-
showTitle: false,
|
|
77580
|
-
showDescription: false,
|
|
77581
|
-
showSessions: true,
|
|
77582
|
-
sessionsLimit: "10",
|
|
77583
|
-
showVenue: true,
|
|
77584
|
-
showPrice: true,
|
|
77585
|
-
showCapacity: true,
|
|
77586
|
-
showEnrollmentStatus: true,
|
|
77587
|
-
showMembershipNote: true
|
|
77588
|
-
}
|
|
77589
|
-
},
|
|
77590
|
-
{
|
|
77591
|
-
blockKind: SYSTEM_ENTRY_SLOT_BLOCK_KIND,
|
|
77592
|
-
scope: "template",
|
|
77593
|
-
content: {
|
|
77594
|
-
slotKey: "main",
|
|
77595
|
-
label: "Page content"
|
|
77596
|
-
}
|
|
77597
|
-
},
|
|
77598
|
-
{
|
|
77599
|
-
blockKind: "block.course-registration",
|
|
77600
|
-
scope: "entry",
|
|
77601
|
-
content: {
|
|
77602
|
-
heading: "Enroll in this course",
|
|
77603
|
-
showSessions: true,
|
|
77604
|
-
showPrice: true,
|
|
77605
|
-
showCapacity: true,
|
|
77606
|
-
showVenue: true,
|
|
77607
|
-
successMessage: "You're enrolled! Check your email for confirmation and session details.",
|
|
77608
|
-
waitlistMessage: "You've been added to the waitlist. We'll email you a claim link if a spot opens up.",
|
|
77609
|
-
membershipMessage: "Enrolled using your membership! Check your email for session details.",
|
|
77610
|
-
buttonText: "Complete Enrollment",
|
|
77611
|
-
buttonVariant: "primary"
|
|
77612
|
-
}
|
|
77613
|
-
}
|
|
77614
|
-
]
|
|
77615
|
-
},
|
|
77616
75201
|
"team-member": {
|
|
77617
75202
|
templateKey: "default",
|
|
77618
75203
|
name: "Team member profile",
|