@riverbankcms/sdk 0.104.3 → 0.107.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -51
- package/dist/{PreviewEditorSidebar-CBMhU9p_.mjs → PreviewEditorSidebar-DpAbAl08.mjs} +1811 -1179
- package/dist/{PreviewEditorUI-C5KEw4M8.mjs → PreviewEditorUI-O7cn6Xxv.mjs} +3 -3
- package/dist/{PreviewQueryProvider-CStABBUh.mjs → PreviewQueryProvider-D0tnKl0t.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-Iq12HjL7.mjs → SdkPreviewModeRuntime-CVB7urtl.mjs} +2144 -393
- package/dist/{SiteChromeCustomizeContext-Cx0NMdyv.mjs → SiteChromeCustomizeContext-C_sizso-.mjs} +3825 -2653
- package/dist/_dts/ai/src/contracts/proposals.d.ts +32945 -1339
- package/dist/_dts/api/src/bookingConfig.d.ts +2 -0
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +5 -1
- package/dist/_dts/api/src/contentRuntime.d.ts +6 -15
- package/dist/_dts/api/src/courses.d.ts +68 -10
- package/dist/_dts/api/src/endpoints.d.ts +29 -0
- package/dist/_dts/api/src/index.d.ts +124 -124
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +9 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +116 -6
- package/dist/_dts/api/src/siteOperations.d.ts +1 -0
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +26 -4
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +31 -46
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +36 -4
- package/dist/_dts/blocks/src/definitions.d.ts +1 -1
- package/dist/_dts/blocks/src/portal/types.d.ts +25 -7
- package/dist/_dts/blocks/src/system/blocks/course-registration.d.ts +2 -2
- package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +4 -0
- package/dist/_dts/blocks/src/system/blocks/events/recurring-schedule-projection.d.ts +52 -0
- package/dist/_dts/blocks/src/system/blocks/events/recurring-schedule.d.ts +22 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +45 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +10 -0
- package/dist/_dts/blocks/src/system/blocks/feature-cards.d.ts +4 -1
- package/dist/_dts/blocks/src/system/blocks/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +9 -0
- package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +8 -2
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/index.d.ts +8 -8
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +24 -24
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/scheduleSummary.d.ts +29 -0
- package/dist/_dts/blocks/src/system/blocks/shop.d.ts +2 -1
- package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
- package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +2 -5
- package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
- package/dist/_dts/blocks/src/system/designCapabilities.d.ts +1 -0
- package/dist/_dts/blocks/src/system/fragments/library/newsletterForm.d.ts +2 -2
- package/dist/_dts/blocks/src/system/node/fragments/styledCard.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/blockComposition.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +90 -6
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +45 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/commerce/shared/display.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details/logic.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details/view.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details.server.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/course-page-surface-scope.d.ts +17 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/types.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventScope.d.ts +9 -18
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCalendar.interactive.d.ts +106 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/RecurringSchedule.d.ts +11 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekBoardView.d.ts +7 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/media.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +11 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +6 -6
- package/dist/_dts/blocks/src/system/runtime/nodes/shop.interactive.d.ts +11 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/shop.types.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/svg.d.ts +7 -0
- package/dist/_dts/core/src/branded.d.ts +44 -0
- package/dist/_dts/core/src/dated-offering-settlement.d.ts +47 -0
- package/dist/_dts/core/src/event-page-surface-subject.d.ts +44 -0
- package/dist/_dts/core/src/index.d.ts +49 -47
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +1452 -15
- package/dist/_dts/editor-blocks/src/block-editor/FeatureCardIconsPanel.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/GeneratedIconSetDialog.d.ts +4 -1
- package/dist/_dts/media-core/src/index.d.ts +2 -1
- package/dist/_dts/media-core/src/storagePathDomain.d.ts +47 -0
- package/dist/_dts/media-core/src/url.d.ts +1 -21
- package/dist/_dts/preview-next/src/client/blocks/pageDesignRuntimePreview.d.ts +4 -2
- package/dist/_dts/preview-next/src/client/blocks/previewProjection/runtimeContentDecoration.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +3 -9
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +7 -11
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +3 -9
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +2 -6
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +5 -9
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +81 -43
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.typography.d.ts +61 -0
- package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +7 -17
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +15 -8
- package/dist/_dts/preview-next/src/client/preview/typographyFontCatalog.d.ts +57 -0
- package/dist/_dts/sdk/src/cli/commands/pull.d.ts +1 -1
- package/dist/_dts/sdk/src/cli/commands/push/execute/theme.d.ts +4 -7
- package/dist/_dts/sdk/src/cli/commands/style.d.ts +24 -10
- package/dist/_dts/sdk/src/cli/site-commands/oneOffCommands.d.ts +3 -3
- package/dist/_dts/sdk/src/cli/sync/media.d.ts +16 -2
- package/dist/_dts/sdk/src/client/management/blocks.d.ts +1 -1
- package/dist/_dts/sdk/src/client/management/index.d.ts +1 -1
- package/dist/_dts/sdk/src/client/management/types.d.ts +132 -23
- package/dist/_dts/sdk/src/client/types.d.ts +2 -0
- package/dist/_dts/sdk/src/config/types.d.ts +1 -1
- package/dist/_dts/sdk/src/config/validation.d.ts +3 -0
- package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +23 -3
- package/dist/_dts/sdk/src/data/dataLoaderContext.d.ts +17 -0
- package/dist/_dts/sdk/src/data/dataLoaderValue.d.ts +36 -0
- package/dist/_dts/sdk/src/data/defineOwnDataProperty.d.ts +2 -0
- package/dist/_dts/sdk/src/data/executeCodeLoaders.d.ts +36 -40
- package/dist/_dts/sdk/src/data/index.d.ts +3 -3
- package/dist/_dts/sdk/src/data/resolveBlockData.d.ts +54 -0
- package/dist/_dts/sdk/src/data/types.d.ts +43 -78
- package/dist/_dts/sdk/src/next/index.d.ts +1 -0
- package/dist/_dts/sdk/src/next/redirect-destination.d.ts +1 -1
- package/dist/_dts/sdk/src/next/resolveTheme.d.ts +2 -1
- package/dist/_dts/sdk/src/next/types.d.ts +10 -1
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +3 -8
- package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +9 -4
- package/dist/_dts/sdk/src/rendering/helpers/loadPage.d.ts +6 -10
- package/dist/_dts/sdk/src/rendering/index.d.ts +1 -0
- package/dist/_dts/sdk/src/server.d.ts +4 -3
- package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/site-commands/src/capabilityGaps.d.ts +2 -2
- package/dist/_dts/site-commands/src/commands.d.ts +921 -30
- package/dist/_dts/theme-core/src/buttons/generateDefaultButtonSystem.d.ts +5 -1
- package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
- package/dist/_dts/theme-core/src/buttons/personalities/quiet-arrow.d.ts +17 -0
- package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +2 -2
- package/dist/_dts/theme-core/src/buttons/types.d.ts +9 -5
- package/dist/_dts/theme-core/src/data.d.ts +12 -0
- package/dist/_dts/theme-core/src/fonts/index.d.ts +1 -1
- package/dist/_dts/theme-core/src/fonts/types.d.ts +6 -0
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +36 -24
- package/dist/_dts/theme-core/src/palette/colors.d.ts +12 -0
- package/dist/_dts/theme-core/src/palette/curated/brand-led.d.ts +10 -5
- package/dist/_dts/theme-core/src/palette/curated/high-contrast.d.ts +6 -3
- package/dist/_dts/theme-core/src/palette/curated/index.d.ts +31 -236
- package/dist/_dts/theme-core/src/palette/curated/soft-natural.d.ts +8 -4
- package/dist/_dts/theme-core/src/palette/curated/types.d.ts +14 -12
- package/dist/_dts/theme-core/src/palette/curated/warm-dark.d.ts +4 -2
- package/dist/_dts/theme-core/src/palette/curated/warm-neutral.d.ts +8 -4
- package/dist/_dts/theme-core/src/palette/editorState.d.ts +33 -3
- package/dist/_dts/theme-core/src/palette/index.d.ts +0 -4
- package/dist/_dts/theme-core/src/palette/libraryModel.d.ts +12 -6
- package/dist/_dts/theme-core/src/palette/persistenceReadSource.d.ts +20 -72
- package/dist/_dts/theme-core/src/palette/resolveSelection.d.ts +29 -4
- package/dist/_dts/theme-core/src/palette/selection.d.ts +6 -4
- package/dist/_dts/theme-core/src/schema.d.ts +121 -4
- package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +218 -158
- package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +5 -6
- package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +218 -158
- package/dist/_dts/theme-core/src/site-styles/compositionBudget.d.ts +1 -0
- package/dist/_dts/theme-core/src/site-styles/contentTemplateRuntimeCompiler.d.ts +2 -1
- package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +161 -51
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +6 -0
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -2
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +24 -1
- package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +14 -48
- package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +10 -23
- package/dist/_dts/theme-core/src/site-styles/siteStyleThemeCompiler.d.ts +1 -2
- package/dist/_dts/theme-core/src/site-styles/siteStyleTypography.d.ts +456 -0
- package/dist/_dts/theme-core/src/site-styles/types.d.ts +52 -3
- package/dist/cli/index.mjs +3155 -1701
- package/dist/client/{DiscountCodeDisclosure-BXM73_E5.mjs → DiscountCodeDisclosure-BwGkvmVH.mjs} +1 -1
- package/dist/client/{EventCombined.client-DT5elP7j.mjs → EventCombined.client-JnWE6Hzc.mjs} +3 -3
- package/dist/client/{EventListing.client-pTYGfV9C.mjs → EventListing.client-DQewc_kg.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-dQrhlUe3.mjs → LeafletStaticMap-DPAU3SFt.mjs} +1 -1
- package/dist/client/{MagicLinkForm-u6Dul4j5.mjs → MagicLinkForm-D4kpWCbW.mjs} +2 -2
- package/dist/client/{StepIndicator-nWqineJ2.mjs → StepIndicator-CBlkb4rA.mjs} +2 -2
- package/dist/client/{accordion-CSJcTUyH.mjs → accordion-DAIBVpTS.mjs} +1 -1
- package/dist/client/{bookingForm-C73wOuVa.mjs → bookingForm-DZ-4l5_1.mjs} +7 -7
- package/dist/client/bookings.mjs +239 -110
- package/dist/client/{buttons-DfYyqt8C.mjs → buttons-DJgynGHQ.mjs} +122 -58
- package/dist/client/{carousel-fMBb0JSc.mjs → carousel-D-SLfX8r.mjs} +1 -1
- package/dist/client/{cart-BtaCwT3S.mjs → cart-CEgbgJhX.mjs} +3 -3
- package/dist/client/{checkout-DkTwZSnh.mjs → checkout-CXWrCRAA.mjs} +3 -3
- package/dist/client/client.mjs +4300 -1560
- package/dist/client/{colorStyles-Wyl6JujD.mjs → colorStyles-jZS6KfkP.mjs} +1 -1
- package/dist/client/{colorTokenParts-dT8MISgJ.mjs → colorTokenParts-CMugwvX_.mjs} +3 -1
- package/dist/client/{courseRegistration-DnLmapJu.mjs → courseRegistration-DVmLrRVz.mjs} +56 -21
- package/dist/client/{eventCalendar-BvLOc9KY.mjs → eventCalendar-DCuyPY_c.mjs} +29 -21
- package/dist/client/{eventCombined-kShgJPQr.mjs → eventCombined-kP2CA2D4.mjs} +2 -2
- package/dist/client/{eventDetails-C5NTM0Vo.mjs → eventDetails-DU0LeF5e.mjs} +4 -4
- package/dist/client/{eventListing-B82ZdKP6.mjs → eventListing-CcHF87BI.mjs} +2 -2
- package/dist/client/{eventRegistration-qJVFqBWo.mjs → eventRegistration-DJnR0yFH.mjs} +8 -8
- package/dist/client/{form-BvAcKiuu.mjs → form-CH1lCusH.mjs} +2 -2
- package/dist/client/{headerSection-NvAiEHAg.mjs → headerSection-CBPFZoku.mjs} +3 -3
- package/dist/client/hooks.mjs +2958 -1848
- package/dist/client/{locationMap-D0j52xfI.mjs → locationMap-Cx1hBg5n.mjs} +3 -3
- package/dist/client/{media-BCW_g2cQ.mjs → media-DHtSxS5V.mjs} +61 -56
- package/dist/client/{newsletterForm-B8_i93qH.mjs → newsletterForm-1ZL_ti9u.mjs} +3 -3
- package/dist/client/{pricing-DIYnyHOk.mjs → pricing-BIbzmV0G.mjs} +1 -1
- package/dist/client/{productDetail-w0eAHkuQ.mjs → productDetail-BTh5gHBV.mjs} +3 -3
- package/dist/client/{productList-Vsguq5Xt.mjs → productList-Cc7OMrqN.mjs} +3 -3
- package/dist/client/{propsDecoder-CD2pJ1WB.mjs → propsDecoder-oR-M-ISN.mjs} +192 -59
- package/dist/client/rendering/client.mjs +2031 -1239
- package/dist/client/rendering/islands.mjs +20 -20
- package/dist/client/rendering.mjs +4889 -1712
- package/dist/client/{shop-Dgxs-Q8F.mjs → shop-CQ_YbCnn.mjs} +8 -8
- package/dist/client/{shop-commerce-DJAhsTaT.mjs → shop-commerce-BM-AoD3M.mjs} +6 -6
- package/dist/client/{shop-commerce-store-CfCXltXW.mjs → shop-commerce-store-DFMQhU5p.mjs} +1 -1
- package/dist/client/{shopShared-CmDcPXUt.mjs → shopShared-D0SKO2Cu.mjs} +3 -3
- package/dist/client/{useDiscountCodeUi-CirrT2bM.mjs → useDiscountCodeUi-CrG4_ARt.mjs} +1 -1
- package/dist/client/{useEventFilters-CNZxlCcO.mjs → useEventFilters-CxK8Fekl.mjs} +6 -6
- package/dist/client/{usePolling-Baks_iBI.mjs → usePolling-jcVryNgZ.mjs} +2 -2
- package/dist/preview-next/before-render.mjs +40 -1
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/middleware.mjs +40 -1
- package/dist/{previewAuthStore-CfquDtTh.mjs → previewAuthStore-BPcJPzdz.mjs} +40 -1
- package/dist/{sdk-runtime-BfNiFeNJ.mjs → sdk-runtime-C39Rsk-x.mjs} +2 -2
- package/dist/{separator-BhAR_Xmf.mjs → separator-BoMSQnsP.mjs} +1 -1
- package/dist/server/components.mjs +4661 -2162
- package/dist/server/config-validation.mjs +2728 -1847
- package/dist/server/config.mjs +2728 -1847
- package/dist/server/data.mjs +3381 -1915
- package/dist/server/index.mjs +46 -4
- package/dist/server/next/middleware.mjs +1 -1
- package/dist/server/next.mjs +5555 -2225
- package/dist/server/page-converter.mjs +3058 -2182
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +4850 -2125
- package/dist/server/rendering.mjs +5664 -2464
- package/dist/server/routing.mjs +3027 -1509
- package/dist/server/server.mjs +3844 -2217
- package/dist/server/theme-bridge.mjs +9121 -7765
- package/dist/server/theme.mjs +152 -59
- package/dist/styles/index.css +1217 -31
- package/package.json +1 -1
- package/dist/_dts/preview-next/src/client/preview/typographySelectionInput.d.ts +0 -16
- package/dist/_dts/theme-core/src/palette/historicalThemePalette.d.ts +0 -44
- package/dist/_dts/theme-core/src/palette/legacyRuntimeProjection.d.ts +0 -55
- package/dist/_dts/theme-core/src/palette/legacySelection.d.ts +0 -45
- package/dist/_dts/theme-core/src/palette/paletteCompatibilityTransition.d.ts +0 -232
- package/dist/_dts/theme-core/src/site-styles/typographyPresets.d.ts +0 -234
package/dist/client/bookings.mjs
CHANGED
|
@@ -3717,12 +3717,14 @@ function parseUuidBrand(value, unsafeConstructor) {
|
|
|
3717
3717
|
return ok(unsafeConstructor(normalized));
|
|
3718
3718
|
}
|
|
3719
3719
|
const unsafeAsSiteId = (id) => id;
|
|
3720
|
+
const unsafeAsEventOfferingId = (id) => id;
|
|
3720
3721
|
const unsafeAsEventSeriesId = (id) => id;
|
|
3721
3722
|
const unsafeAsFormId = (id) => id;
|
|
3722
3723
|
const unsafeAsPassId = (id) => id;
|
|
3723
3724
|
const unsafeAsCustomerPassId = (id) => id;
|
|
3724
3725
|
const unsafeAsAppointmentServiceId = (id) => id;
|
|
3725
3726
|
const unsafeAsAppointmentResourceId = (id) => id;
|
|
3727
|
+
const parseEventOfferingId = (value) => parseUuidBrand(value, unsafeAsEventOfferingId);
|
|
3726
3728
|
const parseEventSeriesId = (value) => parseUuidBrand(value, unsafeAsEventSeriesId);
|
|
3727
3729
|
//#endregion
|
|
3728
3730
|
//#region ../core/src/date-math.ts
|
|
@@ -3828,6 +3830,55 @@ function isFreePublicEventPriceDisplay(display) {
|
|
|
3828
3830
|
}
|
|
3829
3831
|
}
|
|
3830
3832
|
//#endregion
|
|
3833
|
+
//#region ../core/src/event-page-surface-subject.ts
|
|
3834
|
+
function parseEventPageSurfaceSubject(value) {
|
|
3835
|
+
if (!isRecord$5(value)) return err$1({ kind: "notObject" });
|
|
3836
|
+
switch (value.kind) {
|
|
3837
|
+
case "eventSeries": {
|
|
3838
|
+
const eventSeriesId = parseEventSeriesId(value.eventSeriesId);
|
|
3839
|
+
return eventSeriesId.ok ? ok({
|
|
3840
|
+
kind: "eventSeries",
|
|
3841
|
+
eventSeriesId: eventSeriesId.value
|
|
3842
|
+
}) : err$1({
|
|
3843
|
+
kind: "invalidEventSeriesId",
|
|
3844
|
+
error: eventSeriesId.error
|
|
3845
|
+
});
|
|
3846
|
+
}
|
|
3847
|
+
case "eventOffering": {
|
|
3848
|
+
const eventOfferingId = parseEventOfferingId(value.eventOfferingId);
|
|
3849
|
+
if (!eventOfferingId.ok) return err$1({
|
|
3850
|
+
kind: "invalidEventOfferingId",
|
|
3851
|
+
error: eventOfferingId.error
|
|
3852
|
+
});
|
|
3853
|
+
if (!Array.isArray(value.availableEventSeriesIds)) return err$1({
|
|
3854
|
+
kind: "unsupportedSubject",
|
|
3855
|
+
subjectKind: value.kind
|
|
3856
|
+
});
|
|
3857
|
+
const parsedSeriesIds = [];
|
|
3858
|
+
for (const valueId of value.availableEventSeriesIds) {
|
|
3859
|
+
const eventSeriesId = parseEventSeriesId(valueId);
|
|
3860
|
+
if (!eventSeriesId.ok) return err$1({
|
|
3861
|
+
kind: "invalidEventSeriesId",
|
|
3862
|
+
error: eventSeriesId.error
|
|
3863
|
+
});
|
|
3864
|
+
parsedSeriesIds.push(eventSeriesId.value);
|
|
3865
|
+
}
|
|
3866
|
+
return ok({
|
|
3867
|
+
kind: "eventOffering",
|
|
3868
|
+
eventOfferingId: eventOfferingId.value,
|
|
3869
|
+
availableEventSeriesIds: parsedSeriesIds
|
|
3870
|
+
});
|
|
3871
|
+
}
|
|
3872
|
+
default: return err$1({
|
|
3873
|
+
kind: "unsupportedSubject",
|
|
3874
|
+
subjectKind: value.kind
|
|
3875
|
+
});
|
|
3876
|
+
}
|
|
3877
|
+
}
|
|
3878
|
+
function isRecord$5(value) {
|
|
3879
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
3880
|
+
}
|
|
3881
|
+
//#endregion
|
|
3831
3882
|
//#region ../core/src/booking-flexible-balance.ts
|
|
3832
3883
|
function clampFlexibleBalanceConfiguredAmount(amountCents, totalAmountCents) {
|
|
3833
3884
|
return Math.max(0, Math.min(amountCents, totalAmountCents));
|
|
@@ -4244,12 +4295,12 @@ function resolveBookingSiteId(siteId, form) {
|
|
|
4244
4295
|
return siteId || form?.siteId || "";
|
|
4245
4296
|
}
|
|
4246
4297
|
function normalizeBookingFormConfig(form) {
|
|
4247
|
-
if (!isRecord$
|
|
4298
|
+
if (!isRecord$4(form)) return null;
|
|
4248
4299
|
const id = readNonEmptyString(form.id);
|
|
4249
4300
|
const name = readNonEmptyString(form.name);
|
|
4250
4301
|
if (!id || !name) return null;
|
|
4251
|
-
const schemaSource = isRecord$
|
|
4252
|
-
const settingsSource = isRecord$
|
|
4302
|
+
const schemaSource = isRecord$4(form.schema) ? form.schema : isRecord$4(form.schemaJson) ? form.schemaJson : null;
|
|
4303
|
+
const settingsSource = isRecord$4(form.settings) ? form.settings : isRecord$4(form.settingsJson) ? form.settingsJson : null;
|
|
4253
4304
|
return {
|
|
4254
4305
|
id,
|
|
4255
4306
|
name,
|
|
@@ -4269,8 +4320,8 @@ function normalizeBookingServices(services) {
|
|
|
4269
4320
|
};
|
|
4270
4321
|
if (!services) return [];
|
|
4271
4322
|
if (Array.isArray(services)) return services.filter(isBookingFormService).map(normalizeService);
|
|
4272
|
-
if (isRecord$
|
|
4273
|
-
return isRecord$
|
|
4323
|
+
if (isRecord$4(services) && "services" in services) return Array.isArray(services.services) ? services.services.filter(isBookingFormService).map(normalizeService) : [];
|
|
4324
|
+
return isRecord$4(services) ? Object.values(services).filter(isBookingFormService).map(normalizeService) : [];
|
|
4274
4325
|
}
|
|
4275
4326
|
function normalizeBookingSchema(value) {
|
|
4276
4327
|
if (!value) return void 0;
|
|
@@ -4281,7 +4332,7 @@ function normalizeBookingSchema(value) {
|
|
|
4281
4332
|
};
|
|
4282
4333
|
}
|
|
4283
4334
|
function readBookingFormField(value) {
|
|
4284
|
-
if (!isRecord$
|
|
4335
|
+
if (!isRecord$4(value)) return null;
|
|
4285
4336
|
const id = readNonEmptyString(value.id);
|
|
4286
4337
|
const label = readNonEmptyString(value.label);
|
|
4287
4338
|
const type = readBookingFieldType(value.type);
|
|
@@ -4325,7 +4376,7 @@ function readBookingFieldOptions(value) {
|
|
|
4325
4376
|
return options.length > 0 ? options : void 0;
|
|
4326
4377
|
}
|
|
4327
4378
|
function readBookingFieldOption(value) {
|
|
4328
|
-
if (!isRecord$
|
|
4379
|
+
if (!isRecord$4(value)) return null;
|
|
4329
4380
|
const optionValue = readNonEmptyString(value.value);
|
|
4330
4381
|
const label = readNonEmptyString(value.label);
|
|
4331
4382
|
return optionValue && label ? {
|
|
@@ -4345,7 +4396,7 @@ function normalizeBookingSettings(value) {
|
|
|
4345
4396
|
};
|
|
4346
4397
|
}
|
|
4347
4398
|
function isBookingFormService(value) {
|
|
4348
|
-
return isRecord$
|
|
4399
|
+
return isRecord$4(value) && typeof value.id === "string" && typeof value.siteId === "string" && typeof value.title === "string";
|
|
4349
4400
|
}
|
|
4350
4401
|
function collectBookingCustomFields(data) {
|
|
4351
4402
|
const customFields = {};
|
|
@@ -4395,7 +4446,7 @@ function readStringArray(value) {
|
|
|
4395
4446
|
const strings = value.filter((item) => typeof item === "string");
|
|
4396
4447
|
return strings.length > 0 ? strings : void 0;
|
|
4397
4448
|
}
|
|
4398
|
-
function isRecord$
|
|
4449
|
+
function isRecord$4(value) {
|
|
4399
4450
|
return typeof value === "object" && value !== null;
|
|
4400
4451
|
}
|
|
4401
4452
|
function getBookingServicePaymentSelectionMode(service) {
|
|
@@ -6322,7 +6373,7 @@ function omitRecordKey(record, key) {
|
|
|
6322
6373
|
return rest;
|
|
6323
6374
|
}
|
|
6324
6375
|
function readAppointmentBookingOverrideData(value) {
|
|
6325
|
-
if (!isRecord$
|
|
6376
|
+
if (!isRecord$3(value)) return null;
|
|
6326
6377
|
const services = normalizeBookingServices(value.services);
|
|
6327
6378
|
return {
|
|
6328
6379
|
form: normalizeBookingFormConfig(value.form),
|
|
@@ -6337,7 +6388,7 @@ function createOverrideInputError(reason, message, warnInDev = false) {
|
|
|
6337
6388
|
message
|
|
6338
6389
|
};
|
|
6339
6390
|
}
|
|
6340
|
-
function isRecord$
|
|
6391
|
+
function isRecord$3(value) {
|
|
6341
6392
|
return typeof value === "object" && value !== null;
|
|
6342
6393
|
}
|
|
6343
6394
|
//#endregion
|
|
@@ -7490,7 +7541,14 @@ const buttonSizesSchema = z$1.object({
|
|
|
7490
7541
|
const buttonGlobalSettingsSchema = z$1.object({
|
|
7491
7542
|
cornerStyle: cornerStyleSchema,
|
|
7492
7543
|
cornerRadius: z$1.number().min(0).max(24).optional(),
|
|
7493
|
-
|
|
7544
|
+
/**
|
|
7545
|
+
* Family-level shadow inherited by variants that don't set their own.
|
|
7546
|
+
* Optional and flat-by-default: when omitted, buttons carry no drop shadow
|
|
7547
|
+
* (`elevation: 'none'`). A personality opts the whole family into a shadow by
|
|
7548
|
+
* setting this; individual variants still override. There is no system-level
|
|
7549
|
+
* shadow-by-default — shadows only appear when explicitly declared.
|
|
7550
|
+
*/
|
|
7551
|
+
shadow: shadowSizeSchema.optional(),
|
|
7494
7552
|
textTransform: textTransformSchema,
|
|
7495
7553
|
fontWeight: fontWeightSchema,
|
|
7496
7554
|
/**
|
|
@@ -8078,7 +8136,6 @@ const editorialLink = defineButtonPersonality({
|
|
|
8078
8136
|
buttonSystem: {
|
|
8079
8137
|
global: {
|
|
8080
8138
|
cornerStyle: "square",
|
|
8081
|
-
shadow: "none",
|
|
8082
8139
|
textTransform: "none",
|
|
8083
8140
|
fontWeight: 500,
|
|
8084
8141
|
borderWidth: 1,
|
|
@@ -8094,11 +8151,6 @@ const editorialLink = defineButtonPersonality({
|
|
|
8094
8151
|
background: { type: "transparent" },
|
|
8095
8152
|
textColorToken: "text",
|
|
8096
8153
|
borderRadius: "rounded-none",
|
|
8097
|
-
shadow: {
|
|
8098
|
-
elevation: "none",
|
|
8099
|
-
softness: null,
|
|
8100
|
-
position: "bottom"
|
|
8101
|
-
},
|
|
8102
8154
|
sizes: {
|
|
8103
8155
|
sm: { padding: "0.25rem 0" },
|
|
8104
8156
|
md: { padding: "0.5rem 0" },
|
|
@@ -8122,11 +8174,6 @@ const editorialLink = defineButtonPersonality({
|
|
|
8122
8174
|
background: { type: "transparent" },
|
|
8123
8175
|
textColorToken: "mutedText",
|
|
8124
8176
|
borderRadius: "rounded-none",
|
|
8125
|
-
shadow: {
|
|
8126
|
-
elevation: "none",
|
|
8127
|
-
softness: null,
|
|
8128
|
-
position: "bottom"
|
|
8129
|
-
},
|
|
8130
8177
|
sizes: {
|
|
8131
8178
|
sm: { padding: "0.25rem 0" },
|
|
8132
8179
|
md: { padding: "0.5rem 0" },
|
|
@@ -8150,11 +8197,6 @@ const editorialLink = defineButtonPersonality({
|
|
|
8150
8197
|
background: { type: "transparent" },
|
|
8151
8198
|
textColorToken: "accent",
|
|
8152
8199
|
borderRadius: "rounded-none",
|
|
8153
|
-
shadow: {
|
|
8154
|
-
elevation: "none",
|
|
8155
|
-
softness: null,
|
|
8156
|
-
position: "bottom"
|
|
8157
|
-
},
|
|
8158
8200
|
sizes: {
|
|
8159
8201
|
sm: { padding: "0.25rem 0" },
|
|
8160
8202
|
md: { padding: "0.5rem 0" },
|
|
@@ -8178,11 +8220,6 @@ const editorialLink = defineButtonPersonality({
|
|
|
8178
8220
|
background: { type: "transparent" },
|
|
8179
8221
|
textColorToken: "mutedText",
|
|
8180
8222
|
borderRadius: "rounded-none",
|
|
8181
|
-
shadow: {
|
|
8182
|
-
elevation: "none",
|
|
8183
|
-
softness: null,
|
|
8184
|
-
position: "bottom"
|
|
8185
|
-
},
|
|
8186
8223
|
sizes: {
|
|
8187
8224
|
sm: { padding: "0.25rem 0" },
|
|
8188
8225
|
md: { padding: "0.5rem 0" },
|
|
@@ -8220,7 +8257,6 @@ const flatInk = defineButtonPersonality({
|
|
|
8220
8257
|
buttonSystem: {
|
|
8221
8258
|
global: {
|
|
8222
8259
|
cornerStyle: "rounded",
|
|
8223
|
-
shadow: "low",
|
|
8224
8260
|
textTransform: "none",
|
|
8225
8261
|
fontWeight: 600,
|
|
8226
8262
|
borderWidth: 1,
|
|
@@ -8261,11 +8297,6 @@ const flatInk = defineButtonPersonality({
|
|
|
8261
8297
|
iconId: "ArrowRight",
|
|
8262
8298
|
colorToken: "accent"
|
|
8263
8299
|
},
|
|
8264
|
-
shadow: {
|
|
8265
|
-
elevation: "none",
|
|
8266
|
-
softness: null,
|
|
8267
|
-
position: "bottom"
|
|
8268
|
-
},
|
|
8269
8300
|
effects: { hover: [{
|
|
8270
8301
|
effectId: "lift",
|
|
8271
8302
|
options: { translateY: "-2px" }
|
|
@@ -8286,11 +8317,6 @@ const flatInk = defineButtonPersonality({
|
|
|
8286
8317
|
widthClass: "border",
|
|
8287
8318
|
colorToken: "border"
|
|
8288
8319
|
},
|
|
8289
|
-
shadow: {
|
|
8290
|
-
elevation: "none",
|
|
8291
|
-
softness: null,
|
|
8292
|
-
position: "bottom"
|
|
8293
|
-
},
|
|
8294
8320
|
effects: { hover: [{
|
|
8295
8321
|
effectId: "lift",
|
|
8296
8322
|
options: { translateY: "-2px" }
|
|
@@ -8310,11 +8336,6 @@ const flatInk = defineButtonPersonality({
|
|
|
8310
8336
|
},
|
|
8311
8337
|
textColorToken: "accentForeground",
|
|
8312
8338
|
borderRadius: "rounded-lg",
|
|
8313
|
-
shadow: {
|
|
8314
|
-
elevation: "none",
|
|
8315
|
-
softness: null,
|
|
8316
|
-
position: "bottom"
|
|
8317
|
-
},
|
|
8318
8339
|
affordance: {
|
|
8319
8340
|
iconId: "ArrowRight",
|
|
8320
8341
|
colorToken: "accentForeground"
|
|
@@ -8346,7 +8367,6 @@ const inkStamp = defineButtonPersonality({
|
|
|
8346
8367
|
buttonSystem: {
|
|
8347
8368
|
global: {
|
|
8348
8369
|
cornerStyle: "rounded",
|
|
8349
|
-
shadow: "none",
|
|
8350
8370
|
textTransform: "uppercase",
|
|
8351
8371
|
fontWeight: 600,
|
|
8352
8372
|
borderWidth: 1,
|
|
@@ -8581,7 +8601,6 @@ const ornateRitual = defineButtonPersonality({
|
|
|
8581
8601
|
buttonSystem: {
|
|
8582
8602
|
global: {
|
|
8583
8603
|
cornerStyle: "rounded",
|
|
8584
|
-
shadow: "none",
|
|
8585
8604
|
textTransform: "uppercase",
|
|
8586
8605
|
fontWeight: 600,
|
|
8587
8606
|
borderWidth: 1,
|
|
@@ -8623,11 +8642,6 @@ const ornateRitual = defineButtonPersonality({
|
|
|
8623
8642
|
widthClass: "border",
|
|
8624
8643
|
colorToken: "primary"
|
|
8625
8644
|
},
|
|
8626
|
-
shadow: {
|
|
8627
|
-
elevation: "none",
|
|
8628
|
-
softness: null,
|
|
8629
|
-
position: "bottom"
|
|
8630
|
-
},
|
|
8631
8645
|
effects: {
|
|
8632
8646
|
hover: [{
|
|
8633
8647
|
effectId: "background-on-hover",
|
|
@@ -8654,11 +8668,6 @@ const ornateRitual = defineButtonPersonality({
|
|
|
8654
8668
|
widthClass: "border",
|
|
8655
8669
|
colorToken: "primary"
|
|
8656
8670
|
},
|
|
8657
|
-
shadow: {
|
|
8658
|
-
elevation: "none",
|
|
8659
|
-
softness: null,
|
|
8660
|
-
position: "bottom"
|
|
8661
|
-
},
|
|
8662
8671
|
effects: { hover: [{
|
|
8663
8672
|
effectId: "background-on-hover",
|
|
8664
8673
|
options: { colorToken: "surface" }
|
|
@@ -8676,11 +8685,6 @@ const ornateRitual = defineButtonPersonality({
|
|
|
8676
8685
|
widthClass: "border",
|
|
8677
8686
|
colorToken: "primary"
|
|
8678
8687
|
},
|
|
8679
|
-
shadow: {
|
|
8680
|
-
elevation: "none",
|
|
8681
|
-
softness: null,
|
|
8682
|
-
position: "bottom"
|
|
8683
|
-
},
|
|
8684
8688
|
effects: { hover: [{
|
|
8685
8689
|
effectId: "background-on-hover",
|
|
8686
8690
|
options: { colorToken: "muted" }
|
|
@@ -8743,7 +8747,6 @@ const pebble = defineButtonPersonality({
|
|
|
8743
8747
|
buttonSystem: {
|
|
8744
8748
|
global: {
|
|
8745
8749
|
cornerStyle: "pill",
|
|
8746
|
-
shadow: "none",
|
|
8747
8750
|
textTransform: "none",
|
|
8748
8751
|
fontWeight: 500,
|
|
8749
8752
|
borderWidth: 2,
|
|
@@ -8851,6 +8854,117 @@ const pebble = defineButtonPersonality({
|
|
|
8851
8854
|
}
|
|
8852
8855
|
});
|
|
8853
8856
|
//#endregion
|
|
8857
|
+
//#region ../theme-core/src/buttons/personalities/quiet-arrow.ts
|
|
8858
|
+
/**
|
|
8859
|
+
* Quiet Arrow — wide, flat editorial buttons for grounded service businesses.
|
|
8860
|
+
* Primary and secondary keep stable semantic colours; surrounding surfaces are
|
|
8861
|
+
* responsible for contrast rather than reversing the button roles.
|
|
8862
|
+
*/
|
|
8863
|
+
const quietArrow = defineButtonPersonality({
|
|
8864
|
+
id: "quiet-arrow",
|
|
8865
|
+
name: "Quiet Arrow",
|
|
8866
|
+
description: "Wide, flat arrow buttons with a solid primary and a primary-colour outlined secondary.",
|
|
8867
|
+
tags: {
|
|
8868
|
+
tone: "classic",
|
|
8869
|
+
energy: "calm",
|
|
8870
|
+
motion: "subtle",
|
|
8871
|
+
era: "editorial"
|
|
8872
|
+
},
|
|
8873
|
+
buttonSystem: {
|
|
8874
|
+
global: {
|
|
8875
|
+
cornerStyle: "rounded",
|
|
8876
|
+
textTransform: "uppercase",
|
|
8877
|
+
fontWeight: 500,
|
|
8878
|
+
borderWidth: 1,
|
|
8879
|
+
typography: "body",
|
|
8880
|
+
fontSize: "text-sm",
|
|
8881
|
+
letterSpacing: "loose",
|
|
8882
|
+
hoverTransform: "none",
|
|
8883
|
+
hoverColor: "none"
|
|
8884
|
+
},
|
|
8885
|
+
sizes: {
|
|
8886
|
+
sm: {
|
|
8887
|
+
padding: "0.625rem 1.25rem",
|
|
8888
|
+
fontSize: "text-xs"
|
|
8889
|
+
},
|
|
8890
|
+
md: {
|
|
8891
|
+
padding: "0.8125rem 1.75rem",
|
|
8892
|
+
fontSize: "text-sm"
|
|
8893
|
+
},
|
|
8894
|
+
lg: {
|
|
8895
|
+
padding: "0.9375rem 2.125rem",
|
|
8896
|
+
fontSize: "text-sm"
|
|
8897
|
+
},
|
|
8898
|
+
xl: {
|
|
8899
|
+
padding: "1.0625rem 2.5rem",
|
|
8900
|
+
fontSize: "text-base"
|
|
8901
|
+
}
|
|
8902
|
+
},
|
|
8903
|
+
variants: [
|
|
8904
|
+
{
|
|
8905
|
+
id: "primary",
|
|
8906
|
+
name: "Primary",
|
|
8907
|
+
enabled: true,
|
|
8908
|
+
priority: 1,
|
|
8909
|
+
background: {
|
|
8910
|
+
type: "solid",
|
|
8911
|
+
colorToken: "primary"
|
|
8912
|
+
},
|
|
8913
|
+
textColorToken: "primaryForeground",
|
|
8914
|
+
borderRadius: "rounded-xl",
|
|
8915
|
+
affordance: { iconId: "ArrowRight" },
|
|
8916
|
+
effects: { hover: [{
|
|
8917
|
+
effectId: "background-on-hover-alpha",
|
|
8918
|
+
options: {
|
|
8919
|
+
colorToken: "primary",
|
|
8920
|
+
opacity: 90
|
|
8921
|
+
}
|
|
8922
|
+
}] }
|
|
8923
|
+
},
|
|
8924
|
+
{
|
|
8925
|
+
id: "secondary",
|
|
8926
|
+
name: "Secondary",
|
|
8927
|
+
enabled: true,
|
|
8928
|
+
priority: 2,
|
|
8929
|
+
background: { type: "transparent" },
|
|
8930
|
+
textColorToken: "primary",
|
|
8931
|
+
borderRadius: "rounded-xl",
|
|
8932
|
+
border: {
|
|
8933
|
+
widthClass: "border",
|
|
8934
|
+
colorToken: "primary"
|
|
8935
|
+
},
|
|
8936
|
+
affordance: { iconId: "ArrowRight" },
|
|
8937
|
+
effects: { hover: [{
|
|
8938
|
+
effectId: "background-on-hover",
|
|
8939
|
+
options: { colorToken: "surfaceAlt" }
|
|
8940
|
+
}] }
|
|
8941
|
+
},
|
|
8942
|
+
{
|
|
8943
|
+
id: "outline",
|
|
8944
|
+
name: "Outline",
|
|
8945
|
+
enabled: true,
|
|
8946
|
+
priority: 3,
|
|
8947
|
+
background: { type: "transparent" },
|
|
8948
|
+
textColorToken: "primary",
|
|
8949
|
+
borderRadius: "rounded-xl",
|
|
8950
|
+
border: {
|
|
8951
|
+
widthClass: "border",
|
|
8952
|
+
colorToken: "primary"
|
|
8953
|
+
}
|
|
8954
|
+
},
|
|
8955
|
+
{
|
|
8956
|
+
id: "ghost",
|
|
8957
|
+
name: "Ghost",
|
|
8958
|
+
enabled: true,
|
|
8959
|
+
priority: 3,
|
|
8960
|
+
background: { type: "transparent" },
|
|
8961
|
+
textColorToken: "primary",
|
|
8962
|
+
borderRadius: "rounded-xl"
|
|
8963
|
+
}
|
|
8964
|
+
]
|
|
8965
|
+
}
|
|
8966
|
+
});
|
|
8967
|
+
//#endregion
|
|
8854
8968
|
//#region ../theme-core/src/buttons/personalities/showtime-pill.ts
|
|
8855
8969
|
/**
|
|
8856
8970
|
* Showtime Pill — bold, spacious, fully rounded buttons with playful pop
|
|
@@ -9102,7 +9216,8 @@ const buttonPersonalities = [
|
|
|
9102
9216
|
brushedWash,
|
|
9103
9217
|
showtimePill,
|
|
9104
9218
|
joyStamp,
|
|
9105
|
-
ornateRitual
|
|
9219
|
+
ornateRitual,
|
|
9220
|
+
quietArrow
|
|
9106
9221
|
];
|
|
9107
9222
|
new Map(buttonPersonalities.map((p) => [p.id, p]));
|
|
9108
9223
|
//#endregion
|
|
@@ -10623,11 +10738,11 @@ const BookingFormClient$1 = ({ siteId: siteIdProp, render }) => {
|
|
|
10623
10738
|
};
|
|
10624
10739
|
//#endregion
|
|
10625
10740
|
//#region ../blocks/src/system/runtime/nodes/events/shared/destination.ts
|
|
10626
|
-
function isRecord$
|
|
10741
|
+
function isRecord$2(value) {
|
|
10627
10742
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
10628
10743
|
}
|
|
10629
10744
|
function isRuntimeEventDestination(value) {
|
|
10630
|
-
if (!isRecord$
|
|
10745
|
+
if (!isRecord$2(value) || typeof value.kind !== "string") return false;
|
|
10631
10746
|
if (value.kind === "native") return (value.mode === "cms-managed" || value.mode === "system-managed") && typeof value.path === "string";
|
|
10632
10747
|
return value.kind === "external" && typeof value.url === "string" && typeof value.label === "string";
|
|
10633
10748
|
}
|
|
@@ -10690,15 +10805,15 @@ function resolveRuntimeEventPricing(event) {
|
|
|
10690
10805
|
function readCurrency(value) {
|
|
10691
10806
|
return typeof value === "string" && value.trim().length > 0 ? value : DEFAULT_EVENT_CURRENCY$1;
|
|
10692
10807
|
}
|
|
10693
|
-
function isRecord$
|
|
10808
|
+
function isRecord$1(value) {
|
|
10694
10809
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
10695
10810
|
}
|
|
10696
10811
|
function isPublicEventPricing(value) {
|
|
10697
|
-
if (!isRecord$
|
|
10812
|
+
if (!isRecord$1(value) || typeof value.kind !== "string") return false;
|
|
10698
10813
|
return value.kind === "drop_in" || value.kind === "free_registration" || value.kind === "single_paid" || value.kind === "sliding_scale" || value.kind === "ticket_types" || value.kind === "course" || value.kind === "external";
|
|
10699
10814
|
}
|
|
10700
10815
|
function isPublicEventTicketType(value) {
|
|
10701
|
-
return isRecord$
|
|
10816
|
+
return isRecord$1(value) && typeof value.id === "string";
|
|
10702
10817
|
}
|
|
10703
10818
|
function readTicketTypePriceDisplay(value, currency) {
|
|
10704
10819
|
const display = readLegacyPriceDisplay(value, currency);
|
|
@@ -10708,7 +10823,7 @@ function readTicketTypePriceDisplay(value, currency) {
|
|
|
10708
10823
|
} : display;
|
|
10709
10824
|
}
|
|
10710
10825
|
function readLegacyPriceDisplay(value, currency) {
|
|
10711
|
-
if (!isRecord$
|
|
10826
|
+
if (!isRecord$1(value) || typeof value.kind !== "string") return {
|
|
10712
10827
|
kind: "unavailable",
|
|
10713
10828
|
currency
|
|
10714
10829
|
};
|
|
@@ -10760,7 +10875,7 @@ function readLegacyPriceDisplay(value, currency) {
|
|
|
10760
10875
|
kind: "unavailable",
|
|
10761
10876
|
currency: displayCurrency
|
|
10762
10877
|
};
|
|
10763
|
-
case "course": return isRecord$
|
|
10878
|
+
case "course": return isRecord$1(value.display) ? {
|
|
10764
10879
|
kind: "course",
|
|
10765
10880
|
display: readCoursePriceDisplay(value.display, displayCurrency)
|
|
10766
10881
|
} : {
|
|
@@ -12080,6 +12195,7 @@ const coursePricingSchema = z$1.object({
|
|
|
12080
12195
|
*/
|
|
12081
12196
|
const publicCourseSchema = z$1.object({
|
|
12082
12197
|
id: z$1.string(),
|
|
12198
|
+
seriesId: z$1.string(),
|
|
12083
12199
|
title: z$1.string(),
|
|
12084
12200
|
slug: z$1.string(),
|
|
12085
12201
|
description: z$1.unknown().nullable(),
|
|
@@ -12114,6 +12230,19 @@ const eventPresetSchema = z$1.enum([
|
|
|
12114
12230
|
"performance"
|
|
12115
12231
|
]);
|
|
12116
12232
|
const eventScheduleScopeSchema = z$1.enum(["recurring", "oneOff"]);
|
|
12233
|
+
const publicEventRecurrenceSchema = z$1.discriminatedUnion("kind", [z$1.object({
|
|
12234
|
+
kind: z$1.literal("weekly"),
|
|
12235
|
+
interval: z$1.number().int().positive(),
|
|
12236
|
+
weekdays: z$1.array(z$1.enum([
|
|
12237
|
+
"MO",
|
|
12238
|
+
"TU",
|
|
12239
|
+
"WE",
|
|
12240
|
+
"TH",
|
|
12241
|
+
"FR",
|
|
12242
|
+
"SA",
|
|
12243
|
+
"SU"
|
|
12244
|
+
]))
|
|
12245
|
+
}).readonly(), z$1.object({ kind: z$1.literal("other") }).readonly()]);
|
|
12117
12246
|
const eventDestinationModeSchema = z$1.enum(["cms-managed", "system-managed"]);
|
|
12118
12247
|
const publicEventDestinationSchema = z$1.discriminatedUnion("kind", [z$1.object({
|
|
12119
12248
|
kind: z$1.literal("native"),
|
|
@@ -12366,6 +12495,7 @@ const publicEventSchema = z$1.object({
|
|
|
12366
12495
|
eventPreset: eventPresetSchema.optional(),
|
|
12367
12496
|
eventDestinationMode: eventDestinationModeSchema.optional(),
|
|
12368
12497
|
scheduleScope: eventScheduleScopeSchema.optional(),
|
|
12498
|
+
recurrence: publicEventRecurrenceSchema.optional(),
|
|
12369
12499
|
id: z$1.string(),
|
|
12370
12500
|
occurrenceId: z$1.string(),
|
|
12371
12501
|
seriesId: z$1.string(),
|
|
@@ -12437,44 +12567,33 @@ function isEventContentType(slug) {
|
|
|
12437
12567
|
if (!slug) return false;
|
|
12438
12568
|
return EVENT_CONTENT_TYPE_SLUGS.includes(slug);
|
|
12439
12569
|
}
|
|
12440
|
-
|
|
12441
|
-
kind: z$1.literal("eventSeries"),
|
|
12442
|
-
eventSeriesId: z$1.string().transform((value, ctx) => {
|
|
12443
|
-
const parsed = parseEventSeriesId(value);
|
|
12444
|
-
if (!parsed.ok) {
|
|
12445
|
-
ctx.addIssue({
|
|
12446
|
-
code: z$1.ZodIssueCode.custom,
|
|
12447
|
-
message: `Invalid event series id (${parsed.error.kind})`
|
|
12448
|
-
});
|
|
12449
|
-
return z$1.NEVER;
|
|
12450
|
-
}
|
|
12451
|
-
return parsed.value;
|
|
12452
|
-
})
|
|
12453
|
-
}), z$1.object({
|
|
12570
|
+
const unsupportedEventRegistrationPageSurfaceSubjectSchema = z$1.object({
|
|
12454
12571
|
kind: z$1.literal("unsupported"),
|
|
12455
|
-
reason: z$1.enum([
|
|
12456
|
-
|
|
12457
|
-
|
|
12458
|
-
|
|
12459
|
-
|
|
12460
|
-
|
|
12461
|
-
|
|
12462
|
-
|
|
12463
|
-
|
|
12464
|
-
|
|
12465
|
-
|
|
12466
|
-
|
|
12467
|
-
|
|
12468
|
-
|
|
12469
|
-
kind: "eventSeries",
|
|
12470
|
-
eventSeriesId: parsedSeriesId.value
|
|
12572
|
+
reason: z$1.enum([
|
|
12573
|
+
"unsupportedSubject",
|
|
12574
|
+
"invalidEventSeriesId",
|
|
12575
|
+
"invalidEventOfferingId"
|
|
12576
|
+
])
|
|
12577
|
+
});
|
|
12578
|
+
z$1.unknown().transform((value, ctx) => {
|
|
12579
|
+
const unsupported = unsupportedEventRegistrationPageSurfaceSubjectSchema.safeParse(value);
|
|
12580
|
+
if (unsupported.success) return unsupported.data;
|
|
12581
|
+
const parsed = parseEventPageSurfaceSubject(value);
|
|
12582
|
+
if (parsed.ok) return parsed.value;
|
|
12583
|
+
ctx.addIssue({
|
|
12584
|
+
code: z$1.ZodIssueCode.custom,
|
|
12585
|
+
message: `Invalid event page-surface subject (${parsed.error.kind})`
|
|
12471
12586
|
});
|
|
12587
|
+
return z$1.NEVER;
|
|
12588
|
+
});
|
|
12589
|
+
function parseEventRegistrationPageSurfaceSubject(value) {
|
|
12590
|
+
return parseEventPageSurfaceSubject(value);
|
|
12472
12591
|
}
|
|
12473
12592
|
function normalizeEventRegistrationPageSurfaceSubject(value) {
|
|
12474
12593
|
const parsed = parseEventRegistrationPageSurfaceSubject(value);
|
|
12475
12594
|
if (parsed.ok) return parsed.value;
|
|
12476
12595
|
switch (parsed.error.kind) {
|
|
12477
|
-
case "
|
|
12596
|
+
case "notObject": return null;
|
|
12478
12597
|
case "unsupportedSubject": return {
|
|
12479
12598
|
kind: "unsupported",
|
|
12480
12599
|
reason: "unsupportedSubject"
|
|
@@ -12483,6 +12602,10 @@ function normalizeEventRegistrationPageSurfaceSubject(value) {
|
|
|
12483
12602
|
kind: "unsupported",
|
|
12484
12603
|
reason: "invalidEventSeriesId"
|
|
12485
12604
|
};
|
|
12605
|
+
case "invalidEventOfferingId": return {
|
|
12606
|
+
kind: "unsupported",
|
|
12607
|
+
reason: "invalidEventOfferingId"
|
|
12608
|
+
};
|
|
12486
12609
|
}
|
|
12487
12610
|
}
|
|
12488
12611
|
function resolveEventRegistrationScope(context) {
|
|
@@ -12495,6 +12618,11 @@ function resolveEventRegistrationScope(context) {
|
|
|
12495
12618
|
kind: "pageSurfaceSeries",
|
|
12496
12619
|
seriesId: context.subject.eventSeriesId
|
|
12497
12620
|
};
|
|
12621
|
+
if (context.subject?.kind === "eventOffering") return {
|
|
12622
|
+
kind: "pageSurfaceOffering",
|
|
12623
|
+
offeringId: context.subject.eventOfferingId,
|
|
12624
|
+
seriesIds: context.subject.availableEventSeriesIds
|
|
12625
|
+
};
|
|
12498
12626
|
if (context.subject?.kind === "unsupported") return {
|
|
12499
12627
|
kind: "unsupportedPageSurfaceSubject",
|
|
12500
12628
|
reason: context.subject.reason
|
|
@@ -12511,6 +12639,10 @@ function applyEventRegistrationScope(events, scope) {
|
|
|
12511
12639
|
switch (scope.kind) {
|
|
12512
12640
|
case "occurrenceSeries":
|
|
12513
12641
|
case "pageSurfaceSeries": return events.filter((event) => event.seriesId === scope.seriesId);
|
|
12642
|
+
case "pageSurfaceOffering": {
|
|
12643
|
+
const seriesIds = new Set(scope.seriesIds);
|
|
12644
|
+
return events.filter((event) => seriesIds.has(event.seriesId));
|
|
12645
|
+
}
|
|
12514
12646
|
case "legacyEventSlug": return events.filter((event) => event.slug === scope.slug);
|
|
12515
12647
|
case "unsupportedPageSurfaceSubject": return [];
|
|
12516
12648
|
case "unscoped": return [...events];
|
|
@@ -12519,9 +12651,6 @@ function applyEventRegistrationScope(events, scope) {
|
|
|
12519
12651
|
function resolveEventRegistrationScopedEvents(events, context) {
|
|
12520
12652
|
return applyEventRegistrationScope(events, resolveEventRegistrationScope(context));
|
|
12521
12653
|
}
|
|
12522
|
-
function isRecord$1(value) {
|
|
12523
|
-
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
12524
|
-
}
|
|
12525
12654
|
//#endregion
|
|
12526
12655
|
//#region ../blocks/src/system/runtime/nodes/event-registration/event-registration.headless.override.ts
|
|
12527
12656
|
function createEventRegistrationBlockApiConfig(input) {
|
|
@@ -12940,7 +13069,7 @@ function useEventRegistrationWizardWithDeps(options, deps) {
|
|
|
12940
13069
|
registrationEvents,
|
|
12941
13070
|
options.occurrenceContext?.seriesId,
|
|
12942
13071
|
options.subject?.kind,
|
|
12943
|
-
options.subject?.kind === "eventSeries" ? options.subject.eventSeriesId : options.subject?.reason,
|
|
13072
|
+
options.subject?.kind === "eventSeries" ? options.subject.eventSeriesId : options.subject?.kind === "eventOffering" ? `${options.subject.eventOfferingId}:${options.subject.availableEventSeriesIds.join(",")}` : options.subject?.reason,
|
|
12944
13073
|
options.contentEntry?.slug,
|
|
12945
13074
|
options.contentEntry?.contentTypeSlug
|
|
12946
13075
|
]);
|