@riverbankcms/sdk 0.76.0 → 0.77.1
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-DVUG7GK4.mjs} +1019 -442
- package/dist/{PreviewEditorUI-AQXIXPOH.mjs → PreviewEditorUI-P7RN4CDS.mjs} +2 -2
- package/dist/SdkPreviewModeRuntime-KLPX47SE.mjs +8 -0
- package/dist/_dts/ai/src/contracts/proposals.d.ts +538 -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 +57 -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/blocks/site-header.d.ts +2 -2
- 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 +16 -2
- package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/components/multi-step/runtimeFormValidation.d.ts +28 -0
- 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 +5 -4
- 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/contracts/theme.d.ts +1 -1
- 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/rendering/components/Layout.d.ts +2 -2
- 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/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +72 -27
- 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 +306 -30
- 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 +119 -3
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +4 -4
- 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 +402 -13
- 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-Q4OLG66B.mjs → chunk-2SPENC5M.mjs} +476 -153
- package/dist/{chunk-Z7JLNTJR.mjs → chunk-6SMUFTXD.mjs} +2 -1
- package/dist/{chunk-TW2Y4RR5.mjs → chunk-IENWFSLO.mjs} +365 -52
- package/dist/{chunk-LYI7TEMH.mjs → chunk-KWJPDZH2.mjs} +4682 -1463
- package/dist/{chunk-V5VORNEJ.mjs → chunk-ZYEJLCTN.mjs} +1 -1
- package/dist/cli/index.mjs +2314 -267
- 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 +3579 -1351
- 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 +2226 -402
- 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 +3573 -1355
- 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-6UT2S7KZ.mjs} +5 -5
- package/dist/server/components.mjs +3497 -1333
- package/dist/server/config-validation.mjs +2229 -402
- package/dist/server/config.mjs +2229 -402
- package/dist/server/data.mjs +2226 -402
- package/dist/server/index.mjs +31 -2
- package/dist/server/next.mjs +3503 -1329
- package/dist/server/page-converter.mjs +2213 -403
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +3497 -1333
- package/dist/server/rendering.mjs +3497 -1333
- package/dist/server/routing.mjs +2250 -363
- package/dist/server/server.mjs +2243 -400
- package/dist/server/theme-bridge.mjs +1313 -1035
- package/dist/server/theme.mjs +237 -12
- package/dist/styles/index.css +1081 -1028
- package/package.json +1 -1
- package/dist/SdkPreviewModeRuntime-ZQNDCASH.mjs +0 -8
package/dist/server/config.mjs
CHANGED
|
@@ -6659,6 +6659,7 @@ var ALLOWED_TRANSFORM_IDS = [
|
|
|
6659
6659
|
"layout.headerRootClass",
|
|
6660
6660
|
"layout.footerRootClass",
|
|
6661
6661
|
"layout.headerRootStyle",
|
|
6662
|
+
"layout.headerSectionBackground",
|
|
6662
6663
|
"layout.footerRootStyle",
|
|
6663
6664
|
// UI (ui.ts)
|
|
6664
6665
|
"ui.headerNavLinkClass",
|
|
@@ -7607,6 +7608,47 @@ var eyebrowTreatmentValues = [
|
|
|
7607
7608
|
"pill-bounce",
|
|
7608
7609
|
"accent-pill-bounce"
|
|
7609
7610
|
];
|
|
7611
|
+
var visibleHeadingDecorationFamilyValues = [
|
|
7612
|
+
"organic-squiggle",
|
|
7613
|
+
"short-center-rule"
|
|
7614
|
+
];
|
|
7615
|
+
var visibleHeadingDecorationPlacementValues = [
|
|
7616
|
+
"after-heading",
|
|
7617
|
+
"between-heading-and-body",
|
|
7618
|
+
"under-centered-heading"
|
|
7619
|
+
];
|
|
7620
|
+
var headingDecorationOverrideValues = [
|
|
7621
|
+
"site-default",
|
|
7622
|
+
"on",
|
|
7623
|
+
"off"
|
|
7624
|
+
];
|
|
7625
|
+
var headingDecorationColorTokenValues = [
|
|
7626
|
+
"text",
|
|
7627
|
+
"primary",
|
|
7628
|
+
"secondary",
|
|
7629
|
+
"accent",
|
|
7630
|
+
"border",
|
|
7631
|
+
"muted"
|
|
7632
|
+
];
|
|
7633
|
+
var accordionIconSetValues = [
|
|
7634
|
+
"plus",
|
|
7635
|
+
"chevron",
|
|
7636
|
+
"caret",
|
|
7637
|
+
"minimal-cross"
|
|
7638
|
+
];
|
|
7639
|
+
var accordionIconColorTokenValues = [
|
|
7640
|
+
"text",
|
|
7641
|
+
"muted",
|
|
7642
|
+
"primary",
|
|
7643
|
+
"secondary",
|
|
7644
|
+
"accent",
|
|
7645
|
+
"current"
|
|
7646
|
+
];
|
|
7647
|
+
var accordionIconMotionValues = [
|
|
7648
|
+
"none",
|
|
7649
|
+
"rotate",
|
|
7650
|
+
"swap"
|
|
7651
|
+
];
|
|
7610
7652
|
function defineBlockDesignCapability(capability) {
|
|
7611
7653
|
return {
|
|
7612
7654
|
...capability,
|
|
@@ -7616,7 +7658,9 @@ function defineBlockDesignCapability(capability) {
|
|
|
7616
7658
|
imageSurfaceMotions: capability.imageSurfaceMotions ?? ["static"],
|
|
7617
7659
|
testimonialCardTreatments: capability.testimonialCardTreatments ?? ["default"],
|
|
7618
7660
|
tileTreatments: capability.tileTreatments ?? ["default"],
|
|
7619
|
-
eyebrowTreatments: capability.eyebrowTreatments ?? ["plain"]
|
|
7661
|
+
eyebrowTreatments: capability.eyebrowTreatments ?? ["plain"],
|
|
7662
|
+
...capability.headingDecorations ? { headingDecorations: capability.headingDecorations } : {},
|
|
7663
|
+
...capability.accordionIconSets ? { accordionIconSets: capability.accordionIconSets } : {}
|
|
7620
7664
|
};
|
|
7621
7665
|
}
|
|
7622
7666
|
|
|
@@ -7807,6 +7851,25 @@ var blockAppearancePresets = [
|
|
|
7807
7851
|
emphasis: "high"
|
|
7808
7852
|
}
|
|
7809
7853
|
}),
|
|
7854
|
+
defineBlockAppearancePreset({
|
|
7855
|
+
kind: "block-design",
|
|
7856
|
+
id: "intro-soft-earth-statement",
|
|
7857
|
+
target: "intro",
|
|
7858
|
+
label: "Soft Earth intro statement",
|
|
7859
|
+
blockKinds: ["block.intro"],
|
|
7860
|
+
design: {
|
|
7861
|
+
sectionSurface: "base",
|
|
7862
|
+
contentFrame: plainFrame,
|
|
7863
|
+
itemSurface: "none",
|
|
7864
|
+
transitionAfter: "soft-fade-short",
|
|
7865
|
+
emphasis: "high",
|
|
7866
|
+
headingDecoration: {
|
|
7867
|
+
family: "organic-squiggle",
|
|
7868
|
+
placement: "after-heading",
|
|
7869
|
+
colorToken: "primary"
|
|
7870
|
+
}
|
|
7871
|
+
}
|
|
7872
|
+
}),
|
|
7810
7873
|
defineBlockAppearancePreset({
|
|
7811
7874
|
kind: "block-design",
|
|
7812
7875
|
id: "offerings-calm-list",
|
|
@@ -7821,6 +7884,25 @@ var blockAppearancePresets = [
|
|
|
7821
7884
|
emphasis: "medium"
|
|
7822
7885
|
}
|
|
7823
7886
|
}),
|
|
7887
|
+
defineBlockAppearancePreset({
|
|
7888
|
+
kind: "block-design",
|
|
7889
|
+
id: "feature-cards-soft-earth-offerings",
|
|
7890
|
+
target: "feature-cards",
|
|
7891
|
+
label: "Soft Earth offering cards",
|
|
7892
|
+
blockKinds: ["block.feature-cards"],
|
|
7893
|
+
design: {
|
|
7894
|
+
sectionSurface: "base",
|
|
7895
|
+
contentFrame: plainFrame,
|
|
7896
|
+
itemSurface: "raised",
|
|
7897
|
+
transitionAfter: "none",
|
|
7898
|
+
emphasis: "high",
|
|
7899
|
+
headingDecoration: {
|
|
7900
|
+
family: "short-center-rule",
|
|
7901
|
+
placement: "under-centered-heading",
|
|
7902
|
+
colorToken: "primary"
|
|
7903
|
+
}
|
|
7904
|
+
}
|
|
7905
|
+
}),
|
|
7824
7906
|
defineBlockAppearancePreset({
|
|
7825
7907
|
kind: "block-design",
|
|
7826
7908
|
id: "events-base-calendar",
|
|
@@ -7949,6 +8031,26 @@ var blockAppearancePresets = [
|
|
|
7949
8031
|
testimonialCardTreatment: "accent-quote"
|
|
7950
8032
|
}
|
|
7951
8033
|
}),
|
|
8034
|
+
defineBlockAppearancePreset({
|
|
8035
|
+
kind: "block-design",
|
|
8036
|
+
id: "testimonials-soft-earth-proof-band",
|
|
8037
|
+
target: "testimonials",
|
|
8038
|
+
label: "Soft Earth proof band",
|
|
8039
|
+
blockKinds: ["block.testimonials"],
|
|
8040
|
+
design: {
|
|
8041
|
+
sectionSurface: "brand-depth-band",
|
|
8042
|
+
contentFrame: plainFrame,
|
|
8043
|
+
itemSurface: "none",
|
|
8044
|
+
transitionAfter: "soft-fade-short",
|
|
8045
|
+
emphasis: "high",
|
|
8046
|
+
testimonialCardTreatment: "accent-quote",
|
|
8047
|
+
headingDecoration: {
|
|
8048
|
+
family: "short-center-rule",
|
|
8049
|
+
placement: "under-centered-heading",
|
|
8050
|
+
colorToken: "border"
|
|
8051
|
+
}
|
|
8052
|
+
}
|
|
8053
|
+
}),
|
|
7952
8054
|
defineBlockAppearancePreset({
|
|
7953
8055
|
kind: "block-design",
|
|
7954
8056
|
id: "faq-base-accordion",
|
|
@@ -7977,6 +8079,25 @@ var blockAppearancePresets = [
|
|
|
7977
8079
|
emphasis: "low"
|
|
7978
8080
|
}
|
|
7979
8081
|
}),
|
|
8082
|
+
defineBlockAppearancePreset({
|
|
8083
|
+
kind: "block-design",
|
|
8084
|
+
id: "faq-soft-earth-two-column",
|
|
8085
|
+
target: "faq",
|
|
8086
|
+
label: "Soft Earth two-column FAQ",
|
|
8087
|
+
blockKinds: ["block.faq"],
|
|
8088
|
+
design: {
|
|
8089
|
+
sectionSurface: "base",
|
|
8090
|
+
contentFrame: plainFrame,
|
|
8091
|
+
itemSurface: "flat",
|
|
8092
|
+
transitionAfter: "none",
|
|
8093
|
+
emphasis: "medium",
|
|
8094
|
+
accordionIconTreatment: {
|
|
8095
|
+
iconSet: "plus",
|
|
8096
|
+
colorToken: "primary",
|
|
8097
|
+
motion: "swap"
|
|
8098
|
+
}
|
|
8099
|
+
}
|
|
8100
|
+
}),
|
|
7980
8101
|
defineBlockAppearancePreset({
|
|
7981
8102
|
kind: "block-design",
|
|
7982
8103
|
id: "contact-form-panel",
|
|
@@ -8662,6 +8783,97 @@ var confidentChip = defineButtonPersonality({
|
|
|
8662
8783
|
}
|
|
8663
8784
|
});
|
|
8664
8785
|
|
|
8786
|
+
// ../theme-core/src/buttons/personalities/earth-pill.ts
|
|
8787
|
+
var earthPill = defineButtonPersonality({
|
|
8788
|
+
id: "earth-pill",
|
|
8789
|
+
name: "Earth Pill",
|
|
8790
|
+
description: "Compact terracotta pills with quiet primary-coloured ghost CTAs.",
|
|
8791
|
+
tags: { tone: "classic", energy: "calm", motion: "subtle", era: "organic" },
|
|
8792
|
+
buttonSystem: {
|
|
8793
|
+
global: {
|
|
8794
|
+
cornerStyle: "pill",
|
|
8795
|
+
shadow: "low",
|
|
8796
|
+
textTransform: "none",
|
|
8797
|
+
fontWeight: 500,
|
|
8798
|
+
borderWidth: 1,
|
|
8799
|
+
hoverTransform: "lift",
|
|
8800
|
+
hoverColor: "none",
|
|
8801
|
+
typography: "body",
|
|
8802
|
+
paddingPreset: "default"
|
|
8803
|
+
},
|
|
8804
|
+
sizes: {
|
|
8805
|
+
sm: { padding: "0.5rem 1rem", fontSize: "text-sm" },
|
|
8806
|
+
md: { padding: "0.625rem 1.35rem" },
|
|
8807
|
+
lg: { padding: "0.75rem 1.65rem", fontSize: "text-lg" },
|
|
8808
|
+
xl: { padding: "0.875rem 2rem", fontSize: "text-xl" }
|
|
8809
|
+
},
|
|
8810
|
+
variants: [
|
|
8811
|
+
{
|
|
8812
|
+
id: "primary",
|
|
8813
|
+
name: "Primary",
|
|
8814
|
+
enabled: true,
|
|
8815
|
+
priority: 1,
|
|
8816
|
+
background: { type: "solid", colorToken: "primary" },
|
|
8817
|
+
textColorToken: "primaryForeground",
|
|
8818
|
+
borderRadius: "rounded-full",
|
|
8819
|
+
shadow: { elevation: "low", softness: "soft", position: "bottom" },
|
|
8820
|
+
effects: {
|
|
8821
|
+
hover: [
|
|
8822
|
+
{ effectId: "lift", options: { translateY: "-1px" } },
|
|
8823
|
+
{ effectId: "background-on-hover", options: { colorToken: "accent" } }
|
|
8824
|
+
],
|
|
8825
|
+
active: [{ effectId: "scale-down", options: { scale: "0.98" } }]
|
|
8826
|
+
}
|
|
8827
|
+
},
|
|
8828
|
+
{
|
|
8829
|
+
id: "secondary",
|
|
8830
|
+
name: "Secondary",
|
|
8831
|
+
enabled: true,
|
|
8832
|
+
priority: 2,
|
|
8833
|
+
background: { type: "transparent" },
|
|
8834
|
+
textColorToken: "primary",
|
|
8835
|
+
borderRadius: "rounded-full",
|
|
8836
|
+
border: { widthClass: "border", colorToken: "primary" },
|
|
8837
|
+
effects: {
|
|
8838
|
+
hover: [{ effectId: "background-on-hover", options: { colorToken: "muted" } }]
|
|
8839
|
+
}
|
|
8840
|
+
},
|
|
8841
|
+
{
|
|
8842
|
+
id: "outline",
|
|
8843
|
+
name: "Outline",
|
|
8844
|
+
enabled: true,
|
|
8845
|
+
priority: 3,
|
|
8846
|
+
background: { type: "transparent" },
|
|
8847
|
+
textColorToken: "text",
|
|
8848
|
+
borderRadius: "rounded-full",
|
|
8849
|
+
border: { widthClass: "border", colorToken: "border" },
|
|
8850
|
+
effects: {
|
|
8851
|
+
hover: [{ effectId: "background-on-hover", options: { colorToken: "surfaceAlt" } }]
|
|
8852
|
+
}
|
|
8853
|
+
},
|
|
8854
|
+
{
|
|
8855
|
+
id: "ghost",
|
|
8856
|
+
name: "Ghost",
|
|
8857
|
+
enabled: true,
|
|
8858
|
+
priority: 3,
|
|
8859
|
+
background: { type: "transparent" },
|
|
8860
|
+
textColorToken: "primary",
|
|
8861
|
+
borderRadius: "rounded-full",
|
|
8862
|
+
shadow: { elevation: "none", softness: null, position: "bottom" },
|
|
8863
|
+
sizes: {
|
|
8864
|
+
sm: { padding: "0.25rem 0", fontSize: "text-sm" },
|
|
8865
|
+
md: { padding: "0.375rem 0" },
|
|
8866
|
+
lg: { padding: "0.5rem 0", fontSize: "text-lg" },
|
|
8867
|
+
xl: { padding: "0.625rem 0", fontSize: "text-xl" }
|
|
8868
|
+
},
|
|
8869
|
+
effects: {
|
|
8870
|
+
hover: [{ effectId: "opacity-reduce", options: { reduction: 25 } }]
|
|
8871
|
+
}
|
|
8872
|
+
}
|
|
8873
|
+
]
|
|
8874
|
+
}
|
|
8875
|
+
});
|
|
8876
|
+
|
|
8665
8877
|
// ../theme-core/src/buttons/personalities/editorial-link.ts
|
|
8666
8878
|
var editorialLink = defineButtonPersonality({
|
|
8667
8879
|
id: "editorial-link",
|
|
@@ -9120,6 +9332,7 @@ var softPill = defineButtonPersonality({
|
|
|
9120
9332
|
// ../theme-core/src/buttons/personalities/index.ts
|
|
9121
9333
|
var buttonPersonalities = [
|
|
9122
9334
|
softPill,
|
|
9335
|
+
earthPill,
|
|
9123
9336
|
confidentChip,
|
|
9124
9337
|
editorialLink,
|
|
9125
9338
|
pebble,
|
|
@@ -9761,8 +9974,19 @@ var headingTypographyStyleSchema = typographyStyleSchema.extend({
|
|
|
9761
9974
|
colorToken: themeColorTokenSchema.nullable().optional()
|
|
9762
9975
|
});
|
|
9763
9976
|
var proseLinkUnderlineStyleSchema = z21.enum(["solid", "dotted", "dashed"]);
|
|
9764
|
-
var proseLinkUnderlineThicknessSchema = z21.enum([
|
|
9765
|
-
|
|
9977
|
+
var proseLinkUnderlineThicknessSchema = z21.enum([
|
|
9978
|
+
"auto",
|
|
9979
|
+
"fromFont",
|
|
9980
|
+
"thin",
|
|
9981
|
+
"medium",
|
|
9982
|
+
"thick"
|
|
9983
|
+
]);
|
|
9984
|
+
var proseLinkUnderlineOffsetSchema = z21.enum([
|
|
9985
|
+
"auto",
|
|
9986
|
+
"tight",
|
|
9987
|
+
"normal",
|
|
9988
|
+
"loose"
|
|
9989
|
+
]);
|
|
9766
9990
|
var proseLinkStyleSchema = z21.object({
|
|
9767
9991
|
colorToken: themeColorTokenSchema.optional(),
|
|
9768
9992
|
hoverColorToken: themeColorTokenSchema.optional(),
|
|
@@ -9773,7 +9997,14 @@ var proseLinkStyleSchema = z21.object({
|
|
|
9773
9997
|
underlineThickness: proseLinkUnderlineThicknessSchema.optional(),
|
|
9774
9998
|
underlineOffset: proseLinkUnderlineOffsetSchema.optional()
|
|
9775
9999
|
});
|
|
9776
|
-
var semanticSpacingSchema = z21.enum([
|
|
10000
|
+
var semanticSpacingSchema = z21.enum([
|
|
10001
|
+
"none",
|
|
10002
|
+
"compact",
|
|
10003
|
+
"cozy",
|
|
10004
|
+
"medium",
|
|
10005
|
+
"comfortable",
|
|
10006
|
+
"spacious"
|
|
10007
|
+
]);
|
|
9777
10008
|
var boxRoundedSchema = z21.enum(["none", "sm", "md", "lg", "xl", "2xl", "full"]);
|
|
9778
10009
|
var boxBackgroundOverlaySchema = z21.object({
|
|
9779
10010
|
type: z21.enum(["none", "color", "gradient"]).nullable().optional(),
|
|
@@ -9795,12 +10026,36 @@ var boxBackgroundSchema = z21.object({
|
|
|
9795
10026
|
textColor: tokenOrCssColorValueSchema.nullable().optional(),
|
|
9796
10027
|
headingColor: tokenOrCssColorValueSchema.nullable().optional()
|
|
9797
10028
|
});
|
|
10029
|
+
var noHeadingDecorationSchema = z21.object({
|
|
10030
|
+
family: z21.literal("none"),
|
|
10031
|
+
placement: z21.literal("none")
|
|
10032
|
+
});
|
|
10033
|
+
var visibleHeadingDecorationSchema = z21.object({
|
|
10034
|
+
family: z21.enum(visibleHeadingDecorationFamilyValues),
|
|
10035
|
+
placement: z21.enum(visibleHeadingDecorationPlacementValues),
|
|
10036
|
+
colorToken: z21.enum(headingDecorationColorTokenValues).optional()
|
|
10037
|
+
});
|
|
10038
|
+
var headingDecorationSchema = z21.union([
|
|
10039
|
+
noHeadingDecorationSchema,
|
|
10040
|
+
visibleHeadingDecorationSchema
|
|
10041
|
+
]);
|
|
10042
|
+
var accordionIconTreatmentSchema = z21.object({
|
|
10043
|
+
iconSet: z21.enum(accordionIconSetValues),
|
|
10044
|
+
colorToken: z21.enum(accordionIconColorTokenValues),
|
|
10045
|
+
openColorToken: z21.enum(accordionIconColorTokenValues).optional(),
|
|
10046
|
+
motion: z21.enum(accordionIconMotionValues)
|
|
10047
|
+
});
|
|
9798
10048
|
var sectionStylesOverrideSchema = z21.object({
|
|
9799
10049
|
background: boxBackgroundSchema.nullable().optional(),
|
|
9800
10050
|
spacing: semanticSpacingSchema.nullable().optional(),
|
|
9801
10051
|
minHeight: z21.enum(["none", "banner", "hero", "immersive"]).nullable().optional(),
|
|
9802
10052
|
tileTreatment: z21.enum(tileTreatmentValues).nullable().optional(),
|
|
9803
|
-
eyebrowTreatment: z21.enum(eyebrowTreatmentValues).nullable().optional()
|
|
10053
|
+
eyebrowTreatment: z21.enum(eyebrowTreatmentValues).nullable().optional(),
|
|
10054
|
+
headingDecoration: headingDecorationSchema.nullable().optional(),
|
|
10055
|
+
// Author-level override consumed by later block/editor rendering phases.
|
|
10056
|
+
// Keeping it in section styles lets existing block save APIs persist it.
|
|
10057
|
+
headingDecorationOverride: z21.enum(headingDecorationOverrideValues).nullable().optional(),
|
|
10058
|
+
accordionIconTreatment: accordionIconTreatmentSchema.nullable().optional()
|
|
9804
10059
|
});
|
|
9805
10060
|
var containerStylesOverrideSchema = z21.object({
|
|
9806
10061
|
background: boxBackgroundSchema.nullable().optional(),
|
|
@@ -9893,9 +10148,17 @@ var inputStyle = z21.object({
|
|
|
9893
10148
|
focus: z21.enum(["glow", "ring", "underline"]),
|
|
9894
10149
|
label: z21.enum(["inside", "above"])
|
|
9895
10150
|
});
|
|
9896
|
-
var headerVariant = z21.enum(["classic", "centered", "transparent", "floating"
|
|
10151
|
+
var headerVariant = z21.enum(["classic", "centered", "transparent", "floating"]);
|
|
9897
10152
|
var headerPositioning = z21.enum(["static", "sticky", "fixed"]);
|
|
9898
|
-
var headerNavStyle = z21.enum([
|
|
10153
|
+
var headerNavStyle = z21.enum([
|
|
10154
|
+
"minimal",
|
|
10155
|
+
"underline",
|
|
10156
|
+
"underline-grow",
|
|
10157
|
+
"capsule",
|
|
10158
|
+
"scale",
|
|
10159
|
+
"frosted",
|
|
10160
|
+
"solid"
|
|
10161
|
+
]);
|
|
9899
10162
|
var navFontWeight = z21.enum(["regular", "medium", "semibold", "bold"]);
|
|
9900
10163
|
var headerMaxWidth = z21.enum(["container", "full"]);
|
|
9901
10164
|
var headerContainerSchema = z21.object({
|
|
@@ -9943,8 +10206,22 @@ var dropdownStyleSchema = z21.object({
|
|
|
9943
10206
|
textSize: z21.enum(["xs", "sm", "base", "lg"]).optional()
|
|
9944
10207
|
// optional = no override (browser default)
|
|
9945
10208
|
}).optional();
|
|
9946
|
-
var headerCtaGapSchema = z21.enum([
|
|
9947
|
-
|
|
10209
|
+
var headerCtaGapSchema = z21.enum([
|
|
10210
|
+
"none",
|
|
10211
|
+
"tight",
|
|
10212
|
+
"compact",
|
|
10213
|
+
"default",
|
|
10214
|
+
"relaxed",
|
|
10215
|
+
"spacious"
|
|
10216
|
+
]);
|
|
10217
|
+
var headerCtaTreatmentSchema = z21.enum([
|
|
10218
|
+
"default",
|
|
10219
|
+
"primary",
|
|
10220
|
+
"secondary",
|
|
10221
|
+
"inverted",
|
|
10222
|
+
"outline",
|
|
10223
|
+
"ghost"
|
|
10224
|
+
]);
|
|
9948
10225
|
var navContainerSchema = z21.object({
|
|
9949
10226
|
type: z21.enum(["none", "pill", "glass"]).default("none"),
|
|
9950
10227
|
tint: z21.string().nullable().optional(),
|
|
@@ -9999,7 +10276,14 @@ var footerMaxWidth = z21.enum(["container", "full"]);
|
|
|
9999
10276
|
var footerMode = z21.enum(["default", "blocks", "default+blocks", "none"]);
|
|
10000
10277
|
var footerNavLayoutMode = z21.enum(["stack", "inline", "inline-wrap"]);
|
|
10001
10278
|
var footerNavLayoutAlign = z21.enum(["start", "center", "end", "space-between"]);
|
|
10002
|
-
var footerSpacing = z21.enum([
|
|
10279
|
+
var footerSpacing = z21.enum([
|
|
10280
|
+
"none",
|
|
10281
|
+
"tight",
|
|
10282
|
+
"compact",
|
|
10283
|
+
"default",
|
|
10284
|
+
"relaxed",
|
|
10285
|
+
"spacious"
|
|
10286
|
+
]);
|
|
10003
10287
|
var footerLogoPlacement = z21.enum(["left", "right", "above", "below"]);
|
|
10004
10288
|
var footerLogoSize = z21.enum(["sm", "md", "lg", "xl"]);
|
|
10005
10289
|
var footerLogoMaxHeight = z21.enum(["sm", "md", "lg", "xl"]);
|
|
@@ -10064,7 +10348,12 @@ var footerSchema = z21.object({
|
|
|
10064
10348
|
logo: footerLogoSchema.optional(),
|
|
10065
10349
|
bottomBar: footerBottomBarSchema.optional()
|
|
10066
10350
|
});
|
|
10067
|
-
var containerPaddingPresetSchema = z21.enum([
|
|
10351
|
+
var containerPaddingPresetSchema = z21.enum([
|
|
10352
|
+
"tight",
|
|
10353
|
+
"compact",
|
|
10354
|
+
"default",
|
|
10355
|
+
"relaxed"
|
|
10356
|
+
]);
|
|
10068
10357
|
var layoutSchema = z21.object({
|
|
10069
10358
|
containerPadding: z21.object({
|
|
10070
10359
|
mobile: containerPaddingPresetSchema.optional(),
|
|
@@ -10072,8 +10361,24 @@ var layoutSchema = z21.object({
|
|
|
10072
10361
|
desktop: containerPaddingPresetSchema.optional()
|
|
10073
10362
|
}).optional()
|
|
10074
10363
|
}).optional();
|
|
10075
|
-
var heroTypographySizeSchema = z21.enum([
|
|
10076
|
-
|
|
10364
|
+
var heroTypographySizeSchema = z21.enum([
|
|
10365
|
+
"sm",
|
|
10366
|
+
"base",
|
|
10367
|
+
"lg",
|
|
10368
|
+
"xl",
|
|
10369
|
+
"2xl",
|
|
10370
|
+
"3xl",
|
|
10371
|
+
"4xl",
|
|
10372
|
+
"5xl",
|
|
10373
|
+
"6xl",
|
|
10374
|
+
"editorial"
|
|
10375
|
+
]);
|
|
10376
|
+
var heroTypographyLineHeightSchema = z21.enum([
|
|
10377
|
+
"tight",
|
|
10378
|
+
"snug",
|
|
10379
|
+
"normal",
|
|
10380
|
+
"relaxed"
|
|
10381
|
+
]);
|
|
10077
10382
|
var heroResponsiveTypographySchema = z21.object({
|
|
10078
10383
|
headlineSize: heroTypographySizeSchema.optional(),
|
|
10079
10384
|
headlineLineHeight: heroTypographyLineHeightSchema.optional(),
|
|
@@ -10508,6 +10813,28 @@ var warmNeutralCream = definePaletteVariant({
|
|
|
10508
10813
|
{ name: "border", hex: "#e0d2b8" }
|
|
10509
10814
|
]
|
|
10510
10815
|
});
|
|
10816
|
+
var warmNeutralSoftEarth = definePaletteVariant({
|
|
10817
|
+
id: "warm-neutral-soft-earth",
|
|
10818
|
+
name: "Warm Neutral \u2014 Soft Earth",
|
|
10819
|
+
description: "Cream ground with terracotta primary, clay accents, and olive depth.",
|
|
10820
|
+
tags: { tone: "classic", energy: "calm", era: "organic" },
|
|
10821
|
+
mode: "light",
|
|
10822
|
+
colors: [
|
|
10823
|
+
{ name: "primary", hex: "#a8573d" },
|
|
10824
|
+
{ name: "secondary", hex: "#72765c" },
|
|
10825
|
+
{ name: "accent", hex: "#c87557" },
|
|
10826
|
+
{ name: "success", hex: "#687854" },
|
|
10827
|
+
{ name: "warning", hex: "#b7863e" },
|
|
10828
|
+
{ name: "destructive", hex: "#a54b3c" },
|
|
10829
|
+
{ name: "background", hex: "#fbf6eb" },
|
|
10830
|
+
{ name: "surface", hex: "#fffdf7" },
|
|
10831
|
+
{ name: "surfaceAlt", hex: "#f0e4d3" },
|
|
10832
|
+
{ name: "muted", hex: "#eadbc6" },
|
|
10833
|
+
{ name: "text", hex: "#30281f" },
|
|
10834
|
+
{ name: "primaryForeground", hex: "#fffaf3" },
|
|
10835
|
+
{ name: "border", hex: "#d9c8b2" }
|
|
10836
|
+
]
|
|
10837
|
+
});
|
|
10511
10838
|
var warmNeutralForest = definePaletteVariant({
|
|
10512
10839
|
id: "warm-neutral-forest",
|
|
10513
10840
|
name: "Warm Neutral \u2014 Forest",
|
|
@@ -10541,6 +10868,7 @@ var paletteVariants = [
|
|
|
10541
10868
|
// Warm-neutral family
|
|
10542
10869
|
warmNeutralClay,
|
|
10543
10870
|
warmNeutralCream,
|
|
10871
|
+
warmNeutralSoftEarth,
|
|
10544
10872
|
warmNeutralForest,
|
|
10545
10873
|
// High-contrast family
|
|
10546
10874
|
highContrastInk,
|
|
@@ -10559,6 +10887,12 @@ var paletteVariantsById = new Map(
|
|
|
10559
10887
|
function asHeaderLookId(value) {
|
|
10560
10888
|
return value;
|
|
10561
10889
|
}
|
|
10890
|
+
function asHeaderLayoutId(value) {
|
|
10891
|
+
return value;
|
|
10892
|
+
}
|
|
10893
|
+
function asHeaderStyleId(value) {
|
|
10894
|
+
return value;
|
|
10895
|
+
}
|
|
10562
10896
|
function baseHeader(theme) {
|
|
10563
10897
|
const {
|
|
10564
10898
|
navLinkStyle: _navLinkStyle,
|
|
@@ -10577,67 +10911,427 @@ function baseHeader(theme) {
|
|
|
10577
10911
|
navContainer: { type: "none", tint: null, opacity: 0.15 }
|
|
10578
10912
|
};
|
|
10579
10913
|
}
|
|
10580
|
-
|
|
10581
|
-
|
|
10582
|
-
|
|
10583
|
-
|
|
10914
|
+
var headerLayoutCatalog = [
|
|
10915
|
+
{
|
|
10916
|
+
id: asHeaderLayoutId("classic"),
|
|
10917
|
+
label: "Classic",
|
|
10918
|
+
description: "Logo and navigation in one practical horizontal row.",
|
|
10919
|
+
structure: "inline-classic",
|
|
10584
10920
|
variant: "classic",
|
|
10585
|
-
|
|
10921
|
+
defaultPositioning: "sticky",
|
|
10922
|
+
shrinkOnScroll: false
|
|
10923
|
+
},
|
|
10924
|
+
{
|
|
10925
|
+
id: asHeaderLayoutId("centered"),
|
|
10926
|
+
label: "Centered",
|
|
10927
|
+
description: "Logo centered above a balanced navigation row.",
|
|
10928
|
+
structure: "centered-stack",
|
|
10929
|
+
variant: "centered",
|
|
10930
|
+
defaultPositioning: "static",
|
|
10931
|
+
shrinkOnScroll: false,
|
|
10932
|
+
maxRecommendedNavItems: 5,
|
|
10933
|
+
allowedLogoShapes: ["none", "text-only", "horizontal", "square"]
|
|
10934
|
+
},
|
|
10935
|
+
{
|
|
10936
|
+
id: asHeaderLayoutId("floating"),
|
|
10937
|
+
label: "Floating",
|
|
10938
|
+
description: "Detached header chrome that sits over the opening section.",
|
|
10939
|
+
structure: "floating-shell",
|
|
10940
|
+
variant: "floating",
|
|
10941
|
+
defaultPositioning: "fixed",
|
|
10586
10942
|
shrinkOnScroll: true,
|
|
10587
|
-
|
|
10588
|
-
|
|
10589
|
-
|
|
10590
|
-
|
|
10591
|
-
|
|
10592
|
-
|
|
10593
|
-
|
|
10594
|
-
|
|
10595
|
-
|
|
10596
|
-
|
|
10597
|
-
|
|
10598
|
-
|
|
10599
|
-
|
|
10600
|
-
|
|
10601
|
-
|
|
10602
|
-
|
|
10603
|
-
|
|
10604
|
-
|
|
10605
|
-
|
|
10606
|
-
|
|
10607
|
-
|
|
10608
|
-
|
|
10609
|
-
|
|
10610
|
-
|
|
10611
|
-
|
|
10612
|
-
|
|
10613
|
-
|
|
10614
|
-
|
|
10615
|
-
|
|
10616
|
-
|
|
10617
|
-
|
|
10618
|
-
|
|
10619
|
-
|
|
10620
|
-
|
|
10621
|
-
|
|
10622
|
-
|
|
10623
|
-
|
|
10624
|
-
|
|
10625
|
-
|
|
10626
|
-
|
|
10627
|
-
|
|
10628
|
-
|
|
10629
|
-
|
|
10630
|
-
|
|
10631
|
-
|
|
10632
|
-
|
|
10633
|
-
|
|
10634
|
-
|
|
10635
|
-
|
|
10636
|
-
|
|
10637
|
-
|
|
10638
|
-
|
|
10639
|
-
|
|
10640
|
-
|
|
10943
|
+
maxRecommendedNavItems: 5,
|
|
10944
|
+
allowedLogoShapes: ["none", "text-only", "horizontal"]
|
|
10945
|
+
}
|
|
10946
|
+
];
|
|
10947
|
+
function supportedLayouts(ids) {
|
|
10948
|
+
return ids.map(asHeaderLayoutId);
|
|
10949
|
+
}
|
|
10950
|
+
var headerStyleCatalog = [
|
|
10951
|
+
{
|
|
10952
|
+
id: asHeaderStyleId("minimal"),
|
|
10953
|
+
label: "Minimal",
|
|
10954
|
+
description: "Quiet surface with simple color-change navigation.",
|
|
10955
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
10956
|
+
navInteraction: "color-change",
|
|
10957
|
+
surface: "neutral",
|
|
10958
|
+
navTypography: "plain"
|
|
10959
|
+
},
|
|
10960
|
+
{
|
|
10961
|
+
id: asHeaderStyleId("fine-line"),
|
|
10962
|
+
label: "Fine Line",
|
|
10963
|
+
description: "Light surface with a crisp lower rule and underline hover.",
|
|
10964
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
10965
|
+
navInteraction: "underline-grow",
|
|
10966
|
+
surface: "bordered",
|
|
10967
|
+
navTypography: "plain"
|
|
10968
|
+
},
|
|
10969
|
+
{
|
|
10970
|
+
id: asHeaderStyleId("soft-bar"),
|
|
10971
|
+
label: "Soft Bar",
|
|
10972
|
+
description: "Soft tinted surface with gentle pill hover states.",
|
|
10973
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
10974
|
+
navInteraction: "pill-background",
|
|
10975
|
+
surface: "soft",
|
|
10976
|
+
navTypography: "plain"
|
|
10977
|
+
},
|
|
10978
|
+
{
|
|
10979
|
+
id: asHeaderStyleId("pill-nav"),
|
|
10980
|
+
label: "Pill Nav",
|
|
10981
|
+
description: "A calm pill navigation rail over a neutral header.",
|
|
10982
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
10983
|
+
navInteraction: "pill-background",
|
|
10984
|
+
surface: "soft",
|
|
10985
|
+
navTypography: "plain"
|
|
10986
|
+
},
|
|
10987
|
+
{
|
|
10988
|
+
id: asHeaderStyleId("brand-bar"),
|
|
10989
|
+
label: "Brand Bar",
|
|
10990
|
+
description: "Solid brand surface with high-contrast navigation.",
|
|
10991
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
10992
|
+
navInteraction: "color-change",
|
|
10993
|
+
surface: "brand-solid",
|
|
10994
|
+
navTypography: "brand-caps"
|
|
10995
|
+
},
|
|
10996
|
+
{
|
|
10997
|
+
id: asHeaderStyleId("brand-underline"),
|
|
10998
|
+
label: "Brand Underline",
|
|
10999
|
+
description: "Brand surface with underline-grow navigation.",
|
|
11000
|
+
supportedLayoutIds: supportedLayouts(["classic"]),
|
|
11001
|
+
navInteraction: "underline-grow",
|
|
11002
|
+
surface: "brand-solid",
|
|
11003
|
+
navTypography: "brand-caps"
|
|
11004
|
+
},
|
|
11005
|
+
{
|
|
11006
|
+
id: asHeaderStyleId("brand-pill"),
|
|
11007
|
+
label: "Brand Pill",
|
|
11008
|
+
description: "Solid brand surface with rounded active and hover states.",
|
|
11009
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered", "floating"]),
|
|
11010
|
+
navInteraction: "pill-background",
|
|
11011
|
+
surface: "brand-solid",
|
|
11012
|
+
navTypography: "brand-caps"
|
|
11013
|
+
},
|
|
11014
|
+
{
|
|
11015
|
+
id: asHeaderStyleId("serif-line"),
|
|
11016
|
+
label: "Serif Line",
|
|
11017
|
+
description: "Typographic logo treatment with understated underline navigation.",
|
|
11018
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
11019
|
+
navInteraction: "underline-grow",
|
|
11020
|
+
surface: "bordered",
|
|
11021
|
+
navTypography: "heading"
|
|
11022
|
+
},
|
|
11023
|
+
{
|
|
11024
|
+
id: asHeaderStyleId("flat-tabs"),
|
|
11025
|
+
label: "Flat Tabs",
|
|
11026
|
+
description: "Flat block hover and active states with a Swiss utility feel.",
|
|
11027
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
11028
|
+
navInteraction: "flat-block",
|
|
11029
|
+
surface: "bordered",
|
|
11030
|
+
navTypography: "quiet-caps"
|
|
11031
|
+
},
|
|
11032
|
+
{
|
|
11033
|
+
id: asHeaderStyleId("glass"),
|
|
11034
|
+
label: "Glass",
|
|
11035
|
+
description: "Translucent chrome with frosted navigation backing.",
|
|
11036
|
+
supportedLayoutIds: supportedLayouts(["classic", "floating"]),
|
|
11037
|
+
navInteraction: "glass-backed",
|
|
11038
|
+
surface: "floating",
|
|
11039
|
+
navTypography: "plain"
|
|
11040
|
+
},
|
|
11041
|
+
{
|
|
11042
|
+
id: asHeaderStyleId("minimal-surface"),
|
|
11043
|
+
label: "Clear Split",
|
|
11044
|
+
description: "Floating logo with transparent navigation and no shared shell.",
|
|
11045
|
+
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
11046
|
+
navInteraction: "color-change",
|
|
11047
|
+
surface: "floating",
|
|
11048
|
+
navTypography: "plain"
|
|
11049
|
+
},
|
|
11050
|
+
{
|
|
11051
|
+
id: asHeaderStyleId("soft-shell"),
|
|
11052
|
+
label: "Soft Shell",
|
|
11053
|
+
description: "Floating rounded shell with soft pill navigation states.",
|
|
11054
|
+
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
11055
|
+
navInteraction: "pill-background",
|
|
11056
|
+
surface: "floating",
|
|
11057
|
+
navTypography: "plain"
|
|
11058
|
+
},
|
|
11059
|
+
{
|
|
11060
|
+
id: asHeaderStyleId("split-glass"),
|
|
11061
|
+
label: "Split Glass",
|
|
11062
|
+
description: "Logo floats independently while the navigation sits in a glass rail.",
|
|
11063
|
+
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
11064
|
+
navInteraction: "glass-backed",
|
|
11065
|
+
surface: "floating",
|
|
11066
|
+
navTypography: "quiet-caps"
|
|
11067
|
+
},
|
|
11068
|
+
{
|
|
11069
|
+
id: asHeaderStyleId("split-pill"),
|
|
11070
|
+
label: "Split Pill",
|
|
11071
|
+
description: "Logo floats independently with a soft pill-backed navigation rail.",
|
|
11072
|
+
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
11073
|
+
navInteraction: "pill-background",
|
|
11074
|
+
surface: "floating",
|
|
11075
|
+
navTypography: "heading"
|
|
11076
|
+
}
|
|
11077
|
+
];
|
|
11078
|
+
var headerLayoutsById = new Map(
|
|
11079
|
+
headerLayoutCatalog.map((layout) => [layout.id, layout])
|
|
11080
|
+
);
|
|
11081
|
+
var headerStylesById = new Map(
|
|
11082
|
+
headerStyleCatalog.map((style) => [style.id, style])
|
|
11083
|
+
);
|
|
11084
|
+
var headerStyleCompatibilityOrder = /* @__PURE__ */ new Map([
|
|
11085
|
+
[
|
|
11086
|
+
asHeaderLayoutId("classic"),
|
|
11087
|
+
headerStyleRepairChain([
|
|
11088
|
+
"minimal",
|
|
11089
|
+
"glass",
|
|
11090
|
+
"fine-line",
|
|
11091
|
+
"soft-bar",
|
|
11092
|
+
"pill-nav",
|
|
11093
|
+
"brand-bar",
|
|
11094
|
+
"brand-underline",
|
|
11095
|
+
"brand-pill",
|
|
11096
|
+
"serif-line",
|
|
11097
|
+
"flat-tabs"
|
|
11098
|
+
])
|
|
11099
|
+
],
|
|
11100
|
+
[
|
|
11101
|
+
asHeaderLayoutId("centered"),
|
|
11102
|
+
headerStyleRepairChain([
|
|
11103
|
+
"minimal",
|
|
11104
|
+
"fine-line",
|
|
11105
|
+
"soft-bar",
|
|
11106
|
+
"pill-nav",
|
|
11107
|
+
"brand-bar",
|
|
11108
|
+
"brand-pill",
|
|
11109
|
+
"serif-line",
|
|
11110
|
+
"flat-tabs"
|
|
11111
|
+
])
|
|
11112
|
+
],
|
|
11113
|
+
[
|
|
11114
|
+
asHeaderLayoutId("floating"),
|
|
11115
|
+
headerStyleRepairChain([
|
|
11116
|
+
"glass",
|
|
11117
|
+
"minimal-surface",
|
|
11118
|
+
"split-glass",
|
|
11119
|
+
"split-pill",
|
|
11120
|
+
"soft-shell",
|
|
11121
|
+
"brand-pill"
|
|
11122
|
+
])
|
|
11123
|
+
]
|
|
11124
|
+
]);
|
|
11125
|
+
function headerStyleRepairChain(values) {
|
|
11126
|
+
return values.map(asHeaderStyleId);
|
|
11127
|
+
}
|
|
11128
|
+
var headerStyleRepairOrder = /* @__PURE__ */ new Map(
|
|
11129
|
+
[
|
|
11130
|
+
[
|
|
11131
|
+
asHeaderStyleId("brand-bar"),
|
|
11132
|
+
headerStyleRepairChain(["brand-bar", "brand-pill", "minimal"])
|
|
11133
|
+
],
|
|
11134
|
+
[
|
|
11135
|
+
asHeaderStyleId("brand-underline"),
|
|
11136
|
+
headerStyleRepairChain(["serif-line", "fine-line", "minimal"])
|
|
11137
|
+
],
|
|
11138
|
+
[
|
|
11139
|
+
asHeaderStyleId("brand-pill"),
|
|
11140
|
+
headerStyleRepairChain(["brand-pill", "brand-bar", "minimal"])
|
|
11141
|
+
],
|
|
11142
|
+
[
|
|
11143
|
+
asHeaderStyleId("pill-nav"),
|
|
11144
|
+
headerStyleRepairChain(["pill-nav", "soft-bar", "minimal"])
|
|
11145
|
+
],
|
|
11146
|
+
[
|
|
11147
|
+
asHeaderStyleId("flat-tabs"),
|
|
11148
|
+
headerStyleRepairChain(["flat-tabs", "pill-nav", "minimal"])
|
|
11149
|
+
],
|
|
11150
|
+
[
|
|
11151
|
+
asHeaderStyleId("serif-line"),
|
|
11152
|
+
headerStyleRepairChain(["serif-line", "fine-line", "minimal"])
|
|
11153
|
+
],
|
|
11154
|
+
[
|
|
11155
|
+
asHeaderStyleId("glass"),
|
|
11156
|
+
headerStyleRepairChain(["glass", "minimal-surface", "minimal"])
|
|
11157
|
+
],
|
|
11158
|
+
[
|
|
11159
|
+
asHeaderStyleId("soft-shell"),
|
|
11160
|
+
headerStyleRepairChain(["soft-shell", "soft-bar", "minimal"])
|
|
11161
|
+
],
|
|
11162
|
+
[
|
|
11163
|
+
asHeaderStyleId("minimal-surface"),
|
|
11164
|
+
headerStyleRepairChain(["minimal-surface", "minimal"])
|
|
11165
|
+
],
|
|
11166
|
+
[
|
|
11167
|
+
asHeaderStyleId("split-glass"),
|
|
11168
|
+
headerStyleRepairChain(["split-glass", "glass", "minimal-surface"])
|
|
11169
|
+
],
|
|
11170
|
+
[
|
|
11171
|
+
asHeaderStyleId("split-pill"),
|
|
11172
|
+
headerStyleRepairChain(["split-pill", "soft-shell", "brand-pill"])
|
|
11173
|
+
],
|
|
11174
|
+
[
|
|
11175
|
+
asHeaderStyleId("fine-line"),
|
|
11176
|
+
headerStyleRepairChain(["fine-line", "minimal"])
|
|
11177
|
+
],
|
|
11178
|
+
[
|
|
11179
|
+
asHeaderStyleId("soft-bar"),
|
|
11180
|
+
headerStyleRepairChain(["soft-bar", "minimal"])
|
|
11181
|
+
],
|
|
11182
|
+
[asHeaderStyleId("minimal"), headerStyleRepairChain(["minimal"])]
|
|
11183
|
+
]
|
|
11184
|
+
);
|
|
11185
|
+
var legacyHeaderLookAliases = [
|
|
11186
|
+
{
|
|
11187
|
+
lookId: asHeaderLookId("clean-base"),
|
|
11188
|
+
selection: {
|
|
11189
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
11190
|
+
styleId: asHeaderStyleId("minimal")
|
|
11191
|
+
}
|
|
11192
|
+
},
|
|
11193
|
+
{
|
|
11194
|
+
lookId: asHeaderLookId("brand-solid"),
|
|
11195
|
+
selection: {
|
|
11196
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
11197
|
+
styleId: asHeaderStyleId("brand-bar")
|
|
11198
|
+
}
|
|
11199
|
+
},
|
|
11200
|
+
{
|
|
11201
|
+
lookId: asHeaderLookId("serif-line"),
|
|
11202
|
+
selection: {
|
|
11203
|
+
layoutId: asHeaderLayoutId("centered"),
|
|
11204
|
+
styleId: asHeaderStyleId("serif-line")
|
|
11205
|
+
}
|
|
11206
|
+
},
|
|
11207
|
+
{
|
|
11208
|
+
lookId: asHeaderLookId("centered-calm"),
|
|
11209
|
+
selection: {
|
|
11210
|
+
layoutId: asHeaderLayoutId("centered"),
|
|
11211
|
+
styleId: asHeaderStyleId("minimal")
|
|
11212
|
+
}
|
|
11213
|
+
},
|
|
11214
|
+
{
|
|
11215
|
+
lookId: asHeaderLookId("practical-utility"),
|
|
11216
|
+
selection: {
|
|
11217
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
11218
|
+
styleId: asHeaderStyleId("flat-tabs")
|
|
11219
|
+
}
|
|
11220
|
+
},
|
|
11221
|
+
{
|
|
11222
|
+
lookId: asHeaderLookId("minimal-transparent"),
|
|
11223
|
+
selection: {
|
|
11224
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
11225
|
+
styleId: asHeaderStyleId("minimal")
|
|
11226
|
+
}
|
|
11227
|
+
},
|
|
11228
|
+
{
|
|
11229
|
+
lookId: asHeaderLookId("transparent-overlay"),
|
|
11230
|
+
selection: {
|
|
11231
|
+
layoutId: asHeaderLayoutId("floating"),
|
|
11232
|
+
styleId: asHeaderStyleId("glass")
|
|
11233
|
+
}
|
|
11234
|
+
},
|
|
11235
|
+
{
|
|
11236
|
+
lookId: asHeaderLookId("floating-glass"),
|
|
11237
|
+
selection: {
|
|
11238
|
+
layoutId: asHeaderLayoutId("floating"),
|
|
11239
|
+
styleId: asHeaderStyleId("glass")
|
|
11240
|
+
}
|
|
11241
|
+
}
|
|
11242
|
+
];
|
|
11243
|
+
var legacyHeaderLookAliasesById = new Map(legacyHeaderLookAliases.map((alias) => [alias.lookId, alias]));
|
|
11244
|
+
function getHeaderStyle(id) {
|
|
11245
|
+
return headerStylesById.get(id) ?? null;
|
|
11246
|
+
}
|
|
11247
|
+
function isHeaderStyleCompatibleWithLayout(style, layoutId) {
|
|
11248
|
+
return style.supportedLayoutIds.includes(layoutId);
|
|
11249
|
+
}
|
|
11250
|
+
function getHeaderStyleOrThrow(id) {
|
|
11251
|
+
const style = getHeaderStyle(id);
|
|
11252
|
+
if (!style) {
|
|
11253
|
+
throw new Error(`Unknown Theme V2 header style: ${id}`);
|
|
11254
|
+
}
|
|
11255
|
+
return style;
|
|
11256
|
+
}
|
|
11257
|
+
function resolveLegacyHeaderLookAlias(lookId) {
|
|
11258
|
+
return legacyHeaderLookAliasesById.get(lookId)?.selection ?? null;
|
|
11259
|
+
}
|
|
11260
|
+
function getCompatibleHeaderStyleIds(layoutId) {
|
|
11261
|
+
return (headerStyleCompatibilityOrder.get(layoutId) ?? []).filter(
|
|
11262
|
+
(styleId) => {
|
|
11263
|
+
const style = getHeaderStyleOrThrow(styleId);
|
|
11264
|
+
return isHeaderStyleCompatibleWithLayout(style, layoutId);
|
|
11265
|
+
}
|
|
11266
|
+
);
|
|
11267
|
+
}
|
|
11268
|
+
function solidBrandHeader(theme) {
|
|
11269
|
+
const ctaVariant = resolveHeaderCtaVariant(theme, "inverted");
|
|
11270
|
+
return {
|
|
11271
|
+
...baseHeader(theme),
|
|
11272
|
+
variant: "classic",
|
|
11273
|
+
positioning: "sticky",
|
|
11274
|
+
shrinkOnScroll: true,
|
|
11275
|
+
background: {
|
|
11276
|
+
type: "color",
|
|
11277
|
+
color: "primary"
|
|
11278
|
+
},
|
|
11279
|
+
textColor: "primaryForeground",
|
|
11280
|
+
navColor: "primaryForeground",
|
|
11281
|
+
navStyle: "underline-grow",
|
|
11282
|
+
navWeight: "bold",
|
|
11283
|
+
navLinkStyle: {
|
|
11284
|
+
typography: "body",
|
|
11285
|
+
fontWeight: "bold",
|
|
11286
|
+
textTransform: "uppercase",
|
|
11287
|
+
italic: false,
|
|
11288
|
+
colorToken: "primaryForeground",
|
|
11289
|
+
hoverColorToken: "secondary",
|
|
11290
|
+
textSize: "sm",
|
|
11291
|
+
letterSpacing: "wider",
|
|
11292
|
+
padding: "compact",
|
|
11293
|
+
paddingX: "compact",
|
|
11294
|
+
borderRadius: "none",
|
|
11295
|
+
effects: {
|
|
11296
|
+
hover: [
|
|
11297
|
+
{
|
|
11298
|
+
effectId: "text-color-change",
|
|
11299
|
+
options: { hoverColorToken: "secondary" }
|
|
11300
|
+
},
|
|
11301
|
+
{
|
|
11302
|
+
effectId: "nav-underline",
|
|
11303
|
+
options: { style: "grow", colorToken: "secondary" }
|
|
11304
|
+
}
|
|
11305
|
+
]
|
|
11306
|
+
}
|
|
11307
|
+
},
|
|
11308
|
+
dropdownStyle: {
|
|
11309
|
+
background: "primary-700",
|
|
11310
|
+
textColor: "primaryForeground",
|
|
11311
|
+
borderColor: null,
|
|
11312
|
+
shadow: "md",
|
|
11313
|
+
borderRadius: "md",
|
|
11314
|
+
hoverBackground: "primary-900",
|
|
11315
|
+
hoverTextColor: "secondary",
|
|
11316
|
+
textTransform: "uppercase",
|
|
11317
|
+
letterSpacing: "wider",
|
|
11318
|
+
fontWeight: "bold",
|
|
11319
|
+
textSize: "sm"
|
|
11320
|
+
},
|
|
11321
|
+
border: {
|
|
11322
|
+
style: "solid",
|
|
11323
|
+
width: "none",
|
|
11324
|
+
position: "none"
|
|
11325
|
+
},
|
|
11326
|
+
logoText: {
|
|
11327
|
+
hideOnShrink: true,
|
|
11328
|
+
mobileMaxWidth: "sm",
|
|
11329
|
+
mobileWrapLines: 2
|
|
11330
|
+
},
|
|
11331
|
+
ctaGap: "compact",
|
|
11332
|
+
ctaTreatment: "inverted",
|
|
11333
|
+
...ctaVariant ? { ctaVariant } : {}
|
|
11334
|
+
};
|
|
10641
11335
|
}
|
|
10642
11336
|
function cleanBaseHeader(theme) {
|
|
10643
11337
|
return {
|
|
@@ -10663,10 +11357,10 @@ function cleanBaseHeader(theme) {
|
|
|
10663
11357
|
ctaGap: "default"
|
|
10664
11358
|
};
|
|
10665
11359
|
}
|
|
10666
|
-
function
|
|
11360
|
+
function serifLineHeader(theme) {
|
|
10667
11361
|
return {
|
|
10668
11362
|
...baseHeader(theme),
|
|
10669
|
-
variant: "
|
|
11363
|
+
variant: "centered",
|
|
10670
11364
|
positioning: "sticky",
|
|
10671
11365
|
shrinkOnScroll: false,
|
|
10672
11366
|
background: {
|
|
@@ -10813,6 +11507,11 @@ var headerLookCatalog = [
|
|
|
10813
11507
|
label: "Clean base",
|
|
10814
11508
|
visualTreatment: "solid-neutral",
|
|
10815
11509
|
layoutBehavior: "sticky",
|
|
11510
|
+
configuration: {
|
|
11511
|
+
structure: "inline-classic",
|
|
11512
|
+
treatment: "solid-neutral",
|
|
11513
|
+
behavior: "sticky"
|
|
11514
|
+
},
|
|
10816
11515
|
openingRequirement: "none",
|
|
10817
11516
|
compile: cleanBaseHeader
|
|
10818
11517
|
},
|
|
@@ -10821,23 +11520,38 @@ var headerLookCatalog = [
|
|
|
10821
11520
|
label: "Brand solid",
|
|
10822
11521
|
visualTreatment: "solid-brand",
|
|
10823
11522
|
layoutBehavior: "sticky-shrink",
|
|
11523
|
+
configuration: {
|
|
11524
|
+
structure: "inline-classic",
|
|
11525
|
+
treatment: "solid-brand",
|
|
11526
|
+
behavior: "sticky-shrink"
|
|
11527
|
+
},
|
|
10824
11528
|
openingRequirement: "none",
|
|
10825
11529
|
compile: solidBrandHeader
|
|
10826
11530
|
},
|
|
10827
11531
|
{
|
|
10828
|
-
id: asHeaderLookId("
|
|
10829
|
-
label: "
|
|
10830
|
-
visualTreatment: "light-
|
|
11532
|
+
id: asHeaderLookId("serif-line"),
|
|
11533
|
+
label: "Serif line",
|
|
11534
|
+
visualTreatment: "light-serif",
|
|
10831
11535
|
layoutBehavior: "sticky",
|
|
11536
|
+
configuration: {
|
|
11537
|
+
structure: "centered-stack",
|
|
11538
|
+
treatment: "light-serif",
|
|
11539
|
+
behavior: "sticky"
|
|
11540
|
+
},
|
|
10832
11541
|
openingRequirement: "none",
|
|
10833
11542
|
maxRecommendedNavItems: 6,
|
|
10834
|
-
compile:
|
|
11543
|
+
compile: serifLineHeader
|
|
10835
11544
|
},
|
|
10836
11545
|
{
|
|
10837
11546
|
id: asHeaderLookId("centered-calm"),
|
|
10838
11547
|
label: "Centered calm",
|
|
10839
|
-
visualTreatment: "light-
|
|
11548
|
+
visualTreatment: "light-serif",
|
|
10840
11549
|
layoutBehavior: "normal-flow",
|
|
11550
|
+
configuration: {
|
|
11551
|
+
structure: "centered-stack",
|
|
11552
|
+
treatment: "light-serif",
|
|
11553
|
+
behavior: "normal-flow"
|
|
11554
|
+
},
|
|
10841
11555
|
openingRequirement: "none",
|
|
10842
11556
|
maxRecommendedNavItems: 5,
|
|
10843
11557
|
allowedLogoShapes: ["none", "text-only", "horizontal", "square"],
|
|
@@ -10848,6 +11562,11 @@ var headerLookCatalog = [
|
|
|
10848
11562
|
label: "Practical utility",
|
|
10849
11563
|
visualTreatment: "solid-neutral",
|
|
10850
11564
|
layoutBehavior: "sticky-shrink",
|
|
11565
|
+
configuration: {
|
|
11566
|
+
structure: "inline-classic",
|
|
11567
|
+
treatment: "solid-neutral",
|
|
11568
|
+
behavior: "sticky-shrink"
|
|
11569
|
+
},
|
|
10851
11570
|
openingRequirement: "none",
|
|
10852
11571
|
requiresProminentCta: true,
|
|
10853
11572
|
compile: practicalUtilityHeader
|
|
@@ -10857,6 +11576,11 @@ var headerLookCatalog = [
|
|
|
10857
11576
|
label: "Minimal transparent",
|
|
10858
11577
|
visualTreatment: "minimal-transparent",
|
|
10859
11578
|
layoutBehavior: "normal-flow",
|
|
11579
|
+
configuration: {
|
|
11580
|
+
structure: "inline-classic",
|
|
11581
|
+
treatment: "minimal-transparent",
|
|
11582
|
+
behavior: "normal-flow"
|
|
11583
|
+
},
|
|
10860
11584
|
openingRequirement: "reserved-space-ok",
|
|
10861
11585
|
compile: minimalTransparentHeader
|
|
10862
11586
|
},
|
|
@@ -10865,6 +11589,11 @@ var headerLookCatalog = [
|
|
|
10865
11589
|
label: "Transparent overlay",
|
|
10866
11590
|
visualTreatment: "transparent-overlay",
|
|
10867
11591
|
layoutBehavior: "fixed-overlay",
|
|
11592
|
+
configuration: {
|
|
11593
|
+
structure: "inline-classic",
|
|
11594
|
+
treatment: "transparent-overlay",
|
|
11595
|
+
behavior: "fixed-overlay"
|
|
11596
|
+
},
|
|
10868
11597
|
openingRequirement: "requires-image-hero-with-contrast-overlay",
|
|
10869
11598
|
maxRecommendedNavItems: 5,
|
|
10870
11599
|
allowedLogoShapes: ["none", "text-only", "horizontal"],
|
|
@@ -10875,6 +11604,11 @@ var headerLookCatalog = [
|
|
|
10875
11604
|
label: "Floating glass",
|
|
10876
11605
|
visualTreatment: "floating-glass",
|
|
10877
11606
|
layoutBehavior: "fixed-floating",
|
|
11607
|
+
configuration: {
|
|
11608
|
+
structure: "floating-shell",
|
|
11609
|
+
treatment: "floating-glass",
|
|
11610
|
+
behavior: "fixed-floating"
|
|
11611
|
+
},
|
|
10878
11612
|
openingRequirement: "requires-image-hero-with-contrast-overlay",
|
|
10879
11613
|
maxRecommendedNavItems: 5,
|
|
10880
11614
|
allowedLogoShapes: ["none", "text-only", "horizontal"],
|
|
@@ -10882,9 +11616,17 @@ var headerLookCatalog = [
|
|
|
10882
11616
|
}
|
|
10883
11617
|
];
|
|
10884
11618
|
var guaranteedFallbackHeaderLookId = asHeaderLookId("clean-base");
|
|
11619
|
+
var guaranteedFallbackHeaderLayoutId = asHeaderLayoutId("classic");
|
|
11620
|
+
var guaranteedFallbackHeaderStyleId = asHeaderStyleId("minimal");
|
|
11621
|
+
var allowedHeaderConfigurationKeys = new Set(
|
|
11622
|
+
headerLookCatalog.map((look) => headerConfigurationKey(look.configuration))
|
|
11623
|
+
);
|
|
10885
11624
|
var headerLooksById = new Map(
|
|
10886
11625
|
headerLookCatalog.map((look) => [look.id, look])
|
|
10887
11626
|
);
|
|
11627
|
+
function headerConfigurationKey(configuration) {
|
|
11628
|
+
return `${configuration.structure}:${configuration.treatment}:${configuration.behavior}`;
|
|
11629
|
+
}
|
|
10888
11630
|
|
|
10889
11631
|
// ../theme-core/src/site-styles/footerLooks.ts
|
|
10890
11632
|
function asFooterLookId(value) {
|
|
@@ -11017,6 +11759,264 @@ var advancedDesignOptionCatalog = {
|
|
|
11017
11759
|
detachedCustom: true
|
|
11018
11760
|
};
|
|
11019
11761
|
|
|
11762
|
+
// ../theme-core/src/site-styles/typographyPresets.ts
|
|
11763
|
+
var bodyReadablePolicy = {
|
|
11764
|
+
recommendedCategories: ["sans-serif", "serif"],
|
|
11765
|
+
allowedCategories: ["sans-serif", "serif"],
|
|
11766
|
+
requiresItalicForBody: true,
|
|
11767
|
+
requiresBoldForBody: true
|
|
11768
|
+
};
|
|
11769
|
+
var headingFlexiblePolicy = {
|
|
11770
|
+
recommendedCategories: ["sans-serif", "serif", "display"],
|
|
11771
|
+
allowedCategories: ["sans-serif", "serif", "display"]
|
|
11772
|
+
};
|
|
11773
|
+
var displayHeadingPolicy = {
|
|
11774
|
+
recommendedCategories: ["display", "sans-serif", "serif"],
|
|
11775
|
+
allowedCategories: ["display", "sans-serif", "serif"]
|
|
11776
|
+
};
|
|
11777
|
+
function asTypographyPresetId(value) {
|
|
11778
|
+
if (!value.startsWith("typography-preset:")) {
|
|
11779
|
+
throw new Error(`TypographyPresetId must start with "typography-preset:". Received: ${value}`);
|
|
11780
|
+
}
|
|
11781
|
+
return value;
|
|
11782
|
+
}
|
|
11783
|
+
function defineTypographyPreset(preset2) {
|
|
11784
|
+
return {
|
|
11785
|
+
...preset2,
|
|
11786
|
+
id: asTypographyPresetId(preset2.id)
|
|
11787
|
+
};
|
|
11788
|
+
}
|
|
11789
|
+
var modernSansTypography = {
|
|
11790
|
+
body: {
|
|
11791
|
+
family: "Inter, system-ui, sans-serif",
|
|
11792
|
+
size: "md",
|
|
11793
|
+
weight: "regular",
|
|
11794
|
+
lineHeight: "relaxed",
|
|
11795
|
+
letterSpacing: "normal"
|
|
11796
|
+
},
|
|
11797
|
+
headings: {
|
|
11798
|
+
default: {
|
|
11799
|
+
family: "Inter, system-ui, sans-serif",
|
|
11800
|
+
weight: "semibold",
|
|
11801
|
+
lineHeight: "normal",
|
|
11802
|
+
letterSpacing: "tight",
|
|
11803
|
+
italic: null,
|
|
11804
|
+
case: null
|
|
11805
|
+
},
|
|
11806
|
+
h1: { size: "xl", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
11807
|
+
h2: { size: "lg", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
11808
|
+
h3: { size: "md", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null }
|
|
11809
|
+
},
|
|
11810
|
+
scale: "balanced"
|
|
11811
|
+
};
|
|
11812
|
+
var warmRoundedTypography = {
|
|
11813
|
+
body: {
|
|
11814
|
+
family: "Nunito Sans, system-ui, sans-serif",
|
|
11815
|
+
size: "lg",
|
|
11816
|
+
weight: "regular",
|
|
11817
|
+
lineHeight: "relaxed",
|
|
11818
|
+
letterSpacing: "normal"
|
|
11819
|
+
},
|
|
11820
|
+
headings: {
|
|
11821
|
+
default: {
|
|
11822
|
+
family: "Nunito Sans, system-ui, sans-serif",
|
|
11823
|
+
weight: "bold",
|
|
11824
|
+
lineHeight: "normal",
|
|
11825
|
+
letterSpacing: "normal",
|
|
11826
|
+
italic: null,
|
|
11827
|
+
case: null
|
|
11828
|
+
},
|
|
11829
|
+
h1: { size: "xl", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
11830
|
+
h2: { size: "lg", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
11831
|
+
h3: { size: "md", weight: "semibold", lineHeight: "relaxed", letterSpacing: "normal", italic: null }
|
|
11832
|
+
},
|
|
11833
|
+
scale: "balanced"
|
|
11834
|
+
};
|
|
11835
|
+
var editorialSerifTypography = {
|
|
11836
|
+
body: {
|
|
11837
|
+
family: "Lora, Georgia, serif",
|
|
11838
|
+
size: "lg",
|
|
11839
|
+
weight: "regular",
|
|
11840
|
+
lineHeight: "loose",
|
|
11841
|
+
letterSpacing: "normal"
|
|
11842
|
+
},
|
|
11843
|
+
headings: {
|
|
11844
|
+
default: {
|
|
11845
|
+
family: "Playfair Display, Georgia, serif",
|
|
11846
|
+
weight: "semibold",
|
|
11847
|
+
lineHeight: "normal",
|
|
11848
|
+
letterSpacing: "tight",
|
|
11849
|
+
italic: null,
|
|
11850
|
+
case: null
|
|
11851
|
+
},
|
|
11852
|
+
h1: { size: "2xl", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
11853
|
+
h2: { size: "xl", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
11854
|
+
h3: { size: "md", weight: "semibold", lineHeight: "relaxed", letterSpacing: "normal", italic: true }
|
|
11855
|
+
},
|
|
11856
|
+
scale: "spacious"
|
|
11857
|
+
};
|
|
11858
|
+
var classicSerifTypography = {
|
|
11859
|
+
body: {
|
|
11860
|
+
family: "Libre Baskerville, Georgia, serif",
|
|
11861
|
+
size: "md",
|
|
11862
|
+
weight: "regular",
|
|
11863
|
+
lineHeight: "relaxed",
|
|
11864
|
+
letterSpacing: "normal"
|
|
11865
|
+
},
|
|
11866
|
+
headings: {
|
|
11867
|
+
default: {
|
|
11868
|
+
family: "Cormorant Garamond, Georgia, serif",
|
|
11869
|
+
weight: "semibold",
|
|
11870
|
+
lineHeight: "normal",
|
|
11871
|
+
letterSpacing: "normal",
|
|
11872
|
+
italic: null,
|
|
11873
|
+
case: null
|
|
11874
|
+
},
|
|
11875
|
+
h1: { size: "2xl", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
11876
|
+
h2: { size: "xl", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
11877
|
+
h3: { size: "md", weight: "medium", lineHeight: "relaxed", letterSpacing: "normal", italic: null }
|
|
11878
|
+
},
|
|
11879
|
+
scale: "balanced"
|
|
11880
|
+
};
|
|
11881
|
+
var luxeContrastTypography = {
|
|
11882
|
+
body: {
|
|
11883
|
+
family: "Manrope, system-ui, sans-serif",
|
|
11884
|
+
size: "md",
|
|
11885
|
+
weight: "regular",
|
|
11886
|
+
lineHeight: "relaxed",
|
|
11887
|
+
letterSpacing: "normal"
|
|
11888
|
+
},
|
|
11889
|
+
headings: {
|
|
11890
|
+
default: {
|
|
11891
|
+
family: "Cormorant Garamond, Georgia, serif",
|
|
11892
|
+
weight: "semibold",
|
|
11893
|
+
lineHeight: "normal",
|
|
11894
|
+
letterSpacing: "tight",
|
|
11895
|
+
italic: null,
|
|
11896
|
+
case: null
|
|
11897
|
+
},
|
|
11898
|
+
h1: { size: "2xl", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
11899
|
+
h2: { size: "xl", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
11900
|
+
h3: { size: "md", weight: "medium", lineHeight: "relaxed", letterSpacing: "normal", italic: null }
|
|
11901
|
+
},
|
|
11902
|
+
scale: "spacious"
|
|
11903
|
+
};
|
|
11904
|
+
var boldDisplayTypography = {
|
|
11905
|
+
body: {
|
|
11906
|
+
family: "Manrope, system-ui, sans-serif",
|
|
11907
|
+
size: "lg",
|
|
11908
|
+
weight: "regular",
|
|
11909
|
+
lineHeight: "relaxed",
|
|
11910
|
+
letterSpacing: "normal"
|
|
11911
|
+
},
|
|
11912
|
+
headings: {
|
|
11913
|
+
default: {
|
|
11914
|
+
family: '"TAN - PEARL", sans-serif',
|
|
11915
|
+
weight: "bold",
|
|
11916
|
+
lineHeight: "normal",
|
|
11917
|
+
letterSpacing: "tight",
|
|
11918
|
+
colorToken: "primary",
|
|
11919
|
+
italic: null,
|
|
11920
|
+
case: null
|
|
11921
|
+
},
|
|
11922
|
+
h1: { size: "xl", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
11923
|
+
h2: { size: "lg", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
11924
|
+
h3: { size: "md", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null }
|
|
11925
|
+
},
|
|
11926
|
+
scale: "balanced"
|
|
11927
|
+
};
|
|
11928
|
+
var typographyPresets = [
|
|
11929
|
+
defineTypographyPreset({
|
|
11930
|
+
id: "typography-preset:modern-sans",
|
|
11931
|
+
name: "Modern Sans",
|
|
11932
|
+
description: "Crisp, neutral type for clear service pages and practical editorial structure.",
|
|
11933
|
+
defaultFonts: { body: "Inter, system-ui, sans-serif", heading: "Inter, system-ui, sans-serif" },
|
|
11934
|
+
recommendedFonts: {
|
|
11935
|
+
body: ["Inter", "Source Sans 3", "IBM Plex Sans"],
|
|
11936
|
+
heading: ["Inter", "Manrope", "Source Sans 3"]
|
|
11937
|
+
},
|
|
11938
|
+
slotPolicies: { body: bodyReadablePolicy, heading: headingFlexiblePolicy },
|
|
11939
|
+
typography: modernSansTypography
|
|
11940
|
+
}),
|
|
11941
|
+
defineTypographyPreset({
|
|
11942
|
+
id: "typography-preset:warm-rounded",
|
|
11943
|
+
name: "Warm Rounded",
|
|
11944
|
+
description: "Soft, friendly type for welcoming studios, classes, and community businesses.",
|
|
11945
|
+
defaultFonts: { body: "Nunito Sans, system-ui, sans-serif", heading: "Nunito Sans, system-ui, sans-serif" },
|
|
11946
|
+
recommendedFonts: {
|
|
11947
|
+
body: ["Nunito Sans", "Atkinson Hyperlegible", "Lato"],
|
|
11948
|
+
heading: ["Nunito Sans", "Quicksand", "Manrope"]
|
|
11949
|
+
},
|
|
11950
|
+
slotPolicies: { body: bodyReadablePolicy, heading: headingFlexiblePolicy },
|
|
11951
|
+
typography: warmRoundedTypography
|
|
11952
|
+
}),
|
|
11953
|
+
defineTypographyPreset({
|
|
11954
|
+
id: "typography-preset:editorial-serif",
|
|
11955
|
+
name: "Editorial Serif",
|
|
11956
|
+
description: "Story-led type with warm reading rhythm and expressive headings.",
|
|
11957
|
+
defaultFonts: { body: "Lora, Georgia, serif", heading: "Playfair Display, Georgia, serif" },
|
|
11958
|
+
recommendedFonts: {
|
|
11959
|
+
body: ["Lora", "Source Serif 4", "Libre Baskerville"],
|
|
11960
|
+
heading: ["Playfair Display", "Cormorant Garamond", "Fraunces"]
|
|
11961
|
+
},
|
|
11962
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
11963
|
+
typography: editorialSerifTypography
|
|
11964
|
+
}),
|
|
11965
|
+
defineTypographyPreset({
|
|
11966
|
+
id: "typography-preset:classic-serif",
|
|
11967
|
+
name: "Classic Serif",
|
|
11968
|
+
description: "Measured, polished type for premium and established offers.",
|
|
11969
|
+
defaultFonts: { body: "Libre Baskerville, Georgia, serif", heading: "Cormorant Garamond, Georgia, serif" },
|
|
11970
|
+
recommendedFonts: {
|
|
11971
|
+
body: ["Libre Baskerville", "Source Serif 4", "Lora"],
|
|
11972
|
+
heading: ["Cormorant Garamond", "Playfair Display", "Libre Baskerville"]
|
|
11973
|
+
},
|
|
11974
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
11975
|
+
typography: classicSerifTypography
|
|
11976
|
+
}),
|
|
11977
|
+
defineTypographyPreset({
|
|
11978
|
+
id: "typography-preset:luxe-contrast",
|
|
11979
|
+
name: "Luxe Contrast",
|
|
11980
|
+
description: "A restrained sans body paired with elegant high-contrast headings.",
|
|
11981
|
+
defaultFonts: { body: "Manrope, system-ui, sans-serif", heading: "Cormorant Garamond, Georgia, serif" },
|
|
11982
|
+
recommendedFonts: {
|
|
11983
|
+
body: ["Manrope", "Inter", "Source Sans 3"],
|
|
11984
|
+
heading: ["Cormorant Garamond", "Playfair Display", "Bodoni Moda"]
|
|
11985
|
+
},
|
|
11986
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
11987
|
+
typography: luxeContrastTypography
|
|
11988
|
+
}),
|
|
11989
|
+
defineTypographyPreset({
|
|
11990
|
+
id: "typography-preset:bold-display",
|
|
11991
|
+
name: "Bold Display",
|
|
11992
|
+
description: "Punchy display headings with readable sans body copy for branded launches.",
|
|
11993
|
+
defaultFonts: { body: "Manrope, system-ui, sans-serif", heading: '"TAN - PEARL", sans-serif' },
|
|
11994
|
+
recommendedFonts: {
|
|
11995
|
+
body: ["Manrope", "Inter", "Space Grotesk"],
|
|
11996
|
+
heading: ["Anton", "Bebas Neue", "Archivo Black"]
|
|
11997
|
+
},
|
|
11998
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
11999
|
+
typography: boldDisplayTypography,
|
|
12000
|
+
heroTypography: {
|
|
12001
|
+
headlineSize: "6xl",
|
|
12002
|
+
headlineLineHeight: "tight",
|
|
12003
|
+
subheadlineSize: "editorial",
|
|
12004
|
+
subheadlineLineHeight: "normal",
|
|
12005
|
+
microHeadlineSize: "6xl",
|
|
12006
|
+
microHeadlineLineHeight: "tight",
|
|
12007
|
+
microSubheadlineSize: "xl",
|
|
12008
|
+
microSubheadlineLineHeight: "normal",
|
|
12009
|
+
responsive: {
|
|
12010
|
+
tablet: { headlineSize: "5xl" },
|
|
12011
|
+
mobile: { headlineSize: "4xl", subheadlineSize: "xl" }
|
|
12012
|
+
}
|
|
12013
|
+
}
|
|
12014
|
+
})
|
|
12015
|
+
];
|
|
12016
|
+
var typographyPresetsById = new Map(
|
|
12017
|
+
typographyPresets.map((preset2) => [preset2.id, preset2])
|
|
12018
|
+
);
|
|
12019
|
+
|
|
11020
12020
|
// ../theme-core/src/site-styles/curatedSiteStyles.ts
|
|
11021
12021
|
var curatedSiteStyleIdValues = [
|
|
11022
12022
|
"site-style:calm-studio",
|
|
@@ -11029,6 +12029,7 @@ var curatedSiteStyleIdValues = [
|
|
|
11029
12029
|
"site-style:personal-retreat-journal",
|
|
11030
12030
|
"site-style:tactile-workshop",
|
|
11031
12031
|
"site-style:modern-wellness",
|
|
12032
|
+
"site-style:soft-earth",
|
|
11032
12033
|
"site-style:bold-launch",
|
|
11033
12034
|
"site-style:south-west-twerk-school"
|
|
11034
12035
|
];
|
|
@@ -11094,26 +12095,45 @@ var expressiveUnderlineInputs = {
|
|
|
11094
12095
|
}
|
|
11095
12096
|
};
|
|
11096
12097
|
function uniqueContentFrameKinds() {
|
|
11097
|
-
const kinds = [
|
|
11098
|
-
|
|
11099
|
-
|
|
12098
|
+
const kinds = [
|
|
12099
|
+
...new Set(
|
|
12100
|
+
generatedDesignOptionCatalog.contentFrames.map((frame) => frame.kind)
|
|
12101
|
+
)
|
|
12102
|
+
];
|
|
11100
12103
|
const firstKind = kinds[0];
|
|
11101
12104
|
if (!firstKind) {
|
|
11102
|
-
throw new Error(
|
|
12105
|
+
throw new Error(
|
|
12106
|
+
"Expected generated design option catalog to expose at least one content frame kind."
|
|
12107
|
+
);
|
|
11103
12108
|
}
|
|
11104
12109
|
return [firstKind, ...kinds.slice(1)];
|
|
11105
12110
|
}
|
|
11106
12111
|
var generatedContentFrameKinds = uniqueContentFrameKinds();
|
|
11107
12112
|
function defineCuratedSiteStyle(input) {
|
|
12113
|
+
const legacyHeaderLookIds = input.recommendedHeaderLookIds ?? ["clean-base"];
|
|
12114
|
+
const inferredHeaderCuration = inferHeaderCurationFromLegacyLooks(legacyHeaderLookIds);
|
|
12115
|
+
const typographyPresetChoices = input.typographyPresetChoices ?? defaultTypographyPresetChoicesForRecipe(input.tokenRecipes.typography);
|
|
12116
|
+
const defaultTypographyPresetId = input.defaultTypographyPresetId ? asTypographyPresetId(input.defaultTypographyPresetId) : typographyPresetChoices[0].id;
|
|
12117
|
+
if (!typographyPresetChoices.some(
|
|
12118
|
+
(choice) => choice.id === defaultTypographyPresetId
|
|
12119
|
+
)) {
|
|
12120
|
+
throw new Error(
|
|
12121
|
+
`Default typography preset ${defaultTypographyPresetId} is not curated for site style ${input.id}.`
|
|
12122
|
+
);
|
|
12123
|
+
}
|
|
11108
12124
|
return {
|
|
11109
12125
|
id: asSiteStyleId(input.id),
|
|
11110
12126
|
name: input.name,
|
|
11111
12127
|
description: input.description,
|
|
11112
12128
|
generationBrief: input.generationBrief,
|
|
11113
12129
|
selectionKeywordRules: input.selectionKeywordRules ?? [],
|
|
11114
|
-
siteCreatorSelection: input.siteCreatorSelection ?? {
|
|
12130
|
+
siteCreatorSelection: input.siteCreatorSelection ?? {
|
|
12131
|
+
kind: "explicit_only"
|
|
12132
|
+
},
|
|
11115
12133
|
template: {
|
|
11116
|
-
id: asDesignSystemTemplateId(
|
|
12134
|
+
id: asDesignSystemTemplateId(
|
|
12135
|
+
`template:${input.id.replace("site-style:", "")}`
|
|
12136
|
+
),
|
|
11117
12137
|
name: input.name,
|
|
11118
12138
|
version: 1,
|
|
11119
12139
|
tokenRecipes: input.tokenRecipes,
|
|
@@ -11125,11 +12145,27 @@ function defineCuratedSiteStyle(input) {
|
|
|
11125
12145
|
},
|
|
11126
12146
|
...input.themeOverrides ? { themeOverrides: input.themeOverrides } : {},
|
|
11127
12147
|
recommendedAppearancePresetIds: (input.recommendedAppearancePresetIds ?? []).map(asAppearancePresetId),
|
|
11128
|
-
|
|
12148
|
+
defaultHeaderSelection: input.defaultHeaderSelection ? {
|
|
12149
|
+
layoutId: asHeaderLayoutId(input.defaultHeaderSelection.layoutId),
|
|
12150
|
+
styleId: asHeaderStyleId(input.defaultHeaderSelection.styleId)
|
|
12151
|
+
} : inferredHeaderCuration.defaultHeaderSelection,
|
|
12152
|
+
recommendedHeaderLayoutChoices: input.recommendedHeaderLayoutChoices ?? inferredHeaderCuration.recommendedHeaderLayoutChoices,
|
|
12153
|
+
recommendedHeaderStyleChoicesByLayout: input.recommendedHeaderStyleChoicesByLayout ?? inferredHeaderCuration.recommendedHeaderStyleChoicesByLayout,
|
|
12154
|
+
discouragedHeaderSelections: input.discouragedHeaderSelections?.map(
|
|
12155
|
+
(selection) => ({
|
|
12156
|
+
layoutId: asHeaderLayoutId(selection.layoutId),
|
|
12157
|
+
styleId: asHeaderStyleId(selection.styleId)
|
|
12158
|
+
})
|
|
12159
|
+
),
|
|
12160
|
+
recommendedHeaderLookIds: legacyHeaderLookIds.map(asHeaderLookId),
|
|
11129
12161
|
// Empty is intentional: resolveFooterLook always appends its guaranteed fallback.
|
|
11130
|
-
recommendedFooterLookIds: (input.recommendedFooterLookIds ?? []).map(
|
|
12162
|
+
recommendedFooterLookIds: (input.recommendedFooterLookIds ?? []).map(
|
|
12163
|
+
asFooterLookId
|
|
12164
|
+
),
|
|
11131
12165
|
buttonPersonalityChoices: input.buttonPersonalityChoices,
|
|
11132
|
-
paletteVariantChoices: input.paletteVariantChoices
|
|
12166
|
+
paletteVariantChoices: input.paletteVariantChoices,
|
|
12167
|
+
typographyPresetChoices,
|
|
12168
|
+
defaultTypographyPresetId
|
|
11133
12169
|
};
|
|
11134
12170
|
}
|
|
11135
12171
|
function buttonChoice(id, note) {
|
|
@@ -11138,6 +12174,87 @@ function buttonChoice(id, note) {
|
|
|
11138
12174
|
function paletteChoice(id, note) {
|
|
11139
12175
|
return note ? { id: asPaletteVariantId(id), note } : { id: asPaletteVariantId(id) };
|
|
11140
12176
|
}
|
|
12177
|
+
function headerLayoutChoice(id, note) {
|
|
12178
|
+
return note ? { id: asHeaderLayoutId(id), note } : { id: asHeaderLayoutId(id) };
|
|
12179
|
+
}
|
|
12180
|
+
function headerStyleChoice(id, note) {
|
|
12181
|
+
return note ? { id: asHeaderStyleId(id), note } : { id: asHeaderStyleId(id) };
|
|
12182
|
+
}
|
|
12183
|
+
function unbrandHeaderLayoutId(id) {
|
|
12184
|
+
return id;
|
|
12185
|
+
}
|
|
12186
|
+
function uniqueHeaderLayoutChoices(choices) {
|
|
12187
|
+
const seen = /* @__PURE__ */ new Set();
|
|
12188
|
+
const unique = choices.filter((choice) => {
|
|
12189
|
+
if (seen.has(choice.id)) return false;
|
|
12190
|
+
seen.add(choice.id);
|
|
12191
|
+
return true;
|
|
12192
|
+
});
|
|
12193
|
+
const first = unique[0];
|
|
12194
|
+
if (!first) {
|
|
12195
|
+
throw new Error("Expected at least one curated header layout choice.");
|
|
12196
|
+
}
|
|
12197
|
+
return [first, ...unique.slice(1)];
|
|
12198
|
+
}
|
|
12199
|
+
function nonEmptyHeaderStyleChoices(choices, fallbackLayoutId) {
|
|
12200
|
+
const first = choices[0] ?? {
|
|
12201
|
+
id: getCompatibleHeaderStyleIds(fallbackLayoutId)[0] ?? asHeaderStyleId("minimal")
|
|
12202
|
+
};
|
|
12203
|
+
return [first, ...choices.slice(1)];
|
|
12204
|
+
}
|
|
12205
|
+
function inferHeaderCurationFromLegacyLooks(lookIds) {
|
|
12206
|
+
const selections = lookIds.map((lookId) => resolveLegacyHeaderLookAlias(asHeaderLookId(lookId))).filter(
|
|
12207
|
+
(selection) => Boolean(selection)
|
|
12208
|
+
);
|
|
12209
|
+
const defaultHeaderSelection = selections[0] ?? {
|
|
12210
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
12211
|
+
styleId: asHeaderStyleId("minimal")
|
|
12212
|
+
};
|
|
12213
|
+
const layoutChoices = uniqueHeaderLayoutChoices(
|
|
12214
|
+
selections.map((selection) => headerLayoutChoice(selection.layoutId))
|
|
12215
|
+
);
|
|
12216
|
+
const stylesByLayout = {};
|
|
12217
|
+
for (const layoutChoice of layoutChoices) {
|
|
12218
|
+
const styleChoices = selections.filter((selection) => selection.layoutId === layoutChoice.id).map((selection) => headerStyleChoice(selection.styleId));
|
|
12219
|
+
stylesByLayout[unbrandHeaderLayoutId(layoutChoice.id)] = nonEmptyHeaderStyleChoices(styleChoices, layoutChoice.id);
|
|
12220
|
+
}
|
|
12221
|
+
return {
|
|
12222
|
+
defaultHeaderSelection,
|
|
12223
|
+
recommendedHeaderLayoutChoices: layoutChoices,
|
|
12224
|
+
recommendedHeaderStyleChoicesByLayout: stylesByLayout
|
|
12225
|
+
};
|
|
12226
|
+
}
|
|
12227
|
+
function typographyChoice(id, note) {
|
|
12228
|
+
return note ? { id: asTypographyPresetId(id), note } : { id: asTypographyPresetId(id) };
|
|
12229
|
+
}
|
|
12230
|
+
function defaultTypographyPresetChoicesForRecipe(recipe) {
|
|
12231
|
+
switch (recipe) {
|
|
12232
|
+
case "clean-sans":
|
|
12233
|
+
return [
|
|
12234
|
+
typographyChoice("typography-preset:modern-sans"),
|
|
12235
|
+
typographyChoice("typography-preset:luxe-contrast"),
|
|
12236
|
+
typographyChoice("typography-preset:bold-display")
|
|
12237
|
+
];
|
|
12238
|
+
case "friendly-sans":
|
|
12239
|
+
return [
|
|
12240
|
+
typographyChoice("typography-preset:warm-rounded"),
|
|
12241
|
+
typographyChoice("typography-preset:modern-sans"),
|
|
12242
|
+
typographyChoice("typography-preset:editorial-serif")
|
|
12243
|
+
];
|
|
12244
|
+
case "serif-editorial":
|
|
12245
|
+
return [
|
|
12246
|
+
typographyChoice("typography-preset:editorial-serif"),
|
|
12247
|
+
typographyChoice("typography-preset:classic-serif"),
|
|
12248
|
+
typographyChoice("typography-preset:warm-rounded")
|
|
12249
|
+
];
|
|
12250
|
+
case "classic-serif":
|
|
12251
|
+
return [
|
|
12252
|
+
typographyChoice("typography-preset:classic-serif"),
|
|
12253
|
+
typographyChoice("typography-preset:luxe-contrast"),
|
|
12254
|
+
typographyChoice("typography-preset:editorial-serif")
|
|
12255
|
+
];
|
|
12256
|
+
}
|
|
12257
|
+
}
|
|
11141
12258
|
var curatedSiteStyles = [
|
|
11142
12259
|
defineCuratedSiteStyle({
|
|
11143
12260
|
id: "site-style:calm-studio",
|
|
@@ -11154,7 +12271,11 @@ var curatedSiteStyles = [
|
|
|
11154
12271
|
motion: "subtle"
|
|
11155
12272
|
},
|
|
11156
12273
|
compositionBudget: quietBudget,
|
|
11157
|
-
recommendedHeaderLookIds: [
|
|
12274
|
+
recommendedHeaderLookIds: [
|
|
12275
|
+
"centered-calm",
|
|
12276
|
+
"minimal-transparent",
|
|
12277
|
+
"clean-base"
|
|
12278
|
+
],
|
|
11158
12279
|
buttonPersonalityChoices: [
|
|
11159
12280
|
buttonChoice("soft-pill"),
|
|
11160
12281
|
buttonChoice("pebble"),
|
|
@@ -11183,7 +12304,11 @@ var curatedSiteStyles = [
|
|
|
11183
12304
|
motion: "subtle"
|
|
11184
12305
|
},
|
|
11185
12306
|
compositionBudget: balancedBudget,
|
|
11186
|
-
recommendedHeaderLookIds: [
|
|
12307
|
+
recommendedHeaderLookIds: [
|
|
12308
|
+
"practical-utility",
|
|
12309
|
+
"brand-solid",
|
|
12310
|
+
"clean-base"
|
|
12311
|
+
],
|
|
11187
12312
|
buttonPersonalityChoices: [
|
|
11188
12313
|
buttonChoice("confident-chip"),
|
|
11189
12314
|
buttonChoice("soft-pill"),
|
|
@@ -11210,7 +12335,11 @@ var curatedSiteStyles = [
|
|
|
11210
12335
|
motion: "subtle"
|
|
11211
12336
|
},
|
|
11212
12337
|
compositionBudget: balancedBudget,
|
|
11213
|
-
recommendedHeaderLookIds: [
|
|
12338
|
+
recommendedHeaderLookIds: [
|
|
12339
|
+
"serif-line",
|
|
12340
|
+
"minimal-transparent",
|
|
12341
|
+
"centered-calm"
|
|
12342
|
+
],
|
|
11214
12343
|
buttonPersonalityChoices: [
|
|
11215
12344
|
buttonChoice("editorial-link"),
|
|
11216
12345
|
buttonChoice("soft-pill"),
|
|
@@ -11238,7 +12367,11 @@ var curatedSiteStyles = [
|
|
|
11238
12367
|
motion: "expressive"
|
|
11239
12368
|
},
|
|
11240
12369
|
compositionBudget: balancedBudget,
|
|
11241
|
-
recommendedHeaderLookIds: [
|
|
12370
|
+
recommendedHeaderLookIds: [
|
|
12371
|
+
"brand-solid",
|
|
12372
|
+
"practical-utility",
|
|
12373
|
+
"clean-base"
|
|
12374
|
+
],
|
|
11242
12375
|
buttonPersonalityChoices: [
|
|
11243
12376
|
buttonChoice("pebble"),
|
|
11244
12377
|
buttonChoice("brushed-wash"),
|
|
@@ -11255,7 +12388,10 @@ var curatedSiteStyles = [
|
|
|
11255
12388
|
name: "Quiet Luxury",
|
|
11256
12389
|
description: "Minimal, confident, and refined for premium experiences and private services.",
|
|
11257
12390
|
generationBrief: "Use fewer claims, more specificity, and restrained sensory detail. Favor elegant media and low repetition over dense panels.",
|
|
11258
|
-
siteCreatorSelection: {
|
|
12391
|
+
siteCreatorSelection: {
|
|
12392
|
+
kind: "site_creator_keyword_heuristic",
|
|
12393
|
+
priority: 20
|
|
12394
|
+
},
|
|
11259
12395
|
selectionKeywordRules: [
|
|
11260
12396
|
{ kind: "word", value: "luxury" },
|
|
11261
12397
|
{ kind: "word", value: "premium" },
|
|
@@ -11273,7 +12409,11 @@ var curatedSiteStyles = [
|
|
|
11273
12409
|
motion: "none"
|
|
11274
12410
|
},
|
|
11275
12411
|
compositionBudget: quietBudget,
|
|
11276
|
-
recommendedHeaderLookIds: [
|
|
12412
|
+
recommendedHeaderLookIds: [
|
|
12413
|
+
"minimal-transparent",
|
|
12414
|
+
"serif-line",
|
|
12415
|
+
"clean-base"
|
|
12416
|
+
],
|
|
11277
12417
|
buttonPersonalityChoices: [
|
|
11278
12418
|
buttonChoice("editorial-link"),
|
|
11279
12419
|
buttonChoice("confident-chip"),
|
|
@@ -11309,7 +12449,11 @@ var curatedSiteStyles = [
|
|
|
11309
12449
|
motion: "none"
|
|
11310
12450
|
},
|
|
11311
12451
|
compositionBudget: quietBudget,
|
|
11312
|
-
recommendedHeaderLookIds: [
|
|
12452
|
+
recommendedHeaderLookIds: [
|
|
12453
|
+
"practical-utility",
|
|
12454
|
+
"brand-solid",
|
|
12455
|
+
"clean-base"
|
|
12456
|
+
],
|
|
11313
12457
|
buttonPersonalityChoices: [
|
|
11314
12458
|
buttonChoice("confident-chip"),
|
|
11315
12459
|
buttonChoice("pebble"),
|
|
@@ -11336,7 +12480,11 @@ var curatedSiteStyles = [
|
|
|
11336
12480
|
motion: "subtle"
|
|
11337
12481
|
},
|
|
11338
12482
|
compositionBudget: balancedBudget,
|
|
11339
|
-
recommendedHeaderLookIds: [
|
|
12483
|
+
recommendedHeaderLookIds: [
|
|
12484
|
+
"centered-calm",
|
|
12485
|
+
"minimal-transparent",
|
|
12486
|
+
"clean-base"
|
|
12487
|
+
],
|
|
11340
12488
|
buttonPersonalityChoices: [
|
|
11341
12489
|
buttonChoice("soft-pill"),
|
|
11342
12490
|
buttonChoice("pebble"),
|
|
@@ -11353,7 +12501,10 @@ var curatedSiteStyles = [
|
|
|
11353
12501
|
name: "Quiet Practice",
|
|
11354
12502
|
description: "Grounded, calm, and practical for small appointment-first practices.",
|
|
11355
12503
|
generationBrief: "Make services, practitioner trust, preparation notes, and booking routes easy to scan. Keep the tone warm and specific, with quiet confidence rather than spa cliches or medical claims.",
|
|
11356
|
-
siteCreatorSelection: {
|
|
12504
|
+
siteCreatorSelection: {
|
|
12505
|
+
kind: "site_creator_keyword_heuristic",
|
|
12506
|
+
priority: 30
|
|
12507
|
+
},
|
|
11357
12508
|
selectionKeywordRules: [
|
|
11358
12509
|
{ kind: "substring", value: "massage" },
|
|
11359
12510
|
{ kind: "word", value: "bodywork" },
|
|
@@ -11374,7 +12525,11 @@ var curatedSiteStyles = [
|
|
|
11374
12525
|
motion: "subtle"
|
|
11375
12526
|
},
|
|
11376
12527
|
compositionBudget: quietBudget,
|
|
11377
|
-
recommendedHeaderLookIds: [
|
|
12528
|
+
recommendedHeaderLookIds: [
|
|
12529
|
+
"practical-utility",
|
|
12530
|
+
"clean-base",
|
|
12531
|
+
"centered-calm"
|
|
12532
|
+
],
|
|
11378
12533
|
buttonPersonalityChoices: [
|
|
11379
12534
|
buttonChoice("pebble"),
|
|
11380
12535
|
buttonChoice("soft-pill"),
|
|
@@ -11391,7 +12546,10 @@ var curatedSiteStyles = [
|
|
|
11391
12546
|
name: "Personal Retreat Journal",
|
|
11392
12547
|
description: "Warm, story-led, and readable for solo practitioners with mixed offers.",
|
|
11393
12548
|
generationBrief: "Center the practitioner as the guide, then make private sessions, classes, retreats, and resources feel like clear pathways. Keep retreat copy grounded and practical, with enough editorial warmth for longer reading.",
|
|
11394
|
-
siteCreatorSelection: {
|
|
12549
|
+
siteCreatorSelection: {
|
|
12550
|
+
kind: "site_creator_keyword_heuristic",
|
|
12551
|
+
priority: 40
|
|
12552
|
+
},
|
|
11395
12553
|
selectionKeywordRules: [
|
|
11396
12554
|
{ kind: "substring", value: "retreat" },
|
|
11397
12555
|
{ kind: "phrase", value: "solo practitioner" },
|
|
@@ -11411,7 +12569,11 @@ var curatedSiteStyles = [
|
|
|
11411
12569
|
motion: "subtle"
|
|
11412
12570
|
},
|
|
11413
12571
|
compositionBudget: balancedBudget,
|
|
11414
|
-
recommendedHeaderLookIds: [
|
|
12572
|
+
recommendedHeaderLookIds: [
|
|
12573
|
+
"serif-line",
|
|
12574
|
+
"centered-calm",
|
|
12575
|
+
"minimal-transparent"
|
|
12576
|
+
],
|
|
11415
12577
|
buttonPersonalityChoices: [
|
|
11416
12578
|
buttonChoice("editorial-link"),
|
|
11417
12579
|
buttonChoice("soft-pill"),
|
|
@@ -11428,7 +12590,10 @@ var curatedSiteStyles = [
|
|
|
11428
12590
|
name: "Tactile Workshop",
|
|
11429
12591
|
description: "Bright, hands-on, and image-led for maker studios, workshops, and creative classes.",
|
|
11430
12592
|
generationBrief: "Lead with objects, materials, studio process, and practical booking detail. Keep the tone warm and direct, with useful mess, clear dates, and enough gallery rhythm to feel like a real creative studio.",
|
|
11431
|
-
siteCreatorSelection: {
|
|
12593
|
+
siteCreatorSelection: {
|
|
12594
|
+
kind: "site_creator_keyword_heuristic",
|
|
12595
|
+
priority: 50
|
|
12596
|
+
},
|
|
11432
12597
|
selectionKeywordRules: [
|
|
11433
12598
|
{ kind: "substring", value: "ceramic" },
|
|
11434
12599
|
{ kind: "word", value: "pottery" },
|
|
@@ -11448,8 +12613,15 @@ var curatedSiteStyles = [
|
|
|
11448
12613
|
motion: "subtle"
|
|
11449
12614
|
},
|
|
11450
12615
|
compositionBudget: balancedBudget,
|
|
11451
|
-
recommendedHeaderLookIds: [
|
|
11452
|
-
|
|
12616
|
+
recommendedHeaderLookIds: [
|
|
12617
|
+
"brand-solid",
|
|
12618
|
+
"practical-utility",
|
|
12619
|
+
"clean-base"
|
|
12620
|
+
],
|
|
12621
|
+
recommendedFooterLookIds: [
|
|
12622
|
+
"site-footer-brand-two-band",
|
|
12623
|
+
"footer-muted-grounding"
|
|
12624
|
+
],
|
|
11453
12625
|
buttonPersonalityChoices: [
|
|
11454
12626
|
buttonChoice("pebble"),
|
|
11455
12627
|
buttonChoice("confident-chip"),
|
|
@@ -11464,101 +12636,178 @@ var curatedSiteStyles = [
|
|
|
11464
12636
|
]
|
|
11465
12637
|
}),
|
|
11466
12638
|
defineCuratedSiteStyle({
|
|
11467
|
-
id: "site-style:
|
|
11468
|
-
name: "
|
|
11469
|
-
description: "
|
|
11470
|
-
generationBrief: "Use
|
|
11471
|
-
siteCreatorSelection: {
|
|
11472
|
-
|
|
11473
|
-
|
|
11474
|
-
{ kind: "substring", value: "campaign" },
|
|
11475
|
-
{ kind: "word", value: "preorder" },
|
|
11476
|
-
{ kind: "phrase", value: "pre-order" },
|
|
11477
|
-
{ kind: "substring", value: "waitlist" },
|
|
11478
|
-
{ kind: "word", value: "drop" }
|
|
11479
|
-
],
|
|
11480
|
-
tokenRecipes: {
|
|
11481
|
-
palette: "high-contrast",
|
|
11482
|
-
contrast: "maximum",
|
|
11483
|
-
radius: "pill",
|
|
11484
|
-
shadow: "layered",
|
|
11485
|
-
typography: "clean-sans",
|
|
11486
|
-
spacing: "regular",
|
|
11487
|
-
motion: "expressive"
|
|
12639
|
+
id: "site-style:soft-earth",
|
|
12640
|
+
name: "Soft Earth",
|
|
12641
|
+
description: "Warm, grounded, and editorial for yoga studios, retreats, and wellbeing communities.",
|
|
12642
|
+
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.",
|
|
12643
|
+
siteCreatorSelection: {
|
|
12644
|
+
kind: "site_creator_keyword_heuristic",
|
|
12645
|
+
priority: 45
|
|
11488
12646
|
},
|
|
11489
|
-
|
|
11490
|
-
|
|
11491
|
-
|
|
11492
|
-
|
|
11493
|
-
|
|
11494
|
-
|
|
11495
|
-
buttonChoice("pebble")
|
|
12647
|
+
selectionKeywordRules: [
|
|
12648
|
+
{ kind: "word", value: "meditation" },
|
|
12649
|
+
{ kind: "word", value: "wellbeing" },
|
|
12650
|
+
{ kind: "substring", value: "retreat" },
|
|
12651
|
+
{ kind: "phrase", value: "yoga studio" },
|
|
12652
|
+
{ kind: "phrase", value: "mindful movement" }
|
|
11496
12653
|
],
|
|
11497
|
-
paletteVariantChoices: [
|
|
11498
|
-
paletteChoice("high-contrast-monochrome"),
|
|
11499
|
-
paletteChoice("high-contrast-ink"),
|
|
11500
|
-
paletteChoice("brand-led-jewel"),
|
|
11501
|
-
paletteChoice("brand-led-warm")
|
|
11502
|
-
]
|
|
11503
|
-
}),
|
|
11504
|
-
defineCuratedSiteStyle({
|
|
11505
|
-
id: "site-style:south-west-twerk-school",
|
|
11506
|
-
name: "South West Twerk School",
|
|
11507
|
-
description: "Energetic, editorial, and high-contrast for a branded dance school presence.",
|
|
11508
|
-
generationBrief: "Use confident rhythm, bold burgundy-and-gold accents, large editorial intro copy, strong booking routes, and dark feature sections where proof or forms need emphasis.",
|
|
11509
12654
|
tokenRecipes: {
|
|
11510
|
-
palette: "
|
|
11511
|
-
contrast: "
|
|
12655
|
+
palette: "warm-neutral",
|
|
12656
|
+
contrast: "standard",
|
|
11512
12657
|
radius: "soft",
|
|
11513
|
-
shadow: "
|
|
11514
|
-
typography: "
|
|
12658
|
+
shadow: "subtle",
|
|
12659
|
+
typography: "serif-editorial",
|
|
11515
12660
|
spacing: "airy",
|
|
11516
|
-
motion: "
|
|
12661
|
+
motion: "subtle"
|
|
11517
12662
|
},
|
|
11518
|
-
compositionBudget:
|
|
12663
|
+
compositionBudget: balancedBudget,
|
|
11519
12664
|
themeOverrides: {
|
|
11520
12665
|
typography: {
|
|
11521
12666
|
body: {
|
|
11522
|
-
family: "
|
|
11523
|
-
size: "
|
|
12667
|
+
family: "Inter, system-ui, sans-serif",
|
|
12668
|
+
size: "md",
|
|
11524
12669
|
weight: "regular",
|
|
11525
12670
|
lineHeight: "relaxed",
|
|
11526
12671
|
letterSpacing: "normal"
|
|
11527
12672
|
},
|
|
11528
12673
|
headings: {
|
|
11529
12674
|
default: {
|
|
11530
|
-
family: '"
|
|
11531
|
-
weight: "
|
|
12675
|
+
family: '"Cormorant Garamond", Georgia, serif',
|
|
12676
|
+
weight: "regular",
|
|
11532
12677
|
lineHeight: "normal",
|
|
11533
|
-
letterSpacing: "
|
|
11534
|
-
colorToken: "
|
|
12678
|
+
letterSpacing: "normal",
|
|
12679
|
+
colorToken: "text",
|
|
11535
12680
|
italic: null,
|
|
11536
12681
|
case: null
|
|
11537
12682
|
},
|
|
11538
12683
|
h1: {
|
|
11539
12684
|
size: "xl",
|
|
11540
|
-
weight: "
|
|
12685
|
+
weight: "regular",
|
|
11541
12686
|
lineHeight: "normal",
|
|
11542
|
-
letterSpacing: "
|
|
12687
|
+
letterSpacing: "normal",
|
|
11543
12688
|
italic: null
|
|
11544
12689
|
},
|
|
11545
12690
|
h2: {
|
|
11546
12691
|
size: "lg",
|
|
11547
|
-
weight: "
|
|
12692
|
+
weight: "regular",
|
|
11548
12693
|
lineHeight: "normal",
|
|
11549
12694
|
letterSpacing: "normal",
|
|
11550
12695
|
italic: null
|
|
11551
12696
|
},
|
|
11552
12697
|
h3: {
|
|
11553
12698
|
size: "md",
|
|
11554
|
-
weight: "
|
|
12699
|
+
weight: "regular",
|
|
11555
12700
|
lineHeight: "normal",
|
|
11556
12701
|
letterSpacing: "normal",
|
|
11557
12702
|
italic: null
|
|
11558
12703
|
}
|
|
11559
12704
|
},
|
|
11560
|
-
scale: "
|
|
12705
|
+
scale: "majorThird"
|
|
11561
12706
|
},
|
|
12707
|
+
bodyText: {
|
|
12708
|
+
intro: {
|
|
12709
|
+
paragraphSize: "default",
|
|
12710
|
+
headingSize: "editorial"
|
|
12711
|
+
}
|
|
12712
|
+
}
|
|
12713
|
+
},
|
|
12714
|
+
recommendedAppearancePresetIds: [
|
|
12715
|
+
"hero-brand-scrim",
|
|
12716
|
+
"intro-soft-earth-statement",
|
|
12717
|
+
"feature-cards-soft-earth-offerings",
|
|
12718
|
+
"testimonials-soft-earth-proof-band",
|
|
12719
|
+
"faq-soft-earth-two-column",
|
|
12720
|
+
"contact-form-panel"
|
|
12721
|
+
],
|
|
12722
|
+
recommendedHeaderLookIds: [
|
|
12723
|
+
"centered-calm",
|
|
12724
|
+
"minimal-transparent",
|
|
12725
|
+
"serif-line"
|
|
12726
|
+
],
|
|
12727
|
+
recommendedFooterLookIds: [
|
|
12728
|
+
"footer-muted-grounding",
|
|
12729
|
+
"site-footer-brand-two-band"
|
|
12730
|
+
],
|
|
12731
|
+
buttonPersonalityChoices: [
|
|
12732
|
+
buttonChoice("earth-pill"),
|
|
12733
|
+
buttonChoice("soft-pill"),
|
|
12734
|
+
buttonChoice("pebble"),
|
|
12735
|
+
buttonChoice("editorial-link")
|
|
12736
|
+
],
|
|
12737
|
+
paletteVariantChoices: [
|
|
12738
|
+
paletteChoice("warm-neutral-soft-earth"),
|
|
12739
|
+
paletteChoice("warm-neutral-clay"),
|
|
12740
|
+
paletteChoice("warm-neutral-forest"),
|
|
12741
|
+
paletteChoice("soft-natural-sage")
|
|
12742
|
+
]
|
|
12743
|
+
}),
|
|
12744
|
+
defineCuratedSiteStyle({
|
|
12745
|
+
id: "site-style:bold-launch",
|
|
12746
|
+
name: "Bold Launch",
|
|
12747
|
+
description: "High-energy and punchy for launches, campaigns, and creative offers.",
|
|
12748
|
+
generationBrief: "Use crisp positioning, bold hero structure, strong calls to action, and confident visual rhythm. Keep it precise, not shouty.",
|
|
12749
|
+
siteCreatorSelection: {
|
|
12750
|
+
kind: "site_creator_keyword_heuristic",
|
|
12751
|
+
priority: 10
|
|
12752
|
+
},
|
|
12753
|
+
selectionKeywordRules: [
|
|
12754
|
+
{ kind: "substring", value: "launch" },
|
|
12755
|
+
{ kind: "substring", value: "campaign" },
|
|
12756
|
+
{ kind: "word", value: "preorder" },
|
|
12757
|
+
{ kind: "phrase", value: "pre-order" },
|
|
12758
|
+
{ kind: "substring", value: "waitlist" },
|
|
12759
|
+
{ kind: "word", value: "drop" }
|
|
12760
|
+
],
|
|
12761
|
+
tokenRecipes: {
|
|
12762
|
+
palette: "high-contrast",
|
|
12763
|
+
contrast: "maximum",
|
|
12764
|
+
radius: "pill",
|
|
12765
|
+
shadow: "layered",
|
|
12766
|
+
typography: "clean-sans",
|
|
12767
|
+
spacing: "regular",
|
|
12768
|
+
motion: "expressive"
|
|
12769
|
+
},
|
|
12770
|
+
compositionBudget: expressiveBudget,
|
|
12771
|
+
recommendedHeaderLookIds: [
|
|
12772
|
+
"transparent-overlay",
|
|
12773
|
+
"floating-glass",
|
|
12774
|
+
"brand-solid"
|
|
12775
|
+
],
|
|
12776
|
+
buttonPersonalityChoices: [
|
|
12777
|
+
buttonChoice("ink-stamp"),
|
|
12778
|
+
buttonChoice("confident-chip"),
|
|
12779
|
+
buttonChoice("brushed-wash"),
|
|
12780
|
+
buttonChoice("pebble")
|
|
12781
|
+
],
|
|
12782
|
+
paletteVariantChoices: [
|
|
12783
|
+
paletteChoice("high-contrast-monochrome"),
|
|
12784
|
+
paletteChoice("high-contrast-ink"),
|
|
12785
|
+
paletteChoice("brand-led-jewel"),
|
|
12786
|
+
paletteChoice("brand-led-warm")
|
|
12787
|
+
]
|
|
12788
|
+
}),
|
|
12789
|
+
defineCuratedSiteStyle({
|
|
12790
|
+
id: "site-style:south-west-twerk-school",
|
|
12791
|
+
name: "South West Twerk School",
|
|
12792
|
+
description: "Energetic, editorial, and high-contrast for a branded dance school presence.",
|
|
12793
|
+
generationBrief: "Use confident rhythm, bold burgundy-and-gold accents, large editorial intro copy, strong booking routes, and dark feature sections where proof or forms need emphasis.",
|
|
12794
|
+
tokenRecipes: {
|
|
12795
|
+
palette: "brand-led",
|
|
12796
|
+
contrast: "maximum",
|
|
12797
|
+
radius: "soft",
|
|
12798
|
+
shadow: "layered",
|
|
12799
|
+
typography: "clean-sans",
|
|
12800
|
+
spacing: "airy",
|
|
12801
|
+
motion: "expressive"
|
|
12802
|
+
},
|
|
12803
|
+
compositionBudget: expressiveBudget,
|
|
12804
|
+
typographyPresetChoices: [
|
|
12805
|
+
typographyChoice("typography-preset:bold-display"),
|
|
12806
|
+
typographyChoice("typography-preset:modern-sans"),
|
|
12807
|
+
typographyChoice("typography-preset:luxe-contrast")
|
|
12808
|
+
],
|
|
12809
|
+
defaultTypographyPresetId: "typography-preset:bold-display",
|
|
12810
|
+
themeOverrides: {
|
|
11562
12811
|
bodyText: {
|
|
11563
12812
|
intro: {
|
|
11564
12813
|
paragraphSize: "editorial",
|
|
@@ -11574,8 +12823,15 @@ var curatedSiteStyles = [
|
|
|
11574
12823
|
"testimonials-accent-quote-proof",
|
|
11575
12824
|
"contact-form-brand-depth-card"
|
|
11576
12825
|
],
|
|
11577
|
-
recommendedHeaderLookIds: [
|
|
11578
|
-
|
|
12826
|
+
recommendedHeaderLookIds: [
|
|
12827
|
+
"brand-solid",
|
|
12828
|
+
"transparent-overlay",
|
|
12829
|
+
"practical-utility"
|
|
12830
|
+
],
|
|
12831
|
+
recommendedFooterLookIds: [
|
|
12832
|
+
"site-footer-brand-two-band",
|
|
12833
|
+
"footer-muted-grounding"
|
|
12834
|
+
],
|
|
11579
12835
|
buttonPersonalityChoices: [
|
|
11580
12836
|
buttonChoice("showtime-pill"),
|
|
11581
12837
|
buttonChoice("confident-chip"),
|
|
@@ -15890,8 +17146,9 @@ var faqAccordionFragment = defineFragment({
|
|
|
15890
17146
|
},
|
|
15891
17147
|
fallback: "rb-faq-item"
|
|
15892
17148
|
},
|
|
15893
|
-
iconStyle: { $bind: { from: "theme.accordions.icon.style" } }
|
|
15894
|
-
//
|
|
17149
|
+
iconStyle: { $bind: { from: "theme.accordions.icon.style" } },
|
|
17150
|
+
// Legacy theme accordion style
|
|
17151
|
+
iconTreatment: { $bind: { from: "content._sectionStyles.accordionIconTreatment" } }
|
|
15895
17152
|
},
|
|
15896
17153
|
triggerFrom: "faqItem.question",
|
|
15897
17154
|
contentFrom: "faqItem.answer"
|
|
@@ -16969,61 +18226,389 @@ function splitLayoutWith(children) {
|
|
|
16969
18226
|
children
|
|
16970
18227
|
}
|
|
16971
18228
|
}),
|
|
16972
|
-
// The split variants render the image as a real grid column, so suppress
|
|
16973
|
-
// the default absolute background image layer while keeping color/overlay.
|
|
16974
|
-
renderBackgroundImage: false,
|
|
16975
|
-
baseClass: ""
|
|
16976
|
-
});
|
|
16977
|
-
}
|
|
16978
|
-
var splitContentColumn = heroContentWrapper(heroContentNodes, "md", "rb-w-full rb-text-left");
|
|
16979
|
-
var splitImageColumn = heroSplitImagePane();
|
|
16980
|
-
var splitLayout = splitLayoutWith([
|
|
16981
|
-
splitContentColumn,
|
|
16982
|
-
splitImageColumn
|
|
16983
|
-
]);
|
|
16984
|
-
var splitReverseLayout = splitLayoutWith([
|
|
16985
|
-
splitImageColumn,
|
|
16986
|
-
splitContentColumn
|
|
16987
|
-
]);
|
|
16988
|
-
var heroConfig = {
|
|
16989
|
-
id: "block.hero",
|
|
16990
|
-
title: "Hero",
|
|
16991
|
-
titleSource: "headline",
|
|
16992
|
-
category: "layout",
|
|
16993
|
-
includeContainerStyles: true,
|
|
16994
|
-
promotedFields: ["_sectionStyles.background.image"],
|
|
16995
|
-
fragments: [
|
|
16996
|
-
{ fragment: heroCopyFragment, fieldPriority: 0 },
|
|
16997
|
-
{ fragment: heroLayoutControlsFragment, fieldPriority: 1 },
|
|
16998
|
-
{ fragment: heroCtaRowFragment, fieldPriority: 2 }
|
|
16999
|
-
],
|
|
17000
|
-
additionalFields: [
|
|
17001
|
-
containerStylesField({
|
|
17002
|
-
id: "_contentCardStyles",
|
|
17003
|
-
label: "Content card",
|
|
17004
|
-
renderInHeader: true,
|
|
17005
|
-
intent: "style"
|
|
18229
|
+
// The split variants render the image as a real grid column, so suppress
|
|
18230
|
+
// the default absolute background image layer while keeping color/overlay.
|
|
18231
|
+
renderBackgroundImage: false,
|
|
18232
|
+
baseClass: ""
|
|
18233
|
+
});
|
|
18234
|
+
}
|
|
18235
|
+
var splitContentColumn = heroContentWrapper(heroContentNodes, "md", "rb-w-full rb-text-left");
|
|
18236
|
+
var splitImageColumn = heroSplitImagePane();
|
|
18237
|
+
var splitLayout = splitLayoutWith([
|
|
18238
|
+
splitContentColumn,
|
|
18239
|
+
splitImageColumn
|
|
18240
|
+
]);
|
|
18241
|
+
var splitReverseLayout = splitLayoutWith([
|
|
18242
|
+
splitImageColumn,
|
|
18243
|
+
splitContentColumn
|
|
18244
|
+
]);
|
|
18245
|
+
var heroConfig = {
|
|
18246
|
+
id: "block.hero",
|
|
18247
|
+
title: "Hero",
|
|
18248
|
+
titleSource: "headline",
|
|
18249
|
+
category: "layout",
|
|
18250
|
+
includeContainerStyles: true,
|
|
18251
|
+
promotedFields: ["_sectionStyles.background.image"],
|
|
18252
|
+
fragments: [
|
|
18253
|
+
{ fragment: heroCopyFragment, fieldPriority: 0 },
|
|
18254
|
+
{ fragment: heroLayoutControlsFragment, fieldPriority: 1 },
|
|
18255
|
+
{ fragment: heroCtaRowFragment, fieldPriority: 2 }
|
|
18256
|
+
],
|
|
18257
|
+
additionalFields: [
|
|
18258
|
+
containerStylesField({
|
|
18259
|
+
id: "_contentCardStyles",
|
|
18260
|
+
label: "Content card",
|
|
18261
|
+
renderInHeader: true,
|
|
18262
|
+
intent: "style"
|
|
18263
|
+
})
|
|
18264
|
+
],
|
|
18265
|
+
layout: classicLayout,
|
|
18266
|
+
variants: {
|
|
18267
|
+
classic: classicLayout,
|
|
18268
|
+
micro: microLayout,
|
|
18269
|
+
split: splitLayout,
|
|
18270
|
+
splitReverse: splitReverseLayout
|
|
18271
|
+
},
|
|
18272
|
+
defaultVariant: "classic",
|
|
18273
|
+
description: "Hero section with headline, subtitle, and repeatable CTAs.",
|
|
18274
|
+
tags: ["header", "banner", "landing", "introduction", "welcome", "splash", "headline"],
|
|
18275
|
+
icon: "Sparkles",
|
|
18276
|
+
styleTokens: {
|
|
18277
|
+
typography: "display",
|
|
18278
|
+
spacing: "xl"
|
|
18279
|
+
}
|
|
18280
|
+
};
|
|
18281
|
+
var heroManifest = createBlockManifest(heroConfig);
|
|
18282
|
+
var heroBlockDefinition = {
|
|
18283
|
+
manifest: heroManifest
|
|
18284
|
+
};
|
|
18285
|
+
|
|
18286
|
+
// ../blocks/src/system/fields/aspectRatio.ts
|
|
18287
|
+
var standardAspectRatioOptions = [
|
|
18288
|
+
{ value: "auto", label: "Auto (original)" },
|
|
18289
|
+
{ value: "16/9", label: "16:9 (Landscape)" },
|
|
18290
|
+
{ value: "4/3", label: "4:3 (Standard)" },
|
|
18291
|
+
{ value: "1/1", label: "1:1 (Square)" },
|
|
18292
|
+
{ value: "3/4", label: "3:4 (Portrait)" }
|
|
18293
|
+
];
|
|
18294
|
+
function createAspectRatioField(options = {}) {
|
|
18295
|
+
return {
|
|
18296
|
+
id: options.id ?? "aspectRatio",
|
|
18297
|
+
type: "select",
|
|
18298
|
+
label: options.label ?? "Aspect ratio",
|
|
18299
|
+
...options.description ? { description: options.description } : {},
|
|
18300
|
+
required: false,
|
|
18301
|
+
defaultValue: options.defaultValue ?? "auto",
|
|
18302
|
+
multiple: false,
|
|
18303
|
+
options: [...standardAspectRatioOptions],
|
|
18304
|
+
ui: {
|
|
18305
|
+
intent: options.uiIntent ?? "display",
|
|
18306
|
+
...options.visibleWhen ? { visibleWhen: options.visibleWhen } : {}
|
|
18307
|
+
}
|
|
18308
|
+
};
|
|
18309
|
+
}
|
|
18310
|
+
|
|
18311
|
+
// ../blocks/src/system/fields/imageLayout.ts
|
|
18312
|
+
function createImageColSizeField(options = {}) {
|
|
18313
|
+
const {
|
|
18314
|
+
id = "imageColSize",
|
|
18315
|
+
label = "Image column size",
|
|
18316
|
+
description = "Controls how large the image/thumbnail column is at desktop breakpoints.",
|
|
18317
|
+
defaultValue = "1/3",
|
|
18318
|
+
uiIntent = "display",
|
|
18319
|
+
visibleWhen
|
|
18320
|
+
} = options;
|
|
18321
|
+
return {
|
|
18322
|
+
id,
|
|
18323
|
+
type: "select",
|
|
18324
|
+
label,
|
|
18325
|
+
description,
|
|
18326
|
+
required: false,
|
|
18327
|
+
defaultValue,
|
|
18328
|
+
multiple: false,
|
|
18329
|
+
options: [
|
|
18330
|
+
{ value: "1/4", label: "Small (1/4)" },
|
|
18331
|
+
{ value: "1/3", label: "Medium (1/3)" },
|
|
18332
|
+
{ value: "2/5", label: "Large (2/5)" },
|
|
18333
|
+
{ value: "1/2", label: "Extra large (1/2)" },
|
|
18334
|
+
{ value: "2/3", label: "Huge (2/3)" }
|
|
18335
|
+
],
|
|
18336
|
+
ui: {
|
|
18337
|
+
intent: uiIntent,
|
|
18338
|
+
...visibleWhen ? { visibleWhen } : {}
|
|
18339
|
+
}
|
|
18340
|
+
};
|
|
18341
|
+
}
|
|
18342
|
+
function createImagePositionField(options = {}) {
|
|
18343
|
+
const {
|
|
18344
|
+
id = "imagePosition",
|
|
18345
|
+
label = "Image position",
|
|
18346
|
+
description = "Choose which side the image appears on.",
|
|
18347
|
+
defaultValue = "left",
|
|
18348
|
+
includeAlternate = false,
|
|
18349
|
+
uiIntent = "display",
|
|
18350
|
+
visibleWhen
|
|
18351
|
+
} = options;
|
|
18352
|
+
const positionOptions = [
|
|
18353
|
+
{ value: "left", label: "Left" },
|
|
18354
|
+
{ value: "right", label: "Right" },
|
|
18355
|
+
...includeAlternate ? [{ value: "alternate", label: "Alternate" }] : []
|
|
18356
|
+
];
|
|
18357
|
+
return {
|
|
18358
|
+
id,
|
|
18359
|
+
type: "select",
|
|
18360
|
+
label,
|
|
18361
|
+
description,
|
|
18362
|
+
required: false,
|
|
18363
|
+
defaultValue,
|
|
18364
|
+
multiple: false,
|
|
18365
|
+
// Spread to get a mutable array type without unsafe casts.
|
|
18366
|
+
options: [...positionOptions],
|
|
18367
|
+
ui: {
|
|
18368
|
+
intent: uiIntent,
|
|
18369
|
+
...visibleWhen ? { visibleWhen } : {}
|
|
18370
|
+
}
|
|
18371
|
+
};
|
|
18372
|
+
}
|
|
18373
|
+
|
|
18374
|
+
// ../blocks/src/system/blocks/intro.ts
|
|
18375
|
+
function introHeading(className) {
|
|
18376
|
+
return text(
|
|
18377
|
+
{
|
|
18378
|
+
as: "h2",
|
|
18379
|
+
className
|
|
18380
|
+
},
|
|
18381
|
+
when("content.title"),
|
|
18382
|
+
bind("content.title")
|
|
18383
|
+
);
|
|
18384
|
+
}
|
|
18385
|
+
function introBody(className = "rb-prose rb-max-w-none") {
|
|
18386
|
+
return richText({ className }, bind("content.body"));
|
|
18387
|
+
}
|
|
18388
|
+
function introCtas(justify = "start") {
|
|
18389
|
+
return ctaRow({
|
|
18390
|
+
justify,
|
|
18391
|
+
gap: "md",
|
|
18392
|
+
containerClassName: "rb-mt-2"
|
|
18393
|
+
});
|
|
18394
|
+
}
|
|
18395
|
+
function introCopyStack(options = {}) {
|
|
18396
|
+
return stack(
|
|
18397
|
+
{
|
|
18398
|
+
gap: "md",
|
|
18399
|
+
className: options.className ?? "rb-intro-copy"
|
|
18400
|
+
},
|
|
18401
|
+
[
|
|
18402
|
+
introHeading(options.headingClassName ?? "rb-intro-title"),
|
|
18403
|
+
introBody(options.bodyClassName),
|
|
18404
|
+
introCtas(options.ctaJustify)
|
|
18405
|
+
]
|
|
18406
|
+
);
|
|
18407
|
+
}
|
|
18408
|
+
var introMedia = media(
|
|
18409
|
+
{
|
|
18410
|
+
className: "rb-intro-media rb-w-full rb-h-auto rb-object-cover",
|
|
18411
|
+
style: {
|
|
18412
|
+
aspectRatio: { $bind: { from: "content.aspectRatio" } }
|
|
18413
|
+
}
|
|
18414
|
+
},
|
|
18415
|
+
bind("content.media")
|
|
18416
|
+
);
|
|
18417
|
+
var centeredCopyLayout = styledSection({
|
|
18418
|
+
children: styledContainer({
|
|
18419
|
+
rootType: "stack",
|
|
18420
|
+
rootProps: { gap: "lg" },
|
|
18421
|
+
children: [
|
|
18422
|
+
introCopyStack({
|
|
18423
|
+
className: "rb-intro-copy rb-mx-auto rb-max-w-3xl rb-text-center",
|
|
18424
|
+
headingClassName: "rb-intro-title rb-text-center",
|
|
18425
|
+
bodyClassName: "rb-prose rb-mx-auto rb-max-w-none",
|
|
18426
|
+
ctaJustify: "center"
|
|
18427
|
+
})
|
|
18428
|
+
]
|
|
18429
|
+
}),
|
|
18430
|
+
baseClass: "",
|
|
18431
|
+
spacing: "medium"
|
|
18432
|
+
});
|
|
18433
|
+
var statementCopyLayout = styledSection({
|
|
18434
|
+
children: styledContainer({
|
|
18435
|
+
children: [
|
|
18436
|
+
el(
|
|
18437
|
+
"div",
|
|
18438
|
+
{
|
|
18439
|
+
className: "rb-intro rb-intro-statement rb-grid rb-grid-cols-1 rb-gap-8 rb-md-grid-cols-2 rb-md-items-start"
|
|
18440
|
+
},
|
|
18441
|
+
[
|
|
18442
|
+
introHeading("rb-intro-title rb-max-w-xl"),
|
|
18443
|
+
stack({ gap: "md", className: "rb-intro-copy rb-max-w-xl" }, [
|
|
18444
|
+
introBody(),
|
|
18445
|
+
introCtas("start")
|
|
18446
|
+
])
|
|
18447
|
+
]
|
|
18448
|
+
)
|
|
18449
|
+
]
|
|
18450
|
+
}),
|
|
18451
|
+
baseClass: "",
|
|
18452
|
+
spacing: "medium"
|
|
18453
|
+
});
|
|
18454
|
+
var statementMediaLayout = styledSection({
|
|
18455
|
+
children: styledContainer({
|
|
18456
|
+
children: [
|
|
18457
|
+
el(
|
|
18458
|
+
"div",
|
|
18459
|
+
{
|
|
18460
|
+
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"
|
|
18461
|
+
},
|
|
18462
|
+
[
|
|
18463
|
+
introHeading("rb-intro-title rb-max-w-xl"),
|
|
18464
|
+
stack({ gap: "md", className: "rb-intro-copy rb-max-w-xl" }, [
|
|
18465
|
+
introBody(),
|
|
18466
|
+
introCtas("start")
|
|
18467
|
+
]),
|
|
18468
|
+
el("div", { className: "rb-intro-media-wrap rb-w-full" }, [introMedia], when("content.media"))
|
|
18469
|
+
]
|
|
18470
|
+
)
|
|
18471
|
+
]
|
|
18472
|
+
}),
|
|
18473
|
+
baseClass: "",
|
|
18474
|
+
spacing: "medium"
|
|
18475
|
+
});
|
|
18476
|
+
var mediaCopyLayout = styledSection({
|
|
18477
|
+
children: styledContainer({
|
|
18478
|
+
children: [
|
|
18479
|
+
responsiveTwoColumn({
|
|
18480
|
+
image: el("div", { className: "rb-intro-media-wrap rb-w-full" }, [introMedia]),
|
|
18481
|
+
text: introCopyStack({
|
|
18482
|
+
className: "rb-intro-copy rb-max-w-xl",
|
|
18483
|
+
headingClassName: "rb-intro-title"
|
|
18484
|
+
}),
|
|
18485
|
+
ratioFrom: "content.ratio",
|
|
18486
|
+
imagePositionFrom: "content.imagePosition",
|
|
18487
|
+
gapFrom: "content.gap",
|
|
18488
|
+
gapFallback: "comfortable",
|
|
18489
|
+
imageWrapperClassName: "rb-w-full rb-shrink-0",
|
|
18490
|
+
textWrapperClassName: "rb-w-full rb-min-w-0 rb-flex-1 rb-self-center"
|
|
18491
|
+
})
|
|
18492
|
+
]
|
|
18493
|
+
}),
|
|
18494
|
+
baseClass: "",
|
|
18495
|
+
spacing: "medium"
|
|
18496
|
+
});
|
|
18497
|
+
var introConfig = {
|
|
18498
|
+
id: "block.intro",
|
|
18499
|
+
title: "Intro",
|
|
18500
|
+
category: "layout",
|
|
18501
|
+
includeContainerStyles: true,
|
|
18502
|
+
titleSource: "title",
|
|
18503
|
+
additionalFields: [
|
|
18504
|
+
{
|
|
18505
|
+
id: "title",
|
|
18506
|
+
type: "text",
|
|
18507
|
+
label: "Statement",
|
|
18508
|
+
required: false,
|
|
18509
|
+
multiline: true,
|
|
18510
|
+
maxLength: 160
|
|
18511
|
+
},
|
|
18512
|
+
{
|
|
18513
|
+
id: "body",
|
|
18514
|
+
type: "richText",
|
|
18515
|
+
label: "Text",
|
|
18516
|
+
required: true,
|
|
18517
|
+
ui: {
|
|
18518
|
+
richTextVariant: "limited"
|
|
18519
|
+
}
|
|
18520
|
+
},
|
|
18521
|
+
{
|
|
18522
|
+
id: "media",
|
|
18523
|
+
type: "media",
|
|
18524
|
+
label: "Media",
|
|
18525
|
+
required: false,
|
|
18526
|
+
mediaKinds: ["image"],
|
|
18527
|
+
ui: {
|
|
18528
|
+
intent: "content",
|
|
18529
|
+
visibleWhen: { field: "variant", notEquals: "statement-copy" }
|
|
18530
|
+
}
|
|
18531
|
+
},
|
|
18532
|
+
createImagePositionField({
|
|
18533
|
+
id: "imagePosition",
|
|
18534
|
+
label: "Image position",
|
|
18535
|
+
defaultValue: "left",
|
|
18536
|
+
uiIntent: "display",
|
|
18537
|
+
visibleWhen: { field: "variant", equals: "media-copy" }
|
|
18538
|
+
}),
|
|
18539
|
+
{
|
|
18540
|
+
id: "gap",
|
|
18541
|
+
type: "select",
|
|
18542
|
+
label: "Gap between media and text",
|
|
18543
|
+
required: false,
|
|
18544
|
+
defaultValue: "comfortable",
|
|
18545
|
+
multiple: false,
|
|
18546
|
+
options: [
|
|
18547
|
+
{ value: "none", label: "None" },
|
|
18548
|
+
{ value: "compact", label: "Compact" },
|
|
18549
|
+
{ value: "cozy", label: "Cozy" },
|
|
18550
|
+
{ value: "medium", label: "Medium" },
|
|
18551
|
+
{ value: "comfortable", label: "Comfortable" },
|
|
18552
|
+
{ value: "spacious", label: "Spacious" }
|
|
18553
|
+
],
|
|
18554
|
+
ui: {
|
|
18555
|
+
intent: "display",
|
|
18556
|
+
visibleWhen: { field: "variant", equals: "media-copy" }
|
|
18557
|
+
}
|
|
18558
|
+
},
|
|
18559
|
+
createImageColSizeField({
|
|
18560
|
+
id: "ratio",
|
|
18561
|
+
label: "Media column size",
|
|
18562
|
+
defaultValue: "1/2",
|
|
18563
|
+
uiIntent: "display",
|
|
18564
|
+
visibleWhen: { field: "variant", equals: "media-copy" }
|
|
18565
|
+
}),
|
|
18566
|
+
createAspectRatioField({
|
|
18567
|
+
id: "aspectRatio",
|
|
18568
|
+
label: "Media aspect ratio",
|
|
18569
|
+
description: "Crop media to a consistent aspect ratio.",
|
|
18570
|
+
defaultValue: "auto",
|
|
18571
|
+
visibleWhen: { field: "media", notEquals: null }
|
|
18572
|
+
}),
|
|
18573
|
+
createCtasRepeater({
|
|
18574
|
+
label: "Calls to action",
|
|
18575
|
+
itemLabel: "CTA",
|
|
18576
|
+
maxItems: 2
|
|
17006
18577
|
})
|
|
17007
18578
|
],
|
|
17008
|
-
layout:
|
|
18579
|
+
layout: centeredCopyLayout,
|
|
17009
18580
|
variants: {
|
|
17010
|
-
|
|
17011
|
-
|
|
17012
|
-
|
|
17013
|
-
|
|
18581
|
+
"centered-copy": centeredCopyLayout,
|
|
18582
|
+
"statement-copy": statementCopyLayout,
|
|
18583
|
+
"statement-media": statementMediaLayout,
|
|
18584
|
+
"media-copy": mediaCopyLayout
|
|
17014
18585
|
},
|
|
17015
|
-
defaultVariant: "
|
|
17016
|
-
|
|
17017
|
-
|
|
17018
|
-
|
|
17019
|
-
|
|
17020
|
-
|
|
17021
|
-
|
|
17022
|
-
|
|
18586
|
+
defaultVariant: "statement-copy",
|
|
18587
|
+
variantOptions: {
|
|
18588
|
+
"centered-copy": {
|
|
18589
|
+
label: "Centered copy",
|
|
18590
|
+
description: "A focused intro with centered text and optional calls to action."
|
|
18591
|
+
},
|
|
18592
|
+
"statement-copy": {
|
|
18593
|
+
label: "Statement and copy",
|
|
18594
|
+
description: "A large statement on the left with supporting copy on the right."
|
|
18595
|
+
},
|
|
18596
|
+
"statement-media": {
|
|
18597
|
+
label: "Statement, copy and media",
|
|
18598
|
+
description: "A three-part intro with statement, copy and a small image."
|
|
18599
|
+
},
|
|
18600
|
+
"media-copy": {
|
|
18601
|
+
label: "Media and copy",
|
|
18602
|
+
description: "A compact media/text intro for softer transitions after a hero."
|
|
18603
|
+
}
|
|
18604
|
+
},
|
|
18605
|
+
description: "A flexible introductory section for statement copy, supporting text, media, and CTAs.",
|
|
18606
|
+
tags: ["intro", "introduction", "about", "welcome", "statement", "media", "text"],
|
|
18607
|
+
icon: "PanelTopOpen"
|
|
17023
18608
|
};
|
|
17024
|
-
var
|
|
17025
|
-
var
|
|
17026
|
-
manifest:
|
|
18609
|
+
var introManifest = createBlockManifest(introConfig);
|
|
18610
|
+
var introBlockDefinition = {
|
|
18611
|
+
manifest: introManifest
|
|
17027
18612
|
};
|
|
17028
18613
|
|
|
17029
18614
|
// ../blocks/src/system/blocks/body-text.ts
|
|
@@ -17869,6 +19454,37 @@ var faqComposition = composeFragments([
|
|
|
17869
19454
|
{ fragment: faqHeadingFragment, fieldPriority: 0 },
|
|
17870
19455
|
{ fragment: faqAccordionFragment, fieldPriority: 1 }
|
|
17871
19456
|
]);
|
|
19457
|
+
function fragmentLayoutNode(layout) {
|
|
19458
|
+
return isNodeDefinitionArray(layout) ? el("div", {}, [...layout]) : layout;
|
|
19459
|
+
}
|
|
19460
|
+
function isNodeDefinitionArray(layout) {
|
|
19461
|
+
return Array.isArray(layout);
|
|
19462
|
+
}
|
|
19463
|
+
var headingLayout = fragmentLayoutNode(faqHeadingFragment.layout);
|
|
19464
|
+
var accordionLayout = fragmentLayoutNode(faqAccordionFragment.layout);
|
|
19465
|
+
var defaultLayout = styledSection({
|
|
19466
|
+
children: styledContainer({
|
|
19467
|
+
baseClassName: "rb-relative rb-isolate",
|
|
19468
|
+
children: stack({ gap: "xl", className: "rb-w-full rb-max-w-4xl rb-mx-auto" }, faqComposition.layout)
|
|
19469
|
+
}),
|
|
19470
|
+
baseClass: ""
|
|
19471
|
+
});
|
|
19472
|
+
var twoColumnLayout = styledSection({
|
|
19473
|
+
children: styledContainer({
|
|
19474
|
+
baseClassName: "rb-relative rb-isolate",
|
|
19475
|
+
children: el(
|
|
19476
|
+
"div",
|
|
19477
|
+
{
|
|
19478
|
+
className: "rb-faq-two-column rb-grid rb-grid-cols-1 rb-gap-8 rb-lg-grid-cols-2 rb-lg-items-start"
|
|
19479
|
+
},
|
|
19480
|
+
[
|
|
19481
|
+
el("div", { className: "rb-faq-two-column-heading" }, [headingLayout]),
|
|
19482
|
+
el("div", { className: "rb-faq-two-column-accordion" }, [accordionLayout])
|
|
19483
|
+
]
|
|
19484
|
+
)
|
|
19485
|
+
}),
|
|
19486
|
+
baseClass: ""
|
|
19487
|
+
});
|
|
17872
19488
|
var faqManifest = createBlockManifest({
|
|
17873
19489
|
id: "block.faq",
|
|
17874
19490
|
title: "FAQ",
|
|
@@ -17885,13 +19501,22 @@ var faqManifest = createBlockManifest({
|
|
|
17885
19501
|
label: "FAQ item styles"
|
|
17886
19502
|
})
|
|
17887
19503
|
],
|
|
17888
|
-
layout:
|
|
17889
|
-
|
|
17890
|
-
|
|
17891
|
-
|
|
17892
|
-
|
|
17893
|
-
|
|
17894
|
-
|
|
19504
|
+
layout: defaultLayout,
|
|
19505
|
+
variants: {
|
|
19506
|
+
default: defaultLayout,
|
|
19507
|
+
"two-column": twoColumnLayout
|
|
19508
|
+
},
|
|
19509
|
+
defaultVariant: "default",
|
|
19510
|
+
variantOptions: {
|
|
19511
|
+
default: {
|
|
19512
|
+
label: "Default",
|
|
19513
|
+
description: "A centered heading above one FAQ accordion."
|
|
19514
|
+
},
|
|
19515
|
+
"two-column": {
|
|
19516
|
+
label: "Two column",
|
|
19517
|
+
description: "A left heading column with FAQ items on the right."
|
|
19518
|
+
}
|
|
19519
|
+
},
|
|
17895
19520
|
description: "Accordion of frequently asked questions and answers.",
|
|
17896
19521
|
tags: ["faq", "questions", "answers", "help", "support", "accordion", "q&a"],
|
|
17897
19522
|
icon: "HelpCircle"
|
|
@@ -18541,7 +20166,8 @@ function resolveBackgroundVisualStyles(backgroundColor, tokens, defaultToken = "
|
|
|
18541
20166
|
function resolveHeaderVisualStyles(header, tokens) {
|
|
18542
20167
|
const navContainerType = header?.navContainer?.type ?? "none";
|
|
18543
20168
|
const hasContainedNav = navContainerType === "glass" || navContainerType === "pill";
|
|
18544
|
-
|
|
20169
|
+
const hasTransparentVariant = header?.variant === "transparent" || header?.variant === "floating";
|
|
20170
|
+
if (hasContainedNav || hasTransparentVariant) {
|
|
18545
20171
|
return {
|
|
18546
20172
|
backgroundToken: "transparent",
|
|
18547
20173
|
paletteHex: null,
|
|
@@ -18599,10 +20225,7 @@ var headerRootClassTransform = {
|
|
|
18599
20225
|
const navContainerType = header?.navContainer?.type ?? "none";
|
|
18600
20226
|
const hasContainedNav = navContainerType === "glass" || navContainerType === "pill";
|
|
18601
20227
|
const backgroundClass = visuals.isTransparent || hasContainedNav ? "rb-bg-transparent" : null;
|
|
18602
|
-
const classes = [
|
|
18603
|
-
config.base,
|
|
18604
|
-
backgroundClass
|
|
18605
|
-
];
|
|
20228
|
+
const classes = [config.base, backgroundClass];
|
|
18606
20229
|
if (!hasContainedNav) {
|
|
18607
20230
|
if (config.blur) classes.push(config.blur);
|
|
18608
20231
|
if (config.blurSupport) classes.push(config.blurSupport);
|
|
@@ -18617,7 +20240,12 @@ var headerRootClassTransform = {
|
|
|
18617
20240
|
if (shrinkOnScroll && (positioning === "sticky" || positioning === "fixed")) {
|
|
18618
20241
|
classes.push(config.shrink);
|
|
18619
20242
|
}
|
|
18620
|
-
const VALID_VARIANTS = [
|
|
20243
|
+
const VALID_VARIANTS = [
|
|
20244
|
+
"classic",
|
|
20245
|
+
"centered",
|
|
20246
|
+
"transparent",
|
|
20247
|
+
"floating"
|
|
20248
|
+
];
|
|
18621
20249
|
const variant = header?.variant;
|
|
18622
20250
|
if (variant && VALID_VARIANTS.includes(variant)) {
|
|
18623
20251
|
classes.push(`header-variant-${variant}`);
|
|
@@ -18670,6 +20298,17 @@ var headerRootStyleTransform = {
|
|
|
18670
20298
|
return mergeStyles(...styleParts);
|
|
18671
20299
|
}
|
|
18672
20300
|
};
|
|
20301
|
+
var headerSectionBackgroundTransform = {
|
|
20302
|
+
id: "layout.headerSectionBackground",
|
|
20303
|
+
kind: "string",
|
|
20304
|
+
summary: "Resolve the inner site-header section background token",
|
|
20305
|
+
run: (value) => {
|
|
20306
|
+
const header = asPartialObject(value);
|
|
20307
|
+
const navContainerType = header?.navContainer?.type ?? "none";
|
|
20308
|
+
const usesTransparentRoot = header?.variant === "transparent" || header?.variant === "floating" || navContainerType === "glass" || navContainerType === "pill";
|
|
20309
|
+
return usesTransparentRoot ? "raw:transparent" : "background";
|
|
20310
|
+
}
|
|
20311
|
+
};
|
|
18673
20312
|
var footerRootStyleTransform = {
|
|
18674
20313
|
id: "layout.footerRootStyle",
|
|
18675
20314
|
kind: "formatter",
|
|
@@ -18928,6 +20567,7 @@ var layoutTransforms = [
|
|
|
18928
20567
|
headerRootClassTransform,
|
|
18929
20568
|
footerRootClassTransform,
|
|
18930
20569
|
headerRootStyleTransform,
|
|
20570
|
+
headerSectionBackgroundTransform,
|
|
18931
20571
|
footerRootStyleTransform,
|
|
18932
20572
|
footerBottomBarClassTransform,
|
|
18933
20573
|
footerBottomBarContainerClassTransform,
|
|
@@ -19223,15 +20863,21 @@ var mobileCta = ctaButton({
|
|
|
19223
20863
|
var mobileToggleIcon = stack({ gap: "xs", className: "nav-mobile-icon" }, [
|
|
19224
20864
|
{
|
|
19225
20865
|
type: "div",
|
|
19226
|
-
props: {
|
|
20866
|
+
props: {
|
|
20867
|
+
className: "nav-mobile-bar nav-mobile-bar-top rb-h-0.5 rb-w-5 rb-rounded-full rb-bg-current"
|
|
20868
|
+
}
|
|
19227
20869
|
},
|
|
19228
20870
|
{
|
|
19229
20871
|
type: "div",
|
|
19230
|
-
props: {
|
|
20872
|
+
props: {
|
|
20873
|
+
className: "nav-mobile-bar nav-mobile-bar-middle rb-h-0.5 rb-w-5 rb-rounded-full rb-bg-current"
|
|
20874
|
+
}
|
|
19231
20875
|
},
|
|
19232
20876
|
{
|
|
19233
20877
|
type: "div",
|
|
19234
|
-
props: {
|
|
20878
|
+
props: {
|
|
20879
|
+
className: "nav-mobile-bar nav-mobile-bar-bottom rb-h-0.5 rb-w-5 rb-rounded-full rb-bg-current"
|
|
20880
|
+
}
|
|
19235
20881
|
}
|
|
19236
20882
|
]);
|
|
19237
20883
|
var mobileToggleButton = {
|
|
@@ -19414,31 +21060,12 @@ var floatingLayout = inline(
|
|
|
19414
21060
|
],
|
|
19415
21061
|
when("$root.theme.header.variant", { equals: "floating" })
|
|
19416
21062
|
);
|
|
19417
|
-
var editorialLayout = stack(
|
|
19418
|
-
{
|
|
19419
|
-
gap: "md",
|
|
19420
|
-
align: "center",
|
|
19421
|
-
className: bindProp("$root.theme.header.maxWidth", {
|
|
19422
|
-
transforms: pipe(
|
|
19423
|
-
tx("layout.maxWidthClass", {
|
|
19424
|
-
base: `rb-header-layout ${desktopOnlyDisplay("flex")} rb-w-full rb-flex-col rb-items-center rb-gap-6 rb-text-center`
|
|
19425
|
-
})
|
|
19426
|
-
),
|
|
19427
|
-
fallback: `rb-container rb-header-layout ${desktopOnlyDisplay("flex")} rb-w-full rb-flex-col rb-items-center rb-gap-6 rb-text-center`
|
|
19428
|
-
})
|
|
19429
|
-
},
|
|
19430
|
-
[
|
|
19431
|
-
centeredLogoRow,
|
|
19432
|
-
createNavRow(
|
|
19433
|
-
`${desktopOnlyDisplay("flex")} rb-flex-wrap rb-justify-center rb-gap-x-8 rb-gap-y-3`,
|
|
19434
|
-
"center"
|
|
19435
|
-
)
|
|
19436
|
-
],
|
|
19437
|
-
when("$root.theme.header.variant", { equals: "editorial" })
|
|
19438
|
-
);
|
|
19439
21063
|
var headerLayout = headerSection(
|
|
19440
21064
|
{
|
|
19441
|
-
background: "
|
|
21065
|
+
background: bindProp("$root.theme.header", {
|
|
21066
|
+
transforms: pipe(tx("layout.headerSectionBackground")),
|
|
21067
|
+
fallback: "background"
|
|
21068
|
+
}),
|
|
19442
21069
|
allowOverflow: true,
|
|
19443
21070
|
className: bindProp("$root.theme.header", {
|
|
19444
21071
|
transforms: pipe(tx("layout.headerRootClass")),
|
|
@@ -19446,10 +21073,7 @@ var headerLayout = headerSection(
|
|
|
19446
21073
|
}),
|
|
19447
21074
|
style: bindProp("$root.theme.header", {
|
|
19448
21075
|
transforms: pipe(tx("layout.headerRootStyle")),
|
|
19449
|
-
fallback: mergeStyles(
|
|
19450
|
-
textColorStyle("text"),
|
|
19451
|
-
borderColorStyle("border")
|
|
19452
|
-
)
|
|
21076
|
+
fallback: mergeStyles(textColorStyle("text"), borderColorStyle("border"))
|
|
19453
21077
|
})
|
|
19454
21078
|
},
|
|
19455
21079
|
[
|
|
@@ -19458,7 +21082,6 @@ var headerLayout = headerSection(
|
|
|
19458
21082
|
centeredLayout,
|
|
19459
21083
|
transparentLayout,
|
|
19460
21084
|
floatingLayout,
|
|
19461
|
-
editorialLayout,
|
|
19462
21085
|
mobileOverlay
|
|
19463
21086
|
],
|
|
19464
21087
|
props({
|
|
@@ -20273,79 +21896,298 @@ var collectionLayout = styledSection({
|
|
|
20273
21896
|
{ gap: "md" }
|
|
20274
21897
|
),
|
|
20275
21898
|
baseClass: "",
|
|
20276
|
-
spacing: "comfortable"
|
|
21899
|
+
spacing: "comfortable"
|
|
21900
|
+
});
|
|
21901
|
+
var collectionManifest = createBlockManifest({
|
|
21902
|
+
id: "block.collection",
|
|
21903
|
+
title: "Collection",
|
|
21904
|
+
category: "layout",
|
|
21905
|
+
additionalFields: [
|
|
21906
|
+
parseFieldDefinition({
|
|
21907
|
+
id: "layout",
|
|
21908
|
+
type: "select",
|
|
21909
|
+
label: "Layout",
|
|
21910
|
+
defaultValue: "grid",
|
|
21911
|
+
options: [
|
|
21912
|
+
{ value: "grid", label: "Grid" },
|
|
21913
|
+
{ value: "stack", label: "Stack" }
|
|
21914
|
+
],
|
|
21915
|
+
ui: { intent: "display" }
|
|
21916
|
+
}),
|
|
21917
|
+
parseFieldDefinition({
|
|
21918
|
+
id: "columns",
|
|
21919
|
+
type: "select",
|
|
21920
|
+
label: "Columns",
|
|
21921
|
+
description: "Number of columns in the grid layout.",
|
|
21922
|
+
defaultValue: "3",
|
|
21923
|
+
options: [
|
|
21924
|
+
{ value: "2", label: "2 columns" },
|
|
21925
|
+
{ value: "3", label: "3 columns" },
|
|
21926
|
+
{ value: "4", label: "4 columns" }
|
|
21927
|
+
],
|
|
21928
|
+
ui: {
|
|
21929
|
+
intent: "display",
|
|
21930
|
+
visibleWhen: { field: "layout", equals: "grid" }
|
|
21931
|
+
}
|
|
21932
|
+
}),
|
|
21933
|
+
parseFieldDefinition({
|
|
21934
|
+
id: "gap",
|
|
21935
|
+
type: "select",
|
|
21936
|
+
label: "Gap",
|
|
21937
|
+
defaultValue: "medium",
|
|
21938
|
+
options: [
|
|
21939
|
+
{ value: "none", label: "None" },
|
|
21940
|
+
{ value: "compact", label: "Compact" },
|
|
21941
|
+
{ value: "cozy", label: "Cozy" },
|
|
21942
|
+
{ value: "medium", label: "Medium" },
|
|
21943
|
+
{ value: "comfortable", label: "Comfortable" },
|
|
21944
|
+
{ value: "spacious", label: "Spacious" }
|
|
21945
|
+
],
|
|
21946
|
+
ui: { intent: "display" }
|
|
21947
|
+
}),
|
|
21948
|
+
fragmentsToRepeaterField(
|
|
21949
|
+
"items",
|
|
21950
|
+
"Items",
|
|
21951
|
+
collectionFragments,
|
|
21952
|
+
{
|
|
21953
|
+
minItems: 0,
|
|
21954
|
+
maxItems: 50,
|
|
21955
|
+
itemLabel: "Item",
|
|
21956
|
+
description: "Add items to this collection."
|
|
21957
|
+
}
|
|
21958
|
+
),
|
|
21959
|
+
cardStylesField({
|
|
21960
|
+
id: "_cardStyles",
|
|
21961
|
+
label: "Item styles"
|
|
21962
|
+
})
|
|
21963
|
+
],
|
|
21964
|
+
layout: collectionLayout,
|
|
21965
|
+
description: "Repeat items in a grid or stack layout.",
|
|
21966
|
+
tags: ["collection", "grid", "stack", "repeater"],
|
|
21967
|
+
icon: "LayoutList",
|
|
21968
|
+
styleTokens: { spacing: "lg" }
|
|
21969
|
+
});
|
|
21970
|
+
var collectionBlockDefinition = {
|
|
21971
|
+
manifest: collectionManifest
|
|
21972
|
+
};
|
|
21973
|
+
|
|
21974
|
+
// ../blocks/src/system/blocks/feature-cards.ts
|
|
21975
|
+
function grid3(props2, children) {
|
|
21976
|
+
return el("grid", props2 ?? void 0, children ?? void 0);
|
|
21977
|
+
}
|
|
21978
|
+
var sectionHeading = stack(
|
|
21979
|
+
{ gap: "sm", className: "rb-feature-cards-heading rb-mx-auto rb-max-w-3xl rb-text-center" },
|
|
21980
|
+
[
|
|
21981
|
+
text(
|
|
21982
|
+
{
|
|
21983
|
+
as: "h2",
|
|
21984
|
+
className: "rb-feature-cards-title rb-text-center"
|
|
21985
|
+
},
|
|
21986
|
+
when("content.title"),
|
|
21987
|
+
bind("content.title")
|
|
21988
|
+
),
|
|
21989
|
+
richText(
|
|
21990
|
+
{
|
|
21991
|
+
className: "rb-feature-cards-description rb-prose rb-mx-auto rb-max-w-none",
|
|
21992
|
+
style: textColorStyle("mutedText")
|
|
21993
|
+
},
|
|
21994
|
+
when("content.description"),
|
|
21995
|
+
bind("content.description")
|
|
21996
|
+
)
|
|
21997
|
+
]
|
|
21998
|
+
);
|
|
21999
|
+
var featureCard = styledCard(
|
|
22000
|
+
[
|
|
22001
|
+
media(
|
|
22002
|
+
{
|
|
22003
|
+
className: "rb-feature-card-media rb-w-full rb-h-auto rb-object-cover",
|
|
22004
|
+
style: {
|
|
22005
|
+
aspectRatio: { $bind: { from: "card.aspectRatio" } }
|
|
22006
|
+
}
|
|
22007
|
+
},
|
|
22008
|
+
when("card.media"),
|
|
22009
|
+
bind("card.media")
|
|
22010
|
+
),
|
|
22011
|
+
stack({ gap: "sm", className: "rb-feature-card-content rb-flex-1 rb-p-6" }, [
|
|
22012
|
+
text(
|
|
22013
|
+
{
|
|
22014
|
+
as: "h3",
|
|
22015
|
+
className: "rb-feature-card-title"
|
|
22016
|
+
},
|
|
22017
|
+
bind("card.title")
|
|
22018
|
+
),
|
|
22019
|
+
richText(
|
|
22020
|
+
{
|
|
22021
|
+
className: "rb-feature-card-body rb-prose rb-max-w-none",
|
|
22022
|
+
style: textColorStyle("mutedText")
|
|
22023
|
+
},
|
|
22024
|
+
when("card.body"),
|
|
22025
|
+
bind("card.body")
|
|
22026
|
+
),
|
|
22027
|
+
ctaRow({
|
|
22028
|
+
collectionPath: "ctas",
|
|
22029
|
+
itemName: "cta",
|
|
22030
|
+
gap: "sm",
|
|
22031
|
+
justify: "start",
|
|
22032
|
+
containerClassName: "rb-mt-auto"
|
|
22033
|
+
})
|
|
22034
|
+
])
|
|
22035
|
+
],
|
|
22036
|
+
{
|
|
22037
|
+
stylesFrom: "content._cardStyles",
|
|
22038
|
+
backgroundFrom: "content._cardStyles.background",
|
|
22039
|
+
baseClassName: "rb-feature-card rb-relative rb-isolate rb-overflow-hidden rb-border rb-flex rb-h-full rb-flex-col"
|
|
22040
|
+
},
|
|
22041
|
+
repeat("content.cards", "card")
|
|
22042
|
+
);
|
|
22043
|
+
var cardsLayout = styledSection({
|
|
22044
|
+
children: styledContainer({
|
|
22045
|
+
rootType: "stack",
|
|
22046
|
+
rootProps: { gap: "xl" },
|
|
22047
|
+
children: [
|
|
22048
|
+
sectionHeading,
|
|
22049
|
+
grid3(
|
|
22050
|
+
{
|
|
22051
|
+
cols: {
|
|
22052
|
+
$bind: {
|
|
22053
|
+
from: "content.columns",
|
|
22054
|
+
fallback: 3,
|
|
22055
|
+
coerce: "number"
|
|
22056
|
+
}
|
|
22057
|
+
},
|
|
22058
|
+
gap: "lg"
|
|
22059
|
+
},
|
|
22060
|
+
[featureCard]
|
|
22061
|
+
)
|
|
22062
|
+
]
|
|
22063
|
+
}),
|
|
22064
|
+
baseClass: "",
|
|
22065
|
+
spacing: "medium"
|
|
20277
22066
|
});
|
|
20278
|
-
var
|
|
20279
|
-
id: "block.
|
|
20280
|
-
title: "
|
|
22067
|
+
var featureCardsConfig = {
|
|
22068
|
+
id: "block.feature-cards",
|
|
22069
|
+
title: "Feature Cards",
|
|
20281
22070
|
category: "layout",
|
|
22071
|
+
includeContainerStyles: true,
|
|
22072
|
+
titleSource: "title",
|
|
20282
22073
|
additionalFields: [
|
|
20283
|
-
|
|
20284
|
-
id: "
|
|
20285
|
-
type: "
|
|
20286
|
-
label: "
|
|
20287
|
-
|
|
20288
|
-
|
|
20289
|
-
|
|
20290
|
-
|
|
20291
|
-
|
|
20292
|
-
|
|
20293
|
-
|
|
20294
|
-
|
|
22074
|
+
{
|
|
22075
|
+
id: "title",
|
|
22076
|
+
type: "text",
|
|
22077
|
+
label: "Title",
|
|
22078
|
+
required: false,
|
|
22079
|
+
multiline: false,
|
|
22080
|
+
maxLength: 120
|
|
22081
|
+
},
|
|
22082
|
+
{
|
|
22083
|
+
id: "description",
|
|
22084
|
+
type: "richText",
|
|
22085
|
+
label: "Description",
|
|
22086
|
+
required: false,
|
|
22087
|
+
ui: {
|
|
22088
|
+
richTextVariant: "limited"
|
|
22089
|
+
}
|
|
22090
|
+
},
|
|
22091
|
+
{
|
|
20295
22092
|
id: "columns",
|
|
20296
22093
|
type: "select",
|
|
20297
22094
|
label: "Columns",
|
|
20298
|
-
|
|
22095
|
+
required: false,
|
|
20299
22096
|
defaultValue: "3",
|
|
22097
|
+
multiple: false,
|
|
20300
22098
|
options: [
|
|
20301
22099
|
{ value: "2", label: "2 columns" },
|
|
20302
22100
|
{ value: "3", label: "3 columns" },
|
|
20303
22101
|
{ value: "4", label: "4 columns" }
|
|
20304
22102
|
],
|
|
20305
|
-
ui: {
|
|
20306
|
-
intent: "display",
|
|
20307
|
-
visibleWhen: { field: "layout", equals: "grid" }
|
|
20308
|
-
}
|
|
20309
|
-
}),
|
|
20310
|
-
parseFieldDefinition({
|
|
20311
|
-
id: "gap",
|
|
20312
|
-
type: "select",
|
|
20313
|
-
label: "Gap",
|
|
20314
|
-
defaultValue: "medium",
|
|
20315
|
-
options: [
|
|
20316
|
-
{ value: "none", label: "None" },
|
|
20317
|
-
{ value: "compact", label: "Compact" },
|
|
20318
|
-
{ value: "cozy", label: "Cozy" },
|
|
20319
|
-
{ value: "medium", label: "Medium" },
|
|
20320
|
-
{ value: "comfortable", label: "Comfortable" },
|
|
20321
|
-
{ value: "spacious", label: "Spacious" }
|
|
20322
|
-
],
|
|
20323
22103
|
ui: { intent: "display" }
|
|
20324
|
-
}
|
|
20325
|
-
|
|
20326
|
-
"
|
|
20327
|
-
"
|
|
20328
|
-
|
|
20329
|
-
|
|
20330
|
-
|
|
20331
|
-
|
|
20332
|
-
|
|
20333
|
-
|
|
22104
|
+
},
|
|
22105
|
+
{
|
|
22106
|
+
id: "cards",
|
|
22107
|
+
type: "repeater",
|
|
22108
|
+
label: "Cards",
|
|
22109
|
+
required: false,
|
|
22110
|
+
minItems: 1,
|
|
22111
|
+
maxItems: 8,
|
|
22112
|
+
itemLabel: "Card",
|
|
22113
|
+
itemLabelSource: "title",
|
|
22114
|
+
allowConversion: true,
|
|
22115
|
+
ui: {
|
|
22116
|
+
intent: "content"
|
|
22117
|
+
},
|
|
22118
|
+
schema: {
|
|
22119
|
+
fields: [
|
|
22120
|
+
{
|
|
22121
|
+
id: "media",
|
|
22122
|
+
type: "media",
|
|
22123
|
+
label: "Image",
|
|
22124
|
+
required: false,
|
|
22125
|
+
mediaKinds: ["image"]
|
|
22126
|
+
},
|
|
22127
|
+
createAspectRatioField({
|
|
22128
|
+
id: "aspectRatio",
|
|
22129
|
+
label: "Image aspect ratio",
|
|
22130
|
+
defaultValue: "4/3",
|
|
22131
|
+
visibleWhen: { field: "media", notEquals: null }
|
|
22132
|
+
}),
|
|
22133
|
+
{
|
|
22134
|
+
id: "title",
|
|
22135
|
+
type: "text",
|
|
22136
|
+
label: "Title",
|
|
22137
|
+
required: true,
|
|
22138
|
+
multiline: false,
|
|
22139
|
+
maxLength: 120
|
|
22140
|
+
},
|
|
22141
|
+
{
|
|
22142
|
+
id: "body",
|
|
22143
|
+
type: "richText",
|
|
22144
|
+
label: "Text",
|
|
22145
|
+
required: false,
|
|
22146
|
+
ui: {
|
|
22147
|
+
richTextVariant: "limited"
|
|
22148
|
+
}
|
|
22149
|
+
},
|
|
22150
|
+
createCtasRepeater({
|
|
22151
|
+
label: "Calls to action",
|
|
22152
|
+
itemLabel: "CTA",
|
|
22153
|
+
maxItems: 1,
|
|
22154
|
+
button: {
|
|
22155
|
+
variants: [
|
|
22156
|
+
{ value: "primary", label: "Primary" },
|
|
22157
|
+
{ value: "secondary", label: "Secondary" },
|
|
22158
|
+
{ value: "outline", label: "Outline" },
|
|
22159
|
+
{ value: "ghost", label: "Ghost" },
|
|
22160
|
+
{ value: "link", label: "Link" }
|
|
22161
|
+
],
|
|
22162
|
+
defaultVariant: "ghost"
|
|
22163
|
+
}
|
|
22164
|
+
})
|
|
22165
|
+
]
|
|
20334
22166
|
}
|
|
20335
|
-
|
|
22167
|
+
},
|
|
20336
22168
|
cardStylesField({
|
|
20337
22169
|
id: "_cardStyles",
|
|
20338
|
-
label: "
|
|
22170
|
+
label: "Card styles"
|
|
20339
22171
|
})
|
|
20340
22172
|
],
|
|
20341
|
-
layout:
|
|
20342
|
-
|
|
20343
|
-
|
|
20344
|
-
|
|
20345
|
-
|
|
20346
|
-
|
|
20347
|
-
|
|
20348
|
-
|
|
22173
|
+
layout: cardsLayout,
|
|
22174
|
+
variants: {
|
|
22175
|
+
cards: cardsLayout
|
|
22176
|
+
},
|
|
22177
|
+
defaultVariant: "cards",
|
|
22178
|
+
variantOptions: {
|
|
22179
|
+
cards: {
|
|
22180
|
+
label: "Cards",
|
|
22181
|
+
description: "A responsive grid of image cards with optional calls to action."
|
|
22182
|
+
}
|
|
22183
|
+
},
|
|
22184
|
+
description: "A card grid for offerings, services, classes, benefits, or featured links.",
|
|
22185
|
+
tags: ["cards", "features", "offerings", "services", "classes", "grid", "links"],
|
|
22186
|
+
icon: "PanelsTopLeft"
|
|
22187
|
+
};
|
|
22188
|
+
var featureCardsManifest = createBlockManifest(featureCardsConfig);
|
|
22189
|
+
var featureCardsBlockDefinition = {
|
|
22190
|
+
manifest: featureCardsManifest
|
|
20349
22191
|
};
|
|
20350
22192
|
|
|
20351
22193
|
// ../blocks/src/system/fields/carousel.ts
|
|
@@ -20433,69 +22275,6 @@ function createCarouselBehaviorFields(options = {}) {
|
|
|
20433
22275
|
return fields3;
|
|
20434
22276
|
}
|
|
20435
22277
|
|
|
20436
|
-
// ../blocks/src/system/fields/imageLayout.ts
|
|
20437
|
-
function createImageColSizeField(options = {}) {
|
|
20438
|
-
const {
|
|
20439
|
-
id = "imageColSize",
|
|
20440
|
-
label = "Image column size",
|
|
20441
|
-
description = "Controls how large the image/thumbnail column is at desktop breakpoints.",
|
|
20442
|
-
defaultValue = "1/3",
|
|
20443
|
-
uiIntent = "display",
|
|
20444
|
-
visibleWhen
|
|
20445
|
-
} = options;
|
|
20446
|
-
return {
|
|
20447
|
-
id,
|
|
20448
|
-
type: "select",
|
|
20449
|
-
label,
|
|
20450
|
-
description,
|
|
20451
|
-
required: false,
|
|
20452
|
-
defaultValue,
|
|
20453
|
-
multiple: false,
|
|
20454
|
-
options: [
|
|
20455
|
-
{ value: "1/4", label: "Small (1/4)" },
|
|
20456
|
-
{ value: "1/3", label: "Medium (1/3)" },
|
|
20457
|
-
{ value: "2/5", label: "Large (2/5)" },
|
|
20458
|
-
{ value: "1/2", label: "Extra large (1/2)" },
|
|
20459
|
-
{ value: "2/3", label: "Huge (2/3)" }
|
|
20460
|
-
],
|
|
20461
|
-
ui: {
|
|
20462
|
-
intent: uiIntent,
|
|
20463
|
-
...visibleWhen ? { visibleWhen } : {}
|
|
20464
|
-
}
|
|
20465
|
-
};
|
|
20466
|
-
}
|
|
20467
|
-
function createImagePositionField(options = {}) {
|
|
20468
|
-
const {
|
|
20469
|
-
id = "imagePosition",
|
|
20470
|
-
label = "Image position",
|
|
20471
|
-
description = "Choose which side the image appears on.",
|
|
20472
|
-
defaultValue = "left",
|
|
20473
|
-
includeAlternate = false,
|
|
20474
|
-
uiIntent = "display",
|
|
20475
|
-
visibleWhen
|
|
20476
|
-
} = options;
|
|
20477
|
-
const positionOptions = [
|
|
20478
|
-
{ value: "left", label: "Left" },
|
|
20479
|
-
{ value: "right", label: "Right" },
|
|
20480
|
-
...includeAlternate ? [{ value: "alternate", label: "Alternate" }] : []
|
|
20481
|
-
];
|
|
20482
|
-
return {
|
|
20483
|
-
id,
|
|
20484
|
-
type: "select",
|
|
20485
|
-
label,
|
|
20486
|
-
description,
|
|
20487
|
-
required: false,
|
|
20488
|
-
defaultValue,
|
|
20489
|
-
multiple: false,
|
|
20490
|
-
// Spread to get a mutable array type without unsafe casts.
|
|
20491
|
-
options: [...positionOptions],
|
|
20492
|
-
ui: {
|
|
20493
|
-
intent: uiIntent,
|
|
20494
|
-
...visibleWhen ? { visibleWhen } : {}
|
|
20495
|
-
}
|
|
20496
|
-
};
|
|
20497
|
-
}
|
|
20498
|
-
|
|
20499
22278
|
// ../blocks/src/system/blocks/media-text.ts
|
|
20500
22279
|
var mediaTextFrameCapability = defineFrameCapability([
|
|
20501
22280
|
"plain",
|
|
@@ -20619,26 +22398,13 @@ var mediaTextManifest = createBlockManifest({
|
|
|
20619
22398
|
},
|
|
20620
22399
|
ui: { intent: "behavior" }
|
|
20621
22400
|
}),
|
|
20622
|
-
{
|
|
22401
|
+
createAspectRatioField({
|
|
20623
22402
|
id: "aspectRatio",
|
|
20624
|
-
type: "select",
|
|
20625
22403
|
label: "Media aspect ratio",
|
|
20626
22404
|
description: "Crop media to a consistent aspect ratio.",
|
|
20627
|
-
required: false,
|
|
20628
22405
|
defaultValue: "auto",
|
|
20629
|
-
|
|
20630
|
-
|
|
20631
|
-
{ value: "auto", label: "Auto (original)" },
|
|
20632
|
-
{ value: "16/9", label: "16:9 (Landscape)" },
|
|
20633
|
-
{ value: "4/3", label: "4:3 (Standard)" },
|
|
20634
|
-
{ value: "1/1", label: "1:1 (Square)" },
|
|
20635
|
-
{ value: "3/4", label: "3:4 (Portrait)" }
|
|
20636
|
-
],
|
|
20637
|
-
ui: {
|
|
20638
|
-
intent: "display",
|
|
20639
|
-
visibleWhen: { field: "images", notEquals: null }
|
|
20640
|
-
}
|
|
20641
|
-
},
|
|
22406
|
+
visibleWhen: { field: "images", notEquals: null }
|
|
22407
|
+
}),
|
|
20642
22408
|
{
|
|
20643
22409
|
id: "text",
|
|
20644
22410
|
type: "richText",
|
|
@@ -20768,7 +22534,7 @@ var mediaTextManifest = createBlockManifest({
|
|
|
20768
22534
|
whenImagesLength(0)
|
|
20769
22535
|
);
|
|
20770
22536
|
const defaultInner = el("div", {}, [defaultImagesLayout, defaultTextOnlyLayout]);
|
|
20771
|
-
const
|
|
22537
|
+
const defaultLayout2 = styledSection({
|
|
20772
22538
|
children: styledContainer({
|
|
20773
22539
|
rootType: "stack",
|
|
20774
22540
|
rootProps: { gap: "lg" },
|
|
@@ -20800,9 +22566,9 @@ var mediaTextManifest = createBlockManifest({
|
|
|
20800
22566
|
spacing: "medium"
|
|
20801
22567
|
});
|
|
20802
22568
|
return {
|
|
20803
|
-
layout:
|
|
22569
|
+
layout: defaultLayout2,
|
|
20804
22570
|
variants: {
|
|
20805
|
-
default:
|
|
22571
|
+
default: defaultLayout2
|
|
20806
22572
|
},
|
|
20807
22573
|
defaultVariant: "default",
|
|
20808
22574
|
variantOptions: {
|
|
@@ -24202,7 +25968,7 @@ var embedBlockDefinition = {
|
|
|
24202
25968
|
};
|
|
24203
25969
|
|
|
24204
25970
|
// ../blocks/src/system/blocks/image-gallery.ts
|
|
24205
|
-
var
|
|
25971
|
+
var grid4 = (props2, children, ...mods) => el("grid", props2 ?? void 0, children ?? void 0, ...mods);
|
|
24206
25972
|
var galleryContainer = (children, opts) => {
|
|
24207
25973
|
const gap = opts?.gap ?? "md";
|
|
24208
25974
|
const withExtraClass = (baseClass) => opts?.className ? `${baseClass} ${opts.className}` : baseClass;
|
|
@@ -24282,7 +26048,7 @@ var galleryItem = (options) => stack(
|
|
|
24282
26048
|
],
|
|
24283
26049
|
repeat("content.images", "item")
|
|
24284
26050
|
);
|
|
24285
|
-
var gridLayout3 =
|
|
26051
|
+
var gridLayout3 = grid4(
|
|
24286
26052
|
{
|
|
24287
26053
|
className: "rb-grid rb-grid-cols-1 rb-gap-4 rb-sm-grid-cols-2 rb-md-grid-cols-3"
|
|
24288
26054
|
},
|
|
@@ -24885,7 +26651,7 @@ var imageGalleryBlockDefinition = {
|
|
|
24885
26651
|
};
|
|
24886
26652
|
|
|
24887
26653
|
// ../blocks/src/system/blocks/video-grid.ts
|
|
24888
|
-
var
|
|
26654
|
+
var grid5 = (props2, children, ...mods) => el("grid", props2 ?? void 0, children ?? void 0, ...mods);
|
|
24889
26655
|
var videoItem = (options) => stack(
|
|
24890
26656
|
{ gap: "xs", className: options.containerClassName },
|
|
24891
26657
|
[
|
|
@@ -24935,7 +26701,7 @@ var gridColumnsClass = (columns) => {
|
|
|
24935
26701
|
return "rb-grid rb-grid-cols-1 rb-gap-6 rb-sm-grid-cols-2 rb-md-grid-cols-3";
|
|
24936
26702
|
}
|
|
24937
26703
|
};
|
|
24938
|
-
var createGridLayout = (columns) =>
|
|
26704
|
+
var createGridLayout = (columns) => grid5(
|
|
24939
26705
|
{
|
|
24940
26706
|
className: gridColumnsClass(columns)
|
|
24941
26707
|
},
|
|
@@ -28099,6 +29865,40 @@ var systemBlockDefinitionsRaw = [
|
|
|
28099
29865
|
})
|
|
28100
29866
|
]
|
|
28101
29867
|
})),
|
|
29868
|
+
withDesignCapability("block.intro", introBlockDefinition, declareBlockDesignCapability({
|
|
29869
|
+
sectionSurfaces: "supported",
|
|
29870
|
+
contentFrames: ["plain", "panel"],
|
|
29871
|
+
itemSurfaces: "unsupported",
|
|
29872
|
+
headingDecorations: ["organic-squiggle"]
|
|
29873
|
+
}), defineBlockDesignMetadata({
|
|
29874
|
+
flow: bodyFlow,
|
|
29875
|
+
layoutProfiles: [
|
|
29876
|
+
layoutProfile({
|
|
29877
|
+
variantKey: "centered-copy",
|
|
29878
|
+
family: "centered",
|
|
29879
|
+
weight: "featured",
|
|
29880
|
+
bias: "soft"
|
|
29881
|
+
}),
|
|
29882
|
+
layoutProfile({
|
|
29883
|
+
variantKey: "statement-copy",
|
|
29884
|
+
family: "split",
|
|
29885
|
+
weight: "featured",
|
|
29886
|
+
bias: "merge"
|
|
29887
|
+
}),
|
|
29888
|
+
layoutProfile({
|
|
29889
|
+
variantKey: "statement-media",
|
|
29890
|
+
family: "media-text",
|
|
29891
|
+
weight: "featured",
|
|
29892
|
+
bias: "soft"
|
|
29893
|
+
}),
|
|
29894
|
+
layoutProfile({
|
|
29895
|
+
variantKey: "media-copy",
|
|
29896
|
+
family: "media-text",
|
|
29897
|
+
weight: "featured",
|
|
29898
|
+
bias: "soft"
|
|
29899
|
+
})
|
|
29900
|
+
]
|
|
29901
|
+
})),
|
|
28102
29902
|
withDesignCapability("block.body-text", bodyTextBlockDefinition, sectionOnly(), defineBlockDesignMetadata({
|
|
28103
29903
|
flow: bodyFlow,
|
|
28104
29904
|
layoutProfiles: [
|
|
@@ -28159,9 +29959,17 @@ var systemBlockDefinitionsRaw = [
|
|
|
28159
29959
|
flow: conversionFlow,
|
|
28160
29960
|
layoutProfiles: [layoutProfile({ variantKey: "default", family: "form", weight: "standard" })]
|
|
28161
29961
|
})),
|
|
28162
|
-
withDesignCapability("block.faq", faqBlockDefinition, withEyebrowCapability(
|
|
29962
|
+
withDesignCapability("block.faq", faqBlockDefinition, withEyebrowCapability(declareBlockDesignCapability({
|
|
29963
|
+
sectionSurfaces: "supported",
|
|
29964
|
+
contentFrames: ["plain", "panel"],
|
|
29965
|
+
itemSurfaces: "supported",
|
|
29966
|
+
accordionIconSets: ["plus", "chevron", "caret", "minimal-cross"]
|
|
29967
|
+
}), standardEyebrowTreatments), defineBlockDesignMetadata({
|
|
28163
29968
|
flow: bodyFlow,
|
|
28164
|
-
layoutProfiles: [
|
|
29969
|
+
layoutProfiles: [
|
|
29970
|
+
layoutProfile({ variantKey: "default", family: "stack", weight: "standard" }),
|
|
29971
|
+
layoutProfile({ variantKey: "two-column", family: "split", weight: "standard" })
|
|
29972
|
+
]
|
|
28165
29973
|
})),
|
|
28166
29974
|
withDesignCapability("block.site-header", siteHeaderBlockDefinition, declareNoBlockDesignCapability("site-chrome"), defineBlockDesignMetadata({
|
|
28167
29975
|
flow: siteChromeFlow,
|
|
@@ -28175,7 +29983,8 @@ var systemBlockDefinitionsRaw = [
|
|
|
28175
29983
|
sectionSurfaces: "supported",
|
|
28176
29984
|
contentFrames: ["plain", "panel"],
|
|
28177
29985
|
itemSurfaces: "supported",
|
|
28178
|
-
testimonialCardTreatments: ["default", "accent-quote"]
|
|
29986
|
+
testimonialCardTreatments: ["default", "accent-quote"],
|
|
29987
|
+
headingDecorations: ["short-center-rule"]
|
|
28179
29988
|
}), defineBlockDesignMetadata({
|
|
28180
29989
|
flow: proofFlow,
|
|
28181
29990
|
layoutProfiles: [
|
|
@@ -28201,6 +30010,22 @@ var systemBlockDefinitionsRaw = [
|
|
|
28201
30010
|
flow: offeringsFlow,
|
|
28202
30011
|
layoutProfiles: [layoutProfile({ variantKey: "default", family: "grid", weight: "standard" })]
|
|
28203
30012
|
})),
|
|
30013
|
+
withDesignCapability("block.feature-cards", featureCardsBlockDefinition, declareBlockDesignCapability({
|
|
30014
|
+
sectionSurfaces: "supported",
|
|
30015
|
+
contentFrames: ["plain", "panel"],
|
|
30016
|
+
itemSurfaces: "supported",
|
|
30017
|
+
headingDecorations: ["short-center-rule"]
|
|
30018
|
+
}), defineBlockDesignMetadata({
|
|
30019
|
+
flow: offeringsFlow,
|
|
30020
|
+
layoutProfiles: [
|
|
30021
|
+
layoutProfile({
|
|
30022
|
+
variantKey: "cards",
|
|
30023
|
+
family: "grid",
|
|
30024
|
+
weight: "standard",
|
|
30025
|
+
bias: "soft"
|
|
30026
|
+
})
|
|
30027
|
+
]
|
|
30028
|
+
})),
|
|
28204
30029
|
withDesignCapability("block.media-text", mediaTextBlockDefinition, mediaPanelCapable(), defineBlockDesignMetadata({
|
|
28205
30030
|
flow: mediaFlow,
|
|
28206
30031
|
layoutProfiles: [
|
|
@@ -31812,8 +33637,10 @@ import { z as z66 } from "zod";
|
|
|
31812
33637
|
var SYSTEM_BLOCK_KINDS = [
|
|
31813
33638
|
// Layout blocks
|
|
31814
33639
|
"block.hero",
|
|
33640
|
+
"block.intro",
|
|
31815
33641
|
"block.columns",
|
|
31816
33642
|
"block.collection",
|
|
33643
|
+
"block.feature-cards",
|
|
31817
33644
|
"block.media-text",
|
|
31818
33645
|
"block.cta-full",
|
|
31819
33646
|
"block.single-button",
|