@riverbankcms/sdk 0.76.0 → 0.77.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-X2HWXFOL.mjs → PreviewEditorSidebar-XSX7QKHQ.mjs} +1019 -442
- package/dist/{PreviewEditorUI-AQXIXPOH.mjs → PreviewEditorUI-YZNEZ3QD.mjs} +2 -2
- package/dist/SdkPreviewModeRuntime-5FS5E6BI.mjs +8 -0
- package/dist/_dts/ai/src/contracts/proposals.d.ts +528 -20
- package/dist/_dts/api/src/contentRuntime.d.ts +5 -0
- package/dist/_dts/api/src/siteAssets.d.ts +1 -0
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +26 -2
- package/dist/_dts/block-form/src/blockDraftSaveability.d.ts +28 -0
- package/dist/_dts/block-form/src/client/index.d.ts +2 -2
- package/dist/_dts/block-form/src/index.d.ts +2 -1
- package/dist/_dts/block-form/src/widgets/DateField/dateFieldSchema.d.ts +1 -1
- package/dist/_dts/block-form/src/widgets/DateTimeField/dateTimeFieldSchema.d.ts +1 -1
- package/dist/_dts/block-form/src/widgets/TimeField/timeFieldSchema.d.ts +1 -1
- package/dist/_dts/blocks/src/PageRenderer.d.ts +10 -10
- package/dist/_dts/blocks/src/client/site-chrome.d.ts +22 -0
- package/dist/_dts/blocks/src/customBlockRegistry.d.ts +38 -0
- package/dist/_dts/blocks/src/index.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/faq.d.ts +20 -2
- package/dist/_dts/blocks/src/system/blocks/feature-cards.d.ts +25 -0
- package/dist/_dts/blocks/src/system/blocks/index.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/intro.d.ts +24 -0
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +3 -34
- package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
- package/dist/_dts/blocks/src/system/fields/aspectRatio.d.ts +30 -0
- package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +4 -1
- package/dist/_dts/blocks/src/system/fields/ctas.d.ts +7 -0
- package/dist/_dts/blocks/src/system/manifest/fieldValidation/index.d.ts +11 -2
- package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/accordion.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/accordion.server.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/accordionIconTreatment.d.ts +5 -0
- package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +1 -0
- package/dist/_dts/blocks/src/system/transforms/typed.d.ts +2 -1
- package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +2 -0
- package/dist/_dts/content-editor/src/hooks/blockDraftLifecycle.d.ts +48 -0
- package/dist/_dts/content-editor/src/hooks/invalidBlockSelectors.d.ts +4 -0
- package/dist/_dts/content-editor/src/hooks/publishability.d.ts +47 -0
- package/dist/_dts/content-editor/src/index.d.ts +1 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +20 -0
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +2 -1
- package/dist/_dts/editor-blocks/src/block-editor/SortableBlockItem.d.ts +2 -1
- package/dist/_dts/editor-blocks/src/block-editor/customBlockRegistry.d.ts +2 -0
- package/dist/_dts/editor-blocks/src/block-editor/sdkBlockMerger.d.ts +9 -37
- package/dist/_dts/editor-blocks/src/index.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/index.d.ts +3 -0
- package/dist/_dts/preview-next/src/client/layout/PreviewLayoutContext.d.ts +5 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewDesignCoordinatorContext.d.ts +20 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +7 -2
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +7 -2
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +7 -2
- package/dist/_dts/preview-next/src/client/preview/PreviewThemedSiteDocument.d.ts +18 -0
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +20 -3
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +6 -1
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +14 -4
- package/dist/_dts/preview-next/src/client/preview/previewDesignCoordinator.d.ts +73 -0
- package/dist/_dts/preview-next/src/client/preview/siteChromeLookRows.d.ts +12 -4
- package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +46 -0
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +6 -1
- package/dist/_dts/preview-next/src/client/preview/typographySelectionInput.d.ts +14 -0
- package/dist/_dts/preview-next/src/client/sdk/SdkPreviewModeRuntime.d.ts +1 -1
- package/dist/_dts/sdk/src/cli/commands/style.d.ts +8 -0
- package/dist/_dts/sdk/src/client/management/types.d.ts +6 -1
- package/dist/_dts/sdk/src/client/types.d.ts +9 -0
- package/dist/_dts/sdk/src/client.d.ts +1 -1
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +35 -0
- package/dist/_dts/sdk/src/index.d.ts +2 -1
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +5 -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/site-commands/src/commands.d.ts +15 -0
- package/dist/_dts/theme-core/src/buttons/personalities/earth-pill.d.ts +16 -0
- package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
- package/dist/_dts/theme-core/src/fonts/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +45 -0
- package/dist/_dts/theme-core/src/palette/variants/index.d.ts +15 -0
- package/dist/_dts/theme-core/src/palette/variants/warm-neutral.d.ts +16 -0
- package/dist/_dts/theme-core/src/schema.d.ts +280 -0
- package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +81 -0
- package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +6 -4
- package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +81 -0
- package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +118 -2
- package/dist/_dts/theme-core/src/site-styles/footerLooks.d.ts +13 -0
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -2
- package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +364 -5
- package/dist/_dts/theme-core/src/site-styles/headerOpeningSection.d.ts +6 -0
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +2 -0
- package/dist/_dts/theme-core/src/site-styles/persistedIdParseResult.d.ts +9 -0
- package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +20 -4
- package/dist/_dts/theme-core/src/site-styles/types.d.ts +74 -2
- package/dist/_dts/theme-core/src/site-styles/typographyPresets.d.ts +189 -0
- package/dist/{chunk-Z7JLNTJR.mjs → chunk-6SMUFTXD.mjs} +2 -1
- package/dist/{chunk-V5VORNEJ.mjs → chunk-ANKDYZ2E.mjs} +1 -1
- package/dist/{chunk-Q4OLG66B.mjs → chunk-EAWHBECW.mjs} +476 -153
- package/dist/{chunk-TW2Y4RR5.mjs → chunk-GSQX43EZ.mjs} +383 -51
- package/dist/{chunk-LYI7TEMH.mjs → chunk-WLQBJN2Z.mjs} +3096 -354
- package/dist/cli/index.mjs +2023 -181
- package/dist/client/{accordion-2YHIBOZH.mjs → accordion-RZMQSYLR.mjs} +1 -1
- package/dist/client/{bookingForm-35IBDWAS.mjs → bookingForm-NF4ASVNV.mjs} +2 -2
- package/dist/client/bookings.mjs +92 -0
- package/dist/client/{carousel-K6XG7NZQ.mjs → carousel-LDX47ZIK.mjs} +1 -1
- package/dist/client/{cart-HCFYUTTU.mjs → cart-RGXDS5F4.mjs} +3 -3
- package/dist/client/{checkout-J3U4XR7K.mjs → checkout-P7WWSNNY.mjs} +3 -3
- package/dist/client/{chunk-BOIHIU7E.mjs → chunk-E2TDNXCL.mjs} +1 -1
- package/dist/client/{chunk-PFBX3IQL.mjs → chunk-GMVTOKYG.mjs} +2 -2
- package/dist/client/{chunk-FGUIVT2B.mjs → chunk-JNC7CGHX.mjs} +1 -1
- package/dist/client/{chunk-SNSWVZEP.mjs → chunk-L3DNHIJX.mjs} +3 -3
- package/dist/client/{chunk-7UOSCYY4.mjs → chunk-R56FQ3RR.mjs} +92 -0
- package/dist/client/{chunk-J227A3CQ.mjs → chunk-UFSWADAO.mjs} +1 -1
- package/dist/client/client.mjs +2134 -228
- package/dist/client/{courseRegistration-ZBXS7VGI.mjs → courseRegistration-7F65K5ZR.mjs} +2 -2
- package/dist/client/{eventCalendar-EQQZHJBA.mjs → eventCalendar-GLSC5KTL.mjs} +4 -4
- package/dist/client/{eventCombined-JCFTGBFQ.mjs → eventCombined-ZHK4WKUR.mjs} +4 -4
- package/dist/client/{eventDetails-HLUTQSYY.mjs → eventDetails-E3PJYBIN.mjs} +4 -4
- package/dist/client/{eventListing-FG4MICVB.mjs → eventListing-EMS3WC3E.mjs} +4 -4
- package/dist/client/{eventRegistration-GUEB7LBT.mjs → eventRegistration-NZOTVNPI.mjs} +4 -4
- package/dist/client/{form-YQEW4YIT.mjs → form-ETFZFATW.mjs} +1 -1
- package/dist/client/{headerSection-GTR3TTRM.mjs → headerSection-4LBP7ULT.mjs} +2 -2
- package/dist/client/hooks.mjs +1918 -293
- package/dist/client/{locationMap-SPC7VGUH.mjs → locationMap-5M655YSJ.mjs} +1 -1
- package/dist/client/{newsletterForm-4IW5BLID.mjs → newsletterForm-QOUYW44O.mjs} +1 -1
- package/dist/client/{productDetail-KP5H2WJO.mjs → productDetail-O4DOCWQG.mjs} +3 -3
- package/dist/client/{productList-3M3M72XZ.mjs → productList-A5RO5WIS.mjs} +3 -3
- package/dist/client/rendering/client.mjs +198 -32
- package/dist/client/rendering/islands.mjs +18 -18
- package/dist/client/rendering.mjs +2095 -208
- package/dist/client/{shop-ACQKVGOM.mjs → shop-L4MZH4I2.mjs} +3 -3
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/{sdk-runtime-K7HNB4U2.mjs → sdk-runtime-Q6MTR4KL.mjs} +5 -5
- package/dist/server/components.mjs +2046 -204
- package/dist/server/config-validation.mjs +1921 -293
- package/dist/server/config.mjs +1921 -293
- package/dist/server/data.mjs +1918 -293
- package/dist/server/index.mjs +31 -2
- package/dist/server/next.mjs +2067 -206
- package/dist/server/page-converter.mjs +1894 -281
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +2046 -204
- package/dist/server/rendering.mjs +2046 -204
- package/dist/server/routing.mjs +1963 -275
- package/dist/server/server.mjs +1932 -288
- package/dist/server/theme-bridge.mjs +158 -1
- package/dist/server/theme.mjs +158 -1
- package/package.json +1 -1
- package/dist/SdkPreviewModeRuntime-ZQNDCASH.mjs +0 -8
package/dist/client/client.mjs
CHANGED
|
@@ -1370,6 +1370,7 @@ var init_validation_constants = __esm({
|
|
|
1370
1370
|
"layout.headerRootClass",
|
|
1371
1371
|
"layout.footerRootClass",
|
|
1372
1372
|
"layout.headerRootStyle",
|
|
1373
|
+
"layout.headerSectionBackground",
|
|
1373
1374
|
"layout.footerRootStyle",
|
|
1374
1375
|
// UI (ui.ts)
|
|
1375
1376
|
"ui.headerNavLinkClass",
|
|
@@ -2445,10 +2446,12 @@ function defineBlockDesignCapability(capability) {
|
|
|
2445
2446
|
imageSurfaceMotions: capability.imageSurfaceMotions ?? ["static"],
|
|
2446
2447
|
testimonialCardTreatments: capability.testimonialCardTreatments ?? ["default"],
|
|
2447
2448
|
tileTreatments: capability.tileTreatments ?? ["default"],
|
|
2448
|
-
eyebrowTreatments: capability.eyebrowTreatments ?? ["plain"]
|
|
2449
|
+
eyebrowTreatments: capability.eyebrowTreatments ?? ["plain"],
|
|
2450
|
+
...capability.headingDecorations ? { headingDecorations: capability.headingDecorations } : {},
|
|
2451
|
+
...capability.accordionIconSets ? { accordionIconSets: capability.accordionIconSets } : {}
|
|
2449
2452
|
};
|
|
2450
2453
|
}
|
|
2451
|
-
var plainFrame, tileTreatmentValues, eyebrowTreatmentValues;
|
|
2454
|
+
var plainFrame, tileTreatmentValues, eyebrowTreatmentValues, visibleHeadingDecorationFamilyValues, visibleHeadingDecorationPlacementValues, headingDecorationOverrideValues, headingDecorationColorTokenValues, accordionIconSetValues, accordionIconColorTokenValues, accordionIconMotionValues;
|
|
2452
2455
|
var init_types2 = __esm({
|
|
2453
2456
|
"../theme-core/src/site-styles/types.ts"() {
|
|
2454
2457
|
"use strict";
|
|
@@ -2467,6 +2470,47 @@ var init_types2 = __esm({
|
|
|
2467
2470
|
"pill-bounce",
|
|
2468
2471
|
"accent-pill-bounce"
|
|
2469
2472
|
];
|
|
2473
|
+
visibleHeadingDecorationFamilyValues = [
|
|
2474
|
+
"organic-squiggle",
|
|
2475
|
+
"short-center-rule"
|
|
2476
|
+
];
|
|
2477
|
+
visibleHeadingDecorationPlacementValues = [
|
|
2478
|
+
"after-heading",
|
|
2479
|
+
"between-heading-and-body",
|
|
2480
|
+
"under-centered-heading"
|
|
2481
|
+
];
|
|
2482
|
+
headingDecorationOverrideValues = [
|
|
2483
|
+
"site-default",
|
|
2484
|
+
"on",
|
|
2485
|
+
"off"
|
|
2486
|
+
];
|
|
2487
|
+
headingDecorationColorTokenValues = [
|
|
2488
|
+
"text",
|
|
2489
|
+
"primary",
|
|
2490
|
+
"secondary",
|
|
2491
|
+
"accent",
|
|
2492
|
+
"border",
|
|
2493
|
+
"muted"
|
|
2494
|
+
];
|
|
2495
|
+
accordionIconSetValues = [
|
|
2496
|
+
"plus",
|
|
2497
|
+
"chevron",
|
|
2498
|
+
"caret",
|
|
2499
|
+
"minimal-cross"
|
|
2500
|
+
];
|
|
2501
|
+
accordionIconColorTokenValues = [
|
|
2502
|
+
"text",
|
|
2503
|
+
"muted",
|
|
2504
|
+
"primary",
|
|
2505
|
+
"secondary",
|
|
2506
|
+
"accent",
|
|
2507
|
+
"current"
|
|
2508
|
+
];
|
|
2509
|
+
accordionIconMotionValues = [
|
|
2510
|
+
"none",
|
|
2511
|
+
"rotate",
|
|
2512
|
+
"swap"
|
|
2513
|
+
];
|
|
2470
2514
|
}
|
|
2471
2515
|
});
|
|
2472
2516
|
|
|
@@ -2663,6 +2707,25 @@ var init_blockAppearancePresets = __esm({
|
|
|
2663
2707
|
emphasis: "high"
|
|
2664
2708
|
}
|
|
2665
2709
|
}),
|
|
2710
|
+
defineBlockAppearancePreset({
|
|
2711
|
+
kind: "block-design",
|
|
2712
|
+
id: "intro-soft-earth-statement",
|
|
2713
|
+
target: "intro",
|
|
2714
|
+
label: "Soft Earth intro statement",
|
|
2715
|
+
blockKinds: ["block.intro"],
|
|
2716
|
+
design: {
|
|
2717
|
+
sectionSurface: "base",
|
|
2718
|
+
contentFrame: plainFrame,
|
|
2719
|
+
itemSurface: "none",
|
|
2720
|
+
transitionAfter: "soft-fade-short",
|
|
2721
|
+
emphasis: "high",
|
|
2722
|
+
headingDecoration: {
|
|
2723
|
+
family: "organic-squiggle",
|
|
2724
|
+
placement: "after-heading",
|
|
2725
|
+
colorToken: "primary"
|
|
2726
|
+
}
|
|
2727
|
+
}
|
|
2728
|
+
}),
|
|
2666
2729
|
defineBlockAppearancePreset({
|
|
2667
2730
|
kind: "block-design",
|
|
2668
2731
|
id: "offerings-calm-list",
|
|
@@ -2677,6 +2740,25 @@ var init_blockAppearancePresets = __esm({
|
|
|
2677
2740
|
emphasis: "medium"
|
|
2678
2741
|
}
|
|
2679
2742
|
}),
|
|
2743
|
+
defineBlockAppearancePreset({
|
|
2744
|
+
kind: "block-design",
|
|
2745
|
+
id: "feature-cards-soft-earth-offerings",
|
|
2746
|
+
target: "feature-cards",
|
|
2747
|
+
label: "Soft Earth offering cards",
|
|
2748
|
+
blockKinds: ["block.feature-cards"],
|
|
2749
|
+
design: {
|
|
2750
|
+
sectionSurface: "base",
|
|
2751
|
+
contentFrame: plainFrame,
|
|
2752
|
+
itemSurface: "raised",
|
|
2753
|
+
transitionAfter: "none",
|
|
2754
|
+
emphasis: "high",
|
|
2755
|
+
headingDecoration: {
|
|
2756
|
+
family: "short-center-rule",
|
|
2757
|
+
placement: "under-centered-heading",
|
|
2758
|
+
colorToken: "primary"
|
|
2759
|
+
}
|
|
2760
|
+
}
|
|
2761
|
+
}),
|
|
2680
2762
|
defineBlockAppearancePreset({
|
|
2681
2763
|
kind: "block-design",
|
|
2682
2764
|
id: "events-base-calendar",
|
|
@@ -2805,6 +2887,26 @@ var init_blockAppearancePresets = __esm({
|
|
|
2805
2887
|
testimonialCardTreatment: "accent-quote"
|
|
2806
2888
|
}
|
|
2807
2889
|
}),
|
|
2890
|
+
defineBlockAppearancePreset({
|
|
2891
|
+
kind: "block-design",
|
|
2892
|
+
id: "testimonials-soft-earth-proof-band",
|
|
2893
|
+
target: "testimonials",
|
|
2894
|
+
label: "Soft Earth proof band",
|
|
2895
|
+
blockKinds: ["block.testimonials"],
|
|
2896
|
+
design: {
|
|
2897
|
+
sectionSurface: "brand-depth-band",
|
|
2898
|
+
contentFrame: plainFrame,
|
|
2899
|
+
itemSurface: "none",
|
|
2900
|
+
transitionAfter: "soft-fade-short",
|
|
2901
|
+
emphasis: "high",
|
|
2902
|
+
testimonialCardTreatment: "accent-quote",
|
|
2903
|
+
headingDecoration: {
|
|
2904
|
+
family: "short-center-rule",
|
|
2905
|
+
placement: "under-centered-heading",
|
|
2906
|
+
colorToken: "border"
|
|
2907
|
+
}
|
|
2908
|
+
}
|
|
2909
|
+
}),
|
|
2808
2910
|
defineBlockAppearancePreset({
|
|
2809
2911
|
kind: "block-design",
|
|
2810
2912
|
id: "faq-base-accordion",
|
|
@@ -2833,6 +2935,25 @@ var init_blockAppearancePresets = __esm({
|
|
|
2833
2935
|
emphasis: "low"
|
|
2834
2936
|
}
|
|
2835
2937
|
}),
|
|
2938
|
+
defineBlockAppearancePreset({
|
|
2939
|
+
kind: "block-design",
|
|
2940
|
+
id: "faq-soft-earth-two-column",
|
|
2941
|
+
target: "faq",
|
|
2942
|
+
label: "Soft Earth two-column FAQ",
|
|
2943
|
+
blockKinds: ["block.faq"],
|
|
2944
|
+
design: {
|
|
2945
|
+
sectionSurface: "base",
|
|
2946
|
+
contentFrame: plainFrame,
|
|
2947
|
+
itemSurface: "flat",
|
|
2948
|
+
transitionAfter: "none",
|
|
2949
|
+
emphasis: "medium",
|
|
2950
|
+
accordionIconTreatment: {
|
|
2951
|
+
iconSet: "plus",
|
|
2952
|
+
colorToken: "primary",
|
|
2953
|
+
motion: "swap"
|
|
2954
|
+
}
|
|
2955
|
+
}
|
|
2956
|
+
}),
|
|
2836
2957
|
defineBlockAppearancePreset({
|
|
2837
2958
|
kind: "block-design",
|
|
2838
2959
|
id: "contact-form-panel",
|
|
@@ -3648,6 +3769,104 @@ var init_confident_chip = __esm({
|
|
|
3648
3769
|
}
|
|
3649
3770
|
});
|
|
3650
3771
|
|
|
3772
|
+
// ../theme-core/src/buttons/personalities/earth-pill.ts
|
|
3773
|
+
var earthPill;
|
|
3774
|
+
var init_earth_pill = __esm({
|
|
3775
|
+
"../theme-core/src/buttons/personalities/earth-pill.ts"() {
|
|
3776
|
+
"use strict";
|
|
3777
|
+
init_types4();
|
|
3778
|
+
earthPill = defineButtonPersonality({
|
|
3779
|
+
id: "earth-pill",
|
|
3780
|
+
name: "Earth Pill",
|
|
3781
|
+
description: "Compact terracotta pills with quiet primary-coloured ghost CTAs.",
|
|
3782
|
+
tags: { tone: "classic", energy: "calm", motion: "subtle", era: "organic" },
|
|
3783
|
+
buttonSystem: {
|
|
3784
|
+
global: {
|
|
3785
|
+
cornerStyle: "pill",
|
|
3786
|
+
shadow: "low",
|
|
3787
|
+
textTransform: "none",
|
|
3788
|
+
fontWeight: 500,
|
|
3789
|
+
borderWidth: 1,
|
|
3790
|
+
hoverTransform: "lift",
|
|
3791
|
+
hoverColor: "none",
|
|
3792
|
+
typography: "body",
|
|
3793
|
+
paddingPreset: "default"
|
|
3794
|
+
},
|
|
3795
|
+
sizes: {
|
|
3796
|
+
sm: { padding: "0.5rem 1rem", fontSize: "text-sm" },
|
|
3797
|
+
md: { padding: "0.625rem 1.35rem" },
|
|
3798
|
+
lg: { padding: "0.75rem 1.65rem", fontSize: "text-lg" },
|
|
3799
|
+
xl: { padding: "0.875rem 2rem", fontSize: "text-xl" }
|
|
3800
|
+
},
|
|
3801
|
+
variants: [
|
|
3802
|
+
{
|
|
3803
|
+
id: "primary",
|
|
3804
|
+
name: "Primary",
|
|
3805
|
+
enabled: true,
|
|
3806
|
+
priority: 1,
|
|
3807
|
+
background: { type: "solid", colorToken: "primary" },
|
|
3808
|
+
textColorToken: "primaryForeground",
|
|
3809
|
+
borderRadius: "rounded-full",
|
|
3810
|
+
shadow: { elevation: "low", softness: "soft", position: "bottom" },
|
|
3811
|
+
effects: {
|
|
3812
|
+
hover: [
|
|
3813
|
+
{ effectId: "lift", options: { translateY: "-1px" } },
|
|
3814
|
+
{ effectId: "background-on-hover", options: { colorToken: "accent" } }
|
|
3815
|
+
],
|
|
3816
|
+
active: [{ effectId: "scale-down", options: { scale: "0.98" } }]
|
|
3817
|
+
}
|
|
3818
|
+
},
|
|
3819
|
+
{
|
|
3820
|
+
id: "secondary",
|
|
3821
|
+
name: "Secondary",
|
|
3822
|
+
enabled: true,
|
|
3823
|
+
priority: 2,
|
|
3824
|
+
background: { type: "transparent" },
|
|
3825
|
+
textColorToken: "primary",
|
|
3826
|
+
borderRadius: "rounded-full",
|
|
3827
|
+
border: { widthClass: "border", colorToken: "primary" },
|
|
3828
|
+
effects: {
|
|
3829
|
+
hover: [{ effectId: "background-on-hover", options: { colorToken: "muted" } }]
|
|
3830
|
+
}
|
|
3831
|
+
},
|
|
3832
|
+
{
|
|
3833
|
+
id: "outline",
|
|
3834
|
+
name: "Outline",
|
|
3835
|
+
enabled: true,
|
|
3836
|
+
priority: 3,
|
|
3837
|
+
background: { type: "transparent" },
|
|
3838
|
+
textColorToken: "text",
|
|
3839
|
+
borderRadius: "rounded-full",
|
|
3840
|
+
border: { widthClass: "border", colorToken: "border" },
|
|
3841
|
+
effects: {
|
|
3842
|
+
hover: [{ effectId: "background-on-hover", options: { colorToken: "surfaceAlt" } }]
|
|
3843
|
+
}
|
|
3844
|
+
},
|
|
3845
|
+
{
|
|
3846
|
+
id: "ghost",
|
|
3847
|
+
name: "Ghost",
|
|
3848
|
+
enabled: true,
|
|
3849
|
+
priority: 3,
|
|
3850
|
+
background: { type: "transparent" },
|
|
3851
|
+
textColorToken: "primary",
|
|
3852
|
+
borderRadius: "rounded-full",
|
|
3853
|
+
shadow: { elevation: "none", softness: null, position: "bottom" },
|
|
3854
|
+
sizes: {
|
|
3855
|
+
sm: { padding: "0.25rem 0", fontSize: "text-sm" },
|
|
3856
|
+
md: { padding: "0.375rem 0" },
|
|
3857
|
+
lg: { padding: "0.5rem 0", fontSize: "text-lg" },
|
|
3858
|
+
xl: { padding: "0.625rem 0", fontSize: "text-xl" }
|
|
3859
|
+
},
|
|
3860
|
+
effects: {
|
|
3861
|
+
hover: [{ effectId: "opacity-reduce", options: { reduction: 25 } }]
|
|
3862
|
+
}
|
|
3863
|
+
}
|
|
3864
|
+
]
|
|
3865
|
+
}
|
|
3866
|
+
});
|
|
3867
|
+
}
|
|
3868
|
+
});
|
|
3869
|
+
|
|
3651
3870
|
// ../theme-core/src/buttons/personalities/editorial-link.ts
|
|
3652
3871
|
var editorialLink;
|
|
3653
3872
|
var init_editorial_link = __esm({
|
|
@@ -4145,6 +4364,7 @@ var init_personalities = __esm({
|
|
|
4145
4364
|
"use strict";
|
|
4146
4365
|
init_brushed_wash();
|
|
4147
4366
|
init_confident_chip();
|
|
4367
|
+
init_earth_pill();
|
|
4148
4368
|
init_editorial_link();
|
|
4149
4369
|
init_ink_stamp();
|
|
4150
4370
|
init_pebble();
|
|
@@ -4153,6 +4373,7 @@ var init_personalities = __esm({
|
|
|
4153
4373
|
init_types4();
|
|
4154
4374
|
buttonPersonalities = [
|
|
4155
4375
|
softPill,
|
|
4376
|
+
earthPill,
|
|
4156
4377
|
confidentChip,
|
|
4157
4378
|
editorialLink,
|
|
4158
4379
|
pebble,
|
|
@@ -7128,7 +7349,7 @@ var init_tokenOrColor = __esm({
|
|
|
7128
7349
|
|
|
7129
7350
|
// ../theme-core/src/schema.ts
|
|
7130
7351
|
import { z as z24 } from "zod";
|
|
7131
|
-
var axesSchema, colourHexString, paletteColorSchema, paletteMetaSchema, paletteSchema, typographyStyleSchema, bodyTypographyStyleSchema, headingSizeSchema, headingTypographyOverridesSchema, headingTypographyStyleSchema, proseLinkUnderlineStyleSchema, proseLinkUnderlineThicknessSchema, proseLinkUnderlineOffsetSchema, proseLinkStyleSchema, semanticSpacingSchema, boxRoundedSchema, boxBackgroundOverlaySchema, boxBackgroundSchema, sectionStylesOverrideSchema, containerStylesOverrideSchema, cardBorderOverrideSchema, cardStylesOverrideSchema, blockStyleOverridesSchema, blockThemeOverrideSchema, typographyScaleSchema, typographySchema, spaceSchema, corners, shadow, border, motion, buttonStyle, cardStyle, inputStyle, headerVariant, headerPositioning, headerNavStyle, navFontWeight, headerMaxWidth, headerContainerSchema, headerBorderSchema, logoStyleSchema, headerLogoTextSchema, navEffectsSchema, dropdownStyleSchema, headerCtaGapSchema, headerCtaTreatmentSchema, navContainerSchema, headerBackgroundSchema, headerSchema, footerVariant, footerMaxWidth, footerMode, footerNavLayoutMode, footerNavLayoutAlign, footerSpacing, footerLogoPlacement, footerLogoSize, footerLogoMaxHeight, footerBottomTextLinkStyleSchema, footerBottomBarSchema, footerNavLayoutSchema, footerLogoSchema, footerSchema, containerPaddingPresetSchema, layoutSchema, heroTypographySizeSchema, heroTypographyLineHeightSchema, heroResponsiveTypographySchema, heroTypographySchema, heroSchema, bodyTextIntroTypographySizeSchema, bodyTextSchema, gradientsSchema, themeSchema, themesTurnSchema;
|
|
7352
|
+
var axesSchema, colourHexString, paletteColorSchema, paletteMetaSchema, paletteSchema, typographyStyleSchema, bodyTypographyStyleSchema, headingSizeSchema, headingTypographyOverridesSchema, headingTypographyStyleSchema, proseLinkUnderlineStyleSchema, proseLinkUnderlineThicknessSchema, proseLinkUnderlineOffsetSchema, proseLinkStyleSchema, semanticSpacingSchema, boxRoundedSchema, boxBackgroundOverlaySchema, boxBackgroundSchema, noHeadingDecorationSchema, visibleHeadingDecorationSchema, headingDecorationSchema, accordionIconTreatmentSchema, sectionStylesOverrideSchema, containerStylesOverrideSchema, cardBorderOverrideSchema, cardStylesOverrideSchema, blockStyleOverridesSchema, blockThemeOverrideSchema, typographyScaleSchema, typographySchema, spaceSchema, corners, shadow, border, motion, buttonStyle, cardStyle, inputStyle, headerVariant, headerPositioning, headerNavStyle, navFontWeight, headerMaxWidth, headerContainerSchema, headerBorderSchema, logoStyleSchema, headerLogoTextSchema, navEffectsSchema, dropdownStyleSchema, headerCtaGapSchema, headerCtaTreatmentSchema, navContainerSchema, headerBackgroundSchema, headerSchema, footerVariant, footerMaxWidth, footerMode, footerNavLayoutMode, footerNavLayoutAlign, footerSpacing, footerLogoPlacement, footerLogoSize, footerLogoMaxHeight, footerBottomTextLinkStyleSchema, footerBottomBarSchema, footerNavLayoutSchema, footerLogoSchema, footerSchema, containerPaddingPresetSchema, layoutSchema, heroTypographySizeSchema, heroTypographyLineHeightSchema, heroResponsiveTypographySchema, heroTypographySchema, heroSchema, bodyTextIntroTypographySizeSchema, bodyTextSchema, gradientsSchema, themeSchema, themesTurnSchema;
|
|
7132
7353
|
var init_schema3 = __esm({
|
|
7133
7354
|
"../theme-core/src/schema.ts"() {
|
|
7134
7355
|
"use strict";
|
|
@@ -7223,12 +7444,36 @@ var init_schema3 = __esm({
|
|
|
7223
7444
|
textColor: tokenOrCssColorValueSchema.nullable().optional(),
|
|
7224
7445
|
headingColor: tokenOrCssColorValueSchema.nullable().optional()
|
|
7225
7446
|
});
|
|
7447
|
+
noHeadingDecorationSchema = z24.object({
|
|
7448
|
+
family: z24.literal("none"),
|
|
7449
|
+
placement: z24.literal("none")
|
|
7450
|
+
});
|
|
7451
|
+
visibleHeadingDecorationSchema = z24.object({
|
|
7452
|
+
family: z24.enum(visibleHeadingDecorationFamilyValues),
|
|
7453
|
+
placement: z24.enum(visibleHeadingDecorationPlacementValues),
|
|
7454
|
+
colorToken: z24.enum(headingDecorationColorTokenValues).optional()
|
|
7455
|
+
});
|
|
7456
|
+
headingDecorationSchema = z24.union([
|
|
7457
|
+
noHeadingDecorationSchema,
|
|
7458
|
+
visibleHeadingDecorationSchema
|
|
7459
|
+
]);
|
|
7460
|
+
accordionIconTreatmentSchema = z24.object({
|
|
7461
|
+
iconSet: z24.enum(accordionIconSetValues),
|
|
7462
|
+
colorToken: z24.enum(accordionIconColorTokenValues),
|
|
7463
|
+
openColorToken: z24.enum(accordionIconColorTokenValues).optional(),
|
|
7464
|
+
motion: z24.enum(accordionIconMotionValues)
|
|
7465
|
+
});
|
|
7226
7466
|
sectionStylesOverrideSchema = z24.object({
|
|
7227
7467
|
background: boxBackgroundSchema.nullable().optional(),
|
|
7228
7468
|
spacing: semanticSpacingSchema.nullable().optional(),
|
|
7229
7469
|
minHeight: z24.enum(["none", "banner", "hero", "immersive"]).nullable().optional(),
|
|
7230
7470
|
tileTreatment: z24.enum(tileTreatmentValues).nullable().optional(),
|
|
7231
|
-
eyebrowTreatment: z24.enum(eyebrowTreatmentValues).nullable().optional()
|
|
7471
|
+
eyebrowTreatment: z24.enum(eyebrowTreatmentValues).nullable().optional(),
|
|
7472
|
+
headingDecoration: headingDecorationSchema.nullable().optional(),
|
|
7473
|
+
// Author-level override consumed by later block/editor rendering phases.
|
|
7474
|
+
// Keeping it in section styles lets existing block save APIs persist it.
|
|
7475
|
+
headingDecorationOverride: z24.enum(headingDecorationOverrideValues).nullable().optional(),
|
|
7476
|
+
accordionIconTreatment: accordionIconTreatmentSchema.nullable().optional()
|
|
7232
7477
|
});
|
|
7233
7478
|
containerStylesOverrideSchema = z24.object({
|
|
7234
7479
|
background: boxBackgroundSchema.nullable().optional(),
|
|
@@ -7925,7 +8170,7 @@ var init_soft_natural = __esm({
|
|
|
7925
8170
|
});
|
|
7926
8171
|
|
|
7927
8172
|
// ../theme-core/src/palette/variants/warm-neutral.ts
|
|
7928
|
-
var warmNeutralClay, warmNeutralCream, warmNeutralForest;
|
|
8173
|
+
var warmNeutralClay, warmNeutralCream, warmNeutralSoftEarth, warmNeutralForest;
|
|
7929
8174
|
var init_warm_neutral = __esm({
|
|
7930
8175
|
"../theme-core/src/palette/variants/warm-neutral.ts"() {
|
|
7931
8176
|
"use strict";
|
|
@@ -7974,6 +8219,28 @@ var init_warm_neutral = __esm({
|
|
|
7974
8219
|
{ name: "border", hex: "#e0d2b8" }
|
|
7975
8220
|
]
|
|
7976
8221
|
});
|
|
8222
|
+
warmNeutralSoftEarth = definePaletteVariant({
|
|
8223
|
+
id: "warm-neutral-soft-earth",
|
|
8224
|
+
name: "Warm Neutral \u2014 Soft Earth",
|
|
8225
|
+
description: "Cream ground with terracotta primary, clay accents, and olive depth.",
|
|
8226
|
+
tags: { tone: "classic", energy: "calm", era: "organic" },
|
|
8227
|
+
mode: "light",
|
|
8228
|
+
colors: [
|
|
8229
|
+
{ name: "primary", hex: "#a8573d" },
|
|
8230
|
+
{ name: "secondary", hex: "#72765c" },
|
|
8231
|
+
{ name: "accent", hex: "#c87557" },
|
|
8232
|
+
{ name: "success", hex: "#687854" },
|
|
8233
|
+
{ name: "warning", hex: "#b7863e" },
|
|
8234
|
+
{ name: "destructive", hex: "#a54b3c" },
|
|
8235
|
+
{ name: "background", hex: "#fbf6eb" },
|
|
8236
|
+
{ name: "surface", hex: "#fffdf7" },
|
|
8237
|
+
{ name: "surfaceAlt", hex: "#f0e4d3" },
|
|
8238
|
+
{ name: "muted", hex: "#eadbc6" },
|
|
8239
|
+
{ name: "text", hex: "#30281f" },
|
|
8240
|
+
{ name: "primaryForeground", hex: "#fffaf3" },
|
|
8241
|
+
{ name: "border", hex: "#d9c8b2" }
|
|
8242
|
+
]
|
|
8243
|
+
});
|
|
7977
8244
|
warmNeutralForest = definePaletteVariant({
|
|
7978
8245
|
id: "warm-neutral-forest",
|
|
7979
8246
|
name: "Warm Neutral \u2014 Forest",
|
|
@@ -8018,6 +8285,7 @@ var init_variants = __esm({
|
|
|
8018
8285
|
// Warm-neutral family
|
|
8019
8286
|
warmNeutralClay,
|
|
8020
8287
|
warmNeutralCream,
|
|
8288
|
+
warmNeutralSoftEarth,
|
|
8021
8289
|
warmNeutralForest,
|
|
8022
8290
|
// High-contrast family
|
|
8023
8291
|
highContrastInk,
|
|
@@ -8046,6 +8314,12 @@ var init_customizableSurfaces = __esm({
|
|
|
8046
8314
|
function asHeaderLookId(value) {
|
|
8047
8315
|
return value;
|
|
8048
8316
|
}
|
|
8317
|
+
function asHeaderLayoutId(value) {
|
|
8318
|
+
return value;
|
|
8319
|
+
}
|
|
8320
|
+
function asHeaderStyleId(value) {
|
|
8321
|
+
return value;
|
|
8322
|
+
}
|
|
8049
8323
|
function baseHeader(theme) {
|
|
8050
8324
|
const {
|
|
8051
8325
|
navLinkStyle: _navLinkStyle,
|
|
@@ -8064,6 +8338,34 @@ function baseHeader(theme) {
|
|
|
8064
8338
|
navContainer: { type: "none", tint: null, opacity: 0.15 }
|
|
8065
8339
|
};
|
|
8066
8340
|
}
|
|
8341
|
+
function supportedLayouts(ids) {
|
|
8342
|
+
return ids.map(asHeaderLayoutId);
|
|
8343
|
+
}
|
|
8344
|
+
function headerStyleRepairChain(values) {
|
|
8345
|
+
return values.map(asHeaderStyleId);
|
|
8346
|
+
}
|
|
8347
|
+
function getHeaderStyle(id) {
|
|
8348
|
+
return headerStylesById.get(id) ?? null;
|
|
8349
|
+
}
|
|
8350
|
+
function isHeaderStyleCompatibleWithLayout(style, layoutId) {
|
|
8351
|
+
return style.supportedLayoutIds.includes(layoutId);
|
|
8352
|
+
}
|
|
8353
|
+
function getHeaderStyleOrThrow(id) {
|
|
8354
|
+
const style = getHeaderStyle(id);
|
|
8355
|
+
if (!style) {
|
|
8356
|
+
throw new Error(`Unknown Theme V2 header style: ${id}`);
|
|
8357
|
+
}
|
|
8358
|
+
return style;
|
|
8359
|
+
}
|
|
8360
|
+
function resolveLegacyHeaderLookAlias(lookId) {
|
|
8361
|
+
return legacyHeaderLookAliasesById.get(lookId)?.selection ?? null;
|
|
8362
|
+
}
|
|
8363
|
+
function getCompatibleHeaderStyleIds(layoutId) {
|
|
8364
|
+
return (headerStyleCompatibilityOrder.get(layoutId) ?? []).filter((styleId) => {
|
|
8365
|
+
const style = getHeaderStyleOrThrow(styleId);
|
|
8366
|
+
return isHeaderStyleCompatibleWithLayout(style, layoutId);
|
|
8367
|
+
});
|
|
8368
|
+
}
|
|
8067
8369
|
function solidBrandHeader(theme) {
|
|
8068
8370
|
const ctaVariant = resolveHeaderCtaVariant(theme, "inverted");
|
|
8069
8371
|
return {
|
|
@@ -8294,19 +8596,302 @@ function floatingGlassHeader(theme) {
|
|
|
8294
8596
|
}
|
|
8295
8597
|
};
|
|
8296
8598
|
}
|
|
8297
|
-
|
|
8599
|
+
function headerConfigurationKey(configuration) {
|
|
8600
|
+
return `${configuration.structure}:${configuration.treatment}:${configuration.behavior}`;
|
|
8601
|
+
}
|
|
8602
|
+
var headerLayoutCatalog, headerStyleCatalog, headerLayoutsById, headerStylesById, headerStyleCompatibilityOrder, headerStyleRepairOrder, legacyHeaderLookAliases, legacyHeaderLookAliasesById, headerLookCatalog, guaranteedFallbackHeaderLookId, guaranteedFallbackHeaderLayoutId, guaranteedFallbackHeaderStyleId, allowedHeaderConfigurationKeys, headerLooksById;
|
|
8298
8603
|
var init_headerLooks = __esm({
|
|
8299
8604
|
"../theme-core/src/site-styles/headerLooks.ts"() {
|
|
8300
8605
|
"use strict";
|
|
8301
8606
|
init_headerCtaVariants();
|
|
8302
8607
|
init_customizableSurfaces();
|
|
8303
8608
|
init_types2();
|
|
8609
|
+
headerLayoutCatalog = [
|
|
8610
|
+
{
|
|
8611
|
+
id: asHeaderLayoutId("classic"),
|
|
8612
|
+
label: "Classic",
|
|
8613
|
+
description: "Logo and navigation in one practical horizontal row.",
|
|
8614
|
+
structure: "inline-classic",
|
|
8615
|
+
variant: "classic",
|
|
8616
|
+
defaultPositioning: "sticky",
|
|
8617
|
+
shrinkOnScroll: false
|
|
8618
|
+
},
|
|
8619
|
+
{
|
|
8620
|
+
id: asHeaderLayoutId("centered"),
|
|
8621
|
+
label: "Centered",
|
|
8622
|
+
description: "Logo centered above a balanced navigation row.",
|
|
8623
|
+
structure: "centered-stack",
|
|
8624
|
+
variant: "centered",
|
|
8625
|
+
defaultPositioning: "static",
|
|
8626
|
+
shrinkOnScroll: false,
|
|
8627
|
+
maxRecommendedNavItems: 5,
|
|
8628
|
+
allowedLogoShapes: ["none", "text-only", "horizontal", "square"]
|
|
8629
|
+
},
|
|
8630
|
+
{
|
|
8631
|
+
id: asHeaderLayoutId("editorial"),
|
|
8632
|
+
label: "Editorial",
|
|
8633
|
+
description: "A composed, magazine-like stacked header treatment.",
|
|
8634
|
+
structure: "editorial-stack",
|
|
8635
|
+
variant: "editorial",
|
|
8636
|
+
defaultPositioning: "static",
|
|
8637
|
+
shrinkOnScroll: false,
|
|
8638
|
+
maxRecommendedNavItems: 6
|
|
8639
|
+
},
|
|
8640
|
+
{
|
|
8641
|
+
id: asHeaderLayoutId("floating"),
|
|
8642
|
+
label: "Floating",
|
|
8643
|
+
description: "Detached header chrome that sits over the opening section.",
|
|
8644
|
+
structure: "floating-shell",
|
|
8645
|
+
variant: "floating",
|
|
8646
|
+
defaultPositioning: "fixed",
|
|
8647
|
+
shrinkOnScroll: true,
|
|
8648
|
+
maxRecommendedNavItems: 5,
|
|
8649
|
+
allowedLogoShapes: ["none", "text-only", "horizontal"]
|
|
8650
|
+
}
|
|
8651
|
+
];
|
|
8652
|
+
headerStyleCatalog = [
|
|
8653
|
+
{
|
|
8654
|
+
id: asHeaderStyleId("minimal"),
|
|
8655
|
+
label: "Minimal",
|
|
8656
|
+
description: "Quiet surface with simple color-change navigation.",
|
|
8657
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered", "editorial"]),
|
|
8658
|
+
navInteraction: "color-change",
|
|
8659
|
+
surface: "neutral"
|
|
8660
|
+
},
|
|
8661
|
+
{
|
|
8662
|
+
id: asHeaderStyleId("fine-line"),
|
|
8663
|
+
label: "Fine Line",
|
|
8664
|
+
description: "Light surface with a crisp lower rule and underline hover.",
|
|
8665
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered", "editorial"]),
|
|
8666
|
+
navInteraction: "underline-grow",
|
|
8667
|
+
surface: "bordered"
|
|
8668
|
+
},
|
|
8669
|
+
{
|
|
8670
|
+
id: asHeaderStyleId("soft-bar"),
|
|
8671
|
+
label: "Soft Bar",
|
|
8672
|
+
description: "Soft tinted surface with gentle pill hover states.",
|
|
8673
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
8674
|
+
navInteraction: "pill-background",
|
|
8675
|
+
surface: "soft"
|
|
8676
|
+
},
|
|
8677
|
+
{
|
|
8678
|
+
id: asHeaderStyleId("pill-nav"),
|
|
8679
|
+
label: "Pill Nav",
|
|
8680
|
+
description: "A calm pill navigation rail over a neutral header.",
|
|
8681
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
8682
|
+
navInteraction: "pill-background",
|
|
8683
|
+
surface: "soft"
|
|
8684
|
+
},
|
|
8685
|
+
{
|
|
8686
|
+
id: asHeaderStyleId("brand-bar"),
|
|
8687
|
+
label: "Brand Bar",
|
|
8688
|
+
description: "Solid brand surface with high-contrast navigation.",
|
|
8689
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered", "editorial"]),
|
|
8690
|
+
navInteraction: "color-change",
|
|
8691
|
+
surface: "brand-solid"
|
|
8692
|
+
},
|
|
8693
|
+
{
|
|
8694
|
+
id: asHeaderStyleId("brand-underline"),
|
|
8695
|
+
label: "Brand Underline",
|
|
8696
|
+
description: "Brand surface with underline-grow navigation.",
|
|
8697
|
+
supportedLayoutIds: supportedLayouts(["classic", "editorial"]),
|
|
8698
|
+
navInteraction: "underline-grow",
|
|
8699
|
+
surface: "brand-solid"
|
|
8700
|
+
},
|
|
8701
|
+
{
|
|
8702
|
+
id: asHeaderStyleId("brand-pill"),
|
|
8703
|
+
label: "Brand Pill",
|
|
8704
|
+
description: "Solid brand surface with rounded active and hover states.",
|
|
8705
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered", "floating"]),
|
|
8706
|
+
navInteraction: "pill-background",
|
|
8707
|
+
surface: "brand-solid"
|
|
8708
|
+
},
|
|
8709
|
+
{
|
|
8710
|
+
id: asHeaderStyleId("editorial-line"),
|
|
8711
|
+
label: "Editorial Line",
|
|
8712
|
+
description: "Typographic logo treatment with understated underline navigation.",
|
|
8713
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered", "editorial"]),
|
|
8714
|
+
navInteraction: "underline-grow",
|
|
8715
|
+
surface: "bordered"
|
|
8716
|
+
},
|
|
8717
|
+
{
|
|
8718
|
+
id: asHeaderStyleId("flat-tabs"),
|
|
8719
|
+
label: "Flat Tabs",
|
|
8720
|
+
description: "Flat block hover and active states with a Swiss utility feel.",
|
|
8721
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered", "editorial"]),
|
|
8722
|
+
navInteraction: "flat-block",
|
|
8723
|
+
surface: "bordered"
|
|
8724
|
+
},
|
|
8725
|
+
{
|
|
8726
|
+
id: asHeaderStyleId("glass"),
|
|
8727
|
+
label: "Glass",
|
|
8728
|
+
description: "Floating translucent chrome with frosted navigation backing.",
|
|
8729
|
+
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
8730
|
+
navInteraction: "glass-backed",
|
|
8731
|
+
surface: "floating",
|
|
8732
|
+
requiresFloatingLayout: true
|
|
8733
|
+
},
|
|
8734
|
+
{
|
|
8735
|
+
id: asHeaderStyleId("minimal-surface"),
|
|
8736
|
+
label: "Minimal Surface",
|
|
8737
|
+
description: "Floating chrome with a restrained translucent surface.",
|
|
8738
|
+
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
8739
|
+
navInteraction: "color-change",
|
|
8740
|
+
surface: "floating",
|
|
8741
|
+
requiresFloatingLayout: true
|
|
8742
|
+
},
|
|
8743
|
+
{
|
|
8744
|
+
id: asHeaderStyleId("soft-shell"),
|
|
8745
|
+
label: "Soft Shell",
|
|
8746
|
+
description: "Floating rounded shell with soft pill navigation states.",
|
|
8747
|
+
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
8748
|
+
navInteraction: "pill-background",
|
|
8749
|
+
surface: "floating",
|
|
8750
|
+
requiresFloatingLayout: true
|
|
8751
|
+
}
|
|
8752
|
+
];
|
|
8753
|
+
headerLayoutsById = new Map(
|
|
8754
|
+
headerLayoutCatalog.map((layout) => [layout.id, layout])
|
|
8755
|
+
);
|
|
8756
|
+
headerStylesById = new Map(
|
|
8757
|
+
headerStyleCatalog.map((style) => [style.id, style])
|
|
8758
|
+
);
|
|
8759
|
+
headerStyleCompatibilityOrder = /* @__PURE__ */ new Map([
|
|
8760
|
+
[
|
|
8761
|
+
asHeaderLayoutId("classic"),
|
|
8762
|
+
headerStyleRepairChain([
|
|
8763
|
+
"minimal",
|
|
8764
|
+
"fine-line",
|
|
8765
|
+
"soft-bar",
|
|
8766
|
+
"pill-nav",
|
|
8767
|
+
"brand-bar",
|
|
8768
|
+
"brand-underline",
|
|
8769
|
+
"brand-pill",
|
|
8770
|
+
"editorial-line",
|
|
8771
|
+
"flat-tabs"
|
|
8772
|
+
])
|
|
8773
|
+
],
|
|
8774
|
+
[
|
|
8775
|
+
asHeaderLayoutId("centered"),
|
|
8776
|
+
headerStyleRepairChain([
|
|
8777
|
+
"minimal",
|
|
8778
|
+
"fine-line",
|
|
8779
|
+
"soft-bar",
|
|
8780
|
+
"pill-nav",
|
|
8781
|
+
"brand-bar",
|
|
8782
|
+
"brand-pill",
|
|
8783
|
+
"editorial-line",
|
|
8784
|
+
"flat-tabs"
|
|
8785
|
+
])
|
|
8786
|
+
],
|
|
8787
|
+
[
|
|
8788
|
+
asHeaderLayoutId("editorial"),
|
|
8789
|
+
headerStyleRepairChain([
|
|
8790
|
+
"minimal",
|
|
8791
|
+
"fine-line",
|
|
8792
|
+
"soft-bar",
|
|
8793
|
+
"brand-bar",
|
|
8794
|
+
"brand-underline",
|
|
8795
|
+
"editorial-line",
|
|
8796
|
+
"flat-tabs"
|
|
8797
|
+
])
|
|
8798
|
+
],
|
|
8799
|
+
[
|
|
8800
|
+
asHeaderLayoutId("floating"),
|
|
8801
|
+
headerStyleRepairChain([
|
|
8802
|
+
"glass",
|
|
8803
|
+
"minimal-surface",
|
|
8804
|
+
"soft-shell",
|
|
8805
|
+
"brand-pill"
|
|
8806
|
+
])
|
|
8807
|
+
]
|
|
8808
|
+
]);
|
|
8809
|
+
headerStyleRepairOrder = /* @__PURE__ */ new Map([
|
|
8810
|
+
[asHeaderStyleId("brand-bar"), headerStyleRepairChain(["brand-bar", "brand-pill", "minimal"])],
|
|
8811
|
+
[asHeaderStyleId("brand-underline"), headerStyleRepairChain(["editorial-line", "fine-line", "minimal"])],
|
|
8812
|
+
[asHeaderStyleId("brand-pill"), headerStyleRepairChain(["brand-pill", "brand-bar", "minimal"])],
|
|
8813
|
+
[asHeaderStyleId("pill-nav"), headerStyleRepairChain(["pill-nav", "soft-bar", "minimal"])],
|
|
8814
|
+
[asHeaderStyleId("flat-tabs"), headerStyleRepairChain(["flat-tabs", "pill-nav", "minimal"])],
|
|
8815
|
+
[asHeaderStyleId("editorial-line"), headerStyleRepairChain(["editorial-line", "fine-line", "minimal"])],
|
|
8816
|
+
[asHeaderStyleId("glass"), headerStyleRepairChain(["glass", "minimal-surface", "minimal"])],
|
|
8817
|
+
[asHeaderStyleId("soft-shell"), headerStyleRepairChain(["soft-shell", "soft-bar", "minimal"])],
|
|
8818
|
+
[asHeaderStyleId("minimal-surface"), headerStyleRepairChain(["minimal-surface", "minimal"])],
|
|
8819
|
+
[asHeaderStyleId("fine-line"), headerStyleRepairChain(["fine-line", "minimal"])],
|
|
8820
|
+
[asHeaderStyleId("soft-bar"), headerStyleRepairChain(["soft-bar", "minimal"])],
|
|
8821
|
+
[asHeaderStyleId("minimal"), headerStyleRepairChain(["minimal"])]
|
|
8822
|
+
]);
|
|
8823
|
+
legacyHeaderLookAliases = [
|
|
8824
|
+
{
|
|
8825
|
+
lookId: asHeaderLookId("clean-base"),
|
|
8826
|
+
selection: {
|
|
8827
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
8828
|
+
styleId: asHeaderStyleId("minimal")
|
|
8829
|
+
}
|
|
8830
|
+
},
|
|
8831
|
+
{
|
|
8832
|
+
lookId: asHeaderLookId("brand-solid"),
|
|
8833
|
+
selection: {
|
|
8834
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
8835
|
+
styleId: asHeaderStyleId("brand-bar")
|
|
8836
|
+
}
|
|
8837
|
+
},
|
|
8838
|
+
{
|
|
8839
|
+
lookId: asHeaderLookId("editorial-line"),
|
|
8840
|
+
selection: {
|
|
8841
|
+
layoutId: asHeaderLayoutId("editorial"),
|
|
8842
|
+
styleId: asHeaderStyleId("editorial-line")
|
|
8843
|
+
}
|
|
8844
|
+
},
|
|
8845
|
+
{
|
|
8846
|
+
lookId: asHeaderLookId("centered-calm"),
|
|
8847
|
+
selection: {
|
|
8848
|
+
layoutId: asHeaderLayoutId("centered"),
|
|
8849
|
+
styleId: asHeaderStyleId("minimal")
|
|
8850
|
+
}
|
|
8851
|
+
},
|
|
8852
|
+
{
|
|
8853
|
+
lookId: asHeaderLookId("practical-utility"),
|
|
8854
|
+
selection: {
|
|
8855
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
8856
|
+
styleId: asHeaderStyleId("flat-tabs")
|
|
8857
|
+
}
|
|
8858
|
+
},
|
|
8859
|
+
{
|
|
8860
|
+
lookId: asHeaderLookId("minimal-transparent"),
|
|
8861
|
+
selection: {
|
|
8862
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
8863
|
+
styleId: asHeaderStyleId("minimal")
|
|
8864
|
+
}
|
|
8865
|
+
},
|
|
8866
|
+
{
|
|
8867
|
+
lookId: asHeaderLookId("transparent-overlay"),
|
|
8868
|
+
selection: {
|
|
8869
|
+
layoutId: asHeaderLayoutId("floating"),
|
|
8870
|
+
styleId: asHeaderStyleId("glass")
|
|
8871
|
+
}
|
|
8872
|
+
},
|
|
8873
|
+
{
|
|
8874
|
+
lookId: asHeaderLookId("floating-glass"),
|
|
8875
|
+
selection: {
|
|
8876
|
+
layoutId: asHeaderLayoutId("floating"),
|
|
8877
|
+
styleId: asHeaderStyleId("glass")
|
|
8878
|
+
}
|
|
8879
|
+
}
|
|
8880
|
+
];
|
|
8881
|
+
legacyHeaderLookAliasesById = new Map(
|
|
8882
|
+
legacyHeaderLookAliases.map((alias) => [alias.lookId, alias])
|
|
8883
|
+
);
|
|
8304
8884
|
headerLookCatalog = [
|
|
8305
8885
|
{
|
|
8306
8886
|
id: asHeaderLookId("clean-base"),
|
|
8307
8887
|
label: "Clean base",
|
|
8308
8888
|
visualTreatment: "solid-neutral",
|
|
8309
8889
|
layoutBehavior: "sticky",
|
|
8890
|
+
configuration: {
|
|
8891
|
+
structure: "inline-classic",
|
|
8892
|
+
treatment: "solid-neutral",
|
|
8893
|
+
behavior: "sticky"
|
|
8894
|
+
},
|
|
8310
8895
|
openingRequirement: "none",
|
|
8311
8896
|
compile: cleanBaseHeader
|
|
8312
8897
|
},
|
|
@@ -8315,6 +8900,11 @@ var init_headerLooks = __esm({
|
|
|
8315
8900
|
label: "Brand solid",
|
|
8316
8901
|
visualTreatment: "solid-brand",
|
|
8317
8902
|
layoutBehavior: "sticky-shrink",
|
|
8903
|
+
configuration: {
|
|
8904
|
+
structure: "inline-classic",
|
|
8905
|
+
treatment: "solid-brand",
|
|
8906
|
+
behavior: "sticky-shrink"
|
|
8907
|
+
},
|
|
8318
8908
|
openingRequirement: "none",
|
|
8319
8909
|
compile: solidBrandHeader
|
|
8320
8910
|
},
|
|
@@ -8323,6 +8913,11 @@ var init_headerLooks = __esm({
|
|
|
8323
8913
|
label: "Editorial line",
|
|
8324
8914
|
visualTreatment: "light-editorial",
|
|
8325
8915
|
layoutBehavior: "sticky",
|
|
8916
|
+
configuration: {
|
|
8917
|
+
structure: "editorial-stack",
|
|
8918
|
+
treatment: "light-editorial",
|
|
8919
|
+
behavior: "sticky"
|
|
8920
|
+
},
|
|
8326
8921
|
openingRequirement: "none",
|
|
8327
8922
|
maxRecommendedNavItems: 6,
|
|
8328
8923
|
compile: editorialLineHeader
|
|
@@ -8332,6 +8927,11 @@ var init_headerLooks = __esm({
|
|
|
8332
8927
|
label: "Centered calm",
|
|
8333
8928
|
visualTreatment: "light-editorial",
|
|
8334
8929
|
layoutBehavior: "normal-flow",
|
|
8930
|
+
configuration: {
|
|
8931
|
+
structure: "centered-stack",
|
|
8932
|
+
treatment: "light-editorial",
|
|
8933
|
+
behavior: "normal-flow"
|
|
8934
|
+
},
|
|
8335
8935
|
openingRequirement: "none",
|
|
8336
8936
|
maxRecommendedNavItems: 5,
|
|
8337
8937
|
allowedLogoShapes: ["none", "text-only", "horizontal", "square"],
|
|
@@ -8342,6 +8942,11 @@ var init_headerLooks = __esm({
|
|
|
8342
8942
|
label: "Practical utility",
|
|
8343
8943
|
visualTreatment: "solid-neutral",
|
|
8344
8944
|
layoutBehavior: "sticky-shrink",
|
|
8945
|
+
configuration: {
|
|
8946
|
+
structure: "inline-classic",
|
|
8947
|
+
treatment: "solid-neutral",
|
|
8948
|
+
behavior: "sticky-shrink"
|
|
8949
|
+
},
|
|
8345
8950
|
openingRequirement: "none",
|
|
8346
8951
|
requiresProminentCta: true,
|
|
8347
8952
|
compile: practicalUtilityHeader
|
|
@@ -8351,6 +8956,11 @@ var init_headerLooks = __esm({
|
|
|
8351
8956
|
label: "Minimal transparent",
|
|
8352
8957
|
visualTreatment: "minimal-transparent",
|
|
8353
8958
|
layoutBehavior: "normal-flow",
|
|
8959
|
+
configuration: {
|
|
8960
|
+
structure: "inline-classic",
|
|
8961
|
+
treatment: "minimal-transparent",
|
|
8962
|
+
behavior: "normal-flow"
|
|
8963
|
+
},
|
|
8354
8964
|
openingRequirement: "reserved-space-ok",
|
|
8355
8965
|
compile: minimalTransparentHeader
|
|
8356
8966
|
},
|
|
@@ -8359,6 +8969,11 @@ var init_headerLooks = __esm({
|
|
|
8359
8969
|
label: "Transparent overlay",
|
|
8360
8970
|
visualTreatment: "transparent-overlay",
|
|
8361
8971
|
layoutBehavior: "fixed-overlay",
|
|
8972
|
+
configuration: {
|
|
8973
|
+
structure: "inline-classic",
|
|
8974
|
+
treatment: "transparent-overlay",
|
|
8975
|
+
behavior: "fixed-overlay"
|
|
8976
|
+
},
|
|
8362
8977
|
openingRequirement: "requires-image-hero-with-contrast-overlay",
|
|
8363
8978
|
maxRecommendedNavItems: 5,
|
|
8364
8979
|
allowedLogoShapes: ["none", "text-only", "horizontal"],
|
|
@@ -8369,6 +8984,11 @@ var init_headerLooks = __esm({
|
|
|
8369
8984
|
label: "Floating glass",
|
|
8370
8985
|
visualTreatment: "floating-glass",
|
|
8371
8986
|
layoutBehavior: "fixed-floating",
|
|
8987
|
+
configuration: {
|
|
8988
|
+
structure: "floating-shell",
|
|
8989
|
+
treatment: "floating-glass",
|
|
8990
|
+
behavior: "fixed-floating"
|
|
8991
|
+
},
|
|
8372
8992
|
openingRequirement: "requires-image-hero-with-contrast-overlay",
|
|
8373
8993
|
maxRecommendedNavItems: 5,
|
|
8374
8994
|
allowedLogoShapes: ["none", "text-only", "horizontal"],
|
|
@@ -8376,6 +8996,11 @@ var init_headerLooks = __esm({
|
|
|
8376
8996
|
}
|
|
8377
8997
|
];
|
|
8378
8998
|
guaranteedFallbackHeaderLookId = asHeaderLookId("clean-base");
|
|
8999
|
+
guaranteedFallbackHeaderLayoutId = asHeaderLayoutId("classic");
|
|
9000
|
+
guaranteedFallbackHeaderStyleId = asHeaderStyleId("minimal");
|
|
9001
|
+
allowedHeaderConfigurationKeys = new Set(
|
|
9002
|
+
headerLookCatalog.map((look) => headerConfigurationKey(look.configuration))
|
|
9003
|
+
);
|
|
8379
9004
|
headerLooksById = new Map(
|
|
8380
9005
|
headerLookCatalog.map((look) => [look.id, look])
|
|
8381
9006
|
);
|
|
@@ -8535,6 +9160,270 @@ var init_sourceCatalogs = __esm({
|
|
|
8535
9160
|
}
|
|
8536
9161
|
});
|
|
8537
9162
|
|
|
9163
|
+
// ../theme-core/src/site-styles/typographyPresets.ts
|
|
9164
|
+
function asTypographyPresetId(value) {
|
|
9165
|
+
if (!value.startsWith("typography-preset:")) {
|
|
9166
|
+
throw new Error(`TypographyPresetId must start with "typography-preset:". Received: ${value}`);
|
|
9167
|
+
}
|
|
9168
|
+
return value;
|
|
9169
|
+
}
|
|
9170
|
+
function defineTypographyPreset(preset2) {
|
|
9171
|
+
return {
|
|
9172
|
+
...preset2,
|
|
9173
|
+
id: asTypographyPresetId(preset2.id)
|
|
9174
|
+
};
|
|
9175
|
+
}
|
|
9176
|
+
var bodyReadablePolicy, headingFlexiblePolicy, displayHeadingPolicy, modernSansTypography, warmRoundedTypography, editorialSerifTypography, classicSerifTypography, luxeContrastTypography, boldDisplayTypography, typographyPresets, typographyPresetsById;
|
|
9177
|
+
var init_typographyPresets = __esm({
|
|
9178
|
+
"../theme-core/src/site-styles/typographyPresets.ts"() {
|
|
9179
|
+
"use strict";
|
|
9180
|
+
bodyReadablePolicy = {
|
|
9181
|
+
recommendedCategories: ["sans-serif", "serif"],
|
|
9182
|
+
allowedCategories: ["sans-serif", "serif"],
|
|
9183
|
+
requiresItalicForBody: true,
|
|
9184
|
+
requiresBoldForBody: true
|
|
9185
|
+
};
|
|
9186
|
+
headingFlexiblePolicy = {
|
|
9187
|
+
recommendedCategories: ["sans-serif", "serif", "display"],
|
|
9188
|
+
allowedCategories: ["sans-serif", "serif", "display"]
|
|
9189
|
+
};
|
|
9190
|
+
displayHeadingPolicy = {
|
|
9191
|
+
recommendedCategories: ["display", "sans-serif", "serif"],
|
|
9192
|
+
allowedCategories: ["display", "sans-serif", "serif"]
|
|
9193
|
+
};
|
|
9194
|
+
modernSansTypography = {
|
|
9195
|
+
body: {
|
|
9196
|
+
family: "Inter, system-ui, sans-serif",
|
|
9197
|
+
size: "md",
|
|
9198
|
+
weight: "regular",
|
|
9199
|
+
lineHeight: "relaxed",
|
|
9200
|
+
letterSpacing: "normal"
|
|
9201
|
+
},
|
|
9202
|
+
headings: {
|
|
9203
|
+
default: {
|
|
9204
|
+
family: "Inter, system-ui, sans-serif",
|
|
9205
|
+
weight: "semibold",
|
|
9206
|
+
lineHeight: "normal",
|
|
9207
|
+
letterSpacing: "tight",
|
|
9208
|
+
italic: null,
|
|
9209
|
+
case: null
|
|
9210
|
+
},
|
|
9211
|
+
h1: { size: "xl", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
9212
|
+
h2: { size: "lg", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
9213
|
+
h3: { size: "md", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null }
|
|
9214
|
+
},
|
|
9215
|
+
scale: "balanced"
|
|
9216
|
+
};
|
|
9217
|
+
warmRoundedTypography = {
|
|
9218
|
+
body: {
|
|
9219
|
+
family: "Nunito Sans, system-ui, sans-serif",
|
|
9220
|
+
size: "lg",
|
|
9221
|
+
weight: "regular",
|
|
9222
|
+
lineHeight: "relaxed",
|
|
9223
|
+
letterSpacing: "normal"
|
|
9224
|
+
},
|
|
9225
|
+
headings: {
|
|
9226
|
+
default: {
|
|
9227
|
+
family: "Nunito Sans, system-ui, sans-serif",
|
|
9228
|
+
weight: "bold",
|
|
9229
|
+
lineHeight: "normal",
|
|
9230
|
+
letterSpacing: "normal",
|
|
9231
|
+
italic: null,
|
|
9232
|
+
case: null
|
|
9233
|
+
},
|
|
9234
|
+
h1: { size: "xl", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
9235
|
+
h2: { size: "lg", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
9236
|
+
h3: { size: "md", weight: "semibold", lineHeight: "relaxed", letterSpacing: "normal", italic: null }
|
|
9237
|
+
},
|
|
9238
|
+
scale: "balanced"
|
|
9239
|
+
};
|
|
9240
|
+
editorialSerifTypography = {
|
|
9241
|
+
body: {
|
|
9242
|
+
family: "Lora, Georgia, serif",
|
|
9243
|
+
size: "lg",
|
|
9244
|
+
weight: "regular",
|
|
9245
|
+
lineHeight: "loose",
|
|
9246
|
+
letterSpacing: "normal"
|
|
9247
|
+
},
|
|
9248
|
+
headings: {
|
|
9249
|
+
default: {
|
|
9250
|
+
family: "Playfair Display, Georgia, serif",
|
|
9251
|
+
weight: "semibold",
|
|
9252
|
+
lineHeight: "normal",
|
|
9253
|
+
letterSpacing: "tight",
|
|
9254
|
+
italic: null,
|
|
9255
|
+
case: null
|
|
9256
|
+
},
|
|
9257
|
+
h1: { size: "2xl", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
9258
|
+
h2: { size: "xl", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
9259
|
+
h3: { size: "md", weight: "semibold", lineHeight: "relaxed", letterSpacing: "normal", italic: true }
|
|
9260
|
+
},
|
|
9261
|
+
scale: "spacious"
|
|
9262
|
+
};
|
|
9263
|
+
classicSerifTypography = {
|
|
9264
|
+
body: {
|
|
9265
|
+
family: "Libre Baskerville, Georgia, serif",
|
|
9266
|
+
size: "md",
|
|
9267
|
+
weight: "regular",
|
|
9268
|
+
lineHeight: "relaxed",
|
|
9269
|
+
letterSpacing: "normal"
|
|
9270
|
+
},
|
|
9271
|
+
headings: {
|
|
9272
|
+
default: {
|
|
9273
|
+
family: "Cormorant Garamond, Georgia, serif",
|
|
9274
|
+
weight: "semibold",
|
|
9275
|
+
lineHeight: "normal",
|
|
9276
|
+
letterSpacing: "normal",
|
|
9277
|
+
italic: null,
|
|
9278
|
+
case: null
|
|
9279
|
+
},
|
|
9280
|
+
h1: { size: "2xl", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
9281
|
+
h2: { size: "xl", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
9282
|
+
h3: { size: "md", weight: "medium", lineHeight: "relaxed", letterSpacing: "normal", italic: null }
|
|
9283
|
+
},
|
|
9284
|
+
scale: "balanced"
|
|
9285
|
+
};
|
|
9286
|
+
luxeContrastTypography = {
|
|
9287
|
+
body: {
|
|
9288
|
+
family: "Manrope, system-ui, sans-serif",
|
|
9289
|
+
size: "md",
|
|
9290
|
+
weight: "regular",
|
|
9291
|
+
lineHeight: "relaxed",
|
|
9292
|
+
letterSpacing: "normal"
|
|
9293
|
+
},
|
|
9294
|
+
headings: {
|
|
9295
|
+
default: {
|
|
9296
|
+
family: "Cormorant Garamond, Georgia, serif",
|
|
9297
|
+
weight: "semibold",
|
|
9298
|
+
lineHeight: "normal",
|
|
9299
|
+
letterSpacing: "tight",
|
|
9300
|
+
italic: null,
|
|
9301
|
+
case: null
|
|
9302
|
+
},
|
|
9303
|
+
h1: { size: "2xl", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
9304
|
+
h2: { size: "xl", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
9305
|
+
h3: { size: "md", weight: "medium", lineHeight: "relaxed", letterSpacing: "normal", italic: null }
|
|
9306
|
+
},
|
|
9307
|
+
scale: "spacious"
|
|
9308
|
+
};
|
|
9309
|
+
boldDisplayTypography = {
|
|
9310
|
+
body: {
|
|
9311
|
+
family: "Manrope, system-ui, sans-serif",
|
|
9312
|
+
size: "lg",
|
|
9313
|
+
weight: "regular",
|
|
9314
|
+
lineHeight: "relaxed",
|
|
9315
|
+
letterSpacing: "normal"
|
|
9316
|
+
},
|
|
9317
|
+
headings: {
|
|
9318
|
+
default: {
|
|
9319
|
+
family: '"TAN - PEARL", sans-serif',
|
|
9320
|
+
weight: "bold",
|
|
9321
|
+
lineHeight: "normal",
|
|
9322
|
+
letterSpacing: "tight",
|
|
9323
|
+
colorToken: "primary",
|
|
9324
|
+
italic: null,
|
|
9325
|
+
case: null
|
|
9326
|
+
},
|
|
9327
|
+
h1: { size: "xl", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
9328
|
+
h2: { size: "lg", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
9329
|
+
h3: { size: "md", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null }
|
|
9330
|
+
},
|
|
9331
|
+
scale: "balanced"
|
|
9332
|
+
};
|
|
9333
|
+
typographyPresets = [
|
|
9334
|
+
defineTypographyPreset({
|
|
9335
|
+
id: "typography-preset:modern-sans",
|
|
9336
|
+
name: "Modern Sans",
|
|
9337
|
+
description: "Crisp, neutral type for clear service pages and practical editorial structure.",
|
|
9338
|
+
defaultFonts: { body: "Inter, system-ui, sans-serif", heading: "Inter, system-ui, sans-serif" },
|
|
9339
|
+
recommendedFonts: {
|
|
9340
|
+
body: ["Inter", "Source Sans 3", "IBM Plex Sans"],
|
|
9341
|
+
heading: ["Inter", "Manrope", "Source Sans 3"]
|
|
9342
|
+
},
|
|
9343
|
+
slotPolicies: { body: bodyReadablePolicy, heading: headingFlexiblePolicy },
|
|
9344
|
+
typography: modernSansTypography
|
|
9345
|
+
}),
|
|
9346
|
+
defineTypographyPreset({
|
|
9347
|
+
id: "typography-preset:warm-rounded",
|
|
9348
|
+
name: "Warm Rounded",
|
|
9349
|
+
description: "Soft, friendly type for welcoming studios, classes, and community businesses.",
|
|
9350
|
+
defaultFonts: { body: "Nunito Sans, system-ui, sans-serif", heading: "Nunito Sans, system-ui, sans-serif" },
|
|
9351
|
+
recommendedFonts: {
|
|
9352
|
+
body: ["Nunito Sans", "Atkinson Hyperlegible", "Lato"],
|
|
9353
|
+
heading: ["Nunito Sans", "Quicksand", "Manrope"]
|
|
9354
|
+
},
|
|
9355
|
+
slotPolicies: { body: bodyReadablePolicy, heading: headingFlexiblePolicy },
|
|
9356
|
+
typography: warmRoundedTypography
|
|
9357
|
+
}),
|
|
9358
|
+
defineTypographyPreset({
|
|
9359
|
+
id: "typography-preset:editorial-serif",
|
|
9360
|
+
name: "Editorial Serif",
|
|
9361
|
+
description: "Story-led type with warm reading rhythm and expressive headings.",
|
|
9362
|
+
defaultFonts: { body: "Lora, Georgia, serif", heading: "Playfair Display, Georgia, serif" },
|
|
9363
|
+
recommendedFonts: {
|
|
9364
|
+
body: ["Lora", "Source Serif 4", "Libre Baskerville"],
|
|
9365
|
+
heading: ["Playfair Display", "Cormorant Garamond", "Fraunces"]
|
|
9366
|
+
},
|
|
9367
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
9368
|
+
typography: editorialSerifTypography
|
|
9369
|
+
}),
|
|
9370
|
+
defineTypographyPreset({
|
|
9371
|
+
id: "typography-preset:classic-serif",
|
|
9372
|
+
name: "Classic Serif",
|
|
9373
|
+
description: "Measured, polished type for premium and established offers.",
|
|
9374
|
+
defaultFonts: { body: "Libre Baskerville, Georgia, serif", heading: "Cormorant Garamond, Georgia, serif" },
|
|
9375
|
+
recommendedFonts: {
|
|
9376
|
+
body: ["Libre Baskerville", "Source Serif 4", "Lora"],
|
|
9377
|
+
heading: ["Cormorant Garamond", "Playfair Display", "Libre Baskerville"]
|
|
9378
|
+
},
|
|
9379
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
9380
|
+
typography: classicSerifTypography
|
|
9381
|
+
}),
|
|
9382
|
+
defineTypographyPreset({
|
|
9383
|
+
id: "typography-preset:luxe-contrast",
|
|
9384
|
+
name: "Luxe Contrast",
|
|
9385
|
+
description: "A restrained sans body paired with elegant high-contrast headings.",
|
|
9386
|
+
defaultFonts: { body: "Manrope, system-ui, sans-serif", heading: "Cormorant Garamond, Georgia, serif" },
|
|
9387
|
+
recommendedFonts: {
|
|
9388
|
+
body: ["Manrope", "Inter", "Source Sans 3"],
|
|
9389
|
+
heading: ["Cormorant Garamond", "Playfair Display", "Bodoni Moda"]
|
|
9390
|
+
},
|
|
9391
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
9392
|
+
typography: luxeContrastTypography
|
|
9393
|
+
}),
|
|
9394
|
+
defineTypographyPreset({
|
|
9395
|
+
id: "typography-preset:bold-display",
|
|
9396
|
+
name: "Bold Display",
|
|
9397
|
+
description: "Punchy display headings with readable sans body copy for branded launches.",
|
|
9398
|
+
defaultFonts: { body: "Manrope, system-ui, sans-serif", heading: '"TAN - PEARL", sans-serif' },
|
|
9399
|
+
recommendedFonts: {
|
|
9400
|
+
body: ["Manrope", "Inter", "Space Grotesk"],
|
|
9401
|
+
heading: ["Anton", "Bebas Neue", "Archivo Black"]
|
|
9402
|
+
},
|
|
9403
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
9404
|
+
typography: boldDisplayTypography,
|
|
9405
|
+
heroTypography: {
|
|
9406
|
+
headlineSize: "6xl",
|
|
9407
|
+
headlineLineHeight: "tight",
|
|
9408
|
+
subheadlineSize: "editorial",
|
|
9409
|
+
subheadlineLineHeight: "normal",
|
|
9410
|
+
microHeadlineSize: "6xl",
|
|
9411
|
+
microHeadlineLineHeight: "tight",
|
|
9412
|
+
microSubheadlineSize: "xl",
|
|
9413
|
+
microSubheadlineLineHeight: "normal",
|
|
9414
|
+
responsive: {
|
|
9415
|
+
tablet: { headlineSize: "5xl" },
|
|
9416
|
+
mobile: { headlineSize: "4xl", subheadlineSize: "xl" }
|
|
9417
|
+
}
|
|
9418
|
+
}
|
|
9419
|
+
})
|
|
9420
|
+
];
|
|
9421
|
+
typographyPresetsById = new Map(
|
|
9422
|
+
typographyPresets.map((preset2) => [preset2.id, preset2])
|
|
9423
|
+
);
|
|
9424
|
+
}
|
|
9425
|
+
});
|
|
9426
|
+
|
|
8538
9427
|
// ../theme-core/src/site-styles/curatedSiteStyles.ts
|
|
8539
9428
|
function uniqueContentFrameKinds() {
|
|
8540
9429
|
const kinds = [...new Set(
|
|
@@ -8547,6 +9436,15 @@ function uniqueContentFrameKinds() {
|
|
|
8547
9436
|
return [firstKind, ...kinds.slice(1)];
|
|
8548
9437
|
}
|
|
8549
9438
|
function defineCuratedSiteStyle(input) {
|
|
9439
|
+
const legacyHeaderLookIds = input.recommendedHeaderLookIds ?? ["clean-base"];
|
|
9440
|
+
const inferredHeaderCuration = inferHeaderCurationFromLegacyLooks(legacyHeaderLookIds);
|
|
9441
|
+
const typographyPresetChoices = input.typographyPresetChoices ?? defaultTypographyPresetChoicesForRecipe(input.tokenRecipes.typography);
|
|
9442
|
+
const defaultTypographyPresetId = input.defaultTypographyPresetId ? asTypographyPresetId(input.defaultTypographyPresetId) : typographyPresetChoices[0].id;
|
|
9443
|
+
if (!typographyPresetChoices.some((choice) => choice.id === defaultTypographyPresetId)) {
|
|
9444
|
+
throw new Error(
|
|
9445
|
+
`Default typography preset ${defaultTypographyPresetId} is not curated for site style ${input.id}.`
|
|
9446
|
+
);
|
|
9447
|
+
}
|
|
8550
9448
|
return {
|
|
8551
9449
|
id: asSiteStyleId(input.id),
|
|
8552
9450
|
name: input.name,
|
|
@@ -8567,11 +9465,23 @@ function defineCuratedSiteStyle(input) {
|
|
|
8567
9465
|
},
|
|
8568
9466
|
...input.themeOverrides ? { themeOverrides: input.themeOverrides } : {},
|
|
8569
9467
|
recommendedAppearancePresetIds: (input.recommendedAppearancePresetIds ?? []).map(asAppearancePresetId),
|
|
8570
|
-
|
|
9468
|
+
defaultHeaderSelection: input.defaultHeaderSelection ? {
|
|
9469
|
+
layoutId: asHeaderLayoutId(input.defaultHeaderSelection.layoutId),
|
|
9470
|
+
styleId: asHeaderStyleId(input.defaultHeaderSelection.styleId)
|
|
9471
|
+
} : inferredHeaderCuration.defaultHeaderSelection,
|
|
9472
|
+
recommendedHeaderLayoutChoices: input.recommendedHeaderLayoutChoices ?? inferredHeaderCuration.recommendedHeaderLayoutChoices,
|
|
9473
|
+
recommendedHeaderStyleChoicesByLayout: input.recommendedHeaderStyleChoicesByLayout ?? inferredHeaderCuration.recommendedHeaderStyleChoicesByLayout,
|
|
9474
|
+
discouragedHeaderSelections: input.discouragedHeaderSelections?.map((selection) => ({
|
|
9475
|
+
layoutId: asHeaderLayoutId(selection.layoutId),
|
|
9476
|
+
styleId: asHeaderStyleId(selection.styleId)
|
|
9477
|
+
})),
|
|
9478
|
+
recommendedHeaderLookIds: legacyHeaderLookIds.map(asHeaderLookId),
|
|
8571
9479
|
// Empty is intentional: resolveFooterLook always appends its guaranteed fallback.
|
|
8572
9480
|
recommendedFooterLookIds: (input.recommendedFooterLookIds ?? []).map(asFooterLookId),
|
|
8573
9481
|
buttonPersonalityChoices: input.buttonPersonalityChoices,
|
|
8574
|
-
paletteVariantChoices: input.paletteVariantChoices
|
|
9482
|
+
paletteVariantChoices: input.paletteVariantChoices,
|
|
9483
|
+
typographyPresetChoices,
|
|
9484
|
+
defaultTypographyPresetId
|
|
8575
9485
|
};
|
|
8576
9486
|
}
|
|
8577
9487
|
function buttonChoice(id, note) {
|
|
@@ -8580,6 +9490,88 @@ function buttonChoice(id, note) {
|
|
|
8580
9490
|
function paletteChoice(id, note) {
|
|
8581
9491
|
return note ? { id: asPaletteVariantId(id), note } : { id: asPaletteVariantId(id) };
|
|
8582
9492
|
}
|
|
9493
|
+
function headerLayoutChoice(id, note) {
|
|
9494
|
+
return note ? { id: asHeaderLayoutId(id), note } : { id: asHeaderLayoutId(id) };
|
|
9495
|
+
}
|
|
9496
|
+
function headerStyleChoice(id, note) {
|
|
9497
|
+
return note ? { id: asHeaderStyleId(id), note } : { id: asHeaderStyleId(id) };
|
|
9498
|
+
}
|
|
9499
|
+
function headerLayoutRecordKey(id) {
|
|
9500
|
+
return id;
|
|
9501
|
+
}
|
|
9502
|
+
function uniqueHeaderLayoutChoices(choices) {
|
|
9503
|
+
const seen = /* @__PURE__ */ new Set();
|
|
9504
|
+
const unique = choices.filter((choice) => {
|
|
9505
|
+
if (seen.has(choice.id)) return false;
|
|
9506
|
+
seen.add(choice.id);
|
|
9507
|
+
return true;
|
|
9508
|
+
});
|
|
9509
|
+
const first = unique[0];
|
|
9510
|
+
if (!first) {
|
|
9511
|
+
throw new Error("Expected at least one curated header layout choice.");
|
|
9512
|
+
}
|
|
9513
|
+
return [first, ...unique.slice(1)];
|
|
9514
|
+
}
|
|
9515
|
+
function nonEmptyHeaderStyleChoices(choices, fallbackLayoutId) {
|
|
9516
|
+
const first = choices[0] ?? {
|
|
9517
|
+
id: getCompatibleHeaderStyleIds(fallbackLayoutId)[0] ?? asHeaderStyleId("minimal")
|
|
9518
|
+
};
|
|
9519
|
+
return [first, ...choices.slice(1)];
|
|
9520
|
+
}
|
|
9521
|
+
function inferHeaderCurationFromLegacyLooks(lookIds) {
|
|
9522
|
+
const selections = lookIds.map((lookId) => resolveLegacyHeaderLookAlias(asHeaderLookId(lookId))).filter((selection) => Boolean(selection));
|
|
9523
|
+
const defaultHeaderSelection = selections[0] ?? {
|
|
9524
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
9525
|
+
styleId: asHeaderStyleId("minimal")
|
|
9526
|
+
};
|
|
9527
|
+
const layoutChoices = uniqueHeaderLayoutChoices(
|
|
9528
|
+
selections.map((selection) => headerLayoutChoice(selection.layoutId))
|
|
9529
|
+
);
|
|
9530
|
+
const stylesByLayout = {};
|
|
9531
|
+
for (const layoutChoice of layoutChoices) {
|
|
9532
|
+
const styleChoices = selections.filter((selection) => selection.layoutId === layoutChoice.id).map((selection) => headerStyleChoice(selection.styleId));
|
|
9533
|
+
stylesByLayout[headerLayoutRecordKey(layoutChoice.id)] = nonEmptyHeaderStyleChoices(
|
|
9534
|
+
styleChoices,
|
|
9535
|
+
layoutChoice.id
|
|
9536
|
+
);
|
|
9537
|
+
}
|
|
9538
|
+
return {
|
|
9539
|
+
defaultHeaderSelection,
|
|
9540
|
+
recommendedHeaderLayoutChoices: layoutChoices,
|
|
9541
|
+
recommendedHeaderStyleChoicesByLayout: stylesByLayout
|
|
9542
|
+
};
|
|
9543
|
+
}
|
|
9544
|
+
function typographyChoice(id, note) {
|
|
9545
|
+
return note ? { id: asTypographyPresetId(id), note } : { id: asTypographyPresetId(id) };
|
|
9546
|
+
}
|
|
9547
|
+
function defaultTypographyPresetChoicesForRecipe(recipe) {
|
|
9548
|
+
switch (recipe) {
|
|
9549
|
+
case "clean-sans":
|
|
9550
|
+
return [
|
|
9551
|
+
typographyChoice("typography-preset:modern-sans"),
|
|
9552
|
+
typographyChoice("typography-preset:luxe-contrast"),
|
|
9553
|
+
typographyChoice("typography-preset:bold-display")
|
|
9554
|
+
];
|
|
9555
|
+
case "friendly-sans":
|
|
9556
|
+
return [
|
|
9557
|
+
typographyChoice("typography-preset:warm-rounded"),
|
|
9558
|
+
typographyChoice("typography-preset:modern-sans"),
|
|
9559
|
+
typographyChoice("typography-preset:editorial-serif")
|
|
9560
|
+
];
|
|
9561
|
+
case "serif-editorial":
|
|
9562
|
+
return [
|
|
9563
|
+
typographyChoice("typography-preset:editorial-serif"),
|
|
9564
|
+
typographyChoice("typography-preset:classic-serif"),
|
|
9565
|
+
typographyChoice("typography-preset:warm-rounded")
|
|
9566
|
+
];
|
|
9567
|
+
case "classic-serif":
|
|
9568
|
+
return [
|
|
9569
|
+
typographyChoice("typography-preset:classic-serif"),
|
|
9570
|
+
typographyChoice("typography-preset:luxe-contrast"),
|
|
9571
|
+
typographyChoice("typography-preset:editorial-serif")
|
|
9572
|
+
];
|
|
9573
|
+
}
|
|
9574
|
+
}
|
|
8583
9575
|
var curatedSiteStyleIdValues, quietBudget, balancedBudget, expressiveBudget, expressiveUnderlineInputs, generatedContentFrameKinds, curatedSiteStyles, curatedSiteStylesById;
|
|
8584
9576
|
var init_curatedSiteStyles = __esm({
|
|
8585
9577
|
"../theme-core/src/site-styles/curatedSiteStyles.ts"() {
|
|
@@ -8591,6 +9583,7 @@ var init_curatedSiteStyles = __esm({
|
|
|
8591
9583
|
init_curatedChoices();
|
|
8592
9584
|
init_sourceCatalogs();
|
|
8593
9585
|
init_types2();
|
|
9586
|
+
init_typographyPresets();
|
|
8594
9587
|
curatedSiteStyleIdValues = [
|
|
8595
9588
|
"site-style:calm-studio",
|
|
8596
9589
|
"site-style:clear-professional",
|
|
@@ -8602,6 +9595,7 @@ var init_curatedSiteStyles = __esm({
|
|
|
8602
9595
|
"site-style:personal-retreat-journal",
|
|
8603
9596
|
"site-style:tactile-workshop",
|
|
8604
9597
|
"site-style:modern-wellness",
|
|
9598
|
+
"site-style:soft-earth",
|
|
8605
9599
|
"site-style:bold-launch",
|
|
8606
9600
|
"site-style:south-west-twerk-school"
|
|
8607
9601
|
];
|
|
@@ -8992,6 +9986,102 @@ var init_curatedSiteStyles = __esm({
|
|
|
8992
9986
|
paletteChoice("warm-neutral-clay")
|
|
8993
9987
|
]
|
|
8994
9988
|
}),
|
|
9989
|
+
defineCuratedSiteStyle({
|
|
9990
|
+
id: "site-style:soft-earth",
|
|
9991
|
+
name: "Soft Earth",
|
|
9992
|
+
description: "Warm, grounded, and editorial for yoga studios, retreats, and wellbeing communities.",
|
|
9993
|
+
generationBrief: "Use cream space, terracotta CTAs, olive proof bands, natural imagery, generous but composed spacing, and editorial serif headings. Prefer a real intro section, image-led offering cards, warm community proof, and a simple two-column FAQ when content allows.",
|
|
9994
|
+
siteCreatorSelection: { kind: "site_creator_keyword_heuristic", priority: 45 },
|
|
9995
|
+
selectionKeywordRules: [
|
|
9996
|
+
{ kind: "word", value: "meditation" },
|
|
9997
|
+
{ kind: "word", value: "wellbeing" },
|
|
9998
|
+
{ kind: "substring", value: "retreat" },
|
|
9999
|
+
{ kind: "phrase", value: "yoga studio" },
|
|
10000
|
+
{ kind: "phrase", value: "mindful movement" }
|
|
10001
|
+
],
|
|
10002
|
+
tokenRecipes: {
|
|
10003
|
+
palette: "warm-neutral",
|
|
10004
|
+
contrast: "standard",
|
|
10005
|
+
radius: "soft",
|
|
10006
|
+
shadow: "subtle",
|
|
10007
|
+
typography: "serif-editorial",
|
|
10008
|
+
spacing: "airy",
|
|
10009
|
+
motion: "subtle"
|
|
10010
|
+
},
|
|
10011
|
+
compositionBudget: balancedBudget,
|
|
10012
|
+
themeOverrides: {
|
|
10013
|
+
typography: {
|
|
10014
|
+
body: {
|
|
10015
|
+
family: "Inter, system-ui, sans-serif",
|
|
10016
|
+
size: "md",
|
|
10017
|
+
weight: "regular",
|
|
10018
|
+
lineHeight: "relaxed",
|
|
10019
|
+
letterSpacing: "normal"
|
|
10020
|
+
},
|
|
10021
|
+
headings: {
|
|
10022
|
+
default: {
|
|
10023
|
+
family: '"Cormorant Garamond", Georgia, serif',
|
|
10024
|
+
weight: "regular",
|
|
10025
|
+
lineHeight: "normal",
|
|
10026
|
+
letterSpacing: "normal",
|
|
10027
|
+
colorToken: "text",
|
|
10028
|
+
italic: null,
|
|
10029
|
+
case: null
|
|
10030
|
+
},
|
|
10031
|
+
h1: {
|
|
10032
|
+
size: "xl",
|
|
10033
|
+
weight: "regular",
|
|
10034
|
+
lineHeight: "normal",
|
|
10035
|
+
letterSpacing: "normal",
|
|
10036
|
+
italic: null
|
|
10037
|
+
},
|
|
10038
|
+
h2: {
|
|
10039
|
+
size: "lg",
|
|
10040
|
+
weight: "regular",
|
|
10041
|
+
lineHeight: "normal",
|
|
10042
|
+
letterSpacing: "normal",
|
|
10043
|
+
italic: null
|
|
10044
|
+
},
|
|
10045
|
+
h3: {
|
|
10046
|
+
size: "md",
|
|
10047
|
+
weight: "regular",
|
|
10048
|
+
lineHeight: "normal",
|
|
10049
|
+
letterSpacing: "normal",
|
|
10050
|
+
italic: null
|
|
10051
|
+
}
|
|
10052
|
+
},
|
|
10053
|
+
scale: "majorThird"
|
|
10054
|
+
},
|
|
10055
|
+
bodyText: {
|
|
10056
|
+
intro: {
|
|
10057
|
+
paragraphSize: "default",
|
|
10058
|
+
headingSize: "editorial"
|
|
10059
|
+
}
|
|
10060
|
+
}
|
|
10061
|
+
},
|
|
10062
|
+
recommendedAppearancePresetIds: [
|
|
10063
|
+
"hero-brand-scrim",
|
|
10064
|
+
"intro-soft-earth-statement",
|
|
10065
|
+
"feature-cards-soft-earth-offerings",
|
|
10066
|
+
"testimonials-soft-earth-proof-band",
|
|
10067
|
+
"faq-soft-earth-two-column",
|
|
10068
|
+
"contact-form-panel"
|
|
10069
|
+
],
|
|
10070
|
+
recommendedHeaderLookIds: ["centered-calm", "minimal-transparent", "editorial-line"],
|
|
10071
|
+
recommendedFooterLookIds: ["footer-muted-grounding", "site-footer-brand-two-band"],
|
|
10072
|
+
buttonPersonalityChoices: [
|
|
10073
|
+
buttonChoice("earth-pill"),
|
|
10074
|
+
buttonChoice("soft-pill"),
|
|
10075
|
+
buttonChoice("pebble"),
|
|
10076
|
+
buttonChoice("editorial-link")
|
|
10077
|
+
],
|
|
10078
|
+
paletteVariantChoices: [
|
|
10079
|
+
paletteChoice("warm-neutral-soft-earth"),
|
|
10080
|
+
paletteChoice("warm-neutral-clay"),
|
|
10081
|
+
paletteChoice("warm-neutral-forest"),
|
|
10082
|
+
paletteChoice("soft-natural-sage")
|
|
10083
|
+
]
|
|
10084
|
+
}),
|
|
8995
10085
|
defineCuratedSiteStyle({
|
|
8996
10086
|
id: "site-style:bold-launch",
|
|
8997
10087
|
name: "Bold Launch",
|
|
@@ -9045,49 +10135,13 @@ var init_curatedSiteStyles = __esm({
|
|
|
9045
10135
|
motion: "expressive"
|
|
9046
10136
|
},
|
|
9047
10137
|
compositionBudget: expressiveBudget,
|
|
10138
|
+
typographyPresetChoices: [
|
|
10139
|
+
typographyChoice("typography-preset:bold-display"),
|
|
10140
|
+
typographyChoice("typography-preset:modern-sans"),
|
|
10141
|
+
typographyChoice("typography-preset:luxe-contrast")
|
|
10142
|
+
],
|
|
10143
|
+
defaultTypographyPresetId: "typography-preset:bold-display",
|
|
9048
10144
|
themeOverrides: {
|
|
9049
|
-
typography: {
|
|
9050
|
-
body: {
|
|
9051
|
-
family: "Manrope, system-ui, sans-serif",
|
|
9052
|
-
size: "lg",
|
|
9053
|
-
weight: "regular",
|
|
9054
|
-
lineHeight: "relaxed",
|
|
9055
|
-
letterSpacing: "normal"
|
|
9056
|
-
},
|
|
9057
|
-
headings: {
|
|
9058
|
-
default: {
|
|
9059
|
-
family: '"TAN - PEARL", sans-serif',
|
|
9060
|
-
weight: "bold",
|
|
9061
|
-
lineHeight: "normal",
|
|
9062
|
-
letterSpacing: "tight",
|
|
9063
|
-
colorToken: "primary",
|
|
9064
|
-
italic: null,
|
|
9065
|
-
case: null
|
|
9066
|
-
},
|
|
9067
|
-
h1: {
|
|
9068
|
-
size: "xl",
|
|
9069
|
-
weight: "bold",
|
|
9070
|
-
lineHeight: "normal",
|
|
9071
|
-
letterSpacing: "tight",
|
|
9072
|
-
italic: null
|
|
9073
|
-
},
|
|
9074
|
-
h2: {
|
|
9075
|
-
size: "lg",
|
|
9076
|
-
weight: "bold",
|
|
9077
|
-
lineHeight: "normal",
|
|
9078
|
-
letterSpacing: "normal",
|
|
9079
|
-
italic: null
|
|
9080
|
-
},
|
|
9081
|
-
h3: {
|
|
9082
|
-
size: "md",
|
|
9083
|
-
weight: "bold",
|
|
9084
|
-
lineHeight: "normal",
|
|
9085
|
-
letterSpacing: "normal",
|
|
9086
|
-
italic: null
|
|
9087
|
-
}
|
|
9088
|
-
},
|
|
9089
|
-
scale: "balanced"
|
|
9090
|
-
},
|
|
9091
10145
|
bodyText: {
|
|
9092
10146
|
intro: {
|
|
9093
10147
|
paragraphSize: "editorial",
|
|
@@ -9838,6 +10892,7 @@ var init_previewCompiler = __esm({
|
|
|
9838
10892
|
init_variants();
|
|
9839
10893
|
init_curatedChoices();
|
|
9840
10894
|
init_curatedSiteStyles();
|
|
10895
|
+
init_typographyPresets();
|
|
9841
10896
|
init_resolver2();
|
|
9842
10897
|
init_types2();
|
|
9843
10898
|
init_footerLooks();
|
|
@@ -9851,6 +10906,7 @@ var init_previewCompiler = __esm({
|
|
|
9851
10906
|
init_runtimeCompiler();
|
|
9852
10907
|
init_curatedChoices();
|
|
9853
10908
|
init_curatedSiteStyles();
|
|
10909
|
+
init_typographyPresets();
|
|
9854
10910
|
init_types2();
|
|
9855
10911
|
}
|
|
9856
10912
|
});
|
|
@@ -10131,6 +11187,13 @@ var init_pageDesignEditorErrors = __esm({
|
|
|
10131
11187
|
}
|
|
10132
11188
|
});
|
|
10133
11189
|
|
|
11190
|
+
// ../theme-core/src/site-styles/persistedIdParseResult.ts
|
|
11191
|
+
var init_persistedIdParseResult = __esm({
|
|
11192
|
+
"../theme-core/src/site-styles/persistedIdParseResult.ts"() {
|
|
11193
|
+
"use strict";
|
|
11194
|
+
}
|
|
11195
|
+
});
|
|
11196
|
+
|
|
10134
11197
|
// ../theme-core/src/site-styles/tokenRecipes.ts
|
|
10135
11198
|
import { z as z29 } from "zod";
|
|
10136
11199
|
var themeTokenRecipeOptions, themeTokenRecipesSchema;
|
|
@@ -10188,6 +11251,7 @@ var init_site_styles = __esm({
|
|
|
10188
11251
|
init_pageDesignEditorModel();
|
|
10189
11252
|
init_pageDesignIntent();
|
|
10190
11253
|
init_previewCustomization();
|
|
11254
|
+
init_persistedIdParseResult();
|
|
10191
11255
|
init_rawStyleFields();
|
|
10192
11256
|
init_records();
|
|
10193
11257
|
init_resolver2();
|
|
@@ -10196,6 +11260,7 @@ var init_site_styles = __esm({
|
|
|
10196
11260
|
init_sourceCatalogs();
|
|
10197
11261
|
init_styleTags();
|
|
10198
11262
|
init_tokenRecipes();
|
|
11263
|
+
init_typographyPresets();
|
|
10199
11264
|
init_types2();
|
|
10200
11265
|
}
|
|
10201
11266
|
});
|
|
@@ -14338,8 +15403,9 @@ var init_faqAccordion = __esm({
|
|
|
14338
15403
|
},
|
|
14339
15404
|
fallback: "rb-faq-item"
|
|
14340
15405
|
},
|
|
14341
|
-
iconStyle: { $bind: { from: "theme.accordions.icon.style" } }
|
|
14342
|
-
//
|
|
15406
|
+
iconStyle: { $bind: { from: "theme.accordions.icon.style" } },
|
|
15407
|
+
// Legacy theme accordion style
|
|
15408
|
+
iconTreatment: { $bind: { from: "content._sectionStyles.accordionIconTreatment" } }
|
|
14343
15409
|
},
|
|
14344
15410
|
triggerFrom: "faqItem.question",
|
|
14345
15411
|
contentFrom: "faqItem.answer"
|
|
@@ -22681,7 +23747,7 @@ function okWith(data) {
|
|
|
22681
23747
|
function err2(error) {
|
|
22682
23748
|
return { ok: false, error };
|
|
22683
23749
|
}
|
|
22684
|
-
function
|
|
23750
|
+
function assertNever7(value, message) {
|
|
22685
23751
|
throw new Error(message ?? `Unexpected value: ${String(value)}`);
|
|
22686
23752
|
}
|
|
22687
23753
|
var init_dist = __esm({
|
|
@@ -22847,7 +23913,7 @@ function deriveBookingFormViewState(input) {
|
|
|
22847
23913
|
resourceName: input.verificationState.resourceName
|
|
22848
23914
|
};
|
|
22849
23915
|
default:
|
|
22850
|
-
return
|
|
23916
|
+
return assertNever7(input.verificationState);
|
|
22851
23917
|
}
|
|
22852
23918
|
}
|
|
22853
23919
|
function resolveBookingSiteId(siteId, form2) {
|
|
@@ -23017,7 +24083,7 @@ function getBookingServicePaymentSelectionMode(service) {
|
|
|
23017
24083
|
case "flexible_balance":
|
|
23018
24084
|
return "implicit_flexible_balance";
|
|
23019
24085
|
default:
|
|
23020
|
-
return
|
|
24086
|
+
return assertNever7(onlyKind);
|
|
23021
24087
|
}
|
|
23022
24088
|
}
|
|
23023
24089
|
if (allowedKinds.length === 2 && allowedKinds.includes("upfront") && (allowedKinds.includes("deferred_manual") || allowedKinds.includes("instalment_plan") || allowedKinds.includes("flexible_balance"))) {
|
|
@@ -23219,7 +24285,7 @@ function formatBookingSubmissionPreparationError(error) {
|
|
|
23219
24285
|
case "service-missing-duration":
|
|
23220
24286
|
return `Service "${error.serviceTitle}" is missing duration. Please update the service in the dashboard to include a duration (e.g., 30 minutes).`;
|
|
23221
24287
|
default:
|
|
23222
|
-
return
|
|
24288
|
+
return assertNever7(error);
|
|
23223
24289
|
}
|
|
23224
24290
|
}
|
|
23225
24291
|
function getBookingSuccessMessage(successMessage) {
|
|
@@ -32118,7 +33184,7 @@ function formSubmissionReducer(_state, action) {
|
|
|
32118
33184
|
case "submission-failed":
|
|
32119
33185
|
return { tag: "failed", message: action.message };
|
|
32120
33186
|
default:
|
|
32121
|
-
return
|
|
33187
|
+
return assertNever7(action);
|
|
32122
33188
|
}
|
|
32123
33189
|
}
|
|
32124
33190
|
var initialFormSubmissionState;
|
|
@@ -32856,7 +33922,7 @@ function bookingSubmissionReducer(state, action) {
|
|
|
32856
33922
|
feedback: { tag: "idle" }
|
|
32857
33923
|
};
|
|
32858
33924
|
default:
|
|
32859
|
-
return
|
|
33925
|
+
return assertNever7(action);
|
|
32860
33926
|
}
|
|
32861
33927
|
}
|
|
32862
33928
|
function selectIsSubmitting(state) {
|
|
@@ -33208,7 +34274,7 @@ function buildBookingPaymentOptionViewModel(input) {
|
|
|
33208
34274
|
};
|
|
33209
34275
|
}
|
|
33210
34276
|
default:
|
|
33211
|
-
return
|
|
34277
|
+
return assertNever7(input.option);
|
|
33212
34278
|
}
|
|
33213
34279
|
}
|
|
33214
34280
|
function buildInstalmentSchedulePreview(input) {
|
|
@@ -33265,7 +34331,7 @@ function buildInstalmentSchedulePreview(input) {
|
|
|
33265
34331
|
})));
|
|
33266
34332
|
}
|
|
33267
34333
|
default:
|
|
33268
|
-
return
|
|
34334
|
+
return assertNever7(input.option.plan);
|
|
33269
34335
|
}
|
|
33270
34336
|
}
|
|
33271
34337
|
function getPaymentCadenceLabel(plan) {
|
|
@@ -33497,7 +34563,7 @@ function bookingFlowReducer(state, event) {
|
|
|
33497
34563
|
case "reset":
|
|
33498
34564
|
return event.initial;
|
|
33499
34565
|
default:
|
|
33500
|
-
return
|
|
34566
|
+
return assertNever7(event);
|
|
33501
34567
|
}
|
|
33502
34568
|
}
|
|
33503
34569
|
function clearAvailabilityFeedback(feedback) {
|
|
@@ -33626,7 +34692,7 @@ function validateBookingStep(input) {
|
|
|
33626
34692
|
return Object.keys(errors).length > 0 ? { ok: false, errors: createFieldBookingValidationErrors(errors) } : { ok: true };
|
|
33627
34693
|
}
|
|
33628
34694
|
default:
|
|
33629
|
-
return
|
|
34695
|
+
return assertNever7(input.stepId);
|
|
33630
34696
|
}
|
|
33631
34697
|
}
|
|
33632
34698
|
function validateBookingFields(input) {
|
|
@@ -33920,7 +34986,7 @@ function resolveAppointmentPackagesModel(input) {
|
|
|
33920
34986
|
};
|
|
33921
34987
|
}
|
|
33922
34988
|
default:
|
|
33923
|
-
return
|
|
34989
|
+
return assertNever7(input.state);
|
|
33924
34990
|
}
|
|
33925
34991
|
}
|
|
33926
34992
|
function toHeadlessEligibleAppointmentPackage(appointmentPackage) {
|
|
@@ -34675,7 +35741,7 @@ function pollingReducer(state, action) {
|
|
|
34675
35741
|
case "timeout":
|
|
34676
35742
|
return state;
|
|
34677
35743
|
default:
|
|
34678
|
-
return
|
|
35744
|
+
return assertNever7(state);
|
|
34679
35745
|
}
|
|
34680
35746
|
case "polling-timed-out":
|
|
34681
35747
|
return {
|
|
@@ -34684,7 +35750,7 @@ function pollingReducer(state, action) {
|
|
|
34684
35750
|
error: new Error("Polling timed out")
|
|
34685
35751
|
};
|
|
34686
35752
|
default:
|
|
34687
|
-
return
|
|
35753
|
+
return assertNever7(action);
|
|
34688
35754
|
}
|
|
34689
35755
|
}
|
|
34690
35756
|
var init_usePolling_state = __esm({
|
|
@@ -35167,7 +36233,7 @@ function DefaultBookingStepContent({
|
|
|
35167
36233
|
case "custom-fields":
|
|
35168
36234
|
return /* @__PURE__ */ jsx74(DefaultDynamicFields, { fields: booking.fields.items, booking });
|
|
35169
36235
|
default:
|
|
35170
|
-
return
|
|
36236
|
+
return assertNever7(stepId);
|
|
35171
36237
|
}
|
|
35172
36238
|
}
|
|
35173
36239
|
function DefaultServiceSelectionStep({
|
|
@@ -36911,7 +37977,7 @@ function eligibilityLookupReducer(state, action) {
|
|
|
36911
37977
|
error: action.message
|
|
36912
37978
|
};
|
|
36913
37979
|
default:
|
|
36914
|
-
return
|
|
37980
|
+
return assertNever7(action);
|
|
36915
37981
|
}
|
|
36916
37982
|
}
|
|
36917
37983
|
function existingRegistrationLookupReducer(state, action) {
|
|
@@ -36929,7 +37995,7 @@ function existingRegistrationLookupReducer(state, action) {
|
|
|
36929
37995
|
registration: action.registration
|
|
36930
37996
|
};
|
|
36931
37997
|
default:
|
|
36932
|
-
return
|
|
37998
|
+
return assertNever7(action);
|
|
36933
37999
|
}
|
|
36934
38000
|
}
|
|
36935
38001
|
var initialEligibilityLookupState, initialExistingRegistrationLookupState;
|
|
@@ -45111,7 +46177,7 @@ function shopCheckoutReducer(state, action) {
|
|
|
45111
46177
|
notice: action.notice
|
|
45112
46178
|
};
|
|
45113
46179
|
default:
|
|
45114
|
-
return
|
|
46180
|
+
return assertNever7(action);
|
|
45115
46181
|
}
|
|
45116
46182
|
}
|
|
45117
46183
|
var initialShopCheckoutState;
|
|
@@ -45650,7 +46716,7 @@ function shopPassesMembershipsReducer(state, action) {
|
|
|
45650
46716
|
returnNotice: null
|
|
45651
46717
|
};
|
|
45652
46718
|
default:
|
|
45653
|
-
return
|
|
46719
|
+
return assertNever7(action);
|
|
45654
46720
|
}
|
|
45655
46721
|
}
|
|
45656
46722
|
function getOpenCheckout(state) {
|
|
@@ -52835,6 +53901,9 @@ init_schema2();
|
|
|
52835
53901
|
var TEL_RE = /^[+()0-9\s-]{3,}$/;
|
|
52836
53902
|
var SLUG_PATTERN = /^(?:[a-z0-9]+(?:-[a-z0-9]+)*)(?:\/(?:[a-z0-9]+(?:-[a-z0-9]+)*))*$/;
|
|
52837
53903
|
var ALLOWED_URL_PROTOCOLS = ["http:", "https:"];
|
|
53904
|
+
var DATE_PATTERN = /^(?<year>[1-9]\d{3})-(?<month>\d{2})-(?<day>\d{2})$/;
|
|
53905
|
+
var TIME_PATTERN = /^(?<hours>[01]\d|2[0-3]):(?<minutes>[0-5]\d)$/;
|
|
53906
|
+
var DATETIME_PATTERN = /^(?<date>[1-9]\d{3}-\d{2}-\d{2})T(?<time>(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d)(?:\.\d+)?(?<offset>Z|[+-](?:[01]\d|2[0-3]):[0-5]\d)$/;
|
|
52838
53907
|
function assertNever3(value) {
|
|
52839
53908
|
throw new Error(`Unhandled field validation variant: ${JSON.stringify(value)}`);
|
|
52840
53909
|
}
|
|
@@ -52867,6 +53936,12 @@ function fieldIssueToMessage(issue2) {
|
|
|
52867
53936
|
return "Check the format and try again";
|
|
52868
53937
|
case "invalidUrl":
|
|
52869
53938
|
return "Enter a valid web address";
|
|
53939
|
+
case "invalidDate":
|
|
53940
|
+
return "Choose a valid date";
|
|
53941
|
+
case "invalidTime":
|
|
53942
|
+
return "Choose a valid time";
|
|
53943
|
+
case "invalidDateTime":
|
|
53944
|
+
return "Choose a valid date and time";
|
|
52870
53945
|
case "invalidNumber":
|
|
52871
53946
|
return `${issue2.label} needs a number`;
|
|
52872
53947
|
case "tooSmall":
|
|
@@ -52903,12 +53978,16 @@ function deriveFieldValidationPlan(field, path = [field.id]) {
|
|
|
52903
53978
|
case "text": {
|
|
52904
53979
|
const inputType = field.ui?.inputType;
|
|
52905
53980
|
if (inputType === "number") {
|
|
52906
|
-
const constraints2 = commonConstraints(required, {
|
|
53981
|
+
const constraints2 = commonConstraints(required, {
|
|
53982
|
+
kind: "numberType"
|
|
53983
|
+
});
|
|
52907
53984
|
if (typeof field.ui?.min === "number") constraints2.push({ kind: "numberMin", minimum: field.ui.min });
|
|
52908
53985
|
if (typeof field.ui?.max === "number") constraints2.push({ kind: "numberMax", maximum: field.ui.max });
|
|
52909
53986
|
return makePlan("number", "number", field, path, required, constraints2);
|
|
52910
53987
|
}
|
|
52911
|
-
const constraints = commonConstraints(required, {
|
|
53988
|
+
const constraints = commonConstraints(required, {
|
|
53989
|
+
kind: "textType"
|
|
53990
|
+
});
|
|
52912
53991
|
if (inputType === "email") constraints.push({ kind: "emailFormat" });
|
|
52913
53992
|
if (inputType === "tel") constraints.push({ kind: "phoneFormat" });
|
|
52914
53993
|
if (field.ui?.pattern) constraints.push({ kind: "patternFormat", pattern: field.ui.pattern });
|
|
@@ -52916,7 +53995,9 @@ function deriveFieldValidationPlan(field, path = [field.id]) {
|
|
|
52916
53995
|
return makePlan("string", "string", field, path, required, constraints);
|
|
52917
53996
|
}
|
|
52918
53997
|
case "number": {
|
|
52919
|
-
const constraints = commonConstraints(required, {
|
|
53998
|
+
const constraints = commonConstraints(required, {
|
|
53999
|
+
kind: "numberType"
|
|
54000
|
+
});
|
|
52920
54001
|
if (typeof field.min === "number") constraints.push({ kind: "numberMin", minimum: field.min });
|
|
52921
54002
|
if (typeof field.max === "number") constraints.push({ kind: "numberMax", maximum: field.max });
|
|
52922
54003
|
return makePlan("number", "number", field, path, required, constraints);
|
|
@@ -52927,23 +54008,42 @@ function deriveFieldValidationPlan(field, path = [field.id]) {
|
|
|
52927
54008
|
return makePlan("string", "string", field, path, required, constraints);
|
|
52928
54009
|
}
|
|
52929
54010
|
case "url":
|
|
52930
|
-
return makePlan(
|
|
54011
|
+
return makePlan(
|
|
54012
|
+
"string",
|
|
54013
|
+
"string",
|
|
54014
|
+
field,
|
|
54015
|
+
path,
|
|
52931
54016
|
required,
|
|
52932
|
-
{ kind: "textType" },
|
|
52933
|
-
|
|
52934
|
-
));
|
|
54017
|
+
commonConstraints(required, { kind: "textType" }, { kind: "urlFormat", allowRelative: Boolean(field.allowRelative) })
|
|
54018
|
+
);
|
|
52935
54019
|
case "reference":
|
|
52936
54020
|
return makePlan("string", "string", field, path, required, commonConstraints(required, { kind: "referenceText" }));
|
|
52937
54021
|
case "date":
|
|
54022
|
+
return makePlan("string", "string", field, path, required, commonConstraints(required, { kind: "textType" }, { kind: "dateFormat" }));
|
|
52938
54023
|
case "time":
|
|
54024
|
+
return makePlan("string", "string", field, path, required, commonConstraints(required, { kind: "textType" }, { kind: "timeFormat" }));
|
|
52939
54025
|
case "datetime":
|
|
52940
|
-
return makePlan(
|
|
54026
|
+
return makePlan(
|
|
54027
|
+
"string",
|
|
54028
|
+
"string",
|
|
54029
|
+
field,
|
|
54030
|
+
path,
|
|
54031
|
+
required,
|
|
54032
|
+
commonConstraints(required, { kind: "textType" }, { kind: "datetimeFormat" })
|
|
54033
|
+
);
|
|
52941
54034
|
case "select":
|
|
52942
|
-
return makePlan(
|
|
52943
|
-
|
|
52944
|
-
|
|
52945
|
-
|
|
52946
|
-
|
|
54035
|
+
return makePlan(
|
|
54036
|
+
"select",
|
|
54037
|
+
"select",
|
|
54038
|
+
field,
|
|
54039
|
+
path,
|
|
54040
|
+
required,
|
|
54041
|
+
commonConstraints(required, {
|
|
54042
|
+
kind: "selectOption",
|
|
54043
|
+
source: resolveSelectConstraintSource(field),
|
|
54044
|
+
multiple: Boolean(field.multiple)
|
|
54045
|
+
})
|
|
54046
|
+
);
|
|
52947
54047
|
case "richText":
|
|
52948
54048
|
return makePlan("richText", "object", field, path, required, commonConstraints(required, { kind: "richTextDoc" }));
|
|
52949
54049
|
case "media":
|
|
@@ -52956,7 +54056,11 @@ function deriveFieldValidationPlan(field, path = [field.id]) {
|
|
|
52956
54056
|
case "repeater":
|
|
52957
54057
|
return {
|
|
52958
54058
|
...makePlan("repeater", "array", field, path, required, commonConstraints(required, { kind: "arrayType" })),
|
|
52959
|
-
...field.polymorphic && field.itemTypes ? {
|
|
54059
|
+
...field.polymorphic && field.itemTypes ? {
|
|
54060
|
+
repeatedItemVariants: deriveRepeatedItemVariants(field, [...path, 0])
|
|
54061
|
+
} : {
|
|
54062
|
+
repeatedItemPlan: deriveNestedFieldPlans(getRepeaterFields(field), [...path, 0])
|
|
54063
|
+
},
|
|
52960
54064
|
constraints: withRepeaterItemConstraints(field, commonConstraints(required, { kind: "arrayType" }))
|
|
52961
54065
|
};
|
|
52962
54066
|
case "group":
|
|
@@ -53041,7 +54145,10 @@ function resolveSelectConstraintSource(field) {
|
|
|
53041
54145
|
const source = normalizeSelectSource(field);
|
|
53042
54146
|
switch (source.kind) {
|
|
53043
54147
|
case "static":
|
|
53044
|
-
return {
|
|
54148
|
+
return {
|
|
54149
|
+
kind: "static",
|
|
54150
|
+
values: field.options.map((option) => option.value)
|
|
54151
|
+
};
|
|
53045
54152
|
case "site":
|
|
53046
54153
|
case "sdk":
|
|
53047
54154
|
return { kind: "runtime", source: source.kind };
|
|
@@ -53137,7 +54244,9 @@ function normalizeFieldValue(plan, value, ctx) {
|
|
|
53137
54244
|
}
|
|
53138
54245
|
function normalizeObjectChildren(children, value, ctx) {
|
|
53139
54246
|
if (!value || typeof value !== "object" || Array.isArray(value)) return value;
|
|
53140
|
-
const normalized = {
|
|
54247
|
+
const normalized = {
|
|
54248
|
+
...value
|
|
54249
|
+
};
|
|
53141
54250
|
for (const child of children) {
|
|
53142
54251
|
normalized[child.fieldId] = normalizeFieldValue(child, normalized[child.fieldId], ctx);
|
|
53143
54252
|
}
|
|
@@ -53231,6 +54340,12 @@ function validateStringConstraint(plan, constraint, value) {
|
|
|
53231
54340
|
}
|
|
53232
54341
|
case "urlFormat":
|
|
53233
54342
|
return isValidUrl(value, constraint.allowRelative) ? [] : [issue(plan, "invalidUrl")];
|
|
54343
|
+
case "dateFormat":
|
|
54344
|
+
return isValidDateString(value) ? [] : [issue(plan, "invalidDate")];
|
|
54345
|
+
case "timeFormat":
|
|
54346
|
+
return isValidTimeString(value) ? [] : [issue(plan, "invalidTime")];
|
|
54347
|
+
case "datetimeFormat":
|
|
54348
|
+
return isValidDateTimeInstantString(value) ? [] : [issue(plan, "invalidDateTime")];
|
|
53234
54349
|
case "slugFormat":
|
|
53235
54350
|
return SLUG_PATTERN.test(value) ? [] : [issue(plan, "invalidSlug")];
|
|
53236
54351
|
default:
|
|
@@ -53267,17 +54382,24 @@ function validateRepeaterPlan(plan, value, ctx) {
|
|
|
53267
54382
|
case "arrayType":
|
|
53268
54383
|
return [];
|
|
53269
54384
|
case "minItems":
|
|
53270
|
-
return value.length < constraint.minimum ? [
|
|
54385
|
+
return value.length < constraint.minimum ? [
|
|
54386
|
+
issue(plan, "tooFewItems", {
|
|
54387
|
+
minimum: constraint.minimum,
|
|
54388
|
+
itemLabel: "item"
|
|
54389
|
+
})
|
|
54390
|
+
] : [];
|
|
53271
54391
|
case "maxItems":
|
|
53272
|
-
return value.length > constraint.maximum ? [
|
|
54392
|
+
return value.length > constraint.maximum ? [
|
|
54393
|
+
issue(plan, "tooManyItems", {
|
|
54394
|
+
maximum: constraint.maximum,
|
|
54395
|
+
itemLabel: "item"
|
|
54396
|
+
})
|
|
54397
|
+
] : [];
|
|
53273
54398
|
default:
|
|
53274
54399
|
return assertNever3(constraint);
|
|
53275
54400
|
}
|
|
53276
54401
|
});
|
|
53277
|
-
return [
|
|
53278
|
-
...constraintIssues,
|
|
53279
|
-
...value.flatMap((item, index) => validateRepeaterItem(plan, item, index, ctx))
|
|
53280
|
-
];
|
|
54402
|
+
return [...constraintIssues, ...value.flatMap((item, index) => validateRepeaterItem(plan, item, index, ctx))];
|
|
53281
54403
|
}
|
|
53282
54404
|
function validateRepeaterItem(plan, item, index, ctx) {
|
|
53283
54405
|
if (!isPlainObject(item)) return [];
|
|
@@ -53320,9 +54442,7 @@ function rebaseFieldPlanPath(plan, fromPrefix, toPrefix) {
|
|
|
53320
54442
|
}))
|
|
53321
54443
|
} : {},
|
|
53322
54444
|
...plan.repeatedItemPlan ? {
|
|
53323
|
-
repeatedItemPlan: plan.repeatedItemPlan.map(
|
|
53324
|
-
(fieldPlan) => rebaseFieldPlanPath(fieldPlan, fromPrefix, toPrefix)
|
|
53325
|
-
)
|
|
54445
|
+
repeatedItemPlan: plan.repeatedItemPlan.map((fieldPlan) => rebaseFieldPlanPath(fieldPlan, fromPrefix, toPrefix))
|
|
53326
54446
|
} : {}
|
|
53327
54447
|
};
|
|
53328
54448
|
case "string":
|
|
@@ -53409,6 +54529,9 @@ function addFieldIssueToZodContext(zodCtx, validationIssue, rootPath) {
|
|
|
53409
54529
|
case "invalidPhone":
|
|
53410
54530
|
case "invalidPattern":
|
|
53411
54531
|
case "invalidUrl":
|
|
54532
|
+
case "invalidDate":
|
|
54533
|
+
case "invalidTime":
|
|
54534
|
+
case "invalidDateTime":
|
|
53412
54535
|
case "invalidNumber":
|
|
53413
54536
|
case "tooSmall":
|
|
53414
54537
|
case "tooLarge":
|
|
@@ -53448,6 +54571,53 @@ function isValidUrl(value, allowRelative) {
|
|
|
53448
54571
|
return false;
|
|
53449
54572
|
}
|
|
53450
54573
|
}
|
|
54574
|
+
function isValidDateString(value) {
|
|
54575
|
+
const match = DATE_PATTERN.exec(value);
|
|
54576
|
+
if (!match?.groups) return false;
|
|
54577
|
+
const year = Number(match.groups.year);
|
|
54578
|
+
const month = Number(match.groups.month);
|
|
54579
|
+
const day = Number(match.groups.day);
|
|
54580
|
+
return isValidCalendarDate(year, month, day);
|
|
54581
|
+
}
|
|
54582
|
+
function isValidTimeString(value) {
|
|
54583
|
+
return TIME_PATTERN.test(value);
|
|
54584
|
+
}
|
|
54585
|
+
function isValidDateTimeInstantString(value) {
|
|
54586
|
+
const match = DATETIME_PATTERN.exec(value);
|
|
54587
|
+
if (!match?.groups) return false;
|
|
54588
|
+
const datePart = match.groups.date;
|
|
54589
|
+
if (!datePart || !isValidDateString(datePart)) return false;
|
|
54590
|
+
return !Number.isNaN(Date.parse(value));
|
|
54591
|
+
}
|
|
54592
|
+
function isValidCalendarDate(year, month, day) {
|
|
54593
|
+
if (!Number.isInteger(year) || !Number.isInteger(month) || !Number.isInteger(day)) return false;
|
|
54594
|
+
if (year < 1 || month < 1 || month > 12) return false;
|
|
54595
|
+
return day >= 1 && day <= daysInMonth(year, month);
|
|
54596
|
+
}
|
|
54597
|
+
function daysInMonth(year, month) {
|
|
54598
|
+
switch (month) {
|
|
54599
|
+
case 2:
|
|
54600
|
+
return isLeapYear(year) ? 29 : 28;
|
|
54601
|
+
case 4:
|
|
54602
|
+
case 6:
|
|
54603
|
+
case 9:
|
|
54604
|
+
case 11:
|
|
54605
|
+
return 30;
|
|
54606
|
+
case 1:
|
|
54607
|
+
case 3:
|
|
54608
|
+
case 5:
|
|
54609
|
+
case 7:
|
|
54610
|
+
case 8:
|
|
54611
|
+
case 10:
|
|
54612
|
+
case 12:
|
|
54613
|
+
return 31;
|
|
54614
|
+
default:
|
|
54615
|
+
return 0;
|
|
54616
|
+
}
|
|
54617
|
+
}
|
|
54618
|
+
function isLeapYear(year) {
|
|
54619
|
+
return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
|
|
54620
|
+
}
|
|
53451
54621
|
function isValidSelectValue(value, values, multiple) {
|
|
53452
54622
|
if (multiple) {
|
|
53453
54623
|
return Array.isArray(value) && value.every((item) => typeof item === "string" && values.includes(item));
|
|
@@ -53767,6 +54937,342 @@ var heroBlockDefinition = {
|
|
|
53767
54937
|
manifest: heroManifest
|
|
53768
54938
|
};
|
|
53769
54939
|
|
|
54940
|
+
// ../blocks/src/system/blocks/intro.ts
|
|
54941
|
+
init_defineBlock();
|
|
54942
|
+
|
|
54943
|
+
// ../blocks/src/system/fields/aspectRatio.ts
|
|
54944
|
+
var standardAspectRatioOptions = [
|
|
54945
|
+
{ value: "auto", label: "Auto (original)" },
|
|
54946
|
+
{ value: "16/9", label: "16:9 (Landscape)" },
|
|
54947
|
+
{ value: "4/3", label: "4:3 (Standard)" },
|
|
54948
|
+
{ value: "1/1", label: "1:1 (Square)" },
|
|
54949
|
+
{ value: "3/4", label: "3:4 (Portrait)" }
|
|
54950
|
+
];
|
|
54951
|
+
function createAspectRatioField(options = {}) {
|
|
54952
|
+
return {
|
|
54953
|
+
id: options.id ?? "aspectRatio",
|
|
54954
|
+
type: "select",
|
|
54955
|
+
label: options.label ?? "Aspect ratio",
|
|
54956
|
+
...options.description ? { description: options.description } : {},
|
|
54957
|
+
required: false,
|
|
54958
|
+
defaultValue: options.defaultValue ?? "auto",
|
|
54959
|
+
multiple: false,
|
|
54960
|
+
options: [...standardAspectRatioOptions],
|
|
54961
|
+
ui: {
|
|
54962
|
+
intent: options.uiIntent ?? "display",
|
|
54963
|
+
...options.visibleWhen ? { visibleWhen: options.visibleWhen } : {}
|
|
54964
|
+
}
|
|
54965
|
+
};
|
|
54966
|
+
}
|
|
54967
|
+
|
|
54968
|
+
// ../blocks/src/system/blocks/intro.ts
|
|
54969
|
+
init_ctas();
|
|
54970
|
+
|
|
54971
|
+
// ../blocks/src/system/fields/imageLayout.ts
|
|
54972
|
+
function createImageColSizeField(options = {}) {
|
|
54973
|
+
const {
|
|
54974
|
+
id = "imageColSize",
|
|
54975
|
+
label = "Image column size",
|
|
54976
|
+
description = "Controls how large the image/thumbnail column is at desktop breakpoints.",
|
|
54977
|
+
defaultValue = "1/3",
|
|
54978
|
+
uiIntent = "display",
|
|
54979
|
+
visibleWhen
|
|
54980
|
+
} = options;
|
|
54981
|
+
return {
|
|
54982
|
+
id,
|
|
54983
|
+
type: "select",
|
|
54984
|
+
label,
|
|
54985
|
+
description,
|
|
54986
|
+
required: false,
|
|
54987
|
+
defaultValue,
|
|
54988
|
+
multiple: false,
|
|
54989
|
+
options: [
|
|
54990
|
+
{ value: "1/4", label: "Small (1/4)" },
|
|
54991
|
+
{ value: "1/3", label: "Medium (1/3)" },
|
|
54992
|
+
{ value: "2/5", label: "Large (2/5)" },
|
|
54993
|
+
{ value: "1/2", label: "Extra large (1/2)" },
|
|
54994
|
+
{ value: "2/3", label: "Huge (2/3)" }
|
|
54995
|
+
],
|
|
54996
|
+
ui: {
|
|
54997
|
+
intent: uiIntent,
|
|
54998
|
+
...visibleWhen ? { visibleWhen } : {}
|
|
54999
|
+
}
|
|
55000
|
+
};
|
|
55001
|
+
}
|
|
55002
|
+
function createImagePositionField(options = {}) {
|
|
55003
|
+
const {
|
|
55004
|
+
id = "imagePosition",
|
|
55005
|
+
label = "Image position",
|
|
55006
|
+
description = "Choose which side the image appears on.",
|
|
55007
|
+
defaultValue = "left",
|
|
55008
|
+
includeAlternate = false,
|
|
55009
|
+
uiIntent = "display",
|
|
55010
|
+
visibleWhen
|
|
55011
|
+
} = options;
|
|
55012
|
+
const positionOptions = [
|
|
55013
|
+
{ value: "left", label: "Left" },
|
|
55014
|
+
{ value: "right", label: "Right" },
|
|
55015
|
+
...includeAlternate ? [{ value: "alternate", label: "Alternate" }] : []
|
|
55016
|
+
];
|
|
55017
|
+
return {
|
|
55018
|
+
id,
|
|
55019
|
+
type: "select",
|
|
55020
|
+
label,
|
|
55021
|
+
description,
|
|
55022
|
+
required: false,
|
|
55023
|
+
defaultValue,
|
|
55024
|
+
multiple: false,
|
|
55025
|
+
// Spread to get a mutable array type without unsafe casts.
|
|
55026
|
+
options: [...positionOptions],
|
|
55027
|
+
ui: {
|
|
55028
|
+
intent: uiIntent,
|
|
55029
|
+
...visibleWhen ? { visibleWhen } : {}
|
|
55030
|
+
}
|
|
55031
|
+
};
|
|
55032
|
+
}
|
|
55033
|
+
|
|
55034
|
+
// ../blocks/src/system/blocks/intro.ts
|
|
55035
|
+
init_builder();
|
|
55036
|
+
init_fragments();
|
|
55037
|
+
function introHeading(className) {
|
|
55038
|
+
return text(
|
|
55039
|
+
{
|
|
55040
|
+
as: "h2",
|
|
55041
|
+
className
|
|
55042
|
+
},
|
|
55043
|
+
when("content.title"),
|
|
55044
|
+
bind("content.title")
|
|
55045
|
+
);
|
|
55046
|
+
}
|
|
55047
|
+
function introBody(className = "rb-prose rb-max-w-none") {
|
|
55048
|
+
return richText({ className }, bind("content.body"));
|
|
55049
|
+
}
|
|
55050
|
+
function introCtas(justify = "start") {
|
|
55051
|
+
return ctaRow({
|
|
55052
|
+
justify,
|
|
55053
|
+
gap: "md",
|
|
55054
|
+
containerClassName: "rb-mt-2"
|
|
55055
|
+
});
|
|
55056
|
+
}
|
|
55057
|
+
function introCopyStack(options = {}) {
|
|
55058
|
+
return stack(
|
|
55059
|
+
{
|
|
55060
|
+
gap: "md",
|
|
55061
|
+
className: options.className ?? "rb-intro-copy"
|
|
55062
|
+
},
|
|
55063
|
+
[
|
|
55064
|
+
introHeading(options.headingClassName ?? "rb-intro-title"),
|
|
55065
|
+
introBody(options.bodyClassName),
|
|
55066
|
+
introCtas(options.ctaJustify)
|
|
55067
|
+
]
|
|
55068
|
+
);
|
|
55069
|
+
}
|
|
55070
|
+
var introMedia = media(
|
|
55071
|
+
{
|
|
55072
|
+
className: "rb-intro-media rb-w-full rb-h-auto rb-object-cover",
|
|
55073
|
+
style: {
|
|
55074
|
+
aspectRatio: { $bind: { from: "content.aspectRatio" } }
|
|
55075
|
+
}
|
|
55076
|
+
},
|
|
55077
|
+
bind("content.media")
|
|
55078
|
+
);
|
|
55079
|
+
var centeredCopyLayout = styledSection({
|
|
55080
|
+
children: styledContainer({
|
|
55081
|
+
rootType: "stack",
|
|
55082
|
+
rootProps: { gap: "lg" },
|
|
55083
|
+
children: [
|
|
55084
|
+
introCopyStack({
|
|
55085
|
+
className: "rb-intro-copy rb-mx-auto rb-max-w-3xl rb-text-center",
|
|
55086
|
+
headingClassName: "rb-intro-title rb-text-center",
|
|
55087
|
+
bodyClassName: "rb-prose rb-mx-auto rb-max-w-none",
|
|
55088
|
+
ctaJustify: "center"
|
|
55089
|
+
})
|
|
55090
|
+
]
|
|
55091
|
+
}),
|
|
55092
|
+
baseClass: "",
|
|
55093
|
+
spacing: "medium"
|
|
55094
|
+
});
|
|
55095
|
+
var statementCopyLayout = styledSection({
|
|
55096
|
+
children: styledContainer({
|
|
55097
|
+
children: [
|
|
55098
|
+
el(
|
|
55099
|
+
"div",
|
|
55100
|
+
{
|
|
55101
|
+
className: "rb-intro rb-intro-statement rb-grid rb-grid-cols-1 rb-gap-8 rb-md-grid-cols-2 rb-md-items-start"
|
|
55102
|
+
},
|
|
55103
|
+
[
|
|
55104
|
+
introHeading("rb-intro-title rb-max-w-xl"),
|
|
55105
|
+
stack({ gap: "md", className: "rb-intro-copy rb-max-w-xl" }, [
|
|
55106
|
+
introBody(),
|
|
55107
|
+
introCtas("start")
|
|
55108
|
+
])
|
|
55109
|
+
]
|
|
55110
|
+
)
|
|
55111
|
+
]
|
|
55112
|
+
}),
|
|
55113
|
+
baseClass: "",
|
|
55114
|
+
spacing: "medium"
|
|
55115
|
+
});
|
|
55116
|
+
var statementMediaLayout = styledSection({
|
|
55117
|
+
children: styledContainer({
|
|
55118
|
+
children: [
|
|
55119
|
+
el(
|
|
55120
|
+
"div",
|
|
55121
|
+
{
|
|
55122
|
+
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"
|
|
55123
|
+
},
|
|
55124
|
+
[
|
|
55125
|
+
introHeading("rb-intro-title rb-max-w-xl"),
|
|
55126
|
+
stack({ gap: "md", className: "rb-intro-copy rb-max-w-xl" }, [
|
|
55127
|
+
introBody(),
|
|
55128
|
+
introCtas("start")
|
|
55129
|
+
]),
|
|
55130
|
+
el("div", { className: "rb-intro-media-wrap rb-w-full" }, [introMedia], when("content.media"))
|
|
55131
|
+
]
|
|
55132
|
+
)
|
|
55133
|
+
]
|
|
55134
|
+
}),
|
|
55135
|
+
baseClass: "",
|
|
55136
|
+
spacing: "medium"
|
|
55137
|
+
});
|
|
55138
|
+
var mediaCopyLayout = styledSection({
|
|
55139
|
+
children: styledContainer({
|
|
55140
|
+
children: [
|
|
55141
|
+
responsiveTwoColumn({
|
|
55142
|
+
image: el("div", { className: "rb-intro-media-wrap rb-w-full" }, [introMedia]),
|
|
55143
|
+
text: introCopyStack({
|
|
55144
|
+
className: "rb-intro-copy rb-max-w-xl",
|
|
55145
|
+
headingClassName: "rb-intro-title"
|
|
55146
|
+
}),
|
|
55147
|
+
ratioFrom: "content.ratio",
|
|
55148
|
+
imagePositionFrom: "content.imagePosition",
|
|
55149
|
+
gapFrom: "content.gap",
|
|
55150
|
+
gapFallback: "comfortable",
|
|
55151
|
+
imageWrapperClassName: "rb-w-full rb-shrink-0",
|
|
55152
|
+
textWrapperClassName: "rb-w-full rb-min-w-0 rb-flex-1 rb-self-center"
|
|
55153
|
+
})
|
|
55154
|
+
]
|
|
55155
|
+
}),
|
|
55156
|
+
baseClass: "",
|
|
55157
|
+
spacing: "medium"
|
|
55158
|
+
});
|
|
55159
|
+
var introConfig = {
|
|
55160
|
+
id: "block.intro",
|
|
55161
|
+
title: "Intro",
|
|
55162
|
+
category: "layout",
|
|
55163
|
+
includeContainerStyles: true,
|
|
55164
|
+
titleSource: "title",
|
|
55165
|
+
additionalFields: [
|
|
55166
|
+
{
|
|
55167
|
+
id: "title",
|
|
55168
|
+
type: "text",
|
|
55169
|
+
label: "Statement",
|
|
55170
|
+
required: false,
|
|
55171
|
+
multiline: true,
|
|
55172
|
+
maxLength: 160
|
|
55173
|
+
},
|
|
55174
|
+
{
|
|
55175
|
+
id: "body",
|
|
55176
|
+
type: "richText",
|
|
55177
|
+
label: "Text",
|
|
55178
|
+
required: true,
|
|
55179
|
+
ui: {
|
|
55180
|
+
richTextVariant: "limited"
|
|
55181
|
+
}
|
|
55182
|
+
},
|
|
55183
|
+
{
|
|
55184
|
+
id: "media",
|
|
55185
|
+
type: "media",
|
|
55186
|
+
label: "Media",
|
|
55187
|
+
required: false,
|
|
55188
|
+
mediaKinds: ["image"],
|
|
55189
|
+
ui: {
|
|
55190
|
+
intent: "content",
|
|
55191
|
+
visibleWhen: { field: "variant", notEquals: "statement-copy" }
|
|
55192
|
+
}
|
|
55193
|
+
},
|
|
55194
|
+
createImagePositionField({
|
|
55195
|
+
id: "imagePosition",
|
|
55196
|
+
label: "Image position",
|
|
55197
|
+
defaultValue: "left",
|
|
55198
|
+
uiIntent: "display",
|
|
55199
|
+
visibleWhen: { field: "variant", equals: "media-copy" }
|
|
55200
|
+
}),
|
|
55201
|
+
{
|
|
55202
|
+
id: "gap",
|
|
55203
|
+
type: "select",
|
|
55204
|
+
label: "Gap between media and text",
|
|
55205
|
+
required: false,
|
|
55206
|
+
defaultValue: "comfortable",
|
|
55207
|
+
multiple: false,
|
|
55208
|
+
options: [
|
|
55209
|
+
{ value: "none", label: "None" },
|
|
55210
|
+
{ value: "compact", label: "Compact" },
|
|
55211
|
+
{ value: "cozy", label: "Cozy" },
|
|
55212
|
+
{ value: "medium", label: "Medium" },
|
|
55213
|
+
{ value: "comfortable", label: "Comfortable" },
|
|
55214
|
+
{ value: "spacious", label: "Spacious" }
|
|
55215
|
+
],
|
|
55216
|
+
ui: {
|
|
55217
|
+
intent: "display",
|
|
55218
|
+
visibleWhen: { field: "variant", equals: "media-copy" }
|
|
55219
|
+
}
|
|
55220
|
+
},
|
|
55221
|
+
createImageColSizeField({
|
|
55222
|
+
id: "ratio",
|
|
55223
|
+
label: "Media column size",
|
|
55224
|
+
defaultValue: "1/2",
|
|
55225
|
+
uiIntent: "display",
|
|
55226
|
+
visibleWhen: { field: "variant", equals: "media-copy" }
|
|
55227
|
+
}),
|
|
55228
|
+
createAspectRatioField({
|
|
55229
|
+
id: "aspectRatio",
|
|
55230
|
+
label: "Media aspect ratio",
|
|
55231
|
+
description: "Crop media to a consistent aspect ratio.",
|
|
55232
|
+
defaultValue: "auto",
|
|
55233
|
+
visibleWhen: { field: "media", notEquals: null }
|
|
55234
|
+
}),
|
|
55235
|
+
createCtasRepeater({
|
|
55236
|
+
label: "Calls to action",
|
|
55237
|
+
itemLabel: "CTA",
|
|
55238
|
+
maxItems: 2
|
|
55239
|
+
})
|
|
55240
|
+
],
|
|
55241
|
+
layout: centeredCopyLayout,
|
|
55242
|
+
variants: {
|
|
55243
|
+
"centered-copy": centeredCopyLayout,
|
|
55244
|
+
"statement-copy": statementCopyLayout,
|
|
55245
|
+
"statement-media": statementMediaLayout,
|
|
55246
|
+
"media-copy": mediaCopyLayout
|
|
55247
|
+
},
|
|
55248
|
+
defaultVariant: "statement-copy",
|
|
55249
|
+
variantOptions: {
|
|
55250
|
+
"centered-copy": {
|
|
55251
|
+
label: "Centered copy",
|
|
55252
|
+
description: "A focused intro with centered text and optional calls to action."
|
|
55253
|
+
},
|
|
55254
|
+
"statement-copy": {
|
|
55255
|
+
label: "Statement and copy",
|
|
55256
|
+
description: "A large statement on the left with supporting copy on the right."
|
|
55257
|
+
},
|
|
55258
|
+
"statement-media": {
|
|
55259
|
+
label: "Statement, copy and media",
|
|
55260
|
+
description: "A three-part intro with statement, copy and a small image."
|
|
55261
|
+
},
|
|
55262
|
+
"media-copy": {
|
|
55263
|
+
label: "Media and copy",
|
|
55264
|
+
description: "A compact media/text intro for softer transitions after a hero."
|
|
55265
|
+
}
|
|
55266
|
+
},
|
|
55267
|
+
description: "A flexible introductory section for statement copy, supporting text, media, and CTAs.",
|
|
55268
|
+
tags: ["intro", "introduction", "about", "welcome", "statement", "media", "text"],
|
|
55269
|
+
icon: "PanelTopOpen"
|
|
55270
|
+
};
|
|
55271
|
+
var introManifest = createBlockManifest(introConfig);
|
|
55272
|
+
var introBlockDefinition = {
|
|
55273
|
+
manifest: introManifest
|
|
55274
|
+
};
|
|
55275
|
+
|
|
53770
55276
|
// ../blocks/src/system/blocks/body-text.ts
|
|
53771
55277
|
init_styledSection();
|
|
53772
55278
|
init_defineBlock();
|
|
@@ -54364,6 +55870,37 @@ var faqComposition = composeFragments([
|
|
|
54364
55870
|
{ fragment: faqHeadingFragment, fieldPriority: 0 },
|
|
54365
55871
|
{ fragment: faqAccordionFragment, fieldPriority: 1 }
|
|
54366
55872
|
]);
|
|
55873
|
+
function fragmentLayoutNode(layout) {
|
|
55874
|
+
return isNodeDefinitionArray(layout) ? el("div", {}, [...layout]) : layout;
|
|
55875
|
+
}
|
|
55876
|
+
function isNodeDefinitionArray(layout) {
|
|
55877
|
+
return Array.isArray(layout);
|
|
55878
|
+
}
|
|
55879
|
+
var headingLayout = fragmentLayoutNode(faqHeadingFragment.layout);
|
|
55880
|
+
var accordionLayout = fragmentLayoutNode(faqAccordionFragment.layout);
|
|
55881
|
+
var defaultLayout = styledSection({
|
|
55882
|
+
children: styledContainer({
|
|
55883
|
+
baseClassName: "rb-relative rb-isolate",
|
|
55884
|
+
children: stack({ gap: "xl", className: "rb-w-full rb-max-w-4xl rb-mx-auto" }, faqComposition.layout)
|
|
55885
|
+
}),
|
|
55886
|
+
baseClass: ""
|
|
55887
|
+
});
|
|
55888
|
+
var twoColumnLayout = styledSection({
|
|
55889
|
+
children: styledContainer({
|
|
55890
|
+
baseClassName: "rb-relative rb-isolate",
|
|
55891
|
+
children: el(
|
|
55892
|
+
"div",
|
|
55893
|
+
{
|
|
55894
|
+
className: "rb-faq-two-column rb-grid rb-grid-cols-1 rb-gap-8 rb-lg-grid-cols-2 rb-lg-items-start"
|
|
55895
|
+
},
|
|
55896
|
+
[
|
|
55897
|
+
el("div", { className: "rb-faq-two-column-heading" }, [headingLayout]),
|
|
55898
|
+
el("div", { className: "rb-faq-two-column-accordion" }, [accordionLayout])
|
|
55899
|
+
]
|
|
55900
|
+
)
|
|
55901
|
+
}),
|
|
55902
|
+
baseClass: ""
|
|
55903
|
+
});
|
|
54367
55904
|
var faqManifest = createBlockManifest({
|
|
54368
55905
|
id: "block.faq",
|
|
54369
55906
|
title: "FAQ",
|
|
@@ -54380,13 +55917,22 @@ var faqManifest = createBlockManifest({
|
|
|
54380
55917
|
label: "FAQ item styles"
|
|
54381
55918
|
})
|
|
54382
55919
|
],
|
|
54383
|
-
layout:
|
|
54384
|
-
|
|
54385
|
-
|
|
54386
|
-
|
|
54387
|
-
|
|
54388
|
-
|
|
54389
|
-
|
|
55920
|
+
layout: defaultLayout,
|
|
55921
|
+
variants: {
|
|
55922
|
+
default: defaultLayout,
|
|
55923
|
+
"two-column": twoColumnLayout
|
|
55924
|
+
},
|
|
55925
|
+
defaultVariant: "default",
|
|
55926
|
+
variantOptions: {
|
|
55927
|
+
default: {
|
|
55928
|
+
label: "Default",
|
|
55929
|
+
description: "A centered heading above one FAQ accordion."
|
|
55930
|
+
},
|
|
55931
|
+
"two-column": {
|
|
55932
|
+
label: "Two column",
|
|
55933
|
+
description: "A left heading column with FAQ items on the right."
|
|
55934
|
+
}
|
|
55935
|
+
},
|
|
54390
55936
|
description: "Accordion of frequently asked questions and answers.",
|
|
54391
55937
|
tags: ["faq", "questions", "answers", "help", "support", "accordion", "q&a"],
|
|
54392
55938
|
icon: "HelpCircle"
|
|
@@ -55048,7 +56594,8 @@ function resolveBackgroundVisualStyles(backgroundColor, tokens, defaultToken = "
|
|
|
55048
56594
|
function resolveHeaderVisualStyles(header, tokens) {
|
|
55049
56595
|
const navContainerType = header?.navContainer?.type ?? "none";
|
|
55050
56596
|
const hasContainedNav = navContainerType === "glass" || navContainerType === "pill";
|
|
55051
|
-
|
|
56597
|
+
const hasTransparentVariant = header?.variant === "transparent" || header?.variant === "floating";
|
|
56598
|
+
if (hasContainedNav || hasTransparentVariant) {
|
|
55052
56599
|
return {
|
|
55053
56600
|
backgroundToken: "transparent",
|
|
55054
56601
|
paletteHex: null,
|
|
@@ -55177,6 +56724,17 @@ var headerRootStyleTransform = {
|
|
|
55177
56724
|
return mergeStyles(...styleParts);
|
|
55178
56725
|
}
|
|
55179
56726
|
};
|
|
56727
|
+
var headerSectionBackgroundTransform = {
|
|
56728
|
+
id: "layout.headerSectionBackground",
|
|
56729
|
+
kind: "string",
|
|
56730
|
+
summary: "Resolve the inner site-header section background token",
|
|
56731
|
+
run: (value) => {
|
|
56732
|
+
const header = asPartialObject(value);
|
|
56733
|
+
const navContainerType = header?.navContainer?.type ?? "none";
|
|
56734
|
+
const usesTransparentRoot = header?.variant === "transparent" || header?.variant === "floating" || navContainerType === "glass" || navContainerType === "pill";
|
|
56735
|
+
return usesTransparentRoot ? "raw:transparent" : "background";
|
|
56736
|
+
}
|
|
56737
|
+
};
|
|
55180
56738
|
var footerRootStyleTransform = {
|
|
55181
56739
|
id: "layout.footerRootStyle",
|
|
55182
56740
|
kind: "formatter",
|
|
@@ -55435,6 +56993,7 @@ var layoutTransforms = [
|
|
|
55435
56993
|
headerRootClassTransform,
|
|
55436
56994
|
footerRootClassTransform,
|
|
55437
56995
|
headerRootStyleTransform,
|
|
56996
|
+
headerSectionBackgroundTransform,
|
|
55438
56997
|
footerRootStyleTransform,
|
|
55439
56998
|
footerBottomBarClassTransform,
|
|
55440
56999
|
footerBottomBarContainerClassTransform,
|
|
@@ -55974,7 +57533,10 @@ var editorialLayout = stack(
|
|
|
55974
57533
|
);
|
|
55975
57534
|
var headerLayout = headerSection(
|
|
55976
57535
|
{
|
|
55977
|
-
background: "
|
|
57536
|
+
background: bindProp("$root.theme.header", {
|
|
57537
|
+
transforms: pipe(tx("layout.headerSectionBackground")),
|
|
57538
|
+
fallback: "background"
|
|
57539
|
+
}),
|
|
55978
57540
|
allowOverflow: true,
|
|
55979
57541
|
className: bindProp("$root.theme.header", {
|
|
55980
57542
|
transforms: pipe(tx("layout.headerRootClass")),
|
|
@@ -56915,6 +58477,231 @@ var collectionBlockDefinition = {
|
|
|
56915
58477
|
manifest: collectionManifest
|
|
56916
58478
|
};
|
|
56917
58479
|
|
|
58480
|
+
// ../blocks/src/system/blocks/feature-cards.ts
|
|
58481
|
+
init_defineBlock();
|
|
58482
|
+
init_boxStyles();
|
|
58483
|
+
init_ctas();
|
|
58484
|
+
init_builder();
|
|
58485
|
+
init_fragments();
|
|
58486
|
+
init_colorStyles();
|
|
58487
|
+
function grid3(props2, children) {
|
|
58488
|
+
return el("grid", props2 ?? void 0, children ?? void 0);
|
|
58489
|
+
}
|
|
58490
|
+
var sectionHeading = stack(
|
|
58491
|
+
{ gap: "sm", className: "rb-feature-cards-heading rb-mx-auto rb-max-w-3xl rb-text-center" },
|
|
58492
|
+
[
|
|
58493
|
+
text(
|
|
58494
|
+
{
|
|
58495
|
+
as: "h2",
|
|
58496
|
+
className: "rb-feature-cards-title rb-text-center"
|
|
58497
|
+
},
|
|
58498
|
+
when("content.title"),
|
|
58499
|
+
bind("content.title")
|
|
58500
|
+
),
|
|
58501
|
+
richText(
|
|
58502
|
+
{
|
|
58503
|
+
className: "rb-feature-cards-description rb-prose rb-mx-auto rb-max-w-none",
|
|
58504
|
+
style: textColorStyle("mutedText")
|
|
58505
|
+
},
|
|
58506
|
+
when("content.description"),
|
|
58507
|
+
bind("content.description")
|
|
58508
|
+
)
|
|
58509
|
+
]
|
|
58510
|
+
);
|
|
58511
|
+
var featureCard = styledCard(
|
|
58512
|
+
[
|
|
58513
|
+
media(
|
|
58514
|
+
{
|
|
58515
|
+
className: "rb-feature-card-media rb-w-full rb-h-auto rb-object-cover",
|
|
58516
|
+
style: {
|
|
58517
|
+
aspectRatio: { $bind: { from: "card.aspectRatio" } }
|
|
58518
|
+
}
|
|
58519
|
+
},
|
|
58520
|
+
when("card.media"),
|
|
58521
|
+
bind("card.media")
|
|
58522
|
+
),
|
|
58523
|
+
stack({ gap: "sm", className: "rb-feature-card-content rb-flex-1 rb-p-6" }, [
|
|
58524
|
+
text(
|
|
58525
|
+
{
|
|
58526
|
+
as: "h3",
|
|
58527
|
+
className: "rb-feature-card-title"
|
|
58528
|
+
},
|
|
58529
|
+
bind("card.title")
|
|
58530
|
+
),
|
|
58531
|
+
richText(
|
|
58532
|
+
{
|
|
58533
|
+
className: "rb-feature-card-body rb-prose rb-max-w-none",
|
|
58534
|
+
style: textColorStyle("mutedText")
|
|
58535
|
+
},
|
|
58536
|
+
when("card.body"),
|
|
58537
|
+
bind("card.body")
|
|
58538
|
+
),
|
|
58539
|
+
ctaRow({
|
|
58540
|
+
collectionPath: "ctas",
|
|
58541
|
+
itemName: "cta",
|
|
58542
|
+
gap: "sm",
|
|
58543
|
+
justify: "start",
|
|
58544
|
+
containerClassName: "rb-mt-auto"
|
|
58545
|
+
})
|
|
58546
|
+
])
|
|
58547
|
+
],
|
|
58548
|
+
{
|
|
58549
|
+
stylesFrom: "content._cardStyles",
|
|
58550
|
+
backgroundFrom: "content._cardStyles.background",
|
|
58551
|
+
baseClassName: "rb-feature-card rb-relative rb-isolate rb-overflow-hidden rb-border rb-flex rb-h-full rb-flex-col"
|
|
58552
|
+
},
|
|
58553
|
+
repeat("content.cards", "card")
|
|
58554
|
+
);
|
|
58555
|
+
var cardsLayout = styledSection({
|
|
58556
|
+
children: styledContainer({
|
|
58557
|
+
rootType: "stack",
|
|
58558
|
+
rootProps: { gap: "xl" },
|
|
58559
|
+
children: [
|
|
58560
|
+
sectionHeading,
|
|
58561
|
+
grid3(
|
|
58562
|
+
{
|
|
58563
|
+
cols: {
|
|
58564
|
+
$bind: {
|
|
58565
|
+
from: "content.columns",
|
|
58566
|
+
fallback: 3,
|
|
58567
|
+
coerce: "number"
|
|
58568
|
+
}
|
|
58569
|
+
},
|
|
58570
|
+
gap: "lg"
|
|
58571
|
+
},
|
|
58572
|
+
[featureCard]
|
|
58573
|
+
)
|
|
58574
|
+
]
|
|
58575
|
+
}),
|
|
58576
|
+
baseClass: "",
|
|
58577
|
+
spacing: "medium"
|
|
58578
|
+
});
|
|
58579
|
+
var featureCardsConfig = {
|
|
58580
|
+
id: "block.feature-cards",
|
|
58581
|
+
title: "Feature Cards",
|
|
58582
|
+
category: "layout",
|
|
58583
|
+
includeContainerStyles: true,
|
|
58584
|
+
titleSource: "title",
|
|
58585
|
+
additionalFields: [
|
|
58586
|
+
{
|
|
58587
|
+
id: "title",
|
|
58588
|
+
type: "text",
|
|
58589
|
+
label: "Title",
|
|
58590
|
+
required: false,
|
|
58591
|
+
multiline: false,
|
|
58592
|
+
maxLength: 120
|
|
58593
|
+
},
|
|
58594
|
+
{
|
|
58595
|
+
id: "description",
|
|
58596
|
+
type: "richText",
|
|
58597
|
+
label: "Description",
|
|
58598
|
+
required: false,
|
|
58599
|
+
ui: {
|
|
58600
|
+
richTextVariant: "limited"
|
|
58601
|
+
}
|
|
58602
|
+
},
|
|
58603
|
+
{
|
|
58604
|
+
id: "columns",
|
|
58605
|
+
type: "select",
|
|
58606
|
+
label: "Columns",
|
|
58607
|
+
required: false,
|
|
58608
|
+
defaultValue: "3",
|
|
58609
|
+
multiple: false,
|
|
58610
|
+
options: [
|
|
58611
|
+
{ value: "2", label: "2 columns" },
|
|
58612
|
+
{ value: "3", label: "3 columns" },
|
|
58613
|
+
{ value: "4", label: "4 columns" }
|
|
58614
|
+
],
|
|
58615
|
+
ui: { intent: "display" }
|
|
58616
|
+
},
|
|
58617
|
+
{
|
|
58618
|
+
id: "cards",
|
|
58619
|
+
type: "repeater",
|
|
58620
|
+
label: "Cards",
|
|
58621
|
+
required: false,
|
|
58622
|
+
minItems: 1,
|
|
58623
|
+
maxItems: 8,
|
|
58624
|
+
itemLabel: "Card",
|
|
58625
|
+
itemLabelSource: "title",
|
|
58626
|
+
allowConversion: true,
|
|
58627
|
+
ui: {
|
|
58628
|
+
intent: "content"
|
|
58629
|
+
},
|
|
58630
|
+
schema: {
|
|
58631
|
+
fields: [
|
|
58632
|
+
{
|
|
58633
|
+
id: "media",
|
|
58634
|
+
type: "media",
|
|
58635
|
+
label: "Image",
|
|
58636
|
+
required: false,
|
|
58637
|
+
mediaKinds: ["image"]
|
|
58638
|
+
},
|
|
58639
|
+
createAspectRatioField({
|
|
58640
|
+
id: "aspectRatio",
|
|
58641
|
+
label: "Image aspect ratio",
|
|
58642
|
+
defaultValue: "4/3",
|
|
58643
|
+
visibleWhen: { field: "media", notEquals: null }
|
|
58644
|
+
}),
|
|
58645
|
+
{
|
|
58646
|
+
id: "title",
|
|
58647
|
+
type: "text",
|
|
58648
|
+
label: "Title",
|
|
58649
|
+
required: true,
|
|
58650
|
+
multiline: false,
|
|
58651
|
+
maxLength: 120
|
|
58652
|
+
},
|
|
58653
|
+
{
|
|
58654
|
+
id: "body",
|
|
58655
|
+
type: "richText",
|
|
58656
|
+
label: "Text",
|
|
58657
|
+
required: false,
|
|
58658
|
+
ui: {
|
|
58659
|
+
richTextVariant: "limited"
|
|
58660
|
+
}
|
|
58661
|
+
},
|
|
58662
|
+
createCtasRepeater({
|
|
58663
|
+
label: "Calls to action",
|
|
58664
|
+
itemLabel: "CTA",
|
|
58665
|
+
maxItems: 1,
|
|
58666
|
+
button: {
|
|
58667
|
+
variants: [
|
|
58668
|
+
{ value: "primary", label: "Primary" },
|
|
58669
|
+
{ value: "secondary", label: "Secondary" },
|
|
58670
|
+
{ value: "outline", label: "Outline" },
|
|
58671
|
+
{ value: "ghost", label: "Ghost" },
|
|
58672
|
+
{ value: "link", label: "Link" }
|
|
58673
|
+
],
|
|
58674
|
+
defaultVariant: "ghost"
|
|
58675
|
+
}
|
|
58676
|
+
})
|
|
58677
|
+
]
|
|
58678
|
+
}
|
|
58679
|
+
},
|
|
58680
|
+
cardStylesField({
|
|
58681
|
+
id: "_cardStyles",
|
|
58682
|
+
label: "Card styles"
|
|
58683
|
+
})
|
|
58684
|
+
],
|
|
58685
|
+
layout: cardsLayout,
|
|
58686
|
+
variants: {
|
|
58687
|
+
cards: cardsLayout
|
|
58688
|
+
},
|
|
58689
|
+
defaultVariant: "cards",
|
|
58690
|
+
variantOptions: {
|
|
58691
|
+
cards: {
|
|
58692
|
+
label: "Cards",
|
|
58693
|
+
description: "A responsive grid of image cards with optional calls to action."
|
|
58694
|
+
}
|
|
58695
|
+
},
|
|
58696
|
+
description: "A card grid for offerings, services, classes, benefits, or featured links.",
|
|
58697
|
+
tags: ["cards", "features", "offerings", "services", "classes", "grid", "links"],
|
|
58698
|
+
icon: "PanelsTopLeft"
|
|
58699
|
+
};
|
|
58700
|
+
var featureCardsManifest = createBlockManifest(featureCardsConfig);
|
|
58701
|
+
var featureCardsBlockDefinition = {
|
|
58702
|
+
manifest: featureCardsManifest
|
|
58703
|
+
};
|
|
58704
|
+
|
|
56918
58705
|
// ../blocks/src/system/blocks/media-text.ts
|
|
56919
58706
|
init_defineBlock();
|
|
56920
58707
|
|
|
@@ -57011,69 +58798,6 @@ function createCarouselBehaviorFields(options = {}) {
|
|
|
57011
58798
|
return fields3;
|
|
57012
58799
|
}
|
|
57013
58800
|
|
|
57014
|
-
// ../blocks/src/system/fields/imageLayout.ts
|
|
57015
|
-
function createImageColSizeField(options = {}) {
|
|
57016
|
-
const {
|
|
57017
|
-
id = "imageColSize",
|
|
57018
|
-
label = "Image column size",
|
|
57019
|
-
description = "Controls how large the image/thumbnail column is at desktop breakpoints.",
|
|
57020
|
-
defaultValue = "1/3",
|
|
57021
|
-
uiIntent = "display",
|
|
57022
|
-
visibleWhen
|
|
57023
|
-
} = options;
|
|
57024
|
-
return {
|
|
57025
|
-
id,
|
|
57026
|
-
type: "select",
|
|
57027
|
-
label,
|
|
57028
|
-
description,
|
|
57029
|
-
required: false,
|
|
57030
|
-
defaultValue,
|
|
57031
|
-
multiple: false,
|
|
57032
|
-
options: [
|
|
57033
|
-
{ value: "1/4", label: "Small (1/4)" },
|
|
57034
|
-
{ value: "1/3", label: "Medium (1/3)" },
|
|
57035
|
-
{ value: "2/5", label: "Large (2/5)" },
|
|
57036
|
-
{ value: "1/2", label: "Extra large (1/2)" },
|
|
57037
|
-
{ value: "2/3", label: "Huge (2/3)" }
|
|
57038
|
-
],
|
|
57039
|
-
ui: {
|
|
57040
|
-
intent: uiIntent,
|
|
57041
|
-
...visibleWhen ? { visibleWhen } : {}
|
|
57042
|
-
}
|
|
57043
|
-
};
|
|
57044
|
-
}
|
|
57045
|
-
function createImagePositionField(options = {}) {
|
|
57046
|
-
const {
|
|
57047
|
-
id = "imagePosition",
|
|
57048
|
-
label = "Image position",
|
|
57049
|
-
description = "Choose which side the image appears on.",
|
|
57050
|
-
defaultValue = "left",
|
|
57051
|
-
includeAlternate = false,
|
|
57052
|
-
uiIntent = "display",
|
|
57053
|
-
visibleWhen
|
|
57054
|
-
} = options;
|
|
57055
|
-
const positionOptions = [
|
|
57056
|
-
{ value: "left", label: "Left" },
|
|
57057
|
-
{ value: "right", label: "Right" },
|
|
57058
|
-
...includeAlternate ? [{ value: "alternate", label: "Alternate" }] : []
|
|
57059
|
-
];
|
|
57060
|
-
return {
|
|
57061
|
-
id,
|
|
57062
|
-
type: "select",
|
|
57063
|
-
label,
|
|
57064
|
-
description,
|
|
57065
|
-
required: false,
|
|
57066
|
-
defaultValue,
|
|
57067
|
-
multiple: false,
|
|
57068
|
-
// Spread to get a mutable array type without unsafe casts.
|
|
57069
|
-
options: [...positionOptions],
|
|
57070
|
-
ui: {
|
|
57071
|
-
intent: uiIntent,
|
|
57072
|
-
...visibleWhen ? { visibleWhen } : {}
|
|
57073
|
-
}
|
|
57074
|
-
};
|
|
57075
|
-
}
|
|
57076
|
-
|
|
57077
58801
|
// ../blocks/src/system/blocks/media-text.ts
|
|
57078
58802
|
var mediaTextFrameCapability = defineFrameCapability([
|
|
57079
58803
|
"plain",
|
|
@@ -57197,26 +58921,13 @@ var mediaTextManifest = createBlockManifest({
|
|
|
57197
58921
|
},
|
|
57198
58922
|
ui: { intent: "behavior" }
|
|
57199
58923
|
}),
|
|
57200
|
-
{
|
|
58924
|
+
createAspectRatioField({
|
|
57201
58925
|
id: "aspectRatio",
|
|
57202
|
-
type: "select",
|
|
57203
58926
|
label: "Media aspect ratio",
|
|
57204
58927
|
description: "Crop media to a consistent aspect ratio.",
|
|
57205
|
-
required: false,
|
|
57206
58928
|
defaultValue: "auto",
|
|
57207
|
-
|
|
57208
|
-
|
|
57209
|
-
{ value: "auto", label: "Auto (original)" },
|
|
57210
|
-
{ value: "16/9", label: "16:9 (Landscape)" },
|
|
57211
|
-
{ value: "4/3", label: "4:3 (Standard)" },
|
|
57212
|
-
{ value: "1/1", label: "1:1 (Square)" },
|
|
57213
|
-
{ value: "3/4", label: "3:4 (Portrait)" }
|
|
57214
|
-
],
|
|
57215
|
-
ui: {
|
|
57216
|
-
intent: "display",
|
|
57217
|
-
visibleWhen: { field: "images", notEquals: null }
|
|
57218
|
-
}
|
|
57219
|
-
},
|
|
58929
|
+
visibleWhen: { field: "images", notEquals: null }
|
|
58930
|
+
}),
|
|
57220
58931
|
{
|
|
57221
58932
|
id: "text",
|
|
57222
58933
|
type: "richText",
|
|
@@ -57346,7 +59057,7 @@ var mediaTextManifest = createBlockManifest({
|
|
|
57346
59057
|
whenImagesLength(0)
|
|
57347
59058
|
);
|
|
57348
59059
|
const defaultInner = el("div", {}, [defaultImagesLayout, defaultTextOnlyLayout]);
|
|
57349
|
-
const
|
|
59060
|
+
const defaultLayout2 = styledSection({
|
|
57350
59061
|
children: styledContainer({
|
|
57351
59062
|
rootType: "stack",
|
|
57352
59063
|
rootProps: { gap: "lg" },
|
|
@@ -57378,9 +59089,9 @@ var mediaTextManifest = createBlockManifest({
|
|
|
57378
59089
|
spacing: "medium"
|
|
57379
59090
|
});
|
|
57380
59091
|
return {
|
|
57381
|
-
layout:
|
|
59092
|
+
layout: defaultLayout2,
|
|
57382
59093
|
variants: {
|
|
57383
|
-
default:
|
|
59094
|
+
default: defaultLayout2
|
|
57384
59095
|
},
|
|
57385
59096
|
defaultVariant: "default",
|
|
57386
59097
|
variantOptions: {
|
|
@@ -59409,7 +61120,7 @@ init_builder();
|
|
|
59409
61120
|
init_colorStyles();
|
|
59410
61121
|
init_defineBlock();
|
|
59411
61122
|
init_fragments();
|
|
59412
|
-
var
|
|
61123
|
+
var grid4 = (props2, children, ...mods) => el("grid", props2 ?? void 0, children ?? void 0, ...mods);
|
|
59413
61124
|
var galleryContainer = (children, opts) => {
|
|
59414
61125
|
const gap = opts?.gap ?? "md";
|
|
59415
61126
|
const withExtraClass = (baseClass) => opts?.className ? `${baseClass} ${opts.className}` : baseClass;
|
|
@@ -59489,7 +61200,7 @@ var galleryItem = (options) => stack(
|
|
|
59489
61200
|
],
|
|
59490
61201
|
repeat("content.images", "item")
|
|
59491
61202
|
);
|
|
59492
|
-
var gridLayout3 =
|
|
61203
|
+
var gridLayout3 = grid4(
|
|
59493
61204
|
{
|
|
59494
61205
|
className: "rb-grid rb-grid-cols-1 rb-gap-4 rb-sm-grid-cols-2 rb-md-grid-cols-3"
|
|
59495
61206
|
},
|
|
@@ -60097,7 +61808,7 @@ init_builder();
|
|
|
60097
61808
|
init_fragments();
|
|
60098
61809
|
init_colorStyles();
|
|
60099
61810
|
init_defineBlock();
|
|
60100
|
-
var
|
|
61811
|
+
var grid5 = (props2, children, ...mods) => el("grid", props2 ?? void 0, children ?? void 0, ...mods);
|
|
60101
61812
|
var videoItem = (options) => stack(
|
|
60102
61813
|
{ gap: "xs", className: options.containerClassName },
|
|
60103
61814
|
[
|
|
@@ -60147,7 +61858,7 @@ var gridColumnsClass = (columns) => {
|
|
|
60147
61858
|
return "rb-grid rb-grid-cols-1 rb-gap-6 rb-sm-grid-cols-2 rb-md-grid-cols-3";
|
|
60148
61859
|
}
|
|
60149
61860
|
};
|
|
60150
|
-
var createGridLayout = (columns) =>
|
|
61861
|
+
var createGridLayout = (columns) => grid5(
|
|
60151
61862
|
{
|
|
60152
61863
|
className: gridColumnsClass(columns)
|
|
60153
61864
|
},
|
|
@@ -62236,6 +63947,40 @@ var systemBlockDefinitionsRaw = [
|
|
|
62236
63947
|
})
|
|
62237
63948
|
]
|
|
62238
63949
|
})),
|
|
63950
|
+
withDesignCapability("block.intro", introBlockDefinition, declareBlockDesignCapability({
|
|
63951
|
+
sectionSurfaces: "supported",
|
|
63952
|
+
contentFrames: ["plain", "panel"],
|
|
63953
|
+
itemSurfaces: "unsupported",
|
|
63954
|
+
headingDecorations: ["organic-squiggle"]
|
|
63955
|
+
}), defineBlockDesignMetadata({
|
|
63956
|
+
flow: bodyFlow,
|
|
63957
|
+
layoutProfiles: [
|
|
63958
|
+
layoutProfile({
|
|
63959
|
+
variantKey: "centered-copy",
|
|
63960
|
+
family: "centered",
|
|
63961
|
+
weight: "featured",
|
|
63962
|
+
bias: "soft"
|
|
63963
|
+
}),
|
|
63964
|
+
layoutProfile({
|
|
63965
|
+
variantKey: "statement-copy",
|
|
63966
|
+
family: "split",
|
|
63967
|
+
weight: "featured",
|
|
63968
|
+
bias: "merge"
|
|
63969
|
+
}),
|
|
63970
|
+
layoutProfile({
|
|
63971
|
+
variantKey: "statement-media",
|
|
63972
|
+
family: "media-text",
|
|
63973
|
+
weight: "featured",
|
|
63974
|
+
bias: "soft"
|
|
63975
|
+
}),
|
|
63976
|
+
layoutProfile({
|
|
63977
|
+
variantKey: "media-copy",
|
|
63978
|
+
family: "media-text",
|
|
63979
|
+
weight: "featured",
|
|
63980
|
+
bias: "soft"
|
|
63981
|
+
})
|
|
63982
|
+
]
|
|
63983
|
+
})),
|
|
62239
63984
|
withDesignCapability("block.body-text", bodyTextBlockDefinition, sectionOnly(), defineBlockDesignMetadata({
|
|
62240
63985
|
flow: bodyFlow,
|
|
62241
63986
|
layoutProfiles: [
|
|
@@ -62296,9 +64041,17 @@ var systemBlockDefinitionsRaw = [
|
|
|
62296
64041
|
flow: conversionFlow,
|
|
62297
64042
|
layoutProfiles: [layoutProfile({ variantKey: "default", family: "form", weight: "standard" })]
|
|
62298
64043
|
})),
|
|
62299
|
-
withDesignCapability("block.faq", faqBlockDefinition, withEyebrowCapability(
|
|
64044
|
+
withDesignCapability("block.faq", faqBlockDefinition, withEyebrowCapability(declareBlockDesignCapability({
|
|
64045
|
+
sectionSurfaces: "supported",
|
|
64046
|
+
contentFrames: ["plain", "panel"],
|
|
64047
|
+
itemSurfaces: "supported",
|
|
64048
|
+
accordionIconSets: ["plus", "chevron", "caret", "minimal-cross"]
|
|
64049
|
+
}), standardEyebrowTreatments), defineBlockDesignMetadata({
|
|
62300
64050
|
flow: bodyFlow,
|
|
62301
|
-
layoutProfiles: [
|
|
64051
|
+
layoutProfiles: [
|
|
64052
|
+
layoutProfile({ variantKey: "default", family: "stack", weight: "standard" }),
|
|
64053
|
+
layoutProfile({ variantKey: "two-column", family: "split", weight: "standard" })
|
|
64054
|
+
]
|
|
62302
64055
|
})),
|
|
62303
64056
|
withDesignCapability("block.site-header", siteHeaderBlockDefinition, declareNoBlockDesignCapability("site-chrome"), defineBlockDesignMetadata({
|
|
62304
64057
|
flow: siteChromeFlow,
|
|
@@ -62312,7 +64065,8 @@ var systemBlockDefinitionsRaw = [
|
|
|
62312
64065
|
sectionSurfaces: "supported",
|
|
62313
64066
|
contentFrames: ["plain", "panel"],
|
|
62314
64067
|
itemSurfaces: "supported",
|
|
62315
|
-
testimonialCardTreatments: ["default", "accent-quote"]
|
|
64068
|
+
testimonialCardTreatments: ["default", "accent-quote"],
|
|
64069
|
+
headingDecorations: ["short-center-rule"]
|
|
62316
64070
|
}), defineBlockDesignMetadata({
|
|
62317
64071
|
flow: proofFlow,
|
|
62318
64072
|
layoutProfiles: [
|
|
@@ -62338,6 +64092,22 @@ var systemBlockDefinitionsRaw = [
|
|
|
62338
64092
|
flow: offeringsFlow,
|
|
62339
64093
|
layoutProfiles: [layoutProfile({ variantKey: "default", family: "grid", weight: "standard" })]
|
|
62340
64094
|
})),
|
|
64095
|
+
withDesignCapability("block.feature-cards", featureCardsBlockDefinition, declareBlockDesignCapability({
|
|
64096
|
+
sectionSurfaces: "supported",
|
|
64097
|
+
contentFrames: ["plain", "panel"],
|
|
64098
|
+
itemSurfaces: "supported",
|
|
64099
|
+
headingDecorations: ["short-center-rule"]
|
|
64100
|
+
}), defineBlockDesignMetadata({
|
|
64101
|
+
flow: offeringsFlow,
|
|
64102
|
+
layoutProfiles: [
|
|
64103
|
+
layoutProfile({
|
|
64104
|
+
variantKey: "cards",
|
|
64105
|
+
family: "grid",
|
|
64106
|
+
weight: "standard",
|
|
64107
|
+
bias: "soft"
|
|
64108
|
+
})
|
|
64109
|
+
]
|
|
64110
|
+
})),
|
|
62341
64111
|
withDesignCapability("block.media-text", mediaTextBlockDefinition, mediaPanelCapable(), defineBlockDesignMetadata({
|
|
62342
64112
|
flow: mediaFlow,
|
|
62343
64113
|
layoutProfiles: [
|
|
@@ -63989,6 +65759,46 @@ init_RichText();
|
|
|
63989
65759
|
init_richText_coerce();
|
|
63990
65760
|
init_lucide_react();
|
|
63991
65761
|
init_types7();
|
|
65762
|
+
|
|
65763
|
+
// ../blocks/src/system/runtime/nodes/accordionIconTreatment.ts
|
|
65764
|
+
init_types7();
|
|
65765
|
+
init_colorStyles();
|
|
65766
|
+
function resolveAccordionIconStyle(iconStyle, iconTreatment) {
|
|
65767
|
+
if (iconTreatment) {
|
|
65768
|
+
switch (iconTreatment.iconSet) {
|
|
65769
|
+
case "plus":
|
|
65770
|
+
return "plus-minus";
|
|
65771
|
+
case "chevron":
|
|
65772
|
+
return "chevron";
|
|
65773
|
+
case "caret":
|
|
65774
|
+
return "caret";
|
|
65775
|
+
case "minimal-cross":
|
|
65776
|
+
return "plus-minus";
|
|
65777
|
+
default:
|
|
65778
|
+
return assertNever6(iconTreatment.iconSet);
|
|
65779
|
+
}
|
|
65780
|
+
}
|
|
65781
|
+
return iconStyle && iconStyle in ICON_CONFIG ? iconStyle : "chevron";
|
|
65782
|
+
}
|
|
65783
|
+
function accordionIconColorStyle(iconTreatment) {
|
|
65784
|
+
const token = iconTreatment?.colorToken;
|
|
65785
|
+
if (!token || token === "current") return void 0;
|
|
65786
|
+
const themeToken = resolveIconColorToken(token);
|
|
65787
|
+
return {
|
|
65788
|
+
color: rgbColorValue(themeToken),
|
|
65789
|
+
...iconTreatment.openColorToken && iconTreatment.openColorToken !== "current" ? {
|
|
65790
|
+
"--accordion-icon-open-color": rgbColorValue(resolveIconColorToken(iconTreatment.openColorToken))
|
|
65791
|
+
} : {}
|
|
65792
|
+
};
|
|
65793
|
+
}
|
|
65794
|
+
function resolveIconColorToken(token) {
|
|
65795
|
+
return token === "muted" ? "mutedText" : token;
|
|
65796
|
+
}
|
|
65797
|
+
function assertNever6(value) {
|
|
65798
|
+
throw new Error(`Unhandled accordion icon set: ${String(value)}`);
|
|
65799
|
+
}
|
|
65800
|
+
|
|
65801
|
+
// ../blocks/src/system/runtime/nodes/accordion.server.tsx
|
|
63992
65802
|
import { jsx as jsx22, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
63993
65803
|
var ACCORDION_ICONS = {
|
|
63994
65804
|
Plus,
|
|
@@ -64027,15 +65837,17 @@ var AccordionItemNodeSSR = ({
|
|
|
64027
65837
|
content,
|
|
64028
65838
|
question,
|
|
64029
65839
|
answer,
|
|
64030
|
-
iconStyle
|
|
65840
|
+
iconStyle,
|
|
65841
|
+
iconTreatment
|
|
64031
65842
|
}) => {
|
|
64032
65843
|
const resolvedValue = value !== void 0 && value !== null ? String(value) : void 0;
|
|
64033
65844
|
const triggerSource = trigger ?? question;
|
|
64034
65845
|
const contentSource = content ?? answer;
|
|
64035
|
-
const resolvedIconStyle = iconStyle
|
|
65846
|
+
const resolvedIconStyle = resolveAccordionIconStyle(iconStyle, iconTreatment);
|
|
64036
65847
|
const iconConfig = ICON_CONFIG[resolvedIconStyle];
|
|
64037
65848
|
const ClosedIconComponent = ACCORDION_ICONS[iconConfig.closedIcon];
|
|
64038
65849
|
const OpenIconComponent = iconConfig.openIcon ? ACCORDION_ICONS[iconConfig.openIcon] : null;
|
|
65850
|
+
const iconColorStyle = accordionIconColorStyle(iconTreatment);
|
|
64039
65851
|
return /* @__PURE__ */ jsxs9(
|
|
64040
65852
|
"div",
|
|
64041
65853
|
{
|
|
@@ -64045,10 +65857,20 @@ var AccordionItemNodeSSR = ({
|
|
|
64045
65857
|
children: [
|
|
64046
65858
|
/* @__PURE__ */ jsxs9("div", { className: "accordion-trigger", role: "button", tabIndex: 0, "aria-expanded": "false", children: [
|
|
64047
65859
|
/* @__PURE__ */ jsx22("span", { className: "accordion-trigger-text", children: resolveNode(triggerSource) }),
|
|
64048
|
-
/* @__PURE__ */ jsxs9(
|
|
64049
|
-
|
|
64050
|
-
|
|
64051
|
-
|
|
65860
|
+
/* @__PURE__ */ jsxs9(
|
|
65861
|
+
"span",
|
|
65862
|
+
{
|
|
65863
|
+
className: "accordion-icon",
|
|
65864
|
+
"aria-hidden": "true",
|
|
65865
|
+
"data-accordion-icon-set": iconTreatment?.iconSet,
|
|
65866
|
+
"data-accordion-icon-motion": iconTreatment?.motion,
|
|
65867
|
+
style: iconColorStyle,
|
|
65868
|
+
children: [
|
|
65869
|
+
ClosedIconComponent && /* @__PURE__ */ jsx22(ClosedIconComponent, { className: "accordion-icon-closed" }),
|
|
65870
|
+
OpenIconComponent && /* @__PURE__ */ jsx22(OpenIconComponent, { className: "accordion-icon-open" })
|
|
65871
|
+
]
|
|
65872
|
+
}
|
|
65873
|
+
)
|
|
64052
65874
|
] }),
|
|
64053
65875
|
/* @__PURE__ */ jsx22(
|
|
64054
65876
|
"div",
|
|
@@ -70277,6 +72099,67 @@ function transformSdkBlockToDefinition(sdkBlock) {
|
|
|
70277
72099
|
};
|
|
70278
72100
|
}
|
|
70279
72101
|
|
|
72102
|
+
// ../blocks/src/customBlockRegistry.ts
|
|
72103
|
+
function isCustomBlockKind(blockKind) {
|
|
72104
|
+
return blockKind.startsWith("custom.");
|
|
72105
|
+
}
|
|
72106
|
+
function transformToBlockDescriptor(sdkBlock, source = "sdk") {
|
|
72107
|
+
return {
|
|
72108
|
+
name: sdkBlock.id,
|
|
72109
|
+
title: sdkBlock.title,
|
|
72110
|
+
description: sdkBlock.description,
|
|
72111
|
+
category: sdkBlock.category,
|
|
72112
|
+
tags: sdkBlock.tags,
|
|
72113
|
+
icon: sdkBlock.icon,
|
|
72114
|
+
definition: transformSdkBlockToDefinition(sdkBlock),
|
|
72115
|
+
source
|
|
72116
|
+
};
|
|
72117
|
+
}
|
|
72118
|
+
function toResolvedCustomBlock(manifest, source) {
|
|
72119
|
+
return {
|
|
72120
|
+
blockKind: manifest.id,
|
|
72121
|
+
manifest: transformSdkBlockToManifest(manifest),
|
|
72122
|
+
source,
|
|
72123
|
+
descriptor: transformToBlockDescriptor(
|
|
72124
|
+
manifest,
|
|
72125
|
+
source.kind === "managed-database" ? "database" : "sdk"
|
|
72126
|
+
)
|
|
72127
|
+
};
|
|
72128
|
+
}
|
|
72129
|
+
function createCustomBlockRegistry({
|
|
72130
|
+
sdkConfig,
|
|
72131
|
+
customBlocks = [],
|
|
72132
|
+
onConflict
|
|
72133
|
+
}) {
|
|
72134
|
+
const entriesByKind = /* @__PURE__ */ new Map();
|
|
72135
|
+
for (const sdkBlock of sdkConfig?.customBlocks ?? []) {
|
|
72136
|
+
entriesByKind.set(
|
|
72137
|
+
sdkBlock.id,
|
|
72138
|
+
toResolvedCustomBlock(sdkBlock, { kind: "sdk-config" })
|
|
72139
|
+
);
|
|
72140
|
+
}
|
|
72141
|
+
for (const customBlock of customBlocks) {
|
|
72142
|
+
const existing = entriesByKind.get(customBlock.manifest.id);
|
|
72143
|
+
if (existing) {
|
|
72144
|
+
onConflict?.(
|
|
72145
|
+
`Skipping DB custom block "${customBlock.manifest.id}" - conflicts with SDK config block`
|
|
72146
|
+
);
|
|
72147
|
+
continue;
|
|
72148
|
+
}
|
|
72149
|
+
entriesByKind.set(
|
|
72150
|
+
customBlock.manifest.id,
|
|
72151
|
+
toResolvedCustomBlock(customBlock.manifest, customBlock.source)
|
|
72152
|
+
);
|
|
72153
|
+
}
|
|
72154
|
+
return {
|
|
72155
|
+
entries: Array.from(entriesByKind.values()),
|
|
72156
|
+
findManifest: (blockKind) => {
|
|
72157
|
+
if (!isCustomBlockKind(blockKind)) return void 0;
|
|
72158
|
+
return entriesByKind.get(blockKind);
|
|
72159
|
+
}
|
|
72160
|
+
};
|
|
72161
|
+
}
|
|
72162
|
+
|
|
70280
72163
|
// ../blocks/src/PageRenderer.tsx
|
|
70281
72164
|
init_typeGuards2();
|
|
70282
72165
|
init_media3();
|
|
@@ -70446,17 +72329,14 @@ var MemoBlockSection = React6.memo(
|
|
|
70446
72329
|
}
|
|
70447
72330
|
const OverrideComponent = getBlockOverride(block.kind, blockOverrides);
|
|
70448
72331
|
let definition = getBlockDefinition(block.kind);
|
|
70449
|
-
if (!definition && block.kind.startsWith("custom.")
|
|
70450
|
-
|
|
70451
|
-
|
|
70452
|
-
|
|
70453
|
-
|
|
70454
|
-
|
|
70455
|
-
|
|
70456
|
-
|
|
70457
|
-
if (dbBlock) {
|
|
70458
|
-
definition = transformSdkBlockToDefinition(dbBlock);
|
|
70459
|
-
}
|
|
72332
|
+
if (!definition && block.kind.startsWith("custom.")) {
|
|
72333
|
+
definition = createCustomBlockRegistry({
|
|
72334
|
+
sdkConfig,
|
|
72335
|
+
customBlocks: (customBlocks ?? []).map((manifest) => ({
|
|
72336
|
+
manifest,
|
|
72337
|
+
source: { kind: "managed-database" }
|
|
72338
|
+
}))
|
|
72339
|
+
}).findManifest(block.kind)?.descriptor.definition;
|
|
70460
72340
|
}
|
|
70461
72341
|
if (!definition) {
|
|
70462
72342
|
if (OverrideComponent) {
|
|
@@ -70483,13 +72363,16 @@ var MemoBlockSection = React6.memo(
|
|
|
70483
72363
|
}
|
|
70484
72364
|
if (block.kind.startsWith("custom.") && shouldDebugCustomBlocks()) {
|
|
70485
72365
|
try {
|
|
70486
|
-
console.warn(
|
|
70487
|
-
|
|
70488
|
-
|
|
70489
|
-
|
|
70490
|
-
|
|
70491
|
-
|
|
70492
|
-
|
|
72366
|
+
console.warn(
|
|
72367
|
+
"[blocks:PageRenderer] custom block definition missing",
|
|
72368
|
+
{
|
|
72369
|
+
blockId: block.id ?? null,
|
|
72370
|
+
blockKind: block.kind,
|
|
72371
|
+
hasOverride: Boolean(OverrideComponent),
|
|
72372
|
+
sdkCustomBlocksCount: sdkConfig?.customBlocks?.length ?? 0,
|
|
72373
|
+
dbCustomBlocksCount: customBlocks?.length ?? 0
|
|
72374
|
+
}
|
|
72375
|
+
);
|
|
70493
72376
|
} catch {
|
|
70494
72377
|
}
|
|
70495
72378
|
}
|
|
@@ -70503,12 +72386,15 @@ var MemoBlockSection = React6.memo(
|
|
|
70503
72386
|
if (!OverrideComponent && !manifestHasLayout) {
|
|
70504
72387
|
if (block.kind.startsWith("custom.") && shouldDebugCustomBlocks()) {
|
|
70505
72388
|
try {
|
|
70506
|
-
console.warn(
|
|
70507
|
-
|
|
70508
|
-
|
|
70509
|
-
|
|
70510
|
-
|
|
70511
|
-
|
|
72389
|
+
console.warn(
|
|
72390
|
+
"[blocks:PageRenderer] custom block has no layout/variants and no override",
|
|
72391
|
+
{
|
|
72392
|
+
blockId: block.id ?? null,
|
|
72393
|
+
blockKind: block.kind,
|
|
72394
|
+
hasOverride: false,
|
|
72395
|
+
manifestKeys: Object.keys(definition.manifest ?? {}).sort()
|
|
72396
|
+
}
|
|
72397
|
+
);
|
|
70512
72398
|
} catch {
|
|
70513
72399
|
}
|
|
70514
72400
|
}
|
|
@@ -70542,9 +72428,10 @@ var MemoBlockSection = React6.memo(
|
|
|
70542
72428
|
if (parsed.success) {
|
|
70543
72429
|
data = parsed.data;
|
|
70544
72430
|
} else if (usePlaceholders) {
|
|
70545
|
-
const relaxed = getCachedValidator(
|
|
70546
|
-
|
|
70547
|
-
|
|
72431
|
+
const relaxed = getCachedValidator(
|
|
72432
|
+
definition.manifest,
|
|
72433
|
+
"relaxed"
|
|
72434
|
+
).safeParse(content);
|
|
70548
72435
|
if (relaxed.success) {
|
|
70549
72436
|
data = relaxed.data;
|
|
70550
72437
|
} else {
|
|
@@ -84113,7 +86000,7 @@ var SimpleCache = class {
|
|
|
84113
86000
|
};
|
|
84114
86001
|
|
|
84115
86002
|
// src/version.ts
|
|
84116
|
-
var SDK_VERSION = "0.
|
|
86003
|
+
var SDK_VERSION = "0.77.0";
|
|
84117
86004
|
|
|
84118
86005
|
// src/client/error.ts
|
|
84119
86006
|
var RiverbankApiError = class _RiverbankApiError extends Error {
|
|
@@ -84541,6 +86428,24 @@ function getPrebuildModule() {
|
|
|
84541
86428
|
return null;
|
|
84542
86429
|
}
|
|
84543
86430
|
}
|
|
86431
|
+
function mergeDefaultHeaders(defaultHeaders, options) {
|
|
86432
|
+
if (!defaultHeaders || Object.keys(defaultHeaders).length === 0) {
|
|
86433
|
+
return options;
|
|
86434
|
+
}
|
|
86435
|
+
return {
|
|
86436
|
+
...options,
|
|
86437
|
+
headers: {
|
|
86438
|
+
...defaultHeaders,
|
|
86439
|
+
...Object.fromEntries(new Headers(options?.headers).entries())
|
|
86440
|
+
}
|
|
86441
|
+
};
|
|
86442
|
+
}
|
|
86443
|
+
function withDefaultHeaders(apiClient, defaultHeaders) {
|
|
86444
|
+
return async (params) => apiClient({
|
|
86445
|
+
...params,
|
|
86446
|
+
options: mergeDefaultHeaders(defaultHeaders, params.options)
|
|
86447
|
+
});
|
|
86448
|
+
}
|
|
84544
86449
|
setSdkVersion(SDK_VERSION);
|
|
84545
86450
|
var DEFAULT_BROWSER_TIMEOUT_MS = 5e3;
|
|
84546
86451
|
var DEFAULT_SERVER_TIMEOUT_MS = 8e3;
|
|
@@ -84740,7 +86645,8 @@ function createRiverbankClient(config) {
|
|
|
84740
86645
|
keyType = "preview";
|
|
84741
86646
|
break;
|
|
84742
86647
|
}
|
|
84743
|
-
const
|
|
86648
|
+
const baseApiClient = authConfig.type === "none" ? createInternalAPIClient(config.baseUrl) : authConfig.type === "api-key" ? createBearerAPIClient(authConfig.key, config.baseUrl) : createBearerAPIClient(authConfig.token, config.baseUrl);
|
|
86649
|
+
const apiClient = withDefaultHeaders(baseApiClient, config.defaultHeaders);
|
|
84744
86650
|
const cache = new SimpleCache({
|
|
84745
86651
|
maxSize: cacheMaxSize,
|
|
84746
86652
|
ttl: cacheTTL,
|