@riverbankcms/sdk 0.80.0 → 0.81.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/dist/{PreviewEditorSidebar-QZG37QIF.mjs → PreviewEditorSidebar-RDCMEXIJ.mjs} +763 -255
- package/dist/{PreviewEditorUI-AXIKSMZA.mjs → PreviewEditorUI-NYGQ6K7B.mjs} +170 -29
- package/dist/SdkPreviewModeRuntime-AKCSCZEC.mjs +8 -0
- package/dist/_dts/api/src/contentRuntime.d.ts +12 -0
- package/dist/_dts/api/src/contentTypes.d.ts +6 -0
- package/dist/_dts/api/src/index.d.ts +2 -2
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +53 -0
- package/dist/_dts/block-form/src/backend/store-backend.d.ts +3 -1
- package/dist/_dts/block-form/src/backend/types.d.ts +3 -3
- package/dist/_dts/blocks/src/PageRenderer.d.ts +3 -0
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +20 -28
- package/dist/_dts/blocks/src/index.d.ts +6 -4
- package/dist/_dts/blocks/src/primitives/content/components/Text.d.ts +1 -1
- package/dist/_dts/blocks/src/primitives/content/primitives.d.ts +1 -0
- package/dist/_dts/blocks/src/server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +3 -2
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +135 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +5 -0
- package/dist/_dts/blocks/src/system/blocks/feature-cards.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/form.d.ts +20 -1
- package/dist/_dts/blocks/src/system/blocks/hero.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/index.d.ts +19 -0
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +134 -0
- package/dist/_dts/blocks/src/system/componentFactory.d.ts +1 -0
- package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
- package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
- package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +13 -3
- package/dist/_dts/blocks/src/system/data/index.d.ts +2 -0
- package/dist/_dts/blocks/src/system/data/linkedContentEntries.d.ts +64 -0
- package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
- package/dist/_dts/blocks/src/system/designCapabilities.d.ts +2 -2
- package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +6 -1
- package/dist/_dts/blocks/src/system/fragments/library/faqHeading.d.ts +0 -1
- package/dist/_dts/blocks/src/system/media/slotContracts.d.ts +2 -0
- package/dist/_dts/blocks/src/system/node/types.d.ts +8 -1
- package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
- package/dist/_dts/blocks/src/system/registry.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +44 -50
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +21 -24
- package/dist/_dts/blocks/src/system/runtime/headingDecoration.d.ts +21 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.d.ts +45 -14
- package/dist/_dts/blocks/src/system/runtime/hooks/useEventFilters.d.ts +2 -9
- package/dist/_dts/blocks/src/system/runtime/hooks/useEventPagination.d.ts +1 -10
- package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCalendar.interactive.d.ts +21 -16
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +3 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +21 -16
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +17 -28
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventPaginatedListView.client.d.ts +2 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekAgendaView.d.ts +3 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/listOptions.d.ts +50 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/utils.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/media.d.ts +29 -14
- package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +21 -0
- package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +7 -0
- package/dist/_dts/blocks/src/system/transforms/registry/_utils/sectionForegroundStyles.d.ts +2 -0
- package/dist/_dts/blocks/src/system/transforms/registry/boxStyles.d.ts +4 -2
- package/dist/_dts/calendar/src/grid.d.ts +27 -0
- package/dist/_dts/calendar/src/index.d.ts +2 -2
- package/dist/_dts/content-editor/src/controller/useAutosaveTriggers.d.ts +3 -1
- package/dist/_dts/content-editor/src/editorTransactionState.d.ts +1 -0
- package/dist/_dts/content-editor/src/hooks/autosaveScopePlanning.d.ts +26 -0
- package/dist/_dts/content-editor/src/hooks/publishability.d.ts +1 -0
- package/dist/_dts/content-editor/src/hooks/useLinkedEntryAutosave.d.ts +23 -0
- package/dist/_dts/content-editor/src/hooks/useReactiveToolbar.d.ts +1 -1
- package/dist/_dts/content-editor/src/hooks/useSimpleAutosave.d.ts +2 -2
- package/dist/_dts/content-editor/src/index.d.ts +3 -1
- package/dist/_dts/content-editor/src/lib/json.d.ts +2 -0
- package/dist/_dts/content-editor/src/linkedEntries/domain.d.ts +8 -0
- package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +58 -0
- package/dist/_dts/content-editor/src/ui/editorTransactionState.d.ts +93 -0
- package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +60 -3
- package/dist/_dts/content-editor/src/ui/stores/autosaveStore.d.ts +2 -0
- package/dist/_dts/content-editor/src/ui/stores/types.d.ts +1 -1
- package/dist/_dts/content-model/src/content-types/builtins.d.ts +43 -0
- package/dist/_dts/content-model/src/metadataConfig.d.ts +87 -47
- package/dist/_dts/core/src/branded.d.ts +5 -0
- package/dist/_dts/core/src/index.d.ts +1 -0
- package/dist/_dts/core/src/stable-json.d.ts +1 -0
- package/dist/_dts/editor/src/EditorProvider.d.ts +26 -0
- package/dist/_dts/editor/src/chrome/EditorChrome.d.ts +26 -0
- package/dist/_dts/editor/src/chrome/EditorStatusBar.d.ts +45 -0
- package/dist/_dts/editor/src/chrome/statusBarPresentation.d.ts +25 -0
- package/dist/_dts/editor/src/components/EditingToggle.d.ts +9 -0
- package/dist/_dts/editor/src/hooks/useEditableElement.d.ts +18 -0
- package/dist/_dts/editor/src/index.d.ts +29 -0
- package/dist/_dts/editor/src/inline/InlineTextEditor.d.ts +1 -0
- package/dist/_dts/editor/src/lib/utils.d.ts +1 -0
- package/dist/_dts/editor/src/primitives/EditorPrimitivesProvider.d.ts +20 -0
- package/dist/_dts/editor/src/primitives/InlineFieldContext.d.ts +11 -0
- package/dist/_dts/editor/src/primitives/SaveContext.d.ts +12 -0
- package/dist/_dts/editor/src/primitives/helpers.d.ts +1 -0
- package/dist/_dts/editor/src/primitives/rich-text/RichTextEditorSurface.d.ts +26 -0
- package/dist/_dts/editor/src/primitives/rich-text/RichTextToolbar.d.ts +16 -0
- package/dist/_dts/editor/src/primitives/rich-text/config.d.ts +23 -0
- package/dist/_dts/editor/src/primitives/rich-text/extensions/RichTextImage.d.ts +2 -0
- package/dist/_dts/editor/src/primitives/rich-text/extensions/RichTextLink.d.ts +1 -0
- package/dist/_dts/editor/src/primitives/rich-text/imageActions.d.ts +22 -0
- package/dist/_dts/editor/src/primitives/rich-text/sanitize.d.ts +23 -0
- package/dist/_dts/editor/src/primitives/rich-text/toolbar/BlockTypeDropdown.d.ts +6 -0
- package/dist/_dts/editor/src/primitives/rich-text/toolbar/LinkPopover.d.ts +10 -0
- package/dist/_dts/editor/src/primitives/rich-text/toolbar/ToolbarIconButton.d.ts +11 -0
- package/dist/_dts/editor/src/primitives/rich-text/toolbar/linkPopoverUtils.d.ts +58 -0
- package/dist/_dts/editor/src/primitives/rich-text/useRichTextEditor.d.ts +19 -0
- package/dist/_dts/editor/src/primitives/rich-text/utils.d.ts +20 -0
- package/dist/_dts/editor/src/utils/optimisticTokens.d.ts +27 -0
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +4 -4
- package/dist/_dts/editor-blocks/src/block-editor/SortableBlockItem.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/actionPresentation.d.ts +15 -0
- package/dist/_dts/editor-blocks/src/block-editor/blockHeaderActionPlan.d.ts +49 -0
- package/dist/_dts/editor-blocks/src/widgets/index.d.ts +1 -0
- package/dist/_dts/editor-blocks/src/widgets/rich-text/RichTextWidgetProvider.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/rich-text/useImagePicker.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/SiteOptionPickerField.d.ts +3 -0
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/SiteOptionWidgetProvider.d.ts +14 -0
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/index.d.ts +6 -0
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/loaders.d.ts +51 -0
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/types.d.ts +20 -0
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/utils.d.ts +5 -0
- package/dist/_dts/media-core/src/index.d.ts +1 -0
- package/dist/_dts/media-core/src/renderableMediaAsset.d.ts +18 -0
- package/dist/_dts/media-editor/src/MediaEditor.d.ts +4 -1
- package/dist/_dts/media-editor/src/MediaPickerDialog.d.ts +2 -1
- package/dist/_dts/media-editor/src/index.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/blocks/BlockToolbar.d.ts +3 -2
- package/dist/_dts/preview-next/src/client/blocks/EditablePageRenderer.d.ts +5 -1
- package/dist/_dts/preview-next/src/client/blocks/blockCustomizePopoverRows.d.ts +25 -0
- package/dist/_dts/preview-next/src/client/blocks/composer/mergeDrafts.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/blocks/composer/types.d.ts +4 -30
- package/dist/_dts/preview-next/src/client/blocks/linkedEntryRenderOverlay.d.ts +11 -0
- package/dist/_dts/preview-next/src/client/blocks/previewCustomizeActions.d.ts +3 -9
- package/dist/_dts/preview-next/src/client/blocks/useBlockCustomizeControls.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/index.d.ts +0 -1
- package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +3 -1
- package/dist/_dts/preview-next/src/client/preview/LinkedEntryEditEventBridge.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +3 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewChromeLayer.d.ts +20 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewDesignHistoryOrderContext.d.ts +13 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewOpenEditorButton.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +19 -19
- package/dist/_dts/preview-next/src/client/preview/PreviewSidebarSection.d.ts +13 -0
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +47 -4
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +14 -1
- package/dist/_dts/preview-next/src/client/preview/linkedEntryEditEvents.d.ts +5 -0
- package/dist/_dts/preview-next/src/client/preview/previewChromePlacement.d.ts +46 -0
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeControls.d.ts +68 -0
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeHistory.d.ts +8 -1
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeWorkflowState.d.ts +11 -9
- package/dist/_dts/preview-next/src/client/preview/previewDesignHistoryOrder.d.ts +18 -0
- package/dist/_dts/preview-next/src/client/preview/previewUndoDomains.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/siteChromeBrandPreferences.d.ts +41 -0
- package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +101 -0
- package/dist/_dts/preview-next/src/client/preview/siteChromeSavePlan.d.ts +29 -0
- package/dist/_dts/preview-next/src/client/preview/siteStyleHistoryState.d.ts +55 -0
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorApplyPayload.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/widgets/widgetAdapters.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +3 -2
- package/dist/_dts/preview-next/src/constants.d.ts +0 -1
- package/dist/_dts/sdk/src/cli/config-loader.d.ts +3 -1
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +5 -3
- package/dist/_dts/sdk/src/cli/site-commands/commandSurfaceDispatch.d.ts +1 -0
- package/dist/_dts/sdk/src/cli/site-commands/pageCommands.d.ts +3 -1
- package/dist/_dts/sdk/src/cli/site-commands/pushExecution.d.ts +1 -0
- package/dist/_dts/sdk/src/config/types.d.ts +1 -1
- package/dist/_dts/sdk/src/config/validation.d.ts +3 -3
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +28 -2
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +10 -0
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +42 -0
- package/dist/_dts/sdk/src/rendering/mediaAssets.d.ts +4 -0
- package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/buttons/constants.d.ts +26 -1
- package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
- package/dist/_dts/theme-core/src/buttons/personalities/joy-stamp.d.ts +22 -0
- package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +1 -0
- package/dist/_dts/theme-core/src/buttons/types.d.ts +9 -0
- package/dist/_dts/theme-core/src/cards/siteStyleDefaults.d.ts +44 -0
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/interactive/types.d.ts +10 -0
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +27 -6
- package/dist/_dts/theme-core/src/palette/variants/index.d.ts +15 -0
- package/dist/_dts/theme-core/src/palette/variants/warm-dark.d.ts +27 -0
- package/dist/_dts/theme-core/src/schema.d.ts +40 -3
- package/dist/_dts/theme-core/src/site-styles/accessibleSurfaces.d.ts +4 -1
- package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +87 -31
- package/dist/_dts/theme-core/src/site-styles/appearancePresetResolution.d.ts +6 -2
- package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +87 -31
- package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +30 -1
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +18 -2
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +6 -2
- package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +5 -0
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +3 -23
- package/dist/_dts/theme-core/src/site-styles/pageDesignIntent.d.ts +276 -4
- package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +33 -3
- package/dist/_dts/theme-core/src/site-styles/sectionTransitions.d.ts +508 -0
- package/dist/_dts/theme-core/src/site-styles/sourceCatalogs.d.ts +10 -10
- package/dist/_dts/theme-core/src/site-styles/types.d.ts +24 -6
- package/dist/_dts/theme-core/src/site-styles/typographyPresets.d.ts +16 -1
- package/dist/{chunk-7PCYG6YV.mjs → chunk-3PTVPAT4.mjs} +1863 -1099
- package/dist/{chunk-5NZGBSJF.mjs → chunk-3QWQ2MUQ.mjs} +469 -1000
- package/dist/{chunk-HTB4BMKD.mjs → chunk-3VT7LZY2.mjs} +321 -113
- package/dist/{chunk-MPBNEVPB.mjs → chunk-4T5JIPWY.mjs} +1 -1
- package/dist/{chunk-BBLZSQEY.mjs → chunk-E3NZYEKF.mjs} +1 -7
- package/dist/{chunk-GYXKAUFV.mjs → chunk-WUHKQBB6.mjs} +9509 -2658
- package/dist/cli/index.mjs +1347 -324
- package/dist/client/{accordion-QFZMNB7O.mjs → accordion-SFIIZWNH.mjs} +2 -2
- package/dist/client/{bookingForm-NCIXFWIG.mjs → bookingForm-CFKZVWGA.mjs} +5 -5
- package/dist/client/bookings.mjs +281 -19
- package/dist/client/{carousel-EO4BJMWD.mjs → carousel-ELXWSBLA.mjs} +3 -3
- package/dist/client/{cart-FTYCLYUW.mjs → cart-6SSCPYY5.mjs} +6 -6
- package/dist/client/{checkout-NFGLVCOX.mjs → checkout-UFQ34HPV.mjs} +6 -6
- package/dist/client/{chunk-6GVVWSPU.mjs → chunk-76JUETXQ.mjs} +139 -186
- package/dist/client/{chunk-AUJ5DBZJ.mjs → chunk-7BXX7WXH.mjs} +112 -28
- package/dist/client/{chunk-IWFZSQNZ.mjs → chunk-G56BSZAM.mjs} +2 -2
- package/dist/client/{chunk-VDS5YFLX.mjs → chunk-IUEDYLFJ.mjs} +1 -1
- package/dist/client/{chunk-PYRBIURC.mjs → chunk-NP47RHIX.mjs} +5 -5
- package/dist/client/{chunk-PUOELU4O.mjs → chunk-NX6X3GRF.mjs} +330 -80
- package/dist/client/{chunk-Y37KDO7P.mjs → chunk-PA2LJH2M.mjs} +2 -2
- package/dist/client/{chunk-CE7IBGVW.mjs → chunk-RMWMT3ZD.mjs} +1 -1
- package/dist/client/{chunk-4W66ALYT.mjs → chunk-TCJS3NY5.mjs} +1 -1
- package/dist/client/{chunk-T6UIP6UZ.mjs → chunk-V6XI4M2Q.mjs} +1 -1
- package/dist/client/client.mjs +5924 -3138
- package/dist/client/{courseRegistration-2EORROPS.mjs → courseRegistration-HJIISAAG.mjs} +5 -5
- package/dist/client/{eventCalendar-WZI4VL6N.mjs → eventCalendar-F6YVUCZR.mjs} +7 -7
- package/dist/client/{eventCombined-QCB2TCNL.mjs → eventCombined-B5DSTIOK.mjs} +7 -7
- package/dist/client/{eventDetails-TFTATAPH.mjs → eventDetails-SEJDDHQC.mjs} +7 -7
- package/dist/client/{eventListing-A2CQEHEQ.mjs → eventListing-TPMWIIBO.mjs} +7 -7
- package/dist/client/{eventRegistration-OELPVLUY.mjs → eventRegistration-QU6W2PV6.mjs} +7 -7
- package/dist/client/{form-NTIFD6WQ.mjs → form-LVTYNTDE.mjs} +2 -2
- package/dist/client/{headerSection-7TBNKCLA.mjs → headerSection-SO3MFC4U.mjs} +54 -13
- package/dist/client/hooks.mjs +2266 -1179
- package/dist/client/{locationMap-LRLB5A3H.mjs → locationMap-5E5FLAKO.mjs} +2 -2
- package/dist/client/{newsletterForm-XI52RZSN.mjs → newsletterForm-GN32JEBQ.mjs} +2 -2
- package/dist/client/{productDetail-GSNKBFLY.mjs → productDetail-Q346KSVR.mjs} +6 -6
- package/dist/client/{productList-BGCGT4KZ.mjs → productList-DTDMQYGZ.mjs} +6 -6
- package/dist/client/rendering/client.mjs +4618 -3318
- package/dist/client/rendering/islands.mjs +32 -20
- package/dist/client/rendering.mjs +4898 -2108
- package/dist/client/{shop-RQHUCLNY.mjs → shop-OFUW7KPN.mjs} +6 -6
- package/dist/preview-next/client/runtime.mjs +5 -5
- package/dist/preview-next/constants.mjs +0 -2
- package/dist/preview-next/index.mjs +0 -2
- package/dist/{sdk-runtime-A4LHT2RS.mjs → sdk-runtime-2GIX6I7X.mjs} +6 -6
- package/dist/server/components.mjs +4377 -1852
- package/dist/server/config-validation.mjs +2283 -1303
- package/dist/server/config.mjs +2283 -1303
- package/dist/server/data.mjs +2267 -1180
- package/dist/server/index.mjs +2 -1
- package/dist/server/next.mjs +4394 -1773
- package/dist/server/page-converter.mjs +1999 -1015
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +4482 -1857
- package/dist/server/rendering.mjs +4484 -1859
- package/dist/server/routing.mjs +2302 -1120
- package/dist/server/server.mjs +2284 -1197
- package/dist/server/theme-bridge.mjs +757 -85
- package/dist/server/theme.mjs +69 -4
- package/dist/styles/index.css +474 -65
- package/package.json +1 -1
- package/dist/SdkPreviewModeRuntime-XE5M4UKM.mjs +0 -8
- package/dist/_dts/editor-blocks/src/block-editor/actionControlMode.d.ts +0 -2
- package/dist/_dts/preview-next/src/client/preview/previewSurface.d.ts +0 -3
package/dist/server/data.mjs
CHANGED
|
@@ -6356,6 +6356,11 @@ function toLocationCoordinates(value) {
|
|
|
6356
6356
|
};
|
|
6357
6357
|
}
|
|
6358
6358
|
|
|
6359
|
+
// ../core/src/assert-never.ts
|
|
6360
|
+
function assertNever(value, message = "Unexpected variant") {
|
|
6361
|
+
throw new Error(`${message}: ${String(value)}`);
|
|
6362
|
+
}
|
|
6363
|
+
|
|
6359
6364
|
// ../api/src/accessAdmin.ts
|
|
6360
6365
|
import { z } from "zod";
|
|
6361
6366
|
var managedDomainAddOnPricingSnapshotSchema = z.object({
|
|
@@ -6460,7 +6465,7 @@ var navigationLinkInputSchema = z2.discriminatedUnion(
|
|
|
6460
6465
|
);
|
|
6461
6466
|
|
|
6462
6467
|
// ../api/src/sdkConfig/contracts.ts
|
|
6463
|
-
import { z as
|
|
6468
|
+
import { z as z64 } from "zod";
|
|
6464
6469
|
|
|
6465
6470
|
// ../blocks/src/system/manifest/augmentManifest.ts
|
|
6466
6471
|
function augmentManifest(manifest) {
|
|
@@ -7467,25 +7472,10 @@ function featuresFromHex(hex) {
|
|
|
7467
7472
|
return { r, g, b, h, s, l, v, Y, chroma, okL, okC, okH, hex };
|
|
7468
7473
|
}
|
|
7469
7474
|
|
|
7470
|
-
// ../theme-core/src/site-styles/appearancePresetResolution.ts
|
|
7471
|
-
function assertValidOptionGroups(preset2) {
|
|
7472
|
-
preset2.optionGroups?.forEach((group) => {
|
|
7473
|
-
const selectedOption = group.options.find(
|
|
7474
|
-
(option) => option.id === group.selectedOptionId
|
|
7475
|
-
);
|
|
7476
|
-
if (!selectedOption) {
|
|
7477
|
-
throw new Error(
|
|
7478
|
-
`Appearance preset "${preset2.id}" option group "${group.id}" selects missing option "${group.selectedOptionId}".`
|
|
7479
|
-
);
|
|
7480
|
-
}
|
|
7481
|
-
});
|
|
7482
|
-
}
|
|
7483
|
-
function defineBlockAppearancePreset(preset2) {
|
|
7484
|
-
assertValidOptionGroups(preset2);
|
|
7485
|
-
return preset2;
|
|
7486
|
-
}
|
|
7487
|
-
|
|
7488
7475
|
// ../theme-core/src/site-styles/types.ts
|
|
7476
|
+
function defineExactCatalog() {
|
|
7477
|
+
return (entries) => entries;
|
|
7478
|
+
}
|
|
7489
7479
|
function asDesignBlockId(value) {
|
|
7490
7480
|
return brandNonEmptyString(value, "DesignBlockId");
|
|
7491
7481
|
}
|
|
@@ -7544,7 +7534,7 @@ function makeBoundaryId(previousBlockId, nextBlockId) {
|
|
|
7544
7534
|
const next = encodeURIComponent(nextBlockId);
|
|
7545
7535
|
return asDesignBoundaryId(`boundary:${previous}:${next}`);
|
|
7546
7536
|
}
|
|
7547
|
-
function
|
|
7537
|
+
function assertNever2(value, message = "Unhandled Theme V2 variant") {
|
|
7548
7538
|
throw new Error(`${message}: ${String(value)}`);
|
|
7549
7539
|
}
|
|
7550
7540
|
function brandNonEmptyString(value, label) {
|
|
@@ -7634,11 +7624,31 @@ function defineBlockDesignCapability(capability) {
|
|
|
7634
7624
|
tileTreatments: capability.tileTreatments ?? ["default"],
|
|
7635
7625
|
eventListTreatments: capability.eventListTreatments ?? ["plain"],
|
|
7636
7626
|
eyebrowTreatments: capability.eyebrowTreatments ?? ["plain"],
|
|
7637
|
-
|
|
7638
|
-
|
|
7627
|
+
headingDecorationCapability: capability.headingDecorationCapability ?? {
|
|
7628
|
+
kind: "unsupported"
|
|
7629
|
+
},
|
|
7630
|
+
...capability.accordionIconSets ? { accordionIconSets: capability.accordionIconSets } : {}
|
|
7639
7631
|
};
|
|
7640
7632
|
}
|
|
7641
7633
|
|
|
7634
|
+
// ../theme-core/src/site-styles/appearancePresetResolution.ts
|
|
7635
|
+
function assertValidOptionGroups(preset2) {
|
|
7636
|
+
preset2.optionGroups?.forEach((group) => {
|
|
7637
|
+
const selectedOption = group.options.find(
|
|
7638
|
+
(option) => option.id === group.selectedOptionId
|
|
7639
|
+
);
|
|
7640
|
+
if (!selectedOption) {
|
|
7641
|
+
throw new Error(
|
|
7642
|
+
`Appearance preset "${preset2.id}" option group "${group.id}" selects missing option "${group.selectedOptionId}".`
|
|
7643
|
+
);
|
|
7644
|
+
}
|
|
7645
|
+
});
|
|
7646
|
+
}
|
|
7647
|
+
function defineBlockAppearancePreset(preset2) {
|
|
7648
|
+
assertValidOptionGroups(preset2);
|
|
7649
|
+
return preset2;
|
|
7650
|
+
}
|
|
7651
|
+
|
|
7642
7652
|
// ../theme-core/src/site-styles/blockAppearancePresets.ts
|
|
7643
7653
|
var blockAppearancePresets = [
|
|
7644
7654
|
defineBlockAppearancePreset({
|
|
@@ -8000,8 +8010,25 @@ var blockAppearancePresets = [
|
|
|
8000
8010
|
kind: "block-design",
|
|
8001
8011
|
id: "intro-organic-statement",
|
|
8002
8012
|
target: "intro",
|
|
8003
|
-
label: "
|
|
8013
|
+
label: "Intro statement",
|
|
8014
|
+
blockKinds: ["block.intro"],
|
|
8015
|
+
design: {
|
|
8016
|
+
sectionSurface: "base",
|
|
8017
|
+
contentFrame: plainFrame,
|
|
8018
|
+
itemSurface: "none",
|
|
8019
|
+
transitionAfter: "soft-fade-short",
|
|
8020
|
+
emphasis: "high"
|
|
8021
|
+
}
|
|
8022
|
+
}),
|
|
8023
|
+
defineBlockAppearancePreset({
|
|
8024
|
+
kind: "block-design",
|
|
8025
|
+
id: "intro-editorial-statement",
|
|
8026
|
+
target: "intro",
|
|
8027
|
+
label: "Editorial intro statement",
|
|
8004
8028
|
blockKinds: ["block.intro"],
|
|
8029
|
+
constraints: {
|
|
8030
|
+
layoutVariantKeys: ["centered-copy", "statement-copy"]
|
|
8031
|
+
},
|
|
8005
8032
|
design: {
|
|
8006
8033
|
sectionSurface: "base",
|
|
8007
8034
|
contentFrame: plainFrame,
|
|
@@ -8024,12 +8051,7 @@ var blockAppearancePresets = [
|
|
|
8024
8051
|
contentFrame: plainFrame,
|
|
8025
8052
|
itemSurface: "none",
|
|
8026
8053
|
transitionAfter: "soft-fade-short",
|
|
8027
|
-
emphasis: "medium"
|
|
8028
|
-
headingDecoration: {
|
|
8029
|
-
family: "organic-squiggle",
|
|
8030
|
-
placement: "after-heading",
|
|
8031
|
-
colorToken: "primary"
|
|
8032
|
-
}
|
|
8054
|
+
emphasis: "medium"
|
|
8033
8055
|
}
|
|
8034
8056
|
}),
|
|
8035
8057
|
defineBlockAppearancePreset({
|
|
@@ -8046,6 +8068,48 @@ var blockAppearancePresets = [
|
|
|
8046
8068
|
emphasis: "medium"
|
|
8047
8069
|
}
|
|
8048
8070
|
}),
|
|
8071
|
+
defineBlockAppearancePreset({
|
|
8072
|
+
kind: "block-design",
|
|
8073
|
+
id: "offerings-preview-default-cards",
|
|
8074
|
+
target: "offerings",
|
|
8075
|
+
label: "Default offering cards",
|
|
8076
|
+
blockKinds: ["block.offerings-preview"],
|
|
8077
|
+
design: {
|
|
8078
|
+
sectionSurface: "base",
|
|
8079
|
+
contentFrame: plainFrame,
|
|
8080
|
+
itemSurface: "default",
|
|
8081
|
+
transitionAfter: "soft-fade-short",
|
|
8082
|
+
emphasis: "medium"
|
|
8083
|
+
}
|
|
8084
|
+
}),
|
|
8085
|
+
defineBlockAppearancePreset({
|
|
8086
|
+
kind: "block-design",
|
|
8087
|
+
id: "offerings-preview-secondary-cards",
|
|
8088
|
+
target: "offerings",
|
|
8089
|
+
label: "Secondary offering cards",
|
|
8090
|
+
blockKinds: ["block.offerings-preview"],
|
|
8091
|
+
design: {
|
|
8092
|
+
sectionSurface: "muted-band",
|
|
8093
|
+
contentFrame: plainFrame,
|
|
8094
|
+
itemSurface: "inset",
|
|
8095
|
+
transitionAfter: "soft-fade-short",
|
|
8096
|
+
emphasis: "medium"
|
|
8097
|
+
}
|
|
8098
|
+
}),
|
|
8099
|
+
defineBlockAppearancePreset({
|
|
8100
|
+
kind: "block-design",
|
|
8101
|
+
id: "offerings-preview-non-carded",
|
|
8102
|
+
target: "offerings",
|
|
8103
|
+
label: "Non-carded offerings",
|
|
8104
|
+
blockKinds: ["block.offerings-preview"],
|
|
8105
|
+
design: {
|
|
8106
|
+
sectionSurface: "muted-band",
|
|
8107
|
+
contentFrame: plainFrame,
|
|
8108
|
+
itemSurface: "editorial",
|
|
8109
|
+
transitionAfter: "soft-fade-short",
|
|
8110
|
+
emphasis: "medium"
|
|
8111
|
+
}
|
|
8112
|
+
}),
|
|
8049
8113
|
defineBlockAppearancePreset({
|
|
8050
8114
|
kind: "block-design",
|
|
8051
8115
|
id: "feature-cards-raised-rule",
|
|
@@ -8060,6 +8124,20 @@ var blockAppearancePresets = [
|
|
|
8060
8124
|
emphasis: "high"
|
|
8061
8125
|
}
|
|
8062
8126
|
}),
|
|
8127
|
+
defineBlockAppearancePreset({
|
|
8128
|
+
kind: "block-design",
|
|
8129
|
+
id: "feature-cards-bold-colors",
|
|
8130
|
+
target: "feature-cards",
|
|
8131
|
+
label: "Bold colour-blocked cards",
|
|
8132
|
+
blockKinds: ["block.feature-cards"],
|
|
8133
|
+
design: {
|
|
8134
|
+
sectionSurface: "base",
|
|
8135
|
+
contentFrame: plainFrame,
|
|
8136
|
+
itemSurface: "color-blocked",
|
|
8137
|
+
transitionAfter: "none",
|
|
8138
|
+
emphasis: "high"
|
|
8139
|
+
}
|
|
8140
|
+
}),
|
|
8063
8141
|
defineBlockAppearancePreset({
|
|
8064
8142
|
kind: "block-design",
|
|
8065
8143
|
id: "feature-cards-editorial-columns",
|
|
@@ -8313,7 +8391,7 @@ var blockAppearancePresets = [
|
|
|
8313
8391
|
kind: "block-design",
|
|
8314
8392
|
id: "contact-form-panel",
|
|
8315
8393
|
target: "contact-form",
|
|
8316
|
-
label: "
|
|
8394
|
+
label: "Raised form panel",
|
|
8317
8395
|
blockKinds: ["block.form"],
|
|
8318
8396
|
design: {
|
|
8319
8397
|
sectionSurface: "muted-band",
|
|
@@ -8325,30 +8403,16 @@ var blockAppearancePresets = [
|
|
|
8325
8403
|
}),
|
|
8326
8404
|
defineBlockAppearancePreset({
|
|
8327
8405
|
kind: "block-design",
|
|
8328
|
-
id: "contact-form-
|
|
8329
|
-
target: "contact-form",
|
|
8330
|
-
label: "Dark form card",
|
|
8331
|
-
blockKinds: ["block.form"],
|
|
8332
|
-
design: {
|
|
8333
|
-
sectionSurface: "accent-band",
|
|
8334
|
-
contentFrame: panelFrame("raised"),
|
|
8335
|
-
itemSurface: "none",
|
|
8336
|
-
transitionAfter: "soft-fade-short",
|
|
8337
|
-
emphasis: "high"
|
|
8338
|
-
}
|
|
8339
|
-
}),
|
|
8340
|
-
defineBlockAppearancePreset({
|
|
8341
|
-
kind: "block-design",
|
|
8342
|
-
id: "contact-form-brand-depth-card",
|
|
8406
|
+
id: "contact-form-open",
|
|
8343
8407
|
target: "contact-form",
|
|
8344
|
-
label: "
|
|
8408
|
+
label: "Open form",
|
|
8345
8409
|
blockKinds: ["block.form"],
|
|
8346
8410
|
design: {
|
|
8347
|
-
sectionSurface: "
|
|
8348
|
-
contentFrame:
|
|
8411
|
+
sectionSurface: "muted-band",
|
|
8412
|
+
contentFrame: plainFrame,
|
|
8349
8413
|
itemSurface: "none",
|
|
8350
8414
|
transitionAfter: "none",
|
|
8351
|
-
emphasis: "
|
|
8415
|
+
emphasis: "medium"
|
|
8352
8416
|
}
|
|
8353
8417
|
}),
|
|
8354
8418
|
defineBlockAppearancePreset({
|
|
@@ -8426,7 +8490,130 @@ function assertUniqueLayoutProfileKeys(profiles) {
|
|
|
8426
8490
|
|
|
8427
8491
|
// ../theme-core/src/site-styles/pageDesignIntent.ts
|
|
8428
8492
|
import { z as z5 } from "zod";
|
|
8429
|
-
|
|
8493
|
+
|
|
8494
|
+
// ../theme-core/src/site-styles/sectionTransitions.ts
|
|
8495
|
+
var noneBoundaryOption = {
|
|
8496
|
+
id: asBoundaryOptionId("break:none"),
|
|
8497
|
+
label: "None",
|
|
8498
|
+
transitionAfter: "none",
|
|
8499
|
+
treatment: { kind: "none" }
|
|
8500
|
+
};
|
|
8501
|
+
var softBoundaryOption = {
|
|
8502
|
+
id: asBoundaryOptionId("break:soft"),
|
|
8503
|
+
label: "Soft",
|
|
8504
|
+
transitionAfter: "soft-fade-short",
|
|
8505
|
+
treatment: { kind: "soft-fade", height: "medium", curve: "soft" }
|
|
8506
|
+
};
|
|
8507
|
+
var spaciousBoundaryOption = {
|
|
8508
|
+
id: asBoundaryOptionId("break:spacious"),
|
|
8509
|
+
label: "Spacious",
|
|
8510
|
+
transitionAfter: "soft-fade-long",
|
|
8511
|
+
treatment: { kind: "soft-fade", height: "large", curve: "spacious" }
|
|
8512
|
+
};
|
|
8513
|
+
var expansiveBoundaryOption = {
|
|
8514
|
+
id: asBoundaryOptionId("break:expansive"),
|
|
8515
|
+
label: "Expansive",
|
|
8516
|
+
transitionAfter: "soft-fade-expansive",
|
|
8517
|
+
treatment: { kind: "soft-fade", height: "expansive", curve: "expansive" }
|
|
8518
|
+
};
|
|
8519
|
+
var waveBoundaryOption = {
|
|
8520
|
+
id: asBoundaryOptionId("break:wave"),
|
|
8521
|
+
label: "Classic wave",
|
|
8522
|
+
transitionAfter: "wave-edge",
|
|
8523
|
+
treatment: {
|
|
8524
|
+
kind: "wave-edge",
|
|
8525
|
+
height: "medium",
|
|
8526
|
+
amplitude: "balanced",
|
|
8527
|
+
rhythm: "double",
|
|
8528
|
+
symmetry: "asymmetrical"
|
|
8529
|
+
}
|
|
8530
|
+
};
|
|
8531
|
+
var balancedWaveBoundaryOption = {
|
|
8532
|
+
id: asBoundaryOptionId("break:wave-balanced"),
|
|
8533
|
+
label: "Balanced wave",
|
|
8534
|
+
transitionAfter: "wave-edge-balanced",
|
|
8535
|
+
treatment: {
|
|
8536
|
+
kind: "wave-edge",
|
|
8537
|
+
height: "medium",
|
|
8538
|
+
amplitude: "balanced",
|
|
8539
|
+
rhythm: "double",
|
|
8540
|
+
symmetry: "symmetrical"
|
|
8541
|
+
}
|
|
8542
|
+
};
|
|
8543
|
+
var gentleWaveBoundaryOption = {
|
|
8544
|
+
id: asBoundaryOptionId("break:wave-gentle"),
|
|
8545
|
+
label: "Gentle wave",
|
|
8546
|
+
transitionAfter: "wave-edge-gentle",
|
|
8547
|
+
treatment: {
|
|
8548
|
+
kind: "wave-edge",
|
|
8549
|
+
height: "compact",
|
|
8550
|
+
amplitude: "subtle",
|
|
8551
|
+
rhythm: "single",
|
|
8552
|
+
symmetry: "symmetrical"
|
|
8553
|
+
}
|
|
8554
|
+
};
|
|
8555
|
+
var boldWaveBoundaryOption = {
|
|
8556
|
+
id: asBoundaryOptionId("break:wave-bold"),
|
|
8557
|
+
label: "Bold wave",
|
|
8558
|
+
transitionAfter: "wave-edge-bold",
|
|
8559
|
+
treatment: {
|
|
8560
|
+
kind: "wave-edge",
|
|
8561
|
+
height: "large",
|
|
8562
|
+
amplitude: "bold",
|
|
8563
|
+
rhythm: "double",
|
|
8564
|
+
symmetry: "symmetrical"
|
|
8565
|
+
}
|
|
8566
|
+
};
|
|
8567
|
+
var driftWaveBoundaryOption = {
|
|
8568
|
+
id: asBoundaryOptionId("break:wave-drift"),
|
|
8569
|
+
label: "Drift wave",
|
|
8570
|
+
transitionAfter: "wave-edge-drift",
|
|
8571
|
+
treatment: {
|
|
8572
|
+
kind: "wave-edge",
|
|
8573
|
+
height: "medium",
|
|
8574
|
+
amplitude: "balanced",
|
|
8575
|
+
rhythm: "double",
|
|
8576
|
+
symmetry: "drift"
|
|
8577
|
+
}
|
|
8578
|
+
};
|
|
8579
|
+
var subtleAngleBoundaryOption = {
|
|
8580
|
+
id: asBoundaryOptionId("break:angle-subtle"),
|
|
8581
|
+
label: "Subtle angle",
|
|
8582
|
+
transitionAfter: "angle-edge-subtle",
|
|
8583
|
+
treatment: {
|
|
8584
|
+
kind: "angle-edge",
|
|
8585
|
+
height: "compact",
|
|
8586
|
+
slope: "subtle",
|
|
8587
|
+
direction: "forward"
|
|
8588
|
+
}
|
|
8589
|
+
};
|
|
8590
|
+
var balancedAngleBoundaryOption = {
|
|
8591
|
+
id: asBoundaryOptionId("break:angle-balanced"),
|
|
8592
|
+
label: "Balanced angle",
|
|
8593
|
+
transitionAfter: "angle-edge",
|
|
8594
|
+
treatment: {
|
|
8595
|
+
kind: "angle-edge",
|
|
8596
|
+
height: "medium",
|
|
8597
|
+
slope: "balanced",
|
|
8598
|
+
direction: "forward"
|
|
8599
|
+
}
|
|
8600
|
+
};
|
|
8601
|
+
var steepAngleBoundaryOption = {
|
|
8602
|
+
id: asBoundaryOptionId("break:angle-steep"),
|
|
8603
|
+
label: "Steep angle",
|
|
8604
|
+
transitionAfter: "angle-edge-steep",
|
|
8605
|
+
treatment: {
|
|
8606
|
+
kind: "angle-edge",
|
|
8607
|
+
height: "large",
|
|
8608
|
+
slope: "steep",
|
|
8609
|
+
direction: "forward"
|
|
8610
|
+
}
|
|
8611
|
+
};
|
|
8612
|
+
|
|
8613
|
+
// ../theme-core/src/site-styles/pageDesignIntent.ts
|
|
8614
|
+
var pageDesignIntentSchemaVersion = 2;
|
|
8615
|
+
var legacyPageDesignIntentSchemaVersion = 1;
|
|
8616
|
+
var unknownBoundaryOptionId = asBoundaryOptionId("break:unknown");
|
|
8430
8617
|
var pageDesignUserPinnedAppearanceChoiceSchema = z5.object({
|
|
8431
8618
|
kind: z5.literal("user-pinned"),
|
|
8432
8619
|
value: z5.string().min(1).transform(asAppearancePresetId)
|
|
@@ -8435,17 +8622,84 @@ var pageDesignUserPinnedBoundaryChoiceSchema = z5.object({
|
|
|
8435
8622
|
kind: z5.literal("user-pinned"),
|
|
8436
8623
|
value: z5.string().min(1).transform(asBoundaryOptionId)
|
|
8437
8624
|
}).strict();
|
|
8625
|
+
var pageDesignBoundaryTreatmentSchema = z5.discriminatedUnion("kind", [
|
|
8626
|
+
z5.object({ kind: z5.literal("none") }).strict(),
|
|
8627
|
+
z5.object({
|
|
8628
|
+
kind: z5.literal("soft-fade"),
|
|
8629
|
+
height: z5.enum(["compact", "medium", "large", "expansive"]),
|
|
8630
|
+
curve: z5.enum(["soft", "spacious", "expansive"])
|
|
8631
|
+
}).strict(),
|
|
8632
|
+
z5.object({
|
|
8633
|
+
kind: z5.literal("wave-edge"),
|
|
8634
|
+
height: z5.enum(["compact", "medium", "large"]),
|
|
8635
|
+
amplitude: z5.enum(["subtle", "balanced", "bold"]),
|
|
8636
|
+
rhythm: z5.enum(["single", "double"]),
|
|
8637
|
+
symmetry: z5.enum(["symmetrical", "asymmetrical", "drift"])
|
|
8638
|
+
}).strict(),
|
|
8639
|
+
z5.object({
|
|
8640
|
+
kind: z5.literal("angle-edge"),
|
|
8641
|
+
height: z5.enum(["compact", "medium", "large"]),
|
|
8642
|
+
slope: z5.enum(["subtle", "balanced", "steep"]),
|
|
8643
|
+
direction: z5.enum(["forward", "reverse"])
|
|
8644
|
+
}).strict(),
|
|
8645
|
+
z5.object({
|
|
8646
|
+
kind: z5.literal("legacy-unsupported"),
|
|
8647
|
+
boundaryOptionId: z5.string().min(1).transform(asBoundaryOptionId)
|
|
8648
|
+
}).strict()
|
|
8649
|
+
]);
|
|
8650
|
+
var pageDesignUserPinnedBoundaryTreatmentChoiceSchema = z5.object({
|
|
8651
|
+
kind: z5.literal("user-pinned"),
|
|
8652
|
+
value: pageDesignBoundaryTreatmentSchema
|
|
8653
|
+
}).strict();
|
|
8438
8654
|
var pageDesignBlockLookPinSchema = z5.object({
|
|
8439
8655
|
blockId: z5.string().min(1).transform(asDesignBlockId),
|
|
8440
8656
|
blockKind: z5.string().min(1),
|
|
8441
8657
|
choice: pageDesignUserPinnedAppearanceChoiceSchema
|
|
8442
8658
|
}).strict();
|
|
8443
8659
|
var pageDesignBoundaryPinSchema = z5.object({
|
|
8660
|
+
boundaryId: z5.string().min(1).transform(asDesignBoundaryId),
|
|
8661
|
+
previousBlockId: z5.string().min(1).transform(asDesignBlockId),
|
|
8662
|
+
nextBlockId: z5.string().min(1).transform(asDesignBlockId),
|
|
8663
|
+
choice: pageDesignUserPinnedBoundaryTreatmentChoiceSchema
|
|
8664
|
+
}).strict().superRefine(validateBoundaryPinIdMatchesBlocks);
|
|
8665
|
+
var legacyPageDesignBoundaryPinSchema = z5.object({
|
|
8444
8666
|
boundaryId: z5.string().min(1).transform(asDesignBoundaryId),
|
|
8445
8667
|
previousBlockId: z5.string().min(1).transform(asDesignBlockId),
|
|
8446
8668
|
nextBlockId: z5.string().min(1).transform(asDesignBlockId),
|
|
8447
8669
|
choice: pageDesignUserPinnedBoundaryChoiceSchema
|
|
8448
|
-
}).strict().superRefine(
|
|
8670
|
+
}).strict().superRefine(validateBoundaryPinIdMatchesBlocks);
|
|
8671
|
+
var pageDesignIntentV1Schema = z5.object({
|
|
8672
|
+
schemaVersion: z5.literal(legacyPageDesignIntentSchemaVersion),
|
|
8673
|
+
siteStyleId: z5.string().min(1).transform(asSiteStyleId),
|
|
8674
|
+
pageFlowPresetId: z5.string().min(1).transform(asPageFlowPresetId),
|
|
8675
|
+
blockLookPins: z5.array(pageDesignBlockLookPinSchema),
|
|
8676
|
+
boundaryPins: z5.array(legacyPageDesignBoundaryPinSchema)
|
|
8677
|
+
}).strict().superRefine(validateUniquePageDesignPins);
|
|
8678
|
+
var pageDesignIntentV2Schema = z5.object({
|
|
8679
|
+
schemaVersion: z5.literal(pageDesignIntentSchemaVersion),
|
|
8680
|
+
siteStyleId: z5.string().min(1).transform(asSiteStyleId),
|
|
8681
|
+
pageFlowPresetId: z5.string().min(1).transform(asPageFlowPresetId),
|
|
8682
|
+
blockLookPins: z5.array(pageDesignBlockLookPinSchema),
|
|
8683
|
+
boundaryPins: z5.array(pageDesignBoundaryPinSchema)
|
|
8684
|
+
}).strict().superRefine(validateUniquePageDesignPins);
|
|
8685
|
+
function addDuplicateStringIssues(ctx, input) {
|
|
8686
|
+
const seen = /* @__PURE__ */ new Set();
|
|
8687
|
+
const duplicates = /* @__PURE__ */ new Set();
|
|
8688
|
+
for (const value of input.values) {
|
|
8689
|
+
if (seen.has(value)) {
|
|
8690
|
+
duplicates.add(value);
|
|
8691
|
+
}
|
|
8692
|
+
seen.add(value);
|
|
8693
|
+
}
|
|
8694
|
+
for (const duplicate of duplicates) {
|
|
8695
|
+
ctx.addIssue({
|
|
8696
|
+
code: z5.ZodIssueCode.custom,
|
|
8697
|
+
path: [...input.path],
|
|
8698
|
+
message: `Duplicate ${input.label}: ${duplicate}.`
|
|
8699
|
+
});
|
|
8700
|
+
}
|
|
8701
|
+
}
|
|
8702
|
+
function validateBoundaryPinIdMatchesBlocks(pin, ctx) {
|
|
8449
8703
|
const expectedBoundaryId = makeBoundaryId(
|
|
8450
8704
|
pin.previousBlockId,
|
|
8451
8705
|
pin.nextBlockId
|
|
@@ -8457,14 +8711,8 @@ var pageDesignBoundaryPinSchema = z5.object({
|
|
|
8457
8711
|
message: `Boundary id must match previousBlockId and nextBlockId. Expected ${expectedBoundaryId}.`
|
|
8458
8712
|
});
|
|
8459
8713
|
}
|
|
8460
|
-
}
|
|
8461
|
-
|
|
8462
|
-
schemaVersion: z5.literal(pageDesignIntentSchemaVersion),
|
|
8463
|
-
siteStyleId: z5.string().min(1).transform(asSiteStyleId),
|
|
8464
|
-
pageFlowPresetId: z5.string().min(1).transform(asPageFlowPresetId),
|
|
8465
|
-
blockLookPins: z5.array(pageDesignBlockLookPinSchema),
|
|
8466
|
-
boundaryPins: z5.array(pageDesignBoundaryPinSchema)
|
|
8467
|
-
}).strict().superRefine((intent, ctx) => {
|
|
8714
|
+
}
|
|
8715
|
+
function validateUniquePageDesignPins(intent, ctx) {
|
|
8468
8716
|
addDuplicateStringIssues(ctx, {
|
|
8469
8717
|
values: intent.blockLookPins.map((pin) => pin.blockId),
|
|
8470
8718
|
path: ["blockLookPins"],
|
|
@@ -8477,23 +8725,6 @@ var pageDesignIntentV1Schema = z5.object({
|
|
|
8477
8725
|
path: ["boundaryPins"],
|
|
8478
8726
|
label: "boundary pin"
|
|
8479
8727
|
});
|
|
8480
|
-
});
|
|
8481
|
-
function addDuplicateStringIssues(ctx, input) {
|
|
8482
|
-
const seen = /* @__PURE__ */ new Set();
|
|
8483
|
-
const duplicates = /* @__PURE__ */ new Set();
|
|
8484
|
-
for (const value of input.values) {
|
|
8485
|
-
if (seen.has(value)) {
|
|
8486
|
-
duplicates.add(value);
|
|
8487
|
-
}
|
|
8488
|
-
seen.add(value);
|
|
8489
|
-
}
|
|
8490
|
-
for (const duplicate of duplicates) {
|
|
8491
|
-
ctx.addIssue({
|
|
8492
|
-
code: z5.ZodIssueCode.custom,
|
|
8493
|
-
path: [...input.path],
|
|
8494
|
-
message: `Duplicate ${input.label}: ${duplicate}.`
|
|
8495
|
-
});
|
|
8496
|
-
}
|
|
8497
8728
|
}
|
|
8498
8729
|
function boundaryKey(previousBlockId, nextBlockId) {
|
|
8499
8730
|
return makeBoundaryId(previousBlockId, nextBlockId);
|
|
@@ -8752,7 +8983,9 @@ var buttonBorderSchema = z7.object({
|
|
|
8752
8983
|
var variantShadowSchema = z7.object({
|
|
8753
8984
|
elevation: z7.enum(["none", "low", "medium", "high"]),
|
|
8754
8985
|
softness: z7.enum(["crisp", "soft", "hard"]).nullable(),
|
|
8755
|
-
position: z7.enum(["bottom", "bottom-right"]).default("bottom")
|
|
8986
|
+
position: z7.enum(["bottom", "bottom-right"]).default("bottom"),
|
|
8987
|
+
// Optional palette token for a coloured offset shadow; omit for neutral black.
|
|
8988
|
+
colorToken: themeColorTokenSchema.optional()
|
|
8756
8989
|
});
|
|
8757
8990
|
var variantEffectsSchema = z7.object({
|
|
8758
8991
|
base: z7.array(effectApplicationSchema).optional(),
|
|
@@ -9276,6 +9509,65 @@ var inkStamp = defineButtonPersonality({
|
|
|
9276
9509
|
}
|
|
9277
9510
|
});
|
|
9278
9511
|
|
|
9512
|
+
// ../theme-core/src/buttons/personalities/joy-stamp.ts
|
|
9513
|
+
var joyStamp = defineButtonPersonality({
|
|
9514
|
+
id: "joy-stamp",
|
|
9515
|
+
name: "Joy Stamp",
|
|
9516
|
+
description: "Pill buttons with a hard, brand-coloured offset shadow that presses in on hover.",
|
|
9517
|
+
tags: { tone: "bold", energy: "vibrant", motion: "expressive", era: "organic" },
|
|
9518
|
+
buttonSystem: {
|
|
9519
|
+
global: {
|
|
9520
|
+
cornerStyle: "pill",
|
|
9521
|
+
shadow: "high",
|
|
9522
|
+
textTransform: "none",
|
|
9523
|
+
// Bold display type on the buttons: use the heading font (Bricolage) at
|
|
9524
|
+
// 700, matching the mockup's chunky button labels.
|
|
9525
|
+
typography: "heading",
|
|
9526
|
+
fontWeight: 700,
|
|
9527
|
+
borderWidth: 2,
|
|
9528
|
+
hoverTransform: "none",
|
|
9529
|
+
hoverColor: "none"
|
|
9530
|
+
},
|
|
9531
|
+
sizes: {
|
|
9532
|
+
sm: { padding: "0.625rem 1.25rem", fontSize: "text-sm" },
|
|
9533
|
+
md: { padding: "0.875rem 1.75rem", fontSize: "text-base" },
|
|
9534
|
+
lg: { padding: "1.125rem 2.25rem", fontSize: "text-lg" },
|
|
9535
|
+
xl: { padding: "1.25rem 2.75rem", fontSize: "text-xl" }
|
|
9536
|
+
},
|
|
9537
|
+
variants: [
|
|
9538
|
+
{
|
|
9539
|
+
id: "primary",
|
|
9540
|
+
name: "Primary",
|
|
9541
|
+
enabled: true,
|
|
9542
|
+
priority: 1,
|
|
9543
|
+
background: { type: "solid", colorToken: "primary" },
|
|
9544
|
+
textColorToken: "primaryForeground",
|
|
9545
|
+
borderRadius: "rounded-full",
|
|
9546
|
+
// Cream stamp shadow under the burnt-orange fill.
|
|
9547
|
+
shadow: { elevation: "high", softness: "hard", position: "bottom-right", colorToken: "text" },
|
|
9548
|
+
effects: {
|
|
9549
|
+
hover: [{ effectId: "press-down" }]
|
|
9550
|
+
}
|
|
9551
|
+
},
|
|
9552
|
+
{
|
|
9553
|
+
id: "secondary",
|
|
9554
|
+
name: "Secondary",
|
|
9555
|
+
enabled: true,
|
|
9556
|
+
priority: 2,
|
|
9557
|
+
background: { type: "transparent" },
|
|
9558
|
+
textColorToken: "text",
|
|
9559
|
+
borderRadius: "rounded-full",
|
|
9560
|
+
border: { widthClass: "border-2", colorToken: "text" },
|
|
9561
|
+
// Brown stamp shadow under the cream outline.
|
|
9562
|
+
shadow: { elevation: "high", softness: "hard", position: "bottom-right", colorToken: "secondary" },
|
|
9563
|
+
effects: {
|
|
9564
|
+
hover: [{ effectId: "press-down" }]
|
|
9565
|
+
}
|
|
9566
|
+
}
|
|
9567
|
+
]
|
|
9568
|
+
}
|
|
9569
|
+
});
|
|
9570
|
+
|
|
9279
9571
|
// ../theme-core/src/buttons/personalities/pebble.ts
|
|
9280
9572
|
var pebble = defineButtonPersonality({
|
|
9281
9573
|
id: "pebble",
|
|
@@ -9549,7 +9841,8 @@ var buttonPersonalities = [
|
|
|
9549
9841
|
pebble,
|
|
9550
9842
|
inkStamp,
|
|
9551
9843
|
brushedWash,
|
|
9552
|
-
showtimePill
|
|
9844
|
+
showtimePill,
|
|
9845
|
+
joyStamp
|
|
9553
9846
|
];
|
|
9554
9847
|
var personalitiesById = new Map(
|
|
9555
9848
|
buttonPersonalities.map((p) => [p.id, p])
|
|
@@ -10420,7 +10713,9 @@ var boxBackgroundSchema = z22.object({
|
|
|
10420
10713
|
motion: z22.enum(["static", "fixed-frame"]).nullable().optional(),
|
|
10421
10714
|
overlay: boxBackgroundOverlaySchema.nullable().optional(),
|
|
10422
10715
|
textColor: tokenOrCssColorValueSchema.nullable().optional(),
|
|
10423
|
-
headingColor: tokenOrCssColorValueSchema.nullable().optional()
|
|
10716
|
+
headingColor: tokenOrCssColorValueSchema.nullable().optional(),
|
|
10717
|
+
linkColor: tokenOrCssColorValueSchema.nullable().optional(),
|
|
10718
|
+
supportingColor: tokenOrCssColorValueSchema.nullable().optional()
|
|
10424
10719
|
});
|
|
10425
10720
|
var noHeadingDecorationSchema = z22.object({
|
|
10426
10721
|
family: z22.literal("none")
|
|
@@ -10483,7 +10778,8 @@ var cardStylesOverrideSchema = z22.object({
|
|
|
10483
10778
|
"editorial-rule",
|
|
10484
10779
|
"soft-panel",
|
|
10485
10780
|
"editorial-serif-quote",
|
|
10486
|
-
"editorial-open"
|
|
10781
|
+
"editorial-open",
|
|
10782
|
+
"color-blocked"
|
|
10487
10783
|
]).nullable().optional(),
|
|
10488
10784
|
// Which site-style card variant the card adopts (emits a `.card-{id}` class).
|
|
10489
10785
|
// 'none' is boxless. Driven by the block look via testimonialCardTreatment.
|
|
@@ -11308,6 +11604,30 @@ var warmNeutralForest = definePaletteVariant({
|
|
|
11308
11604
|
]
|
|
11309
11605
|
});
|
|
11310
11606
|
|
|
11607
|
+
// ../theme-core/src/palette/variants/warm-dark.ts
|
|
11608
|
+
var warmDarkEmber = definePaletteVariant({
|
|
11609
|
+
id: "warm-dark-ember",
|
|
11610
|
+
name: "Warm Dark \u2014 Ember",
|
|
11611
|
+
description: "Deep clay-brown ground with burnt-orange accent and warm cream text.",
|
|
11612
|
+
tags: { tone: "bold", energy: "vibrant", era: "organic" },
|
|
11613
|
+
mode: "dark",
|
|
11614
|
+
colors: [
|
|
11615
|
+
{ name: "primary", hex: "#ce612f" },
|
|
11616
|
+
{ name: "secondary", hex: "#894e31" },
|
|
11617
|
+
{ name: "accent", hex: "#ce612f" },
|
|
11618
|
+
{ name: "success", hex: "#6f8f57" },
|
|
11619
|
+
{ name: "warning", hex: "#c98a3c" },
|
|
11620
|
+
{ name: "destructive", hex: "#c0492f" },
|
|
11621
|
+
{ name: "background", hex: "#4f2415" },
|
|
11622
|
+
{ name: "surface", hex: "#5c3320" },
|
|
11623
|
+
{ name: "surfaceAlt", hex: "#693a25" },
|
|
11624
|
+
{ name: "muted", hex: "#6a3d27" },
|
|
11625
|
+
{ name: "text", hex: "#f0e1d0" },
|
|
11626
|
+
{ name: "primaryForeground", hex: "#4f2415" },
|
|
11627
|
+
{ name: "border", hex: "#894e31" }
|
|
11628
|
+
]
|
|
11629
|
+
});
|
|
11630
|
+
|
|
11311
11631
|
// ../theme-core/src/palette/variants/index.ts
|
|
11312
11632
|
var paletteVariants = [
|
|
11313
11633
|
// Brand-led family
|
|
@@ -11328,7 +11648,9 @@ var paletteVariants = [
|
|
|
11328
11648
|
softNaturalSage,
|
|
11329
11649
|
softNaturalStone,
|
|
11330
11650
|
softNaturalWatercolor,
|
|
11331
|
-
softNaturalLilac
|
|
11651
|
+
softNaturalLilac,
|
|
11652
|
+
// Warm-dark family (dark mode)
|
|
11653
|
+
warmDarkEmber
|
|
11332
11654
|
];
|
|
11333
11655
|
var paletteVariantsById = new Map(
|
|
11334
11656
|
paletteVariants.map((v) => [v.id, v])
|
|
@@ -11609,6 +11931,32 @@ var clarityZenCardSystem = {
|
|
|
11609
11931
|
}
|
|
11610
11932
|
]
|
|
11611
11933
|
};
|
|
11934
|
+
var originalJoyCardSystem = {
|
|
11935
|
+
variants: [
|
|
11936
|
+
{
|
|
11937
|
+
id: "default",
|
|
11938
|
+
name: "Default",
|
|
11939
|
+
enabled: true,
|
|
11940
|
+
priority: 1,
|
|
11941
|
+
background: { type: "solid", colorToken: "surface" },
|
|
11942
|
+
foregroundToken: "text",
|
|
11943
|
+
spacing: "comfortable",
|
|
11944
|
+
corners: "rounded",
|
|
11945
|
+
shadow: { elevation: "none", softness: null, position: "bottom" }
|
|
11946
|
+
},
|
|
11947
|
+
{
|
|
11948
|
+
id: "alternative",
|
|
11949
|
+
name: "Statement",
|
|
11950
|
+
enabled: true,
|
|
11951
|
+
priority: 2,
|
|
11952
|
+
background: { type: "solid", colorToken: "primary" },
|
|
11953
|
+
foregroundToken: "primaryForeground",
|
|
11954
|
+
spacing: "comfortable",
|
|
11955
|
+
corners: "rounded",
|
|
11956
|
+
shadow: { elevation: "none", softness: null, position: "bottom" }
|
|
11957
|
+
}
|
|
11958
|
+
]
|
|
11959
|
+
};
|
|
11612
11960
|
|
|
11613
11961
|
// ../theme-core/src/site-styles/testimonialQuotePresets.ts
|
|
11614
11962
|
var serifDisplayQuote = {
|
|
@@ -11729,7 +12077,7 @@ function baseHeader(theme) {
|
|
|
11729
12077
|
navContainer: { type: "none", tint: null, opacity: 0.15 }
|
|
11730
12078
|
};
|
|
11731
12079
|
}
|
|
11732
|
-
var headerLayoutCatalog = [
|
|
12080
|
+
var headerLayoutCatalog = defineExactCatalog()([
|
|
11733
12081
|
{
|
|
11734
12082
|
id: asHeaderLayoutId("classic"),
|
|
11735
12083
|
label: "Classic",
|
|
@@ -11761,11 +12109,11 @@ var headerLayoutCatalog = [
|
|
|
11761
12109
|
maxRecommendedNavItems: 5,
|
|
11762
12110
|
allowedLogoShapes: ["none", "text-only", "horizontal"]
|
|
11763
12111
|
}
|
|
11764
|
-
];
|
|
12112
|
+
]);
|
|
11765
12113
|
function supportedLayouts(ids) {
|
|
11766
12114
|
return ids.map(asHeaderLayoutId);
|
|
11767
12115
|
}
|
|
11768
|
-
var headerStyleCatalog = [
|
|
12116
|
+
var headerStyleCatalog = defineExactCatalog()([
|
|
11769
12117
|
{
|
|
11770
12118
|
id: asHeaderStyleId("minimal"),
|
|
11771
12119
|
label: "Minimal",
|
|
@@ -11920,7 +12268,7 @@ var headerStyleCatalog = [
|
|
|
11920
12268
|
navTypography: "heading",
|
|
11921
12269
|
moods: ["calm", "editorial"]
|
|
11922
12270
|
}
|
|
11923
|
-
];
|
|
12271
|
+
]);
|
|
11924
12272
|
var headerLayoutsById = new Map(
|
|
11925
12273
|
headerLayoutCatalog.map((layout) => [layout.id, layout])
|
|
11926
12274
|
);
|
|
@@ -12033,7 +12381,7 @@ var headerStyleRepairOrder = /* @__PURE__ */ new Map(
|
|
|
12033
12381
|
[asHeaderStyleId("minimal"), headerStyleRepairChain(["minimal"])]
|
|
12034
12382
|
]
|
|
12035
12383
|
);
|
|
12036
|
-
var legacyHeaderLookAliases = [
|
|
12384
|
+
var legacyHeaderLookAliases = defineExactCatalog()([
|
|
12037
12385
|
{
|
|
12038
12386
|
lookId: asHeaderLookId("clean-base"),
|
|
12039
12387
|
selection: {
|
|
@@ -12090,7 +12438,7 @@ var legacyHeaderLookAliases = [
|
|
|
12090
12438
|
styleId: asHeaderStyleId("glass")
|
|
12091
12439
|
}
|
|
12092
12440
|
}
|
|
12093
|
-
];
|
|
12441
|
+
]);
|
|
12094
12442
|
var legacyHeaderLookAliasesById = new Map(legacyHeaderLookAliases.map((alias) => [alias.lookId, alias]));
|
|
12095
12443
|
function getHeaderStyle(id) {
|
|
12096
12444
|
return headerStylesById.get(id) ?? null;
|
|
@@ -12127,7 +12475,7 @@ function themedHeaderShadow(theme) {
|
|
|
12127
12475
|
case "high":
|
|
12128
12476
|
return { elevation: "lg" };
|
|
12129
12477
|
default:
|
|
12130
|
-
return
|
|
12478
|
+
return assertNever2(
|
|
12131
12479
|
theme.shadow.elevation,
|
|
12132
12480
|
"Unhandled theme shadow elevation"
|
|
12133
12481
|
);
|
|
@@ -12244,6 +12592,12 @@ function serifLineHeader(theme) {
|
|
|
12244
12592
|
letterSpacing: "wide",
|
|
12245
12593
|
gradient: false
|
|
12246
12594
|
},
|
|
12595
|
+
border: {
|
|
12596
|
+
style: "solid",
|
|
12597
|
+
width: "none",
|
|
12598
|
+
position: "none"
|
|
12599
|
+
},
|
|
12600
|
+
shadow: { elevation: "none" },
|
|
12247
12601
|
ctaTreatment: "outline",
|
|
12248
12602
|
ctaVariant: resolveHeaderCtaVariant(theme, "outline"),
|
|
12249
12603
|
ctaGap: "relaxed"
|
|
@@ -12368,7 +12722,7 @@ function floatingGlassHeader(theme) {
|
|
|
12368
12722
|
}
|
|
12369
12723
|
};
|
|
12370
12724
|
}
|
|
12371
|
-
var headerLookCatalog = [
|
|
12725
|
+
var headerLookCatalog = defineExactCatalog()([
|
|
12372
12726
|
{
|
|
12373
12727
|
id: asHeaderLookId("clean-base"),
|
|
12374
12728
|
label: "Clean base",
|
|
@@ -12486,7 +12840,7 @@ var headerLookCatalog = [
|
|
|
12486
12840
|
logoAccommodations: overlayLogoAccommodations,
|
|
12487
12841
|
compile: floatingGlassHeader
|
|
12488
12842
|
}
|
|
12489
|
-
];
|
|
12843
|
+
]);
|
|
12490
12844
|
var guaranteedFallbackHeaderLookId = asHeaderLookId("clean-base");
|
|
12491
12845
|
var guaranteedFallbackHeaderLayoutId = asHeaderLayoutId("classic");
|
|
12492
12846
|
var guaranteedFallbackHeaderStyleId = asHeaderStyleId("minimal");
|
|
@@ -12652,7 +13006,7 @@ function editorialColumnsFooter(theme) {
|
|
|
12652
13006
|
}
|
|
12653
13007
|
};
|
|
12654
13008
|
}
|
|
12655
|
-
var footerLookCatalog = [
|
|
13009
|
+
var footerLookCatalog = defineExactCatalog()([
|
|
12656
13010
|
{
|
|
12657
13011
|
id: asFooterLookId("footer-muted-grounding"),
|
|
12658
13012
|
label: "Muted grounding footer",
|
|
@@ -12675,7 +13029,7 @@ var footerLookCatalog = [
|
|
|
12675
13029
|
allowedContentPresence: ["default-footer", "default-and-blocks"],
|
|
12676
13030
|
compile: brandTwoBandFooter
|
|
12677
13031
|
}
|
|
12678
|
-
];
|
|
13032
|
+
]);
|
|
12679
13033
|
var footerLooksById = new Map(
|
|
12680
13034
|
footerLookCatalog.map((look) => [look.id, look])
|
|
12681
13035
|
);
|
|
@@ -12697,7 +13051,7 @@ var generatedDesignOptionCatalog = {
|
|
|
12697
13051
|
source: "generated",
|
|
12698
13052
|
sectionSurfaces: ["base", "muted-band", "accent-band", "brand-depth-band", "hero-image"],
|
|
12699
13053
|
contentFrames: generatedContentFrames,
|
|
12700
|
-
itemSurfaces: ["none", "default", "flat", "outlined", "raised", "inset", "editorial"],
|
|
13054
|
+
itemSurfaces: ["none", "default", "flat", "outlined", "raised", "inset", "editorial", "color-blocked"],
|
|
12701
13055
|
transitions: ["none", "soft-fade-short", "soft-fade-long"],
|
|
12702
13056
|
emphases: ["low", "medium", "high"],
|
|
12703
13057
|
detachedCustom: false
|
|
@@ -12709,8 +13063,15 @@ var userDesignOptionCatalog = {
|
|
|
12709
13063
|
itemSurfaces: generatedDesignOptionCatalog.itemSurfaces,
|
|
12710
13064
|
transitions: [
|
|
12711
13065
|
...generatedDesignOptionCatalog.transitions,
|
|
13066
|
+
"soft-fade-expansive",
|
|
12712
13067
|
"wave-edge",
|
|
12713
|
-
"
|
|
13068
|
+
"wave-edge-balanced",
|
|
13069
|
+
"wave-edge-gentle",
|
|
13070
|
+
"wave-edge-bold",
|
|
13071
|
+
"wave-edge-drift",
|
|
13072
|
+
"angle-edge",
|
|
13073
|
+
"angle-edge-subtle",
|
|
13074
|
+
"angle-edge-steep"
|
|
12714
13075
|
],
|
|
12715
13076
|
emphases: generatedDesignOptionCatalog.emphases,
|
|
12716
13077
|
detachedCustom: false
|
|
@@ -12891,6 +13252,29 @@ var boldDisplayTypography = {
|
|
|
12891
13252
|
},
|
|
12892
13253
|
scale: "balanced"
|
|
12893
13254
|
};
|
|
13255
|
+
var originalJoyTypography = {
|
|
13256
|
+
body: {
|
|
13257
|
+
family: "DM Sans, system-ui, sans-serif",
|
|
13258
|
+
size: "md",
|
|
13259
|
+
weight: "regular",
|
|
13260
|
+
lineHeight: "relaxed",
|
|
13261
|
+
letterSpacing: "normal"
|
|
13262
|
+
},
|
|
13263
|
+
headings: {
|
|
13264
|
+
default: {
|
|
13265
|
+
family: "Bricolage Grotesque, system-ui, sans-serif",
|
|
13266
|
+
weight: "bold",
|
|
13267
|
+
lineHeight: "normal",
|
|
13268
|
+
letterSpacing: "tight",
|
|
13269
|
+
italic: null,
|
|
13270
|
+
case: null
|
|
13271
|
+
},
|
|
13272
|
+
h1: { size: "2xl", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
13273
|
+
h2: { size: "xl", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
13274
|
+
h3: { size: "lg", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null }
|
|
13275
|
+
},
|
|
13276
|
+
scale: "balanced"
|
|
13277
|
+
};
|
|
12894
13278
|
var typographyPresets = [
|
|
12895
13279
|
defineTypographyPreset({
|
|
12896
13280
|
id: "typography-preset:modern-sans",
|
|
@@ -12977,6 +13361,32 @@ var typographyPresets = [
|
|
|
12977
13361
|
mobile: { headlineSize: "4xl", subheadlineSize: "xl" }
|
|
12978
13362
|
}
|
|
12979
13363
|
}
|
|
13364
|
+
}),
|
|
13365
|
+
defineTypographyPreset({
|
|
13366
|
+
id: "typography-preset:original-joy",
|
|
13367
|
+
name: "Original Joy",
|
|
13368
|
+
description: "Bold Bricolage Grotesque display headings over a clean DM Sans body, editorial and warm.",
|
|
13369
|
+
defaultFonts: { body: "DM Sans, system-ui, sans-serif", heading: "Bricolage Grotesque, system-ui, sans-serif" },
|
|
13370
|
+
recommendedFonts: {
|
|
13371
|
+
body: ["DM Sans", "Inter", "Manrope"],
|
|
13372
|
+
heading: ["Bricolage Grotesque", "Space Grotesk", "Archivo"]
|
|
13373
|
+
},
|
|
13374
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
13375
|
+
typography: originalJoyTypography,
|
|
13376
|
+
heroTypography: {
|
|
13377
|
+
headlineSize: "6xl",
|
|
13378
|
+
headlineLineHeight: "tight",
|
|
13379
|
+
subheadlineSize: "xl",
|
|
13380
|
+
subheadlineLineHeight: "normal",
|
|
13381
|
+
microHeadlineSize: "6xl",
|
|
13382
|
+
microHeadlineLineHeight: "tight",
|
|
13383
|
+
microSubheadlineSize: "lg",
|
|
13384
|
+
microSubheadlineLineHeight: "normal",
|
|
13385
|
+
responsive: {
|
|
13386
|
+
tablet: { headlineSize: "5xl" },
|
|
13387
|
+
mobile: { headlineSize: "4xl", subheadlineSize: "lg" }
|
|
13388
|
+
}
|
|
13389
|
+
}
|
|
12980
13390
|
})
|
|
12981
13391
|
];
|
|
12982
13392
|
var typographyPresetsById = new Map(
|
|
@@ -13000,7 +13410,8 @@ var curatedSiteStyleIdValues = [
|
|
|
13000
13410
|
"site-style:clarity-zen-blue",
|
|
13001
13411
|
SOFT_EARTH_SITE_STYLE_ID_VALUE,
|
|
13002
13412
|
"site-style:bold-launch",
|
|
13003
|
-
"site-style:south-west-twerk-school"
|
|
13413
|
+
"site-style:south-west-twerk-school",
|
|
13414
|
+
"site-style:original-joy"
|
|
13004
13415
|
];
|
|
13005
13416
|
var quietBudget = {
|
|
13006
13417
|
accentDensity: "low",
|
|
@@ -14046,7 +14457,7 @@ var curatedSiteStyles = [
|
|
|
14046
14457
|
"body-text-editorial-intro",
|
|
14047
14458
|
"schedule-details-brand-depth",
|
|
14048
14459
|
"testimonials-statement-cards",
|
|
14049
|
-
"contact-form-
|
|
14460
|
+
"contact-form-panel"
|
|
14050
14461
|
],
|
|
14051
14462
|
recommendedHeaderLookIds: [
|
|
14052
14463
|
"brand-solid",
|
|
@@ -14069,6 +14480,74 @@ var curatedSiteStyles = [
|
|
|
14069
14480
|
paletteChoice("brand-led-warm"),
|
|
14070
14481
|
paletteChoice("high-contrast-ink")
|
|
14071
14482
|
]
|
|
14483
|
+
}),
|
|
14484
|
+
defineCuratedSiteStyle({
|
|
14485
|
+
id: "site-style:original-joy",
|
|
14486
|
+
name: "Original Joy",
|
|
14487
|
+
headingDecoration: { family: "organic-squiggle", colorToken: "primary" },
|
|
14488
|
+
description: "Warm, dark, and editorial: deep clay grounds, cream type, and bold burnt-orange accents for soulful community brands.",
|
|
14489
|
+
generationBrief: "Use a deep brown ground with cream text and burnt-orange accents, large display headings, generous spacing, organic rounded shapes, and bold colour-blocked feature sections. Lead with warmth and belonging; calls to action should feel strong but unhurried.",
|
|
14490
|
+
tokenRecipes: {
|
|
14491
|
+
palette: "brand-led",
|
|
14492
|
+
contrast: "maximum",
|
|
14493
|
+
radius: "rounded",
|
|
14494
|
+
shadow: "subtle",
|
|
14495
|
+
typography: "clean-sans",
|
|
14496
|
+
spacing: "airy",
|
|
14497
|
+
motion: "expressive"
|
|
14498
|
+
},
|
|
14499
|
+
compositionBudget: expressiveBudget,
|
|
14500
|
+
typographyPresetChoices: [
|
|
14501
|
+
typographyChoice("typography-preset:original-joy"),
|
|
14502
|
+
typographyChoice("typography-preset:bold-display"),
|
|
14503
|
+
typographyChoice("typography-preset:modern-sans")
|
|
14504
|
+
],
|
|
14505
|
+
defaultTypographyPresetId: "typography-preset:original-joy",
|
|
14506
|
+
themeOverrides: {
|
|
14507
|
+
accordions: boldBorderedAccordionSystem,
|
|
14508
|
+
// Shared card system: warm rounded brown cards (event + testimonial cards
|
|
14509
|
+
// pick this up automatically) with a burnt-orange statement variant.
|
|
14510
|
+
cards: originalJoyCardSystem,
|
|
14511
|
+
testimonialQuote: accentGlyphQuote,
|
|
14512
|
+
bodyText: {
|
|
14513
|
+
intro: {
|
|
14514
|
+
paragraphSize: "editorial",
|
|
14515
|
+
headingSize: "editorial"
|
|
14516
|
+
}
|
|
14517
|
+
}
|
|
14518
|
+
},
|
|
14519
|
+
// Recommended block looks: the bold colour-blocked feature cards, a calm
|
|
14520
|
+
// band for the events spotlight, and statement testimonial cards.
|
|
14521
|
+
recommendedAppearancePresetIds: [
|
|
14522
|
+
"feature-cards-bold-colors",
|
|
14523
|
+
"offerings-calm-list",
|
|
14524
|
+
"testimonials-statement-cards"
|
|
14525
|
+
],
|
|
14526
|
+
// Floating, transparent "Clear Split" header (no fill behind the nav links).
|
|
14527
|
+
defaultHeaderSelection: { layoutId: "floating", styleId: "minimal-surface" },
|
|
14528
|
+
recommendedHeaderLayoutChoices: [headerLayoutChoice("floating")],
|
|
14529
|
+
recommendedHeaderStyleChoicesByLayout: {
|
|
14530
|
+
floating: [
|
|
14531
|
+
headerStyleChoice("minimal-surface"),
|
|
14532
|
+
headerStyleChoice("split-glass"),
|
|
14533
|
+
headerStyleChoice("glass")
|
|
14534
|
+
]
|
|
14535
|
+
},
|
|
14536
|
+
// Legacy bridge only (the real curation is the explicit selection above).
|
|
14537
|
+
// Kept to a reserved-space, non-overlay look on purpose: the split hero
|
|
14538
|
+
// flows below the Clear Split header, so we must NOT trigger the immersive
|
|
14539
|
+
// overlay-hero promotion that looks like `floating-glass` would force.
|
|
14540
|
+
recommendedHeaderLookIds: ["minimal-transparent"],
|
|
14541
|
+
recommendedFooterLookIds: [
|
|
14542
|
+
"site-footer-brand-two-band",
|
|
14543
|
+
"footer-muted-grounding"
|
|
14544
|
+
],
|
|
14545
|
+
buttonPersonalityChoices: [
|
|
14546
|
+
buttonChoice("joy-stamp"),
|
|
14547
|
+
buttonChoice("ink-stamp"),
|
|
14548
|
+
buttonChoice("showtime-pill")
|
|
14549
|
+
],
|
|
14550
|
+
paletteVariantChoices: [paletteChoice("warm-dark-ember")]
|
|
14072
14551
|
})
|
|
14073
14552
|
];
|
|
14074
14553
|
var curatedSiteStylesById = new Map(
|
|
@@ -14084,26 +14563,6 @@ var microHeroLayoutVariantKey = asLayoutVariantKey("micro");
|
|
|
14084
14563
|
var waveBoundaryOptionId = asBoundaryOptionId("break:wave");
|
|
14085
14564
|
|
|
14086
14565
|
// ../theme-core/src/site-styles/pageDesignEditorModel.ts
|
|
14087
|
-
var noneBoundaryOption = {
|
|
14088
|
-
id: asBoundaryOptionId("break:none"),
|
|
14089
|
-
label: "None",
|
|
14090
|
-
transitionAfter: "none"
|
|
14091
|
-
};
|
|
14092
|
-
var softBoundaryOption = {
|
|
14093
|
-
id: asBoundaryOptionId("break:soft"),
|
|
14094
|
-
label: "Soft",
|
|
14095
|
-
transitionAfter: "soft-fade-short"
|
|
14096
|
-
};
|
|
14097
|
-
var waveBoundaryOption = {
|
|
14098
|
-
id: asBoundaryOptionId("break:wave"),
|
|
14099
|
-
label: "Wave",
|
|
14100
|
-
transitionAfter: "wave-edge"
|
|
14101
|
-
};
|
|
14102
|
-
var spaciousBoundaryOption = {
|
|
14103
|
-
id: asBoundaryOptionId("break:spacious"),
|
|
14104
|
-
label: "Spacious",
|
|
14105
|
-
transitionAfter: "soft-fade-long"
|
|
14106
|
-
};
|
|
14107
14566
|
var pageFlowPresets = [
|
|
14108
14567
|
{
|
|
14109
14568
|
id: asPageFlowPresetId("flow:quiet"),
|
|
@@ -14373,8 +14832,7 @@ var defaultDesignRuntimeRules = defineDesignRuntimeRules({
|
|
|
14373
14832
|
type: "image",
|
|
14374
14833
|
opacity: 1,
|
|
14375
14834
|
position: "center center",
|
|
14376
|
-
|
|
14377
|
-
headingColor: "text"
|
|
14835
|
+
...uniformSectionForeground("text")
|
|
14378
14836
|
}
|
|
14379
14837
|
}
|
|
14380
14838
|
},
|
|
@@ -14484,9 +14942,30 @@ var defaultComponentRuntimeRules = defineComponentRuntimeRules({
|
|
|
14484
14942
|
border: {
|
|
14485
14943
|
enabled: false
|
|
14486
14944
|
}
|
|
14945
|
+
},
|
|
14946
|
+
"color-blocked": {
|
|
14947
|
+
// Bold, flat colour-blocked cards. The per-card background colour cycle
|
|
14948
|
+
// (by position) and staggered offset live in
|
|
14949
|
+
// blocks-static/card-treatments.css; here we set the shared shape:
|
|
14950
|
+
// generous padding, large radius, no border, flat (no shadow).
|
|
14951
|
+
treatment: "color-blocked",
|
|
14952
|
+
spacing: "spacious",
|
|
14953
|
+
rounded: "2xl",
|
|
14954
|
+
raised: false,
|
|
14955
|
+
border: {
|
|
14956
|
+
enabled: false
|
|
14957
|
+
}
|
|
14487
14958
|
}
|
|
14488
14959
|
}
|
|
14489
14960
|
});
|
|
14961
|
+
function uniformSectionForeground(token) {
|
|
14962
|
+
return {
|
|
14963
|
+
textColor: token,
|
|
14964
|
+
headingColor: token,
|
|
14965
|
+
linkColor: token,
|
|
14966
|
+
supportingColor: token
|
|
14967
|
+
};
|
|
14968
|
+
}
|
|
14490
14969
|
|
|
14491
14970
|
// ../theme-core/src/site-styles/generatedSchemas.ts
|
|
14492
14971
|
import { z as z25 } from "zod";
|
|
@@ -16235,6 +16714,37 @@ function resolveBackgroundColorValue(value, context) {
|
|
|
16235
16714
|
});
|
|
16236
16715
|
}
|
|
16237
16716
|
|
|
16717
|
+
// ../blocks/src/system/transforms/registry/_utils/sectionForegroundStyles.ts
|
|
16718
|
+
function readColorToken(input, key) {
|
|
16719
|
+
const value = input[key];
|
|
16720
|
+
return typeof value === "string" && value.trim().length > 0 ? value.trim() : null;
|
|
16721
|
+
}
|
|
16722
|
+
function resolveOptionalForegroundColor(value, context) {
|
|
16723
|
+
if (!value) return null;
|
|
16724
|
+
return resolveBackgroundColorValue(value, context);
|
|
16725
|
+
}
|
|
16726
|
+
function resolveSectionForegroundStyles(value, context) {
|
|
16727
|
+
if (!value || typeof value !== "object") {
|
|
16728
|
+
return {};
|
|
16729
|
+
}
|
|
16730
|
+
const input = value;
|
|
16731
|
+
const textColor = readColorToken(input, "textColor");
|
|
16732
|
+
const resolvedText = resolveOptionalForegroundColor(textColor, context);
|
|
16733
|
+
if (!resolvedText) {
|
|
16734
|
+
return {};
|
|
16735
|
+
}
|
|
16736
|
+
const resolvedHeading = resolveOptionalForegroundColor(readColorToken(input, "headingColor"), context) ?? resolvedText;
|
|
16737
|
+
const resolvedLink = resolveOptionalForegroundColor(readColorToken(input, "linkColor"), context) ?? resolvedText;
|
|
16738
|
+
const resolvedSupporting = resolveOptionalForegroundColor(readColorToken(input, "supportingColor"), context) ?? resolvedText;
|
|
16739
|
+
return {
|
|
16740
|
+
color: resolvedText,
|
|
16741
|
+
"--section-text-color": resolvedText,
|
|
16742
|
+
"--section-heading-color": resolvedHeading,
|
|
16743
|
+
"--section-link-color": resolvedLink,
|
|
16744
|
+
"--section-supporting-color": resolvedSupporting
|
|
16745
|
+
};
|
|
16746
|
+
}
|
|
16747
|
+
|
|
16238
16748
|
// ../blocks/src/system/transforms/registry/boxStyles.ts
|
|
16239
16749
|
var spacingTransform = {
|
|
16240
16750
|
id: "boxStyles.spacing",
|
|
@@ -16369,6 +16879,8 @@ var boxStylesCompositeTransform = {
|
|
|
16369
16879
|
classes.push("rb-card-treatment-editorial-serif-quote");
|
|
16370
16880
|
} else if (input.treatment === "editorial-open") {
|
|
16371
16881
|
classes.push("rb-card-treatment-editorial-open");
|
|
16882
|
+
} else if (input.treatment === "color-blocked") {
|
|
16883
|
+
classes.push("rb-card-treatment-color-blocked");
|
|
16372
16884
|
}
|
|
16373
16885
|
const cardVariant = normalizeBoxStylesCardVariant(input.cardVariant);
|
|
16374
16886
|
if (cardVariant && cardVariant !== "none") {
|
|
@@ -16644,35 +17156,8 @@ var sectionHeadingColorStyleTransform = {
|
|
|
16644
17156
|
var sectionColorsStyleTransform = {
|
|
16645
17157
|
id: "sectionStyles.resolveColorsStyle",
|
|
16646
17158
|
kind: "formatter",
|
|
16647
|
-
summary: "Resolve section
|
|
16648
|
-
run: (value, _options, context) =>
|
|
16649
|
-
if (!value || typeof value !== "object") {
|
|
16650
|
-
return {};
|
|
16651
|
-
}
|
|
16652
|
-
const bg = value;
|
|
16653
|
-
const textColor = typeof bg.textColor === "string" ? bg.textColor.trim() : null;
|
|
16654
|
-
const headingColor = typeof bg.headingColor === "string" ? bg.headingColor.trim() : null;
|
|
16655
|
-
const style = {};
|
|
16656
|
-
if (textColor) {
|
|
16657
|
-
const resolvedText = resolveBackgroundColorValue(textColor, context);
|
|
16658
|
-
if (resolvedText) {
|
|
16659
|
-
style.color = resolvedText;
|
|
16660
|
-
style["--section-text-color"] = resolvedText;
|
|
16661
|
-
if (headingColor) {
|
|
16662
|
-
const resolvedHeading = resolveBackgroundColorValue(
|
|
16663
|
-
headingColor,
|
|
16664
|
-
context
|
|
16665
|
-
);
|
|
16666
|
-
if (resolvedHeading) {
|
|
16667
|
-
style["--section-heading-color"] = resolvedHeading;
|
|
16668
|
-
}
|
|
16669
|
-
} else {
|
|
16670
|
-
style["--section-heading-color"] = resolvedText;
|
|
16671
|
-
}
|
|
16672
|
-
}
|
|
16673
|
-
}
|
|
16674
|
-
return style;
|
|
16675
|
-
}
|
|
17159
|
+
summary: "Resolve section foreground colors into a style object",
|
|
17160
|
+
run: (value, _options, context) => resolveSectionForegroundStyles(value, context)
|
|
16676
17161
|
};
|
|
16677
17162
|
var GAP_CLASS_MAP = {
|
|
16678
17163
|
none: "rb-gap-semantic-none",
|
|
@@ -16984,46 +17469,6 @@ function sectionState(opts) {
|
|
|
16984
17469
|
);
|
|
16985
17470
|
}
|
|
16986
17471
|
|
|
16987
|
-
// ../blocks/src/system/node/fragments/headingDecoration.ts
|
|
16988
|
-
var defaultBindFrom = "_sectionStyles.headingDecoration";
|
|
16989
|
-
function headingDecoration({
|
|
16990
|
-
bindFrom = defaultBindFrom,
|
|
16991
|
-
className
|
|
16992
|
-
} = {}) {
|
|
16993
|
-
return el(
|
|
16994
|
-
"div",
|
|
16995
|
-
// Full-width block row so the mark inherits the heading's alignment. The
|
|
16996
|
-
// heading stacks are flexbox; `text-align` positions inline content, not flex
|
|
16997
|
-
// items, so the inline-block mark must sit inside a stretched block for a
|
|
16998
|
-
// centred heading to centre it (and a left heading to keep it at the start).
|
|
16999
|
-
{ "aria-hidden": "true", className: "rb-heading-decoration-row" },
|
|
17000
|
-
[
|
|
17001
|
-
el("div", {
|
|
17002
|
-
className: {
|
|
17003
|
-
$bind: {
|
|
17004
|
-
from: bindFrom,
|
|
17005
|
-
transforms: [
|
|
17006
|
-
{
|
|
17007
|
-
id: "ui.headingDecorationClassName",
|
|
17008
|
-
options: { baseClass: className }
|
|
17009
|
-
}
|
|
17010
|
-
]
|
|
17011
|
-
}
|
|
17012
|
-
}
|
|
17013
|
-
})
|
|
17014
|
-
],
|
|
17015
|
-
// Gate on the presence of `family`. The render-time theme projection omits
|
|
17016
|
-
// `headingDecoration` entirely for absent/none signatures, so the
|
|
17017
|
-
// dominant "no decoration" case is absent → falsy → not rendered. A presence
|
|
17018
|
-
// check (rather than `family !== 'none'`) is deliberate: `when`'s only
|
|
17019
|
-
// negation form would render on *absent* values, which would emit a stub on
|
|
17020
|
-
// every undecorated heading. The remaining edge — hand-authored content with
|
|
17021
|
-
// an explicit `{ family: 'none' }` — renders an aria-hidden `rb-hidden`
|
|
17022
|
-
// (display:none) stub with no visual or layout impact.
|
|
17023
|
-
when(`${bindFrom}.family`)
|
|
17024
|
-
);
|
|
17025
|
-
}
|
|
17026
|
-
|
|
17027
17472
|
// ../blocks/src/system/fragments/types.ts
|
|
17028
17473
|
import { z as z28 } from "zod";
|
|
17029
17474
|
var FRAGMENT_ID_PATTERN = /^[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?$/i;
|
|
@@ -17496,6 +17941,9 @@ var heroCopyFragment = defineFragment({
|
|
|
17496
17941
|
maxLength: 600
|
|
17497
17942
|
}
|
|
17498
17943
|
],
|
|
17944
|
+
// Layout order is [eyebrow, headline, subheadline]. The hero block's
|
|
17945
|
+
// `splitEditorial` variant reads these nodes by index; keep the order stable
|
|
17946
|
+
// (it fails fast at import if the count changes).
|
|
17499
17947
|
layout: [
|
|
17500
17948
|
text(
|
|
17501
17949
|
{
|
|
@@ -17718,6 +18166,7 @@ var heroCtaRowFragment = defineFragment({
|
|
|
17718
18166
|
ctaRow({
|
|
17719
18167
|
collectionPath: "content.ctas",
|
|
17720
18168
|
itemName: "cta",
|
|
18169
|
+
gap: "md",
|
|
17721
18170
|
justify: {
|
|
17722
18171
|
$bind: {
|
|
17723
18172
|
from: "content",
|
|
@@ -17803,7 +18252,6 @@ var testimonialsHeadingFragment = defineFragment({
|
|
|
17803
18252
|
when("content.heading"),
|
|
17804
18253
|
bind("content.heading")
|
|
17805
18254
|
),
|
|
17806
|
-
headingDecoration(),
|
|
17807
18255
|
text(
|
|
17808
18256
|
{
|
|
17809
18257
|
as: "p",
|
|
@@ -18434,7 +18882,7 @@ var blogFeaturedPostFragment = defineFragment({
|
|
|
18434
18882
|
});
|
|
18435
18883
|
|
|
18436
18884
|
// ../blocks/src/system/fragments/library/faqHeading.ts
|
|
18437
|
-
function faqHeadingLayout(
|
|
18885
|
+
function faqHeadingLayout() {
|
|
18438
18886
|
return stack(
|
|
18439
18887
|
{
|
|
18440
18888
|
gap: "sm",
|
|
@@ -18459,7 +18907,6 @@ function faqHeadingLayout(options = {}) {
|
|
|
18459
18907
|
when("content.title"),
|
|
18460
18908
|
bind("content.title")
|
|
18461
18909
|
),
|
|
18462
|
-
...options.decorated ? [headingDecoration()] : [],
|
|
18463
18910
|
richText(
|
|
18464
18911
|
{
|
|
18465
18912
|
className: "faq-description rb-prose rb-mx-auto rb-max-w-none",
|
|
@@ -18501,7 +18948,6 @@ var faqHeadingFragment = defineFragment({
|
|
|
18501
18948
|
],
|
|
18502
18949
|
layout: faqHeadingLayout()
|
|
18503
18950
|
});
|
|
18504
|
-
var decoratedFaqHeadingLayout = faqHeadingLayout({ decorated: true });
|
|
18505
18951
|
|
|
18506
18952
|
// ../blocks/src/system/fragments/library/faqAccordion.ts
|
|
18507
18953
|
function createFaqAccordionLayout(options = {}) {
|
|
@@ -19658,12 +20104,38 @@ function splitLayoutWith(children) {
|
|
|
19658
20104
|
var splitContentColumn = heroContentWrapper(heroContentNodes, "md", "rb-w-full rb-text-left");
|
|
19659
20105
|
var splitImageColumn = heroSplitImagePane();
|
|
19660
20106
|
var splitLayout = splitLayoutWith([
|
|
20107
|
+
splitImageColumn,
|
|
20108
|
+
splitContentColumn
|
|
20109
|
+
]);
|
|
20110
|
+
var splitReverseLayout = splitLayoutWith([
|
|
19661
20111
|
splitContentColumn,
|
|
19662
20112
|
splitImageColumn
|
|
19663
20113
|
]);
|
|
19664
|
-
var
|
|
19665
|
-
|
|
19666
|
-
|
|
20114
|
+
var heroEyebrowNode = heroCopyFragment.layout[0];
|
|
20115
|
+
var heroHeadlineNode = heroCopyFragment.layout[1];
|
|
20116
|
+
var heroSubheadlineNode = heroCopyFragment.layout[2];
|
|
20117
|
+
var heroCtaRowNode = heroCtaRowFragment.layout[0];
|
|
20118
|
+
if (!heroEyebrowNode || !heroHeadlineNode || !heroSubheadlineNode || !heroCtaRowNode) {
|
|
20119
|
+
throw new Error("Hero copy/CTA fragments are missing their expected layout nodes.");
|
|
20120
|
+
}
|
|
20121
|
+
var heroEditorialBottomRow = inline(
|
|
20122
|
+
{
|
|
20123
|
+
gap: "lg",
|
|
20124
|
+
align: "end",
|
|
20125
|
+
justify: "start",
|
|
20126
|
+
wrap: true,
|
|
20127
|
+
className: "rb-w-full"
|
|
20128
|
+
},
|
|
20129
|
+
[heroSubheadlineNode, heroCtaRowNode]
|
|
20130
|
+
);
|
|
20131
|
+
var splitEditorialContentColumn = heroContentWrapper(
|
|
20132
|
+
[heroEyebrowNode, heroHeadlineNode, heroEditorialBottomRow],
|
|
20133
|
+
"md",
|
|
20134
|
+
"rb-w-full rb-text-left"
|
|
20135
|
+
);
|
|
20136
|
+
var splitEditorialLayout = splitLayoutWith([
|
|
20137
|
+
splitEditorialContentColumn,
|
|
20138
|
+
splitImageColumn
|
|
19667
20139
|
]);
|
|
19668
20140
|
var heroConfig = {
|
|
19669
20141
|
id: "block.hero",
|
|
@@ -19690,7 +20162,8 @@ var heroConfig = {
|
|
|
19690
20162
|
classic: classicLayout,
|
|
19691
20163
|
micro: microLayout,
|
|
19692
20164
|
split: splitLayout,
|
|
19693
|
-
splitReverse: splitReverseLayout
|
|
20165
|
+
splitReverse: splitReverseLayout,
|
|
20166
|
+
splitEditorial: splitEditorialLayout
|
|
19694
20167
|
},
|
|
19695
20168
|
defaultVariant: "classic",
|
|
19696
20169
|
description: "Hero section with headline, subtitle, and repeatable CTAs.",
|
|
@@ -19805,18 +20278,6 @@ function introHeading(className) {
|
|
|
19805
20278
|
bind("content.title")
|
|
19806
20279
|
);
|
|
19807
20280
|
}
|
|
19808
|
-
function introHeadingGroup(className) {
|
|
19809
|
-
return stack(
|
|
19810
|
-
{
|
|
19811
|
-
gap: "sm",
|
|
19812
|
-
className: "rb-intro-heading-group"
|
|
19813
|
-
},
|
|
19814
|
-
[
|
|
19815
|
-
introHeading(className),
|
|
19816
|
-
headingDecoration()
|
|
19817
|
-
]
|
|
19818
|
-
);
|
|
19819
|
-
}
|
|
19820
20281
|
function introBody(className = "rb-prose rb-max-w-none") {
|
|
19821
20282
|
return richText({ className }, bind("content.body"));
|
|
19822
20283
|
}
|
|
@@ -19835,7 +20296,6 @@ function introCopyStack(options = {}) {
|
|
|
19835
20296
|
},
|
|
19836
20297
|
[
|
|
19837
20298
|
introHeading(options.headingClassName ?? "rb-intro-title"),
|
|
19838
|
-
headingDecoration(),
|
|
19839
20299
|
introBody(options.bodyClassName),
|
|
19840
20300
|
introCtas(options.ctaJustify)
|
|
19841
20301
|
]
|
|
@@ -19875,7 +20335,7 @@ var statementCopyLayout = styledSection({
|
|
|
19875
20335
|
className: "rb-intro rb-intro-statement rb-grid rb-grid-cols-1 rb-gap-8 rb-md-grid-cols-2 rb-md-items-start"
|
|
19876
20336
|
},
|
|
19877
20337
|
[
|
|
19878
|
-
|
|
20338
|
+
introHeading("rb-intro-title rb-max-w-xl"),
|
|
19879
20339
|
stack({ gap: "md", className: "rb-intro-copy rb-max-w-xl" }, [
|
|
19880
20340
|
introBody(),
|
|
19881
20341
|
introCtas("start")
|
|
@@ -19896,7 +20356,7 @@ var statementMediaLayout = styledSection({
|
|
|
19896
20356
|
className: "rb-intro rb-intro-statement-media rb-grid rb-grid-cols-1 rb-gap-8 rb-lg-grid-cols-3 rb-lg-items-center"
|
|
19897
20357
|
},
|
|
19898
20358
|
[
|
|
19899
|
-
|
|
20359
|
+
introHeading("rb-intro-title rb-max-w-xl"),
|
|
19900
20360
|
stack({ gap: "md", className: "rb-intro-copy rb-max-w-xl" }, [
|
|
19901
20361
|
introBody(),
|
|
19902
20362
|
introCtas("start")
|
|
@@ -20839,16 +21299,59 @@ var formComposition = composeFragments([
|
|
|
20839
21299
|
{ fragment: formCopyFragment },
|
|
20840
21300
|
{ fragment: formEmbedFragment }
|
|
20841
21301
|
]);
|
|
20842
|
-
|
|
20843
|
-
|
|
20844
|
-
|
|
20845
|
-
|
|
20846
|
-
|
|
20847
|
-
|
|
20848
|
-
|
|
20849
|
-
|
|
20850
|
-
|
|
20851
|
-
|
|
21302
|
+
function fragmentLayoutNode(layout) {
|
|
21303
|
+
return isNodeDefinitionArray(layout) ? el("div", {}, [...layout]) : layout;
|
|
21304
|
+
}
|
|
21305
|
+
function isNodeDefinitionArray(layout) {
|
|
21306
|
+
return Array.isArray(layout);
|
|
21307
|
+
}
|
|
21308
|
+
var copyLayout = fragmentLayoutNode(formCopyFragment.layout);
|
|
21309
|
+
var embedLayout = fragmentLayoutNode(formEmbedFragment.layout);
|
|
21310
|
+
var formSurface = styledContainer({
|
|
21311
|
+
bindFrom: "_containerStyles",
|
|
21312
|
+
constrainWidth: false,
|
|
21313
|
+
baseClassName: "rb-form-surface rb-relative rb-isolate rb-overflow-hidden",
|
|
21314
|
+
children: embedLayout
|
|
21315
|
+
});
|
|
21316
|
+
function createFormLayout(variant) {
|
|
21317
|
+
if (variant === "two-column") {
|
|
21318
|
+
return styledSection({
|
|
21319
|
+
children: el(
|
|
21320
|
+
"div",
|
|
21321
|
+
{
|
|
21322
|
+
className: "rb-container"
|
|
21323
|
+
},
|
|
21324
|
+
[
|
|
21325
|
+
el(
|
|
21326
|
+
"div",
|
|
21327
|
+
{
|
|
21328
|
+
className: "rb-form-two-column rb-grid rb-grid-cols-1 rb-gap-8 rb-lg-grid-cols-2 rb-lg-items-start"
|
|
21329
|
+
},
|
|
21330
|
+
[
|
|
21331
|
+
stack({ gap: "md", className: "rb-form-copy-column" }, [copyLayout]),
|
|
21332
|
+
formSurface
|
|
21333
|
+
]
|
|
21334
|
+
)
|
|
21335
|
+
]
|
|
21336
|
+
),
|
|
21337
|
+
baseClass: "",
|
|
21338
|
+
spacing: "medium",
|
|
21339
|
+
background: "surface"
|
|
21340
|
+
});
|
|
21341
|
+
}
|
|
21342
|
+
return styledSection({
|
|
21343
|
+
children: styledContainer({
|
|
21344
|
+
rootType: "stack",
|
|
21345
|
+
rootProps: { gap: "lg" },
|
|
21346
|
+
children: formComposition.layout
|
|
21347
|
+
}),
|
|
21348
|
+
baseClass: "",
|
|
21349
|
+
spacing: "medium",
|
|
21350
|
+
background: "surface"
|
|
21351
|
+
});
|
|
21352
|
+
}
|
|
21353
|
+
var formLayout = createFormLayout("default");
|
|
21354
|
+
var twoColumnFormLayout = createFormLayout("two-column");
|
|
20852
21355
|
var dataLoaders = buildFragmentDataLoaders(formComposition);
|
|
20853
21356
|
var formManifest = createBlockManifest({
|
|
20854
21357
|
id: "block.form",
|
|
@@ -20861,6 +21364,23 @@ var formManifest = createBlockManifest({
|
|
|
20861
21364
|
{ fragment: formEmbedFragment }
|
|
20862
21365
|
],
|
|
20863
21366
|
layout: formLayout,
|
|
21367
|
+
variants: {
|
|
21368
|
+
default: formLayout,
|
|
21369
|
+
"two-column": twoColumnFormLayout
|
|
21370
|
+
},
|
|
21371
|
+
defaultVariant: "default",
|
|
21372
|
+
variantOptions: {
|
|
21373
|
+
default: {
|
|
21374
|
+
label: "Stacked",
|
|
21375
|
+
description: "Copy above the form.",
|
|
21376
|
+
icon: "PanelTop"
|
|
21377
|
+
},
|
|
21378
|
+
"two-column": {
|
|
21379
|
+
label: "Two column",
|
|
21380
|
+
description: "Copy on the left and form on the right.",
|
|
21381
|
+
icon: "Columns2"
|
|
21382
|
+
}
|
|
21383
|
+
},
|
|
20864
21384
|
styleTokens: { background: "surface", typography: "body", spacing: "md" },
|
|
20865
21385
|
behaviours: { supportsThemeSwitching: true, inlineEditing: false, animation: false, paletteHidden: false },
|
|
20866
21386
|
category: "interactive",
|
|
@@ -20886,15 +21406,14 @@ var formBlockDefinition = {
|
|
|
20886
21406
|
};
|
|
20887
21407
|
|
|
20888
21408
|
// ../blocks/src/system/blocks/faq.ts
|
|
20889
|
-
function
|
|
20890
|
-
return
|
|
21409
|
+
function fragmentLayoutNode2(layout) {
|
|
21410
|
+
return isNodeDefinitionArray2(layout) ? el("div", {}, [...layout]) : layout;
|
|
20891
21411
|
}
|
|
20892
|
-
function
|
|
21412
|
+
function isNodeDefinitionArray2(layout) {
|
|
20893
21413
|
return Array.isArray(layout);
|
|
20894
21414
|
}
|
|
20895
|
-
var headingLayout =
|
|
20896
|
-
var accordionLayout =
|
|
20897
|
-
var decoratedHeadingLayout = fragmentLayoutNode(decoratedFaqHeadingLayout);
|
|
21415
|
+
var headingLayout = fragmentLayoutNode2(faqHeadingFragment.layout);
|
|
21416
|
+
var accordionLayout = fragmentLayoutNode2(faqAccordionFragment.layout);
|
|
20898
21417
|
var questionColumnsAccordionLayout = createFaqAccordionLayout({
|
|
20899
21418
|
rootClassName: "accordion-root rb-faq-question-columns rb-grid rb-grid-cols-1 rb-gap-4 rb-lg-grid-cols-2"
|
|
20900
21419
|
});
|
|
@@ -20902,7 +21421,7 @@ var defaultLayout = styledSection({
|
|
|
20902
21421
|
children: styledContainer({
|
|
20903
21422
|
baseClassName: "rb-relative rb-isolate",
|
|
20904
21423
|
children: stack({ gap: "xl", className: "rb-w-full rb-max-w-4xl rb-mx-auto" }, [
|
|
20905
|
-
|
|
21424
|
+
headingLayout,
|
|
20906
21425
|
accordionLayout
|
|
20907
21426
|
])
|
|
20908
21427
|
}),
|
|
@@ -20930,7 +21449,7 @@ var questionColumnsLayout = styledSection({
|
|
|
20930
21449
|
children: stack(
|
|
20931
21450
|
{ gap: "xl", className: "rb-w-full" },
|
|
20932
21451
|
[
|
|
20933
|
-
|
|
21452
|
+
headingLayout,
|
|
20934
21453
|
questionColumnsAccordionLayout
|
|
20935
21454
|
]
|
|
20936
21455
|
)
|
|
@@ -21264,7 +21783,7 @@ function resolveHeroContentAlignment(content) {
|
|
|
21264
21783
|
const raw = readHeroLayoutString(content, "contentAlignment");
|
|
21265
21784
|
if (raw === "left" || raw === "center" || raw === "right") return raw;
|
|
21266
21785
|
const variant = resolveHeroVariant(content);
|
|
21267
|
-
if (variant === "split" || variant === "splitReverse") return "left";
|
|
21786
|
+
if (variant === "split" || variant === "splitReverse" || variant === "splitEditorial") return "left";
|
|
21268
21787
|
return "center";
|
|
21269
21788
|
}
|
|
21270
21789
|
function resolveHeroVerticalAlignment(content) {
|
|
@@ -21274,7 +21793,7 @@ function resolveHeroVerticalAlignment(content) {
|
|
|
21274
21793
|
const minHeight = sectionStyles?.minHeight;
|
|
21275
21794
|
if (minHeight === "banner" || minHeight === "hero" || minHeight === "immersive") return "center";
|
|
21276
21795
|
const variant = resolveHeroVariant(content);
|
|
21277
|
-
if (variant === "split" || variant === "splitReverse") return "center";
|
|
21796
|
+
if (variant === "split" || variant === "splitReverse" || variant === "splitEditorial") return "center";
|
|
21278
21797
|
return "top";
|
|
21279
21798
|
}
|
|
21280
21799
|
function resolveHeroContentMaxWidth(content) {
|
|
@@ -21676,7 +22195,7 @@ function planSiteChromePlacement(positioning) {
|
|
|
21676
22195
|
standaloneShellClassName: "fixed left-0 right-0 top-0 z-40 w-full"
|
|
21677
22196
|
};
|
|
21678
22197
|
default:
|
|
21679
|
-
return
|
|
22198
|
+
return assertNever2(positioning);
|
|
21680
22199
|
}
|
|
21681
22200
|
}
|
|
21682
22201
|
|
|
@@ -22830,7 +23349,7 @@ var floatingLayout = inline(
|
|
|
22830
23349
|
),
|
|
22831
23350
|
fallback: `rb-header-layout header-floating-container rb-absolute rb-left-1/2 rb-top-4 ${desktopOnlyDisplay("flex")} rb-w-calc-100-minus-2rem rb-max-w-7xl rb-translate-x-neg-1/2 rb-items-start rb-gap-6 rb-px-6`
|
|
22832
23351
|
}),
|
|
22833
|
-
align: "
|
|
23352
|
+
align: "start"
|
|
22834
23353
|
},
|
|
22835
23354
|
[
|
|
22836
23355
|
logoRow,
|
|
@@ -23349,7 +23868,6 @@ var splitHeading = stack(
|
|
|
23349
23868
|
when("content.heading"),
|
|
23350
23869
|
bind("content.heading")
|
|
23351
23870
|
),
|
|
23352
|
-
headingDecoration(),
|
|
23353
23871
|
text(
|
|
23354
23872
|
{
|
|
23355
23873
|
as: "p",
|
|
@@ -23887,7 +24405,6 @@ var sectionHeading = stack(
|
|
|
23887
24405
|
when("content.title"),
|
|
23888
24406
|
bind("content.title")
|
|
23889
24407
|
),
|
|
23890
|
-
headingDecoration(),
|
|
23891
24408
|
richText(
|
|
23892
24409
|
{
|
|
23893
24410
|
className: "rb-feature-cards-description rb-prose rb-mx-auto rb-max-w-none",
|
|
@@ -23920,6 +24437,17 @@ var featureCard = styledCard(
|
|
|
23920
24437
|
null,
|
|
23921
24438
|
bind("card.icon")
|
|
23922
24439
|
),
|
|
24440
|
+
// Auto-numbered marker (01, 02, …). Always in the DOM; CSS shows it only
|
|
24441
|
+
// when cardMarker === 'numbers' and fills it via a counter. Its own class
|
|
24442
|
+
// (not the icon zone) so the icon-zone collapse behaviour is unaffected.
|
|
24443
|
+
el(
|
|
24444
|
+
"div",
|
|
24445
|
+
{
|
|
24446
|
+
className: "rb-feature-card-number-zone",
|
|
24447
|
+
"aria-hidden": "true"
|
|
24448
|
+
},
|
|
24449
|
+
null
|
|
24450
|
+
),
|
|
23923
24451
|
text(
|
|
23924
24452
|
{
|
|
23925
24453
|
as: "h3",
|
|
@@ -23959,6 +24487,12 @@ var cardsLayout = styledSection({
|
|
|
23959
24487
|
sectionHeading,
|
|
23960
24488
|
grid3(
|
|
23961
24489
|
{
|
|
24490
|
+
className: "rb-feature-cards-grid",
|
|
24491
|
+
// Drives which marker shows (icons / numbers / none) via CSS; the
|
|
24492
|
+
// fallback keeps legacy content (no cardMarker) showing icons.
|
|
24493
|
+
"data-card-marker": {
|
|
24494
|
+
$bind: { from: "content.cardMarker", fallback: "icons" }
|
|
24495
|
+
},
|
|
23962
24496
|
cols: {
|
|
23963
24497
|
$bind: {
|
|
23964
24498
|
from: "content.columns",
|
|
@@ -24087,11 +24621,25 @@ var featureCardsConfig = {
|
|
|
24087
24621
|
}
|
|
24088
24622
|
},
|
|
24089
24623
|
{
|
|
24090
|
-
id: "
|
|
24624
|
+
id: "cardMarker",
|
|
24091
24625
|
type: "select",
|
|
24092
|
-
label: "
|
|
24626
|
+
label: "Card marker",
|
|
24093
24627
|
required: false,
|
|
24094
|
-
defaultValue: "
|
|
24628
|
+
defaultValue: "icons",
|
|
24629
|
+
multiple: false,
|
|
24630
|
+
options: [
|
|
24631
|
+
{ value: "icons", label: "Icons" },
|
|
24632
|
+
{ value: "numbers", label: "Numbers (01, 02, \u2026)" },
|
|
24633
|
+
{ value: "none", label: "None" }
|
|
24634
|
+
],
|
|
24635
|
+
ui: { intent: "display" }
|
|
24636
|
+
},
|
|
24637
|
+
{
|
|
24638
|
+
id: "_iconTreatment",
|
|
24639
|
+
type: "select",
|
|
24640
|
+
label: "Icon style",
|
|
24641
|
+
required: false,
|
|
24642
|
+
defaultValue: "soft-badge",
|
|
24095
24643
|
multiple: false,
|
|
24096
24644
|
options: FEATURE_CARD_ICON_TREATMENTS.map((value) => ({
|
|
24097
24645
|
value,
|
|
@@ -24854,6 +25402,22 @@ var eventCategorySchema = z42.object({
|
|
|
24854
25402
|
var pricingTypeSchema = z42.enum(["free", "paid", "pass_only", "membership_only"]);
|
|
24855
25403
|
var accessRestrictionSchema = z42.enum(["none", "category"]);
|
|
24856
25404
|
var eventPricingModeSchema = z42.enum(["single", "ticket_types"]);
|
|
25405
|
+
var publicCoursePriceDisplaySchema = z42.discriminatedUnion("kind", [
|
|
25406
|
+
z42.object({ kind: z42.literal("free"), currency: z42.string() }),
|
|
25407
|
+
z42.object({ kind: z42.literal("exact"), amount: z42.number(), currency: z42.string() }),
|
|
25408
|
+
z42.object({ kind: z42.literal("from"), amount: z42.number(), currency: z42.string() }),
|
|
25409
|
+
z42.object({ kind: z42.literal("unavailable"), currency: z42.string() })
|
|
25410
|
+
]);
|
|
25411
|
+
var publicEventPriceDisplaySchema = z42.discriminatedUnion("kind", [
|
|
25412
|
+
z42.object({ kind: z42.literal("free"), currency: z42.string() }),
|
|
25413
|
+
z42.object({ kind: z42.literal("exact"), amount: z42.number(), currency: z42.string() }),
|
|
25414
|
+
z42.object({ kind: z42.literal("from"), amount: z42.number(), currency: z42.string() }),
|
|
25415
|
+
z42.object({ kind: z42.literal("mixed"), paidFromAmount: z42.number(), currency: z42.string() }),
|
|
25416
|
+
z42.object({ kind: z42.literal("pass_only") }),
|
|
25417
|
+
z42.object({ kind: z42.literal("membership_only") }),
|
|
25418
|
+
z42.object({ kind: z42.literal("unavailable"), currency: z42.string() }),
|
|
25419
|
+
z42.object({ kind: z42.literal("course"), display: publicCoursePriceDisplaySchema })
|
|
25420
|
+
]);
|
|
24857
25421
|
var publicEventAttendanceModeSchema = z42.enum(["in_person", "online"]);
|
|
24858
25422
|
var publicEventAttendanceModeAvailabilitySchema = z42.object({
|
|
24859
25423
|
mode: publicEventAttendanceModeSchema,
|
|
@@ -24935,6 +25499,7 @@ var publicEventSchema = z42.object({
|
|
|
24935
25499
|
pricingType: pricingTypeSchema,
|
|
24936
25500
|
price: z42.number().nullable(),
|
|
24937
25501
|
currency: z42.string(),
|
|
25502
|
+
priceDisplay: publicEventPriceDisplaySchema,
|
|
24938
25503
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
24939
25504
|
pricingMode: eventPricingModeSchema.optional(),
|
|
24940
25505
|
ticketTypes: z42.array(publicEventTicketTypeSchema).optional(),
|
|
@@ -24980,7 +25545,7 @@ var cardStylingFields = [
|
|
|
24980
25545
|
description: "Text for the event action button",
|
|
24981
25546
|
required: false,
|
|
24982
25547
|
multiline: false,
|
|
24983
|
-
defaultValue: "Book
|
|
25548
|
+
defaultValue: "Book",
|
|
24984
25549
|
maxLength: 40
|
|
24985
25550
|
}
|
|
24986
25551
|
];
|
|
@@ -26333,7 +26898,7 @@ var eventSpotlightBlockDefinition = {
|
|
|
26333
26898
|
};
|
|
26334
26899
|
|
|
26335
26900
|
// ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
|
|
26336
|
-
import { z as
|
|
26901
|
+
import { z as z51 } from "zod";
|
|
26337
26902
|
|
|
26338
26903
|
// ../blocks/src/system/runtime/nodes/events/shared/utils.ts
|
|
26339
26904
|
var COLUMN_CLASSES = {
|
|
@@ -26439,92 +27004,130 @@ function computeMediaTransformStyle(value, style, targetAspectRatio, options) {
|
|
|
26439
27004
|
return mergeStyles(style, stylePatch);
|
|
26440
27005
|
}
|
|
26441
27006
|
|
|
27007
|
+
// ../blocks/src/system/runtime/nodes/events/shared/listOptions.ts
|
|
27008
|
+
import { z as z50 } from "zod";
|
|
27009
|
+
var eventPageSizeValues = [3, 6, 10, 12, 20, 24, 30];
|
|
27010
|
+
var eventPageSizeSchema = z50.union([
|
|
27011
|
+
z50.literal(3),
|
|
27012
|
+
z50.literal(6),
|
|
27013
|
+
z50.literal(10),
|
|
27014
|
+
z50.literal(12),
|
|
27015
|
+
z50.literal(20),
|
|
27016
|
+
z50.literal(24),
|
|
27017
|
+
z50.literal(30)
|
|
27018
|
+
]);
|
|
27019
|
+
var eventPageSizeSet = new Set(eventPageSizeValues);
|
|
27020
|
+
function resolveEventPageSize(value, fallback = 12) {
|
|
27021
|
+
const candidate = typeof value === "number" ? value : typeof value === "string" && value.trim() !== "" ? Number(value.trim()) : null;
|
|
27022
|
+
return candidate != null && Number.isInteger(candidate) && eventPageSizeSet.has(candidate) ? candidate : fallback;
|
|
27023
|
+
}
|
|
27024
|
+
function resolveEventCalendarListPageSize(input) {
|
|
27025
|
+
return resolveEventPageSize(input.eventsPerPage);
|
|
27026
|
+
}
|
|
27027
|
+
var eventListPaginationActionSchema = z50.discriminatedUnion("kind", [
|
|
27028
|
+
z50.object({
|
|
27029
|
+
kind: z50.literal("loadMore"),
|
|
27030
|
+
label: z50.string()
|
|
27031
|
+
}),
|
|
27032
|
+
z50.object({
|
|
27033
|
+
kind: z50.literal("seeAllLink"),
|
|
27034
|
+
label: z50.string(),
|
|
27035
|
+
href: z50.string()
|
|
27036
|
+
})
|
|
27037
|
+
]);
|
|
27038
|
+
function resolveEventListPaginationAction(input) {
|
|
27039
|
+
const label = input.loadMoreText?.trim() || input.defaultLabel || "Load more events";
|
|
27040
|
+
const href = input.seeAllUrl?.trim();
|
|
27041
|
+
if (input.paginationMode === "seeAllLink" && href) {
|
|
27042
|
+
return { kind: "seeAllLink", label, href };
|
|
27043
|
+
}
|
|
27044
|
+
return { kind: "loadMore", label };
|
|
27045
|
+
}
|
|
27046
|
+
|
|
26442
27047
|
// ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
|
|
26443
|
-
var legacyEventCardVariantSchema =
|
|
26444
|
-
var eventCardVariantInputSchema =
|
|
27048
|
+
var legacyEventCardVariantSchema = z51.enum(["variant1", "variant2"]);
|
|
27049
|
+
var eventCardVariantInputSchema = z51.union([
|
|
26445
27050
|
cardVariantRoleSchema,
|
|
26446
27051
|
legacyEventCardVariantSchema
|
|
26447
27052
|
]);
|
|
26448
|
-
var cardOrientationSchema =
|
|
26449
|
-
var eventBlockKindSchema =
|
|
26450
|
-
var eventSurfaceScopeSchema =
|
|
26451
|
-
var eventScheduleScopeSchema2 =
|
|
26452
|
-
var eventListingSourceSchema =
|
|
26453
|
-
events:
|
|
26454
|
-
siteId:
|
|
26455
|
-
apiBaseUrl:
|
|
27053
|
+
var cardOrientationSchema = z51.enum(["vertical", "horizontal"]);
|
|
27054
|
+
var eventBlockKindSchema = z51.enum(eventBlockKindValues);
|
|
27055
|
+
var eventSurfaceScopeSchema = z51.enum(eventSurfaceScopeValues);
|
|
27056
|
+
var eventScheduleScopeSchema2 = z51.enum(eventScheduleScopeValues);
|
|
27057
|
+
var eventListingSourceSchema = z51.object({
|
|
27058
|
+
events: z51.array(publicEventSchema).nullable().optional(),
|
|
27059
|
+
siteId: z51.string(),
|
|
27060
|
+
apiBaseUrl: z51.string().optional(),
|
|
26456
27061
|
stage: previewStageSchema.optional(),
|
|
26457
27062
|
layout: eventLayoutSchema.optional(),
|
|
26458
27063
|
columns: columnOptionSchema.optional(),
|
|
26459
|
-
eventsPerPage:
|
|
26460
|
-
paginationMode:
|
|
26461
|
-
seeAllUrl:
|
|
26462
|
-
loadMoreText:
|
|
27064
|
+
eventsPerPage: z51.string().optional(),
|
|
27065
|
+
paginationMode: z51.enum(["loadMore", "seeAllLink"]).optional(),
|
|
27066
|
+
seeAllUrl: z51.string().optional(),
|
|
27067
|
+
loadMoreText: z51.string().optional(),
|
|
26463
27068
|
cardVariant: eventCardVariantInputSchema.optional(),
|
|
26464
27069
|
buttonVariant: eventButtonVariantSchema.optional(),
|
|
26465
|
-
buttonText:
|
|
26466
|
-
showVenue:
|
|
26467
|
-
showMap:
|
|
26468
|
-
showCapacity:
|
|
26469
|
-
emptyMessage:
|
|
26470
|
-
className:
|
|
26471
|
-
showFilters:
|
|
27070
|
+
buttonText: z51.string().optional(),
|
|
27071
|
+
showVenue: z51.boolean().optional(),
|
|
27072
|
+
showMap: z51.boolean().optional(),
|
|
27073
|
+
showCapacity: z51.boolean().optional(),
|
|
27074
|
+
emptyMessage: z51.string().optional(),
|
|
27075
|
+
className: z51.string().optional(),
|
|
27076
|
+
showFilters: z51.boolean().nullable().optional(),
|
|
26472
27077
|
showCategoryFilter: filterAutoShowSchema.optional(),
|
|
26473
|
-
showVenueFilter:
|
|
26474
|
-
showStaffFilter:
|
|
27078
|
+
showVenueFilter: z51.boolean().nullable().optional(),
|
|
27079
|
+
showStaffFilter: z51.boolean().nullable().optional(),
|
|
26475
27080
|
eventKind: eventBlockKindSchema.nullable().optional(),
|
|
26476
27081
|
eventSurface: eventSurfaceScopeSchema.nullable().optional(),
|
|
26477
|
-
filterEventPresets:
|
|
27082
|
+
filterEventPresets: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
|
|
26478
27083
|
scheduleScope: eventScheduleScopeSchema2.nullable().optional(),
|
|
26479
|
-
filterCategoryIds:
|
|
26480
|
-
filterStaffMemberId:
|
|
26481
|
-
filterVenueId:
|
|
27084
|
+
filterCategoryIds: z51.string().nullable().optional(),
|
|
27085
|
+
filterStaffMemberId: z51.string().nullable().optional(),
|
|
27086
|
+
filterVenueId: z51.string().nullable().optional()
|
|
26482
27087
|
});
|
|
26483
|
-
var eventListingDisplaySchema =
|
|
26484
|
-
kind:
|
|
26485
|
-
state:
|
|
27088
|
+
var eventListingDisplaySchema = z51.object({
|
|
27089
|
+
kind: z51.literal("event-listing"),
|
|
27090
|
+
state: z51.enum(["loading", "empty", "ready"]),
|
|
26486
27091
|
listLayout: eventLayoutSchema,
|
|
26487
|
-
className:
|
|
26488
|
-
emptyMessage:
|
|
26489
|
-
loadingMessage:
|
|
26490
|
-
containerClass:
|
|
27092
|
+
className: z51.string().nullable(),
|
|
27093
|
+
emptyMessage: z51.string(),
|
|
27094
|
+
loadingMessage: z51.string(),
|
|
27095
|
+
containerClass: z51.string(),
|
|
26491
27096
|
cardVariant: cardVariantRoleSchema,
|
|
26492
27097
|
buttonVariant: eventButtonVariantSchema,
|
|
26493
|
-
buttonText:
|
|
26494
|
-
showVenue:
|
|
26495
|
-
showMap:
|
|
26496
|
-
showCapacity:
|
|
27098
|
+
buttonText: z51.string(),
|
|
27099
|
+
showVenue: z51.boolean(),
|
|
27100
|
+
showMap: z51.boolean(),
|
|
27101
|
+
showCapacity: z51.boolean(),
|
|
26497
27102
|
orientation: cardOrientationSchema,
|
|
26498
|
-
events:
|
|
27103
|
+
events: z51.array(publicEventSchema)
|
|
26499
27104
|
});
|
|
26500
|
-
var eventListingHydrationSchema =
|
|
26501
|
-
siteId:
|
|
27105
|
+
var eventListingHydrationSchema = z51.object({
|
|
27106
|
+
siteId: z51.string(),
|
|
26502
27107
|
stage: previewStageSchema.optional(),
|
|
26503
|
-
eventsPerPage:
|
|
26504
|
-
|
|
26505
|
-
|
|
26506
|
-
loadMoreText: z50.string(),
|
|
26507
|
-
showFilters: z50.boolean(),
|
|
27108
|
+
eventsPerPage: eventPageSizeSchema,
|
|
27109
|
+
paginationAction: eventListPaginationActionSchema,
|
|
27110
|
+
showFilters: z51.boolean(),
|
|
26508
27111
|
showCategoryFilter: filterAutoShowSchema,
|
|
26509
|
-
showVenueFilter:
|
|
26510
|
-
showStaffFilter:
|
|
27112
|
+
showVenueFilter: z51.boolean(),
|
|
27113
|
+
showStaffFilter: z51.boolean(),
|
|
26511
27114
|
eventKind: eventBlockKindSchema,
|
|
26512
27115
|
eventSurface: eventSurfaceScopeSchema,
|
|
26513
|
-
filterEventPresets:
|
|
27116
|
+
filterEventPresets: z51.string().nullable(),
|
|
26514
27117
|
scheduleScope: eventScheduleScopeSchema2,
|
|
26515
|
-
filterCategoryIds:
|
|
26516
|
-
filterStaffMemberId:
|
|
26517
|
-
filterVenueId:
|
|
26518
|
-
fetchInitialEventsOnMount:
|
|
27118
|
+
filterCategoryIds: z51.string().nullable().optional(),
|
|
27119
|
+
filterStaffMemberId: z51.string().nullable().optional(),
|
|
27120
|
+
filterVenueId: z51.string().nullable().optional(),
|
|
27121
|
+
fetchInitialEventsOnMount: z51.boolean()
|
|
26519
27122
|
});
|
|
26520
|
-
var eventListingRenderSchema =
|
|
27123
|
+
var eventListingRenderSchema = z51.object({
|
|
26521
27124
|
display: eventListingDisplaySchema,
|
|
26522
27125
|
hydration: eventListingHydrationSchema
|
|
26523
27126
|
});
|
|
26524
27127
|
var eventListingIslandMetaCodec = createZodCodec(
|
|
26525
|
-
|
|
26526
|
-
siteId:
|
|
26527
|
-
apiBaseUrl:
|
|
27128
|
+
z51.object({
|
|
27129
|
+
siteId: z51.string(),
|
|
27130
|
+
apiBaseUrl: z51.string().optional(),
|
|
26528
27131
|
stage: previewStageSchema.optional()
|
|
26529
27132
|
})
|
|
26530
27133
|
);
|
|
@@ -26536,7 +27139,7 @@ var eventListingBlockRuntime = defineProgressiveBlockRuntime({
|
|
|
26536
27139
|
},
|
|
26537
27140
|
buildRender: (source) => {
|
|
26538
27141
|
const normalizedEvents = Array.isArray(source.events) ? source.events : [];
|
|
26539
|
-
const pageSize =
|
|
27142
|
+
const pageSize = resolveEventPageSize(source.eventsPerPage);
|
|
26540
27143
|
const initialEvents = normalizedEvents.slice(0, pageSize);
|
|
26541
27144
|
const didPrefetchEvents = source.events != null;
|
|
26542
27145
|
const layout = source.layout ?? "grid";
|
|
@@ -26551,7 +27154,7 @@ var eventListingBlockRuntime = defineProgressiveBlockRuntime({
|
|
|
26551
27154
|
containerClass: getContainerClass(layout, source.columns ?? "3"),
|
|
26552
27155
|
cardVariant: normalizeCardVariantRole(source.cardVariant) ?? "default",
|
|
26553
27156
|
buttonVariant: source.buttonVariant ?? "primary",
|
|
26554
|
-
buttonText: source.buttonText ?? "Book
|
|
27157
|
+
buttonText: source.buttonText ?? "Book",
|
|
26555
27158
|
showVenue: source.showVenue ?? true,
|
|
26556
27159
|
showMap: source.showMap ?? true,
|
|
26557
27160
|
showCapacity: source.showCapacity ?? true,
|
|
@@ -26561,10 +27164,12 @@ var eventListingBlockRuntime = defineProgressiveBlockRuntime({
|
|
|
26561
27164
|
hydration: {
|
|
26562
27165
|
siteId: source.siteId,
|
|
26563
27166
|
stage: source.stage,
|
|
26564
|
-
eventsPerPage:
|
|
26565
|
-
|
|
26566
|
-
|
|
26567
|
-
|
|
27167
|
+
eventsPerPage: pageSize,
|
|
27168
|
+
paginationAction: resolveEventListPaginationAction({
|
|
27169
|
+
paginationMode: source.paginationMode,
|
|
27170
|
+
seeAllUrl: source.seeAllUrl,
|
|
27171
|
+
loadMoreText: source.loadMoreText
|
|
27172
|
+
}),
|
|
26568
27173
|
showFilters: source.showFilters ?? false,
|
|
26569
27174
|
showCategoryFilter: source.showCategoryFilter ?? "auto",
|
|
26570
27175
|
showVenueFilter: source.showVenueFilter ?? false,
|
|
@@ -26786,7 +27391,7 @@ var eventListingLayout = [
|
|
|
26786
27391
|
loadMoreText: { $bind: { from: "content.loadMoreText", fallback: "Load more events" } },
|
|
26787
27392
|
cardVariant: { $bind: { from: "content.cardVariant", fallback: "default" } },
|
|
26788
27393
|
buttonVariant: { $bind: { from: "content.buttonVariant", fallback: "primary" } },
|
|
26789
|
-
buttonText: { $bind: { from: "content.buttonText", fallback: "Book
|
|
27394
|
+
buttonText: { $bind: { from: "content.buttonText", fallback: "Book" } },
|
|
26790
27395
|
showVenue: { $bind: { from: "content.showVenue" } },
|
|
26791
27396
|
showMap: { $bind: { from: "content.showMap" } },
|
|
26792
27397
|
showCapacity: { $bind: { from: "content.showCapacity" } },
|
|
@@ -26881,15 +27486,15 @@ var eventListingBlockDefinition = {
|
|
|
26881
27486
|
};
|
|
26882
27487
|
|
|
26883
27488
|
// ../blocks/src/system/runtime/nodes/events/EventCalendar.interactive.ts
|
|
26884
|
-
import { z as
|
|
26885
|
-
var eventBlockKindSchema2 =
|
|
26886
|
-
var eventSurfaceScopeSchema2 =
|
|
26887
|
-
var eventScheduleScopeSchema3 =
|
|
26888
|
-
var eventCalendarSourceSchema =
|
|
27489
|
+
import { z as z52 } from "zod";
|
|
27490
|
+
var eventBlockKindSchema2 = z52.enum(eventBlockKindValues);
|
|
27491
|
+
var eventSurfaceScopeSchema2 = z52.enum(eventSurfaceScopeValues);
|
|
27492
|
+
var eventScheduleScopeSchema3 = z52.enum(eventScheduleScopeValues);
|
|
27493
|
+
var eventCalendarSourceSchema = z52.object(
|
|
26889
27494
|
{
|
|
26890
|
-
events:
|
|
26891
|
-
siteId:
|
|
26892
|
-
apiBaseUrl:
|
|
27495
|
+
events: z52.array(publicEventSchema).nullable().optional(),
|
|
27496
|
+
siteId: z52.string(),
|
|
27497
|
+
apiBaseUrl: z52.string().optional(),
|
|
26893
27498
|
stage: previewStageSchema.optional(),
|
|
26894
27499
|
variant: eventCalendarDisplayModeSchema.nullable().optional(),
|
|
26895
27500
|
displayMode: eventCalendarDisplayModeSchema.nullable().optional(),
|
|
@@ -26897,77 +27502,78 @@ var eventCalendarSourceSchema = z51.object(
|
|
|
26897
27502
|
listColumns: columnOptionSchema.optional(),
|
|
26898
27503
|
layout: eventLayoutSchema.optional(),
|
|
26899
27504
|
columns: columnOptionSchema.optional(),
|
|
26900
|
-
eventsPerPage:
|
|
26901
|
-
|
|
26902
|
-
|
|
27505
|
+
eventsPerPage: z52.string().optional(),
|
|
27506
|
+
paginationMode: z52.enum(["loadMore", "seeAllLink"]).optional(),
|
|
27507
|
+
seeAllUrl: z52.string().optional(),
|
|
27508
|
+
loadMoreText: z52.string().optional(),
|
|
26903
27509
|
startOfWeek: weekStartSchema.optional(),
|
|
26904
27510
|
calendarTabViews: calendarTabViewsSchema.optional(),
|
|
26905
|
-
showFilters:
|
|
27511
|
+
showFilters: z52.boolean().nullable().optional(),
|
|
26906
27512
|
showCategoryFilter: filterAutoShowSchema.optional(),
|
|
26907
|
-
showVenueFilter:
|
|
26908
|
-
showStaffFilter:
|
|
27513
|
+
showVenueFilter: z52.boolean().nullable().optional(),
|
|
27514
|
+
showStaffFilter: z52.boolean().nullable().optional(),
|
|
26909
27515
|
kind: eventBlockKindSchema2.nullable().optional(),
|
|
26910
27516
|
eventSurface: eventSurfaceScopeSchema2.nullable().optional(),
|
|
26911
|
-
filterEventPresets:
|
|
27517
|
+
filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
|
|
26912
27518
|
scheduleScope: eventScheduleScopeSchema3.nullable().optional(),
|
|
26913
|
-
filterCategoryIds:
|
|
26914
|
-
filterStaffMemberId:
|
|
26915
|
-
filterVenueId:
|
|
27519
|
+
filterCategoryIds: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
|
|
27520
|
+
filterStaffMemberId: z52.string().nullable().optional(),
|
|
27521
|
+
filterVenueId: z52.string().nullable().optional(),
|
|
26916
27522
|
buttonVariant: eventButtonVariantSchema.optional(),
|
|
26917
|
-
buttonText:
|
|
26918
|
-
showVenue:
|
|
26919
|
-
showMap:
|
|
26920
|
-
showCapacity:
|
|
26921
|
-
emptyMessage:
|
|
26922
|
-
className:
|
|
27523
|
+
buttonText: z52.string().optional(),
|
|
27524
|
+
showVenue: z52.boolean().nullable().optional(),
|
|
27525
|
+
showMap: z52.boolean().nullable().optional(),
|
|
27526
|
+
showCapacity: z52.boolean().nullable().optional(),
|
|
27527
|
+
emptyMessage: z52.string().optional(),
|
|
27528
|
+
className: z52.string().optional()
|
|
26923
27529
|
}
|
|
26924
27530
|
);
|
|
26925
|
-
var eventCalendarDisplaySchema =
|
|
26926
|
-
kind:
|
|
27531
|
+
var eventCalendarDisplaySchema = z52.object({
|
|
27532
|
+
kind: z52.literal("event-calendar"),
|
|
26927
27533
|
displayMode: eventCalendarDisplayModeSchema,
|
|
26928
|
-
className:
|
|
26929
|
-
events:
|
|
27534
|
+
className: z52.string().nullable(),
|
|
27535
|
+
events: z52.array(publicEventSchema),
|
|
26930
27536
|
listLayout: eventLayoutSchema,
|
|
26931
27537
|
listColumns: columnOptionSchema,
|
|
26932
|
-
eventsPerPage:
|
|
26933
|
-
|
|
27538
|
+
eventsPerPage: eventPageSizeSchema,
|
|
27539
|
+
paginationAction: eventListPaginationActionSchema,
|
|
26934
27540
|
startOfWeek: weekStartSchema,
|
|
26935
27541
|
calendarTabViews: calendarTabViewsSchema,
|
|
26936
|
-
showFilters:
|
|
27542
|
+
showFilters: z52.boolean(),
|
|
26937
27543
|
showCategoryFilter: filterAutoShowSchema,
|
|
26938
|
-
showVenueFilter:
|
|
26939
|
-
showStaffFilter:
|
|
27544
|
+
showVenueFilter: z52.boolean(),
|
|
27545
|
+
showStaffFilter: z52.boolean(),
|
|
26940
27546
|
eventKind: eventBlockKindSchema2,
|
|
26941
27547
|
eventSurface: eventSurfaceScopeSchema2,
|
|
26942
|
-
filterEventPresets:
|
|
27548
|
+
filterEventPresets: z52.string().nullable(),
|
|
26943
27549
|
scheduleScope: eventScheduleScopeSchema3,
|
|
26944
|
-
filterCategoryIds:
|
|
26945
|
-
filterStaffMemberId:
|
|
26946
|
-
filterVenueId:
|
|
27550
|
+
filterCategoryIds: z52.string().nullable(),
|
|
27551
|
+
filterStaffMemberId: z52.string().nullable(),
|
|
27552
|
+
filterVenueId: z52.string().nullable(),
|
|
26947
27553
|
buttonVariant: eventButtonVariantSchema,
|
|
26948
|
-
buttonText:
|
|
26949
|
-
showVenue:
|
|
26950
|
-
showMap:
|
|
26951
|
-
showCapacity:
|
|
26952
|
-
emptyMessage:
|
|
26953
|
-
});
|
|
26954
|
-
var eventCalendarHydrationSchema =
|
|
26955
|
-
siteId:
|
|
27554
|
+
buttonText: z52.string(),
|
|
27555
|
+
showVenue: z52.boolean(),
|
|
27556
|
+
showMap: z52.boolean(),
|
|
27557
|
+
showCapacity: z52.boolean(),
|
|
27558
|
+
emptyMessage: z52.string()
|
|
27559
|
+
});
|
|
27560
|
+
var eventCalendarHydrationSchema = z52.object({
|
|
27561
|
+
siteId: z52.string(),
|
|
26956
27562
|
stage: previewStageSchema.optional(),
|
|
26957
|
-
prefetchedEvents:
|
|
27563
|
+
prefetchedEvents: z52.boolean(),
|
|
26958
27564
|
eventKind: eventBlockKindSchema2,
|
|
26959
27565
|
eventSurface: eventSurfaceScopeSchema2,
|
|
26960
|
-
filterEventPresets:
|
|
27566
|
+
filterEventPresets: z52.string().nullable(),
|
|
26961
27567
|
scheduleScope: eventScheduleScopeSchema3
|
|
26962
27568
|
});
|
|
26963
|
-
var eventCalendarRenderSchema =
|
|
27569
|
+
var eventCalendarRenderSchema = z52.object({
|
|
26964
27570
|
display: eventCalendarDisplaySchema,
|
|
26965
27571
|
hydration: eventCalendarHydrationSchema
|
|
26966
27572
|
});
|
|
26967
27573
|
var eventCalendarIslandMetaCodec = createZodCodec(
|
|
26968
|
-
|
|
26969
|
-
siteId:
|
|
26970
|
-
apiBaseUrl:
|
|
27574
|
+
z52.object({
|
|
27575
|
+
siteId: z52.string(),
|
|
27576
|
+
apiBaseUrl: z52.string().optional(),
|
|
26971
27577
|
stage: previewStageSchema.optional()
|
|
26972
27578
|
})
|
|
26973
27579
|
);
|
|
@@ -26977,6 +27583,7 @@ var eventCalendarIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
|
26977
27583
|
"stage"
|
|
26978
27584
|
);
|
|
26979
27585
|
function buildEventCalendarDisplay(source) {
|
|
27586
|
+
const listLayout = source.listLayout ?? source.layout ?? "stack";
|
|
26980
27587
|
return {
|
|
26981
27588
|
kind: "event-calendar",
|
|
26982
27589
|
displayMode: source.variant ?? source.displayMode ?? "combined",
|
|
@@ -26984,10 +27591,16 @@ function buildEventCalendarDisplay(source) {
|
|
|
26984
27591
|
events: (source.events ?? []).slice().sort(
|
|
26985
27592
|
(left, right) => new Date(left.startsAt).getTime() - new Date(right.startsAt).getTime()
|
|
26986
27593
|
),
|
|
26987
|
-
listLayout
|
|
27594
|
+
listLayout,
|
|
26988
27595
|
listColumns: source.listColumns ?? source.columns ?? "3",
|
|
26989
|
-
eventsPerPage: (
|
|
26990
|
-
|
|
27596
|
+
eventsPerPage: resolveEventCalendarListPageSize({
|
|
27597
|
+
eventsPerPage: source.eventsPerPage
|
|
27598
|
+
}),
|
|
27599
|
+
paginationAction: resolveEventListPaginationAction({
|
|
27600
|
+
paginationMode: source.paginationMode,
|
|
27601
|
+
seeAllUrl: source.seeAllUrl,
|
|
27602
|
+
loadMoreText: source.loadMoreText
|
|
27603
|
+
}),
|
|
26991
27604
|
startOfWeek: source.startOfWeek ?? "monday",
|
|
26992
27605
|
calendarTabViews: source.calendarTabViews ?? "both",
|
|
26993
27606
|
showFilters: source.showFilters ?? true,
|
|
@@ -27004,7 +27617,7 @@ function buildEventCalendarDisplay(source) {
|
|
|
27004
27617
|
),
|
|
27005
27618
|
filterVenueId: normalizeEventVenueId(source.filterVenueId),
|
|
27006
27619
|
buttonVariant: source.buttonVariant ?? "primary",
|
|
27007
|
-
buttonText: source.buttonText ?? "Book
|
|
27620
|
+
buttonText: source.buttonText ?? "Book",
|
|
27008
27621
|
showVenue: source.showVenue ?? true,
|
|
27009
27622
|
showMap: source.showMap ?? true,
|
|
27010
27623
|
showCapacity: source.showCapacity ?? true,
|
|
@@ -27104,10 +27717,16 @@ var eventCalendarLayout = [
|
|
|
27104
27717
|
layout: { $bind: { from: "content.layout" } },
|
|
27105
27718
|
columns: { $bind: { from: "content.columns" } },
|
|
27106
27719
|
eventsPerPage: {
|
|
27107
|
-
$bind: { from: "content.eventsPerPage"
|
|
27720
|
+
$bind: { from: "content.eventsPerPage" }
|
|
27108
27721
|
},
|
|
27109
|
-
|
|
27110
|
-
$bind: { from: "content.
|
|
27722
|
+
paginationMode: {
|
|
27723
|
+
$bind: { from: "content.paginationMode", fallback: "loadMore" }
|
|
27724
|
+
},
|
|
27725
|
+
seeAllUrl: {
|
|
27726
|
+
$bind: {
|
|
27727
|
+
from: "content.seeAllUrl",
|
|
27728
|
+
transforms: [{ id: "links.resolve" }]
|
|
27729
|
+
}
|
|
27111
27730
|
},
|
|
27112
27731
|
loadMoreText: {
|
|
27113
27732
|
$bind: {
|
|
@@ -27160,7 +27779,7 @@ var eventCalendarLayout = [
|
|
|
27160
27779
|
$bind: { from: "content.buttonVariant", fallback: "primary" }
|
|
27161
27780
|
},
|
|
27162
27781
|
buttonText: {
|
|
27163
|
-
$bind: { from: "content.buttonText", fallback: "Book
|
|
27782
|
+
$bind: { from: "content.buttonText", fallback: "Book" }
|
|
27164
27783
|
},
|
|
27165
27784
|
emptyMessage: { $bind: { from: "content.emptyMessage" } }
|
|
27166
27785
|
})
|
|
@@ -27234,15 +27853,18 @@ var eventCalendarAdditionalFields = [
|
|
|
27234
27853
|
{
|
|
27235
27854
|
id: "eventsPerPage",
|
|
27236
27855
|
type: "select",
|
|
27237
|
-
label: "Events per page
|
|
27238
|
-
description: "Number of events to load initially
|
|
27856
|
+
label: "Events per page",
|
|
27857
|
+
description: "Number of events to load initially",
|
|
27239
27858
|
required: false,
|
|
27240
27859
|
multiple: false,
|
|
27241
27860
|
defaultValue: "12",
|
|
27242
27861
|
options: [
|
|
27243
27862
|
{ value: "6", label: "6" },
|
|
27863
|
+
{ value: "10", label: "10" },
|
|
27244
27864
|
{ value: "12", label: "12" },
|
|
27245
|
-
{ value: "
|
|
27865
|
+
{ value: "20", label: "20" },
|
|
27866
|
+
{ value: "24", label: "24" },
|
|
27867
|
+
{ value: "30", label: "30" }
|
|
27246
27868
|
],
|
|
27247
27869
|
ui: {
|
|
27248
27870
|
intent: "display",
|
|
@@ -27250,33 +27872,42 @@ var eventCalendarAdditionalFields = [
|
|
|
27250
27872
|
}
|
|
27251
27873
|
},
|
|
27252
27874
|
{
|
|
27253
|
-
id: "
|
|
27875
|
+
id: "paginationMode",
|
|
27254
27876
|
type: "select",
|
|
27255
|
-
label: "
|
|
27256
|
-
description: "
|
|
27877
|
+
label: "More events",
|
|
27878
|
+
description: "How to access events beyond the initial list",
|
|
27257
27879
|
required: false,
|
|
27258
27880
|
multiple: false,
|
|
27259
|
-
defaultValue: "
|
|
27881
|
+
defaultValue: "loadMore",
|
|
27260
27882
|
options: [
|
|
27261
|
-
{ value: "
|
|
27262
|
-
{ value: "
|
|
27263
|
-
{ value: "30", label: "30" }
|
|
27883
|
+
{ value: "loadMore", label: "Load more button" },
|
|
27884
|
+
{ value: "seeAllLink", label: "Link to another page" }
|
|
27264
27885
|
],
|
|
27265
27886
|
ui: {
|
|
27266
27887
|
intent: "display",
|
|
27267
|
-
visibleWhen: { field: "
|
|
27888
|
+
visibleWhen: { field: "variant", oneOf: ["combined", "list"] }
|
|
27889
|
+
}
|
|
27890
|
+
},
|
|
27891
|
+
{
|
|
27892
|
+
id: "seeAllUrl",
|
|
27893
|
+
type: "link",
|
|
27894
|
+
label: "See all destination",
|
|
27895
|
+
required: false,
|
|
27896
|
+
ui: {
|
|
27897
|
+
intent: "display",
|
|
27898
|
+
visibleWhen: { field: "paginationMode", equals: "seeAllLink" }
|
|
27268
27899
|
}
|
|
27269
27900
|
},
|
|
27270
27901
|
{
|
|
27271
27902
|
id: "loadMoreText",
|
|
27272
27903
|
type: "text",
|
|
27273
|
-
label: "
|
|
27274
|
-
description: "Text for the load more button",
|
|
27904
|
+
label: "CTA button text",
|
|
27905
|
+
description: "Text for the load more button or linked CTA",
|
|
27275
27906
|
required: false,
|
|
27276
27907
|
multiline: false,
|
|
27277
27908
|
defaultValue: "Load more events",
|
|
27278
27909
|
ui: {
|
|
27279
|
-
intent: "
|
|
27910
|
+
intent: "display",
|
|
27280
27911
|
visibleWhen: { field: "variant", oneOf: ["combined", "list"] }
|
|
27281
27912
|
}
|
|
27282
27913
|
},
|
|
@@ -27527,51 +28158,393 @@ var eventCalendarAdditionalFields = [
|
|
|
27527
28158
|
renderInHeader: false
|
|
27528
28159
|
})
|
|
27529
28160
|
];
|
|
27530
|
-
var eventCalendarVariants = {
|
|
27531
|
-
combined: eventCalendarLayout[0],
|
|
27532
|
-
month: eventCalendarLayout[0],
|
|
27533
|
-
week: eventCalendarLayout[0],
|
|
27534
|
-
timetable: eventCalendarLayout[0],
|
|
27535
|
-
list: eventCalendarLayout[0]
|
|
27536
|
-
};
|
|
27537
|
-
var eventCalendarDerivedFields = [
|
|
27538
|
-
{
|
|
27539
|
-
id: "displayMode",
|
|
27540
|
-
type: "select",
|
|
27541
|
-
required: false,
|
|
27542
|
-
multiple: false,
|
|
27543
|
-
options: [
|
|
27544
|
-
{ value: "combined" },
|
|
27545
|
-
{ value: "month" },
|
|
27546
|
-
{ value: "week" },
|
|
27547
|
-
{ value: "timetable" },
|
|
27548
|
-
{ value: "list" }
|
|
27549
|
-
]
|
|
27550
|
-
},
|
|
27551
|
-
{
|
|
27552
|
-
id: "listLayout",
|
|
27553
|
-
type: "select",
|
|
27554
|
-
required: false,
|
|
27555
|
-
multiple: false,
|
|
27556
|
-
options: eventCalendarListLayoutOptions.map((option) => ({
|
|
27557
|
-
value: option.id
|
|
27558
|
-
}))
|
|
27559
|
-
}
|
|
27560
|
-
];
|
|
27561
|
-
var eventCalendarContentShape = {
|
|
27562
|
-
additionalFields: eventCalendarDerivedFields,
|
|
27563
|
-
variants: eventCalendarVariants,
|
|
27564
|
-
skipSectionStyles: true
|
|
27565
|
-
};
|
|
27566
|
-
var eventCalendarConfig = {
|
|
27567
|
-
id: "block.event-calendar",
|
|
27568
|
-
version: "3.6.0",
|
|
27569
|
-
title: "Event Calendar",
|
|
28161
|
+
var eventCalendarVariants = {
|
|
28162
|
+
combined: eventCalendarLayout[0],
|
|
28163
|
+
month: eventCalendarLayout[0],
|
|
28164
|
+
week: eventCalendarLayout[0],
|
|
28165
|
+
timetable: eventCalendarLayout[0],
|
|
28166
|
+
list: eventCalendarLayout[0]
|
|
28167
|
+
};
|
|
28168
|
+
var eventCalendarDerivedFields = [
|
|
28169
|
+
{
|
|
28170
|
+
id: "displayMode",
|
|
28171
|
+
type: "select",
|
|
28172
|
+
required: false,
|
|
28173
|
+
multiple: false,
|
|
28174
|
+
options: [
|
|
28175
|
+
{ value: "combined" },
|
|
28176
|
+
{ value: "month" },
|
|
28177
|
+
{ value: "week" },
|
|
28178
|
+
{ value: "timetable" },
|
|
28179
|
+
{ value: "list" }
|
|
28180
|
+
]
|
|
28181
|
+
},
|
|
28182
|
+
{
|
|
28183
|
+
id: "listLayout",
|
|
28184
|
+
type: "select",
|
|
28185
|
+
required: false,
|
|
28186
|
+
multiple: false,
|
|
28187
|
+
options: eventCalendarListLayoutOptions.map((option) => ({
|
|
28188
|
+
value: option.id
|
|
28189
|
+
}))
|
|
28190
|
+
}
|
|
28191
|
+
];
|
|
28192
|
+
var eventCalendarContentShape = {
|
|
28193
|
+
additionalFields: eventCalendarDerivedFields,
|
|
28194
|
+
variants: eventCalendarVariants,
|
|
28195
|
+
skipSectionStyles: true
|
|
28196
|
+
};
|
|
28197
|
+
var eventCalendarConfig = {
|
|
28198
|
+
id: "block.event-calendar",
|
|
28199
|
+
version: "3.6.0",
|
|
28200
|
+
title: "Event Calendar",
|
|
28201
|
+
titleSource: "heading",
|
|
28202
|
+
description: "Display events with calendar, list, or combined views with filtering",
|
|
28203
|
+
// Preserve legacy section styles field configuration (renderInHeader: false).
|
|
28204
|
+
skipSectionStyles: true,
|
|
28205
|
+
additionalFields: eventCalendarAdditionalFields,
|
|
28206
|
+
styleTokens: { background: "surface", typography: "body", spacing: "md" },
|
|
28207
|
+
behaviours: {
|
|
28208
|
+
supportsThemeSwitching: true,
|
|
28209
|
+
inlineEditing: false,
|
|
28210
|
+
animation: false,
|
|
28211
|
+
paletteHidden: false
|
|
28212
|
+
},
|
|
28213
|
+
category: "interactive",
|
|
28214
|
+
tags: [
|
|
28215
|
+
"events",
|
|
28216
|
+
"calendar",
|
|
28217
|
+
"month",
|
|
28218
|
+
"week",
|
|
28219
|
+
"schedule",
|
|
28220
|
+
"interactive",
|
|
28221
|
+
"list",
|
|
28222
|
+
"filter"
|
|
28223
|
+
],
|
|
28224
|
+
icon: "CalendarDays",
|
|
28225
|
+
layout: eventCalendarLayout,
|
|
28226
|
+
variants: eventCalendarVariants,
|
|
28227
|
+
defaultVariant: "combined",
|
|
28228
|
+
variantOptions: {
|
|
28229
|
+
combined: { label: "Combined" },
|
|
28230
|
+
month: { label: "Month" },
|
|
28231
|
+
week: { label: "Week" },
|
|
28232
|
+
timetable: { label: "Timetable" },
|
|
28233
|
+
list: { label: "List" }
|
|
28234
|
+
}
|
|
28235
|
+
};
|
|
28236
|
+
var eventCalendarManifest = createBlockManifestWithContentShape(
|
|
28237
|
+
eventCalendarConfig,
|
|
28238
|
+
eventCalendarContentShape
|
|
28239
|
+
);
|
|
28240
|
+
var eventCalendarBlockDefinition = {
|
|
28241
|
+
manifest: eventCalendarManifest,
|
|
28242
|
+
normalizeContent: normalizeEventCalendarContent,
|
|
28243
|
+
dataSchemas: {
|
|
28244
|
+
events: publicEventsArraySchema.optional()
|
|
28245
|
+
},
|
|
28246
|
+
dataLoaders: {
|
|
28247
|
+
events: {
|
|
28248
|
+
endpoint: "listPublicEvents",
|
|
28249
|
+
params: {
|
|
28250
|
+
siteId: { $bind: { from: "$root.siteId" } },
|
|
28251
|
+
// Pre-fetch events - limit varies by mode but default to high for calendar
|
|
28252
|
+
limit: 100,
|
|
28253
|
+
stage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
28254
|
+
detailLevel: "listing",
|
|
28255
|
+
readProfile: { $bind: { from: "content.variant", fallback: "listing-card" } },
|
|
28256
|
+
// Pass filter params if configured
|
|
28257
|
+
kind: { $bind: { from: "content.kind" } },
|
|
28258
|
+
eventSurface: { $bind: { from: "content.eventSurface" } },
|
|
28259
|
+
eventPresets: {
|
|
28260
|
+
$bind: {
|
|
28261
|
+
from: "content.filterEventPresets",
|
|
28262
|
+
transforms: [{ id: "value.csv" }]
|
|
28263
|
+
}
|
|
28264
|
+
},
|
|
28265
|
+
scheduleScope: { $bind: { from: "content.scheduleScope" } },
|
|
28266
|
+
categoryIds: { $bind: { from: "content.filterCategoryIds" } },
|
|
28267
|
+
staffMemberId: { $bind: { from: "content.filterStaffMemberId" } },
|
|
28268
|
+
venueId: { $bind: { from: "content.filterVenueId" } }
|
|
28269
|
+
},
|
|
28270
|
+
mode: "server"
|
|
28271
|
+
}
|
|
28272
|
+
},
|
|
28273
|
+
runtime: eventCalendarBlockRuntime
|
|
28274
|
+
};
|
|
28275
|
+
|
|
28276
|
+
// ../blocks/src/system/blocks/offerings-preview/index.ts
|
|
28277
|
+
import { z as z53 } from "zod";
|
|
28278
|
+
|
|
28279
|
+
// ../blocks/src/system/blocks/offerings-preview/model.ts
|
|
28280
|
+
var OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT = "3";
|
|
28281
|
+
var OFFERINGS_PREVIEW_DEFAULT_BUTTON_TEXT = "Book";
|
|
28282
|
+
var OFFERINGS_PREVIEW_DEFAULT_EMPTY_MESSAGE = "Nothing scheduled just yet.";
|
|
28283
|
+
var OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS = [
|
|
28284
|
+
{
|
|
28285
|
+
preset: "class",
|
|
28286
|
+
sourceKey: "eventPreset:class",
|
|
28287
|
+
dataKey: "classEvents",
|
|
28288
|
+
label: "Classes"
|
|
28289
|
+
},
|
|
28290
|
+
{
|
|
28291
|
+
preset: "workshop",
|
|
28292
|
+
sourceKey: "eventPreset:workshop",
|
|
28293
|
+
dataKey: "workshopEvents",
|
|
28294
|
+
label: "Workshops"
|
|
28295
|
+
},
|
|
28296
|
+
{
|
|
28297
|
+
preset: "retreat",
|
|
28298
|
+
sourceKey: "eventPreset:retreat",
|
|
28299
|
+
dataKey: "retreatEvents",
|
|
28300
|
+
label: "Retreats"
|
|
28301
|
+
},
|
|
28302
|
+
{
|
|
28303
|
+
preset: "performance",
|
|
28304
|
+
sourceKey: "eventPreset:performance",
|
|
28305
|
+
dataKey: "performanceEvents",
|
|
28306
|
+
label: "Performances"
|
|
28307
|
+
}
|
|
28308
|
+
];
|
|
28309
|
+
var OFFERINGS_PREVIEW_EVENT_PRESETS = OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => definition.preset);
|
|
28310
|
+
var OFFERINGS_PREVIEW_AUTHORABLE_SOURCE_KEYS = [
|
|
28311
|
+
...OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => definition.sourceKey),
|
|
28312
|
+
"course"
|
|
28313
|
+
];
|
|
28314
|
+
var eventPresetSourceByKey = Object.fromEntries(
|
|
28315
|
+
OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => [
|
|
28316
|
+
definition.sourceKey,
|
|
28317
|
+
{ kind: "eventPreset", preset: definition.preset }
|
|
28318
|
+
])
|
|
28319
|
+
);
|
|
28320
|
+
|
|
28321
|
+
// ../blocks/src/system/blocks/offerings-preview/index.ts
|
|
28322
|
+
var publicRouteCandidatesSchema = z53.object({
|
|
28323
|
+
routes: z53.array(z53.object({
|
|
28324
|
+
entityId: z53.string(),
|
|
28325
|
+
path: z53.string(),
|
|
28326
|
+
title: z53.string(),
|
|
28327
|
+
kind: z53.enum(["page", "content"]),
|
|
28328
|
+
contentTypeKey: z53.string().nullable().optional()
|
|
28329
|
+
}))
|
|
28330
|
+
});
|
|
28331
|
+
var groupOverrideFields = [
|
|
28332
|
+
{
|
|
28333
|
+
id: "sourceKey",
|
|
28334
|
+
type: "select",
|
|
28335
|
+
label: "Offering",
|
|
28336
|
+
required: true,
|
|
28337
|
+
multiple: false,
|
|
28338
|
+
options: [
|
|
28339
|
+
...OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => ({
|
|
28340
|
+
value: definition.sourceKey,
|
|
28341
|
+
label: definition.label
|
|
28342
|
+
})),
|
|
28343
|
+
{ value: "course", label: "Courses" }
|
|
28344
|
+
],
|
|
28345
|
+
ui: { intent: "behavior" }
|
|
28346
|
+
},
|
|
28347
|
+
{
|
|
28348
|
+
id: "title",
|
|
28349
|
+
type: "text",
|
|
28350
|
+
label: "Title",
|
|
28351
|
+
required: false,
|
|
28352
|
+
multiline: false,
|
|
28353
|
+
maxLength: 80,
|
|
28354
|
+
ui: { intent: "content" }
|
|
28355
|
+
},
|
|
28356
|
+
{
|
|
28357
|
+
id: "intro",
|
|
28358
|
+
type: "text",
|
|
28359
|
+
label: "Intro",
|
|
28360
|
+
required: false,
|
|
28361
|
+
multiline: true,
|
|
28362
|
+
maxLength: 220,
|
|
28363
|
+
ui: { intent: "content" }
|
|
28364
|
+
},
|
|
28365
|
+
{
|
|
28366
|
+
id: "hidden",
|
|
28367
|
+
type: "boolean",
|
|
28368
|
+
label: "Hide this card",
|
|
28369
|
+
required: false,
|
|
28370
|
+
defaultValue: false,
|
|
28371
|
+
ui: { intent: "display" }
|
|
28372
|
+
},
|
|
28373
|
+
{
|
|
28374
|
+
id: "presentation",
|
|
28375
|
+
type: "select",
|
|
28376
|
+
label: "Items",
|
|
28377
|
+
required: false,
|
|
28378
|
+
multiple: false,
|
|
28379
|
+
defaultValue: "compact-list",
|
|
28380
|
+
options: [
|
|
28381
|
+
{ value: "compact-list", label: "Compact list" },
|
|
28382
|
+
{ value: "single-card", label: "Single card" }
|
|
28383
|
+
],
|
|
28384
|
+
ui: { intent: "display" }
|
|
28385
|
+
},
|
|
28386
|
+
{
|
|
28387
|
+
id: "ctaMode",
|
|
28388
|
+
type: "select",
|
|
28389
|
+
label: "Card link",
|
|
28390
|
+
required: false,
|
|
28391
|
+
multiple: false,
|
|
28392
|
+
defaultValue: "auto",
|
|
28393
|
+
options: [
|
|
28394
|
+
{ value: "auto", label: "Auto" },
|
|
28395
|
+
{ value: "custom", label: "Custom link" },
|
|
28396
|
+
{ value: "hidden", label: "Hidden" }
|
|
28397
|
+
],
|
|
28398
|
+
ui: { intent: "behavior" }
|
|
28399
|
+
},
|
|
28400
|
+
{
|
|
28401
|
+
id: "ctaLabel",
|
|
28402
|
+
type: "text",
|
|
28403
|
+
label: "Card link label",
|
|
28404
|
+
required: false,
|
|
28405
|
+
multiline: false,
|
|
28406
|
+
maxLength: 40,
|
|
28407
|
+
ui: { intent: "content" }
|
|
28408
|
+
},
|
|
28409
|
+
{
|
|
28410
|
+
id: "ctaHref",
|
|
28411
|
+
type: "text",
|
|
28412
|
+
label: "Custom card link",
|
|
28413
|
+
required: false,
|
|
28414
|
+
multiline: false,
|
|
28415
|
+
maxLength: 160,
|
|
28416
|
+
ui: { intent: "behavior" }
|
|
28417
|
+
}
|
|
28418
|
+
];
|
|
28419
|
+
var offeringsPreviewFields = [
|
|
28420
|
+
...sectionHeaderFields("Offerings"),
|
|
28421
|
+
{
|
|
28422
|
+
id: "itemLimit",
|
|
28423
|
+
type: "select",
|
|
28424
|
+
label: "Items per card",
|
|
28425
|
+
required: false,
|
|
28426
|
+
multiple: false,
|
|
28427
|
+
defaultValue: OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT,
|
|
28428
|
+
options: [
|
|
28429
|
+
{ value: "1", label: "1 item" },
|
|
28430
|
+
{ value: "2", label: "2 items" },
|
|
28431
|
+
{ value: "3", label: "3 items" },
|
|
28432
|
+
{ value: "4", label: "4 items" },
|
|
28433
|
+
{ value: "5", label: "5 items" },
|
|
28434
|
+
{ value: "6", label: "6 items" }
|
|
28435
|
+
],
|
|
28436
|
+
ui: { intent: "display" }
|
|
28437
|
+
},
|
|
28438
|
+
{
|
|
28439
|
+
id: "groupOverrides",
|
|
28440
|
+
type: "repeater",
|
|
28441
|
+
label: "Card overrides",
|
|
28442
|
+
description: "Edit card copy, order, or visibility for enabled offering presets.",
|
|
28443
|
+
required: false,
|
|
28444
|
+
maxItems: 5,
|
|
28445
|
+
itemLabel: "Offering card",
|
|
28446
|
+
itemLabelSource: "title",
|
|
28447
|
+
allowConversion: false,
|
|
28448
|
+
ui: { intent: "content" },
|
|
28449
|
+
schema: { fields: groupOverrideFields }
|
|
28450
|
+
},
|
|
28451
|
+
{
|
|
28452
|
+
id: "buttonVariant",
|
|
28453
|
+
type: "select",
|
|
28454
|
+
label: "Item button style",
|
|
28455
|
+
required: false,
|
|
28456
|
+
multiple: false,
|
|
28457
|
+
defaultValue: "primary",
|
|
28458
|
+
options: [
|
|
28459
|
+
{ value: "primary", label: "Primary" },
|
|
28460
|
+
{ value: "secondary", label: "Secondary" },
|
|
28461
|
+
{ value: "outline", label: "Outline" },
|
|
28462
|
+
{ value: "link", label: "Link" }
|
|
28463
|
+
],
|
|
28464
|
+
ui: { intent: "display" }
|
|
28465
|
+
},
|
|
28466
|
+
{
|
|
28467
|
+
id: "buttonText",
|
|
28468
|
+
type: "text",
|
|
28469
|
+
label: "Item button text",
|
|
28470
|
+
required: false,
|
|
28471
|
+
multiline: false,
|
|
28472
|
+
defaultValue: OFFERINGS_PREVIEW_DEFAULT_BUTTON_TEXT,
|
|
28473
|
+
maxLength: 40,
|
|
28474
|
+
ui: { intent: "content" }
|
|
28475
|
+
},
|
|
28476
|
+
{
|
|
28477
|
+
id: "emptyMessage",
|
|
28478
|
+
type: "text",
|
|
28479
|
+
label: "Empty card message",
|
|
28480
|
+
required: false,
|
|
28481
|
+
multiline: false,
|
|
28482
|
+
defaultValue: OFFERINGS_PREVIEW_DEFAULT_EMPTY_MESSAGE,
|
|
28483
|
+
maxLength: 120,
|
|
28484
|
+
ui: { intent: "content" }
|
|
28485
|
+
},
|
|
28486
|
+
cardStylesField({
|
|
28487
|
+
id: "_cardStyles",
|
|
28488
|
+
label: "Offering card styles"
|
|
28489
|
+
}),
|
|
28490
|
+
sectionStylesField({
|
|
28491
|
+
id: "_sectionStyles",
|
|
28492
|
+
label: "Section styles",
|
|
28493
|
+
renderInHeader: false
|
|
28494
|
+
})
|
|
28495
|
+
];
|
|
28496
|
+
var offeringsPreviewEventDataBindings = Object.fromEntries(
|
|
28497
|
+
OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => [
|
|
28498
|
+
definition.dataKey,
|
|
28499
|
+
{ $bind: { from: `data.${definition.dataKey}` } }
|
|
28500
|
+
])
|
|
28501
|
+
);
|
|
28502
|
+
var offeringsPreviewLayout = [
|
|
28503
|
+
styledSection({
|
|
28504
|
+
children: sectionContainer([
|
|
28505
|
+
text(
|
|
28506
|
+
{ as: "h2", className: "rb-text-center" },
|
|
28507
|
+
bind("content.heading"),
|
|
28508
|
+
when("content.heading")
|
|
28509
|
+
),
|
|
28510
|
+
richText(
|
|
28511
|
+
{ className: "rb-prose rb-max-w-none" },
|
|
28512
|
+
bind("content.description"),
|
|
28513
|
+
when("content.description")
|
|
28514
|
+
),
|
|
28515
|
+
el("offerings-preview", {
|
|
28516
|
+
bookingOfferingPresets: {
|
|
28517
|
+
$bind: { from: "$root.bookingOfferingPresets", fallback: [] }
|
|
28518
|
+
},
|
|
28519
|
+
groupOverrides: { $bind: { from: "content.groupOverrides", fallback: [] } },
|
|
28520
|
+
cardStyles: { $bind: { from: "content._cardStyles" } },
|
|
28521
|
+
itemLimit: { $bind: { from: "content.itemLimit", fallback: OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT } },
|
|
28522
|
+
buttonVariant: { $bind: { from: "content.buttonVariant", fallback: "primary" } },
|
|
28523
|
+
buttonText: { $bind: { from: "content.buttonText", fallback: OFFERINGS_PREVIEW_DEFAULT_BUTTON_TEXT } },
|
|
28524
|
+
emptyMessage: {
|
|
28525
|
+
$bind: {
|
|
28526
|
+
from: "content.emptyMessage",
|
|
28527
|
+
fallback: OFFERINGS_PREVIEW_DEFAULT_EMPTY_MESSAGE
|
|
28528
|
+
}
|
|
28529
|
+
},
|
|
28530
|
+
previewStage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
28531
|
+
routeCandidates: { $bind: { from: "data.routeCandidates" } },
|
|
28532
|
+
courses: { $bind: { from: "data.courses" } },
|
|
28533
|
+
...offeringsPreviewEventDataBindings
|
|
28534
|
+
})
|
|
28535
|
+
], { gap: "lg" }),
|
|
28536
|
+
baseClass: "",
|
|
28537
|
+
spacing: "comfortable"
|
|
28538
|
+
})
|
|
28539
|
+
];
|
|
28540
|
+
var offeringsPreviewConfig = {
|
|
28541
|
+
id: "block.offerings-preview",
|
|
28542
|
+
version: "1.0.0",
|
|
28543
|
+
title: "Offerings Preview",
|
|
27570
28544
|
titleSource: "heading",
|
|
27571
|
-
description: "
|
|
27572
|
-
// Preserve legacy section styles field configuration (renderInHeader: false).
|
|
28545
|
+
description: "Show enabled offering presets as compact cards",
|
|
27573
28546
|
skipSectionStyles: true,
|
|
27574
|
-
additionalFields:
|
|
28547
|
+
additionalFields: offeringsPreviewFields,
|
|
27575
28548
|
styleTokens: { background: "surface", typography: "body", spacing: "md" },
|
|
27576
28549
|
behaviours: {
|
|
27577
28550
|
supportsThemeSwitching: true,
|
|
@@ -27579,71 +28552,68 @@ var eventCalendarConfig = {
|
|
|
27579
28552
|
animation: false,
|
|
27580
28553
|
paletteHidden: false
|
|
27581
28554
|
},
|
|
27582
|
-
category: "
|
|
27583
|
-
tags: [
|
|
27584
|
-
|
|
27585
|
-
|
|
27586
|
-
"month",
|
|
27587
|
-
"week",
|
|
27588
|
-
"schedule",
|
|
27589
|
-
"interactive",
|
|
27590
|
-
"list",
|
|
27591
|
-
"filter"
|
|
27592
|
-
],
|
|
27593
|
-
icon: "CalendarDays",
|
|
27594
|
-
layout: eventCalendarLayout,
|
|
27595
|
-
variants: eventCalendarVariants,
|
|
27596
|
-
defaultVariant: "combined",
|
|
27597
|
-
variantOptions: {
|
|
27598
|
-
combined: { label: "Combined" },
|
|
27599
|
-
month: { label: "Month" },
|
|
27600
|
-
week: { label: "Week" },
|
|
27601
|
-
timetable: { label: "Timetable" },
|
|
27602
|
-
list: { label: "List" }
|
|
27603
|
-
}
|
|
28555
|
+
category: "content",
|
|
28556
|
+
tags: ["offerings", "events", "classes", "workshops", "retreats"],
|
|
28557
|
+
icon: "PanelsTopLeft",
|
|
28558
|
+
layout: offeringsPreviewLayout
|
|
27604
28559
|
};
|
|
27605
|
-
var
|
|
27606
|
-
|
|
27607
|
-
|
|
28560
|
+
var offeringsPreviewManifest = createBlockManifest(offeringsPreviewConfig);
|
|
28561
|
+
var optionalPublicEventsArraySchema = publicEventsArraySchema.optional();
|
|
28562
|
+
var offeringsPreviewEventDataSchemas = Object.fromEntries(
|
|
28563
|
+
OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => [
|
|
28564
|
+
definition.dataKey,
|
|
28565
|
+
optionalPublicEventsArraySchema
|
|
28566
|
+
])
|
|
27608
28567
|
);
|
|
27609
|
-
var
|
|
27610
|
-
|
|
27611
|
-
|
|
28568
|
+
var offeringsPreviewEventDataLoaders = Object.fromEntries(
|
|
28569
|
+
OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => [
|
|
28570
|
+
definition.dataKey,
|
|
28571
|
+
eventPresetLoader(definition.preset)
|
|
28572
|
+
])
|
|
28573
|
+
);
|
|
28574
|
+
var offeringsPreviewBlockDefinition = {
|
|
28575
|
+
manifest: offeringsPreviewManifest,
|
|
27612
28576
|
dataSchemas: {
|
|
27613
|
-
|
|
28577
|
+
...offeringsPreviewEventDataSchemas,
|
|
28578
|
+
routeCandidates: publicRouteCandidatesSchema.optional(),
|
|
28579
|
+
courses: publicCoursesArraySchema.optional()
|
|
27614
28580
|
},
|
|
27615
28581
|
dataLoaders: {
|
|
27616
|
-
|
|
27617
|
-
|
|
28582
|
+
...offeringsPreviewEventDataLoaders,
|
|
28583
|
+
routeCandidates: {
|
|
28584
|
+
endpoint: "listPublicRouteCandidates",
|
|
28585
|
+
params: {},
|
|
28586
|
+
mode: "server"
|
|
28587
|
+
},
|
|
28588
|
+
courses: {
|
|
28589
|
+
endpoint: "listPublicCourses",
|
|
27618
28590
|
params: {
|
|
27619
28591
|
siteId: { $bind: { from: "$root.siteId" } },
|
|
27620
|
-
|
|
27621
|
-
|
|
27622
|
-
stage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
27623
|
-
detailLevel: "listing",
|
|
27624
|
-
readProfile: { $bind: { from: "content.variant", fallback: "listing-card" } },
|
|
27625
|
-
// Pass filter params if configured
|
|
27626
|
-
kind: { $bind: { from: "content.kind" } },
|
|
27627
|
-
eventSurface: { $bind: { from: "content.eventSurface" } },
|
|
27628
|
-
eventPresets: {
|
|
27629
|
-
$bind: {
|
|
27630
|
-
from: "content.filterEventPresets",
|
|
27631
|
-
transforms: [{ id: "value.csv" }]
|
|
27632
|
-
}
|
|
27633
|
-
},
|
|
27634
|
-
scheduleScope: { $bind: { from: "content.scheduleScope" } },
|
|
27635
|
-
categoryIds: { $bind: { from: "content.filterCategoryIds" } },
|
|
27636
|
-
staffMemberId: { $bind: { from: "content.filterStaffMemberId" } },
|
|
27637
|
-
venueId: { $bind: { from: "content.filterVenueId" } }
|
|
28592
|
+
limit: { $bind: { from: "content.itemLimit", fallback: OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT } },
|
|
28593
|
+
stage: { $bind: { from: "$root.previewStage", fallback: "published" } }
|
|
27638
28594
|
},
|
|
27639
28595
|
mode: "server"
|
|
27640
28596
|
}
|
|
27641
|
-
}
|
|
27642
|
-
runtime: eventCalendarBlockRuntime
|
|
28597
|
+
}
|
|
27643
28598
|
};
|
|
28599
|
+
function eventPresetLoader(preset2) {
|
|
28600
|
+
return {
|
|
28601
|
+
endpoint: "listPublicEvents",
|
|
28602
|
+
params: {
|
|
28603
|
+
siteId: { $bind: { from: "$root.siteId" } },
|
|
28604
|
+
limit: { $bind: { from: "content.itemLimit", fallback: OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT } },
|
|
28605
|
+
stage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
28606
|
+
detailLevel: "listing",
|
|
28607
|
+
readProfile: "listing-card",
|
|
28608
|
+
kind: "events",
|
|
28609
|
+
eventPresets: preset2
|
|
28610
|
+
},
|
|
28611
|
+
mode: "server"
|
|
28612
|
+
};
|
|
28613
|
+
}
|
|
27644
28614
|
|
|
27645
28615
|
// ../blocks/src/system/blocks/embed.ts
|
|
27646
|
-
import { z as
|
|
28616
|
+
import { z as z54 } from "zod";
|
|
27647
28617
|
var embedFields = [
|
|
27648
28618
|
// Section heading
|
|
27649
28619
|
parseFieldDefinition({
|
|
@@ -27778,7 +28748,7 @@ var embedFields = [
|
|
|
27778
28748
|
ui: { intent: "display" }
|
|
27779
28749
|
})
|
|
27780
28750
|
];
|
|
27781
|
-
var
|
|
28751
|
+
var embedLayout2 = styledSection({
|
|
27782
28752
|
children: sectionContainer([
|
|
27783
28753
|
// Heading
|
|
27784
28754
|
text(
|
|
@@ -27866,7 +28836,7 @@ var embedManifest = createBlockManifest({
|
|
|
27866
28836
|
category: "content",
|
|
27867
28837
|
titleSource: "heading",
|
|
27868
28838
|
additionalFields: embedFields,
|
|
27869
|
-
layout:
|
|
28839
|
+
layout: embedLayout2,
|
|
27870
28840
|
description: "Embed content entries from any content type. Sites provide custom layouts via block overrides.",
|
|
27871
28841
|
tags: ["embed", "content", "dynamic", "collection", "entries", "listing"],
|
|
27872
28842
|
icon: "LayoutList",
|
|
@@ -27874,18 +28844,18 @@ var embedManifest = createBlockManifest({
|
|
|
27874
28844
|
spacing: "lg"
|
|
27875
28845
|
}
|
|
27876
28846
|
});
|
|
27877
|
-
var embedEntrySchema =
|
|
27878
|
-
id:
|
|
27879
|
-
identifier:
|
|
27880
|
-
title:
|
|
27881
|
-
slug:
|
|
27882
|
-
content:
|
|
27883
|
-
publishedAt:
|
|
28847
|
+
var embedEntrySchema = z54.object({
|
|
28848
|
+
id: z54.string(),
|
|
28849
|
+
identifier: z54.string(),
|
|
28850
|
+
title: z54.string(),
|
|
28851
|
+
slug: z54.string().nullable().optional(),
|
|
28852
|
+
content: z54.record(z54.string(), z54.unknown()).optional(),
|
|
28853
|
+
publishedAt: z54.string().nullable().optional()
|
|
27884
28854
|
});
|
|
27885
28855
|
var embedBlockDefinition = {
|
|
27886
28856
|
manifest: embedManifest,
|
|
27887
28857
|
dataSchemas: {
|
|
27888
|
-
entries:
|
|
28858
|
+
entries: z54.array(embedEntrySchema).optional()
|
|
27889
28859
|
},
|
|
27890
28860
|
dataLoaders: {
|
|
27891
28861
|
entries: {
|
|
@@ -29060,58 +30030,58 @@ var fileDownloadBlockDefinition = {
|
|
|
29060
30030
|
};
|
|
29061
30031
|
|
|
29062
30032
|
// ../blocks/src/system/blocks/shop.ts
|
|
29063
|
-
import { z as
|
|
30033
|
+
import { z as z58 } from "zod";
|
|
29064
30034
|
|
|
29065
30035
|
// ../blocks/src/system/runtime/nodes/shop.interactive.ts
|
|
29066
|
-
import { z as
|
|
30036
|
+
import { z as z57 } from "zod";
|
|
29067
30037
|
|
|
29068
30038
|
// ../blocks/src/system/blocks/products/shared.ts
|
|
29069
|
-
import { z as
|
|
29070
|
-
var publicProductVariantSchema =
|
|
29071
|
-
id:
|
|
29072
|
-
title:
|
|
29073
|
-
sku:
|
|
29074
|
-
priceCents:
|
|
29075
|
-
stockQuantity:
|
|
29076
|
-
soldOut:
|
|
29077
|
-
});
|
|
29078
|
-
var publicProductSchema =
|
|
29079
|
-
id:
|
|
29080
|
-
contentEntryId:
|
|
29081
|
-
title:
|
|
29082
|
-
slug:
|
|
29083
|
-
path:
|
|
29084
|
-
status:
|
|
29085
|
-
priceCents:
|
|
29086
|
-
currency:
|
|
29087
|
-
productType:
|
|
29088
|
-
requiresShipping:
|
|
29089
|
-
hasVariants:
|
|
29090
|
-
trackInventory:
|
|
29091
|
-
soldOut:
|
|
29092
|
-
category:
|
|
29093
|
-
id:
|
|
29094
|
-
name:
|
|
29095
|
-
slug:
|
|
30039
|
+
import { z as z55 } from "zod";
|
|
30040
|
+
var publicProductVariantSchema = z55.object({
|
|
30041
|
+
id: z55.string(),
|
|
30042
|
+
title: z55.string(),
|
|
30043
|
+
sku: z55.string().nullable(),
|
|
30044
|
+
priceCents: z55.number(),
|
|
30045
|
+
stockQuantity: z55.number().nullable(),
|
|
30046
|
+
soldOut: z55.boolean()
|
|
30047
|
+
});
|
|
30048
|
+
var publicProductSchema = z55.object({
|
|
30049
|
+
id: z55.string(),
|
|
30050
|
+
contentEntryId: z55.string().nullable(),
|
|
30051
|
+
title: z55.string(),
|
|
30052
|
+
slug: z55.string(),
|
|
30053
|
+
path: z55.string().nullable(),
|
|
30054
|
+
status: z55.enum(["draft", "active"]),
|
|
30055
|
+
priceCents: z55.number(),
|
|
30056
|
+
currency: z55.string(),
|
|
30057
|
+
productType: z55.enum(["physical", "digital"]),
|
|
30058
|
+
requiresShipping: z55.boolean(),
|
|
30059
|
+
hasVariants: z55.boolean(),
|
|
30060
|
+
trackInventory: z55.boolean(),
|
|
30061
|
+
soldOut: z55.boolean(),
|
|
30062
|
+
category: z55.object({
|
|
30063
|
+
id: z55.string(),
|
|
30064
|
+
name: z55.string(),
|
|
30065
|
+
slug: z55.string()
|
|
29096
30066
|
}).nullable(),
|
|
29097
|
-
summary:
|
|
29098
|
-
badges:
|
|
29099
|
-
ctaLabel:
|
|
29100
|
-
body:
|
|
29101
|
-
gallery:
|
|
29102
|
-
|
|
29103
|
-
url:
|
|
29104
|
-
alt:
|
|
30067
|
+
summary: z55.string().nullable(),
|
|
30068
|
+
badges: z55.array(z55.string()),
|
|
30069
|
+
ctaLabel: z55.string().nullable(),
|
|
30070
|
+
body: z55.unknown().nullable(),
|
|
30071
|
+
gallery: z55.array(
|
|
30072
|
+
z55.object({
|
|
30073
|
+
url: z55.string(),
|
|
30074
|
+
alt: z55.string().nullable()
|
|
29105
30075
|
})
|
|
29106
30076
|
),
|
|
29107
|
-
variants:
|
|
30077
|
+
variants: z55.array(publicProductVariantSchema)
|
|
29108
30078
|
});
|
|
29109
|
-
var publicProductsResponseSchema =
|
|
29110
|
-
products:
|
|
30079
|
+
var publicProductsResponseSchema = z55.object({
|
|
30080
|
+
products: z55.array(publicProductSchema)
|
|
29111
30081
|
});
|
|
29112
30082
|
|
|
29113
30083
|
// ../blocks/src/system/runtime/api/creditProducts.ts
|
|
29114
|
-
function
|
|
30084
|
+
function assertNever3(value) {
|
|
29115
30085
|
throw new Error(`Unhandled credit product case: ${String(value)}`);
|
|
29116
30086
|
}
|
|
29117
30087
|
function useCasesFromModules(modules) {
|
|
@@ -29144,7 +30114,7 @@ function getCreditProductCreditUnit(useCase) {
|
|
|
29144
30114
|
perCreditSuffix: "credit"
|
|
29145
30115
|
};
|
|
29146
30116
|
default:
|
|
29147
|
-
return
|
|
30117
|
+
return assertNever3(useCase);
|
|
29148
30118
|
}
|
|
29149
30119
|
}
|
|
29150
30120
|
function deriveCreditProductLabels(products, options = {}) {
|
|
@@ -29171,27 +30141,27 @@ function deriveCreditProductLabels(products, options = {}) {
|
|
|
29171
30141
|
}
|
|
29172
30142
|
|
|
29173
30143
|
// ../blocks/src/system/runtime/nodes/shop-commerce.shared.ts
|
|
29174
|
-
import { z as
|
|
29175
|
-
var storedProductCartItemSchema =
|
|
29176
|
-
kind:
|
|
29177
|
-
productId:
|
|
29178
|
-
productCategoryId:
|
|
29179
|
-
variantId:
|
|
29180
|
-
title:
|
|
29181
|
-
variantTitle:
|
|
29182
|
-
quantity:
|
|
29183
|
-
unitPriceCents:
|
|
29184
|
-
currency:
|
|
29185
|
-
imageUrl:
|
|
29186
|
-
soldOut:
|
|
29187
|
-
});
|
|
29188
|
-
var storedPassCartItemSchema =
|
|
29189
|
-
kind:
|
|
29190
|
-
passId:
|
|
29191
|
-
title:
|
|
29192
|
-
quantity:
|
|
29193
|
-
unitPriceCents:
|
|
29194
|
-
currency:
|
|
30144
|
+
import { z as z56 } from "zod";
|
|
30145
|
+
var storedProductCartItemSchema = z56.object({
|
|
30146
|
+
kind: z56.literal("product"),
|
|
30147
|
+
productId: z56.string().min(1),
|
|
30148
|
+
productCategoryId: z56.string().min(1).optional().nullable(),
|
|
30149
|
+
variantId: z56.string().min(1).optional().nullable(),
|
|
30150
|
+
title: z56.string().min(1),
|
|
30151
|
+
variantTitle: z56.string().optional().nullable(),
|
|
30152
|
+
quantity: z56.number().finite(),
|
|
30153
|
+
unitPriceCents: z56.number().finite(),
|
|
30154
|
+
currency: z56.string().min(1),
|
|
30155
|
+
imageUrl: z56.string().optional().nullable(),
|
|
30156
|
+
soldOut: z56.boolean().optional()
|
|
30157
|
+
});
|
|
30158
|
+
var storedPassCartItemSchema = z56.object({
|
|
30159
|
+
kind: z56.literal("pass"),
|
|
30160
|
+
passId: z56.string().min(1),
|
|
30161
|
+
title: z56.string().min(1),
|
|
30162
|
+
quantity: z56.number().finite().optional(),
|
|
30163
|
+
unitPriceCents: z56.number().finite(),
|
|
30164
|
+
currency: z56.string().min(1)
|
|
29195
30165
|
});
|
|
29196
30166
|
function deriveCommerceCheckoutState(state) {
|
|
29197
30167
|
if (state.items.length === 0) {
|
|
@@ -29430,219 +30400,219 @@ function formatValidity(days) {
|
|
|
29430
30400
|
}
|
|
29431
30401
|
|
|
29432
30402
|
// ../blocks/src/system/runtime/nodes/shop.interactive.ts
|
|
29433
|
-
var shopModeSchema =
|
|
29434
|
-
var contentEntrySchema3 =
|
|
29435
|
-
id:
|
|
29436
|
-
slug:
|
|
30403
|
+
var shopModeSchema = z57.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
|
|
30404
|
+
var contentEntrySchema3 = z57.object({
|
|
30405
|
+
id: z57.string().nullable().optional(),
|
|
30406
|
+
slug: z57.string().nullable().optional()
|
|
29437
30407
|
}).nullable();
|
|
29438
|
-
var shopSourceSchema =
|
|
29439
|
-
className:
|
|
30408
|
+
var shopSourceSchema = z57.object({
|
|
30409
|
+
className: z57.string().nullable().optional(),
|
|
29440
30410
|
mode: shopModeSchema.optional(),
|
|
29441
|
-
heading:
|
|
29442
|
-
productSlug:
|
|
29443
|
-
showPasses:
|
|
29444
|
-
showMemberships:
|
|
29445
|
-
layout:
|
|
29446
|
-
columns:
|
|
29447
|
-
showDescriptions:
|
|
29448
|
-
showSummary:
|
|
29449
|
-
showBody:
|
|
29450
|
-
showBadges:
|
|
29451
|
-
showPrices:
|
|
29452
|
-
showValidityPeriod:
|
|
29453
|
-
showPricePerCredit:
|
|
29454
|
-
passesHeading:
|
|
29455
|
-
membershipsHeading:
|
|
29456
|
-
buyButtonText:
|
|
29457
|
-
addButtonText:
|
|
29458
|
-
passPurchaseMode:
|
|
29459
|
-
subscribeButtonText:
|
|
29460
|
-
emptyStateText:
|
|
29461
|
-
checkoutButtonText:
|
|
29462
|
-
clearButtonText:
|
|
29463
|
-
submitButtonText:
|
|
30411
|
+
heading: z57.string().nullable().optional(),
|
|
30412
|
+
productSlug: z57.string().nullable().optional(),
|
|
30413
|
+
showPasses: z57.boolean().optional(),
|
|
30414
|
+
showMemberships: z57.boolean().optional(),
|
|
30415
|
+
layout: z57.enum(["grid", "list"]).optional(),
|
|
30416
|
+
columns: z57.string().optional(),
|
|
30417
|
+
showDescriptions: z57.boolean().optional(),
|
|
30418
|
+
showSummary: z57.boolean().optional(),
|
|
30419
|
+
showBody: z57.boolean().optional(),
|
|
30420
|
+
showBadges: z57.boolean().optional(),
|
|
30421
|
+
showPrices: z57.boolean().optional(),
|
|
30422
|
+
showValidityPeriod: z57.boolean().optional(),
|
|
30423
|
+
showPricePerCredit: z57.boolean().nullable().optional(),
|
|
30424
|
+
passesHeading: z57.string().optional(),
|
|
30425
|
+
membershipsHeading: z57.string().optional(),
|
|
30426
|
+
buyButtonText: z57.string().optional(),
|
|
30427
|
+
addButtonText: z57.string().optional(),
|
|
30428
|
+
passPurchaseMode: z57.enum(["add_to_cart", "buy_now"]).optional(),
|
|
30429
|
+
subscribeButtonText: z57.string().optional(),
|
|
30430
|
+
emptyStateText: z57.string().optional(),
|
|
30431
|
+
checkoutButtonText: z57.string().optional(),
|
|
30432
|
+
clearButtonText: z57.string().optional(),
|
|
30433
|
+
submitButtonText: z57.string().optional(),
|
|
29464
30434
|
contentEntry: contentEntrySchema3.optional(),
|
|
29465
|
-
passes:
|
|
29466
|
-
memberships:
|
|
29467
|
-
products:
|
|
29468
|
-
siteId:
|
|
29469
|
-
apiBaseUrl:
|
|
30435
|
+
passes: z57.array(publicPassProductSchema).nullable().optional(),
|
|
30436
|
+
memberships: z57.array(publicMembershipProductSchema).nullable().optional(),
|
|
30437
|
+
products: z57.array(publicProductSchema).nullable().optional(),
|
|
30438
|
+
siteId: z57.string().optional(),
|
|
30439
|
+
apiBaseUrl: z57.string().optional(),
|
|
29470
30440
|
stage: previewStageSchema.optional()
|
|
29471
30441
|
});
|
|
29472
|
-
var productVariantOptionDisplaySchema =
|
|
29473
|
-
id:
|
|
29474
|
-
label:
|
|
29475
|
-
soldOut:
|
|
29476
|
-
});
|
|
29477
|
-
var productCardDisplaySchema =
|
|
29478
|
-
productId:
|
|
29479
|
-
title:
|
|
29480
|
-
path:
|
|
29481
|
-
summary:
|
|
29482
|
-
priceLabel:
|
|
29483
|
-
badges:
|
|
29484
|
-
image:
|
|
29485
|
-
url:
|
|
29486
|
-
alt:
|
|
30442
|
+
var productVariantOptionDisplaySchema = z57.object({
|
|
30443
|
+
id: z57.string(),
|
|
30444
|
+
label: z57.string(),
|
|
30445
|
+
soldOut: z57.boolean()
|
|
30446
|
+
});
|
|
30447
|
+
var productCardDisplaySchema = z57.object({
|
|
30448
|
+
productId: z57.string(),
|
|
30449
|
+
title: z57.string(),
|
|
30450
|
+
path: z57.string().nullable(),
|
|
30451
|
+
summary: z57.string().nullable(),
|
|
30452
|
+
priceLabel: z57.string().nullable(),
|
|
30453
|
+
badges: z57.array(z57.string()),
|
|
30454
|
+
image: z57.object({
|
|
30455
|
+
url: z57.string(),
|
|
30456
|
+
alt: z57.string().nullable()
|
|
29487
30457
|
}).nullable(),
|
|
29488
|
-
variantOptions:
|
|
29489
|
-
selectedVariantId:
|
|
29490
|
-
selectionLabel:
|
|
29491
|
-
actionLabel:
|
|
29492
|
-
soldOut:
|
|
29493
|
-
});
|
|
29494
|
-
var productListDisplaySchema =
|
|
29495
|
-
kind:
|
|
29496
|
-
state:
|
|
29497
|
-
heading:
|
|
29498
|
-
className:
|
|
29499
|
-
layout:
|
|
29500
|
-
columns:
|
|
29501
|
-
emptyMessage:
|
|
29502
|
-
cards:
|
|
29503
|
-
});
|
|
29504
|
-
var productDetailDisplaySchema =
|
|
29505
|
-
|
|
29506
|
-
kind:
|
|
29507
|
-
state:
|
|
29508
|
-
heading:
|
|
29509
|
-
className:
|
|
29510
|
-
emptyMessage:
|
|
30458
|
+
variantOptions: z57.array(productVariantOptionDisplaySchema),
|
|
30459
|
+
selectedVariantId: z57.string().nullable(),
|
|
30460
|
+
selectionLabel: z57.string(),
|
|
30461
|
+
actionLabel: z57.string(),
|
|
30462
|
+
soldOut: z57.boolean()
|
|
30463
|
+
});
|
|
30464
|
+
var productListDisplaySchema = z57.object({
|
|
30465
|
+
kind: z57.literal("product-list"),
|
|
30466
|
+
state: z57.enum(["empty", "ready"]),
|
|
30467
|
+
heading: z57.string().nullable(),
|
|
30468
|
+
className: z57.string().nullable(),
|
|
30469
|
+
layout: z57.enum(["grid", "list"]),
|
|
30470
|
+
columns: z57.string(),
|
|
30471
|
+
emptyMessage: z57.string(),
|
|
30472
|
+
cards: z57.array(productCardDisplaySchema)
|
|
30473
|
+
});
|
|
30474
|
+
var productDetailDisplaySchema = z57.discriminatedUnion("state", [
|
|
30475
|
+
z57.object({
|
|
30476
|
+
kind: z57.literal("product-detail"),
|
|
30477
|
+
state: z57.literal("empty"),
|
|
30478
|
+
heading: z57.string().nullable(),
|
|
30479
|
+
className: z57.string().nullable(),
|
|
30480
|
+
emptyMessage: z57.string()
|
|
29511
30481
|
}),
|
|
29512
|
-
|
|
29513
|
-
kind:
|
|
29514
|
-
state:
|
|
29515
|
-
heading:
|
|
29516
|
-
className:
|
|
29517
|
-
title:
|
|
29518
|
-
priceLabel:
|
|
29519
|
-
summary:
|
|
29520
|
-
badges:
|
|
29521
|
-
categoryLabel:
|
|
29522
|
-
gallery:
|
|
29523
|
-
url:
|
|
29524
|
-
alt:
|
|
30482
|
+
z57.object({
|
|
30483
|
+
kind: z57.literal("product-detail"),
|
|
30484
|
+
state: z57.literal("ready"),
|
|
30485
|
+
heading: z57.string().nullable(),
|
|
30486
|
+
className: z57.string().nullable(),
|
|
30487
|
+
title: z57.string(),
|
|
30488
|
+
priceLabel: z57.string(),
|
|
30489
|
+
summary: z57.string().nullable(),
|
|
30490
|
+
badges: z57.array(z57.string()),
|
|
30491
|
+
categoryLabel: z57.string().nullable(),
|
|
30492
|
+
gallery: z57.array(z57.object({
|
|
30493
|
+
url: z57.string(),
|
|
30494
|
+
alt: z57.string().nullable()
|
|
29525
30495
|
})),
|
|
29526
|
-
variantOptions:
|
|
29527
|
-
selectedVariantId:
|
|
29528
|
-
selectionLabel:
|
|
29529
|
-
actionLabel:
|
|
29530
|
-
soldOut:
|
|
29531
|
-
body:
|
|
30496
|
+
variantOptions: z57.array(productVariantOptionDisplaySchema),
|
|
30497
|
+
selectedVariantId: z57.string().nullable(),
|
|
30498
|
+
selectionLabel: z57.string(),
|
|
30499
|
+
actionLabel: z57.string(),
|
|
30500
|
+
soldOut: z57.boolean(),
|
|
30501
|
+
body: z57.unknown().nullable()
|
|
29532
30502
|
})
|
|
29533
30503
|
]);
|
|
29534
|
-
var passCardDisplaySchema =
|
|
29535
|
-
id:
|
|
29536
|
-
title:
|
|
29537
|
-
description:
|
|
29538
|
-
priceLabel:
|
|
29539
|
-
creditsLabel:
|
|
29540
|
-
perCreditLabel:
|
|
29541
|
-
validityLabel:
|
|
29542
|
-
actionLabel:
|
|
29543
|
-
});
|
|
29544
|
-
var membershipCardDisplaySchema =
|
|
29545
|
-
id:
|
|
29546
|
-
title:
|
|
29547
|
-
description:
|
|
29548
|
-
priceLabel:
|
|
29549
|
-
intervalLabel:
|
|
29550
|
-
actionLabel:
|
|
29551
|
-
});
|
|
29552
|
-
var passesMembershipsDisplaySchema =
|
|
29553
|
-
kind:
|
|
29554
|
-
state:
|
|
29555
|
-
className:
|
|
29556
|
-
layout:
|
|
29557
|
-
columns:
|
|
29558
|
-
emptyMessage:
|
|
29559
|
-
passesHeading:
|
|
29560
|
-
membershipsHeading:
|
|
29561
|
-
passes:
|
|
29562
|
-
memberships:
|
|
29563
|
-
});
|
|
29564
|
-
var cartLineDisplaySchema =
|
|
29565
|
-
key:
|
|
29566
|
-
title:
|
|
29567
|
-
priceLabel:
|
|
29568
|
-
quantity:
|
|
29569
|
-
quantityEditable:
|
|
29570
|
-
});
|
|
29571
|
-
var cartDisplaySchema =
|
|
29572
|
-
kind:
|
|
29573
|
-
state:
|
|
29574
|
-
heading:
|
|
29575
|
-
className:
|
|
29576
|
-
emptyMessage:
|
|
29577
|
-
supportText:
|
|
29578
|
-
items:
|
|
29579
|
-
subtotalLabel:
|
|
29580
|
-
checkoutButtonText:
|
|
29581
|
-
clearButtonText:
|
|
29582
|
-
});
|
|
29583
|
-
var checkoutDisplaySchema =
|
|
29584
|
-
kind:
|
|
29585
|
-
state:
|
|
29586
|
-
heading:
|
|
29587
|
-
className:
|
|
29588
|
-
message:
|
|
29589
|
-
submitButtonText:
|
|
29590
|
-
});
|
|
29591
|
-
var passesMembershipsHydrationSchema =
|
|
29592
|
-
passes:
|
|
29593
|
-
memberships:
|
|
29594
|
-
passPurchaseMode:
|
|
29595
|
-
});
|
|
29596
|
-
var productListHydrationSchema =
|
|
29597
|
-
products:
|
|
29598
|
-
showSummary:
|
|
29599
|
-
showBadges:
|
|
29600
|
-
showPrices:
|
|
29601
|
-
addButtonText:
|
|
29602
|
-
});
|
|
29603
|
-
var productDetailHydrationSchema =
|
|
29604
|
-
products:
|
|
29605
|
-
productId:
|
|
29606
|
-
showSummary:
|
|
29607
|
-
showBadges:
|
|
29608
|
-
showBody:
|
|
29609
|
-
addButtonText:
|
|
29610
|
-
});
|
|
29611
|
-
var cartHydrationSchema =
|
|
29612
|
-
emptyStateText:
|
|
29613
|
-
checkoutButtonText:
|
|
29614
|
-
clearButtonText:
|
|
29615
|
-
});
|
|
29616
|
-
var checkoutHydrationSchema =
|
|
29617
|
-
emptyStateText:
|
|
29618
|
-
submitButtonText:
|
|
29619
|
-
});
|
|
29620
|
-
var passesMembershipsRenderSchema =
|
|
30504
|
+
var passCardDisplaySchema = z57.object({
|
|
30505
|
+
id: z57.string(),
|
|
30506
|
+
title: z57.string(),
|
|
30507
|
+
description: z57.string().nullable(),
|
|
30508
|
+
priceLabel: z57.string(),
|
|
30509
|
+
creditsLabel: z57.string(),
|
|
30510
|
+
perCreditLabel: z57.string().nullable(),
|
|
30511
|
+
validityLabel: z57.string().nullable(),
|
|
30512
|
+
actionLabel: z57.string()
|
|
30513
|
+
});
|
|
30514
|
+
var membershipCardDisplaySchema = z57.object({
|
|
30515
|
+
id: z57.string(),
|
|
30516
|
+
title: z57.string(),
|
|
30517
|
+
description: z57.string().nullable(),
|
|
30518
|
+
priceLabel: z57.string(),
|
|
30519
|
+
intervalLabel: z57.string(),
|
|
30520
|
+
actionLabel: z57.string()
|
|
30521
|
+
});
|
|
30522
|
+
var passesMembershipsDisplaySchema = z57.object({
|
|
30523
|
+
kind: z57.literal("passes-memberships"),
|
|
30524
|
+
state: z57.enum(["empty", "ready"]),
|
|
30525
|
+
className: z57.string().nullable(),
|
|
30526
|
+
layout: z57.enum(["grid", "list"]),
|
|
30527
|
+
columns: z57.string(),
|
|
30528
|
+
emptyMessage: z57.string(),
|
|
30529
|
+
passesHeading: z57.string(),
|
|
30530
|
+
membershipsHeading: z57.string(),
|
|
30531
|
+
passes: z57.array(passCardDisplaySchema),
|
|
30532
|
+
memberships: z57.array(membershipCardDisplaySchema)
|
|
30533
|
+
});
|
|
30534
|
+
var cartLineDisplaySchema = z57.object({
|
|
30535
|
+
key: z57.string(),
|
|
30536
|
+
title: z57.string(),
|
|
30537
|
+
priceLabel: z57.string(),
|
|
30538
|
+
quantity: z57.number(),
|
|
30539
|
+
quantityEditable: z57.boolean()
|
|
30540
|
+
});
|
|
30541
|
+
var cartDisplaySchema = z57.object({
|
|
30542
|
+
kind: z57.literal("cart"),
|
|
30543
|
+
state: z57.enum(["empty", "ready"]),
|
|
30544
|
+
heading: z57.string().nullable(),
|
|
30545
|
+
className: z57.string().nullable(),
|
|
30546
|
+
emptyMessage: z57.string(),
|
|
30547
|
+
supportText: z57.string().nullable(),
|
|
30548
|
+
items: z57.array(cartLineDisplaySchema),
|
|
30549
|
+
subtotalLabel: z57.string().nullable(),
|
|
30550
|
+
checkoutButtonText: z57.string(),
|
|
30551
|
+
clearButtonText: z57.string()
|
|
30552
|
+
});
|
|
30553
|
+
var checkoutDisplaySchema = z57.object({
|
|
30554
|
+
kind: z57.literal("checkout"),
|
|
30555
|
+
state: z57.enum(["empty", "blocked", "ready"]),
|
|
30556
|
+
heading: z57.string().nullable(),
|
|
30557
|
+
className: z57.string().nullable(),
|
|
30558
|
+
message: z57.string().nullable(),
|
|
30559
|
+
submitButtonText: z57.string()
|
|
30560
|
+
});
|
|
30561
|
+
var passesMembershipsHydrationSchema = z57.object({
|
|
30562
|
+
passes: z57.array(publicPassProductSchema),
|
|
30563
|
+
memberships: z57.array(publicMembershipProductSchema),
|
|
30564
|
+
passPurchaseMode: z57.enum(["add_to_cart", "buy_now"])
|
|
30565
|
+
});
|
|
30566
|
+
var productListHydrationSchema = z57.object({
|
|
30567
|
+
products: z57.array(publicProductSchema),
|
|
30568
|
+
showSummary: z57.boolean(),
|
|
30569
|
+
showBadges: z57.boolean(),
|
|
30570
|
+
showPrices: z57.boolean(),
|
|
30571
|
+
addButtonText: z57.string()
|
|
30572
|
+
});
|
|
30573
|
+
var productDetailHydrationSchema = z57.object({
|
|
30574
|
+
products: z57.array(publicProductSchema),
|
|
30575
|
+
productId: z57.string().nullable(),
|
|
30576
|
+
showSummary: z57.boolean(),
|
|
30577
|
+
showBadges: z57.boolean(),
|
|
30578
|
+
showBody: z57.boolean(),
|
|
30579
|
+
addButtonText: z57.string()
|
|
30580
|
+
});
|
|
30581
|
+
var cartHydrationSchema = z57.object({
|
|
30582
|
+
emptyStateText: z57.string(),
|
|
30583
|
+
checkoutButtonText: z57.string(),
|
|
30584
|
+
clearButtonText: z57.string()
|
|
30585
|
+
});
|
|
30586
|
+
var checkoutHydrationSchema = z57.object({
|
|
30587
|
+
emptyStateText: z57.string(),
|
|
30588
|
+
submitButtonText: z57.string()
|
|
30589
|
+
});
|
|
30590
|
+
var passesMembershipsRenderSchema = z57.object({
|
|
29621
30591
|
display: passesMembershipsDisplaySchema,
|
|
29622
30592
|
hydration: passesMembershipsHydrationSchema
|
|
29623
30593
|
});
|
|
29624
|
-
var productListRenderSchema =
|
|
30594
|
+
var productListRenderSchema = z57.object({
|
|
29625
30595
|
display: productListDisplaySchema,
|
|
29626
30596
|
hydration: productListHydrationSchema
|
|
29627
30597
|
});
|
|
29628
|
-
var productDetailRenderSchema =
|
|
30598
|
+
var productDetailRenderSchema = z57.object({
|
|
29629
30599
|
display: productDetailDisplaySchema,
|
|
29630
30600
|
hydration: productDetailHydrationSchema
|
|
29631
30601
|
});
|
|
29632
|
-
var cartRenderSchema =
|
|
30602
|
+
var cartRenderSchema = z57.object({
|
|
29633
30603
|
display: cartDisplaySchema,
|
|
29634
30604
|
hydration: cartHydrationSchema
|
|
29635
30605
|
});
|
|
29636
|
-
var checkoutRenderSchema =
|
|
30606
|
+
var checkoutRenderSchema = z57.object({
|
|
29637
30607
|
display: checkoutDisplaySchema,
|
|
29638
30608
|
hydration: checkoutHydrationSchema
|
|
29639
30609
|
});
|
|
29640
30610
|
function resolveShowPricePerCredit(source) {
|
|
29641
30611
|
return source.showPricePerCredit ?? true;
|
|
29642
30612
|
}
|
|
29643
|
-
var shopIslandMetaCodec = createZodCodec(
|
|
29644
|
-
siteId:
|
|
29645
|
-
apiBaseUrl:
|
|
30613
|
+
var shopIslandMetaCodec = createZodCodec(z57.object({
|
|
30614
|
+
siteId: z57.string().optional(),
|
|
30615
|
+
apiBaseUrl: z57.string().optional(),
|
|
29646
30616
|
stage: previewStageSchema.optional()
|
|
29647
30617
|
}));
|
|
29648
30618
|
var shopIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl", "stage");
|
|
@@ -30024,9 +30994,9 @@ var shopBlockDefinition = {
|
|
|
30024
30994
|
runtime: shopBlockRuntime,
|
|
30025
30995
|
dataSchemas: {
|
|
30026
30996
|
// listPublicPasses returns { passes: [...] }
|
|
30027
|
-
passes:
|
|
30997
|
+
passes: z58.object({ passes: z58.array(publicPassProductSchema) }).optional(),
|
|
30028
30998
|
// listPublicMemberships returns { memberships: [...] }
|
|
30029
|
-
memberships:
|
|
30999
|
+
memberships: z58.object({ memberships: z58.array(publicMembershipProductSchema) }).optional()
|
|
30030
31000
|
},
|
|
30031
31001
|
dataLoaders: {
|
|
30032
31002
|
// Load passes for display
|
|
@@ -30049,7 +31019,7 @@ var shopBlockDefinition = {
|
|
|
30049
31019
|
};
|
|
30050
31020
|
|
|
30051
31021
|
// ../blocks/src/system/blocks/product-list.ts
|
|
30052
|
-
import { z as
|
|
31022
|
+
import { z as z59 } from "zod";
|
|
30053
31023
|
var productListManifest = createBlockManifest({
|
|
30054
31024
|
id: "block.product-list",
|
|
30055
31025
|
version: "1.0.0",
|
|
@@ -30191,7 +31161,7 @@ var productListBlockDefinition = {
|
|
|
30191
31161
|
}
|
|
30192
31162
|
}
|
|
30193
31163
|
};
|
|
30194
|
-
var productListDataSchema =
|
|
31164
|
+
var productListDataSchema = z59.object({
|
|
30195
31165
|
products: publicProductsResponseSchema.optional()
|
|
30196
31166
|
});
|
|
30197
31167
|
|
|
@@ -30461,72 +31431,72 @@ var checkoutBlockDefinition = {
|
|
|
30461
31431
|
};
|
|
30462
31432
|
|
|
30463
31433
|
// ../blocks/src/system/runtime/nodes/gifting.interactive.ts
|
|
30464
|
-
import { z as
|
|
30465
|
-
var publicGiftCardOfferSchema =
|
|
30466
|
-
id:
|
|
30467
|
-
kind:
|
|
30468
|
-
title:
|
|
30469
|
-
description:
|
|
30470
|
-
sortOrder:
|
|
30471
|
-
giftCard:
|
|
30472
|
-
fixedDenominations:
|
|
30473
|
-
customAmountEnabled:
|
|
30474
|
-
customAmountMinCents:
|
|
30475
|
-
customAmountMaxCents:
|
|
31434
|
+
import { z as z60 } from "zod";
|
|
31435
|
+
var publicGiftCardOfferSchema = z60.object({
|
|
31436
|
+
id: z60.string(),
|
|
31437
|
+
kind: z60.literal("gift_card"),
|
|
31438
|
+
title: z60.string(),
|
|
31439
|
+
description: z60.string().nullable(),
|
|
31440
|
+
sortOrder: z60.number().int(),
|
|
31441
|
+
giftCard: z60.object({
|
|
31442
|
+
fixedDenominations: z60.array(z60.number().int().positive()),
|
|
31443
|
+
customAmountEnabled: z60.boolean(),
|
|
31444
|
+
customAmountMinCents: z60.number().int().positive(),
|
|
31445
|
+
customAmountMaxCents: z60.number().int().positive()
|
|
30476
31446
|
}),
|
|
30477
|
-
voucher:
|
|
30478
|
-
});
|
|
30479
|
-
var publicVoucherOfferSchema =
|
|
30480
|
-
id:
|
|
30481
|
-
kind:
|
|
30482
|
-
title:
|
|
30483
|
-
description:
|
|
30484
|
-
sortOrder:
|
|
30485
|
-
giftCard:
|
|
30486
|
-
voucher:
|
|
30487
|
-
purchaseAmountCents:
|
|
31447
|
+
voucher: z60.null()
|
|
31448
|
+
});
|
|
31449
|
+
var publicVoucherOfferSchema = z60.object({
|
|
31450
|
+
id: z60.string(),
|
|
31451
|
+
kind: z60.literal("voucher"),
|
|
31452
|
+
title: z60.string(),
|
|
31453
|
+
description: z60.string().nullable(),
|
|
31454
|
+
sortOrder: z60.number().int(),
|
|
31455
|
+
giftCard: z60.null(),
|
|
31456
|
+
voucher: z60.object({
|
|
31457
|
+
purchaseAmountCents: z60.number().int().positive()
|
|
30488
31458
|
})
|
|
30489
31459
|
});
|
|
30490
|
-
var publicGiftingOffersResponseSchema =
|
|
30491
|
-
currency:
|
|
30492
|
-
giftCards:
|
|
30493
|
-
vouchers:
|
|
31460
|
+
var publicGiftingOffersResponseSchema = z60.object({
|
|
31461
|
+
currency: z60.string(),
|
|
31462
|
+
giftCards: z60.array(publicGiftCardOfferSchema),
|
|
31463
|
+
vouchers: z60.array(publicVoucherOfferSchema)
|
|
30494
31464
|
});
|
|
30495
|
-
var giftingSourceSchema =
|
|
30496
|
-
siteId:
|
|
30497
|
-
apiBaseUrl:
|
|
31465
|
+
var giftingSourceSchema = z60.object({
|
|
31466
|
+
siteId: z60.string().optional(),
|
|
31467
|
+
apiBaseUrl: z60.string().optional(),
|
|
30498
31468
|
offers: publicGiftingOffersResponseSchema.nullable().optional(),
|
|
30499
|
-
className:
|
|
30500
|
-
heading:
|
|
30501
|
-
intro:
|
|
30502
|
-
giftCardsHeading:
|
|
30503
|
-
vouchersHeading:
|
|
30504
|
-
emptyStateText:
|
|
30505
|
-
checkoutButtonText:
|
|
30506
|
-
successMessage:
|
|
30507
|
-
});
|
|
30508
|
-
var giftingDisplaySchema =
|
|
30509
|
-
kind:
|
|
30510
|
-
state:
|
|
30511
|
-
className:
|
|
30512
|
-
heading:
|
|
30513
|
-
intro:
|
|
30514
|
-
giftCardsHeading:
|
|
30515
|
-
vouchersHeading:
|
|
30516
|
-
emptyStateText:
|
|
30517
|
-
});
|
|
30518
|
-
var giftingHydrationSchema =
|
|
31469
|
+
className: z60.string().nullable().optional(),
|
|
31470
|
+
heading: z60.string().nullable().optional(),
|
|
31471
|
+
intro: z60.string().nullable().optional(),
|
|
31472
|
+
giftCardsHeading: z60.string().nullable().optional(),
|
|
31473
|
+
vouchersHeading: z60.string().nullable().optional(),
|
|
31474
|
+
emptyStateText: z60.string().nullable().optional(),
|
|
31475
|
+
checkoutButtonText: z60.string().nullable().optional(),
|
|
31476
|
+
successMessage: z60.string().nullable().optional()
|
|
31477
|
+
});
|
|
31478
|
+
var giftingDisplaySchema = z60.object({
|
|
31479
|
+
kind: z60.literal("gifting"),
|
|
31480
|
+
state: z60.literal("ready"),
|
|
31481
|
+
className: z60.string().nullable(),
|
|
31482
|
+
heading: z60.string(),
|
|
31483
|
+
intro: z60.string().nullable(),
|
|
31484
|
+
giftCardsHeading: z60.string(),
|
|
31485
|
+
vouchersHeading: z60.string(),
|
|
31486
|
+
emptyStateText: z60.string()
|
|
31487
|
+
});
|
|
31488
|
+
var giftingHydrationSchema = z60.object({
|
|
30519
31489
|
offers: publicGiftingOffersResponseSchema.nullable(),
|
|
30520
|
-
checkoutButtonText:
|
|
30521
|
-
successMessage:
|
|
31490
|
+
checkoutButtonText: z60.string(),
|
|
31491
|
+
successMessage: z60.string()
|
|
30522
31492
|
});
|
|
30523
|
-
var giftingRenderSchema =
|
|
31493
|
+
var giftingRenderSchema = z60.object({
|
|
30524
31494
|
display: giftingDisplaySchema,
|
|
30525
31495
|
hydration: giftingHydrationSchema
|
|
30526
31496
|
});
|
|
30527
|
-
var giftingIslandMetaCodec = createZodCodec(
|
|
30528
|
-
siteId:
|
|
30529
|
-
apiBaseUrl:
|
|
31497
|
+
var giftingIslandMetaCodec = createZodCodec(z60.object({
|
|
31498
|
+
siteId: z60.string().optional(),
|
|
31499
|
+
apiBaseUrl: z60.string().optional()
|
|
30530
31500
|
}));
|
|
30531
31501
|
var giftingIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
30532
31502
|
"siteId",
|
|
@@ -30697,7 +31667,7 @@ var giftingBlockDefinition = {
|
|
|
30697
31667
|
};
|
|
30698
31668
|
|
|
30699
31669
|
// ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
|
|
30700
|
-
import { z as
|
|
31670
|
+
import { z as z61 } from "zod";
|
|
30701
31671
|
|
|
30702
31672
|
// ../blocks/src/system/runtime/nodes/newsletter-form.types.ts
|
|
30703
31673
|
function getPresetFields(preset2, options) {
|
|
@@ -30751,49 +31721,49 @@ function withOptionalPhone(fields3, includePhone) {
|
|
|
30751
31721
|
}
|
|
30752
31722
|
|
|
30753
31723
|
// ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
|
|
30754
|
-
var newsletterPresetSchema =
|
|
30755
|
-
var newsletterFieldSchema =
|
|
30756
|
-
id:
|
|
30757
|
-
type:
|
|
30758
|
-
label:
|
|
30759
|
-
required:
|
|
30760
|
-
placeholder:
|
|
30761
|
-
});
|
|
30762
|
-
var newsletterSourceSchema =
|
|
30763
|
-
siteId:
|
|
30764
|
-
apiBaseUrl:
|
|
30765
|
-
listId:
|
|
31724
|
+
var newsletterPresetSchema = z61.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
|
|
31725
|
+
var newsletterFieldSchema = z61.object({
|
|
31726
|
+
id: z61.string(),
|
|
31727
|
+
type: z61.enum(["email", "text"]),
|
|
31728
|
+
label: z61.string(),
|
|
31729
|
+
required: z61.boolean(),
|
|
31730
|
+
placeholder: z61.string().optional()
|
|
31731
|
+
});
|
|
31732
|
+
var newsletterSourceSchema = z61.object({
|
|
31733
|
+
siteId: z61.string().optional(),
|
|
31734
|
+
apiBaseUrl: z61.string().optional(),
|
|
31735
|
+
listId: z61.string().nullable().optional(),
|
|
30766
31736
|
preset: newsletterPresetSchema.optional(),
|
|
30767
|
-
includePhone:
|
|
30768
|
-
buttonLabel:
|
|
30769
|
-
successMessage:
|
|
30770
|
-
privacyNote:
|
|
30771
|
-
tags:
|
|
30772
|
-
spamProtectionEnabled:
|
|
30773
|
-
className:
|
|
30774
|
-
});
|
|
30775
|
-
var newsletterDisplaySchema =
|
|
30776
|
-
kind:
|
|
30777
|
-
className:
|
|
30778
|
-
buttonLabel:
|
|
30779
|
-
successMessage:
|
|
30780
|
-
privacyNote:
|
|
30781
|
-
fields:
|
|
30782
|
-
});
|
|
30783
|
-
var newsletterHydrationSchema =
|
|
30784
|
-
listId:
|
|
31737
|
+
includePhone: z61.boolean().optional(),
|
|
31738
|
+
buttonLabel: z61.string().nullable().optional(),
|
|
31739
|
+
successMessage: z61.string().nullable().optional(),
|
|
31740
|
+
privacyNote: z61.string().nullable().optional(),
|
|
31741
|
+
tags: z61.string().nullable().optional(),
|
|
31742
|
+
spamProtectionEnabled: z61.boolean().optional(),
|
|
31743
|
+
className: z61.string().nullable().optional()
|
|
31744
|
+
});
|
|
31745
|
+
var newsletterDisplaySchema = z61.object({
|
|
31746
|
+
kind: z61.literal("newsletter-form"),
|
|
31747
|
+
className: z61.string().nullable(),
|
|
31748
|
+
buttonLabel: z61.string(),
|
|
31749
|
+
successMessage: z61.string().nullable(),
|
|
31750
|
+
privacyNote: z61.string().nullable(),
|
|
31751
|
+
fields: z61.array(newsletterFieldSchema)
|
|
31752
|
+
});
|
|
31753
|
+
var newsletterHydrationSchema = z61.object({
|
|
31754
|
+
listId: z61.string().nullable().optional(),
|
|
30785
31755
|
preset: newsletterPresetSchema,
|
|
30786
|
-
includePhone:
|
|
30787
|
-
tags:
|
|
30788
|
-
spamProtectionEnabled:
|
|
31756
|
+
includePhone: z61.boolean(),
|
|
31757
|
+
tags: z61.string().nullable().optional(),
|
|
31758
|
+
spamProtectionEnabled: z61.boolean().optional()
|
|
30789
31759
|
});
|
|
30790
|
-
var newsletterRenderSchema =
|
|
31760
|
+
var newsletterRenderSchema = z61.object({
|
|
30791
31761
|
display: newsletterDisplaySchema,
|
|
30792
31762
|
hydration: newsletterHydrationSchema
|
|
30793
31763
|
});
|
|
30794
|
-
var newsletterIslandMetaCodec = createZodCodec(
|
|
30795
|
-
siteId:
|
|
30796
|
-
apiBaseUrl:
|
|
31764
|
+
var newsletterIslandMetaCodec = createZodCodec(z61.object({
|
|
31765
|
+
siteId: z61.string().optional(),
|
|
31766
|
+
apiBaseUrl: z61.string().optional()
|
|
30797
31767
|
}));
|
|
30798
31768
|
var newsletterIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
|
|
30799
31769
|
function buildNewsletterDisplay(source) {
|
|
@@ -30914,23 +31884,23 @@ var newsletterSignupBlockDefinition = {
|
|
|
30914
31884
|
};
|
|
30915
31885
|
|
|
30916
31886
|
// ../blocks/src/system/blocks/team-members.ts
|
|
30917
|
-
import { z as
|
|
31887
|
+
import { z as z62 } from "zod";
|
|
30918
31888
|
var ITEM_NAME2 = "member";
|
|
30919
31889
|
var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
|
|
30920
31890
|
message: "Team member photos must be image media"
|
|
30921
31891
|
}).nullable();
|
|
30922
|
-
var teamMemberDataSchema =
|
|
30923
|
-
_type:
|
|
30924
|
-
id:
|
|
30925
|
-
name:
|
|
30926
|
-
role:
|
|
30927
|
-
roleLabel:
|
|
30928
|
-
bio:
|
|
30929
|
-
summary:
|
|
31892
|
+
var teamMemberDataSchema = z62.object({
|
|
31893
|
+
_type: z62.literal("teamMember"),
|
|
31894
|
+
id: z62.string(),
|
|
31895
|
+
name: z62.string(),
|
|
31896
|
+
role: z62.string().nullable(),
|
|
31897
|
+
roleLabel: z62.string().nullable(),
|
|
31898
|
+
bio: z62.string().nullable(),
|
|
31899
|
+
summary: z62.string().nullable(),
|
|
30930
31900
|
photo: teamMemberPhotoSchema,
|
|
30931
|
-
profilePath:
|
|
31901
|
+
profilePath: z62.string().nullable()
|
|
30932
31902
|
});
|
|
30933
|
-
var teamMembersDataSchema =
|
|
31903
|
+
var teamMembersDataSchema = z62.array(teamMemberDataSchema);
|
|
30934
31904
|
var dynamicSourceWhen = { equals: "site_staff" };
|
|
30935
31905
|
var manualSourceWhen = { equals: "site_staff", not: true };
|
|
30936
31906
|
var headingNode = text(
|
|
@@ -31700,6 +32670,13 @@ function eventListCapable() {
|
|
|
31700
32670
|
eventListTreatments
|
|
31701
32671
|
});
|
|
31702
32672
|
}
|
|
32673
|
+
function offeringsPreviewCapable() {
|
|
32674
|
+
return declareBlockDesignCapability({
|
|
32675
|
+
sectionSurfaces: "supported",
|
|
32676
|
+
contentFrames: ["plain"],
|
|
32677
|
+
itemSurfaces: "supported"
|
|
32678
|
+
});
|
|
32679
|
+
}
|
|
31703
32680
|
function defaultBoundaryBias(visualWeight) {
|
|
31704
32681
|
return visualWeight === "featured" || visualWeight === "immersive" ? "clear" : "soft";
|
|
31705
32682
|
}
|
|
@@ -31813,6 +32790,13 @@ var systemBlockDefinitionsRaw = [
|
|
|
31813
32790
|
weight: "featured",
|
|
31814
32791
|
bias: "clear",
|
|
31815
32792
|
surfaces: heroSectionSurfaces
|
|
32793
|
+
}),
|
|
32794
|
+
layoutProfile({
|
|
32795
|
+
variantKey: "splitEditorial",
|
|
32796
|
+
family: "split",
|
|
32797
|
+
weight: "featured",
|
|
32798
|
+
bias: "clear",
|
|
32799
|
+
surfaces: heroSectionSurfaces
|
|
31816
32800
|
})
|
|
31817
32801
|
]
|
|
31818
32802
|
})),
|
|
@@ -31907,7 +32891,10 @@ var systemBlockDefinitionsRaw = [
|
|
|
31907
32891
|
})),
|
|
31908
32892
|
withDesignCapability("block.form", formBlockDefinition, panelCapable(), defineBlockDesignMetadata({
|
|
31909
32893
|
flow: conversionFlow,
|
|
31910
|
-
layoutProfiles: [
|
|
32894
|
+
layoutProfiles: [
|
|
32895
|
+
layoutProfile({ variantKey: "default", family: "form", weight: "standard" }),
|
|
32896
|
+
layoutProfile({ variantKey: "two-column", family: "split", weight: "standard" })
|
|
32897
|
+
]
|
|
31911
32898
|
})),
|
|
31912
32899
|
withDesignCapability("block.faq", faqBlockDefinition, withEyebrowCapability(declareBlockDesignCapability({
|
|
31913
32900
|
sectionSurfaces: "supported",
|
|
@@ -31936,7 +32923,10 @@ var systemBlockDefinitionsRaw = [
|
|
|
31936
32923
|
contentFrames: ["plain", "panel"],
|
|
31937
32924
|
itemSurfaces: "supported",
|
|
31938
32925
|
testimonialCardTreatments: ["default", "statement", "non-carded", "accent-quote", "editorial-serif-quote"],
|
|
31939
|
-
|
|
32926
|
+
headingDecorationCapability: {
|
|
32927
|
+
kind: "supported",
|
|
32928
|
+
families: ["short-center-rule"]
|
|
32929
|
+
}
|
|
31940
32930
|
}), defineBlockDesignMetadata({
|
|
31941
32931
|
flow: proofFlow,
|
|
31942
32932
|
layoutProfiles: [
|
|
@@ -32039,6 +33029,10 @@ var systemBlockDefinitionsRaw = [
|
|
|
32039
33029
|
layoutProfile({ variantKey: "timetable", family: "stack", weight: "standard" })
|
|
32040
33030
|
]
|
|
32041
33031
|
})),
|
|
33032
|
+
withDesignCapability("block.offerings-preview", offeringsPreviewBlockDefinition, offeringsPreviewCapable(), defineBlockDesignMetadata({
|
|
33033
|
+
flow: offeringsFlow,
|
|
33034
|
+
layoutProfiles: [layoutProfile({ variantKey: "cards", family: "grid", weight: "standard" })]
|
|
33035
|
+
})),
|
|
32042
33036
|
// Friendly wrapper blocks
|
|
32043
33037
|
withDesignCapability("block.team-members", teamMembersBlockDefinition, sectionOnly(), defineBlockDesignMetadata({
|
|
32044
33038
|
flow: proofFlow,
|
|
@@ -32562,32 +33556,8 @@ var backgroundTransforms = [
|
|
|
32562
33556
|
{
|
|
32563
33557
|
id: "background.resolveColorsStyle",
|
|
32564
33558
|
kind: "formatter",
|
|
32565
|
-
summary: "Resolve
|
|
32566
|
-
run: (value, _options, context) =>
|
|
32567
|
-
if (!value || typeof value !== "object") {
|
|
32568
|
-
return {};
|
|
32569
|
-
}
|
|
32570
|
-
const input = value;
|
|
32571
|
-
const textColor = isString(input.textColor) ? input.textColor.trim() : null;
|
|
32572
|
-
const headingColor = isString(input.headingColor) ? input.headingColor.trim() : null;
|
|
32573
|
-
const style = {};
|
|
32574
|
-
if (textColor) {
|
|
32575
|
-
const resolvedText = resolveBackgroundColorValue(textColor, context);
|
|
32576
|
-
if (resolvedText) {
|
|
32577
|
-
style.color = resolvedText;
|
|
32578
|
-
style["--section-text-color"] = resolvedText;
|
|
32579
|
-
if (headingColor) {
|
|
32580
|
-
const resolvedHeading = resolveBackgroundColorValue(headingColor, context);
|
|
32581
|
-
if (resolvedHeading) {
|
|
32582
|
-
style["--section-heading-color"] = resolvedHeading;
|
|
32583
|
-
}
|
|
32584
|
-
} else {
|
|
32585
|
-
style["--section-heading-color"] = resolvedText;
|
|
32586
|
-
}
|
|
32587
|
-
}
|
|
32588
|
-
}
|
|
32589
|
-
return style;
|
|
32590
|
-
}
|
|
33559
|
+
summary: "Resolve section foreground colors from a background object into scoped CSS vars",
|
|
33560
|
+
run: (value, _options, context) => resolveSectionForegroundStyles(value, context)
|
|
32591
33561
|
},
|
|
32592
33562
|
{
|
|
32593
33563
|
id: "background.resolveAllowOverflow",
|
|
@@ -32815,6 +33785,104 @@ var builtinTransformDefinitions = [
|
|
|
32815
33785
|
];
|
|
32816
33786
|
var defaultTransforms = createTransformRegistry(builtinTransformDefinitions);
|
|
32817
33787
|
|
|
33788
|
+
// ../blocks/src/system/data/linkedContentEntries.ts
|
|
33789
|
+
var LINKED_CONTENT_ENTRY_META_KEY = "__rbLinkedContentEntry";
|
|
33790
|
+
function coerceLinkedContentEntriesPayload(payload) {
|
|
33791
|
+
if (!isRecord3(payload)) return payload;
|
|
33792
|
+
const response = payload;
|
|
33793
|
+
if (!Array.isArray(response.entries)) return payload;
|
|
33794
|
+
const contentType = parsePublicContentTypeMeta(response.contentType);
|
|
33795
|
+
if (!contentType) return response.entries;
|
|
33796
|
+
return response.entries.map((entry) => enrichLinkedContentEntry(entry, contentType));
|
|
33797
|
+
}
|
|
33798
|
+
function enrichLinkedContentEntry(entry, contentType) {
|
|
33799
|
+
if (!isRecord3(entry)) return entry;
|
|
33800
|
+
const entryId = typeof entry.id === "string" ? entry.id : null;
|
|
33801
|
+
if (!entryId) return entry;
|
|
33802
|
+
const title = typeof entry.title === "string" && entry.title.trim().length > 0 ? entry.title : entryId;
|
|
33803
|
+
const optimisticHash = typeof entry.optimisticHash === "string" && entry.optimisticHash.length > 0 ? entry.optimisticHash : null;
|
|
33804
|
+
const meta = {
|
|
33805
|
+
kind: "linked-content-entry",
|
|
33806
|
+
entryId,
|
|
33807
|
+
contentTypeKey: contentType.key,
|
|
33808
|
+
contentTypeLabel: contentTypeKeyToLabel(contentType.key),
|
|
33809
|
+
title,
|
|
33810
|
+
optimisticHash,
|
|
33811
|
+
support: resolveLinkedContentEditSupport(contentType),
|
|
33812
|
+
contentType
|
|
33813
|
+
};
|
|
33814
|
+
return {
|
|
33815
|
+
...entry,
|
|
33816
|
+
[LINKED_CONTENT_ENTRY_META_KEY]: meta
|
|
33817
|
+
};
|
|
33818
|
+
}
|
|
33819
|
+
function resolveLinkedContentEditSupport(contentType) {
|
|
33820
|
+
if (contentType.fields.length === 0) {
|
|
33821
|
+
return { kind: "unsupported-missing-schema", reason: "Content type has no public field metadata." };
|
|
33822
|
+
}
|
|
33823
|
+
const metadata = contentType.previewLinkedEntryEditing;
|
|
33824
|
+
if (!metadata) {
|
|
33825
|
+
return { kind: "unsupported-content-type", reason: "Content type has not enabled linked-entry preview editing." };
|
|
33826
|
+
}
|
|
33827
|
+
switch (metadata.kind) {
|
|
33828
|
+
case "generic":
|
|
33829
|
+
return { kind: "supported" };
|
|
33830
|
+
case "unsupported-domain-backed":
|
|
33831
|
+
return { kind: "unsupported-domain-backed", reason: metadata.reason };
|
|
33832
|
+
default:
|
|
33833
|
+
return assertNever(metadata);
|
|
33834
|
+
}
|
|
33835
|
+
}
|
|
33836
|
+
function contentTypeKeyToLabel(key) {
|
|
33837
|
+
const singular = key.endsWith("ies") ? `${key.slice(0, -3)}y` : key.endsWith("s") ? key.slice(0, -1) : key;
|
|
33838
|
+
return singular.split(/[-_\s]+/).filter((part) => part.length > 0).map((part, index) => index === 0 ? capitalize(part) : part.toLowerCase()).join(" ");
|
|
33839
|
+
}
|
|
33840
|
+
function capitalize(value) {
|
|
33841
|
+
return value.charAt(0).toUpperCase() + value.slice(1).toLowerCase();
|
|
33842
|
+
}
|
|
33843
|
+
function parsePublicContentTypeMeta(value) {
|
|
33844
|
+
if (!isRecord3(value)) return null;
|
|
33845
|
+
if (typeof value.key !== "string" || value.key.trim().length === 0) return null;
|
|
33846
|
+
return {
|
|
33847
|
+
key: value.key,
|
|
33848
|
+
titleField: typeof value.titleField === "string" ? value.titleField : null,
|
|
33849
|
+
fields: Array.isArray(value.fields) ? value.fields.flatMap(parsePublicContentTypeFieldMeta) : [],
|
|
33850
|
+
previewLinkedEntryEditing: parsePublicContentTypeLinkedEntryEditing(value.previewLinkedEntryEditing)
|
|
33851
|
+
};
|
|
33852
|
+
}
|
|
33853
|
+
function parsePublicContentTypeLinkedEntryEditing(value) {
|
|
33854
|
+
if (!isRecord3(value) || typeof value.kind !== "string") return null;
|
|
33855
|
+
switch (value.kind) {
|
|
33856
|
+
case "generic":
|
|
33857
|
+
return { kind: "generic" };
|
|
33858
|
+
case "unsupported-domain-backed":
|
|
33859
|
+
return {
|
|
33860
|
+
kind: "unsupported-domain-backed",
|
|
33861
|
+
reason: typeof value.reason === "string" ? value.reason : "Domain-backed entries need a dedicated editor workflow."
|
|
33862
|
+
};
|
|
33863
|
+
default:
|
|
33864
|
+
return null;
|
|
33865
|
+
}
|
|
33866
|
+
}
|
|
33867
|
+
function parsePublicContentTypeFieldMeta(value) {
|
|
33868
|
+
if (!isRecord3(value)) return [];
|
|
33869
|
+
if (typeof value.id !== "string" || typeof value.type !== "string") return [];
|
|
33870
|
+
return [{
|
|
33871
|
+
id: value.id,
|
|
33872
|
+
type: value.type,
|
|
33873
|
+
mediaKinds: parseStringArray(value.mediaKinds),
|
|
33874
|
+
fileKinds: parseStringArray(value.fileKinds)
|
|
33875
|
+
}];
|
|
33876
|
+
}
|
|
33877
|
+
function parseStringArray(value) {
|
|
33878
|
+
if (value === null || typeof value === "undefined") return null;
|
|
33879
|
+
if (!Array.isArray(value)) return null;
|
|
33880
|
+
return value.filter((item) => typeof item === "string");
|
|
33881
|
+
}
|
|
33882
|
+
function isRecord3(value) {
|
|
33883
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
33884
|
+
}
|
|
33885
|
+
|
|
32818
33886
|
// ../theme-core/src/navigation/presets.ts
|
|
32819
33887
|
var NAV_LINK_PRESETS = {
|
|
32820
33888
|
/**
|
|
@@ -32973,9 +34041,21 @@ var NAV_DROPDOWN_CONTAINER_RAIL_CSS_RULES = [
|
|
|
32973
34041
|
];
|
|
32974
34042
|
|
|
32975
34043
|
// ../theme-core/src/layout/generateLayoutCss.ts
|
|
32976
|
-
var
|
|
34044
|
+
var classicWaveTransitionMask = svgDataUrl(
|
|
32977
34045
|
"<svg viewBox='0 0 1440 72' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><path d='M0 72V46C130 55 260 24 420 30C590 36 690 62 860 42C1035 21 1160 47 1305 36C1365 31 1415 33 1440 38V72H0Z' fill='white'/></svg>"
|
|
32978
34046
|
);
|
|
34047
|
+
var balancedWaveTransitionMask = svgDataUrl(
|
|
34048
|
+
"<svg viewBox='0 0 1440 72' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><path d='M0 72V42C120 24 240 24 360 42C480 60 600 60 720 42C840 24 960 24 1080 42C1200 60 1320 60 1440 42V72H0Z' fill='white'/></svg>"
|
|
34049
|
+
);
|
|
34050
|
+
var gentleWaveTransitionMask = svgDataUrl(
|
|
34051
|
+
"<svg viewBox='0 0 1440 72' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><path d='M0 72V43C180 32 300 32 480 43C660 54 780 54 960 43C1140 32 1260 32 1440 43V72H0Z' fill='white'/></svg>"
|
|
34052
|
+
);
|
|
34053
|
+
var boldWaveTransitionMask = svgDataUrl(
|
|
34054
|
+
"<svg viewBox='0 0 1440 72' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><path d='M0 72V44C90 14 270 14 360 44C450 74 630 74 720 44C810 14 990 14 1080 44C1170 74 1350 74 1440 44V72H0Z' fill='white'/></svg>"
|
|
34055
|
+
);
|
|
34056
|
+
var driftWaveTransitionMask = svgDataUrl(
|
|
34057
|
+
"<svg viewBox='0 0 1440 72' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><path d='M0 72V39C115 31 205 54 340 48C505 41 610 16 760 33C920 51 1015 64 1160 44C1280 27 1375 35 1440 50V72H0Z' fill='white'/></svg>"
|
|
34058
|
+
);
|
|
32979
34059
|
function svgDataUrl(svg) {
|
|
32980
34060
|
return `data:image/svg+xml,${encodeURIComponent(svg)}`;
|
|
32981
34061
|
}
|
|
@@ -34754,34 +35834,34 @@ import { Fragment, jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
|
34754
35834
|
var MAX_FONT_UPLOAD_BYTES = 5 * 1024 * 1024;
|
|
34755
35835
|
|
|
34756
35836
|
// ../theme-core/src/runtime/buildThemeRuntimeFromBridge.ts
|
|
34757
|
-
import { z as
|
|
34758
|
-
var themeBridgeConfigSchema =
|
|
34759
|
-
tokens:
|
|
34760
|
-
typography:
|
|
34761
|
-
headingFamily:
|
|
34762
|
-
bodyFamily:
|
|
34763
|
-
headingWeight:
|
|
34764
|
-
bodyWeight:
|
|
35837
|
+
import { z as z63 } from "zod";
|
|
35838
|
+
var themeBridgeConfigSchema = z63.object({
|
|
35839
|
+
tokens: z63.record(z63.string(), z63.string()),
|
|
35840
|
+
typography: z63.object({
|
|
35841
|
+
headingFamily: z63.string().optional(),
|
|
35842
|
+
bodyFamily: z63.string().optional(),
|
|
35843
|
+
headingWeight: z63.number().optional(),
|
|
35844
|
+
bodyWeight: z63.number().optional()
|
|
34765
35845
|
}).optional(),
|
|
34766
|
-
spacing:
|
|
34767
|
-
corners:
|
|
34768
|
-
shadows:
|
|
34769
|
-
components:
|
|
34770
|
-
buttons:
|
|
34771
|
-
|
|
34772
|
-
|
|
34773
|
-
variants:
|
|
35846
|
+
spacing: z63.enum(["comfortable", "standard", "dense"]).optional(),
|
|
35847
|
+
corners: z63.enum(["square", "soft", "rounded", "pill"]).optional(),
|
|
35848
|
+
shadows: z63.enum(["none", "low", "medium", "high"]).optional(),
|
|
35849
|
+
components: z63.object({
|
|
35850
|
+
buttons: z63.union([
|
|
35851
|
+
z63.boolean(),
|
|
35852
|
+
z63.object({
|
|
35853
|
+
variants: z63.array(z63.enum(["primary", "secondary", "outline", "ghost"])).optional()
|
|
34774
35854
|
})
|
|
34775
35855
|
]).optional(),
|
|
34776
|
-
cards:
|
|
34777
|
-
|
|
34778
|
-
|
|
34779
|
-
variants:
|
|
35856
|
+
cards: z63.union([
|
|
35857
|
+
z63.boolean(),
|
|
35858
|
+
z63.object({
|
|
35859
|
+
variants: z63.array(z63.enum(["default", "elevated", "outlined"])).optional()
|
|
34780
35860
|
})
|
|
34781
35861
|
]).optional(),
|
|
34782
|
-
inputs:
|
|
35862
|
+
inputs: z63.boolean().optional()
|
|
34783
35863
|
}).optional(),
|
|
34784
|
-
overrides:
|
|
35864
|
+
overrides: z63.record(z63.string(), z63.string()).optional()
|
|
34785
35865
|
}).passthrough();
|
|
34786
35866
|
|
|
34787
35867
|
// ../theme-core/src/siteChrome.tsx
|
|
@@ -34981,6 +36061,8 @@ function coerceToString(value) {
|
|
|
34981
36061
|
return String(value);
|
|
34982
36062
|
}
|
|
34983
36063
|
function coercePayload(payload) {
|
|
36064
|
+
const linkedContentEntries = coerceLinkedContentEntriesPayload(payload);
|
|
36065
|
+
if (linkedContentEntries !== payload) return linkedContentEntries;
|
|
34984
36066
|
if (payload && typeof payload === "object" && !Array.isArray(payload)) {
|
|
34985
36067
|
const record = payload;
|
|
34986
36068
|
if ("data" in record && typeof record.data !== "function") return record.data;
|
|
@@ -35068,6 +36150,7 @@ var SUPPORTED_LOADER_ENDPOINTS = [
|
|
|
35068
36150
|
"listPublicEvents",
|
|
35069
36151
|
"getPublicEventDetails",
|
|
35070
36152
|
"listPublicCourses",
|
|
36153
|
+
"listPublicRouteCandidates",
|
|
35071
36154
|
"listPublicTeamMembers",
|
|
35072
36155
|
"listPublicProducts",
|
|
35073
36156
|
"listPublicPasses",
|
|
@@ -35128,6 +36211,10 @@ function normalizeLoaderParams(endpoint, params, context) {
|
|
|
35128
36211
|
ensureSiteId(out, context);
|
|
35129
36212
|
return out;
|
|
35130
36213
|
}
|
|
36214
|
+
if (endpoint === "listPublicRouteCandidates") {
|
|
36215
|
+
ensureSiteId(out, context);
|
|
36216
|
+
return out;
|
|
36217
|
+
}
|
|
35131
36218
|
if (endpoint === "getPublishedEntryPreview") {
|
|
35132
36219
|
ensureSiteId(out, context);
|
|
35133
36220
|
return out;
|
|
@@ -35140,17 +36227,17 @@ function normalizeLoaderParams(endpoint, params, context) {
|
|
|
35140
36227
|
function unsafeRetypeZodSchema(schema) {
|
|
35141
36228
|
return schema;
|
|
35142
36229
|
}
|
|
35143
|
-
var navIdListSchema =
|
|
36230
|
+
var navIdListSchema = z64.preprocess((value) => {
|
|
35144
36231
|
if (!Array.isArray(value)) return void 0;
|
|
35145
36232
|
const filtered = value.filter((v) => typeof v === "string" && v.trim().length > 0);
|
|
35146
36233
|
return filtered.length > 0 ? filtered : void 0;
|
|
35147
|
-
},
|
|
35148
|
-
var dashboardNavVisibilityBaseSchema =
|
|
35149
|
-
mode:
|
|
36234
|
+
}, z64.array(z64.string()).max(200).optional());
|
|
36235
|
+
var dashboardNavVisibilityBaseSchema = z64.object({
|
|
36236
|
+
mode: z64.enum(["augment", "restrict"]).optional(),
|
|
35150
36237
|
allowIds: navIdListSchema,
|
|
35151
36238
|
denyIds: navIdListSchema
|
|
35152
36239
|
}).strip();
|
|
35153
|
-
var dashboardNavVisibilityRolesSchema =
|
|
36240
|
+
var dashboardNavVisibilityRolesSchema = z64.object({
|
|
35154
36241
|
administrator: dashboardNavVisibilityBaseSchema.optional(),
|
|
35155
36242
|
editor: dashboardNavVisibilityBaseSchema.optional(),
|
|
35156
36243
|
team_member: dashboardNavVisibilityBaseSchema.optional()
|
|
@@ -35158,63 +36245,63 @@ var dashboardNavVisibilityRolesSchema = z62.object({
|
|
|
35158
36245
|
var dashboardNavVisibilitySchema = dashboardNavVisibilityBaseSchema.extend({
|
|
35159
36246
|
roles: dashboardNavVisibilityRolesSchema
|
|
35160
36247
|
}).strip();
|
|
35161
|
-
var dashboardNavigationConfigSchema =
|
|
36248
|
+
var dashboardNavigationConfigSchema = z64.object({
|
|
35162
36249
|
siteNav: dashboardNavVisibilitySchema.optional(),
|
|
35163
36250
|
settingsNav: dashboardNavVisibilitySchema.optional()
|
|
35164
36251
|
}).strip();
|
|
35165
|
-
var dashboardConfigSchema =
|
|
35166
|
-
previewEditingEnabled:
|
|
36252
|
+
var dashboardConfigSchema = z64.object({
|
|
36253
|
+
previewEditingEnabled: z64.boolean().optional(),
|
|
35167
36254
|
navigation: dashboardNavigationConfigSchema.optional()
|
|
35168
36255
|
}).strip();
|
|
35169
36256
|
var fieldDefinitionInputSchema = unsafeRetypeZodSchema(fieldSchema);
|
|
35170
36257
|
var nodeDefinitionSchema = unsafeRetypeZodSchema(NodeSchema);
|
|
35171
|
-
var sdkLoaderEndpointSchema =
|
|
35172
|
-
var loaderFallbackScalarSchema =
|
|
35173
|
-
|
|
35174
|
-
|
|
35175
|
-
|
|
35176
|
-
|
|
36258
|
+
var sdkLoaderEndpointSchema = z64.enum(SUPPORTED_LOADER_ENDPOINTS);
|
|
36259
|
+
var loaderFallbackScalarSchema = z64.union([
|
|
36260
|
+
z64.string(),
|
|
36261
|
+
z64.number(),
|
|
36262
|
+
z64.boolean(),
|
|
36263
|
+
z64.null()
|
|
35177
36264
|
]);
|
|
35178
|
-
var loaderParamBindingSchema =
|
|
35179
|
-
$bind:
|
|
35180
|
-
from:
|
|
36265
|
+
var loaderParamBindingSchema = z64.object({
|
|
36266
|
+
$bind: z64.object({
|
|
36267
|
+
from: z64.string().min(1, "Binding path is required"),
|
|
35181
36268
|
fallback: loaderFallbackScalarSchema.optional()
|
|
35182
36269
|
})
|
|
35183
36270
|
});
|
|
35184
|
-
var loaderParamValueSchema =
|
|
35185
|
-
|
|
35186
|
-
|
|
35187
|
-
|
|
36271
|
+
var loaderParamValueSchema = z64.union([
|
|
36272
|
+
z64.string(),
|
|
36273
|
+
z64.number(),
|
|
36274
|
+
z64.boolean(),
|
|
35188
36275
|
loaderParamBindingSchema
|
|
35189
36276
|
]);
|
|
35190
|
-
var sdkConfigLoaderSchema =
|
|
36277
|
+
var sdkConfigLoaderSchema = z64.object({
|
|
35191
36278
|
endpoint: sdkLoaderEndpointSchema,
|
|
35192
|
-
params:
|
|
35193
|
-
mode:
|
|
36279
|
+
params: z64.record(z64.string(), loaderParamValueSchema),
|
|
36280
|
+
mode: z64.enum(["server", "client"]).default("server")
|
|
35194
36281
|
});
|
|
35195
|
-
var sdkDataLoadersSchema =
|
|
35196
|
-
var sdkCustomBlockIdSchema =
|
|
36282
|
+
var sdkDataLoadersSchema = z64.record(z64.string(), sdkConfigLoaderSchema).refine((loaders) => Object.keys(loaders).length <= 5, { message: "Maximum 5 data loaders per block" }).optional();
|
|
36283
|
+
var sdkCustomBlockIdSchema = z64.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
|
|
35197
36284
|
message: "Block ID must start with 'custom.' followed by lowercase letters, numbers, or hyphens"
|
|
35198
36285
|
}).transform((value) => value);
|
|
35199
|
-
var sdkCustomBlockInputSchema =
|
|
36286
|
+
var sdkCustomBlockInputSchema = z64.object({
|
|
35200
36287
|
id: sdkCustomBlockIdSchema,
|
|
35201
|
-
title:
|
|
35202
|
-
titleSource:
|
|
35203
|
-
description:
|
|
36288
|
+
title: z64.string().min(1),
|
|
36289
|
+
titleSource: z64.union([z64.string().min(1), z64.array(z64.string().min(1)).min(1)]).optional(),
|
|
36290
|
+
description: z64.string().optional(),
|
|
35204
36291
|
category: blockCategoryEnum,
|
|
35205
|
-
icon:
|
|
35206
|
-
tags:
|
|
36292
|
+
icon: z64.string().optional(),
|
|
36293
|
+
tags: z64.array(z64.string()).optional(),
|
|
35207
36294
|
fields: fieldDefinitionInputSchema.array().min(1),
|
|
35208
36295
|
dataLoaders: sdkDataLoadersSchema,
|
|
35209
36296
|
layout: NodeSchema.optional(),
|
|
35210
|
-
variants:
|
|
35211
|
-
defaultVariant:
|
|
35212
|
-
variantOptions:
|
|
35213
|
-
|
|
35214
|
-
|
|
35215
|
-
label:
|
|
35216
|
-
description:
|
|
35217
|
-
icon:
|
|
36297
|
+
variants: z64.record(z64.string().min(1), NodeSchema).optional(),
|
|
36298
|
+
defaultVariant: z64.string().min(1).optional(),
|
|
36299
|
+
variantOptions: z64.record(
|
|
36300
|
+
z64.string().min(1),
|
|
36301
|
+
z64.object({
|
|
36302
|
+
label: z64.string().min(1).optional(),
|
|
36303
|
+
description: z64.string().min(1).optional(),
|
|
36304
|
+
icon: z64.string().min(1).optional()
|
|
35218
36305
|
})
|
|
35219
36306
|
).optional()
|
|
35220
36307
|
}).superRefine((data, ctx) => {
|
|
@@ -35224,7 +36311,7 @@ var sdkCustomBlockInputSchema = z62.object({
|
|
|
35224
36311
|
const exists = data.fields.some((field) => field.id === source);
|
|
35225
36312
|
if (!exists) {
|
|
35226
36313
|
ctx.addIssue({
|
|
35227
|
-
code:
|
|
36314
|
+
code: z64.ZodIssueCode.custom,
|
|
35228
36315
|
message: `titleSource must reference a valid field ID (got "${source}")`,
|
|
35229
36316
|
path: Array.isArray(data.titleSource) ? ["titleSource", index] : ["titleSource"]
|
|
35230
36317
|
});
|
|
@@ -35233,7 +36320,7 @@ var sdkCustomBlockInputSchema = z62.object({
|
|
|
35233
36320
|
}
|
|
35234
36321
|
if (data.layout && data.variants) {
|
|
35235
36322
|
ctx.addIssue({
|
|
35236
|
-
code:
|
|
36323
|
+
code: z64.ZodIssueCode.custom,
|
|
35237
36324
|
message: "Custom block must define either `layout` or `variants`, not both",
|
|
35238
36325
|
path: ["variants"]
|
|
35239
36326
|
});
|
|
@@ -35242,14 +36329,14 @@ var sdkCustomBlockInputSchema = z62.object({
|
|
|
35242
36329
|
const keys = Object.keys(data.variants);
|
|
35243
36330
|
if (keys.length === 0) {
|
|
35244
36331
|
ctx.addIssue({
|
|
35245
|
-
code:
|
|
36332
|
+
code: z64.ZodIssueCode.custom,
|
|
35246
36333
|
message: "`variants` must contain at least one variant key",
|
|
35247
36334
|
path: ["variants"]
|
|
35248
36335
|
});
|
|
35249
36336
|
}
|
|
35250
36337
|
if (data.defaultVariant && !Object.prototype.hasOwnProperty.call(data.variants, data.defaultVariant)) {
|
|
35251
36338
|
ctx.addIssue({
|
|
35252
|
-
code:
|
|
36339
|
+
code: z64.ZodIssueCode.custom,
|
|
35253
36340
|
message: "`defaultVariant` must be a key present in `variants`",
|
|
35254
36341
|
path: ["defaultVariant"]
|
|
35255
36342
|
});
|
|
@@ -35258,7 +36345,7 @@ var sdkCustomBlockInputSchema = z62.object({
|
|
|
35258
36345
|
for (const key of Object.keys(data.variantOptions)) {
|
|
35259
36346
|
if (!Object.prototype.hasOwnProperty.call(data.variants, key)) {
|
|
35260
36347
|
ctx.addIssue({
|
|
35261
|
-
code:
|
|
36348
|
+
code: z64.ZodIssueCode.custom,
|
|
35262
36349
|
message: "`variantOptions` key must exist in `variants`",
|
|
35263
36350
|
path: ["variantOptions", key]
|
|
35264
36351
|
});
|
|
@@ -35267,78 +36354,78 @@ var sdkCustomBlockInputSchema = z62.object({
|
|
|
35267
36354
|
}
|
|
35268
36355
|
}
|
|
35269
36356
|
});
|
|
35270
|
-
var sdkBlockFieldExtensionInputSchema =
|
|
36357
|
+
var sdkBlockFieldExtensionInputSchema = z64.object({
|
|
35271
36358
|
fields: fieldDefinitionInputSchema.array().min(1)
|
|
35272
36359
|
});
|
|
35273
|
-
var sdkBlockFieldExtensionsInputSchema =
|
|
35274
|
-
|
|
36360
|
+
var sdkBlockFieldExtensionsInputSchema = z64.record(
|
|
36361
|
+
z64.string().min(1),
|
|
35275
36362
|
sdkBlockFieldExtensionInputSchema
|
|
35276
36363
|
);
|
|
35277
|
-
var sdkThemePaletteSchema =
|
|
35278
|
-
var sdkThemeConfigSchema =
|
|
36364
|
+
var sdkThemePaletteSchema = z64.record(z64.string(), z64.string());
|
|
36365
|
+
var sdkThemeConfigSchema = z64.object({
|
|
35279
36366
|
palette: sdkThemePaletteSchema
|
|
35280
36367
|
});
|
|
35281
|
-
var sdkSectionBackgroundSchema =
|
|
35282
|
-
id:
|
|
35283
|
-
label:
|
|
35284
|
-
token:
|
|
36368
|
+
var sdkSectionBackgroundSchema = z64.object({
|
|
36369
|
+
id: z64.string().min(1),
|
|
36370
|
+
label: z64.string().min(1),
|
|
36371
|
+
token: z64.string().min(1)
|
|
35285
36372
|
});
|
|
35286
|
-
var sdkSectionOptionsConfigSchema =
|
|
35287
|
-
backgroundColor:
|
|
35288
|
-
backgroundImage:
|
|
35289
|
-
backgroundGradient:
|
|
35290
|
-
spacing:
|
|
35291
|
-
textColor:
|
|
36373
|
+
var sdkSectionOptionsConfigSchema = z64.object({
|
|
36374
|
+
backgroundColor: z64.boolean().optional(),
|
|
36375
|
+
backgroundImage: z64.boolean().optional(),
|
|
36376
|
+
backgroundGradient: z64.boolean().optional(),
|
|
36377
|
+
spacing: z64.union([z64.array(z64.enum(["compact", "default", "spacious"])), z64.boolean()]).optional(),
|
|
36378
|
+
textColor: z64.boolean().optional()
|
|
35292
36379
|
});
|
|
35293
|
-
var sdkContainerOptionsConfigSchema =
|
|
35294
|
-
maxWidth:
|
|
35295
|
-
alignment:
|
|
36380
|
+
var sdkContainerOptionsConfigSchema = z64.object({
|
|
36381
|
+
maxWidth: z64.union([z64.array(z64.enum(["narrow", "default", "wide", "full"])), z64.boolean()]).optional(),
|
|
36382
|
+
alignment: z64.union([z64.array(z64.enum(["left", "center", "right"])), z64.boolean()]).optional()
|
|
35296
36383
|
});
|
|
35297
|
-
var sdkSiteStyleConfigSchema =
|
|
35298
|
-
sectionBackgrounds:
|
|
36384
|
+
var sdkSiteStyleConfigSchema = z64.object({
|
|
36385
|
+
sectionBackgrounds: z64.array(sdkSectionBackgroundSchema).optional(),
|
|
35299
36386
|
sectionOptions: sdkSectionOptionsConfigSchema.optional(),
|
|
35300
36387
|
containerOptions: sdkContainerOptionsConfigSchema.optional()
|
|
35301
36388
|
});
|
|
35302
|
-
var sdkSiteLayoutConfigSchema =
|
|
35303
|
-
footerBlocks:
|
|
35304
|
-
|
|
35305
|
-
id:
|
|
35306
|
-
kind:
|
|
35307
|
-
content:
|
|
36389
|
+
var sdkSiteLayoutConfigSchema = z64.object({
|
|
36390
|
+
footerBlocks: z64.array(
|
|
36391
|
+
z64.object({
|
|
36392
|
+
id: z64.string().min(1).optional(),
|
|
36393
|
+
kind: z64.string().min(1),
|
|
36394
|
+
content: z64.record(z64.string(), z64.unknown()).optional()
|
|
35308
36395
|
})
|
|
35309
36396
|
).optional()
|
|
35310
36397
|
});
|
|
35311
|
-
var sdkFieldSelectOptionSchema =
|
|
35312
|
-
value:
|
|
35313
|
-
label:
|
|
36398
|
+
var sdkFieldSelectOptionSchema = z64.object({
|
|
36399
|
+
value: z64.string(),
|
|
36400
|
+
label: z64.string()
|
|
35314
36401
|
});
|
|
35315
|
-
var sdkBlockFieldConfigSchema =
|
|
35316
|
-
options:
|
|
36402
|
+
var sdkBlockFieldConfigSchema = z64.object({
|
|
36403
|
+
options: z64.array(sdkFieldSelectOptionSchema).optional()
|
|
35317
36404
|
});
|
|
35318
|
-
var sdkBlockFieldOptionsMapSchema =
|
|
35319
|
-
|
|
36405
|
+
var sdkBlockFieldOptionsMapSchema = z64.record(
|
|
36406
|
+
z64.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
|
|
35320
36407
|
message: "Block ID must be 'block.*' or 'custom.*' format"
|
|
35321
36408
|
}),
|
|
35322
|
-
|
|
36409
|
+
z64.record(z64.string().min(1), sdkBlockFieldConfigSchema)
|
|
35323
36410
|
).optional();
|
|
35324
|
-
var sdkContentTypeTemplateConfigSchema =
|
|
35325
|
-
blocks:
|
|
36411
|
+
var sdkContentTypeTemplateConfigSchema = z64.object({
|
|
36412
|
+
blocks: z64.array(z64.unknown())
|
|
35326
36413
|
}).passthrough();
|
|
35327
|
-
var sdkContentTypeOrderingConfigSchema =
|
|
35328
|
-
mode:
|
|
36414
|
+
var sdkContentTypeOrderingConfigSchema = z64.object({
|
|
36415
|
+
mode: z64.enum(["default", "manual"]).optional()
|
|
35329
36416
|
}).optional();
|
|
35330
|
-
var sdkContentTypeConfigSchema =
|
|
35331
|
-
key:
|
|
35332
|
-
fields:
|
|
36417
|
+
var sdkContentTypeConfigSchema = z64.object({
|
|
36418
|
+
key: z64.string().min(1),
|
|
36419
|
+
fields: z64.array(z64.unknown()),
|
|
35333
36420
|
ordering: sdkContentTypeOrderingConfigSchema,
|
|
35334
36421
|
template: sdkContentTypeTemplateConfigSchema.nullable().optional()
|
|
35335
36422
|
}).passthrough();
|
|
35336
|
-
var sdkContentConfigSchema =
|
|
35337
|
-
contentTypes:
|
|
35338
|
-
pages:
|
|
35339
|
-
entries:
|
|
35340
|
-
navigationMenus:
|
|
35341
|
-
settings:
|
|
36423
|
+
var sdkContentConfigSchema = z64.object({
|
|
36424
|
+
contentTypes: z64.array(sdkContentTypeConfigSchema).optional(),
|
|
36425
|
+
pages: z64.array(z64.unknown()).optional(),
|
|
36426
|
+
entries: z64.array(z64.unknown()).optional(),
|
|
36427
|
+
navigationMenus: z64.array(z64.unknown()).optional(),
|
|
36428
|
+
settings: z64.unknown().optional()
|
|
35342
36429
|
}).passthrough();
|
|
35343
36430
|
var SDK_WORKFLOW_ID_MAX_LENGTH = 120;
|
|
35344
36431
|
var SDK_WORKFLOW_TITLE_MAX_LENGTH = 120;
|
|
@@ -35353,62 +36440,62 @@ var SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH = 120;
|
|
|
35353
36440
|
var SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH = 500;
|
|
35354
36441
|
var SDK_WORKFLOW_ID_PATTERN = /^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/;
|
|
35355
36442
|
var SDK_WORKFLOW_ENDPOINT_PATTERN = /^\//;
|
|
35356
|
-
var sdkWorkflowIdSchema =
|
|
36443
|
+
var sdkWorkflowIdSchema = z64.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
|
|
35357
36444
|
message: "Workflow ID must start with a lowercase letter and use lowercase letters, numbers, dots, underscores, or hyphens"
|
|
35358
36445
|
});
|
|
35359
|
-
var sdkWorkflowEndpointSchema =
|
|
35360
|
-
var sdkWorkflowManualTriggerSchema =
|
|
35361
|
-
type:
|
|
36446
|
+
var sdkWorkflowEndpointSchema = z64.string().min(1).max(SDK_WORKFLOW_ENDPOINT_MAX_LENGTH).regex(SDK_WORKFLOW_ENDPOINT_PATTERN, { message: 'Workflow endpoint must be a site-relative path starting with "/"' });
|
|
36447
|
+
var sdkWorkflowManualTriggerSchema = z64.object({
|
|
36448
|
+
type: z64.literal("manual")
|
|
35362
36449
|
}).strict();
|
|
35363
|
-
var sdkWorkflowTriggerFieldSchema =
|
|
36450
|
+
var sdkWorkflowTriggerFieldSchema = z64.string().trim().min(1).max(SDK_WORKFLOW_TRIGGER_FIELD_MAX_LENGTH).refine((field) => !field.includes("."), {
|
|
35364
36451
|
message: "Workflow trigger fields must be top-level content field IDs, not paths"
|
|
35365
36452
|
});
|
|
35366
|
-
var sdkWorkflowFieldChangedConditionSchema =
|
|
36453
|
+
var sdkWorkflowFieldChangedConditionSchema = z64.object({
|
|
35367
36454
|
field: sdkWorkflowTriggerFieldSchema,
|
|
35368
|
-
changed:
|
|
36455
|
+
changed: z64.literal(true)
|
|
35369
36456
|
}).strict();
|
|
35370
|
-
var sdkWorkflowFieldEmptyConditionSchema =
|
|
36457
|
+
var sdkWorkflowFieldEmptyConditionSchema = z64.object({
|
|
35371
36458
|
field: sdkWorkflowTriggerFieldSchema,
|
|
35372
|
-
isEmpty:
|
|
36459
|
+
isEmpty: z64.boolean()
|
|
35373
36460
|
}).strict();
|
|
35374
|
-
var sdkWorkflowEntryDraftUpdatedTriggerSchema =
|
|
35375
|
-
type:
|
|
35376
|
-
when:
|
|
35377
|
-
|
|
36461
|
+
var sdkWorkflowEntryDraftUpdatedTriggerSchema = z64.object({
|
|
36462
|
+
type: z64.literal("entry.draft.updated"),
|
|
36463
|
+
when: z64.array(
|
|
36464
|
+
z64.union([
|
|
35378
36465
|
sdkWorkflowFieldChangedConditionSchema,
|
|
35379
36466
|
sdkWorkflowFieldEmptyConditionSchema
|
|
35380
36467
|
])
|
|
35381
36468
|
).min(1).max(SDK_WORKFLOW_TRIGGER_CONDITION_MAX_COUNT)
|
|
35382
36469
|
}).strict();
|
|
35383
|
-
var sdkWorkflowTriggerSchema =
|
|
36470
|
+
var sdkWorkflowTriggerSchema = z64.discriminatedUnion("type", [
|
|
35384
36471
|
sdkWorkflowManualTriggerSchema,
|
|
35385
36472
|
sdkWorkflowEntryDraftUpdatedTriggerSchema
|
|
35386
36473
|
]);
|
|
35387
|
-
var sdkWorkflowConfirmationSchema =
|
|
35388
|
-
title:
|
|
35389
|
-
body:
|
|
36474
|
+
var sdkWorkflowConfirmationSchema = z64.object({
|
|
36475
|
+
title: z64.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
|
|
36476
|
+
body: z64.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
|
|
35390
36477
|
}).strict();
|
|
35391
|
-
var sdkWorkflowConfigSchema =
|
|
36478
|
+
var sdkWorkflowConfigSchema = z64.object({
|
|
35392
36479
|
id: sdkWorkflowIdSchema,
|
|
35393
|
-
title:
|
|
35394
|
-
description:
|
|
35395
|
-
contentType:
|
|
36480
|
+
title: z64.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
|
|
36481
|
+
description: z64.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
|
|
36482
|
+
contentType: z64.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
|
|
35396
36483
|
endpoint: sdkWorkflowEndpointSchema,
|
|
35397
|
-
triggers:
|
|
36484
|
+
triggers: z64.array(sdkWorkflowTriggerSchema).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
|
|
35398
36485
|
confirmation: sdkWorkflowConfirmationSchema.optional()
|
|
35399
36486
|
}).strict();
|
|
35400
|
-
var sdkWorkflowsSchema =
|
|
36487
|
+
var sdkWorkflowsSchema = z64.array(sdkWorkflowConfigSchema).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
|
|
35401
36488
|
const ids = workflows.map((workflow) => workflow.id);
|
|
35402
36489
|
return ids.length === new Set(ids).size;
|
|
35403
36490
|
}, { message: "Workflow IDs must be unique" }).optional();
|
|
35404
|
-
var riverbankSiteConfigInputSchema =
|
|
35405
|
-
siteId:
|
|
35406
|
-
previewUrl:
|
|
35407
|
-
liveUrl:
|
|
36491
|
+
var riverbankSiteConfigInputSchema = z64.object({
|
|
36492
|
+
siteId: z64.string().uuid(),
|
|
36493
|
+
previewUrl: z64.string().url().optional(),
|
|
36494
|
+
liveUrl: z64.string().url().optional(),
|
|
35408
36495
|
theme: sdkThemeConfigSchema.optional(),
|
|
35409
36496
|
styles: sdkSiteStyleConfigSchema.optional(),
|
|
35410
36497
|
layout: sdkSiteLayoutConfigSchema.optional(),
|
|
35411
|
-
customBlocks:
|
|
36498
|
+
customBlocks: z64.array(sdkCustomBlockInputSchema).max(100, "Maximum 100 custom blocks per site").refine((blocks) => {
|
|
35412
36499
|
const ids = blocks.map((b) => b.id);
|
|
35413
36500
|
return ids.length === new Set(ids).size;
|
|
35414
36501
|
}, { message: "Block IDs must be unique" }).optional(),
|
|
@@ -35416,50 +36503,50 @@ var riverbankSiteConfigInputSchema = z62.object({
|
|
|
35416
36503
|
blockFieldExtensions: sdkBlockFieldExtensionsInputSchema.optional(),
|
|
35417
36504
|
workflows: sdkWorkflowsSchema,
|
|
35418
36505
|
content: sdkContentConfigSchema.optional(),
|
|
35419
|
-
contentDir:
|
|
35420
|
-
sync:
|
|
35421
|
-
existingEntries:
|
|
36506
|
+
contentDir: z64.string().optional(),
|
|
36507
|
+
sync: z64.object({
|
|
36508
|
+
existingEntries: z64.enum(["skip", "update"]).optional()
|
|
35422
36509
|
}).optional(),
|
|
35423
|
-
deploy:
|
|
35424
|
-
verifyCommand:
|
|
35425
|
-
prebuildOutput:
|
|
36510
|
+
deploy: z64.object({
|
|
36511
|
+
verifyCommand: z64.string().optional(),
|
|
36512
|
+
prebuildOutput: z64.string().optional()
|
|
35426
36513
|
}).optional(),
|
|
35427
|
-
themeSource:
|
|
35428
|
-
activeTheme:
|
|
35429
|
-
enablePortal:
|
|
36514
|
+
themeSource: z64.enum(["local", "cms"]).optional(),
|
|
36515
|
+
activeTheme: z64.string().optional(),
|
|
36516
|
+
enablePortal: z64.boolean().optional(),
|
|
35430
36517
|
dashboard: dashboardConfigSchema.optional()
|
|
35431
36518
|
}).strict();
|
|
35432
|
-
var pushSdkConfigBodySchema =
|
|
36519
|
+
var pushSdkConfigBodySchema = z64.object({
|
|
35433
36520
|
config: riverbankSiteConfigInputSchema,
|
|
35434
|
-
forceContentTypes:
|
|
36521
|
+
forceContentTypes: z64.boolean().optional()
|
|
35435
36522
|
}).strict();
|
|
35436
36523
|
|
|
35437
36524
|
// ../api/src/siteOnboarding.ts
|
|
35438
|
-
import { z as
|
|
36525
|
+
import { z as z65 } from "zod";
|
|
35439
36526
|
var LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS = {
|
|
35440
36527
|
configure_appointments: {
|
|
35441
36528
|
requirementId: "configure_appointments",
|
|
35442
36529
|
reason: "launch_anyway"
|
|
35443
36530
|
}
|
|
35444
36531
|
};
|
|
35445
|
-
var acknowledgeLaunchRequirementRequestSchema =
|
|
36532
|
+
var acknowledgeLaunchRequirementRequestSchema = z65.discriminatedUnion(
|
|
35446
36533
|
"requirementId",
|
|
35447
36534
|
[
|
|
35448
|
-
|
|
35449
|
-
requirementId:
|
|
36535
|
+
z65.object({
|
|
36536
|
+
requirementId: z65.literal("review_generated_site")
|
|
35450
36537
|
}),
|
|
35451
|
-
|
|
35452
|
-
requirementId:
|
|
36538
|
+
z65.object({
|
|
36539
|
+
requirementId: z65.literal(
|
|
35453
36540
|
LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.requirementId
|
|
35454
36541
|
),
|
|
35455
|
-
overrideReason:
|
|
36542
|
+
overrideReason: z65.literal(
|
|
35456
36543
|
LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.reason
|
|
35457
36544
|
)
|
|
35458
36545
|
})
|
|
35459
36546
|
]
|
|
35460
36547
|
);
|
|
35461
|
-
var goLiveSiteRequestSchema =
|
|
35462
|
-
acceptExtraSiteCharge:
|
|
36548
|
+
var goLiveSiteRequestSchema = z65.object({
|
|
36549
|
+
acceptExtraSiteCharge: z65.boolean().optional()
|
|
35463
36550
|
});
|
|
35464
36551
|
|
|
35465
36552
|
// ../surfaces/src/index.ts
|
|
@@ -35543,7 +36630,7 @@ var COURSE_ENROLLMENT_REFUND_FAILED_CODES = [
|
|
|
35543
36630
|
];
|
|
35544
36631
|
|
|
35545
36632
|
// ../api/src/bookingVerticals.ts
|
|
35546
|
-
import { z as
|
|
36633
|
+
import { z as z66 } from "zod";
|
|
35547
36634
|
var VERTICAL_IDS = [
|
|
35548
36635
|
"yoga_wellness",
|
|
35549
36636
|
"fitness_pt",
|
|
@@ -35708,39 +36795,39 @@ function getSiteVerticalConfigIssues(rawConfig, config) {
|
|
|
35708
36795
|
}
|
|
35709
36796
|
return [...issues];
|
|
35710
36797
|
}
|
|
35711
|
-
var VerticalIdSchema =
|
|
36798
|
+
var VerticalIdSchema = z66.string().trim().transform((value, ctx) => {
|
|
35712
36799
|
const parsed = parseVerticalId(value);
|
|
35713
36800
|
if (!parsed) {
|
|
35714
36801
|
ctx.addIssue({
|
|
35715
|
-
code:
|
|
36802
|
+
code: z66.ZodIssueCode.custom,
|
|
35716
36803
|
message: "Unknown booking vertical"
|
|
35717
36804
|
});
|
|
35718
|
-
return
|
|
36805
|
+
return z66.NEVER;
|
|
35719
36806
|
}
|
|
35720
36807
|
return parsed;
|
|
35721
36808
|
});
|
|
35722
|
-
var VerticalPresetIdSchema =
|
|
36809
|
+
var VerticalPresetIdSchema = z66.string().trim().transform((value, ctx) => {
|
|
35723
36810
|
const parsed = parseVerticalPresetId(value);
|
|
35724
36811
|
if (!parsed) {
|
|
35725
36812
|
ctx.addIssue({
|
|
35726
|
-
code:
|
|
36813
|
+
code: z66.ZodIssueCode.custom,
|
|
35727
36814
|
message: "Unknown booking preset"
|
|
35728
36815
|
});
|
|
35729
|
-
return
|
|
36816
|
+
return z66.NEVER;
|
|
35730
36817
|
}
|
|
35731
36818
|
return parsed;
|
|
35732
36819
|
});
|
|
35733
|
-
var BookingVerticalConfigSchema =
|
|
36820
|
+
var BookingVerticalConfigSchema = z66.object({
|
|
35734
36821
|
verticalId: VerticalIdSchema.nullable(),
|
|
35735
|
-
selectedPresetIds:
|
|
36822
|
+
selectedPresetIds: z66.array(VerticalPresetIdSchema).max(20)
|
|
35736
36823
|
}).transform((value, ctx) => {
|
|
35737
36824
|
const resolved = resolveSiteVerticalBookingConfig(value);
|
|
35738
36825
|
if (resolved.kind === "invalid") {
|
|
35739
36826
|
ctx.addIssue({
|
|
35740
|
-
code:
|
|
36827
|
+
code: z66.ZodIssueCode.custom,
|
|
35741
36828
|
message: `Invalid booking vertical config: ${resolved.issues.join(", ")}`
|
|
35742
36829
|
});
|
|
35743
|
-
return
|
|
36830
|
+
return z66.NEVER;
|
|
35744
36831
|
}
|
|
35745
36832
|
return resolved.config;
|
|
35746
36833
|
});
|
|
@@ -35762,56 +36849,56 @@ function preset(id, verticalId, canonicalBehaviour, label, pluralLabel, descript
|
|
|
35762
36849
|
}
|
|
35763
36850
|
|
|
35764
36851
|
// ../api/src/utils/isRecord.ts
|
|
35765
|
-
function
|
|
36852
|
+
function isRecord4(value) {
|
|
35766
36853
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
35767
36854
|
}
|
|
35768
36855
|
|
|
35769
36856
|
// ../api/src/appointmentSetup.ts
|
|
35770
|
-
import { z as
|
|
36857
|
+
import { z as z67 } from "zod";
|
|
35771
36858
|
var APPOINTMENT_SETUP_MAX_MINUTES = 1440;
|
|
35772
|
-
var appointmentSetupRefSchema =
|
|
35773
|
-
|
|
35774
|
-
|
|
36859
|
+
var appointmentSetupRefSchema = z67.discriminatedUnion("kind", [
|
|
36860
|
+
z67.object({ kind: z67.literal("existing"), id: z67.string().min(1) }),
|
|
36861
|
+
z67.object({ kind: z67.literal("new"), draftId: z67.string().min(1) })
|
|
35775
36862
|
]);
|
|
35776
|
-
var appointmentSetupVenueChoiceSchema =
|
|
35777
|
-
|
|
35778
|
-
|
|
35779
|
-
|
|
35780
|
-
kind:
|
|
35781
|
-
draftId:
|
|
35782
|
-
title:
|
|
35783
|
-
description:
|
|
35784
|
-
timezone:
|
|
35785
|
-
addressJson:
|
|
35786
|
-
locationJson:
|
|
36863
|
+
var appointmentSetupVenueChoiceSchema = z67.discriminatedUnion("kind", [
|
|
36864
|
+
z67.object({ kind: z67.literal("none") }),
|
|
36865
|
+
z67.object({ kind: z67.literal("existing"), venueId: z67.string().min(1) }),
|
|
36866
|
+
z67.object({
|
|
36867
|
+
kind: z67.literal("create"),
|
|
36868
|
+
draftId: z67.string().min(1),
|
|
36869
|
+
title: z67.string().trim().min(1),
|
|
36870
|
+
description: z67.string().nullable(),
|
|
36871
|
+
timezone: z67.string().trim().min(1).nullable(),
|
|
36872
|
+
addressJson: z67.record(z67.string(), z67.unknown()),
|
|
36873
|
+
locationJson: z67.object({ lat: z67.number(), lng: z67.number() }).nullable()
|
|
35787
36874
|
})
|
|
35788
36875
|
]);
|
|
35789
|
-
var appointmentSetupPaymentDraftSchema =
|
|
35790
|
-
priceType:
|
|
35791
|
-
});
|
|
35792
|
-
var appointmentSetupServiceAssignmentDraftSchema =
|
|
35793
|
-
|
|
35794
|
-
|
|
35795
|
-
kind:
|
|
35796
|
-
resourceRefs:
|
|
36876
|
+
var appointmentSetupPaymentDraftSchema = z67.object({
|
|
36877
|
+
priceType: z67.union([z67.literal("free"), z67.literal("paid")])
|
|
36878
|
+
});
|
|
36879
|
+
var appointmentSetupServiceAssignmentDraftSchema = z67.discriminatedUnion("kind", [
|
|
36880
|
+
z67.object({ kind: z67.literal("all_practitioners") }),
|
|
36881
|
+
z67.object({
|
|
36882
|
+
kind: z67.literal("selected_practitioners"),
|
|
36883
|
+
resourceRefs: z67.array(appointmentSetupRefSchema)
|
|
35797
36884
|
})
|
|
35798
36885
|
]);
|
|
35799
|
-
var appointmentSetupServiceDraftSchema =
|
|
36886
|
+
var appointmentSetupServiceDraftSchema = z67.object({
|
|
35800
36887
|
ref: appointmentSetupRefSchema,
|
|
35801
|
-
title:
|
|
35802
|
-
description:
|
|
35803
|
-
durationMinutes:
|
|
35804
|
-
prepMinutes:
|
|
35805
|
-
cleanupMinutes:
|
|
35806
|
-
priceAmount:
|
|
35807
|
-
isActive:
|
|
35808
|
-
locationType:
|
|
35809
|
-
|
|
35810
|
-
|
|
35811
|
-
|
|
36888
|
+
title: z67.string().trim().min(1),
|
|
36889
|
+
description: z67.string().nullable(),
|
|
36890
|
+
durationMinutes: z67.number().int().positive().max(APPOINTMENT_SETUP_MAX_MINUTES),
|
|
36891
|
+
prepMinutes: z67.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
|
|
36892
|
+
cleanupMinutes: z67.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
|
|
36893
|
+
priceAmount: z67.number().int().nonnegative().nullable(),
|
|
36894
|
+
isActive: z67.boolean(),
|
|
36895
|
+
locationType: z67.union([
|
|
36896
|
+
z67.literal("virtual"),
|
|
36897
|
+
z67.literal("in_person"),
|
|
36898
|
+
z67.literal("hybrid")
|
|
35812
36899
|
]),
|
|
35813
36900
|
venue: appointmentSetupVenueChoiceSchema,
|
|
35814
|
-
timezone:
|
|
36901
|
+
timezone: z67.string().trim().min(1).nullable(),
|
|
35815
36902
|
payment: appointmentSetupPaymentDraftSchema,
|
|
35816
36903
|
assignment: appointmentSetupServiceAssignmentDraftSchema
|
|
35817
36904
|
}).superRefine((service, ctx) => {
|
|
@@ -35830,49 +36917,49 @@ var appointmentSetupServiceDraftSchema = z65.object({
|
|
|
35830
36917
|
});
|
|
35831
36918
|
}
|
|
35832
36919
|
});
|
|
35833
|
-
var appointmentSetupPractitionerDraftSchema =
|
|
36920
|
+
var appointmentSetupPractitionerDraftSchema = z67.object({
|
|
35834
36921
|
ref: appointmentSetupRefSchema,
|
|
35835
|
-
displayName:
|
|
35836
|
-
bio:
|
|
35837
|
-
timezone:
|
|
35838
|
-
colorHex:
|
|
35839
|
-
});
|
|
35840
|
-
var appointmentSetupWeeklyWindowDraftSchema =
|
|
35841
|
-
weekday:
|
|
35842
|
-
startTime:
|
|
35843
|
-
endTime:
|
|
35844
|
-
});
|
|
35845
|
-
var appointmentSetupStartTimePolicyDraftSchema =
|
|
35846
|
-
|
|
35847
|
-
|
|
35848
|
-
kind:
|
|
35849
|
-
intervalMinutes:
|
|
35850
|
-
|
|
35851
|
-
|
|
35852
|
-
|
|
35853
|
-
|
|
35854
|
-
|
|
35855
|
-
|
|
36922
|
+
displayName: z67.string().trim().min(1),
|
|
36923
|
+
bio: z67.string().nullable(),
|
|
36924
|
+
timezone: z67.string().trim().min(1),
|
|
36925
|
+
colorHex: z67.string().nullable()
|
|
36926
|
+
});
|
|
36927
|
+
var appointmentSetupWeeklyWindowDraftSchema = z67.object({
|
|
36928
|
+
weekday: z67.number().int().min(0).max(6),
|
|
36929
|
+
startTime: z67.string(),
|
|
36930
|
+
endTime: z67.string()
|
|
36931
|
+
});
|
|
36932
|
+
var appointmentSetupStartTimePolicyDraftSchema = z67.discriminatedUnion("kind", [
|
|
36933
|
+
z67.object({ kind: z67.literal("automatic_spacing") }),
|
|
36934
|
+
z67.object({
|
|
36935
|
+
kind: z67.literal("regular_interval"),
|
|
36936
|
+
intervalMinutes: z67.union([
|
|
36937
|
+
z67.literal(10),
|
|
36938
|
+
z67.literal(15),
|
|
36939
|
+
z67.literal(20),
|
|
36940
|
+
z67.literal(30),
|
|
36941
|
+
z67.literal(45),
|
|
36942
|
+
z67.literal(60)
|
|
35856
36943
|
])
|
|
35857
36944
|
})
|
|
35858
36945
|
]);
|
|
35859
|
-
var appointmentSetupAvailabilityDraftSchema =
|
|
35860
|
-
kind:
|
|
36946
|
+
var appointmentSetupAvailabilityDraftSchema = z67.object({
|
|
36947
|
+
kind: z67.literal("weekly_windows"),
|
|
35861
36948
|
resourceRef: appointmentSetupRefSchema,
|
|
35862
36949
|
serviceRef: appointmentSetupRefSchema.nullable(),
|
|
35863
|
-
windows:
|
|
36950
|
+
windows: z67.array(appointmentSetupWeeklyWindowDraftSchema),
|
|
35864
36951
|
startTimePolicy: appointmentSetupStartTimePolicyDraftSchema.optional()
|
|
35865
36952
|
});
|
|
35866
36953
|
var APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX = 28 * 24 * 60;
|
|
35867
36954
|
var APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX = 10 * 365 * 24 * 60;
|
|
35868
|
-
var appointmentSetupBookingNoticeSchema =
|
|
35869
|
-
minLeadMinutes:
|
|
35870
|
-
maxBookingNoticeMinutes:
|
|
35871
|
-
});
|
|
35872
|
-
var applyAppointmentSetupRequestSchema =
|
|
35873
|
-
services:
|
|
35874
|
-
practitioners:
|
|
35875
|
-
availability:
|
|
36955
|
+
var appointmentSetupBookingNoticeSchema = z67.object({
|
|
36956
|
+
minLeadMinutes: z67.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX),
|
|
36957
|
+
maxBookingNoticeMinutes: z67.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX)
|
|
36958
|
+
});
|
|
36959
|
+
var applyAppointmentSetupRequestSchema = z67.object({
|
|
36960
|
+
services: z67.array(appointmentSetupServiceDraftSchema),
|
|
36961
|
+
practitioners: z67.array(appointmentSetupPractitionerDraftSchema),
|
|
36962
|
+
availability: z67.array(appointmentSetupAvailabilityDraftSchema),
|
|
35876
36963
|
bookingNotice: appointmentSetupBookingNoticeSchema
|
|
35877
36964
|
});
|
|
35878
36965
|
|
|
@@ -35905,24 +36992,24 @@ var STAFF_CANCELLATION_CONTEXT_CATEGORIES = [
|
|
|
35905
36992
|
];
|
|
35906
36993
|
|
|
35907
36994
|
// ../api/src/siteBanner.ts
|
|
35908
|
-
import { z as
|
|
36995
|
+
import { z as z68 } from "zod";
|
|
35909
36996
|
var SITE_BANNER_SCOPE_VALUES = ["homepage", "all-pages"];
|
|
35910
36997
|
var SITE_BANNER_TONE_VALUES = ["announcement", "promotion", "notice", "warning"];
|
|
35911
36998
|
var SITE_BANNER_MAX_TEXT_LENGTH = 320;
|
|
35912
36999
|
var SITE_BANNER_MAX_PARAGRAPHS = 2;
|
|
35913
|
-
var siteBannerScopeSchema =
|
|
35914
|
-
var siteBannerToneSchema =
|
|
35915
|
-
var siteBannerBodySchema =
|
|
35916
|
-
var siteBannerCtaSchema =
|
|
35917
|
-
label:
|
|
37000
|
+
var siteBannerScopeSchema = z68.enum(SITE_BANNER_SCOPE_VALUES);
|
|
37001
|
+
var siteBannerToneSchema = z68.enum(SITE_BANNER_TONE_VALUES);
|
|
37002
|
+
var siteBannerBodySchema = z68.unknown().transform(unwrapRichTextValue);
|
|
37003
|
+
var siteBannerCtaSchema = z68.object({
|
|
37004
|
+
label: z68.string().trim().min(1),
|
|
35918
37005
|
link: linkPayloadSchema
|
|
35919
37006
|
});
|
|
35920
|
-
var siteBannerSettingsSchema =
|
|
35921
|
-
|
|
35922
|
-
enabled:
|
|
37007
|
+
var siteBannerSettingsSchema = z68.discriminatedUnion("enabled", [
|
|
37008
|
+
z68.object({
|
|
37009
|
+
enabled: z68.literal(false)
|
|
35923
37010
|
}),
|
|
35924
|
-
|
|
35925
|
-
enabled:
|
|
37011
|
+
z68.object({
|
|
37012
|
+
enabled: z68.literal(true),
|
|
35926
37013
|
scope: siteBannerScopeSchema,
|
|
35927
37014
|
tone: siteBannerToneSchema,
|
|
35928
37015
|
body: siteBannerBodySchema,
|
|
@@ -35936,7 +37023,7 @@ var siteBannerSettingsInputSchema = siteBannerSettingsSchema.superRefine((value,
|
|
|
35936
37023
|
const analysis = analyzeSiteBannerBody(value.body);
|
|
35937
37024
|
for (const issue of analysis.issues) {
|
|
35938
37025
|
ctx.addIssue({
|
|
35939
|
-
code:
|
|
37026
|
+
code: z68.ZodIssueCode.custom,
|
|
35940
37027
|
path: ["body"],
|
|
35941
37028
|
message: siteBannerBodyIssueMessage(issue)
|
|
35942
37029
|
});
|
|
@@ -36069,7 +37156,7 @@ function sanitizeMarks(marks) {
|
|
|
36069
37156
|
if (mark.type === "bold" || mark.type === "strong" || mark.type === "italic" || mark.type === "em") {
|
|
36070
37157
|
return [{ type: mark.type }];
|
|
36071
37158
|
}
|
|
36072
|
-
if (mark.type === "link" &&
|
|
37159
|
+
if (mark.type === "link" && isRecord4(mark.attrs) && typeof mark.attrs.href === "string") {
|
|
36073
37160
|
const attrs = { href: mark.attrs.href };
|
|
36074
37161
|
if (typeof mark.attrs.target === "string" && mark.attrs.target.trim().length > 0) {
|
|
36075
37162
|
attrs.target = mark.attrs.target;
|
|
@@ -36084,10 +37171,10 @@ function sanitizeMarks(marks) {
|
|
|
36084
37171
|
return sanitized.length > 0 ? sanitized : void 0;
|
|
36085
37172
|
}
|
|
36086
37173
|
function unwrapRichTextValue(value) {
|
|
36087
|
-
if (
|
|
37174
|
+
if (isRecord4(value) && isRecord4(value.doc)) {
|
|
36088
37175
|
return unwrapRichTextValue(value.doc);
|
|
36089
37176
|
}
|
|
36090
|
-
if (
|
|
37177
|
+
if (isRecord4(value) && value.type === "doc") {
|
|
36091
37178
|
return {
|
|
36092
37179
|
type: "doc",
|
|
36093
37180
|
content: Array.isArray(value.content) ? value.content.filter(isTipTapNodeLike).map(coerceTipTapNode) : []
|
|
@@ -36096,7 +37183,7 @@ function unwrapRichTextValue(value) {
|
|
|
36096
37183
|
return EMPTY_SITE_BANNER_BODY;
|
|
36097
37184
|
}
|
|
36098
37185
|
function isTipTapNodeLike(value) {
|
|
36099
|
-
return
|
|
37186
|
+
return isRecord4(value) && typeof value.type === "string";
|
|
36100
37187
|
}
|
|
36101
37188
|
function coerceTipTapNode(value) {
|
|
36102
37189
|
return {
|
|
@@ -36104,9 +37191,9 @@ function coerceTipTapNode(value) {
|
|
|
36104
37191
|
...Array.isArray(value.content) ? { content: value.content.filter(isTipTapNodeLike).map(coerceTipTapNode) } : {},
|
|
36105
37192
|
...typeof value.text === "string" ? { text: value.text } : {},
|
|
36106
37193
|
...Array.isArray(value.marks) ? {
|
|
36107
|
-
marks: value.marks.filter((mark) =>
|
|
37194
|
+
marks: value.marks.filter((mark) => isRecord4(mark) && typeof mark.type === "string").map((mark) => ({
|
|
36108
37195
|
type: mark.type,
|
|
36109
|
-
...
|
|
37196
|
+
...isRecord4(mark.attrs) ? { attrs: mark.attrs } : {}
|
|
36110
37197
|
}))
|
|
36111
37198
|
} : {}
|
|
36112
37199
|
};
|
|
@@ -36198,71 +37285,71 @@ function unsafeAsNavigationMenuIdentifier(identifier) {
|
|
|
36198
37285
|
var MAIN_NAVIGATION_MENU_IDENTIFIER = unsafeAsNavigationMenuIdentifier("main");
|
|
36199
37286
|
|
|
36200
37287
|
// ../api/src/aiPlayground.ts
|
|
36201
|
-
import { z as
|
|
36202
|
-
var Rfc6902PatchOp =
|
|
37288
|
+
import { z as z69 } from "zod";
|
|
37289
|
+
var Rfc6902PatchOp = z69.discriminatedUnion("op", [
|
|
36203
37290
|
// Standard RFC-6902 operations
|
|
36204
|
-
|
|
36205
|
-
op:
|
|
36206
|
-
path:
|
|
36207
|
-
value:
|
|
37291
|
+
z69.object({
|
|
37292
|
+
op: z69.literal("add"),
|
|
37293
|
+
path: z69.string(),
|
|
37294
|
+
value: z69.unknown()
|
|
36208
37295
|
}),
|
|
36209
|
-
|
|
36210
|
-
op:
|
|
36211
|
-
path:
|
|
37296
|
+
z69.object({
|
|
37297
|
+
op: z69.literal("remove"),
|
|
37298
|
+
path: z69.string()
|
|
36212
37299
|
}),
|
|
36213
|
-
|
|
36214
|
-
op:
|
|
36215
|
-
path:
|
|
36216
|
-
value:
|
|
37300
|
+
z69.object({
|
|
37301
|
+
op: z69.literal("replace"),
|
|
37302
|
+
path: z69.string(),
|
|
37303
|
+
value: z69.unknown()
|
|
36217
37304
|
}),
|
|
36218
|
-
|
|
36219
|
-
op:
|
|
36220
|
-
from:
|
|
36221
|
-
path:
|
|
37305
|
+
z69.object({
|
|
37306
|
+
op: z69.literal("move"),
|
|
37307
|
+
from: z69.string(),
|
|
37308
|
+
path: z69.string()
|
|
36222
37309
|
}),
|
|
36223
|
-
|
|
36224
|
-
op:
|
|
36225
|
-
from:
|
|
36226
|
-
path:
|
|
37310
|
+
z69.object({
|
|
37311
|
+
op: z69.literal("copy"),
|
|
37312
|
+
from: z69.string(),
|
|
37313
|
+
path: z69.string()
|
|
36227
37314
|
}),
|
|
36228
37315
|
// Block-level operations (Phase 2)
|
|
36229
|
-
|
|
36230
|
-
op:
|
|
36231
|
-
blockKind:
|
|
36232
|
-
afterBlockId:
|
|
36233
|
-
content:
|
|
36234
|
-
rationale:
|
|
37316
|
+
z69.object({
|
|
37317
|
+
op: z69.literal("add_block"),
|
|
37318
|
+
blockKind: z69.string(),
|
|
37319
|
+
afterBlockId: z69.string().nullable(),
|
|
37320
|
+
content: z69.record(z69.string(), z69.unknown()),
|
|
37321
|
+
rationale: z69.string()
|
|
36235
37322
|
}),
|
|
36236
|
-
|
|
36237
|
-
op:
|
|
36238
|
-
blockId:
|
|
36239
|
-
rationale:
|
|
37323
|
+
z69.object({
|
|
37324
|
+
op: z69.literal("delete_block"),
|
|
37325
|
+
blockId: z69.string(),
|
|
37326
|
+
rationale: z69.string()
|
|
36240
37327
|
}),
|
|
36241
|
-
|
|
36242
|
-
op:
|
|
36243
|
-
blockId:
|
|
36244
|
-
afterBlockId:
|
|
36245
|
-
rationale:
|
|
37328
|
+
z69.object({
|
|
37329
|
+
op: z69.literal("reorder_block"),
|
|
37330
|
+
blockId: z69.string(),
|
|
37331
|
+
afterBlockId: z69.string().nullable(),
|
|
37332
|
+
rationale: z69.string()
|
|
36246
37333
|
})
|
|
36247
37334
|
]);
|
|
36248
|
-
var PlaygroundProposeRequest =
|
|
36249
|
-
request:
|
|
37335
|
+
var PlaygroundProposeRequest = z69.object({
|
|
37336
|
+
request: z69.string().min(1).max(2e3)
|
|
36250
37337
|
});
|
|
36251
|
-
var MultiPagePatchEnvelope =
|
|
36252
|
-
pageId:
|
|
36253
|
-
blockId:
|
|
37338
|
+
var MultiPagePatchEnvelope = z69.object({
|
|
37339
|
+
pageId: z69.string(),
|
|
37340
|
+
blockId: z69.string().optional(),
|
|
36254
37341
|
// Not present for page-level ops
|
|
36255
|
-
blockKind:
|
|
36256
|
-
blockPurpose:
|
|
36257
|
-
ops:
|
|
36258
|
-
rationale:
|
|
36259
|
-
currentContent:
|
|
36260
|
-
});
|
|
36261
|
-
var MultiPageUpdateResponse =
|
|
36262
|
-
patches:
|
|
36263
|
-
assistantMessage:
|
|
36264
|
-
pagesModified:
|
|
36265
|
-
toolCallsUsed:
|
|
37342
|
+
blockKind: z69.string().optional(),
|
|
37343
|
+
blockPurpose: z69.string().optional().nullable(),
|
|
37344
|
+
ops: z69.array(Rfc6902PatchOp),
|
|
37345
|
+
rationale: z69.string(),
|
|
37346
|
+
currentContent: z69.record(z69.string(), z69.unknown()).optional()
|
|
37347
|
+
});
|
|
37348
|
+
var MultiPageUpdateResponse = z69.object({
|
|
37349
|
+
patches: z69.array(MultiPagePatchEnvelope),
|
|
37350
|
+
assistantMessage: z69.string(),
|
|
37351
|
+
pagesModified: z69.number(),
|
|
37352
|
+
toolCallsUsed: z69.number()
|
|
36266
37353
|
});
|
|
36267
37354
|
|
|
36268
37355
|
// src/data/prefetchBlockData.ts
|