@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({
|
|
@@ -39432,7 +39055,7 @@ const offeringsPreviewManifest = createBlockManifest({
|
|
|
39432
39055
|
fallback: "published"
|
|
39433
39056
|
} },
|
|
39434
39057
|
routeCandidates: { $bind: { from: "data.routeCandidates" } },
|
|
39435
|
-
|
|
39058
|
+
wholeSeriesOfferings: { $bind: { from: "data.wholeSeriesOfferings" } },
|
|
39436
39059
|
...offeringsPreviewEventDataBindings
|
|
39437
39060
|
})
|
|
39438
39061
|
], { gap: "lg" }),
|
|
@@ -39449,7 +39072,7 @@ const offeringsPreviewBlockDefinition = {
|
|
|
39449
39072
|
dataSchemas: {
|
|
39450
39073
|
...offeringsPreviewEventDataSchemas,
|
|
39451
39074
|
routeCandidates: publicRouteCandidatesSchema.optional(),
|
|
39452
|
-
|
|
39075
|
+
wholeSeriesOfferings: publicWholeSeriesOfferingsArraySchema.optional()
|
|
39453
39076
|
},
|
|
39454
39077
|
dataLoaders: {
|
|
39455
39078
|
...offeringsPreviewEventDataLoaders,
|
|
@@ -39458,7 +39081,7 @@ const offeringsPreviewBlockDefinition = {
|
|
|
39458
39081
|
params: {},
|
|
39459
39082
|
mode: "server"
|
|
39460
39083
|
},
|
|
39461
|
-
|
|
39084
|
+
wholeSeriesOfferings: {
|
|
39462
39085
|
endpoint: "listPublicWholeSeriesOfferings",
|
|
39463
39086
|
params: {
|
|
39464
39087
|
siteId: { $bind: { from: "$root.siteId" } },
|
|
@@ -44560,22 +44183,6 @@ const systemBlockDefinitions = [
|
|
|
44560
44183
|
weight: "standard"
|
|
44561
44184
|
})]
|
|
44562
44185
|
})),
|
|
44563
|
-
withDesignCapability("block.course-registration", courseRegistrationBlockDefinition, sectionOnly(), defineBlockDesignMetadata({
|
|
44564
|
-
flow: conversionFlow,
|
|
44565
|
-
layoutProfiles: [layoutProfile({
|
|
44566
|
-
variantKey: "default",
|
|
44567
|
-
family: "form",
|
|
44568
|
-
weight: "standard"
|
|
44569
|
-
})]
|
|
44570
|
-
})),
|
|
44571
|
-
withDesignCapability("block.course-details", courseDetailsBlockDefinition, scheduleDetailsCapable(), defineBlockDesignMetadata({
|
|
44572
|
-
flow: offeringsFlow,
|
|
44573
|
-
layoutProfiles: [layoutProfile({
|
|
44574
|
-
variantKey: "default",
|
|
44575
|
-
family: "stack",
|
|
44576
|
-
weight: "standard"
|
|
44577
|
-
})]
|
|
44578
|
-
})),
|
|
44579
44186
|
withDesignCapability("block.event-spotlight", eventSpotlightBlockDefinition, eventSpotlightCapable(), defineBlockDesignMetadata({
|
|
44580
44187
|
flow: offeringsFlow,
|
|
44581
44188
|
layoutProfiles: [layoutProfile({
|
|
@@ -47475,7 +47082,7 @@ function emptySelection(timeZone) {
|
|
|
47475
47082
|
timeZone
|
|
47476
47083
|
};
|
|
47477
47084
|
}
|
|
47478
|
-
function parseLimit
|
|
47085
|
+
function parseLimit(value, fallback) {
|
|
47479
47086
|
if (value === "all") return Number.MAX_SAFE_INTEGER;
|
|
47480
47087
|
const n = typeof value === "string" ? parseInt(value, 10) : typeof value === "number" ? value : NaN;
|
|
47481
47088
|
return Number.isFinite(n) && n > 0 ? n : fallback;
|
|
@@ -47558,7 +47165,7 @@ function selectEventDetails(args) {
|
|
|
47558
47165
|
subject: args.subject
|
|
47559
47166
|
}));
|
|
47560
47167
|
const occurrenceContext = args.occurrenceContext ?? null;
|
|
47561
|
-
const otherLimit = parseLimit
|
|
47168
|
+
const otherLimit = parseLimit(args.otherDatesLimit, 5);
|
|
47562
47169
|
const candidate = selectEventCandidate(all, occurrenceContext, args.nowIso);
|
|
47563
47170
|
const timeZone = toBookingTimeZone(candidate?.event.timeZone ?? all[0]?.timeZone ?? null);
|
|
47564
47171
|
if (!candidate) return emptySelection(timeZone);
|
|
@@ -47634,8 +47241,8 @@ function resolveEventDetailsPresentation(input) {
|
|
|
47634
47241
|
};
|
|
47635
47242
|
}
|
|
47636
47243
|
//#endregion
|
|
47637
|
-
//#region ../blocks/src/system/runtime/nodes/event-details/
|
|
47638
|
-
function
|
|
47244
|
+
//#region ../blocks/src/system/runtime/nodes/event-details/WholeSeriesPricingDisplay.tsx
|
|
47245
|
+
function WholeSeriesPricingDisplay({ pricing, acceptedItems }) {
|
|
47639
47246
|
return /* @__PURE__ */ jsxs("div", {
|
|
47640
47247
|
className: "rb-mt-6",
|
|
47641
47248
|
children: [
|
|
@@ -47647,7 +47254,8 @@ function CoursePricingDisplay({ pricing, acceptedItems }) {
|
|
|
47647
47254
|
className: "rb-flex rb-flex-col rb-gap-2",
|
|
47648
47255
|
children: pricing.selectableOptions.map((option) => /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsxs("strong", { children: [
|
|
47649
47256
|
option.name,
|
|
47650
|
-
":
|
|
47257
|
+
":",
|
|
47258
|
+
" ",
|
|
47651
47259
|
formatWholeSeriesPriceAmount(option.priceAmount, pricing.currency)
|
|
47652
47260
|
] }), option.description ? /* @__PURE__ */ jsx("p", {
|
|
47653
47261
|
className: "rb-caption status-muted",
|
|
@@ -47668,7 +47276,7 @@ function formatAutoApplyDiscountLine(preview, currency) {
|
|
|
47668
47276
|
const label = preview.publicLabel.trim() || "Discount";
|
|
47669
47277
|
return preview.minTicketsRequired && preview.minTicketsRequired > 1 ? `${label} — ${rate} when buying ${preview.minTicketsRequired}+ tickets` : `${label} — ${rate} applied automatically`;
|
|
47670
47278
|
}
|
|
47671
|
-
function TeamMemberName
|
|
47279
|
+
function TeamMemberName({ name, profilePath }) {
|
|
47672
47280
|
return profilePath ? /* @__PURE__ */ jsx("a", {
|
|
47673
47281
|
href: profilePath,
|
|
47674
47282
|
className: "rb-hover-opacity-80",
|
|
@@ -47705,7 +47313,7 @@ function EventPricingDetails({ isDropIn, coursePricing, acceptedItems, eventCost
|
|
|
47705
47313
|
children: "No registration required - just show up"
|
|
47706
47314
|
})]
|
|
47707
47315
|
});
|
|
47708
|
-
if (coursePricing) return /* @__PURE__ */ jsx(
|
|
47316
|
+
if (coursePricing) return /* @__PURE__ */ jsx(WholeSeriesPricingDisplay, {
|
|
47709
47317
|
pricing: coursePricing,
|
|
47710
47318
|
acceptedItems: [...acceptedItems]
|
|
47711
47319
|
});
|
|
@@ -47780,7 +47388,7 @@ function EventFacts({ selection, selected, venue, teamMembers, pricing, showCapa
|
|
|
47780
47388
|
children: "With"
|
|
47781
47389
|
}), /* @__PURE__ */ jsx("div", {
|
|
47782
47390
|
className: "rb-flex rb-flex-col rb-gap-3",
|
|
47783
|
-
children: teamMembers.map((member) => /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx(TeamMemberName
|
|
47391
|
+
children: teamMembers.map((member) => /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx(TeamMemberName, {
|
|
47784
47392
|
name: member.name,
|
|
47785
47393
|
profilePath: member.profilePath
|
|
47786
47394
|
}) }), member.summary ? /* @__PURE__ */ jsx("p", {
|
|
@@ -48059,352 +47667,6 @@ function LocationMapSSR(props) {
|
|
|
48059
47667
|
});
|
|
48060
47668
|
}
|
|
48061
47669
|
//#endregion
|
|
48062
|
-
//#region ../blocks/src/system/runtime/nodes/event-registration/whole-series/wholeSeriesPageSurfaceScope.ts
|
|
48063
|
-
/**
|
|
48064
|
-
* Resolves native run-page ownership without falling back to entry or slug
|
|
48065
|
-
* coincidence when a page-surface subject is present but invalid.
|
|
48066
|
-
*/
|
|
48067
|
-
function resolveWholeSeriesPageSurfaceScope(runs, subjectValue) {
|
|
48068
|
-
if (subjectValue === null || subjectValue === void 0) return { kind: "absent" };
|
|
48069
|
-
const parsed = parseEventPageSurfaceSubject(subjectValue);
|
|
48070
|
-
if (!parsed.ok) return {
|
|
48071
|
-
kind: "unsupported",
|
|
48072
|
-
reason: parsed.error.kind
|
|
48073
|
-
};
|
|
48074
|
-
const seriesIds = eventSeriesIdsForSubject(parsed.value);
|
|
48075
|
-
const allowedSeriesIds = new Set(seriesIds);
|
|
48076
|
-
return {
|
|
48077
|
-
kind: "scoped",
|
|
48078
|
-
subject: parsed.value,
|
|
48079
|
-
runs: runs.filter((run) => allowedSeriesIds.has(run.eventSeriesId))
|
|
48080
|
-
};
|
|
48081
|
-
}
|
|
48082
|
-
function eventSeriesIdsForSubject(subject) {
|
|
48083
|
-
switch (subject.kind) {
|
|
48084
|
-
case "eventSeries": return [subject.eventSeriesId];
|
|
48085
|
-
case "eventOffering": return subject.availableEventSeriesIds;
|
|
48086
|
-
default: return assertNever$23(subject);
|
|
48087
|
-
}
|
|
48088
|
-
}
|
|
48089
|
-
//#endregion
|
|
48090
|
-
//#region ../blocks/src/system/runtime/nodes/course-page-surface-scope.ts
|
|
48091
|
-
/** Temporary Course-block adapter over canonical Event run scoping. */
|
|
48092
|
-
function resolveCoursePageSurfaceScope(courses, subjectValue) {
|
|
48093
|
-
const scope = resolveWholeSeriesPageSurfaceScope(courses, subjectValue);
|
|
48094
|
-
return scope.kind === "scoped" ? {
|
|
48095
|
-
kind: "scoped",
|
|
48096
|
-
subject: scope.subject,
|
|
48097
|
-
courses: scope.runs
|
|
48098
|
-
} : scope;
|
|
48099
|
-
}
|
|
48100
|
-
//#endregion
|
|
48101
|
-
//#region ../blocks/src/system/runtime/nodes/course-details/logic.ts
|
|
48102
|
-
function selectCourseDetails(args) {
|
|
48103
|
-
const pageSurfaceScope = resolveCoursePageSurfaceScope((args.courses ?? []).filter(Boolean), args.subject);
|
|
48104
|
-
if (pageSurfaceScope.kind === "unsupported") return {
|
|
48105
|
-
mode: "unsupportedPageSurfaceSubject",
|
|
48106
|
-
selected: null,
|
|
48107
|
-
scoped: []
|
|
48108
|
-
};
|
|
48109
|
-
if (pageSurfaceScope.kind === "scoped") {
|
|
48110
|
-
const scoped = [...pageSurfaceScope.courses];
|
|
48111
|
-
return {
|
|
48112
|
-
mode: "pageSurfaceSubject",
|
|
48113
|
-
selected: scoped.length === 1 ? scoped[0] ?? null : null,
|
|
48114
|
-
scoped
|
|
48115
|
-
};
|
|
48116
|
-
}
|
|
48117
|
-
return {
|
|
48118
|
-
mode: "unsupportedPageSurfaceSubject",
|
|
48119
|
-
selected: null,
|
|
48120
|
-
scoped: []
|
|
48121
|
-
};
|
|
48122
|
-
}
|
|
48123
|
-
//#endregion
|
|
48124
|
-
//#region ../blocks/src/system/runtime/nodes/course-details/runs.ts
|
|
48125
|
-
function toValidDate(value) {
|
|
48126
|
-
if (!value) return null;
|
|
48127
|
-
const date = new Date(value);
|
|
48128
|
-
return Number.isNaN(date.getTime()) ? null : date;
|
|
48129
|
-
}
|
|
48130
|
-
function getCourseDateRange(course) {
|
|
48131
|
-
const datedSessions = (course.sessions ?? []).map((session) => ({
|
|
48132
|
-
session,
|
|
48133
|
-
start: toValidDate(session.startsAt),
|
|
48134
|
-
end: toValidDate(session.endsAt)
|
|
48135
|
-
})).filter((value) => value.start !== null || value.end !== null);
|
|
48136
|
-
if (datedSessions.length === 0) return {
|
|
48137
|
-
start: null,
|
|
48138
|
-
end: null,
|
|
48139
|
-
startIso: null,
|
|
48140
|
-
endIso: null,
|
|
48141
|
-
timeZone: null
|
|
48142
|
-
};
|
|
48143
|
-
const startSession = datedSessions.filter((value) => value.start !== null).reduce((earliest, current) => earliest === null || current.start.getTime() < earliest.start.getTime() ? current : earliest, null);
|
|
48144
|
-
const endSession = datedSessions.filter((value) => value.end !== null).reduce((latest, current) => latest === null || current.end.getTime() > latest.end.getTime() ? current : latest, null);
|
|
48145
|
-
return {
|
|
48146
|
-
start: startSession?.start ?? null,
|
|
48147
|
-
end: endSession?.end ?? null,
|
|
48148
|
-
startIso: startSession?.session.startsAt ?? null,
|
|
48149
|
-
endIso: endSession?.session.endsAt ?? null,
|
|
48150
|
-
timeZone: startSession?.session.timeZone ?? endSession?.session.timeZone ?? null
|
|
48151
|
-
};
|
|
48152
|
-
}
|
|
48153
|
-
function formatCourseDateRange(range) {
|
|
48154
|
-
const { startIso, endIso, timeZone } = range;
|
|
48155
|
-
const dateFormat = {
|
|
48156
|
-
month: "numeric",
|
|
48157
|
-
day: "numeric",
|
|
48158
|
-
year: "numeric"
|
|
48159
|
-
};
|
|
48160
|
-
const effectiveTimeZone = toBookingTimeZone(timeZone);
|
|
48161
|
-
const formatSingleDate = (iso) => formatBookingDate(toScheduledBookingDateTime({
|
|
48162
|
-
startsAt: iso,
|
|
48163
|
-
timeZone: effectiveTimeZone
|
|
48164
|
-
}), dateFormat);
|
|
48165
|
-
const formatRangeDateOnly = (startsAt, endsAt) => {
|
|
48166
|
-
const startText = formatSingleDate(startsAt);
|
|
48167
|
-
const endText = formatSingleDate(endsAt);
|
|
48168
|
-
return startText === endText ? startText : `${startText} – ${endText}`;
|
|
48169
|
-
};
|
|
48170
|
-
if (!startIso && !endIso) return "Dates TBD";
|
|
48171
|
-
if (startIso && !endIso) return formatSingleDate(startIso);
|
|
48172
|
-
if (!startIso && endIso) return formatSingleDate(endIso);
|
|
48173
|
-
if (!startIso || !endIso) return "Dates TBD";
|
|
48174
|
-
return formatRangeDateOnly(startIso, endIso);
|
|
48175
|
-
}
|
|
48176
|
-
//#endregion
|
|
48177
|
-
//#region ../blocks/src/system/runtime/nodes/course-details/view.tsx
|
|
48178
|
-
function TeamMemberName({ name, profilePath }) {
|
|
48179
|
-
return profilePath ? /* @__PURE__ */ jsx("a", {
|
|
48180
|
-
href: profilePath,
|
|
48181
|
-
className: "rb-hover-opacity-80",
|
|
48182
|
-
children: /* @__PURE__ */ jsx("strong", { children: name })
|
|
48183
|
-
}) : /* @__PURE__ */ jsx("strong", { children: name });
|
|
48184
|
-
}
|
|
48185
|
-
function parseLimit(value, fallback) {
|
|
48186
|
-
if (value === "all") return "all";
|
|
48187
|
-
const n = typeof value === "string" ? Number.parseInt(value, 10) : typeof value === "number" ? value : NaN;
|
|
48188
|
-
return Number.isFinite(n) && n > 0 ? n : fallback;
|
|
48189
|
-
}
|
|
48190
|
-
function CourseDetailsView(props) {
|
|
48191
|
-
const { course, showTitle = false, showDescription = false, showSessions = true, sessionsLimit, showVenue = true, showPrice = true, showCapacity = true, showEnrollmentStatus = true, showMembershipNote = true, emptyMessage = "Course details unavailable." } = props;
|
|
48192
|
-
if (!course) return /* @__PURE__ */ jsx("p", {
|
|
48193
|
-
className: "rb-caption status-muted",
|
|
48194
|
-
children: emptyMessage
|
|
48195
|
-
});
|
|
48196
|
-
const pricing = resolveWholeSeriesPricingState(course);
|
|
48197
|
-
const sessionLimit = parseLimit(sessionsLimit, 10);
|
|
48198
|
-
const sortedSessions = [...course.sessions ?? []].sort((a, b) => Date.parse(a.startsAt) - Date.parse(b.startsAt));
|
|
48199
|
-
const visibleSessions = sessionLimit === "all" ? sortedSessions : sortedSessions.slice(0, sessionLimit);
|
|
48200
|
-
const hasMoreSessions = sessionLimit !== "all" && sortedSessions.length > sessionLimit;
|
|
48201
|
-
const descriptionDoc = showDescription ? coerceRichTextDoc(course.description, "block-runtime:course-details:description") : null;
|
|
48202
|
-
const teamMembers = course.teamMembers ?? [];
|
|
48203
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
48204
|
-
className: "rb-flex rb-flex-col rb-gap-6",
|
|
48205
|
-
children: [
|
|
48206
|
-
showTitle && /* @__PURE__ */ jsx("h3", { children: course.title }),
|
|
48207
|
-
/* @__PURE__ */ jsxs("div", {
|
|
48208
|
-
className: "rb-grid rb-grid-cols-1 rb-gap-6 rb-items-start rb-sm-grid-cols-2",
|
|
48209
|
-
children: [/* @__PURE__ */ jsxs("div", {
|
|
48210
|
-
className: "rb-flex rb-flex-col rb-gap-4",
|
|
48211
|
-
children: [
|
|
48212
|
-
showPrice && /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
48213
|
-
className: "rb-label rb-mb-2",
|
|
48214
|
-
children: pricing.selectableOptions.length > 0 ? "Pricing" : "Price"
|
|
48215
|
-
}), pricing.selectableOptions.length > 1 ? /* @__PURE__ */ jsx("div", {
|
|
48216
|
-
className: "rb-flex rb-flex-col rb-gap-2",
|
|
48217
|
-
children: pricing.selectableOptions.map((option) => /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsxs("strong", { children: [
|
|
48218
|
-
option.name,
|
|
48219
|
-
": ",
|
|
48220
|
-
formatWholeSeriesPriceAmount(option.priceAmount, pricing.currency)
|
|
48221
|
-
] }), option.description ? /* @__PURE__ */ jsx("p", {
|
|
48222
|
-
className: "rb-caption status-muted",
|
|
48223
|
-
children: option.description
|
|
48224
|
-
}) : null] }, option.id))
|
|
48225
|
-
}) : /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("strong", { children: formatWholeSeriesPriceDisplay(pricing.display) }) })] }),
|
|
48226
|
-
showCapacity && /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
48227
|
-
className: "rb-label rb-mb-2",
|
|
48228
|
-
children: "Spots"
|
|
48229
|
-
}), /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx("strong", { children: course.enrollmentCapacity === null ? "Unlimited" : `${course.availableSpots ?? Math.max(0, course.enrollmentCapacity - course.enrolledCount)} left` }) })] }),
|
|
48230
|
-
showMembershipNote && course.acceptsMemberships && /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
48231
|
-
className: "rb-label rb-mb-2",
|
|
48232
|
-
children: "Membership"
|
|
48233
|
-
}), /* @__PURE__ */ jsx("p", {
|
|
48234
|
-
className: "rb-caption status-muted",
|
|
48235
|
-
children: "Eligible memberships can be used for free enrollment"
|
|
48236
|
-
})] }),
|
|
48237
|
-
teamMembers.length > 0 && /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
48238
|
-
className: "rb-label rb-mb-2",
|
|
48239
|
-
children: "With"
|
|
48240
|
-
}), /* @__PURE__ */ jsx("div", {
|
|
48241
|
-
className: "rb-flex rb-flex-col rb-gap-3",
|
|
48242
|
-
children: teamMembers.map((teamMember) => /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("p", { children: /* @__PURE__ */ jsx(TeamMemberName, {
|
|
48243
|
-
name: teamMember.name,
|
|
48244
|
-
profilePath: teamMember.profilePath
|
|
48245
|
-
}) }), teamMember.summary && /* @__PURE__ */ jsx("p", {
|
|
48246
|
-
className: "rb-caption status-muted",
|
|
48247
|
-
children: teamMember.summary
|
|
48248
|
-
})] }, teamMember.id))
|
|
48249
|
-
})] })
|
|
48250
|
-
]
|
|
48251
|
-
}), /* @__PURE__ */ jsxs("div", {
|
|
48252
|
-
className: "rb-flex rb-flex-col rb-gap-4",
|
|
48253
|
-
children: [showVenue && course.venue && /* @__PURE__ */ jsxs("div", { children: [
|
|
48254
|
-
/* @__PURE__ */ jsx("div", {
|
|
48255
|
-
className: "rb-label rb-mb-2",
|
|
48256
|
-
children: "Venue"
|
|
48257
|
-
}),
|
|
48258
|
-
/* @__PURE__ */ jsx("h3", { children: course.venue.name }),
|
|
48259
|
-
course.venue.address && /* @__PURE__ */ jsx("p", {
|
|
48260
|
-
className: "rb-caption status-muted",
|
|
48261
|
-
children: course.venue.address
|
|
48262
|
-
})
|
|
48263
|
-
] }), showEnrollmentStatus && /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
48264
|
-
className: "rb-label rb-mb-2",
|
|
48265
|
-
children: "Enrollment"
|
|
48266
|
-
}), /* @__PURE__ */ jsx("p", {
|
|
48267
|
-
className: course.enrollmentOpen ? "cd-enrollment--open" : "cd-enrollment--closed",
|
|
48268
|
-
children: /* @__PURE__ */ jsx("strong", { children: course.enrollmentOpen ? "Open" : "Closed" })
|
|
48269
|
-
})] })]
|
|
48270
|
-
})]
|
|
48271
|
-
}),
|
|
48272
|
-
descriptionDoc && /* @__PURE__ */ jsx("div", {
|
|
48273
|
-
className: "cd-description",
|
|
48274
|
-
children: /* @__PURE__ */ jsx(RichText$2, { doc: descriptionDoc })
|
|
48275
|
-
}),
|
|
48276
|
-
showSessions && visibleSessions.length > 0 && /* @__PURE__ */ jsxs("div", { children: [
|
|
48277
|
-
/* @__PURE__ */ jsx("div", {
|
|
48278
|
-
className: "rb-label",
|
|
48279
|
-
children: "Sessions"
|
|
48280
|
-
}),
|
|
48281
|
-
/* @__PURE__ */ jsx("div", {
|
|
48282
|
-
className: "rb-mt-2 rb-tiles-grid",
|
|
48283
|
-
children: visibleSessions.map((s) => /* @__PURE__ */ jsx("div", {
|
|
48284
|
-
className: "rb-tile",
|
|
48285
|
-
children: /* @__PURE__ */ jsx(DateTimeTile, {
|
|
48286
|
-
startsAt: s.startsAt,
|
|
48287
|
-
endsAt: s.endsAt
|
|
48288
|
-
})
|
|
48289
|
-
}, s.id))
|
|
48290
|
-
}),
|
|
48291
|
-
hasMoreSessions && /* @__PURE__ */ jsxs("p", {
|
|
48292
|
-
className: "cd-sessions__more",
|
|
48293
|
-
children: [
|
|
48294
|
-
"Showing ",
|
|
48295
|
-
visibleSessions.length,
|
|
48296
|
-
" of ",
|
|
48297
|
-
sortedSessions.length,
|
|
48298
|
-
" sessions."
|
|
48299
|
-
]
|
|
48300
|
-
})
|
|
48301
|
-
] })
|
|
48302
|
-
]
|
|
48303
|
-
});
|
|
48304
|
-
}
|
|
48305
|
-
//#endregion
|
|
48306
|
-
//#region ../blocks/src/system/runtime/nodes/course-details.server.tsx
|
|
48307
|
-
function CourseDetailsSSR({ courses, subject, showTitle, showDescription, showSessions, sessionsLimit, showVenue, showPrice, showCapacity, showEnrollmentStatus, showMembershipNote, className, children }) {
|
|
48308
|
-
const selection = selectCourseDetails({
|
|
48309
|
-
courses: courses ?? null,
|
|
48310
|
-
subject
|
|
48311
|
-
});
|
|
48312
|
-
const parsedSubject = parseEventPageSurfaceSubject(subject);
|
|
48313
|
-
const awaitingOfferingRuns = parsedSubject.ok && parsedSubject.value.kind === "eventOffering" && parsedSubject.value.availableEventSeriesIds.length === 0;
|
|
48314
|
-
const now = /* @__PURE__ */ new Date();
|
|
48315
|
-
const scopedWithRange = selection.scoped.map((c) => ({
|
|
48316
|
-
course: c,
|
|
48317
|
-
range: getCourseDateRange(c)
|
|
48318
|
-
}));
|
|
48319
|
-
const scopedSorted = [...scopedWithRange].sort((a, b) => {
|
|
48320
|
-
return (a.range.start?.getTime() ?? 0) - (b.range.start?.getTime() ?? 0);
|
|
48321
|
-
});
|
|
48322
|
-
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;
|
|
48323
|
-
const nonPastRuns = scopedSorted.filter(({ range }) => !(range.end && range.end <= now));
|
|
48324
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
48325
|
-
className: `course-details ${className ?? ""}`.trim(),
|
|
48326
|
-
"data-block": "course-details",
|
|
48327
|
-
children: [selection.selected ? /* @__PURE__ */ jsx(CourseDetailsView, {
|
|
48328
|
-
course: selection.selected,
|
|
48329
|
-
showTitle,
|
|
48330
|
-
showDescription,
|
|
48331
|
-
showSessions,
|
|
48332
|
-
sessionsLimit,
|
|
48333
|
-
showVenue,
|
|
48334
|
-
showPrice,
|
|
48335
|
-
showCapacity,
|
|
48336
|
-
showEnrollmentStatus,
|
|
48337
|
-
showMembershipNote
|
|
48338
|
-
}) : selection.scoped.length > 0 ? /* @__PURE__ */ jsxs("div", {
|
|
48339
|
-
className: "rb-flex rb-flex-col rb-gap-3",
|
|
48340
|
-
children: [
|
|
48341
|
-
/* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsx("div", {
|
|
48342
|
-
className: "rb-label rb-mb-2",
|
|
48343
|
-
children: "Upcoming runs"
|
|
48344
|
-
}), /* @__PURE__ */ jsx("p", {
|
|
48345
|
-
className: "rb-caption status-muted",
|
|
48346
|
-
children: "Choose a run to see sessions and details."
|
|
48347
|
-
})] }),
|
|
48348
|
-
nonPastRuns.length > 0 ? /* @__PURE__ */ jsx("ul", {
|
|
48349
|
-
className: "rb-flex rb-flex-col rb-gap-2",
|
|
48350
|
-
children: nonPastRuns.map(({ course, range }) => {
|
|
48351
|
-
const start = range.start;
|
|
48352
|
-
const end = range.end;
|
|
48353
|
-
const isInProgress = Boolean(start && end && start <= now && end > now);
|
|
48354
|
-
return /* @__PURE__ */ jsx("li", {
|
|
48355
|
-
className: "rb-rounded-md rb-border rb-p-3",
|
|
48356
|
-
children: /* @__PURE__ */ jsx("div", {
|
|
48357
|
-
className: "rb-flex rb-flex-col rb-gap-1",
|
|
48358
|
-
children: /* @__PURE__ */ jsxs("div", {
|
|
48359
|
-
className: "rb-flex rb-items-center rb-justify-between rb-gap-3",
|
|
48360
|
-
children: [/* @__PURE__ */ jsxs("div", {
|
|
48361
|
-
className: "rb-min-w-0",
|
|
48362
|
-
children: [/* @__PURE__ */ jsx("div", {
|
|
48363
|
-
className: "rb-truncate",
|
|
48364
|
-
children: /* @__PURE__ */ jsx("strong", { children: course.title })
|
|
48365
|
-
}), /* @__PURE__ */ jsx("div", {
|
|
48366
|
-
className: "rb-caption status-muted",
|
|
48367
|
-
children: formatCourseDateRange(range)
|
|
48368
|
-
})]
|
|
48369
|
-
}), /* @__PURE__ */ jsx("div", {
|
|
48370
|
-
className: "rb-caption status-muted rb-shrink-0",
|
|
48371
|
-
children: course.enrollmentOpen ? "Enrollment open" : isInProgress ? "Currently in progress" : "Enrollment closed"
|
|
48372
|
-
})]
|
|
48373
|
-
})
|
|
48374
|
-
})
|
|
48375
|
-
}, course.eventSeriesId);
|
|
48376
|
-
})
|
|
48377
|
-
}) : /* @__PURE__ */ jsx("p", {
|
|
48378
|
-
className: "rb-caption status-muted",
|
|
48379
|
-
children: "No upcoming runs."
|
|
48380
|
-
}),
|
|
48381
|
-
lastPastRun ? /* @__PURE__ */ jsxs("div", {
|
|
48382
|
-
className: "rb-caption status-muted",
|
|
48383
|
-
children: [
|
|
48384
|
-
"Last run: ",
|
|
48385
|
-
/* @__PURE__ */ jsx("strong", { children: lastPastRun.course.title }),
|
|
48386
|
-
" (",
|
|
48387
|
-
formatCourseDateRange(lastPastRun.range),
|
|
48388
|
-
")"
|
|
48389
|
-
]
|
|
48390
|
-
}) : null
|
|
48391
|
-
]
|
|
48392
|
-
}) : /* @__PURE__ */ jsx(CourseDetailsView, {
|
|
48393
|
-
course: null,
|
|
48394
|
-
emptyMessage: awaitingOfferingRuns ? "New dates are coming soon." : "Course details unavailable.",
|
|
48395
|
-
showTitle,
|
|
48396
|
-
showDescription,
|
|
48397
|
-
showSessions,
|
|
48398
|
-
sessionsLimit,
|
|
48399
|
-
showVenue,
|
|
48400
|
-
showPrice,
|
|
48401
|
-
showCapacity,
|
|
48402
|
-
showEnrollmentStatus,
|
|
48403
|
-
showMembershipNote
|
|
48404
|
-
}), children]
|
|
48405
|
-
});
|
|
48406
|
-
}
|
|
48407
|
-
//#endregion
|
|
48408
47670
|
//#region ../blocks/src/system/runtime/nodes/events/EventSpotlight.tsx
|
|
48409
47671
|
/**
|
|
48410
47672
|
* EventSpotlight Component
|
|
@@ -48608,7 +47870,7 @@ function deriveCourseScheduleSummary(course) {
|
|
|
48608
47870
|
sessionCount: sessions.length
|
|
48609
47871
|
};
|
|
48610
47872
|
}
|
|
48611
|
-
function
|
|
47873
|
+
function nextWholeSeriesSessionStart(course) {
|
|
48612
47874
|
return [...course.sessions].filter(isValidOccurrence).map((session) => session.startsAt).sort((left, right) => left.localeCompare(right))[0] ?? null;
|
|
48613
47875
|
}
|
|
48614
47876
|
function occurrenceFromEvent(event) {
|
|
@@ -48762,7 +48024,7 @@ const OFFERINGS_PREVIEW_GRID_STYLE = {
|
|
|
48762
48024
|
function buildItemDataMap(props) {
|
|
48763
48025
|
const routeCandidates = props.routeCandidates?.routes ?? [];
|
|
48764
48026
|
const entries = OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => [definition.sourceKey, eventDataFromMaybeArray(props[definition.dataKey])]);
|
|
48765
|
-
return new Map([...entries, ["course", courseDataFromMaybeArray(props.
|
|
48027
|
+
return new Map([...entries, ["course", courseDataFromMaybeArray(props.wholeSeriesOfferings, routeCandidates)]]);
|
|
48766
48028
|
}
|
|
48767
48029
|
function eventDataFromMaybeArray(events) {
|
|
48768
48030
|
return events ? {
|
|
@@ -48816,8 +48078,8 @@ function renderOfferingGroupItems(presentation, items, options) {
|
|
|
48816
48078
|
}
|
|
48817
48079
|
}
|
|
48818
48080
|
function compareCoursesByNextSession(left, right) {
|
|
48819
|
-
const leftStart =
|
|
48820
|
-
const rightStart =
|
|
48081
|
+
const leftStart = nextWholeSeriesSessionStart(left);
|
|
48082
|
+
const rightStart = nextWholeSeriesSessionStart(right);
|
|
48821
48083
|
if (leftStart === null) return rightStart === null ? 0 : 1;
|
|
48822
48084
|
if (rightStart === null) return -1;
|
|
48823
48085
|
return leftStart.localeCompare(rightStart);
|
|
@@ -49756,45 +49018,6 @@ function CheckoutSSR({ blockId, siteId, apiBaseUrl, stage, children, ...rest })
|
|
|
49756
49018
|
});
|
|
49757
49019
|
}
|
|
49758
49020
|
//#endregion
|
|
49759
|
-
//#region ../blocks/src/system/runtime/nodes/course-registration.server.tsx
|
|
49760
|
-
/**
|
|
49761
|
-
* Server-safe placeholder for course registration.
|
|
49762
|
-
* Provides a static container for island hydration without importing client hooks.
|
|
49763
|
-
*/
|
|
49764
|
-
function CourseRegistrationSSR({ blockId, siteId, apiBaseUrl, portalToken, subject, courses, className, showSessions, showPrice, showCapacity, showVenue, successMessage, waitlistMessage, membershipMessage, buttonText, buttonVariant, stage, children }) {
|
|
49765
|
-
const islandProps = buildCourseRegistrationInteractiveIslandProps({
|
|
49766
|
-
siteId,
|
|
49767
|
-
apiBaseUrl,
|
|
49768
|
-
portalToken,
|
|
49769
|
-
subject,
|
|
49770
|
-
courses,
|
|
49771
|
-
className,
|
|
49772
|
-
showSessions,
|
|
49773
|
-
showPrice,
|
|
49774
|
-
showCapacity,
|
|
49775
|
-
showVenue,
|
|
49776
|
-
successMessage,
|
|
49777
|
-
waitlistMessage,
|
|
49778
|
-
membershipMessage,
|
|
49779
|
-
buttonText,
|
|
49780
|
-
buttonVariant,
|
|
49781
|
-
stage
|
|
49782
|
-
});
|
|
49783
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
49784
|
-
className: `course-registration ${className ?? ""}`.trim(),
|
|
49785
|
-
"data-block": "course-registration",
|
|
49786
|
-
...getIslandRootProps("course-registration", blockId),
|
|
49787
|
-
children: [
|
|
49788
|
-
/* @__PURE__ */ jsx(IslandPropsScript, { value: islandProps }),
|
|
49789
|
-
/* @__PURE__ */ jsx("div", {
|
|
49790
|
-
className: "course-registration__summary",
|
|
49791
|
-
children: /* @__PURE__ */ jsx("strong", { children: islandProps.render.display.summaryButtonText })
|
|
49792
|
-
}),
|
|
49793
|
-
children
|
|
49794
|
-
]
|
|
49795
|
-
});
|
|
49796
|
-
}
|
|
49797
|
-
//#endregion
|
|
49798
49021
|
//#region ../blocks/src/system/runtime/nodes/gifting.server.tsx
|
|
49799
49022
|
function GiftingSSR({ blockId, ...rest }) {
|
|
49800
49023
|
const islandProps = buildGiftingInteractiveIslandProps(rest);
|
|
@@ -51280,7 +50503,6 @@ const runtimeBackedBlockServerEntries = {
|
|
|
51280
50503
|
"product-detail": defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(productDetailBlockDefinition), ProductDetailSSR),
|
|
51281
50504
|
cart: defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(cartBlockDefinition), CartSSR),
|
|
51282
50505
|
checkout: defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(checkoutBlockDefinition), CheckoutSSR),
|
|
51283
|
-
"course-registration": defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(courseRegistrationBlockDefinition), CourseRegistrationSSR),
|
|
51284
50506
|
gifting: defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(giftingBlockDefinition), GiftingSSR),
|
|
51285
50507
|
"event-registration": defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(eventRegistrationBlockDefinition), EventRegistrationSSR),
|
|
51286
50508
|
shop: defineRuntimeBackedBlockEntry(requireRuntimeBackedBlockDefinition(shopBlockDefinition), ShopSSR)
|
|
@@ -51313,7 +50535,6 @@ const serverComponentRegistry = {
|
|
|
51313
50535
|
"booking-form": BookingFormSSR,
|
|
51314
50536
|
"event-details": EventDetailsSSR,
|
|
51315
50537
|
"location-map": LocationMapSSR,
|
|
51316
|
-
"course-details": CourseDetailsSSR,
|
|
51317
50538
|
"event-spotlight": EventSpotlight,
|
|
51318
50539
|
"event-combined": EventCombinedSSR,
|
|
51319
50540
|
"offerings-preview": OfferingsPreviewNode,
|
|
@@ -55768,176 +54989,6 @@ ${root} {
|
|
|
55768
54989
|
`;
|
|
55769
54990
|
}
|
|
55770
54991
|
//#endregion
|
|
55771
|
-
//#region ../theme-core/src/blocks/vars/course-details.ts
|
|
55772
|
-
/**
|
|
55773
|
-
* Generate CSS variables for the course-details block.
|
|
55774
|
-
*
|
|
55775
|
-
* Variables defined:
|
|
55776
|
-
* - Enrollment status colors (open/closed)
|
|
55777
|
-
* - Capacity indicator colors (available/low/full)
|
|
55778
|
-
* - Price display colors (free indicator)
|
|
55779
|
-
*/
|
|
55780
|
-
function generateCourseDetailsVars({ themeId }) {
|
|
55781
|
-
return `
|
|
55782
|
-
${`:where([data-theme-scope="${themeId}"]) :where([data-block="course-details"])`} {
|
|
55783
|
-
/* Enrollment status */
|
|
55784
|
-
--cd-enrollment-open-text: rgb(var(--tb-success));
|
|
55785
|
-
--cd-enrollment-closed-text: rgb(var(--tb-mutedText));
|
|
55786
|
-
|
|
55787
|
-
/* Capacity indicator */
|
|
55788
|
-
--cd-capacity-available-text: rgb(var(--tb-success));
|
|
55789
|
-
--cd-capacity-low-text: rgb(var(--tb-warning));
|
|
55790
|
-
--cd-capacity-full-text: rgb(var(--tb-destructive, 239 68 68));
|
|
55791
|
-
|
|
55792
|
-
/* Price styling */
|
|
55793
|
-
--cd-price-free-text: rgb(var(--tb-success));
|
|
55794
|
-
}
|
|
55795
|
-
`;
|
|
55796
|
-
}
|
|
55797
|
-
//#endregion
|
|
55798
|
-
//#region ../theme-core/src/blocks/vars/course-registration.ts
|
|
55799
|
-
const EVENT_WHOLE_SERIES_VARIABLE_BRIDGE = `
|
|
55800
|
-
/* Temporary bridge while persisted Course blocks render the Event-owned
|
|
55801
|
-
whole-series registration runtime. Removed with the Course block. */
|
|
55802
|
-
--er-step-active: var(--cr-step-active);
|
|
55803
|
-
--er-step-inactive: var(--cr-step-inactive);
|
|
55804
|
-
--er-step-completed: var(--cr-step-completed);
|
|
55805
|
-
--er-step-text: var(--cr-step-text);
|
|
55806
|
-
--er-step-text-active: var(--cr-step-text-active);
|
|
55807
|
-
--er-step-connector: var(--cr-step-connector);
|
|
55808
|
-
--er-step-title-size: var(--cr-step-title-size);
|
|
55809
|
-
--er-success-bg: var(--cr-success-bg);
|
|
55810
|
-
--er-success-text: var(--cr-success-text);
|
|
55811
|
-
--er-error-bg: var(--cr-error-bg);
|
|
55812
|
-
--er-error-text: var(--cr-error-text);
|
|
55813
|
-
--er-waitlist-bg: var(--cr-waitlist-bg);
|
|
55814
|
-
--er-waitlist-text: var(--cr-waitlist-text);
|
|
55815
|
-
--er-capacity-available-bg: var(--cr-capacity-available-bg);
|
|
55816
|
-
--er-capacity-available-text: var(--cr-capacity-available-text);
|
|
55817
|
-
--er-capacity-low-bg: var(--cr-capacity-low-bg);
|
|
55818
|
-
--er-capacity-low-text: var(--cr-capacity-low-text);
|
|
55819
|
-
--er-capacity-soldout-bg: var(--cr-capacity-soldout-bg);
|
|
55820
|
-
--er-capacity-soldout-text: var(--cr-capacity-soldout-text);
|
|
55821
|
-
--er-border: var(--cr-border);
|
|
55822
|
-
--er-border-hover: var(--cr-border-hover);
|
|
55823
|
-
--er-border-selected: var(--cr-border-selected);
|
|
55824
|
-
--er-border-error: var(--cr-border-error);
|
|
55825
|
-
--er-focus-ring: var(--cr-focus-ring);
|
|
55826
|
-
--er-required: var(--cr-required);
|
|
55827
|
-
--er-payment-border: var(--cr-payment-border);
|
|
55828
|
-
--er-payment-border-hover: var(--cr-payment-border-hover);
|
|
55829
|
-
--er-payment-border-selected: var(--cr-payment-border-selected);
|
|
55830
|
-
--er-payment-bg-selected: var(--cr-payment-bg-selected);
|
|
55831
|
-
--er-check-bg: var(--cr-check-bg);
|
|
55832
|
-
--er-check-text: var(--cr-check-text);
|
|
55833
|
-
--er-summary-bg: var(--cr-summary-bg);
|
|
55834
|
-
--er-summary-border: var(--cr-summary-border);
|
|
55835
|
-
--er-on-surface: rgb(var(--tb-onSurface, var(--tb-text)));
|
|
55836
|
-
--er-on-surface-hover-bg: rgba(var(--tb-onSurface, var(--tb-text)), 0.05);
|
|
55837
|
-
`;
|
|
55838
|
-
/**
|
|
55839
|
-
* Generate CSS variables for the course-registration block.
|
|
55840
|
-
*
|
|
55841
|
-
* Variables defined:
|
|
55842
|
-
* - Step indicator colors (active, inactive, completed, text, connector)
|
|
55843
|
-
* - Success/error/waitlist state backgrounds and text colors
|
|
55844
|
-
* - Capacity badge colors (available, low, sold-out)
|
|
55845
|
-
* - Border colors for various interaction states
|
|
55846
|
-
* - Input focus and required marker styling
|
|
55847
|
-
* - Payment option card styling
|
|
55848
|
-
* - Checkmark indicator colors
|
|
55849
|
-
* - Summary styling
|
|
55850
|
-
*/
|
|
55851
|
-
function generateCourseRegistrationVars({ themeId }) {
|
|
55852
|
-
return `
|
|
55853
|
-
${`:where([data-theme-scope="${themeId}"]) :where([data-block="course-registration"])`} {
|
|
55854
|
-
/* Step indicator */
|
|
55855
|
-
--cr-step-active: rgb(var(--tb-primary));
|
|
55856
|
-
--cr-step-inactive: rgb(var(--tb-mutedText));
|
|
55857
|
-
--cr-step-completed: rgb(var(--tb-success));
|
|
55858
|
-
--cr-step-text: rgb(255 255 255);
|
|
55859
|
-
--cr-step-text-active: rgb(var(--tb-primaryText, 255 255 255));
|
|
55860
|
-
--cr-step-connector: rgba(var(--tb-border), 0.5);
|
|
55861
|
-
|
|
55862
|
-
/* Step title */
|
|
55863
|
-
--cr-step-title-size: 1.5rem;
|
|
55864
|
-
|
|
55865
|
-
/* State backgrounds with alpha */
|
|
55866
|
-
--cr-success-bg: rgba(var(--tb-success), 0.1);
|
|
55867
|
-
--cr-success-text: rgb(var(--tb-success));
|
|
55868
|
-
--cr-error-bg: rgba(var(--tb-destructive, 239 68 68), 0.1);
|
|
55869
|
-
--cr-error-text: rgb(var(--tb-destructive, 239 68 68));
|
|
55870
|
-
--cr-waitlist-bg: rgba(var(--tb-warning), 0.1);
|
|
55871
|
-
--cr-waitlist-text: rgb(var(--tb-warning));
|
|
55872
|
-
|
|
55873
|
-
/* Capacity badges */
|
|
55874
|
-
--cr-capacity-available-bg: rgba(var(--tb-success), 0.1);
|
|
55875
|
-
--cr-capacity-available-text: rgb(var(--tb-success));
|
|
55876
|
-
--cr-capacity-low-bg: rgba(var(--tb-warning), 0.1);
|
|
55877
|
-
--cr-capacity-low-text: rgb(var(--tb-warning));
|
|
55878
|
-
--cr-capacity-soldout-bg: rgba(var(--tb-destructive, 239 68 68), 0.1);
|
|
55879
|
-
--cr-capacity-soldout-text: rgb(var(--tb-destructive, 239 68 68));
|
|
55880
|
-
|
|
55881
|
-
/* Borders */
|
|
55882
|
-
--cr-border: rgb(var(--tb-border));
|
|
55883
|
-
--cr-border-hover: rgba(var(--tb-primary), 0.5);
|
|
55884
|
-
--cr-border-selected: rgb(var(--tb-primary));
|
|
55885
|
-
--cr-border-error: rgb(var(--tb-destructive, 239 68 68));
|
|
55886
|
-
|
|
55887
|
-
/* Input focus */
|
|
55888
|
-
--cr-focus-ring: rgba(var(--tb-primary), 0.3);
|
|
55889
|
-
|
|
55890
|
-
/* Required marker */
|
|
55891
|
-
--cr-required: rgb(var(--tb-destructive, 239 68 68));
|
|
55892
|
-
|
|
55893
|
-
/* Payment option cards */
|
|
55894
|
-
--cr-payment-border: rgb(var(--tb-border));
|
|
55895
|
-
--cr-payment-border-hover: rgba(var(--tb-primary), 0.5);
|
|
55896
|
-
--cr-payment-border-selected: rgb(var(--tb-primary));
|
|
55897
|
-
--cr-payment-bg-selected: rgba(var(--tb-primary), 0.08);
|
|
55898
|
-
|
|
55899
|
-
/* Checkmark indicator */
|
|
55900
|
-
--cr-check-bg: rgb(var(--tb-primary));
|
|
55901
|
-
--cr-check-text: rgb(var(--tb-primaryText, 255 255 255));
|
|
55902
|
-
|
|
55903
|
-
/* Summary */
|
|
55904
|
-
--cr-summary-bg: rgba(var(--tb-primary), 0.1);
|
|
55905
|
-
--cr-summary-border: rgb(var(--tb-border));
|
|
55906
|
-
|
|
55907
|
-
${EVENT_WHOLE_SERIES_VARIABLE_BRIDGE}
|
|
55908
|
-
|
|
55909
|
-
/* Shared registration-surface mappings (issue 1174).
|
|
55910
|
-
Route the shared --rb-reg-* contract through this block's Tier 3 vars
|
|
55911
|
-
(palette tokens where no --cr-* var exists) so existing --cr-* overrides
|
|
55912
|
-
keep working unchanged. */
|
|
55913
|
-
--rb-reg-radius: var(--rb-block-radius);
|
|
55914
|
-
--rb-reg-border: var(--cr-border);
|
|
55915
|
-
--rb-reg-border-hover: var(--cr-border-hover);
|
|
55916
|
-
--rb-reg-border-selected: var(--cr-border-selected);
|
|
55917
|
-
--rb-reg-bg-selected: var(--cr-payment-bg-selected);
|
|
55918
|
-
--rb-reg-option-bg: rgb(var(--tb-background));
|
|
55919
|
-
--rb-reg-option-hover-shadow: 0 8px 18px rgba(var(--tb-shadow, 15 23 42), 0.08);
|
|
55920
|
-
--rb-reg-surface-bg: rgb(var(--tb-surface));
|
|
55921
|
-
--rb-reg-on-surface: rgb(var(--tb-onSurface, var(--tb-text)));
|
|
55922
|
-
--rb-reg-on-surface-muted: rgba(var(--tb-onSurface, var(--tb-text)), 0.7);
|
|
55923
|
-
--rb-reg-on-surface-subtle: rgba(var(--tb-onSurface, var(--tb-text)), 0.6);
|
|
55924
|
-
--rb-reg-on-surface-faint: rgba(var(--tb-onSurface, var(--tb-text)), 0.5);
|
|
55925
|
-
--rb-reg-check-bg: var(--cr-check-bg);
|
|
55926
|
-
--rb-reg-check-text: var(--cr-check-text);
|
|
55927
|
-
--rb-reg-step-active: var(--cr-step-active);
|
|
55928
|
-
--rb-reg-step-completed: var(--cr-step-completed);
|
|
55929
|
-
--rb-reg-step-inactive: var(--cr-step-inactive);
|
|
55930
|
-
--rb-reg-step-text: var(--cr-step-text);
|
|
55931
|
-
--rb-reg-step-text-active: var(--cr-step-text-active);
|
|
55932
|
-
--rb-reg-step-connector: var(--cr-step-connector);
|
|
55933
|
-
--rb-reg-summary-bg: var(--cr-summary-bg);
|
|
55934
|
-
--rb-reg-summary-border: var(--cr-summary-border);
|
|
55935
|
-
--rb-reg-focus-ring: var(--cr-focus-ring);
|
|
55936
|
-
--rb-reg-shell-line: rgba(var(--tb-mutedText, 100 116 139), 0.22);
|
|
55937
|
-
}
|
|
55938
|
-
`;
|
|
55939
|
-
}
|
|
55940
|
-
//#endregion
|
|
55941
54992
|
//#region ../theme-core/src/blocks/registry.ts
|
|
55942
54993
|
/**
|
|
55943
54994
|
* Global registry of block var generators.
|
|
@@ -55952,8 +55003,6 @@ blockVarRegistry.set("appointment-booking", generateAppointmentBookingVars);
|
|
|
55952
55003
|
blockVarRegistry.set("form", generateFormBlockVars);
|
|
55953
55004
|
blockVarRegistry.set("customer-portal", generateCustomerPortalVars);
|
|
55954
55005
|
blockVarRegistry.set("testimonials", generateTestimonialsVars);
|
|
55955
|
-
blockVarRegistry.set("course-details", generateCourseDetailsVars);
|
|
55956
|
-
blockVarRegistry.set("course-registration", generateCourseRegistrationVars);
|
|
55957
55006
|
/**
|
|
55958
55007
|
* Generate all Tier 3 block-specific CSS variables.
|
|
55959
55008
|
*
|
|
@@ -60845,7 +59894,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
60845
59894
|
* Shared: Registration Surface (issue 1174)
|
|
60846
59895
|
*
|
|
60847
59896
|
* Wizard-surface primitives shared by the event-registration,
|
|
60848
|
-
*
|
|
59897
|
+
* appointment-booking blocks: surface container,
|
|
60849
59898
|
* selectable option cards, step indicator, wizard actions row, on-surface
|
|
60850
59899
|
* text ramp, layout stacks, summary box and skeleton shell lines.
|
|
60851
59900
|
*
|
|
@@ -60888,7 +59937,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
60888
59937
|
}
|
|
60889
59938
|
|
|
60890
59939
|
/* Surface container */
|
|
60891
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59940
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-surface {
|
|
60892
59941
|
border-radius: var(--rb-reg-radius, var(--rb-block-radius, 1rem));
|
|
60893
59942
|
border: 1px solid var(--rb-reg-border, rgb(var(--tb-border, 226 232 240)));
|
|
60894
59943
|
padding: clamp(1rem, 2vw, 1.5rem);
|
|
@@ -60918,7 +59967,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
60918
59967
|
*
|
|
60919
59968
|
* Mirrors \`contextualButtonSurfaceResetStyles()\` in theme-core/buttons; the
|
|
60920
59969
|
* pairing is pinned by registration-surface-action-reset.test.ts. */
|
|
60921
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
59970
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-surface {
|
|
60922
59971
|
--rb-action-primary-base-background-color: initial;
|
|
60923
59972
|
--rb-action-primary-base-background-image: initial;
|
|
60924
59973
|
--rb-action-primary-base-color: initial;
|
|
@@ -61026,7 +60075,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
61026
60075
|
}
|
|
61027
60076
|
|
|
61028
60077
|
/* Selectable option card */
|
|
61029
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60078
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card {
|
|
61030
60079
|
position: relative;
|
|
61031
60080
|
display: flex;
|
|
61032
60081
|
align-items: flex-start;
|
|
@@ -61043,34 +60092,34 @@ const containerResponsiveThemeCss = `/*
|
|
|
61043
60092
|
box-shadow var(--rb-block-transition, 150ms) ease;
|
|
61044
60093
|
}
|
|
61045
60094
|
|
|
61046
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60095
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card:hover:not(:disabled):not([aria-disabled="true"]) {
|
|
61047
60096
|
border-color: var(--rb-reg-border-hover, rgba(var(--tb-primary, 17 24 39), 0.5));
|
|
61048
60097
|
box-shadow: var(--rb-reg-option-hover-shadow, 0 8px 18px rgba(var(--tb-shadow, 15 23 42), 0.08));
|
|
61049
60098
|
}
|
|
61050
60099
|
|
|
61051
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60100
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card:focus-visible {
|
|
61052
60101
|
outline: 2px solid var(--rb-reg-focus-ring, rgba(var(--tb-primary, 17 24 39), 0.3));
|
|
61053
60102
|
outline-offset: 2px;
|
|
61054
60103
|
}
|
|
61055
60104
|
|
|
61056
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60105
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card--selected {
|
|
61057
60106
|
border-color: var(--rb-reg-border-selected, rgb(var(--tb-primary, 17 24 39)));
|
|
61058
60107
|
background-color: var(--rb-reg-bg-selected, rgba(var(--tb-primary, 17 24 39), 0.08));
|
|
61059
60108
|
box-shadow: 0 0 0 1px var(--rb-reg-border-selected, rgb(var(--tb-primary, 17 24 39)));
|
|
61060
60109
|
}
|
|
61061
60110
|
|
|
61062
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60111
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card--disabled {
|
|
61063
60112
|
cursor: not-allowed;
|
|
61064
60113
|
opacity: 0.7;
|
|
61065
60114
|
}
|
|
61066
60115
|
|
|
61067
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60116
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-card--disabled:hover {
|
|
61068
60117
|
border-color: var(--rb-reg-border, rgb(var(--tb-border, 226 232 240)));
|
|
61069
60118
|
box-shadow: none;
|
|
61070
60119
|
}
|
|
61071
60120
|
|
|
61072
60121
|
/* Check indicator */
|
|
61073
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60122
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-check {
|
|
61074
60123
|
flex-shrink: 0;
|
|
61075
60124
|
width: 1.25rem;
|
|
61076
60125
|
height: 1.25rem;
|
|
@@ -61081,18 +60130,18 @@ const containerResponsiveThemeCss = `/*
|
|
|
61081
60130
|
justify-content: center;
|
|
61082
60131
|
}
|
|
61083
60132
|
|
|
61084
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60133
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-option-check svg {
|
|
61085
60134
|
width: 0.75rem;
|
|
61086
60135
|
height: 0.75rem;
|
|
61087
60136
|
color: var(--rb-reg-check-text, rgb(var(--tb-primaryText, var(--tb-primaryForeground, 255 255 255))));
|
|
61088
60137
|
}
|
|
61089
60138
|
|
|
61090
60139
|
/* Step indicator */
|
|
61091
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60140
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-steps-nav {
|
|
61092
60141
|
margin-bottom: 1.5rem;
|
|
61093
60142
|
}
|
|
61094
60143
|
|
|
61095
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60144
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-steps {
|
|
61096
60145
|
display: flex;
|
|
61097
60146
|
align-items: center;
|
|
61098
60147
|
justify-content: center;
|
|
@@ -61102,13 +60151,13 @@ const containerResponsiveThemeCss = `/*
|
|
|
61102
60151
|
margin: 0;
|
|
61103
60152
|
}
|
|
61104
60153
|
|
|
61105
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60154
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step {
|
|
61106
60155
|
display: flex;
|
|
61107
60156
|
align-items: center;
|
|
61108
60157
|
gap: 0.5rem;
|
|
61109
60158
|
}
|
|
61110
60159
|
|
|
61111
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60160
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-circle {
|
|
61112
60161
|
width: 1.75rem;
|
|
61113
60162
|
height: 1.75rem;
|
|
61114
60163
|
border-radius: 50%;
|
|
@@ -61122,47 +60171,47 @@ const containerResponsiveThemeCss = `/*
|
|
|
61122
60171
|
transition: background-color var(--rb-block-transition, 150ms) ease;
|
|
61123
60172
|
}
|
|
61124
60173
|
|
|
61125
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60174
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-circle--active {
|
|
61126
60175
|
background: var(--rb-reg-step-active, rgb(var(--tb-primary, 17 24 39)));
|
|
61127
60176
|
color: var(--rb-reg-step-text-active, rgb(var(--tb-primaryText, var(--tb-primaryForeground, 255 255 255))));
|
|
61128
60177
|
}
|
|
61129
60178
|
|
|
61130
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60179
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-circle--completed {
|
|
61131
60180
|
background: var(--rb-reg-step-completed, rgb(var(--tb-success, 22 163 74)));
|
|
61132
60181
|
color: var(--rb-reg-step-text-active, rgb(var(--tb-primaryText, var(--tb-primaryForeground, 255 255 255))));
|
|
61133
60182
|
}
|
|
61134
60183
|
|
|
61135
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60184
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-check {
|
|
61136
60185
|
width: 0.75rem;
|
|
61137
60186
|
height: 0.75rem;
|
|
61138
60187
|
}
|
|
61139
60188
|
|
|
61140
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60189
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-connector {
|
|
61141
60190
|
width: 2rem;
|
|
61142
60191
|
height: 2px;
|
|
61143
60192
|
background: var(--rb-reg-step-connector, rgba(var(--tb-border, 226 232 240), 0.5));
|
|
61144
60193
|
}
|
|
61145
60194
|
|
|
61146
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60195
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-label {
|
|
61147
60196
|
font-size: 0.75rem;
|
|
61148
60197
|
color: var(--rb-reg-on-surface, rgb(var(--tb-onSurface, var(--tb-text, 15 23 42))));
|
|
61149
60198
|
display: none;
|
|
61150
60199
|
}
|
|
61151
60200
|
|
|
61152
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60201
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-label--active {
|
|
61153
60202
|
font-weight: 500;
|
|
61154
60203
|
}
|
|
61155
60204
|
|
|
61156
60205
|
@container rb-site (min-width: 640px) {
|
|
61157
60206
|
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
61158
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60207
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-step-label {
|
|
61159
60208
|
display: inline;
|
|
61160
60209
|
}
|
|
61161
60210
|
}
|
|
61162
60211
|
}
|
|
61163
60212
|
|
|
61164
60213
|
/* Wizard actions row */
|
|
61165
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60214
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-wizard-actions {
|
|
61166
60215
|
display: flex;
|
|
61167
60216
|
justify-content: space-between;
|
|
61168
60217
|
align-items: center;
|
|
@@ -61171,56 +60220,56 @@ const containerResponsiveThemeCss = `/*
|
|
|
61171
60220
|
}
|
|
61172
60221
|
|
|
61173
60222
|
/* When there's only one action (no back button), push it to the right */
|
|
61174
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60223
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-wizard-actions > :only-child {
|
|
61175
60224
|
margin-inline-start: auto;
|
|
61176
60225
|
}
|
|
61177
60226
|
|
|
61178
60227
|
/* On-surface text ramp */
|
|
61179
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60228
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-on-surface {
|
|
61180
60229
|
color: var(--rb-reg-on-surface, rgb(var(--tb-onSurface, var(--tb-text, 15 23 42))));
|
|
61181
60230
|
}
|
|
61182
60231
|
|
|
61183
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60232
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-on-surface--muted {
|
|
61184
60233
|
color: var(--rb-reg-on-surface-muted, rgba(var(--tb-onSurface, var(--tb-text, 15 23 42)), 0.7));
|
|
61185
60234
|
}
|
|
61186
60235
|
|
|
61187
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60236
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-on-surface--subtle {
|
|
61188
60237
|
color: var(--rb-reg-on-surface-subtle, rgba(var(--tb-onSurface, var(--tb-text, 15 23 42)), 0.6));
|
|
61189
60238
|
}
|
|
61190
60239
|
|
|
61191
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60240
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-on-surface--faint {
|
|
61192
60241
|
color: var(--rb-reg-on-surface-faint, rgba(var(--tb-onSurface, var(--tb-text, 15 23 42)), 0.5));
|
|
61193
60242
|
}
|
|
61194
60243
|
|
|
61195
60244
|
/* Layout stacks */
|
|
61196
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60245
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-stack {
|
|
61197
60246
|
display: flex;
|
|
61198
60247
|
flex-direction: column;
|
|
61199
60248
|
gap: 1rem;
|
|
61200
60249
|
}
|
|
61201
60250
|
|
|
61202
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60251
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-stack--sm {
|
|
61203
60252
|
gap: 0.75rem;
|
|
61204
60253
|
}
|
|
61205
60254
|
|
|
61206
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60255
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-row {
|
|
61207
60256
|
display: flex;
|
|
61208
60257
|
align-items: center;
|
|
61209
60258
|
gap: 1rem;
|
|
61210
60259
|
}
|
|
61211
60260
|
|
|
61212
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60261
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-row--between {
|
|
61213
60262
|
justify-content: space-between;
|
|
61214
60263
|
align-items: flex-start;
|
|
61215
60264
|
}
|
|
61216
60265
|
|
|
61217
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60266
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-grid {
|
|
61218
60267
|
display: grid;
|
|
61219
60268
|
gap: 0.75rem;
|
|
61220
60269
|
}
|
|
61221
60270
|
|
|
61222
60271
|
/* Summary box */
|
|
61223
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60272
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-reg-summary {
|
|
61224
60273
|
padding: 1rem;
|
|
61225
60274
|
border-radius: calc(var(--rb-reg-radius, var(--rb-block-radius, 1rem)) * 0.75);
|
|
61226
60275
|
border: 1px solid var(--rb-reg-summary-border, rgb(var(--tb-border, 226 232 240)));
|
|
@@ -61228,7 +60277,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
61228
60277
|
}
|
|
61229
60278
|
|
|
61230
60279
|
/* Skeleton shell lines */
|
|
61231
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60280
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-line {
|
|
61232
60281
|
height: 0.75rem;
|
|
61233
60282
|
border-radius: 9999px;
|
|
61234
60283
|
background: linear-gradient(
|
|
@@ -61239,24 +60288,24 @@ const containerResponsiveThemeCss = `/*
|
|
|
61239
60288
|
);
|
|
61240
60289
|
}
|
|
61241
60290
|
|
|
61242
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60291
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-line--lg {
|
|
61243
60292
|
width: min(26rem, 82%);
|
|
61244
60293
|
}
|
|
61245
60294
|
|
|
61246
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60295
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-line--md {
|
|
61247
60296
|
width: min(19rem, 68%);
|
|
61248
60297
|
}
|
|
61249
60298
|
|
|
61250
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60299
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-line--sm {
|
|
61251
60300
|
width: min(14rem, 52%);
|
|
61252
60301
|
}
|
|
61253
60302
|
|
|
61254
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60303
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-line--xs {
|
|
61255
60304
|
width: min(10rem, 42%);
|
|
61256
60305
|
}
|
|
61257
60306
|
|
|
61258
60307
|
/* Skeleton block (rectangular placeholder, pulses) */
|
|
61259
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60308
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-block {
|
|
61260
60309
|
height: 2.5rem;
|
|
61261
60310
|
width: 100%;
|
|
61262
60311
|
border-radius: var(--rb-reg-radius, var(--rb-block-radius, 1rem));
|
|
@@ -61274,7 +60323,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
61274
60323
|
}
|
|
61275
60324
|
|
|
61276
60325
|
@media (prefers-reduced-motion: reduce) {
|
|
61277
|
-
:where(.theme-scope) :where([data-block="event-registration"], [data-block="
|
|
60326
|
+
:where(.theme-scope) :where([data-block="event-registration"], [data-block="appointment-booking"]) .rb-shell-block {
|
|
61278
60327
|
animation: none;
|
|
61279
60328
|
}
|
|
61280
60329
|
}
|
|
@@ -67656,1674 +66705,363 @@ const containerResponsiveThemeCss = `/*
|
|
|
67656
66705
|
cursor: not-allowed;
|
|
67657
66706
|
}
|
|
67658
66707
|
|
|
67659
|
-
/*
|
|
67660
|
-
*
|
|
67661
|
-
*
|
|
66708
|
+
/* =============================================================================
|
|
66709
|
+
* Block: Newsletter Signup
|
|
66710
|
+
* =============================================================================
|
|
67662
66711
|
*/
|
|
67663
66712
|
|
|
67664
|
-
|
|
67665
|
-
|
|
67666
|
-
|
|
67667
|
-
|
|
66713
|
+
/* Newsletter copy styling */
|
|
66714
|
+
:where(.theme-scope) :where([data-block="newsletter-signup"]) .newsletter-copy-title {
|
|
66715
|
+
font-size: 1.5rem;
|
|
66716
|
+
font-weight: 600;
|
|
67668
66717
|
}
|
|
67669
66718
|
|
|
67670
|
-
|
|
67671
|
-
:
|
|
67672
|
-
|
|
66719
|
+
:where(.theme-scope) :where([data-block="newsletter-signup"]) .newsletter-copy-subtitle {
|
|
66720
|
+
font-size: 1rem;
|
|
66721
|
+
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
66722
|
+
opacity: 0.85;
|
|
67673
66723
|
}
|
|
67674
66724
|
|
|
67675
|
-
/*
|
|
67676
|
-
:where(.theme-scope) .
|
|
67677
|
-
|
|
67678
|
-
|
|
67679
|
-
|
|
66725
|
+
/* Newsletter form container */
|
|
66726
|
+
:where(.theme-scope) .newsletter-form {
|
|
66727
|
+
width: 100%;
|
|
66728
|
+
max-width: 32rem;
|
|
66729
|
+
margin-left: auto;
|
|
66730
|
+
margin-right: auto;
|
|
67680
66731
|
}
|
|
67681
66732
|
|
|
67682
|
-
/*
|
|
67683
|
-
:where(.theme-scope) .
|
|
67684
|
-
|
|
66733
|
+
/* Newsletter form fields container */
|
|
66734
|
+
:where(.theme-scope) .newsletter-form-fields {
|
|
66735
|
+
display: flex;
|
|
66736
|
+
flex-direction: column;
|
|
66737
|
+
gap: var(--rb-gap-sm, 0.75rem);
|
|
67685
66738
|
}
|
|
67686
66739
|
|
|
67687
|
-
|
|
67688
|
-
|
|
66740
|
+
/* Individual field styling */
|
|
66741
|
+
:where(.theme-scope) .newsletter-field {
|
|
66742
|
+
display: flex;
|
|
66743
|
+
flex-direction: column;
|
|
66744
|
+
gap: 0.25rem;
|
|
67689
66745
|
}
|
|
67690
66746
|
|
|
67691
|
-
/*
|
|
67692
|
-
|
|
67693
|
-
|
|
67694
|
-
|
|
67695
|
-
*/
|
|
67696
|
-
|
|
67697
|
-
/* Block-local surface text tokens for cards/modals that sit on theme surface. */
|
|
67698
|
-
:where(.theme-scope)
|
|
67699
|
-
:where(
|
|
67700
|
-
[data-block='event-registration'],
|
|
67701
|
-
[data-block='course-registration']
|
|
67702
|
-
) {
|
|
67703
|
-
--er-on-surface: rgb(var(--tb-onSurface, var(--tb-text)));
|
|
67704
|
-
--er-on-surface-hover-bg: rgba(var(--tb-onSurface, var(--tb-text)), 0.05);
|
|
66747
|
+
/* Required indicator */
|
|
66748
|
+
:where(.theme-scope) .newsletter-required {
|
|
66749
|
+
color: rgb(var(--tb-primary));
|
|
66750
|
+
margin-left: 0.125rem;
|
|
67705
66751
|
}
|
|
67706
66752
|
|
|
67707
|
-
/*
|
|
67708
|
-
|
|
67709
|
-
|
|
67710
|
-
:where(.theme-scope)
|
|
67711
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67712
|
-
.er-whole-series-container {
|
|
67713
|
-
padding: 1.5rem;
|
|
67714
|
-
margin-inline: auto;
|
|
66753
|
+
/* Submit button container */
|
|
66754
|
+
:where(.theme-scope) .newsletter-submit {
|
|
66755
|
+
margin-top: 0.5rem;
|
|
67715
66756
|
}
|
|
67716
66757
|
|
|
67717
|
-
/*
|
|
67718
|
-
:where(.theme-scope)
|
|
67719
|
-
:
|
|
67720
|
-
|
|
67721
|
-
|
|
67722
|
-
border: 1px dashed rgba(var(--tb-foreground), 0.2);
|
|
67723
|
-
padding: 2.5rem;
|
|
67724
|
-
text-align: center;
|
|
66758
|
+
/* ALTCHA widget container */
|
|
66759
|
+
:where(.theme-scope) .newsletter-altcha {
|
|
66760
|
+
margin-top: 0.75rem;
|
|
66761
|
+
display: flex;
|
|
66762
|
+
justify-content: center;
|
|
67725
66763
|
}
|
|
67726
66764
|
|
|
67727
|
-
|
|
67728
|
-
|
|
67729
|
-
|
|
67730
|
-
|
|
66765
|
+
/* Privacy note */
|
|
66766
|
+
:where(.theme-scope) .newsletter-privacy-note {
|
|
66767
|
+
margin-top: 0.75rem;
|
|
66768
|
+
font-size: 1rem;
|
|
66769
|
+
line-height: 1.6;
|
|
66770
|
+
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
66771
|
+
text-align: center;
|
|
67731
66772
|
}
|
|
67732
66773
|
|
|
67733
66774
|
/* =============================================================================
|
|
67734
|
-
*
|
|
66775
|
+
* Inline Variant - Horizontal layout
|
|
67735
66776
|
* =============================================================================
|
|
67736
66777
|
*/
|
|
67737
|
-
:where(.theme-scope)
|
|
67738
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67739
|
-
.er-whole-series-layout {
|
|
67740
|
-
display: grid;
|
|
67741
|
-
gap: 1.5rem;
|
|
67742
|
-
grid-template-columns: 1fr;
|
|
67743
|
-
}
|
|
67744
66778
|
|
|
67745
|
-
|
|
67746
|
-
|
|
67747
|
-
:
|
|
67748
|
-
|
|
67749
|
-
|
|
67750
|
-
[data-block='course-registration']
|
|
67751
|
-
)
|
|
67752
|
-
.er-whole-series-layout--with-sidebar {
|
|
67753
|
-
grid-template-columns: 1fr 280px;
|
|
67754
|
-
}
|
|
67755
|
-
}
|
|
66779
|
+
:where(.theme-scope) .newsletter-inline .newsletter-form-fields {
|
|
66780
|
+
flex-direction: row;
|
|
66781
|
+
align-items: flex-end;
|
|
66782
|
+
flex-wrap: wrap;
|
|
66783
|
+
gap: var(--rb-gap-sm, 0.75rem);
|
|
67756
66784
|
}
|
|
67757
66785
|
|
|
67758
|
-
:where(.theme-scope)
|
|
67759
|
-
:
|
|
67760
|
-
|
|
67761
|
-
min-width: 0;
|
|
66786
|
+
:where(.theme-scope) .newsletter-inline .newsletter-field {
|
|
66787
|
+
flex: 1 1 auto;
|
|
66788
|
+
min-width: 10rem;
|
|
67762
66789
|
}
|
|
67763
66790
|
|
|
67764
|
-
:where(.theme-scope)
|
|
67765
|
-
:
|
|
67766
|
-
|
|
67767
|
-
display: none;
|
|
66791
|
+
:where(.theme-scope) .newsletter-inline .newsletter-submit {
|
|
66792
|
+
margin-top: 0;
|
|
66793
|
+
flex-shrink: 0;
|
|
67768
66794
|
}
|
|
67769
66795
|
|
|
67770
|
-
|
|
66796
|
+
/* Mobile fallback for inline variant */
|
|
66797
|
+
@container rb-site (max-width: 640px) {
|
|
67771
66798
|
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
67772
|
-
:where(.theme-scope)
|
|
67773
|
-
:
|
|
67774
|
-
|
|
67775
|
-
|
|
67776
|
-
|
|
67777
|
-
|
|
67778
|
-
display: block;
|
|
66799
|
+
:where(.theme-scope) .newsletter-inline .newsletter-form-fields {
|
|
66800
|
+
flex-direction: column;
|
|
66801
|
+
}
|
|
66802
|
+
|
|
66803
|
+
:where(.theme-scope) .newsletter-inline .newsletter-field {
|
|
66804
|
+
min-width: 100%;
|
|
67779
66805
|
}
|
|
67780
66806
|
}
|
|
67781
66807
|
}
|
|
67782
66808
|
|
|
67783
66809
|
/* =============================================================================
|
|
67784
|
-
*
|
|
66810
|
+
* Editorial Split Variant
|
|
67785
66811
|
* =============================================================================
|
|
67786
66812
|
*/
|
|
67787
|
-
:where(.theme-scope)
|
|
67788
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67789
|
-
.er-whole-series-steps {
|
|
67790
|
-
display: flex;
|
|
67791
|
-
align-items: center;
|
|
67792
|
-
gap: 0.5rem;
|
|
67793
|
-
margin-bottom: 1.5rem;
|
|
67794
|
-
}
|
|
67795
66813
|
|
|
67796
|
-
:where(.theme-scope)
|
|
67797
|
-
:
|
|
67798
|
-
|
|
67799
|
-
|
|
66814
|
+
:where(.theme-scope) .newsletter-editorial-split {
|
|
66815
|
+
display: grid;
|
|
66816
|
+
grid-template-columns: minmax(0, 0.9fr) minmax(20rem, 1.1fr);
|
|
66817
|
+
gap: clamp(2.5rem, 7vw, 7rem);
|
|
67800
66818
|
align-items: center;
|
|
67801
|
-
|
|
66819
|
+
text-align: left;
|
|
67802
66820
|
}
|
|
67803
66821
|
|
|
67804
|
-
:where(.theme-scope)
|
|
67805
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67806
|
-
.er-whole-series-step-circle {
|
|
67807
|
-
width: 1.75rem;
|
|
67808
|
-
height: 1.75rem;
|
|
67809
|
-
border-radius: 9999px;
|
|
66822
|
+
:where(.theme-scope) .newsletter-editorial-split-copy {
|
|
67810
66823
|
display: flex;
|
|
67811
|
-
|
|
67812
|
-
|
|
67813
|
-
font-size: 0.75rem;
|
|
67814
|
-
font-weight: 600;
|
|
67815
|
-
background: var(--er-step-inactive);
|
|
67816
|
-
color: var(--er-step-text);
|
|
67817
|
-
transition: background-color 0.2s ease;
|
|
66824
|
+
flex-direction: column;
|
|
66825
|
+
gap: var(--rb-gap-sm, 0.75rem);
|
|
67818
66826
|
}
|
|
67819
66827
|
|
|
67820
|
-
:where(.theme-scope)
|
|
67821
|
-
:
|
|
67822
|
-
.er-whole-series-step-circle--active {
|
|
67823
|
-
background: var(--er-step-active);
|
|
67824
|
-
color: var(--er-step-text-active);
|
|
66828
|
+
:where(.theme-scope) .newsletter-editorial-split-form {
|
|
66829
|
+
min-width: 0;
|
|
67825
66830
|
}
|
|
67826
66831
|
|
|
67827
|
-
:where(.theme-scope)
|
|
67828
|
-
:
|
|
67829
|
-
|
|
67830
|
-
background: var(--er-step-completed);
|
|
67831
|
-
color: var(--er-step-text);
|
|
66832
|
+
:where(.theme-scope) .newsletter-editorial-split .newsletter-form {
|
|
66833
|
+
max-width: none;
|
|
66834
|
+
margin-inline: 0;
|
|
67832
66835
|
}
|
|
67833
66836
|
|
|
67834
|
-
:where(.theme-scope)
|
|
67835
|
-
:
|
|
67836
|
-
.er-whole-series-step-label {
|
|
67837
|
-
font-size: 0.875rem;
|
|
66837
|
+
:where(.theme-scope) .newsletter-editorial-split .newsletter-copy-title {
|
|
66838
|
+
font-size: clamp(2rem, 4vw, 3.5rem);
|
|
67838
66839
|
font-weight: 500;
|
|
67839
|
-
color: rgb(var(--tb-mutedText));
|
|
67840
|
-
display: none;
|
|
67841
66840
|
}
|
|
67842
66841
|
|
|
67843
|
-
|
|
66842
|
+
:where(.theme-scope) .newsletter-editorial-split .newsletter-privacy-note {
|
|
66843
|
+
text-align: left;
|
|
66844
|
+
}
|
|
66845
|
+
|
|
66846
|
+
@container rb-site (max-width: 767px) {
|
|
67844
66847
|
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
67845
|
-
:where(.theme-scope)
|
|
67846
|
-
:
|
|
67847
|
-
|
|
67848
|
-
[data-block='course-registration']
|
|
67849
|
-
)
|
|
67850
|
-
.er-whole-series-step-label {
|
|
67851
|
-
display: block;
|
|
66848
|
+
:where(.theme-scope) .newsletter-editorial-split {
|
|
66849
|
+
grid-template-columns: minmax(0, 1fr);
|
|
66850
|
+
gap: 2rem;
|
|
67852
66851
|
}
|
|
67853
66852
|
}
|
|
67854
66853
|
}
|
|
67855
66854
|
|
|
67856
|
-
|
|
67857
|
-
|
|
67858
|
-
|
|
67859
|
-
|
|
67860
|
-
font-weight: 600;
|
|
67861
|
-
}
|
|
67862
|
-
|
|
67863
|
-
:where(.theme-scope)
|
|
67864
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67865
|
-
.er-whole-series-step-connector {
|
|
67866
|
-
flex: 1;
|
|
67867
|
-
height: 2px;
|
|
67868
|
-
background: var(--er-step-connector);
|
|
67869
|
-
min-width: 1rem;
|
|
67870
|
-
}
|
|
66855
|
+
/* =============================================================================
|
|
66856
|
+
* Success State
|
|
66857
|
+
* =============================================================================
|
|
66858
|
+
*/
|
|
67871
66859
|
|
|
67872
|
-
:where(.theme-scope)
|
|
67873
|
-
:
|
|
67874
|
-
.er-whole-series-step-connector--completed {
|
|
67875
|
-
background: var(--er-step-completed);
|
|
66860
|
+
:where(.theme-scope) .newsletter-success {
|
|
66861
|
+
text-align: center;
|
|
67876
66862
|
}
|
|
67877
66863
|
|
|
67878
|
-
:where(.theme-scope)
|
|
67879
|
-
:
|
|
67880
|
-
|
|
67881
|
-
|
|
67882
|
-
|
|
66864
|
+
:where(.theme-scope) .newsletter-success .fb-success {
|
|
66865
|
+
padding: 1rem 1.5rem;
|
|
66866
|
+
background-color: rgba(var(--tb-success, 34 197 94), 0.1);
|
|
66867
|
+
border-radius: var(--radius-md, 0.5rem);
|
|
66868
|
+
color: rgb(var(--tb-text));
|
|
67883
66869
|
}
|
|
67884
66870
|
|
|
67885
66871
|
/* =============================================================================
|
|
67886
|
-
*
|
|
66872
|
+
* Block: Contact + Newsletter
|
|
67887
66873
|
* =============================================================================
|
|
67888
66874
|
*/
|
|
67889
|
-
|
|
67890
|
-
|
|
67891
|
-
.er-whole-series-run-list {
|
|
66875
|
+
|
|
66876
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-grid {
|
|
67892
66877
|
display: grid;
|
|
67893
|
-
|
|
66878
|
+
grid-template-columns: repeat(auto-fit, minmax(min(24rem, 100%), 1fr));
|
|
66879
|
+
gap: clamp(2.5rem, 6vw, 4rem);
|
|
66880
|
+
align-items: start;
|
|
67894
66881
|
}
|
|
67895
66882
|
|
|
67896
|
-
|
|
67897
|
-
|
|
67898
|
-
* =============================================================================
|
|
67899
|
-
*/
|
|
67900
|
-
:where(.theme-scope)
|
|
67901
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67902
|
-
.er-whole-series-run-card {
|
|
67903
|
-
border-radius: var(--rb-block-radius);
|
|
67904
|
-
border: 1px solid var(--er-border);
|
|
67905
|
-
padding: 1rem;
|
|
67906
|
-
background: rgb(var(--tb-background));
|
|
67907
|
-
cursor: pointer;
|
|
67908
|
-
transition:
|
|
67909
|
-
border-color var(--rb-block-transition) ease,
|
|
67910
|
-
transform var(--rb-block-transition) ease;
|
|
66883
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-column {
|
|
66884
|
+
min-width: 0;
|
|
67911
66885
|
}
|
|
67912
66886
|
|
|
67913
|
-
:where(.theme-scope)
|
|
67914
|
-
:
|
|
67915
|
-
.er-whole-series-run-card:hover {
|
|
67916
|
-
border-color: var(--er-border-hover);
|
|
67917
|
-
transform: translateY(-1px);
|
|
66887
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-copy {
|
|
66888
|
+
margin-bottom: 1.5rem;
|
|
67918
66889
|
}
|
|
67919
66890
|
|
|
67920
|
-
:where(.theme-scope)
|
|
67921
|
-
|
|
67922
|
-
|
|
67923
|
-
outline: 2px solid var(--er-focus-ring);
|
|
67924
|
-
outline-offset: 2px;
|
|
66891
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .form-copy-title,
|
|
66892
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-copy-title {
|
|
66893
|
+
margin: 0 0 0.75rem;
|
|
67925
66894
|
}
|
|
67926
66895
|
|
|
67927
|
-
:where(.theme-scope)
|
|
67928
|
-
|
|
67929
|
-
|
|
67930
|
-
border-color: var(--er-border-selected);
|
|
67931
|
-
box-shadow: 0 0 0 3px var(--er-focus-ring);
|
|
66896
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .form-copy-intro,
|
|
66897
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-copy-subtitle {
|
|
66898
|
+
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
67932
66899
|
}
|
|
67933
66900
|
|
|
67934
|
-
:where(.theme-scope)
|
|
67935
|
-
:
|
|
67936
|
-
|
|
67937
|
-
|
|
67938
|
-
font-weight: 700;
|
|
67939
|
-
font-size: 1.125rem;
|
|
66901
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-info {
|
|
66902
|
+
display: flex;
|
|
66903
|
+
flex-direction: column;
|
|
66904
|
+
align-items: flex-start;
|
|
67940
66905
|
}
|
|
67941
66906
|
|
|
67942
|
-
:where(.theme-scope)
|
|
67943
|
-
:
|
|
67944
|
-
|
|
67945
|
-
margin: 0
|
|
67946
|
-
opacity: 0.8;
|
|
66907
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-form {
|
|
66908
|
+
max-width: none;
|
|
66909
|
+
margin-left: 0;
|
|
66910
|
+
margin-right: 0;
|
|
67947
66911
|
}
|
|
67948
66912
|
|
|
67949
|
-
:where(.theme-scope)
|
|
67950
|
-
:
|
|
67951
|
-
.er-whole-series-run-card__sessions,
|
|
67952
|
-
:where(.theme-scope)
|
|
67953
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67954
|
-
.er-whole-series-run-card__price,
|
|
67955
|
-
:where(.theme-scope)
|
|
67956
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67957
|
-
.er-whole-series-run-card__capacity,
|
|
67958
|
-
:where(.theme-scope)
|
|
67959
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67960
|
-
.er-whole-series-run-card__venue {
|
|
67961
|
-
margin: 0.25rem 0 0 0;
|
|
67962
|
-
opacity: 0.85;
|
|
66913
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-privacy-note {
|
|
66914
|
+
text-align: left;
|
|
67963
66915
|
}
|
|
67964
66916
|
|
|
67965
|
-
|
|
67966
|
-
|
|
67967
|
-
|
|
67968
|
-
|
|
67969
|
-
:where(.theme-scope)
|
|
67970
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
67971
|
-
.er-whole-series-capacity-badge {
|
|
67972
|
-
display: inline-block;
|
|
67973
|
-
padding: 0.125rem 0.5rem;
|
|
67974
|
-
border-radius: 9999px;
|
|
67975
|
-
font-size: 0.75rem;
|
|
67976
|
-
font-weight: 500;
|
|
66917
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-form {
|
|
66918
|
+
display: flex;
|
|
66919
|
+
flex-direction: column;
|
|
66920
|
+
gap: 1rem;
|
|
67977
66921
|
}
|
|
67978
66922
|
|
|
67979
|
-
:where(.theme-scope)
|
|
67980
|
-
:
|
|
67981
|
-
|
|
67982
|
-
|
|
67983
|
-
color: var(--er-capacity-available-text);
|
|
66923
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-row-2 {
|
|
66924
|
+
display: grid;
|
|
66925
|
+
grid-template-columns: repeat(auto-fit, minmax(min(14rem, 100%), 1fr));
|
|
66926
|
+
gap: 1rem;
|
|
67984
66927
|
}
|
|
67985
66928
|
|
|
67986
|
-
:where(.theme-scope)
|
|
67987
|
-
:
|
|
67988
|
-
|
|
67989
|
-
|
|
67990
|
-
color: var(--er-capacity-low-text);
|
|
66929
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-field {
|
|
66930
|
+
display: flex;
|
|
66931
|
+
flex-direction: column;
|
|
66932
|
+
gap: 0.25rem;
|
|
67991
66933
|
}
|
|
67992
66934
|
|
|
67993
|
-
:where(.theme-scope)
|
|
67994
|
-
:
|
|
67995
|
-
|
|
67996
|
-
|
|
67997
|
-
|
|
66935
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-fieldset {
|
|
66936
|
+
display: flex;
|
|
66937
|
+
flex-direction: column;
|
|
66938
|
+
gap: 0.5rem;
|
|
66939
|
+
border: none;
|
|
66940
|
+
padding: 0;
|
|
66941
|
+
margin: 0;
|
|
67998
66942
|
}
|
|
67999
66943
|
|
|
68000
|
-
|
|
68001
|
-
|
|
68002
|
-
|
|
68003
|
-
|
|
68004
|
-
:where(.theme-scope)
|
|
68005
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68006
|
-
.er-whole-series-details {
|
|
68007
|
-
display: grid;
|
|
68008
|
-
gap: 1rem;
|
|
66944
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-inline {
|
|
66945
|
+
display: flex;
|
|
66946
|
+
align-items: center;
|
|
66947
|
+
gap: 0.5rem;
|
|
68009
66948
|
}
|
|
68010
66949
|
|
|
68011
|
-
:where(.theme-scope)
|
|
68012
|
-
|
|
68013
|
-
|
|
66950
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-success,
|
|
66951
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-error,
|
|
66952
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-empty {
|
|
68014
66953
|
border-radius: var(--rb-block-radius);
|
|
68015
|
-
border: 1px solid var(--er-summary-border);
|
|
68016
66954
|
padding: 1rem;
|
|
68017
|
-
|
|
68018
|
-
}
|
|
68019
|
-
|
|
68020
|
-
:where(.theme-scope)
|
|
68021
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68022
|
-
.er-whole-series-summary__title {
|
|
68023
|
-
margin: 0;
|
|
68024
|
-
font-size: 1.25rem;
|
|
68025
|
-
font-weight: 800;
|
|
66955
|
+
font-size: 0.875rem;
|
|
68026
66956
|
}
|
|
68027
66957
|
|
|
68028
|
-
:where(.theme-scope)
|
|
68029
|
-
:
|
|
68030
|
-
|
|
68031
|
-
|
|
68032
|
-
font-weight: 700;
|
|
66958
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-success {
|
|
66959
|
+
background-color: var(--fb-success-bg);
|
|
66960
|
+
color: var(--fb-success-text);
|
|
66961
|
+
border: 1px solid var(--fb-success-border);
|
|
68033
66962
|
}
|
|
68034
66963
|
|
|
68035
|
-
:where(.theme-scope)
|
|
68036
|
-
:
|
|
68037
|
-
|
|
68038
|
-
|
|
68039
|
-
padding: 0;
|
|
68040
|
-
margin: 0;
|
|
68041
|
-
display: grid;
|
|
68042
|
-
gap: 0.35rem;
|
|
66964
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-error {
|
|
66965
|
+
background-color: var(--fb-error-bg);
|
|
66966
|
+
color: var(--fb-error-text);
|
|
66967
|
+
border: 1px solid var(--fb-error-border);
|
|
68043
66968
|
}
|
|
68044
66969
|
|
|
68045
|
-
:where(.theme-scope)
|
|
68046
|
-
:
|
|
68047
|
-
|
|
68048
|
-
|
|
66970
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-empty {
|
|
66971
|
+
background-color: var(--fb-empty-bg);
|
|
66972
|
+
color: var(--fb-empty-text);
|
|
66973
|
+
border: 1px dashed var(--fb-empty-border);
|
|
66974
|
+
text-align: center;
|
|
68049
66975
|
}
|
|
68050
66976
|
|
|
68051
|
-
:where(.theme-scope)
|
|
68052
|
-
:
|
|
68053
|
-
.er-whole-series-summary__venue,
|
|
68054
|
-
:where(.theme-scope)
|
|
68055
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68056
|
-
.er-whole-series-summary__price,
|
|
68057
|
-
:where(.theme-scope)
|
|
68058
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68059
|
-
.er-whole-series-summary__membership {
|
|
68060
|
-
margin: 0.5rem 0 0 0;
|
|
68061
|
-
opacity: 0.9;
|
|
66977
|
+
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-actions {
|
|
66978
|
+
margin-top: 0.5rem;
|
|
68062
66979
|
}
|
|
68063
66980
|
|
|
68064
66981
|
/* =============================================================================
|
|
68065
|
-
*
|
|
66982
|
+
* Block: Team Members
|
|
68066
66983
|
* =============================================================================
|
|
66984
|
+
*
|
|
66985
|
+
* Site/theme authors sometimes need different thumbnail shapes/sizes without
|
|
66986
|
+
* changing global fragment defaults. We expose these controls on the block and
|
|
66987
|
+
* style them via data attributes on the \`.rb-team-members\` wrapper.
|
|
68067
66988
|
*/
|
|
68068
|
-
|
|
68069
|
-
|
|
68070
|
-
|
|
68071
|
-
|
|
68072
|
-
gap: 1rem;
|
|
66989
|
+
|
|
66990
|
+
/* Scope all block-static CSS to ThemeScope to avoid leaking into host apps/dashboard. */
|
|
66991
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-align="left"]) {
|
|
66992
|
+
text-align: left;
|
|
68073
66993
|
}
|
|
68074
66994
|
|
|
68075
|
-
:where(.theme-scope)
|
|
68076
|
-
:
|
|
68077
|
-
|
|
68078
|
-
display: grid;
|
|
68079
|
-
gap: 0.35rem;
|
|
66995
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-align="left"]) :where(.rb-team-member) {
|
|
66996
|
+
align-items: flex-start;
|
|
66997
|
+
text-align: left;
|
|
68080
66998
|
}
|
|
68081
66999
|
|
|
68082
|
-
|
|
68083
|
-
|
|
68084
|
-
|
|
68085
|
-
|
|
68086
|
-
|
|
67000
|
+
@container rb-site (min-width: 1024px) {
|
|
67001
|
+
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
67002
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-width="lg-3-4-left"]) {
|
|
67003
|
+
width: 75%;
|
|
67004
|
+
margin-left: 0;
|
|
67005
|
+
margin-right: auto;
|
|
67006
|
+
}
|
|
67007
|
+
}
|
|
68087
67008
|
}
|
|
68088
67009
|
|
|
68089
|
-
:where(.theme-scope)
|
|
68090
|
-
:
|
|
68091
|
-
|
|
68092
|
-
|
|
68093
|
-
color: var(--er-required);
|
|
67010
|
+
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-photo {
|
|
67011
|
+
display: block;
|
|
67012
|
+
width: 100%;
|
|
67013
|
+
height: auto;
|
|
68094
67014
|
}
|
|
68095
67015
|
|
|
68096
|
-
:where(.theme-scope)
|
|
68097
|
-
:
|
|
68098
|
-
.er-whole-series-form__input {
|
|
68099
|
-
border-radius: calc(var(--rb-block-radius) * 0.6);
|
|
68100
|
-
border: 1px solid var(--er-border);
|
|
68101
|
-
padding: 0.6rem 0.75rem;
|
|
68102
|
-
background: rgb(var(--tb-background));
|
|
68103
|
-
color: rgb(var(--tb-foreground));
|
|
67016
|
+
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-role {
|
|
67017
|
+
font-weight: 600;
|
|
68104
67018
|
}
|
|
68105
67019
|
|
|
68106
|
-
:
|
|
68107
|
-
|
|
68108
|
-
|
|
68109
|
-
|
|
68110
|
-
border: 1px solid var(--er-border);
|
|
68111
|
-
padding: 0.6rem 0.75rem;
|
|
68112
|
-
background: rgb(var(--tb-background));
|
|
68113
|
-
color: rgb(var(--tb-foreground));
|
|
68114
|
-
resize: vertical;
|
|
67020
|
+
/* Thumbnail sizing: map \`data-image-col-size\` to a sensible max thumbnail width. */
|
|
67021
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members) {
|
|
67022
|
+
--rb-team-thumb-max: 11.25rem; /* ~180px default */
|
|
67023
|
+
--rb-team-image-basis: 33.333%;
|
|
68115
67024
|
}
|
|
68116
67025
|
|
|
68117
|
-
:where(.theme-scope)
|
|
68118
|
-
|
|
68119
|
-
|
|
68120
|
-
:where(.theme-scope)
|
|
68121
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68122
|
-
.er-whole-series-form__textarea:focus {
|
|
68123
|
-
outline: 2px solid var(--er-focus-ring);
|
|
68124
|
-
outline-offset: 2px;
|
|
67026
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/4"]) {
|
|
67027
|
+
--rb-team-thumb-max: 8.75rem; /* ~140px */
|
|
67028
|
+
--rb-team-image-basis: 25%;
|
|
68125
67029
|
}
|
|
68126
67030
|
|
|
68127
|
-
:where(.theme-scope)
|
|
68128
|
-
|
|
68129
|
-
|
|
68130
|
-
:where(.theme-scope)
|
|
68131
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68132
|
-
.er-whole-series-form__textarea.er-whole-series-form__input--error {
|
|
68133
|
-
border-color: var(--er-border-error);
|
|
67031
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/3"]) {
|
|
67032
|
+
--rb-team-thumb-max: 11.25rem; /* ~180px */
|
|
67033
|
+
--rb-team-image-basis: 33.333%;
|
|
68134
67034
|
}
|
|
68135
67035
|
|
|
68136
|
-
:where(.theme-scope)
|
|
68137
|
-
|
|
68138
|
-
|
|
68139
|
-
font-size: 0.875rem;
|
|
68140
|
-
color: var(--er-error-text);
|
|
67036
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="2/5"]) {
|
|
67037
|
+
--rb-team-thumb-max: 13.75rem; /* ~220px */
|
|
67038
|
+
--rb-team-image-basis: 40%;
|
|
68141
67039
|
}
|
|
68142
67040
|
|
|
68143
|
-
:where(.theme-scope)
|
|
68144
|
-
|
|
68145
|
-
|
|
68146
|
-
font-size: 0.875rem;
|
|
68147
|
-
opacity: 0.7;
|
|
67041
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/2"]) {
|
|
67042
|
+
--rb-team-thumb-max: 17.5rem; /* ~280px */
|
|
67043
|
+
--rb-team-image-basis: 50%;
|
|
68148
67044
|
}
|
|
68149
67045
|
|
|
68150
|
-
|
|
68151
|
-
:
|
|
68152
|
-
|
|
68153
|
-
.er-whole-series-logged-in-hint {
|
|
68154
|
-
font-size: 0.875rem;
|
|
68155
|
-
opacity: 0.7;
|
|
68156
|
-
margin: 0.25rem 0 0 0;
|
|
67046
|
+
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="2/3"]) {
|
|
67047
|
+
--rb-team-thumb-max: 22.5rem; /* ~360px */
|
|
67048
|
+
--rb-team-image-basis: 66.667%;
|
|
68157
67049
|
}
|
|
68158
67050
|
|
|
68159
|
-
|
|
68160
|
-
|
|
68161
|
-
|
|
68162
|
-
|
|
68163
|
-
border: none;
|
|
68164
|
-
padding: 0;
|
|
68165
|
-
font-size: inherit;
|
|
68166
|
-
color: rgb(var(--tb-primary));
|
|
68167
|
-
cursor: pointer;
|
|
68168
|
-
text-decoration: underline;
|
|
68169
|
-
text-underline-offset: 2px;
|
|
67051
|
+
/* The wrap is the shape/padding boundary; ensure it expands within the grid cell. */
|
|
67052
|
+
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-photo-wrap {
|
|
67053
|
+
width: 100%;
|
|
67054
|
+
overflow: hidden;
|
|
68170
67055
|
}
|
|
68171
67056
|
|
|
68172
|
-
|
|
68173
|
-
|
|
68174
|
-
|
|
68175
|
-
text-decoration: none;
|
|
67057
|
+
/* In grid mode, cap thumbnail width so headshots don't dominate the card. */
|
|
67058
|
+
:where(.theme-scope) :where([data-block="team-members"][data-block-variant="grid"]) :where(.rb-team-member-photo-wrap) {
|
|
67059
|
+
max-width: var(--rb-team-thumb-max);
|
|
68176
67060
|
}
|
|
68177
67061
|
|
|
68178
|
-
|
|
68179
|
-
|
|
68180
|
-
|
|
68181
|
-
*/
|
|
68182
|
-
:where(.theme-scope)
|
|
68183
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68184
|
-
.er-whole-series-actions {
|
|
68185
|
-
display: flex;
|
|
68186
|
-
align-items: center;
|
|
68187
|
-
justify-content: space-between;
|
|
68188
|
-
gap: 0.75rem;
|
|
68189
|
-
margin-top: 0.25rem;
|
|
68190
|
-
}
|
|
68191
|
-
|
|
68192
|
-
:where(.theme-scope)
|
|
68193
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68194
|
-
.er-whole-series-back-btn {
|
|
68195
|
-
border: 0;
|
|
68196
|
-
background: transparent;
|
|
68197
|
-
color: var(--er-on-surface);
|
|
68198
|
-
opacity: 0.8;
|
|
68199
|
-
padding: 0.25rem 0.25rem;
|
|
68200
|
-
cursor: pointer;
|
|
68201
|
-
}
|
|
68202
|
-
|
|
68203
|
-
:where(.theme-scope)
|
|
68204
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68205
|
-
.er-whole-series-back-btn:hover {
|
|
68206
|
-
opacity: 1;
|
|
68207
|
-
text-decoration: underline;
|
|
68208
|
-
}
|
|
68209
|
-
|
|
68210
|
-
/* =============================================================================
|
|
68211
|
-
* Payment Options
|
|
68212
|
-
* =============================================================================
|
|
68213
|
-
*/
|
|
68214
|
-
:where(.theme-scope)
|
|
68215
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68216
|
-
.er-whole-series-payment__options {
|
|
68217
|
-
display: grid;
|
|
68218
|
-
gap: 0.5rem;
|
|
68219
|
-
}
|
|
68220
|
-
|
|
68221
|
-
:where(.theme-scope)
|
|
68222
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68223
|
-
.er-whole-series-payment__option {
|
|
68224
|
-
display: flex;
|
|
68225
|
-
align-items: center;
|
|
68226
|
-
gap: 0.5rem;
|
|
68227
|
-
}
|
|
68228
|
-
|
|
68229
|
-
/* =============================================================================
|
|
68230
|
-
* Payment Tiles (Card Grid)
|
|
68231
|
-
* =============================================================================
|
|
68232
|
-
*/
|
|
68233
|
-
:where(.theme-scope)
|
|
68234
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68235
|
-
.er-whole-series-payment-tiles {
|
|
68236
|
-
display: grid;
|
|
68237
|
-
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
|
|
68238
|
-
gap: 0.75rem;
|
|
68239
|
-
}
|
|
68240
|
-
|
|
68241
|
-
:where(.theme-scope)
|
|
68242
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68243
|
-
.er-whole-series-payment-tile {
|
|
68244
|
-
border-radius: var(--rb-block-radius);
|
|
68245
|
-
border: 1px solid var(--er-payment-border);
|
|
68246
|
-
padding: 1rem;
|
|
68247
|
-
background: rgb(var(--tb-background));
|
|
68248
|
-
cursor: pointer;
|
|
68249
|
-
transition:
|
|
68250
|
-
border-color 0.15s ease,
|
|
68251
|
-
box-shadow 0.15s ease,
|
|
68252
|
-
background-color 0.15s ease;
|
|
68253
|
-
position: relative;
|
|
68254
|
-
}
|
|
68255
|
-
|
|
68256
|
-
:where(.theme-scope)
|
|
68257
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68258
|
-
.er-whole-series-payment-tile:hover {
|
|
68259
|
-
border-color: var(--er-payment-border-hover);
|
|
68260
|
-
}
|
|
68261
|
-
|
|
68262
|
-
:where(.theme-scope)
|
|
68263
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68264
|
-
.er-whole-series-payment-tile:focus-visible {
|
|
68265
|
-
outline: 2px solid var(--er-focus-ring);
|
|
68266
|
-
outline-offset: 2px;
|
|
68267
|
-
}
|
|
68268
|
-
|
|
68269
|
-
:where(.theme-scope)
|
|
68270
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68271
|
-
.er-whole-series-payment-tile--selected {
|
|
68272
|
-
border-color: var(--er-payment-border-selected);
|
|
68273
|
-
background: var(--er-payment-bg-selected);
|
|
68274
|
-
box-shadow: 0 0 0 3px var(--er-focus-ring);
|
|
68275
|
-
}
|
|
68276
|
-
|
|
68277
|
-
:where(.theme-scope)
|
|
68278
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68279
|
-
.er-whole-series-payment-tile--upsell {
|
|
68280
|
-
border-style: dashed;
|
|
68281
|
-
}
|
|
68282
|
-
|
|
68283
|
-
:where(.theme-scope)
|
|
68284
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68285
|
-
.er-whole-series-payment-tile__header {
|
|
68286
|
-
display: flex;
|
|
68287
|
-
align-items: flex-start;
|
|
68288
|
-
justify-content: space-between;
|
|
68289
|
-
gap: 0.5rem;
|
|
68290
|
-
}
|
|
68291
|
-
|
|
68292
|
-
:where(.theme-scope)
|
|
68293
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68294
|
-
.er-whole-series-payment-tile__name {
|
|
68295
|
-
margin: 0;
|
|
68296
|
-
font-weight: 600;
|
|
68297
|
-
font-size: 1rem;
|
|
68298
|
-
}
|
|
68299
|
-
|
|
68300
|
-
:where(.theme-scope)
|
|
68301
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68302
|
-
.er-whole-series-payment-tile__description {
|
|
68303
|
-
margin: 0.25rem 0 0 0;
|
|
68304
|
-
font-size: 0.875rem;
|
|
68305
|
-
opacity: 0.7;
|
|
68306
|
-
}
|
|
68307
|
-
|
|
68308
|
-
:where(.theme-scope)
|
|
68309
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68310
|
-
.er-whole-series-payment-tile__price {
|
|
68311
|
-
font-weight: 600;
|
|
68312
|
-
font-size: 0.875rem;
|
|
68313
|
-
white-space: nowrap;
|
|
68314
|
-
}
|
|
68315
|
-
|
|
68316
|
-
:where(.theme-scope)
|
|
68317
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68318
|
-
.er-whole-series-payment-tile__badge {
|
|
68319
|
-
display: inline-block;
|
|
68320
|
-
padding: 0.125rem 0.5rem;
|
|
68321
|
-
border-radius: 9999px;
|
|
68322
|
-
font-size: 0.75rem;
|
|
68323
|
-
font-weight: 500;
|
|
68324
|
-
margin-top: 0.5rem;
|
|
68325
|
-
}
|
|
68326
|
-
|
|
68327
|
-
/* Checkmark indicator on selected tile */
|
|
68328
|
-
:where(.theme-scope)
|
|
68329
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68330
|
-
.er-whole-series-payment-tile__check {
|
|
68331
|
-
position: absolute;
|
|
68332
|
-
top: 0.5rem;
|
|
68333
|
-
right: 0.5rem;
|
|
68334
|
-
width: 1.25rem;
|
|
68335
|
-
height: 1.25rem;
|
|
68336
|
-
border-radius: 9999px;
|
|
68337
|
-
background: var(--er-check-bg);
|
|
68338
|
-
color: var(--er-check-text);
|
|
68339
|
-
display: flex;
|
|
68340
|
-
align-items: center;
|
|
68341
|
-
justify-content: center;
|
|
68342
|
-
opacity: 0;
|
|
68343
|
-
transition: opacity 0.15s ease;
|
|
68344
|
-
}
|
|
68345
|
-
|
|
68346
|
-
:where(.theme-scope)
|
|
68347
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68348
|
-
.er-whole-series-payment-tile--selected
|
|
68349
|
-
.er-whole-series-payment-tile__check {
|
|
68350
|
-
opacity: 1;
|
|
68351
|
-
}
|
|
68352
|
-
|
|
68353
|
-
/* =============================================================================
|
|
68354
|
-
* Booking Mode Step
|
|
68355
|
-
* =============================================================================
|
|
68356
|
-
*/
|
|
68357
|
-
:where(.theme-scope)
|
|
68358
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68359
|
-
.er-whole-series-booking-mode {
|
|
68360
|
-
display: grid;
|
|
68361
|
-
gap: 1rem;
|
|
68362
|
-
}
|
|
68363
|
-
|
|
68364
|
-
:where(.theme-scope)
|
|
68365
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68366
|
-
.er-whole-series-booking-mode__title {
|
|
68367
|
-
margin: 0;
|
|
68368
|
-
font-size: var(--er-step-title-size);
|
|
68369
|
-
font-weight: 700;
|
|
68370
|
-
}
|
|
68371
|
-
|
|
68372
|
-
:where(.theme-scope)
|
|
68373
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68374
|
-
.er-whole-series-booking-mode__subtitle {
|
|
68375
|
-
margin: 0.25rem 0 0 0;
|
|
68376
|
-
opacity: 0.7;
|
|
68377
|
-
}
|
|
68378
|
-
|
|
68379
|
-
:where(.theme-scope)
|
|
68380
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68381
|
-
.er-whole-series-booking-mode__link {
|
|
68382
|
-
margin-top: 0.5rem;
|
|
68383
|
-
font-size: 0.875rem;
|
|
68384
|
-
}
|
|
68385
|
-
|
|
68386
|
-
:where(.theme-scope)
|
|
68387
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68388
|
-
.er-whole-series-booking-mode__link
|
|
68389
|
-
a {
|
|
68390
|
-
color: rgb(var(--tb-primary));
|
|
68391
|
-
text-decoration: underline;
|
|
68392
|
-
cursor: pointer;
|
|
68393
|
-
}
|
|
68394
|
-
|
|
68395
|
-
:where(.theme-scope)
|
|
68396
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68397
|
-
.er-whole-series-booking-mode__link
|
|
68398
|
-
a:hover {
|
|
68399
|
-
text-decoration: none;
|
|
68400
|
-
}
|
|
68401
|
-
|
|
68402
|
-
/* =============================================================================
|
|
68403
|
-
* Membership Hero
|
|
68404
|
-
* =============================================================================
|
|
68405
|
-
*/
|
|
68406
|
-
:where(.theme-scope)
|
|
68407
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68408
|
-
.er-whole-series-membership-hero {
|
|
68409
|
-
border-radius: var(--rb-block-radius);
|
|
68410
|
-
background: var(--er-success-bg);
|
|
68411
|
-
border: 1px solid rgba(var(--tb-success), 0.2);
|
|
68412
|
-
padding: 1.5rem;
|
|
68413
|
-
text-align: center;
|
|
68414
|
-
}
|
|
68415
|
-
|
|
68416
|
-
:where(.theme-scope)
|
|
68417
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68418
|
-
.er-whole-series-membership-hero__icon {
|
|
68419
|
-
font-size: 2rem;
|
|
68420
|
-
margin-bottom: 0.75rem;
|
|
68421
|
-
}
|
|
68422
|
-
|
|
68423
|
-
:where(.theme-scope)
|
|
68424
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68425
|
-
.er-whole-series-membership-hero__title {
|
|
68426
|
-
margin: 0;
|
|
68427
|
-
font-size: 1.25rem;
|
|
68428
|
-
font-weight: 700;
|
|
68429
|
-
color: var(--er-success-text);
|
|
68430
|
-
}
|
|
68431
|
-
|
|
68432
|
-
:where(.theme-scope)
|
|
68433
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68434
|
-
.er-whole-series-membership-hero__subtitle {
|
|
68435
|
-
margin: 0.25rem 0 0 0;
|
|
68436
|
-
font-size: 0.875rem;
|
|
68437
|
-
opacity: 0.8;
|
|
68438
|
-
}
|
|
68439
|
-
|
|
68440
|
-
/* =============================================================================
|
|
68441
|
-
* Portal Auth Sidebar
|
|
68442
|
-
* =============================================================================
|
|
68443
|
-
*/
|
|
68444
|
-
:where(.theme-scope)
|
|
68445
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68446
|
-
.er-whole-series-portal-sidebar {
|
|
68447
|
-
border-radius: var(--rb-block-radius);
|
|
68448
|
-
border: 1px solid var(--er-border);
|
|
68449
|
-
padding: 1.25rem;
|
|
68450
|
-
background: rgb(var(--tb-surface));
|
|
68451
|
-
color: var(--er-on-surface);
|
|
68452
|
-
}
|
|
68453
|
-
|
|
68454
|
-
:where(.theme-scope)
|
|
68455
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68456
|
-
.er-whole-series-portal-sidebar__icon {
|
|
68457
|
-
font-size: 1.5rem;
|
|
68458
|
-
margin-bottom: 0.5rem;
|
|
68459
|
-
}
|
|
68460
|
-
|
|
68461
|
-
:where(.theme-scope)
|
|
68462
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68463
|
-
.er-whole-series-portal-sidebar__title {
|
|
68464
|
-
margin: 0;
|
|
68465
|
-
font-size: 1rem;
|
|
68466
|
-
font-weight: 600;
|
|
68467
|
-
}
|
|
68468
|
-
|
|
68469
|
-
:where(.theme-scope)
|
|
68470
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68471
|
-
.er-whole-series-portal-sidebar__text {
|
|
68472
|
-
margin: 0.5rem 0 0 0;
|
|
68473
|
-
font-size: 0.875rem;
|
|
68474
|
-
opacity: 0.8;
|
|
68475
|
-
}
|
|
68476
|
-
|
|
68477
|
-
:where(.theme-scope)
|
|
68478
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68479
|
-
.er-whole-series-portal-sidebar__action {
|
|
68480
|
-
margin-top: 1rem;
|
|
68481
|
-
}
|
|
68482
|
-
|
|
68483
|
-
:where(.theme-scope)
|
|
68484
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68485
|
-
.er-whole-series-portal-sidebar__link {
|
|
68486
|
-
color: rgb(var(--tb-primary));
|
|
68487
|
-
cursor: pointer;
|
|
68488
|
-
text-decoration: underline;
|
|
68489
|
-
font-size: 0.875rem;
|
|
68490
|
-
}
|
|
68491
|
-
|
|
68492
|
-
:where(.theme-scope)
|
|
68493
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68494
|
-
.er-whole-series-portal-sidebar__link:hover {
|
|
68495
|
-
text-decoration: none;
|
|
68496
|
-
}
|
|
68497
|
-
|
|
68498
|
-
/* =============================================================================
|
|
68499
|
-
* Modal (for Magic Link)
|
|
68500
|
-
* =============================================================================
|
|
68501
|
-
*/
|
|
68502
|
-
:where(.theme-scope)
|
|
68503
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68504
|
-
.er-whole-series-modal-overlay {
|
|
68505
|
-
position: fixed;
|
|
68506
|
-
inset: 0;
|
|
68507
|
-
background: rgba(var(--tb-scrim), 0.5);
|
|
68508
|
-
display: flex;
|
|
68509
|
-
align-items: center;
|
|
68510
|
-
justify-content: center;
|
|
68511
|
-
z-index: 100;
|
|
68512
|
-
animation: er-whole-series-fade-in 0.15s ease;
|
|
68513
|
-
}
|
|
68514
|
-
|
|
68515
|
-
:where(.theme-scope)
|
|
68516
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68517
|
-
.er-whole-series-modal {
|
|
68518
|
-
background: rgb(var(--tb-surface));
|
|
68519
|
-
color: var(--er-on-surface);
|
|
68520
|
-
border-radius: var(--rb-block-radius);
|
|
68521
|
-
padding: 1.5rem;
|
|
68522
|
-
max-width: 28rem;
|
|
68523
|
-
width: calc(100% - 2rem);
|
|
68524
|
-
position: relative;
|
|
68525
|
-
animation: er-whole-series-slide-up 0.2s ease;
|
|
68526
|
-
}
|
|
68527
|
-
|
|
68528
|
-
:where(.theme-scope)
|
|
68529
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68530
|
-
.er-whole-series-modal-close {
|
|
68531
|
-
position: absolute;
|
|
68532
|
-
top: 0.75rem;
|
|
68533
|
-
right: 0.75rem;
|
|
68534
|
-
background: transparent;
|
|
68535
|
-
border: 0;
|
|
68536
|
-
padding: 0.25rem;
|
|
68537
|
-
cursor: pointer;
|
|
68538
|
-
opacity: 0.6;
|
|
68539
|
-
transition: opacity 0.15s ease;
|
|
68540
|
-
}
|
|
68541
|
-
|
|
68542
|
-
:where(.theme-scope)
|
|
68543
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68544
|
-
.er-whole-series-modal-close:hover {
|
|
68545
|
-
opacity: 1;
|
|
68546
|
-
}
|
|
68547
|
-
|
|
68548
|
-
@keyframes er-whole-series-fade-in {
|
|
68549
|
-
from {
|
|
68550
|
-
opacity: 0;
|
|
68551
|
-
}
|
|
68552
|
-
to {
|
|
68553
|
-
opacity: 1;
|
|
68554
|
-
}
|
|
68555
|
-
}
|
|
68556
|
-
|
|
68557
|
-
@keyframes er-whole-series-slide-up {
|
|
68558
|
-
from {
|
|
68559
|
-
opacity: 0;
|
|
68560
|
-
transform: translateY(10px);
|
|
68561
|
-
}
|
|
68562
|
-
to {
|
|
68563
|
-
opacity: 1;
|
|
68564
|
-
transform: translateY(0);
|
|
68565
|
-
}
|
|
68566
|
-
}
|
|
68567
|
-
|
|
68568
|
-
/* Reduced motion */
|
|
68569
|
-
@media (prefers-reduced-motion: reduce) {
|
|
68570
|
-
:where(.theme-scope)
|
|
68571
|
-
:where(
|
|
68572
|
-
[data-block='event-registration'],
|
|
68573
|
-
[data-block='course-registration']
|
|
68574
|
-
)
|
|
68575
|
-
.er-whole-series-modal-overlay,
|
|
68576
|
-
:where(.theme-scope)
|
|
68577
|
-
:where(
|
|
68578
|
-
[data-block='event-registration'],
|
|
68579
|
-
[data-block='course-registration']
|
|
68580
|
-
)
|
|
68581
|
-
.er-whole-series-modal {
|
|
68582
|
-
animation: none;
|
|
68583
|
-
}
|
|
68584
|
-
}
|
|
68585
|
-
|
|
68586
|
-
/* =============================================================================
|
|
68587
|
-
* Center States
|
|
68588
|
-
* =============================================================================
|
|
68589
|
-
*/
|
|
68590
|
-
:where(.theme-scope)
|
|
68591
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68592
|
-
.er-whole-series-center {
|
|
68593
|
-
display: grid;
|
|
68594
|
-
place-items: center;
|
|
68595
|
-
gap: 0.75rem;
|
|
68596
|
-
padding: 2rem 0;
|
|
68597
|
-
}
|
|
68598
|
-
|
|
68599
|
-
/* =============================================================================
|
|
68600
|
-
* Success/Waitlist/Error States
|
|
68601
|
-
* =============================================================================
|
|
68602
|
-
*/
|
|
68603
|
-
:where(.theme-scope)
|
|
68604
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68605
|
-
.er-whole-series-success,
|
|
68606
|
-
:where(.theme-scope)
|
|
68607
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68608
|
-
.er-whole-series-waitlist,
|
|
68609
|
-
:where(.theme-scope)
|
|
68610
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68611
|
-
.er-whole-series-error,
|
|
68612
|
-
:where(.theme-scope)
|
|
68613
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68614
|
-
.er-whole-series-payment-failed {
|
|
68615
|
-
text-align: center;
|
|
68616
|
-
padding: 2rem 1rem;
|
|
68617
|
-
}
|
|
68618
|
-
|
|
68619
|
-
/* State icon color variants (layout from registration-surface.css) */
|
|
68620
|
-
:where(.theme-scope)
|
|
68621
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68622
|
-
.rb-state-icon--success {
|
|
68623
|
-
background: var(--er-success-bg);
|
|
68624
|
-
color: var(--er-success-text);
|
|
68625
|
-
}
|
|
68626
|
-
|
|
68627
|
-
:where(.theme-scope)
|
|
68628
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68629
|
-
.rb-state-icon--error {
|
|
68630
|
-
background: var(--er-error-bg);
|
|
68631
|
-
color: var(--er-error-text);
|
|
68632
|
-
}
|
|
68633
|
-
|
|
68634
|
-
:where(.theme-scope)
|
|
68635
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68636
|
-
.rb-state-icon--waitlist,
|
|
68637
|
-
:where(.theme-scope)
|
|
68638
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68639
|
-
.rb-state-icon--warning {
|
|
68640
|
-
background: var(--er-waitlist-bg);
|
|
68641
|
-
color: var(--er-waitlist-text);
|
|
68642
|
-
}
|
|
68643
|
-
|
|
68644
|
-
:where(.theme-scope)
|
|
68645
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68646
|
-
.er-whole-series-success__title,
|
|
68647
|
-
:where(.theme-scope)
|
|
68648
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68649
|
-
.er-whole-series-waitlist__title,
|
|
68650
|
-
:where(.theme-scope)
|
|
68651
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68652
|
-
.er-whole-series-error__title,
|
|
68653
|
-
:where(.theme-scope)
|
|
68654
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68655
|
-
.er-whole-series-payment-failed__title {
|
|
68656
|
-
margin: 0.75rem 0 0.5rem 0;
|
|
68657
|
-
font-size: 1.125rem;
|
|
68658
|
-
font-weight: 700;
|
|
68659
|
-
}
|
|
68660
|
-
|
|
68661
|
-
:where(.theme-scope)
|
|
68662
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68663
|
-
.er-whole-series-success__message,
|
|
68664
|
-
:where(.theme-scope)
|
|
68665
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68666
|
-
.er-whole-series-waitlist__message,
|
|
68667
|
-
:where(.theme-scope)
|
|
68668
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68669
|
-
.er-whole-series-error__message,
|
|
68670
|
-
:where(.theme-scope)
|
|
68671
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68672
|
-
.er-whole-series-payment-failed__message {
|
|
68673
|
-
margin: 0;
|
|
68674
|
-
opacity: 0.7;
|
|
68675
|
-
}
|
|
68676
|
-
|
|
68677
|
-
:where(.theme-scope)
|
|
68678
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68679
|
-
.er-whole-series-success__membership {
|
|
68680
|
-
margin-top: 0.5rem;
|
|
68681
|
-
font-size: 0.875rem;
|
|
68682
|
-
color: var(--er-success-text);
|
|
68683
|
-
}
|
|
68684
|
-
|
|
68685
|
-
:where(.theme-scope)
|
|
68686
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68687
|
-
.er-whole-series-error__retry,
|
|
68688
|
-
:where(.theme-scope)
|
|
68689
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68690
|
-
.er-whole-series-payment-failed__retry {
|
|
68691
|
-
margin-top: 1rem;
|
|
68692
|
-
}
|
|
68693
|
-
|
|
68694
|
-
/* =============================================================================
|
|
68695
|
-
* Discount Code Section
|
|
68696
|
-
* =============================================================================
|
|
68697
|
-
*/
|
|
68698
|
-
:where(.theme-scope)
|
|
68699
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68700
|
-
.er-whole-series-discount {
|
|
68701
|
-
margin-top: 0.5rem;
|
|
68702
|
-
}
|
|
68703
|
-
|
|
68704
|
-
:where(.theme-scope)
|
|
68705
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68706
|
-
.er-whole-series-discount__form {
|
|
68707
|
-
display: grid;
|
|
68708
|
-
gap: 0.5rem;
|
|
68709
|
-
}
|
|
68710
|
-
|
|
68711
|
-
:where(.theme-scope)
|
|
68712
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68713
|
-
.er-whole-series-discount__toggle {
|
|
68714
|
-
background: transparent;
|
|
68715
|
-
border: 0;
|
|
68716
|
-
padding: 0;
|
|
68717
|
-
color: rgb(var(--tb-primary));
|
|
68718
|
-
cursor: pointer;
|
|
68719
|
-
font-size: 0.875rem;
|
|
68720
|
-
text-decoration: underline;
|
|
68721
|
-
}
|
|
68722
|
-
|
|
68723
|
-
:where(.theme-scope)
|
|
68724
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68725
|
-
.er-whole-series-discount__toggle:hover {
|
|
68726
|
-
text-decoration: none;
|
|
68727
|
-
}
|
|
68728
|
-
|
|
68729
|
-
:where(.theme-scope)
|
|
68730
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68731
|
-
.er-whole-series-discount__label {
|
|
68732
|
-
font-size: 0.875rem;
|
|
68733
|
-
font-weight: 600;
|
|
68734
|
-
}
|
|
68735
|
-
|
|
68736
|
-
:where(.theme-scope)
|
|
68737
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68738
|
-
.er-whole-series-discount__row {
|
|
68739
|
-
display: flex;
|
|
68740
|
-
gap: 0.5rem;
|
|
68741
|
-
}
|
|
68742
|
-
|
|
68743
|
-
:where(.theme-scope)
|
|
68744
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68745
|
-
.er-whole-series-discount__input {
|
|
68746
|
-
flex: 1;
|
|
68747
|
-
border-radius: calc(var(--rb-block-radius) * 0.6);
|
|
68748
|
-
border: 1px solid var(--er-border);
|
|
68749
|
-
padding: 0.5rem 0.75rem;
|
|
68750
|
-
background: rgb(var(--tb-background));
|
|
68751
|
-
color: rgb(var(--tb-foreground));
|
|
68752
|
-
font-size: 0.875rem;
|
|
68753
|
-
}
|
|
68754
|
-
|
|
68755
|
-
:where(.theme-scope)
|
|
68756
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68757
|
-
.er-whole-series-discount__input:focus {
|
|
68758
|
-
outline: 2px solid var(--er-focus-ring);
|
|
68759
|
-
outline-offset: 2px;
|
|
68760
|
-
}
|
|
68761
|
-
|
|
68762
|
-
:where(.theme-scope)
|
|
68763
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68764
|
-
.er-whole-series-discount__remove {
|
|
68765
|
-
background: transparent;
|
|
68766
|
-
border: 0;
|
|
68767
|
-
padding: 0.25rem;
|
|
68768
|
-
cursor: pointer;
|
|
68769
|
-
opacity: 0.6;
|
|
68770
|
-
}
|
|
68771
|
-
|
|
68772
|
-
:where(.theme-scope)
|
|
68773
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68774
|
-
.er-whole-series-discount__apply {
|
|
68775
|
-
background: transparent;
|
|
68776
|
-
border: 0;
|
|
68777
|
-
padding: 0.25rem;
|
|
68778
|
-
cursor: pointer;
|
|
68779
|
-
opacity: 0.8;
|
|
68780
|
-
}
|
|
68781
|
-
|
|
68782
|
-
:where(.theme-scope)
|
|
68783
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68784
|
-
.er-whole-series-discount__remove:hover {
|
|
68785
|
-
opacity: 1;
|
|
68786
|
-
}
|
|
68787
|
-
|
|
68788
|
-
:where(.theme-scope)
|
|
68789
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68790
|
-
.er-whole-series-discount__apply:hover {
|
|
68791
|
-
opacity: 1;
|
|
68792
|
-
}
|
|
68793
|
-
|
|
68794
|
-
:where(.theme-scope)
|
|
68795
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68796
|
-
.er-whole-series-discount__hint {
|
|
68797
|
-
margin: 0;
|
|
68798
|
-
font-size: 0.875rem;
|
|
68799
|
-
opacity: 0.7;
|
|
68800
|
-
}
|
|
68801
|
-
|
|
68802
|
-
:where(.theme-scope)
|
|
68803
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68804
|
-
.er-whole-series-discount__feedback {
|
|
68805
|
-
margin: 0;
|
|
68806
|
-
font-size: 0.875rem;
|
|
68807
|
-
}
|
|
68808
|
-
|
|
68809
|
-
/* =============================================================================
|
|
68810
|
-
* Altcha (Spam Protection)
|
|
68811
|
-
* =============================================================================
|
|
68812
|
-
*/
|
|
68813
|
-
:where(.theme-scope)
|
|
68814
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68815
|
-
.er-whole-series-altcha {
|
|
68816
|
-
margin-top: 1rem;
|
|
68817
|
-
}
|
|
68818
|
-
|
|
68819
|
-
/* =============================================================================
|
|
68820
|
-
* Magic Link Form
|
|
68821
|
-
* =============================================================================
|
|
68822
|
-
*/
|
|
68823
|
-
:where(.theme-scope)
|
|
68824
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68825
|
-
.er-whole-series-magic-link-form {
|
|
68826
|
-
display: flex;
|
|
68827
|
-
flex-direction: column;
|
|
68828
|
-
gap: 0.75rem;
|
|
68829
|
-
}
|
|
68830
|
-
|
|
68831
|
-
:where(.theme-scope)
|
|
68832
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68833
|
-
.er-whole-series-magic-link-title {
|
|
68834
|
-
margin: 0;
|
|
68835
|
-
font-size: 1.25rem;
|
|
68836
|
-
font-weight: 700;
|
|
68837
|
-
}
|
|
68838
|
-
|
|
68839
|
-
:where(.theme-scope)
|
|
68840
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68841
|
-
.er-whole-series-magic-link-success {
|
|
68842
|
-
display: flex;
|
|
68843
|
-
flex-direction: column;
|
|
68844
|
-
gap: 0.75rem;
|
|
68845
|
-
}
|
|
68846
|
-
|
|
68847
|
-
:where(.theme-scope)
|
|
68848
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68849
|
-
.er-whole-series-portal-auth-text {
|
|
68850
|
-
margin: 0;
|
|
68851
|
-
font-size: 0.875rem;
|
|
68852
|
-
opacity: 0.8;
|
|
68853
|
-
}
|
|
68854
|
-
|
|
68855
|
-
:where(.theme-scope)
|
|
68856
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68857
|
-
.er-whole-series-portal-auth-text--success {
|
|
68858
|
-
color: var(--er-success-text);
|
|
68859
|
-
}
|
|
68860
|
-
|
|
68861
|
-
:where(.theme-scope)
|
|
68862
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68863
|
-
.er-whole-series-portal-auth-text--error {
|
|
68864
|
-
color: var(--er-error-text);
|
|
68865
|
-
}
|
|
68866
|
-
|
|
68867
|
-
:where(.theme-scope)
|
|
68868
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68869
|
-
.er-whole-series-modal-btn {
|
|
68870
|
-
border-radius: calc(var(--rb-block-radius) * 0.6);
|
|
68871
|
-
border: 0;
|
|
68872
|
-
padding: 0.6rem 1rem;
|
|
68873
|
-
font-size: 0.875rem;
|
|
68874
|
-
font-weight: 600;
|
|
68875
|
-
cursor: pointer;
|
|
68876
|
-
transition: opacity 0.15s ease;
|
|
68877
|
-
background: rgb(var(--tb-primary));
|
|
68878
|
-
color: rgb(var(--tb-primaryText, 255 255 255));
|
|
68879
|
-
}
|
|
68880
|
-
|
|
68881
|
-
:where(.theme-scope)
|
|
68882
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68883
|
-
.er-whole-series-modal-btn:hover {
|
|
68884
|
-
opacity: 0.9;
|
|
68885
|
-
}
|
|
68886
|
-
|
|
68887
|
-
:where(.theme-scope)
|
|
68888
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68889
|
-
.er-whole-series-modal-btn:disabled {
|
|
68890
|
-
opacity: 0.5;
|
|
68891
|
-
cursor: not-allowed;
|
|
68892
|
-
}
|
|
68893
|
-
|
|
68894
|
-
:where(.theme-scope)
|
|
68895
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68896
|
-
.er-whole-series-modal-btn--secondary {
|
|
68897
|
-
background: transparent;
|
|
68898
|
-
color: var(--er-on-surface);
|
|
68899
|
-
border: 1px solid var(--er-border);
|
|
68900
|
-
}
|
|
68901
|
-
|
|
68902
|
-
:where(.theme-scope)
|
|
68903
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68904
|
-
.er-whole-series-modal-btn--secondary:hover {
|
|
68905
|
-
background: var(--er-on-surface-hover-bg);
|
|
68906
|
-
}
|
|
68907
|
-
|
|
68908
|
-
/* =============================================================================
|
|
68909
|
-
* Utility Classes
|
|
68910
|
-
* =============================================================================
|
|
68911
|
-
*/
|
|
68912
|
-
:where(.theme-scope)
|
|
68913
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68914
|
-
.er-whole-series-text--muted {
|
|
68915
|
-
opacity: 0.7;
|
|
68916
|
-
}
|
|
68917
|
-
|
|
68918
|
-
:where(.theme-scope)
|
|
68919
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68920
|
-
.er-whole-series-text--error {
|
|
68921
|
-
color: var(--er-error-text);
|
|
68922
|
-
}
|
|
68923
|
-
|
|
68924
|
-
:where(.theme-scope)
|
|
68925
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68926
|
-
.er-whole-series-text--success {
|
|
68927
|
-
color: var(--er-success-text);
|
|
68928
|
-
}
|
|
68929
|
-
|
|
68930
|
-
:where(.theme-scope)
|
|
68931
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68932
|
-
.er-whole-series-sr-only {
|
|
68933
|
-
position: absolute;
|
|
68934
|
-
width: 1px;
|
|
68935
|
-
height: 1px;
|
|
68936
|
-
padding: 0;
|
|
68937
|
-
margin: -1px;
|
|
68938
|
-
overflow: hidden;
|
|
68939
|
-
clip: rect(0, 0, 0, 0);
|
|
68940
|
-
white-space: nowrap;
|
|
68941
|
-
border-width: 0;
|
|
68942
|
-
}
|
|
68943
|
-
|
|
68944
|
-
/* Stack utility */
|
|
68945
|
-
:where(.theme-scope)
|
|
68946
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68947
|
-
.er-whole-series-stack {
|
|
68948
|
-
display: flex;
|
|
68949
|
-
flex-direction: column;
|
|
68950
|
-
}
|
|
68951
|
-
|
|
68952
|
-
:where(.theme-scope)
|
|
68953
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68954
|
-
.er-whole-series-stack--gap-sm {
|
|
68955
|
-
gap: 0.5rem;
|
|
68956
|
-
}
|
|
68957
|
-
|
|
68958
|
-
:where(.theme-scope)
|
|
68959
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68960
|
-
.er-whole-series-stack--gap-md {
|
|
68961
|
-
gap: 1rem;
|
|
68962
|
-
}
|
|
68963
|
-
|
|
68964
|
-
:where(.theme-scope)
|
|
68965
|
-
:where([data-block='event-registration'], [data-block='course-registration'])
|
|
68966
|
-
.er-whole-series-stack--gap-lg {
|
|
68967
|
-
gap: 1.5rem;
|
|
68968
|
-
}
|
|
68969
|
-
|
|
68970
|
-
/* =============================================================================
|
|
68971
|
-
* Block: Newsletter Signup
|
|
68972
|
-
* =============================================================================
|
|
68973
|
-
*/
|
|
68974
|
-
|
|
68975
|
-
/* Newsletter copy styling */
|
|
68976
|
-
:where(.theme-scope) :where([data-block="newsletter-signup"]) .newsletter-copy-title {
|
|
68977
|
-
font-size: 1.5rem;
|
|
68978
|
-
font-weight: 600;
|
|
68979
|
-
}
|
|
68980
|
-
|
|
68981
|
-
:where(.theme-scope) :where([data-block="newsletter-signup"]) .newsletter-copy-subtitle {
|
|
68982
|
-
font-size: 1rem;
|
|
68983
|
-
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
68984
|
-
opacity: 0.85;
|
|
68985
|
-
}
|
|
68986
|
-
|
|
68987
|
-
/* Newsletter form container */
|
|
68988
|
-
:where(.theme-scope) .newsletter-form {
|
|
68989
|
-
width: 100%;
|
|
68990
|
-
max-width: 32rem;
|
|
68991
|
-
margin-left: auto;
|
|
68992
|
-
margin-right: auto;
|
|
68993
|
-
}
|
|
68994
|
-
|
|
68995
|
-
/* Newsletter form fields container */
|
|
68996
|
-
:where(.theme-scope) .newsletter-form-fields {
|
|
68997
|
-
display: flex;
|
|
68998
|
-
flex-direction: column;
|
|
68999
|
-
gap: var(--rb-gap-sm, 0.75rem);
|
|
69000
|
-
}
|
|
69001
|
-
|
|
69002
|
-
/* Individual field styling */
|
|
69003
|
-
:where(.theme-scope) .newsletter-field {
|
|
69004
|
-
display: flex;
|
|
69005
|
-
flex-direction: column;
|
|
69006
|
-
gap: 0.25rem;
|
|
69007
|
-
}
|
|
69008
|
-
|
|
69009
|
-
/* Required indicator */
|
|
69010
|
-
:where(.theme-scope) .newsletter-required {
|
|
69011
|
-
color: rgb(var(--tb-primary));
|
|
69012
|
-
margin-left: 0.125rem;
|
|
69013
|
-
}
|
|
69014
|
-
|
|
69015
|
-
/* Submit button container */
|
|
69016
|
-
:where(.theme-scope) .newsletter-submit {
|
|
69017
|
-
margin-top: 0.5rem;
|
|
69018
|
-
}
|
|
69019
|
-
|
|
69020
|
-
/* ALTCHA widget container */
|
|
69021
|
-
:where(.theme-scope) .newsletter-altcha {
|
|
69022
|
-
margin-top: 0.75rem;
|
|
69023
|
-
display: flex;
|
|
69024
|
-
justify-content: center;
|
|
69025
|
-
}
|
|
69026
|
-
|
|
69027
|
-
/* Privacy note */
|
|
69028
|
-
:where(.theme-scope) .newsletter-privacy-note {
|
|
69029
|
-
margin-top: 0.75rem;
|
|
69030
|
-
font-size: 1rem;
|
|
69031
|
-
line-height: 1.6;
|
|
69032
|
-
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
69033
|
-
text-align: center;
|
|
69034
|
-
}
|
|
69035
|
-
|
|
69036
|
-
/* =============================================================================
|
|
69037
|
-
* Inline Variant - Horizontal layout
|
|
69038
|
-
* =============================================================================
|
|
69039
|
-
*/
|
|
69040
|
-
|
|
69041
|
-
:where(.theme-scope) .newsletter-inline .newsletter-form-fields {
|
|
69042
|
-
flex-direction: row;
|
|
69043
|
-
align-items: flex-end;
|
|
69044
|
-
flex-wrap: wrap;
|
|
69045
|
-
gap: var(--rb-gap-sm, 0.75rem);
|
|
69046
|
-
}
|
|
69047
|
-
|
|
69048
|
-
:where(.theme-scope) .newsletter-inline .newsletter-field {
|
|
69049
|
-
flex: 1 1 auto;
|
|
69050
|
-
min-width: 10rem;
|
|
69051
|
-
}
|
|
69052
|
-
|
|
69053
|
-
:where(.theme-scope) .newsletter-inline .newsletter-submit {
|
|
69054
|
-
margin-top: 0;
|
|
69055
|
-
flex-shrink: 0;
|
|
69056
|
-
}
|
|
69057
|
-
|
|
69058
|
-
/* Mobile fallback for inline variant */
|
|
69059
|
-
@container rb-site (max-width: 640px) {
|
|
69060
|
-
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
69061
|
-
:where(.theme-scope) .newsletter-inline .newsletter-form-fields {
|
|
69062
|
-
flex-direction: column;
|
|
69063
|
-
}
|
|
69064
|
-
|
|
69065
|
-
:where(.theme-scope) .newsletter-inline .newsletter-field {
|
|
69066
|
-
min-width: 100%;
|
|
69067
|
-
}
|
|
69068
|
-
}
|
|
69069
|
-
}
|
|
69070
|
-
|
|
69071
|
-
/* =============================================================================
|
|
69072
|
-
* Editorial Split Variant
|
|
69073
|
-
* =============================================================================
|
|
69074
|
-
*/
|
|
69075
|
-
|
|
69076
|
-
:where(.theme-scope) .newsletter-editorial-split {
|
|
69077
|
-
display: grid;
|
|
69078
|
-
grid-template-columns: minmax(0, 0.9fr) minmax(20rem, 1.1fr);
|
|
69079
|
-
gap: clamp(2.5rem, 7vw, 7rem);
|
|
69080
|
-
align-items: center;
|
|
69081
|
-
text-align: left;
|
|
69082
|
-
}
|
|
69083
|
-
|
|
69084
|
-
:where(.theme-scope) .newsletter-editorial-split-copy {
|
|
69085
|
-
display: flex;
|
|
69086
|
-
flex-direction: column;
|
|
69087
|
-
gap: var(--rb-gap-sm, 0.75rem);
|
|
69088
|
-
}
|
|
69089
|
-
|
|
69090
|
-
:where(.theme-scope) .newsletter-editorial-split-form {
|
|
69091
|
-
min-width: 0;
|
|
69092
|
-
}
|
|
69093
|
-
|
|
69094
|
-
:where(.theme-scope) .newsletter-editorial-split .newsletter-form {
|
|
69095
|
-
max-width: none;
|
|
69096
|
-
margin-inline: 0;
|
|
69097
|
-
}
|
|
69098
|
-
|
|
69099
|
-
:where(.theme-scope) .newsletter-editorial-split .newsletter-copy-title {
|
|
69100
|
-
font-size: clamp(2rem, 4vw, 3.5rem);
|
|
69101
|
-
font-weight: 500;
|
|
69102
|
-
}
|
|
69103
|
-
|
|
69104
|
-
:where(.theme-scope) .newsletter-editorial-split .newsletter-privacy-note {
|
|
69105
|
-
text-align: left;
|
|
69106
|
-
}
|
|
69107
|
-
|
|
69108
|
-
@container rb-site (max-width: 767px) {
|
|
69109
|
-
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
69110
|
-
:where(.theme-scope) .newsletter-editorial-split {
|
|
69111
|
-
grid-template-columns: minmax(0, 1fr);
|
|
69112
|
-
gap: 2rem;
|
|
69113
|
-
}
|
|
69114
|
-
}
|
|
69115
|
-
}
|
|
69116
|
-
|
|
69117
|
-
/* =============================================================================
|
|
69118
|
-
* Success State
|
|
69119
|
-
* =============================================================================
|
|
69120
|
-
*/
|
|
69121
|
-
|
|
69122
|
-
:where(.theme-scope) .newsletter-success {
|
|
69123
|
-
text-align: center;
|
|
69124
|
-
}
|
|
69125
|
-
|
|
69126
|
-
:where(.theme-scope) .newsletter-success .fb-success {
|
|
69127
|
-
padding: 1rem 1.5rem;
|
|
69128
|
-
background-color: rgba(var(--tb-success, 34 197 94), 0.1);
|
|
69129
|
-
border-radius: var(--radius-md, 0.5rem);
|
|
69130
|
-
color: rgb(var(--tb-text));
|
|
69131
|
-
}
|
|
69132
|
-
|
|
69133
|
-
/* =============================================================================
|
|
69134
|
-
* Block: Contact + Newsletter
|
|
69135
|
-
* =============================================================================
|
|
69136
|
-
*/
|
|
69137
|
-
|
|
69138
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-grid {
|
|
69139
|
-
display: grid;
|
|
69140
|
-
grid-template-columns: repeat(auto-fit, minmax(min(24rem, 100%), 1fr));
|
|
69141
|
-
gap: clamp(2.5rem, 6vw, 4rem);
|
|
69142
|
-
align-items: start;
|
|
69143
|
-
}
|
|
69144
|
-
|
|
69145
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-column {
|
|
69146
|
-
min-width: 0;
|
|
69147
|
-
}
|
|
69148
|
-
|
|
69149
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-copy {
|
|
69150
|
-
margin-bottom: 1.5rem;
|
|
69151
|
-
}
|
|
69152
|
-
|
|
69153
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .form-copy-title,
|
|
69154
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-copy-title {
|
|
69155
|
-
margin: 0 0 0.75rem;
|
|
69156
|
-
}
|
|
69157
|
-
|
|
69158
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .form-copy-intro,
|
|
69159
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-copy-subtitle {
|
|
69160
|
-
color: var(--rb-surface-text-color, rgb(var(--tb-text, 17 24 39)));
|
|
69161
|
-
}
|
|
69162
|
-
|
|
69163
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .contact-newsletter-info {
|
|
69164
|
-
display: flex;
|
|
69165
|
-
flex-direction: column;
|
|
69166
|
-
align-items: flex-start;
|
|
69167
|
-
}
|
|
69168
|
-
|
|
69169
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-form {
|
|
69170
|
-
max-width: none;
|
|
69171
|
-
margin-left: 0;
|
|
69172
|
-
margin-right: 0;
|
|
69173
|
-
}
|
|
69174
|
-
|
|
69175
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .newsletter-privacy-note {
|
|
69176
|
-
text-align: left;
|
|
69177
|
-
}
|
|
69178
|
-
|
|
69179
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-form {
|
|
69180
|
-
display: flex;
|
|
69181
|
-
flex-direction: column;
|
|
69182
|
-
gap: 1rem;
|
|
69183
|
-
}
|
|
69184
|
-
|
|
69185
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-row-2 {
|
|
69186
|
-
display: grid;
|
|
69187
|
-
grid-template-columns: repeat(auto-fit, minmax(min(14rem, 100%), 1fr));
|
|
69188
|
-
gap: 1rem;
|
|
69189
|
-
}
|
|
69190
|
-
|
|
69191
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-field {
|
|
69192
|
-
display: flex;
|
|
69193
|
-
flex-direction: column;
|
|
69194
|
-
gap: 0.25rem;
|
|
69195
|
-
}
|
|
69196
|
-
|
|
69197
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-fieldset {
|
|
69198
|
-
display: flex;
|
|
69199
|
-
flex-direction: column;
|
|
69200
|
-
gap: 0.5rem;
|
|
69201
|
-
border: none;
|
|
69202
|
-
padding: 0;
|
|
69203
|
-
margin: 0;
|
|
69204
|
-
}
|
|
69205
|
-
|
|
69206
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-inline {
|
|
69207
|
-
display: flex;
|
|
69208
|
-
align-items: center;
|
|
69209
|
-
gap: 0.5rem;
|
|
69210
|
-
}
|
|
69211
|
-
|
|
69212
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-success,
|
|
69213
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-error,
|
|
69214
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-empty {
|
|
69215
|
-
border-radius: var(--rb-block-radius);
|
|
69216
|
-
padding: 1rem;
|
|
69217
|
-
font-size: 0.875rem;
|
|
69218
|
-
}
|
|
69219
|
-
|
|
69220
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-success {
|
|
69221
|
-
background-color: var(--fb-success-bg);
|
|
69222
|
-
color: var(--fb-success-text);
|
|
69223
|
-
border: 1px solid var(--fb-success-border);
|
|
69224
|
-
}
|
|
69225
|
-
|
|
69226
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-error {
|
|
69227
|
-
background-color: var(--fb-error-bg);
|
|
69228
|
-
color: var(--fb-error-text);
|
|
69229
|
-
border: 1px solid var(--fb-error-border);
|
|
69230
|
-
}
|
|
69231
|
-
|
|
69232
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-empty {
|
|
69233
|
-
background-color: var(--fb-empty-bg);
|
|
69234
|
-
color: var(--fb-empty-text);
|
|
69235
|
-
border: 1px dashed var(--fb-empty-border);
|
|
69236
|
-
text-align: center;
|
|
69237
|
-
}
|
|
69238
|
-
|
|
69239
|
-
:where(.theme-scope) :where([data-block="contact-newsletter"]) .fb-actions {
|
|
69240
|
-
margin-top: 0.5rem;
|
|
69241
|
-
}
|
|
69242
|
-
|
|
69243
|
-
/* =============================================================================
|
|
69244
|
-
* Block: Team Members
|
|
69245
|
-
* =============================================================================
|
|
69246
|
-
*
|
|
69247
|
-
* Site/theme authors sometimes need different thumbnail shapes/sizes without
|
|
69248
|
-
* changing global fragment defaults. We expose these controls on the block and
|
|
69249
|
-
* style them via data attributes on the \`.rb-team-members\` wrapper.
|
|
69250
|
-
*/
|
|
69251
|
-
|
|
69252
|
-
/* Scope all block-static CSS to ThemeScope to avoid leaking into host apps/dashboard. */
|
|
69253
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-align="left"]) {
|
|
69254
|
-
text-align: left;
|
|
69255
|
-
}
|
|
69256
|
-
|
|
69257
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-align="left"]) :where(.rb-team-member) {
|
|
69258
|
-
align-items: flex-start;
|
|
69259
|
-
text-align: left;
|
|
69260
|
-
}
|
|
69261
|
-
|
|
69262
|
-
@container rb-site (min-width: 1024px) {
|
|
69263
|
-
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
69264
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-layout-width="lg-3-4-left"]) {
|
|
69265
|
-
width: 75%;
|
|
69266
|
-
margin-left: 0;
|
|
69267
|
-
margin-right: auto;
|
|
69268
|
-
}
|
|
69269
|
-
}
|
|
69270
|
-
}
|
|
69271
|
-
|
|
69272
|
-
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-photo {
|
|
69273
|
-
display: block;
|
|
69274
|
-
width: 100%;
|
|
69275
|
-
height: auto;
|
|
69276
|
-
}
|
|
69277
|
-
|
|
69278
|
-
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-role {
|
|
69279
|
-
font-weight: 600;
|
|
69280
|
-
}
|
|
69281
|
-
|
|
69282
|
-
/* Thumbnail sizing: map \`data-image-col-size\` to a sensible max thumbnail width. */
|
|
69283
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members) {
|
|
69284
|
-
--rb-team-thumb-max: 11.25rem; /* ~180px default */
|
|
69285
|
-
--rb-team-image-basis: 33.333%;
|
|
69286
|
-
}
|
|
69287
|
-
|
|
69288
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/4"]) {
|
|
69289
|
-
--rb-team-thumb-max: 8.75rem; /* ~140px */
|
|
69290
|
-
--rb-team-image-basis: 25%;
|
|
69291
|
-
}
|
|
69292
|
-
|
|
69293
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/3"]) {
|
|
69294
|
-
--rb-team-thumb-max: 11.25rem; /* ~180px */
|
|
69295
|
-
--rb-team-image-basis: 33.333%;
|
|
69296
|
-
}
|
|
69297
|
-
|
|
69298
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="2/5"]) {
|
|
69299
|
-
--rb-team-thumb-max: 13.75rem; /* ~220px */
|
|
69300
|
-
--rb-team-image-basis: 40%;
|
|
69301
|
-
}
|
|
69302
|
-
|
|
69303
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="1/2"]) {
|
|
69304
|
-
--rb-team-thumb-max: 17.5rem; /* ~280px */
|
|
69305
|
-
--rb-team-image-basis: 50%;
|
|
69306
|
-
}
|
|
69307
|
-
|
|
69308
|
-
:where(.theme-scope) :where([data-block="team-members"]) :where(.rb-team-members[data-image-col-size="2/3"]) {
|
|
69309
|
-
--rb-team-thumb-max: 22.5rem; /* ~360px */
|
|
69310
|
-
--rb-team-image-basis: 66.667%;
|
|
69311
|
-
}
|
|
69312
|
-
|
|
69313
|
-
/* The wrap is the shape/padding boundary; ensure it expands within the grid cell. */
|
|
69314
|
-
:where(.theme-scope) :where([data-block="team-members"]) .rb-team-member-photo-wrap {
|
|
69315
|
-
width: 100%;
|
|
69316
|
-
overflow: hidden;
|
|
69317
|
-
}
|
|
69318
|
-
|
|
69319
|
-
/* In grid mode, cap thumbnail width so headshots don't dominate the card. */
|
|
69320
|
-
:where(.theme-scope) :where([data-block="team-members"][data-block-variant="grid"]) :where(.rb-team-member-photo-wrap) {
|
|
69321
|
-
max-width: var(--rb-team-thumb-max);
|
|
69322
|
-
}
|
|
69323
|
-
|
|
69324
|
-
: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) {
|
|
69325
|
-
margin-left: auto;
|
|
69326
|
-
margin-right: auto;
|
|
67062
|
+
: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) {
|
|
67063
|
+
margin-left: auto;
|
|
67064
|
+
margin-right: auto;
|
|
69327
67065
|
}
|
|
69328
67066
|
|
|
69329
67067
|
/* Stack variant: always left-aligned, regardless of the block alignment field. */
|
|
@@ -74547,69 +72285,8 @@ const ACCOUNT_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
74547
72285
|
}
|
|
74548
72286
|
});
|
|
74549
72287
|
//#endregion
|
|
74550
|
-
//#region ../api/src/
|
|
74551
|
-
const
|
|
74552
|
-
listCourses: {
|
|
74553
|
-
path: "/sites/{siteId}/bookings/courses",
|
|
74554
|
-
method: "GET",
|
|
74555
|
-
auth: "user",
|
|
74556
|
-
responseKind: "json"
|
|
74557
|
-
},
|
|
74558
|
-
exportCoursesCsv: {
|
|
74559
|
-
path: "/sites/{siteId}/bookings/courses/export.csv",
|
|
74560
|
-
method: "GET",
|
|
74561
|
-
tags: [
|
|
74562
|
-
"site-{siteId}",
|
|
74563
|
-
"bookings",
|
|
74564
|
-
"courses-{siteId}"
|
|
74565
|
-
],
|
|
74566
|
-
errors: [],
|
|
74567
|
-
auth: "user",
|
|
74568
|
-
responseKind: "blob"
|
|
74569
|
-
},
|
|
74570
|
-
createCourse: {
|
|
74571
|
-
path: "/sites/{siteId}/bookings/courses",
|
|
74572
|
-
method: "POST",
|
|
74573
|
-
auth: "user",
|
|
74574
|
-
responseKind: "json",
|
|
74575
|
-
errors: [
|
|
74576
|
-
"validation:invalid_input",
|
|
74577
|
-
"resource:not_found",
|
|
74578
|
-
"resource:already_exists",
|
|
74579
|
-
"resource:conflict",
|
|
74580
|
-
"server:internal_error"
|
|
74581
|
-
]
|
|
74582
|
-
},
|
|
74583
|
-
getCourse: {
|
|
74584
|
-
path: "/sites/{siteId}/bookings/courses/{courseId}",
|
|
74585
|
-
method: "GET",
|
|
74586
|
-
auth: "user",
|
|
74587
|
-
responseKind: "json"
|
|
74588
|
-
},
|
|
74589
|
-
updateCourse: {
|
|
74590
|
-
path: "/sites/{siteId}/bookings/courses/{courseId}",
|
|
74591
|
-
method: "PATCH",
|
|
74592
|
-
auth: "user",
|
|
74593
|
-
responseKind: "json",
|
|
74594
|
-
errors: [
|
|
74595
|
-
"validation:invalid_input",
|
|
74596
|
-
"resource:not_found",
|
|
74597
|
-
"resource:conflict",
|
|
74598
|
-
"server:internal_error"
|
|
74599
|
-
]
|
|
74600
|
-
},
|
|
74601
|
-
deleteCourse: {
|
|
74602
|
-
path: "/sites/{siteId}/bookings/courses/{courseId}",
|
|
74603
|
-
method: "DELETE",
|
|
74604
|
-
auth: "user",
|
|
74605
|
-
responseKind: "json",
|
|
74606
|
-
errors: [
|
|
74607
|
-
"validation:invalid_input",
|
|
74608
|
-
"resource:not_found",
|
|
74609
|
-
"resource:conflict",
|
|
74610
|
-
"server:internal_error"
|
|
74611
|
-
]
|
|
74612
|
-
},
|
|
72288
|
+
//#region ../api/src/eventSeriesRegistrationEndpointDefinitions.ts
|
|
72289
|
+
const EVENT_SERIES_REGISTRATION_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
74613
72290
|
deleteEventOffering: {
|
|
74614
72291
|
path: "/sites/{siteId}/bookings/event-offerings/{eventOfferingId}",
|
|
74615
72292
|
method: "DELETE",
|
|
@@ -74622,20 +72299,8 @@ const COURSE_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
74622
72299
|
"server:internal_error"
|
|
74623
72300
|
]
|
|
74624
72301
|
},
|
|
74625
|
-
|
|
74626
|
-
path: "/sites/{siteId}/bookings/
|
|
74627
|
-
method: "POST",
|
|
74628
|
-
auth: "user",
|
|
74629
|
-
responseKind: "json",
|
|
74630
|
-
errors: [
|
|
74631
|
-
"validation:invalid_input",
|
|
74632
|
-
"resource:not_found",
|
|
74633
|
-
"resource:already_exists",
|
|
74634
|
-
"server:internal_error"
|
|
74635
|
-
]
|
|
74636
|
-
},
|
|
74637
|
-
changeCourseContentOwnership: {
|
|
74638
|
-
path: "/sites/{siteId}/bookings/courses/{courseId}/content-ownership",
|
|
72302
|
+
changeEventSeriesContentOwnership: {
|
|
72303
|
+
path: "/sites/{siteId}/bookings/event-series/{seriesId}/content-ownership",
|
|
74639
72304
|
method: "POST",
|
|
74640
72305
|
auth: "user",
|
|
74641
72306
|
responseKind: "json",
|
|
@@ -74646,8 +72311,8 @@ const COURSE_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
74646
72311
|
"server:internal_error"
|
|
74647
72312
|
]
|
|
74648
72313
|
},
|
|
74649
|
-
|
|
74650
|
-
path: "/sites/{siteId}/bookings/
|
|
72314
|
+
addEventSeriesRegistration: {
|
|
72315
|
+
path: "/sites/{siteId}/bookings/event-series/{seriesId}/registrations",
|
|
74651
72316
|
method: "POST",
|
|
74652
72317
|
auth: "user",
|
|
74653
72318
|
responseKind: "json",
|
|
@@ -74658,33 +72323,21 @@ const COURSE_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
74658
72323
|
"server:internal_error"
|
|
74659
72324
|
]
|
|
74660
72325
|
},
|
|
74661
|
-
|
|
74662
|
-
path: "/sites/{siteId}/bookings/
|
|
72326
|
+
listEventSeriesRegistrations: {
|
|
72327
|
+
path: "/sites/{siteId}/bookings/event-series/{seriesId}/registrations",
|
|
74663
72328
|
method: "GET",
|
|
74664
72329
|
auth: "user",
|
|
74665
72330
|
responseKind: "json"
|
|
74666
72331
|
},
|
|
74667
|
-
|
|
74668
|
-
path: "/sites/{siteId}/bookings/
|
|
72332
|
+
exportEventSeriesRegistrationsCsv: {
|
|
72333
|
+
path: "/sites/{siteId}/bookings/event-series/{seriesId}/registrations/export.csv",
|
|
74669
72334
|
method: "GET",
|
|
74670
72335
|
auth: "user",
|
|
74671
72336
|
errors: [],
|
|
74672
72337
|
responseKind: "blob"
|
|
74673
72338
|
},
|
|
74674
|
-
|
|
74675
|
-
path: "/sites/{siteId}/bookings/
|
|
74676
|
-
method: "GET",
|
|
74677
|
-
tags: [
|
|
74678
|
-
"site-{siteId}",
|
|
74679
|
-
"bookings",
|
|
74680
|
-
"courses-{courseId}"
|
|
74681
|
-
],
|
|
74682
|
-
auth: "user",
|
|
74683
|
-
responseKind: "blob",
|
|
74684
|
-
errors: []
|
|
74685
|
-
},
|
|
74686
|
-
updateCourseEnrollment: {
|
|
74687
|
-
path: "/sites/{siteId}/bookings/courses/{courseId}/enrollments/{enrollmentId}",
|
|
72339
|
+
updateEventSeriesRegistration: {
|
|
72340
|
+
path: "/sites/{siteId}/bookings/event-series/{seriesId}/registrations/{registrationId}",
|
|
74688
72341
|
method: "PATCH",
|
|
74689
72342
|
auth: "user",
|
|
74690
72343
|
responseKind: "json",
|
|
@@ -75072,71 +72725,35 @@ const PUBLIC_WHOLE_SERIES_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
75072
72725
|
errors: ["resource:not_found", "server:internal_error"],
|
|
75073
72726
|
auth: "public",
|
|
75074
72727
|
responseKind: "json"
|
|
75075
|
-
}
|
|
75076
|
-
|
|
75077
|
-
|
|
75078
|
-
|
|
75079
|
-
|
|
75080
|
-
|
|
75081
|
-
|
|
75082
|
-
"auth:forbidden",
|
|
75083
|
-
"validation:invalid_input",
|
|
75084
|
-
"resource:not_found",
|
|
75085
|
-
"resource:conflict",
|
|
75086
|
-
"resource:already_exists",
|
|
75087
|
-
"server:internal_error"
|
|
75088
|
-
],
|
|
75089
|
-
auth: "public",
|
|
75090
|
-
responseKind: "json"
|
|
75091
|
-
},
|
|
75092
|
-
checkWholeSeriesEligibility: {
|
|
75093
|
-
path: "/public/sites/{siteId}/dated-offerings/whole-series/check-eligibility",
|
|
75094
|
-
method: "POST",
|
|
75095
|
-
tags: [TAG_TEMPLATES.publicWholeSeriesOfferings, "course-enrollment"],
|
|
75096
|
-
errors: [
|
|
75097
|
-
"auth:unauthenticated",
|
|
75098
|
-
"resource:not_found",
|
|
75099
|
-
"resource:conflict",
|
|
75100
|
-
"server:internal_error"
|
|
75101
|
-
],
|
|
75102
|
-
auth: "public",
|
|
75103
|
-
responseKind: "json"
|
|
75104
|
-
},
|
|
75105
|
-
createWholeSeriesCheckout: {
|
|
75106
|
-
path: "/public/sites/{siteId}/dated-offerings/whole-series/checkout",
|
|
72728
|
+
}
|
|
72729
|
+
});
|
|
72730
|
+
//#endregion
|
|
72731
|
+
//#region ../api/src/publicEventEndpointDefinitions.ts
|
|
72732
|
+
const PUBLIC_EVENT_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
72733
|
+
getPublicEventRegistrationOptions: {
|
|
72734
|
+
path: "/public/sites/{siteId}/events/registration-options",
|
|
75107
72735
|
method: "POST",
|
|
75108
|
-
tags: [TAG_TEMPLATES.
|
|
72736
|
+
tags: [TAG_TEMPLATES.publicEvents, "event-registration-options"],
|
|
75109
72737
|
auth: "public",
|
|
75110
72738
|
responseKind: "json",
|
|
75111
72739
|
errors: [
|
|
75112
|
-
"auth:unauthenticated",
|
|
75113
72740
|
"validation:invalid_input",
|
|
75114
72741
|
"resource:not_found",
|
|
75115
72742
|
"resource:conflict",
|
|
75116
72743
|
"server:internal_error"
|
|
75117
72744
|
]
|
|
75118
72745
|
},
|
|
75119
|
-
|
|
75120
|
-
path: "/public/sites/{siteId}/
|
|
72746
|
+
resolveEventSubroute: {
|
|
72747
|
+
path: "/public/sites/{siteId}/events/subroutes/resolve",
|
|
75121
72748
|
method: "GET",
|
|
75122
|
-
|
|
75123
|
-
|
|
72749
|
+
revalidate: 60,
|
|
72750
|
+
tags: [TAG_TEMPLATES.publicEvents, "event-subroute"],
|
|
75124
72751
|
auth: "public",
|
|
75125
|
-
responseKind: "json"
|
|
72752
|
+
responseKind: "json",
|
|
72753
|
+
errors: []
|
|
75126
72754
|
}
|
|
75127
72755
|
});
|
|
75128
72756
|
//#endregion
|
|
75129
|
-
//#region ../api/src/publicEventEndpointDefinitions.ts
|
|
75130
|
-
const PUBLIC_EVENT_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({ resolveEventSubroute: {
|
|
75131
|
-
path: "/public/sites/{siteId}/events/subroutes/resolve",
|
|
75132
|
-
method: "GET",
|
|
75133
|
-
revalidate: 60,
|
|
75134
|
-
tags: [TAG_TEMPLATES.publicEvents, "event-subroute"],
|
|
75135
|
-
auth: "public",
|
|
75136
|
-
responseKind: "json",
|
|
75137
|
-
errors: []
|
|
75138
|
-
} });
|
|
75139
|
-
//#endregion
|
|
75140
72757
|
//#region ../api/src/siteApiKeyEndpointDefinitions.ts
|
|
75141
72758
|
const SITE_API_KEY_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
75142
72759
|
listSiteApiKeys: {
|
|
@@ -75504,7 +73121,7 @@ const SDK_ENDPOINT_DEFINITIONS = defineEndpointDefinitions({
|
|
|
75504
73121
|
}), 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, {
|
|
75505
73122
|
...NEWSLETTER_ENDPOINT_DEFINITIONS,
|
|
75506
73123
|
...APPOINTMENT_ENDPOINT_DEFINITIONS,
|
|
75507
|
-
...
|
|
73124
|
+
...EVENT_SERIES_REGISTRATION_ENDPOINT_DEFINITIONS
|
|
75508
73125
|
}, 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 };
|
|
75509
73126
|
z$1.object({ refreshToken: z$1.string().min(1).max(4096) }).strict();
|
|
75510
73127
|
z$1.object({
|
|
@@ -76677,6 +74294,68 @@ function parsePublicProductCategorySelector(value) {
|
|
|
76677
74294
|
};
|
|
76678
74295
|
}
|
|
76679
74296
|
//#endregion
|
|
74297
|
+
//#region ../api/src/bookingPaymentTermSchemas.ts
|
|
74298
|
+
const bookingDepositRefundPolicySchema = z$1.enum(["refundable", "non_refundable"]);
|
|
74299
|
+
const bookingInstalmentPlanSchema = z$1.discriminatedUnion("kind", [
|
|
74300
|
+
z$1.object({
|
|
74301
|
+
kind: z$1.literal("deposit_plus_one_remainder"),
|
|
74302
|
+
depositAmountCents: z$1.number().int().nonnegative(),
|
|
74303
|
+
depositRefundability: bookingDepositRefundPolicySchema,
|
|
74304
|
+
remainderDueCount: z$1.number().int().positive(),
|
|
74305
|
+
intervalUnit: z$1.enum([
|
|
74306
|
+
"day",
|
|
74307
|
+
"week",
|
|
74308
|
+
"month"
|
|
74309
|
+
])
|
|
74310
|
+
}),
|
|
74311
|
+
z$1.object({
|
|
74312
|
+
kind: z$1.literal("deposit_plus_scheduled_instalments"),
|
|
74313
|
+
depositAmountCents: z$1.number().int().nonnegative(),
|
|
74314
|
+
depositRefundability: bookingDepositRefundPolicySchema,
|
|
74315
|
+
instalmentCount: z$1.number().int().positive(),
|
|
74316
|
+
intervalCount: z$1.number().int().positive(),
|
|
74317
|
+
intervalUnit: z$1.enum([
|
|
74318
|
+
"day",
|
|
74319
|
+
"week",
|
|
74320
|
+
"month"
|
|
74321
|
+
])
|
|
74322
|
+
}),
|
|
74323
|
+
z$1.object({
|
|
74324
|
+
kind: z$1.literal("equal_scheduled_instalments"),
|
|
74325
|
+
instalmentCount: z$1.number().int().positive(),
|
|
74326
|
+
intervalCount: z$1.number().int().positive(),
|
|
74327
|
+
intervalUnit: z$1.enum([
|
|
74328
|
+
"day",
|
|
74329
|
+
"week",
|
|
74330
|
+
"month"
|
|
74331
|
+
])
|
|
74332
|
+
})
|
|
74333
|
+
]);
|
|
74334
|
+
const bookingFlexibleBalanceDueDateRuleSchema = z$1.discriminatedUnion("kind", [z$1.object({
|
|
74335
|
+
kind: z$1.literal("relative_to_start_date"),
|
|
74336
|
+
daysBeforeStart: z$1.number().int().positive()
|
|
74337
|
+
}), z$1.object({
|
|
74338
|
+
kind: z$1.literal("fixed_calendar_date"),
|
|
74339
|
+
dueAt: z$1.string().datetime()
|
|
74340
|
+
})]);
|
|
74341
|
+
const bookingFlexibleBalanceConfigSchema = z$1.object({
|
|
74342
|
+
upfrontAmountCents: z$1.number().int().nonnegative(),
|
|
74343
|
+
dueDateRule: bookingFlexibleBalanceDueDateRuleSchema,
|
|
74344
|
+
depositRefundability: bookingDepositRefundPolicySchema
|
|
74345
|
+
});
|
|
74346
|
+
z$1.discriminatedUnion("kind", [
|
|
74347
|
+
z$1.object({ kind: z$1.literal("upfront") }),
|
|
74348
|
+
z$1.object({ kind: z$1.literal("deferred_manual") }),
|
|
74349
|
+
z$1.object({
|
|
74350
|
+
kind: z$1.literal("instalment_plan"),
|
|
74351
|
+
plan: bookingInstalmentPlanSchema
|
|
74352
|
+
}),
|
|
74353
|
+
z$1.object({
|
|
74354
|
+
kind: z$1.literal("flexible_balance"),
|
|
74355
|
+
config: bookingFlexibleBalanceConfigSchema
|
|
74356
|
+
})
|
|
74357
|
+
]);
|
|
74358
|
+
//#endregion
|
|
76680
74359
|
//#region ../api/src/navigationMenuValidation.ts
|
|
76681
74360
|
function hasChildren(item) {
|
|
76682
74361
|
return Array.isArray(item.children) && item.children.length > 0;
|
|
@@ -78941,40 +76620,6 @@ const BUILTIN_CONTENT_TYPE_SCHEMAS = {
|
|
|
78941
76620
|
plural: "Events"
|
|
78942
76621
|
}
|
|
78943
76622
|
},
|
|
78944
|
-
course: {
|
|
78945
|
-
version: 1,
|
|
78946
|
-
fields: [
|
|
78947
|
-
{
|
|
78948
|
-
id: "summary",
|
|
78949
|
-
type: "textarea",
|
|
78950
|
-
label: "Summary",
|
|
78951
|
-
description: "Short teaser shown in listings.",
|
|
78952
|
-
rows: 3
|
|
78953
|
-
},
|
|
78954
|
-
{
|
|
78955
|
-
id: "image",
|
|
78956
|
-
type: "media",
|
|
78957
|
-
label: "Listing image",
|
|
78958
|
-
description: "Optional image used for course cards and previews."
|
|
78959
|
-
},
|
|
78960
|
-
{
|
|
78961
|
-
id: "body",
|
|
78962
|
-
type: "richText",
|
|
78963
|
-
label: "Details",
|
|
78964
|
-
description: "Full course details and curriculum."
|
|
78965
|
-
}
|
|
78966
|
-
],
|
|
78967
|
-
routing: {
|
|
78968
|
-
enabled: true,
|
|
78969
|
-
pattern: "/courses/{slug}",
|
|
78970
|
-
slugField: "slug",
|
|
78971
|
-
prefix: "/courses/"
|
|
78972
|
-
},
|
|
78973
|
-
labels: {
|
|
78974
|
-
singular: "Course",
|
|
78975
|
-
plural: "Courses"
|
|
78976
|
-
}
|
|
78977
|
-
},
|
|
78978
76623
|
"team-member": {
|
|
78979
76624
|
version: 1,
|
|
78980
76625
|
fields: [
|
|
@@ -79174,7 +76819,7 @@ const BUILTIN_CONTENT_TYPE_SCHEMAS = {
|
|
|
79174
76819
|
function deriveFieldIdSet(schema) {
|
|
79175
76820
|
return new Set(schema.fields.map((f) => f.id));
|
|
79176
76821
|
}
|
|
79177
|
-
deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS.post), deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS.event), deriveFieldIdSet(BUILTIN_CONTENT_TYPE_SCHEMAS
|
|
76822
|
+
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"]);
|
|
79178
76823
|
//#endregion
|
|
79179
76824
|
//#region ../field-primitives/src/bindings/index.ts
|
|
79180
76825
|
const BINDING_TRANSFORMS$1 = {
|
|
@@ -79257,7 +76902,6 @@ function selectBlocksForDeclaredEntrySlot(input) {
|
|
|
79257
76902
|
//#region ../content-model/src/templates/defaults.ts
|
|
79258
76903
|
const POST_EXCERPT_FALLBACK = fallbackBinding$1(fieldBinding$1("excerpt"), transformBinding$1(TEMPLATE_BINDING_TRANSFORMS.RICHTEXT_FIRST_PARAGRAPH, { input: fieldBinding$1("body") }));
|
|
79259
76904
|
const EVENT_SUBHEADLINE_FALLBACK = fallbackBinding$1(fieldBinding$1("summary"), transformBinding$1(TEMPLATE_BINDING_TRANSFORMS.RICHTEXT_FIRST_PARAGRAPH, { input: fieldBinding$1("body") }));
|
|
79260
|
-
const COURSE_SUMMARY_FALLBACK = fallbackBinding$1(fieldBinding$1("summary"), transformBinding$1(TEMPLATE_BINDING_TRANSFORMS.RICHTEXT_FIRST_PARAGRAPH, { input: fieldBinding$1("body") }));
|
|
79261
76905
|
const ENTRY_TITLE_INLINE_TEXT = transformBinding$1(TEMPLATE_BINDING_TRANSFORMS.TEXT_INLINE_TEXT, { input: metaBinding$1("title") });
|
|
79262
76906
|
const POST_BODY_TEXT_BINDINGS = {
|
|
79263
76907
|
body: fieldBinding$1("body"),
|
|
@@ -79372,7 +77016,6 @@ const DEFAULT_TEMPLATE_DEFINITIONS = {
|
|
|
79372
77016
|
showVenue: true,
|
|
79373
77017
|
showCapacity: true,
|
|
79374
77018
|
successMessage: "Thank you for registering! Check your email for confirmation details.",
|
|
79375
|
-
waitlistMessage: "You've been added to the waitlist. We'll email you a claim link if a spot opens up.",
|
|
79376
77019
|
buttonText: "Complete Registration",
|
|
79377
77020
|
buttonVariant: "primary"
|
|
79378
77021
|
},
|
|
@@ -79383,64 +77026,6 @@ const DEFAULT_TEMPLATE_DEFINITIONS = {
|
|
|
79383
77026
|
}
|
|
79384
77027
|
]
|
|
79385
77028
|
},
|
|
79386
|
-
course: {
|
|
79387
|
-
templateKey: "default",
|
|
79388
|
-
name: "Course detail",
|
|
79389
|
-
description: "Standard landing page for multi-session courses.",
|
|
79390
|
-
metadata: {},
|
|
79391
|
-
blocks: [
|
|
79392
|
-
{
|
|
79393
|
-
blockKind: "block.hero",
|
|
79394
|
-
scope: "entry",
|
|
79395
|
-
bindings: {
|
|
79396
|
-
eyebrow: literalBinding$1("Course"),
|
|
79397
|
-
headline: metaBinding$1("title"),
|
|
79398
|
-
headlineInline: ENTRY_TITLE_INLINE_TEXT,
|
|
79399
|
-
subheadline: COURSE_SUMMARY_FALLBACK
|
|
79400
|
-
}
|
|
79401
|
-
},
|
|
79402
|
-
{
|
|
79403
|
-
blockKind: "block.course-details",
|
|
79404
|
-
scope: "entry",
|
|
79405
|
-
content: {
|
|
79406
|
-
heading: "Course details",
|
|
79407
|
-
showTitle: false,
|
|
79408
|
-
showDescription: false,
|
|
79409
|
-
showSessions: true,
|
|
79410
|
-
sessionsLimit: "10",
|
|
79411
|
-
showVenue: true,
|
|
79412
|
-
showPrice: true,
|
|
79413
|
-
showCapacity: true,
|
|
79414
|
-
showEnrollmentStatus: true,
|
|
79415
|
-
showMembershipNote: true
|
|
79416
|
-
}
|
|
79417
|
-
},
|
|
79418
|
-
{
|
|
79419
|
-
blockKind: SYSTEM_ENTRY_SLOT_BLOCK_KIND,
|
|
79420
|
-
scope: "template",
|
|
79421
|
-
content: {
|
|
79422
|
-
slotKey: "main",
|
|
79423
|
-
label: "Page content"
|
|
79424
|
-
}
|
|
79425
|
-
},
|
|
79426
|
-
{
|
|
79427
|
-
blockKind: "block.course-registration",
|
|
79428
|
-
scope: "entry",
|
|
79429
|
-
content: {
|
|
79430
|
-
heading: "Enroll in this course",
|
|
79431
|
-
showSessions: true,
|
|
79432
|
-
showPrice: true,
|
|
79433
|
-
showCapacity: true,
|
|
79434
|
-
showVenue: true,
|
|
79435
|
-
successMessage: "You're enrolled! Check your email for confirmation and session details.",
|
|
79436
|
-
waitlistMessage: "You've been added to the waitlist. We'll email you a claim link if a spot opens up.",
|
|
79437
|
-
membershipMessage: "Enrolled using your membership! Check your email for session details.",
|
|
79438
|
-
buttonText: "Complete Enrollment",
|
|
79439
|
-
buttonVariant: "primary"
|
|
79440
|
-
}
|
|
79441
|
-
}
|
|
79442
|
-
]
|
|
79443
|
-
},
|
|
79444
77029
|
"team-member": {
|
|
79445
77030
|
templateKey: "default",
|
|
79446
77031
|
name: "Team member profile",
|