@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/cli/index.mjs
CHANGED
|
@@ -830,6 +830,7 @@ var init_validation_constants = __esm({
|
|
|
830
830
|
"layout.headerRootClass",
|
|
831
831
|
"layout.footerRootClass",
|
|
832
832
|
"layout.headerRootStyle",
|
|
833
|
+
"layout.headerSectionBackground",
|
|
833
834
|
"layout.footerRootStyle",
|
|
834
835
|
// UI (ui.ts)
|
|
835
836
|
"ui.headerNavLinkClass",
|
|
@@ -1791,10 +1792,12 @@ function defineBlockDesignCapability(capability) {
|
|
|
1791
1792
|
imageSurfaceMotions: capability.imageSurfaceMotions ?? ["static"],
|
|
1792
1793
|
testimonialCardTreatments: capability.testimonialCardTreatments ?? ["default"],
|
|
1793
1794
|
tileTreatments: capability.tileTreatments ?? ["default"],
|
|
1794
|
-
eyebrowTreatments: capability.eyebrowTreatments ?? ["plain"]
|
|
1795
|
+
eyebrowTreatments: capability.eyebrowTreatments ?? ["plain"],
|
|
1796
|
+
...capability.headingDecorations ? { headingDecorations: capability.headingDecorations } : {},
|
|
1797
|
+
...capability.accordionIconSets ? { accordionIconSets: capability.accordionIconSets } : {}
|
|
1795
1798
|
};
|
|
1796
1799
|
}
|
|
1797
|
-
var plainFrame, tileTreatmentValues, eyebrowTreatmentValues;
|
|
1800
|
+
var plainFrame, tileTreatmentValues, eyebrowTreatmentValues, visibleHeadingDecorationFamilyValues, visibleHeadingDecorationPlacementValues, headingDecorationOverrideValues, headingDecorationColorTokenValues, accordionIconSetValues, accordionIconColorTokenValues, accordionIconMotionValues;
|
|
1798
1801
|
var init_types2 = __esm({
|
|
1799
1802
|
"../theme-core/src/site-styles/types.ts"() {
|
|
1800
1803
|
plainFrame = {
|
|
@@ -1812,6 +1815,47 @@ var init_types2 = __esm({
|
|
|
1812
1815
|
"pill-bounce",
|
|
1813
1816
|
"accent-pill-bounce"
|
|
1814
1817
|
];
|
|
1818
|
+
visibleHeadingDecorationFamilyValues = [
|
|
1819
|
+
"organic-squiggle",
|
|
1820
|
+
"short-center-rule"
|
|
1821
|
+
];
|
|
1822
|
+
visibleHeadingDecorationPlacementValues = [
|
|
1823
|
+
"after-heading",
|
|
1824
|
+
"between-heading-and-body",
|
|
1825
|
+
"under-centered-heading"
|
|
1826
|
+
];
|
|
1827
|
+
headingDecorationOverrideValues = [
|
|
1828
|
+
"site-default",
|
|
1829
|
+
"on",
|
|
1830
|
+
"off"
|
|
1831
|
+
];
|
|
1832
|
+
headingDecorationColorTokenValues = [
|
|
1833
|
+
"text",
|
|
1834
|
+
"primary",
|
|
1835
|
+
"secondary",
|
|
1836
|
+
"accent",
|
|
1837
|
+
"border",
|
|
1838
|
+
"muted"
|
|
1839
|
+
];
|
|
1840
|
+
accordionIconSetValues = [
|
|
1841
|
+
"plus",
|
|
1842
|
+
"chevron",
|
|
1843
|
+
"caret",
|
|
1844
|
+
"minimal-cross"
|
|
1845
|
+
];
|
|
1846
|
+
accordionIconColorTokenValues = [
|
|
1847
|
+
"text",
|
|
1848
|
+
"muted",
|
|
1849
|
+
"primary",
|
|
1850
|
+
"secondary",
|
|
1851
|
+
"accent",
|
|
1852
|
+
"current"
|
|
1853
|
+
];
|
|
1854
|
+
accordionIconMotionValues = [
|
|
1855
|
+
"none",
|
|
1856
|
+
"rotate",
|
|
1857
|
+
"swap"
|
|
1858
|
+
];
|
|
1815
1859
|
}
|
|
1816
1860
|
});
|
|
1817
1861
|
|
|
@@ -2007,6 +2051,25 @@ var init_blockAppearancePresets = __esm({
|
|
|
2007
2051
|
emphasis: "high"
|
|
2008
2052
|
}
|
|
2009
2053
|
}),
|
|
2054
|
+
defineBlockAppearancePreset({
|
|
2055
|
+
kind: "block-design",
|
|
2056
|
+
id: "intro-soft-earth-statement",
|
|
2057
|
+
target: "intro",
|
|
2058
|
+
label: "Soft Earth intro statement",
|
|
2059
|
+
blockKinds: ["block.intro"],
|
|
2060
|
+
design: {
|
|
2061
|
+
sectionSurface: "base",
|
|
2062
|
+
contentFrame: plainFrame,
|
|
2063
|
+
itemSurface: "none",
|
|
2064
|
+
transitionAfter: "soft-fade-short",
|
|
2065
|
+
emphasis: "high",
|
|
2066
|
+
headingDecoration: {
|
|
2067
|
+
family: "organic-squiggle",
|
|
2068
|
+
placement: "after-heading",
|
|
2069
|
+
colorToken: "primary"
|
|
2070
|
+
}
|
|
2071
|
+
}
|
|
2072
|
+
}),
|
|
2010
2073
|
defineBlockAppearancePreset({
|
|
2011
2074
|
kind: "block-design",
|
|
2012
2075
|
id: "offerings-calm-list",
|
|
@@ -2021,6 +2084,25 @@ var init_blockAppearancePresets = __esm({
|
|
|
2021
2084
|
emphasis: "medium"
|
|
2022
2085
|
}
|
|
2023
2086
|
}),
|
|
2087
|
+
defineBlockAppearancePreset({
|
|
2088
|
+
kind: "block-design",
|
|
2089
|
+
id: "feature-cards-soft-earth-offerings",
|
|
2090
|
+
target: "feature-cards",
|
|
2091
|
+
label: "Soft Earth offering cards",
|
|
2092
|
+
blockKinds: ["block.feature-cards"],
|
|
2093
|
+
design: {
|
|
2094
|
+
sectionSurface: "base",
|
|
2095
|
+
contentFrame: plainFrame,
|
|
2096
|
+
itemSurface: "raised",
|
|
2097
|
+
transitionAfter: "none",
|
|
2098
|
+
emphasis: "high",
|
|
2099
|
+
headingDecoration: {
|
|
2100
|
+
family: "short-center-rule",
|
|
2101
|
+
placement: "under-centered-heading",
|
|
2102
|
+
colorToken: "primary"
|
|
2103
|
+
}
|
|
2104
|
+
}
|
|
2105
|
+
}),
|
|
2024
2106
|
defineBlockAppearancePreset({
|
|
2025
2107
|
kind: "block-design",
|
|
2026
2108
|
id: "events-base-calendar",
|
|
@@ -2149,6 +2231,26 @@ var init_blockAppearancePresets = __esm({
|
|
|
2149
2231
|
testimonialCardTreatment: "accent-quote"
|
|
2150
2232
|
}
|
|
2151
2233
|
}),
|
|
2234
|
+
defineBlockAppearancePreset({
|
|
2235
|
+
kind: "block-design",
|
|
2236
|
+
id: "testimonials-soft-earth-proof-band",
|
|
2237
|
+
target: "testimonials",
|
|
2238
|
+
label: "Soft Earth proof band",
|
|
2239
|
+
blockKinds: ["block.testimonials"],
|
|
2240
|
+
design: {
|
|
2241
|
+
sectionSurface: "brand-depth-band",
|
|
2242
|
+
contentFrame: plainFrame,
|
|
2243
|
+
itemSurface: "none",
|
|
2244
|
+
transitionAfter: "soft-fade-short",
|
|
2245
|
+
emphasis: "high",
|
|
2246
|
+
testimonialCardTreatment: "accent-quote",
|
|
2247
|
+
headingDecoration: {
|
|
2248
|
+
family: "short-center-rule",
|
|
2249
|
+
placement: "under-centered-heading",
|
|
2250
|
+
colorToken: "border"
|
|
2251
|
+
}
|
|
2252
|
+
}
|
|
2253
|
+
}),
|
|
2152
2254
|
defineBlockAppearancePreset({
|
|
2153
2255
|
kind: "block-design",
|
|
2154
2256
|
id: "faq-base-accordion",
|
|
@@ -2177,6 +2279,25 @@ var init_blockAppearancePresets = __esm({
|
|
|
2177
2279
|
emphasis: "low"
|
|
2178
2280
|
}
|
|
2179
2281
|
}),
|
|
2282
|
+
defineBlockAppearancePreset({
|
|
2283
|
+
kind: "block-design",
|
|
2284
|
+
id: "faq-soft-earth-two-column",
|
|
2285
|
+
target: "faq",
|
|
2286
|
+
label: "Soft Earth two-column FAQ",
|
|
2287
|
+
blockKinds: ["block.faq"],
|
|
2288
|
+
design: {
|
|
2289
|
+
sectionSurface: "base",
|
|
2290
|
+
contentFrame: plainFrame,
|
|
2291
|
+
itemSurface: "flat",
|
|
2292
|
+
transitionAfter: "none",
|
|
2293
|
+
emphasis: "medium",
|
|
2294
|
+
accordionIconTreatment: {
|
|
2295
|
+
iconSet: "plus",
|
|
2296
|
+
colorToken: "primary",
|
|
2297
|
+
motion: "swap"
|
|
2298
|
+
}
|
|
2299
|
+
}
|
|
2300
|
+
}),
|
|
2180
2301
|
defineBlockAppearancePreset({
|
|
2181
2302
|
kind: "block-design",
|
|
2182
2303
|
id: "contact-form-panel",
|
|
@@ -2947,6 +3068,103 @@ var init_confident_chip = __esm({
|
|
|
2947
3068
|
}
|
|
2948
3069
|
});
|
|
2949
3070
|
|
|
3071
|
+
// ../theme-core/src/buttons/personalities/earth-pill.ts
|
|
3072
|
+
var earthPill;
|
|
3073
|
+
var init_earth_pill = __esm({
|
|
3074
|
+
"../theme-core/src/buttons/personalities/earth-pill.ts"() {
|
|
3075
|
+
init_types4();
|
|
3076
|
+
earthPill = defineButtonPersonality({
|
|
3077
|
+
id: "earth-pill",
|
|
3078
|
+
name: "Earth Pill",
|
|
3079
|
+
description: "Compact terracotta pills with quiet primary-coloured ghost CTAs.",
|
|
3080
|
+
tags: { tone: "classic", energy: "calm", motion: "subtle", era: "organic" },
|
|
3081
|
+
buttonSystem: {
|
|
3082
|
+
global: {
|
|
3083
|
+
cornerStyle: "pill",
|
|
3084
|
+
shadow: "low",
|
|
3085
|
+
textTransform: "none",
|
|
3086
|
+
fontWeight: 500,
|
|
3087
|
+
borderWidth: 1,
|
|
3088
|
+
hoverTransform: "lift",
|
|
3089
|
+
hoverColor: "none",
|
|
3090
|
+
typography: "body",
|
|
3091
|
+
paddingPreset: "default"
|
|
3092
|
+
},
|
|
3093
|
+
sizes: {
|
|
3094
|
+
sm: { padding: "0.5rem 1rem", fontSize: "text-sm" },
|
|
3095
|
+
md: { padding: "0.625rem 1.35rem" },
|
|
3096
|
+
lg: { padding: "0.75rem 1.65rem", fontSize: "text-lg" },
|
|
3097
|
+
xl: { padding: "0.875rem 2rem", fontSize: "text-xl" }
|
|
3098
|
+
},
|
|
3099
|
+
variants: [
|
|
3100
|
+
{
|
|
3101
|
+
id: "primary",
|
|
3102
|
+
name: "Primary",
|
|
3103
|
+
enabled: true,
|
|
3104
|
+
priority: 1,
|
|
3105
|
+
background: { type: "solid", colorToken: "primary" },
|
|
3106
|
+
textColorToken: "primaryForeground",
|
|
3107
|
+
borderRadius: "rounded-full",
|
|
3108
|
+
shadow: { elevation: "low", softness: "soft", position: "bottom" },
|
|
3109
|
+
effects: {
|
|
3110
|
+
hover: [
|
|
3111
|
+
{ effectId: "lift", options: { translateY: "-1px" } },
|
|
3112
|
+
{ effectId: "background-on-hover", options: { colorToken: "accent" } }
|
|
3113
|
+
],
|
|
3114
|
+
active: [{ effectId: "scale-down", options: { scale: "0.98" } }]
|
|
3115
|
+
}
|
|
3116
|
+
},
|
|
3117
|
+
{
|
|
3118
|
+
id: "secondary",
|
|
3119
|
+
name: "Secondary",
|
|
3120
|
+
enabled: true,
|
|
3121
|
+
priority: 2,
|
|
3122
|
+
background: { type: "transparent" },
|
|
3123
|
+
textColorToken: "primary",
|
|
3124
|
+
borderRadius: "rounded-full",
|
|
3125
|
+
border: { widthClass: "border", colorToken: "primary" },
|
|
3126
|
+
effects: {
|
|
3127
|
+
hover: [{ effectId: "background-on-hover", options: { colorToken: "muted" } }]
|
|
3128
|
+
}
|
|
3129
|
+
},
|
|
3130
|
+
{
|
|
3131
|
+
id: "outline",
|
|
3132
|
+
name: "Outline",
|
|
3133
|
+
enabled: true,
|
|
3134
|
+
priority: 3,
|
|
3135
|
+
background: { type: "transparent" },
|
|
3136
|
+
textColorToken: "text",
|
|
3137
|
+
borderRadius: "rounded-full",
|
|
3138
|
+
border: { widthClass: "border", colorToken: "border" },
|
|
3139
|
+
effects: {
|
|
3140
|
+
hover: [{ effectId: "background-on-hover", options: { colorToken: "surfaceAlt" } }]
|
|
3141
|
+
}
|
|
3142
|
+
},
|
|
3143
|
+
{
|
|
3144
|
+
id: "ghost",
|
|
3145
|
+
name: "Ghost",
|
|
3146
|
+
enabled: true,
|
|
3147
|
+
priority: 3,
|
|
3148
|
+
background: { type: "transparent" },
|
|
3149
|
+
textColorToken: "primary",
|
|
3150
|
+
borderRadius: "rounded-full",
|
|
3151
|
+
shadow: { elevation: "none", softness: null, position: "bottom" },
|
|
3152
|
+
sizes: {
|
|
3153
|
+
sm: { padding: "0.25rem 0", fontSize: "text-sm" },
|
|
3154
|
+
md: { padding: "0.375rem 0" },
|
|
3155
|
+
lg: { padding: "0.5rem 0", fontSize: "text-lg" },
|
|
3156
|
+
xl: { padding: "0.625rem 0", fontSize: "text-xl" }
|
|
3157
|
+
},
|
|
3158
|
+
effects: {
|
|
3159
|
+
hover: [{ effectId: "opacity-reduce", options: { reduction: 25 } }]
|
|
3160
|
+
}
|
|
3161
|
+
}
|
|
3162
|
+
]
|
|
3163
|
+
}
|
|
3164
|
+
});
|
|
3165
|
+
}
|
|
3166
|
+
});
|
|
3167
|
+
|
|
2950
3168
|
// ../theme-core/src/buttons/personalities/editorial-link.ts
|
|
2951
3169
|
var editorialLink;
|
|
2952
3170
|
var init_editorial_link = __esm({
|
|
@@ -3441,6 +3659,7 @@ var init_personalities = __esm({
|
|
|
3441
3659
|
"../theme-core/src/buttons/personalities/index.ts"() {
|
|
3442
3660
|
init_brushed_wash();
|
|
3443
3661
|
init_confident_chip();
|
|
3662
|
+
init_earth_pill();
|
|
3444
3663
|
init_editorial_link();
|
|
3445
3664
|
init_ink_stamp();
|
|
3446
3665
|
init_pebble();
|
|
@@ -3449,6 +3668,7 @@ var init_personalities = __esm({
|
|
|
3449
3668
|
init_types4();
|
|
3450
3669
|
buttonPersonalities = [
|
|
3451
3670
|
softPill,
|
|
3671
|
+
earthPill,
|
|
3452
3672
|
confidentChip,
|
|
3453
3673
|
editorialLink,
|
|
3454
3674
|
pebble,
|
|
@@ -4286,7 +4506,7 @@ var init_tokenOrColor = __esm({
|
|
|
4286
4506
|
]);
|
|
4287
4507
|
}
|
|
4288
4508
|
});
|
|
4289
|
-
var axesSchema, colourHexString, paletteColorSchema, paletteMetaSchema, paletteSchema, typographyStyleSchema, bodyTypographyStyleSchema, headingSizeSchema, headingTypographyOverridesSchema, headingTypographyStyleSchema, proseLinkUnderlineStyleSchema, proseLinkUnderlineThicknessSchema, proseLinkUnderlineOffsetSchema, proseLinkStyleSchema, semanticSpacingSchema, boxRoundedSchema, boxBackgroundOverlaySchema, boxBackgroundSchema, sectionStylesOverrideSchema, containerStylesOverrideSchema, cardBorderOverrideSchema, cardStylesOverrideSchema, blockStyleOverridesSchema, blockThemeOverrideSchema, typographyScaleSchema, typographySchema, spaceSchema, corners, shadow, border, motion, inputStyle, headerVariant, headerPositioning, headerNavStyle, navFontWeight, headerMaxWidth, headerContainerSchema, headerBorderSchema, logoStyleSchema, headerLogoTextSchema, navEffectsSchema, dropdownStyleSchema, headerCtaGapSchema, headerCtaTreatmentSchema, navContainerSchema, headerBackgroundSchema, headerSchema, footerVariant, footerMaxWidth, footerMode, footerNavLayoutMode, footerNavLayoutAlign, footerSpacing, footerLogoPlacement, footerLogoSize, footerLogoMaxHeight, footerBottomTextLinkStyleSchema, footerBottomBarSchema, footerNavLayoutSchema, footerLogoSchema, footerSchema, containerPaddingPresetSchema, layoutSchema, heroTypographySizeSchema, heroTypographyLineHeightSchema, heroResponsiveTypographySchema, heroTypographySchema, heroSchema, bodyTextIntroTypographySizeSchema, bodyTextSchema, gradientsSchema, themeSchema;
|
|
4509
|
+
var axesSchema, colourHexString, paletteColorSchema, paletteMetaSchema, paletteSchema, typographyStyleSchema, bodyTypographyStyleSchema, headingSizeSchema, headingTypographyOverridesSchema, headingTypographyStyleSchema, proseLinkUnderlineStyleSchema, proseLinkUnderlineThicknessSchema, proseLinkUnderlineOffsetSchema, proseLinkStyleSchema, semanticSpacingSchema, boxRoundedSchema, boxBackgroundOverlaySchema, boxBackgroundSchema, noHeadingDecorationSchema, visibleHeadingDecorationSchema, headingDecorationSchema, accordionIconTreatmentSchema, sectionStylesOverrideSchema, containerStylesOverrideSchema, cardBorderOverrideSchema, cardStylesOverrideSchema, blockStyleOverridesSchema, blockThemeOverrideSchema, typographyScaleSchema, typographySchema, spaceSchema, corners, shadow, border, motion, inputStyle, headerVariant, headerPositioning, headerNavStyle, navFontWeight, headerMaxWidth, headerContainerSchema, headerBorderSchema, logoStyleSchema, headerLogoTextSchema, navEffectsSchema, dropdownStyleSchema, headerCtaGapSchema, headerCtaTreatmentSchema, navContainerSchema, headerBackgroundSchema, headerSchema, footerVariant, footerMaxWidth, footerMode, footerNavLayoutMode, footerNavLayoutAlign, footerSpacing, footerLogoPlacement, footerLogoSize, footerLogoMaxHeight, footerBottomTextLinkStyleSchema, footerBottomBarSchema, footerNavLayoutSchema, footerLogoSchema, footerSchema, containerPaddingPresetSchema, layoutSchema, heroTypographySizeSchema, heroTypographyLineHeightSchema, heroResponsiveTypographySchema, heroTypographySchema, heroSchema, bodyTextIntroTypographySizeSchema, bodyTextSchema, gradientsSchema, themeSchema;
|
|
4290
4510
|
var init_schema3 = __esm({
|
|
4291
4511
|
"../theme-core/src/schema.ts"() {
|
|
4292
4512
|
init_media();
|
|
@@ -4346,8 +4566,19 @@ var init_schema3 = __esm({
|
|
|
4346
4566
|
colorToken: themeColorTokenSchema.nullable().optional()
|
|
4347
4567
|
});
|
|
4348
4568
|
proseLinkUnderlineStyleSchema = z.enum(["solid", "dotted", "dashed"]);
|
|
4349
|
-
proseLinkUnderlineThicknessSchema = z.enum([
|
|
4350
|
-
|
|
4569
|
+
proseLinkUnderlineThicknessSchema = z.enum([
|
|
4570
|
+
"auto",
|
|
4571
|
+
"fromFont",
|
|
4572
|
+
"thin",
|
|
4573
|
+
"medium",
|
|
4574
|
+
"thick"
|
|
4575
|
+
]);
|
|
4576
|
+
proseLinkUnderlineOffsetSchema = z.enum([
|
|
4577
|
+
"auto",
|
|
4578
|
+
"tight",
|
|
4579
|
+
"normal",
|
|
4580
|
+
"loose"
|
|
4581
|
+
]);
|
|
4351
4582
|
proseLinkStyleSchema = z.object({
|
|
4352
4583
|
colorToken: themeColorTokenSchema.optional(),
|
|
4353
4584
|
hoverColorToken: themeColorTokenSchema.optional(),
|
|
@@ -4358,7 +4589,14 @@ var init_schema3 = __esm({
|
|
|
4358
4589
|
underlineThickness: proseLinkUnderlineThicknessSchema.optional(),
|
|
4359
4590
|
underlineOffset: proseLinkUnderlineOffsetSchema.optional()
|
|
4360
4591
|
});
|
|
4361
|
-
semanticSpacingSchema = z.enum([
|
|
4592
|
+
semanticSpacingSchema = z.enum([
|
|
4593
|
+
"none",
|
|
4594
|
+
"compact",
|
|
4595
|
+
"cozy",
|
|
4596
|
+
"medium",
|
|
4597
|
+
"comfortable",
|
|
4598
|
+
"spacious"
|
|
4599
|
+
]);
|
|
4362
4600
|
boxRoundedSchema = z.enum(["none", "sm", "md", "lg", "xl", "2xl", "full"]);
|
|
4363
4601
|
boxBackgroundOverlaySchema = z.object({
|
|
4364
4602
|
type: z.enum(["none", "color", "gradient"]).nullable().optional(),
|
|
@@ -4380,12 +4618,36 @@ var init_schema3 = __esm({
|
|
|
4380
4618
|
textColor: tokenOrCssColorValueSchema.nullable().optional(),
|
|
4381
4619
|
headingColor: tokenOrCssColorValueSchema.nullable().optional()
|
|
4382
4620
|
});
|
|
4621
|
+
noHeadingDecorationSchema = z.object({
|
|
4622
|
+
family: z.literal("none"),
|
|
4623
|
+
placement: z.literal("none")
|
|
4624
|
+
});
|
|
4625
|
+
visibleHeadingDecorationSchema = z.object({
|
|
4626
|
+
family: z.enum(visibleHeadingDecorationFamilyValues),
|
|
4627
|
+
placement: z.enum(visibleHeadingDecorationPlacementValues),
|
|
4628
|
+
colorToken: z.enum(headingDecorationColorTokenValues).optional()
|
|
4629
|
+
});
|
|
4630
|
+
headingDecorationSchema = z.union([
|
|
4631
|
+
noHeadingDecorationSchema,
|
|
4632
|
+
visibleHeadingDecorationSchema
|
|
4633
|
+
]);
|
|
4634
|
+
accordionIconTreatmentSchema = z.object({
|
|
4635
|
+
iconSet: z.enum(accordionIconSetValues),
|
|
4636
|
+
colorToken: z.enum(accordionIconColorTokenValues),
|
|
4637
|
+
openColorToken: z.enum(accordionIconColorTokenValues).optional(),
|
|
4638
|
+
motion: z.enum(accordionIconMotionValues)
|
|
4639
|
+
});
|
|
4383
4640
|
sectionStylesOverrideSchema = z.object({
|
|
4384
4641
|
background: boxBackgroundSchema.nullable().optional(),
|
|
4385
4642
|
spacing: semanticSpacingSchema.nullable().optional(),
|
|
4386
4643
|
minHeight: z.enum(["none", "banner", "hero", "immersive"]).nullable().optional(),
|
|
4387
4644
|
tileTreatment: z.enum(tileTreatmentValues).nullable().optional(),
|
|
4388
|
-
eyebrowTreatment: z.enum(eyebrowTreatmentValues).nullable().optional()
|
|
4645
|
+
eyebrowTreatment: z.enum(eyebrowTreatmentValues).nullable().optional(),
|
|
4646
|
+
headingDecoration: headingDecorationSchema.nullable().optional(),
|
|
4647
|
+
// Author-level override consumed by later block/editor rendering phases.
|
|
4648
|
+
// Keeping it in section styles lets existing block save APIs persist it.
|
|
4649
|
+
headingDecorationOverride: z.enum(headingDecorationOverrideValues).nullable().optional(),
|
|
4650
|
+
accordionIconTreatment: accordionIconTreatmentSchema.nullable().optional()
|
|
4389
4651
|
});
|
|
4390
4652
|
containerStylesOverrideSchema = z.object({
|
|
4391
4653
|
background: boxBackgroundSchema.nullable().optional(),
|
|
@@ -4478,9 +4740,17 @@ var init_schema3 = __esm({
|
|
|
4478
4740
|
focus: z.enum(["glow", "ring", "underline"]),
|
|
4479
4741
|
label: z.enum(["inside", "above"])
|
|
4480
4742
|
});
|
|
4481
|
-
headerVariant = z.enum(["classic", "centered", "transparent", "floating"
|
|
4743
|
+
headerVariant = z.enum(["classic", "centered", "transparent", "floating"]);
|
|
4482
4744
|
headerPositioning = z.enum(["static", "sticky", "fixed"]);
|
|
4483
|
-
headerNavStyle = z.enum([
|
|
4745
|
+
headerNavStyle = z.enum([
|
|
4746
|
+
"minimal",
|
|
4747
|
+
"underline",
|
|
4748
|
+
"underline-grow",
|
|
4749
|
+
"capsule",
|
|
4750
|
+
"scale",
|
|
4751
|
+
"frosted",
|
|
4752
|
+
"solid"
|
|
4753
|
+
]);
|
|
4484
4754
|
navFontWeight = z.enum(["regular", "medium", "semibold", "bold"]);
|
|
4485
4755
|
headerMaxWidth = z.enum(["container", "full"]);
|
|
4486
4756
|
headerContainerSchema = z.object({
|
|
@@ -4528,8 +4798,22 @@ var init_schema3 = __esm({
|
|
|
4528
4798
|
textSize: z.enum(["xs", "sm", "base", "lg"]).optional()
|
|
4529
4799
|
// optional = no override (browser default)
|
|
4530
4800
|
}).optional();
|
|
4531
|
-
headerCtaGapSchema = z.enum([
|
|
4532
|
-
|
|
4801
|
+
headerCtaGapSchema = z.enum([
|
|
4802
|
+
"none",
|
|
4803
|
+
"tight",
|
|
4804
|
+
"compact",
|
|
4805
|
+
"default",
|
|
4806
|
+
"relaxed",
|
|
4807
|
+
"spacious"
|
|
4808
|
+
]);
|
|
4809
|
+
headerCtaTreatmentSchema = z.enum([
|
|
4810
|
+
"default",
|
|
4811
|
+
"primary",
|
|
4812
|
+
"secondary",
|
|
4813
|
+
"inverted",
|
|
4814
|
+
"outline",
|
|
4815
|
+
"ghost"
|
|
4816
|
+
]);
|
|
4533
4817
|
navContainerSchema = z.object({
|
|
4534
4818
|
type: z.enum(["none", "pill", "glass"]).default("none"),
|
|
4535
4819
|
tint: z.string().nullable().optional(),
|
|
@@ -4584,7 +4868,14 @@ var init_schema3 = __esm({
|
|
|
4584
4868
|
footerMode = z.enum(["default", "blocks", "default+blocks", "none"]);
|
|
4585
4869
|
footerNavLayoutMode = z.enum(["stack", "inline", "inline-wrap"]);
|
|
4586
4870
|
footerNavLayoutAlign = z.enum(["start", "center", "end", "space-between"]);
|
|
4587
|
-
footerSpacing = z.enum([
|
|
4871
|
+
footerSpacing = z.enum([
|
|
4872
|
+
"none",
|
|
4873
|
+
"tight",
|
|
4874
|
+
"compact",
|
|
4875
|
+
"default",
|
|
4876
|
+
"relaxed",
|
|
4877
|
+
"spacious"
|
|
4878
|
+
]);
|
|
4588
4879
|
footerLogoPlacement = z.enum(["left", "right", "above", "below"]);
|
|
4589
4880
|
footerLogoSize = z.enum(["sm", "md", "lg", "xl"]);
|
|
4590
4881
|
footerLogoMaxHeight = z.enum(["sm", "md", "lg", "xl"]);
|
|
@@ -4649,7 +4940,12 @@ var init_schema3 = __esm({
|
|
|
4649
4940
|
logo: footerLogoSchema.optional(),
|
|
4650
4941
|
bottomBar: footerBottomBarSchema.optional()
|
|
4651
4942
|
});
|
|
4652
|
-
containerPaddingPresetSchema = z.enum([
|
|
4943
|
+
containerPaddingPresetSchema = z.enum([
|
|
4944
|
+
"tight",
|
|
4945
|
+
"compact",
|
|
4946
|
+
"default",
|
|
4947
|
+
"relaxed"
|
|
4948
|
+
]);
|
|
4653
4949
|
layoutSchema = z.object({
|
|
4654
4950
|
containerPadding: z.object({
|
|
4655
4951
|
mobile: containerPaddingPresetSchema.optional(),
|
|
@@ -4657,8 +4953,24 @@ var init_schema3 = __esm({
|
|
|
4657
4953
|
desktop: containerPaddingPresetSchema.optional()
|
|
4658
4954
|
}).optional()
|
|
4659
4955
|
}).optional();
|
|
4660
|
-
heroTypographySizeSchema = z.enum([
|
|
4661
|
-
|
|
4956
|
+
heroTypographySizeSchema = z.enum([
|
|
4957
|
+
"sm",
|
|
4958
|
+
"base",
|
|
4959
|
+
"lg",
|
|
4960
|
+
"xl",
|
|
4961
|
+
"2xl",
|
|
4962
|
+
"3xl",
|
|
4963
|
+
"4xl",
|
|
4964
|
+
"5xl",
|
|
4965
|
+
"6xl",
|
|
4966
|
+
"editorial"
|
|
4967
|
+
]);
|
|
4968
|
+
heroTypographyLineHeightSchema = z.enum([
|
|
4969
|
+
"tight",
|
|
4970
|
+
"snug",
|
|
4971
|
+
"normal",
|
|
4972
|
+
"relaxed"
|
|
4973
|
+
]);
|
|
4662
4974
|
heroResponsiveTypographySchema = z.object({
|
|
4663
4975
|
headlineSize: heroTypographySizeSchema.optional(),
|
|
4664
4976
|
headlineLineHeight: heroTypographyLineHeightSchema.optional(),
|
|
@@ -5075,7 +5387,7 @@ var init_soft_natural = __esm({
|
|
|
5075
5387
|
});
|
|
5076
5388
|
|
|
5077
5389
|
// ../theme-core/src/palette/variants/warm-neutral.ts
|
|
5078
|
-
var warmNeutralClay, warmNeutralCream, warmNeutralForest;
|
|
5390
|
+
var warmNeutralClay, warmNeutralCream, warmNeutralSoftEarth, warmNeutralForest;
|
|
5079
5391
|
var init_warm_neutral = __esm({
|
|
5080
5392
|
"../theme-core/src/palette/variants/warm-neutral.ts"() {
|
|
5081
5393
|
init_types11();
|
|
@@ -5123,6 +5435,28 @@ var init_warm_neutral = __esm({
|
|
|
5123
5435
|
{ name: "border", hex: "#e0d2b8" }
|
|
5124
5436
|
]
|
|
5125
5437
|
});
|
|
5438
|
+
warmNeutralSoftEarth = definePaletteVariant({
|
|
5439
|
+
id: "warm-neutral-soft-earth",
|
|
5440
|
+
name: "Warm Neutral \u2014 Soft Earth",
|
|
5441
|
+
description: "Cream ground with terracotta primary, clay accents, and olive depth.",
|
|
5442
|
+
tags: { tone: "classic", energy: "calm", era: "organic" },
|
|
5443
|
+
mode: "light",
|
|
5444
|
+
colors: [
|
|
5445
|
+
{ name: "primary", hex: "#a8573d" },
|
|
5446
|
+
{ name: "secondary", hex: "#72765c" },
|
|
5447
|
+
{ name: "accent", hex: "#c87557" },
|
|
5448
|
+
{ name: "success", hex: "#687854" },
|
|
5449
|
+
{ name: "warning", hex: "#b7863e" },
|
|
5450
|
+
{ name: "destructive", hex: "#a54b3c" },
|
|
5451
|
+
{ name: "background", hex: "#fbf6eb" },
|
|
5452
|
+
{ name: "surface", hex: "#fffdf7" },
|
|
5453
|
+
{ name: "surfaceAlt", hex: "#f0e4d3" },
|
|
5454
|
+
{ name: "muted", hex: "#eadbc6" },
|
|
5455
|
+
{ name: "text", hex: "#30281f" },
|
|
5456
|
+
{ name: "primaryForeground", hex: "#fffaf3" },
|
|
5457
|
+
{ name: "border", hex: "#d9c8b2" }
|
|
5458
|
+
]
|
|
5459
|
+
});
|
|
5126
5460
|
warmNeutralForest = definePaletteVariant({
|
|
5127
5461
|
id: "warm-neutral-forest",
|
|
5128
5462
|
name: "Warm Neutral \u2014 Forest",
|
|
@@ -5169,6 +5503,7 @@ var init_variants = __esm({
|
|
|
5169
5503
|
// Warm-neutral family
|
|
5170
5504
|
warmNeutralClay,
|
|
5171
5505
|
warmNeutralCream,
|
|
5506
|
+
warmNeutralSoftEarth,
|
|
5172
5507
|
warmNeutralForest,
|
|
5173
5508
|
// High-contrast family
|
|
5174
5509
|
highContrastInk,
|
|
@@ -5196,6 +5531,12 @@ var init_customizableSurfaces = __esm({
|
|
|
5196
5531
|
function asHeaderLookId(value) {
|
|
5197
5532
|
return value;
|
|
5198
5533
|
}
|
|
5534
|
+
function asHeaderLayoutId(value) {
|
|
5535
|
+
return value;
|
|
5536
|
+
}
|
|
5537
|
+
function asHeaderStyleId(value) {
|
|
5538
|
+
return value;
|
|
5539
|
+
}
|
|
5199
5540
|
function baseHeader(theme) {
|
|
5200
5541
|
const {
|
|
5201
5542
|
navLinkStyle: _navLinkStyle,
|
|
@@ -5214,6 +5555,39 @@ function baseHeader(theme) {
|
|
|
5214
5555
|
navContainer: { type: "none", tint: null, opacity: 0.15 }
|
|
5215
5556
|
};
|
|
5216
5557
|
}
|
|
5558
|
+
function supportedLayouts(ids) {
|
|
5559
|
+
return ids.map(asHeaderLayoutId);
|
|
5560
|
+
}
|
|
5561
|
+
function headerStyleRepairChain(values) {
|
|
5562
|
+
return values.map(asHeaderStyleId);
|
|
5563
|
+
}
|
|
5564
|
+
function getHeaderLayout(id) {
|
|
5565
|
+
return headerLayoutsById.get(id) ?? null;
|
|
5566
|
+
}
|
|
5567
|
+
function getHeaderStyle(id) {
|
|
5568
|
+
return headerStylesById.get(id) ?? null;
|
|
5569
|
+
}
|
|
5570
|
+
function isHeaderStyleCompatibleWithLayout(style, layoutId) {
|
|
5571
|
+
return style.supportedLayoutIds.includes(layoutId);
|
|
5572
|
+
}
|
|
5573
|
+
function getHeaderStyleOrThrow(id) {
|
|
5574
|
+
const style = getHeaderStyle(id);
|
|
5575
|
+
if (!style) {
|
|
5576
|
+
throw new Error(`Unknown Theme V2 header style: ${id}`);
|
|
5577
|
+
}
|
|
5578
|
+
return style;
|
|
5579
|
+
}
|
|
5580
|
+
function resolveLegacyHeaderLookAlias(lookId) {
|
|
5581
|
+
return legacyHeaderLookAliasesById.get(lookId)?.selection ?? null;
|
|
5582
|
+
}
|
|
5583
|
+
function getCompatibleHeaderStyleIds(layoutId) {
|
|
5584
|
+
return (headerStyleCompatibilityOrder.get(layoutId) ?? []).filter(
|
|
5585
|
+
(styleId) => {
|
|
5586
|
+
const style = getHeaderStyleOrThrow(styleId);
|
|
5587
|
+
return isHeaderStyleCompatibleWithLayout(style, layoutId);
|
|
5588
|
+
}
|
|
5589
|
+
);
|
|
5590
|
+
}
|
|
5217
5591
|
function solidBrandHeader(theme) {
|
|
5218
5592
|
const ctaVariant = resolveHeaderCtaVariant(theme, "inverted");
|
|
5219
5593
|
return {
|
|
@@ -5243,8 +5617,14 @@ function solidBrandHeader(theme) {
|
|
|
5243
5617
|
borderRadius: "none",
|
|
5244
5618
|
effects: {
|
|
5245
5619
|
hover: [
|
|
5246
|
-
{
|
|
5247
|
-
|
|
5620
|
+
{
|
|
5621
|
+
effectId: "text-color-change",
|
|
5622
|
+
options: { hoverColorToken: "secondary" }
|
|
5623
|
+
},
|
|
5624
|
+
{
|
|
5625
|
+
effectId: "nav-underline",
|
|
5626
|
+
options: { style: "grow", colorToken: "secondary" }
|
|
5627
|
+
}
|
|
5248
5628
|
]
|
|
5249
5629
|
}
|
|
5250
5630
|
},
|
|
@@ -5300,10 +5680,10 @@ function cleanBaseHeader(theme) {
|
|
|
5300
5680
|
ctaGap: "default"
|
|
5301
5681
|
};
|
|
5302
5682
|
}
|
|
5303
|
-
function
|
|
5683
|
+
function serifLineHeader(theme) {
|
|
5304
5684
|
return {
|
|
5305
5685
|
...baseHeader(theme),
|
|
5306
|
-
variant: "
|
|
5686
|
+
variant: "centered",
|
|
5307
5687
|
positioning: "sticky",
|
|
5308
5688
|
shrinkOnScroll: false,
|
|
5309
5689
|
background: {
|
|
@@ -5444,21 +5824,353 @@ function floatingGlassHeader(theme) {
|
|
|
5444
5824
|
}
|
|
5445
5825
|
};
|
|
5446
5826
|
}
|
|
5827
|
+
function headerConfigurationKey(configuration) {
|
|
5828
|
+
return `${configuration.structure}:${configuration.treatment}:${configuration.behavior}`;
|
|
5829
|
+
}
|
|
5447
5830
|
function findHeaderLook(id) {
|
|
5448
5831
|
return headerLooksById.get(id);
|
|
5449
5832
|
}
|
|
5450
|
-
var headerLookCatalog, headerLooksById;
|
|
5833
|
+
var headerLayoutCatalog, headerStyleCatalog, headerLayoutsById, headerStylesById, headerStyleCompatibilityOrder, legacyHeaderLookAliases, legacyHeaderLookAliasesById, headerLookCatalog, guaranteedFallbackHeaderLayoutId, guaranteedFallbackHeaderStyleId, headerLooksById;
|
|
5451
5834
|
var init_headerLooks = __esm({
|
|
5452
5835
|
"../theme-core/src/site-styles/headerLooks.ts"() {
|
|
5453
5836
|
init_headerCtaVariants();
|
|
5454
5837
|
init_customizableSurfaces();
|
|
5455
5838
|
init_types2();
|
|
5839
|
+
headerLayoutCatalog = [
|
|
5840
|
+
{
|
|
5841
|
+
id: asHeaderLayoutId("classic"),
|
|
5842
|
+
label: "Classic",
|
|
5843
|
+
description: "Logo and navigation in one practical horizontal row.",
|
|
5844
|
+
structure: "inline-classic",
|
|
5845
|
+
variant: "classic",
|
|
5846
|
+
defaultPositioning: "sticky",
|
|
5847
|
+
shrinkOnScroll: false
|
|
5848
|
+
},
|
|
5849
|
+
{
|
|
5850
|
+
id: asHeaderLayoutId("centered"),
|
|
5851
|
+
label: "Centered",
|
|
5852
|
+
description: "Logo centered above a balanced navigation row.",
|
|
5853
|
+
structure: "centered-stack",
|
|
5854
|
+
variant: "centered",
|
|
5855
|
+
defaultPositioning: "static",
|
|
5856
|
+
shrinkOnScroll: false,
|
|
5857
|
+
maxRecommendedNavItems: 5,
|
|
5858
|
+
allowedLogoShapes: ["none", "text-only", "horizontal", "square"]
|
|
5859
|
+
},
|
|
5860
|
+
{
|
|
5861
|
+
id: asHeaderLayoutId("floating"),
|
|
5862
|
+
label: "Floating",
|
|
5863
|
+
description: "Detached header chrome that sits over the opening section.",
|
|
5864
|
+
structure: "floating-shell",
|
|
5865
|
+
variant: "floating",
|
|
5866
|
+
defaultPositioning: "fixed",
|
|
5867
|
+
shrinkOnScroll: true,
|
|
5868
|
+
maxRecommendedNavItems: 5,
|
|
5869
|
+
allowedLogoShapes: ["none", "text-only", "horizontal"]
|
|
5870
|
+
}
|
|
5871
|
+
];
|
|
5872
|
+
headerStyleCatalog = [
|
|
5873
|
+
{
|
|
5874
|
+
id: asHeaderStyleId("minimal"),
|
|
5875
|
+
label: "Minimal",
|
|
5876
|
+
description: "Quiet surface with simple color-change navigation.",
|
|
5877
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
5878
|
+
navInteraction: "color-change",
|
|
5879
|
+
surface: "neutral",
|
|
5880
|
+
navTypography: "plain"
|
|
5881
|
+
},
|
|
5882
|
+
{
|
|
5883
|
+
id: asHeaderStyleId("fine-line"),
|
|
5884
|
+
label: "Fine Line",
|
|
5885
|
+
description: "Light surface with a crisp lower rule and underline hover.",
|
|
5886
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
5887
|
+
navInteraction: "underline-grow",
|
|
5888
|
+
surface: "bordered",
|
|
5889
|
+
navTypography: "plain"
|
|
5890
|
+
},
|
|
5891
|
+
{
|
|
5892
|
+
id: asHeaderStyleId("soft-bar"),
|
|
5893
|
+
label: "Soft Bar",
|
|
5894
|
+
description: "Soft tinted surface with gentle pill hover states.",
|
|
5895
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
5896
|
+
navInteraction: "pill-background",
|
|
5897
|
+
surface: "soft",
|
|
5898
|
+
navTypography: "plain"
|
|
5899
|
+
},
|
|
5900
|
+
{
|
|
5901
|
+
id: asHeaderStyleId("pill-nav"),
|
|
5902
|
+
label: "Pill Nav",
|
|
5903
|
+
description: "A calm pill navigation rail over a neutral header.",
|
|
5904
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
5905
|
+
navInteraction: "pill-background",
|
|
5906
|
+
surface: "soft",
|
|
5907
|
+
navTypography: "plain"
|
|
5908
|
+
},
|
|
5909
|
+
{
|
|
5910
|
+
id: asHeaderStyleId("brand-bar"),
|
|
5911
|
+
label: "Brand Bar",
|
|
5912
|
+
description: "Solid brand surface with high-contrast navigation.",
|
|
5913
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
5914
|
+
navInteraction: "color-change",
|
|
5915
|
+
surface: "brand-solid",
|
|
5916
|
+
navTypography: "brand-caps"
|
|
5917
|
+
},
|
|
5918
|
+
{
|
|
5919
|
+
id: asHeaderStyleId("brand-underline"),
|
|
5920
|
+
label: "Brand Underline",
|
|
5921
|
+
description: "Brand surface with underline-grow navigation.",
|
|
5922
|
+
supportedLayoutIds: supportedLayouts(["classic"]),
|
|
5923
|
+
navInteraction: "underline-grow",
|
|
5924
|
+
surface: "brand-solid",
|
|
5925
|
+
navTypography: "brand-caps"
|
|
5926
|
+
},
|
|
5927
|
+
{
|
|
5928
|
+
id: asHeaderStyleId("brand-pill"),
|
|
5929
|
+
label: "Brand Pill",
|
|
5930
|
+
description: "Solid brand surface with rounded active and hover states.",
|
|
5931
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered", "floating"]),
|
|
5932
|
+
navInteraction: "pill-background",
|
|
5933
|
+
surface: "brand-solid",
|
|
5934
|
+
navTypography: "brand-caps"
|
|
5935
|
+
},
|
|
5936
|
+
{
|
|
5937
|
+
id: asHeaderStyleId("serif-line"),
|
|
5938
|
+
label: "Serif Line",
|
|
5939
|
+
description: "Typographic logo treatment with understated underline navigation.",
|
|
5940
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
5941
|
+
navInteraction: "underline-grow",
|
|
5942
|
+
surface: "bordered",
|
|
5943
|
+
navTypography: "heading"
|
|
5944
|
+
},
|
|
5945
|
+
{
|
|
5946
|
+
id: asHeaderStyleId("flat-tabs"),
|
|
5947
|
+
label: "Flat Tabs",
|
|
5948
|
+
description: "Flat block hover and active states with a Swiss utility feel.",
|
|
5949
|
+
supportedLayoutIds: supportedLayouts(["classic", "centered"]),
|
|
5950
|
+
navInteraction: "flat-block",
|
|
5951
|
+
surface: "bordered",
|
|
5952
|
+
navTypography: "quiet-caps"
|
|
5953
|
+
},
|
|
5954
|
+
{
|
|
5955
|
+
id: asHeaderStyleId("glass"),
|
|
5956
|
+
label: "Glass",
|
|
5957
|
+
description: "Translucent chrome with frosted navigation backing.",
|
|
5958
|
+
supportedLayoutIds: supportedLayouts(["classic", "floating"]),
|
|
5959
|
+
navInteraction: "glass-backed",
|
|
5960
|
+
surface: "floating",
|
|
5961
|
+
navTypography: "plain"
|
|
5962
|
+
},
|
|
5963
|
+
{
|
|
5964
|
+
id: asHeaderStyleId("minimal-surface"),
|
|
5965
|
+
label: "Clear Split",
|
|
5966
|
+
description: "Floating logo with transparent navigation and no shared shell.",
|
|
5967
|
+
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
5968
|
+
navInteraction: "color-change",
|
|
5969
|
+
surface: "floating",
|
|
5970
|
+
navTypography: "plain"
|
|
5971
|
+
},
|
|
5972
|
+
{
|
|
5973
|
+
id: asHeaderStyleId("soft-shell"),
|
|
5974
|
+
label: "Soft Shell",
|
|
5975
|
+
description: "Floating rounded shell with soft pill navigation states.",
|
|
5976
|
+
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
5977
|
+
navInteraction: "pill-background",
|
|
5978
|
+
surface: "floating",
|
|
5979
|
+
navTypography: "plain"
|
|
5980
|
+
},
|
|
5981
|
+
{
|
|
5982
|
+
id: asHeaderStyleId("split-glass"),
|
|
5983
|
+
label: "Split Glass",
|
|
5984
|
+
description: "Logo floats independently while the navigation sits in a glass rail.",
|
|
5985
|
+
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
5986
|
+
navInteraction: "glass-backed",
|
|
5987
|
+
surface: "floating",
|
|
5988
|
+
navTypography: "quiet-caps"
|
|
5989
|
+
},
|
|
5990
|
+
{
|
|
5991
|
+
id: asHeaderStyleId("split-pill"),
|
|
5992
|
+
label: "Split Pill",
|
|
5993
|
+
description: "Logo floats independently with a soft pill-backed navigation rail.",
|
|
5994
|
+
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
5995
|
+
navInteraction: "pill-background",
|
|
5996
|
+
surface: "floating",
|
|
5997
|
+
navTypography: "heading"
|
|
5998
|
+
}
|
|
5999
|
+
];
|
|
6000
|
+
headerLayoutsById = new Map(
|
|
6001
|
+
headerLayoutCatalog.map((layout) => [layout.id, layout])
|
|
6002
|
+
);
|
|
6003
|
+
headerStylesById = new Map(
|
|
6004
|
+
headerStyleCatalog.map((style) => [style.id, style])
|
|
6005
|
+
);
|
|
6006
|
+
headerStyleCompatibilityOrder = /* @__PURE__ */ new Map([
|
|
6007
|
+
[
|
|
6008
|
+
asHeaderLayoutId("classic"),
|
|
6009
|
+
headerStyleRepairChain([
|
|
6010
|
+
"minimal",
|
|
6011
|
+
"glass",
|
|
6012
|
+
"fine-line",
|
|
6013
|
+
"soft-bar",
|
|
6014
|
+
"pill-nav",
|
|
6015
|
+
"brand-bar",
|
|
6016
|
+
"brand-underline",
|
|
6017
|
+
"brand-pill",
|
|
6018
|
+
"serif-line",
|
|
6019
|
+
"flat-tabs"
|
|
6020
|
+
])
|
|
6021
|
+
],
|
|
6022
|
+
[
|
|
6023
|
+
asHeaderLayoutId("centered"),
|
|
6024
|
+
headerStyleRepairChain([
|
|
6025
|
+
"minimal",
|
|
6026
|
+
"fine-line",
|
|
6027
|
+
"soft-bar",
|
|
6028
|
+
"pill-nav",
|
|
6029
|
+
"brand-bar",
|
|
6030
|
+
"brand-pill",
|
|
6031
|
+
"serif-line",
|
|
6032
|
+
"flat-tabs"
|
|
6033
|
+
])
|
|
6034
|
+
],
|
|
6035
|
+
[
|
|
6036
|
+
asHeaderLayoutId("floating"),
|
|
6037
|
+
headerStyleRepairChain([
|
|
6038
|
+
"glass",
|
|
6039
|
+
"minimal-surface",
|
|
6040
|
+
"split-glass",
|
|
6041
|
+
"split-pill",
|
|
6042
|
+
"soft-shell",
|
|
6043
|
+
"brand-pill"
|
|
6044
|
+
])
|
|
6045
|
+
]
|
|
6046
|
+
]);
|
|
6047
|
+
/* @__PURE__ */ new Map(
|
|
6048
|
+
[
|
|
6049
|
+
[
|
|
6050
|
+
asHeaderStyleId("brand-bar"),
|
|
6051
|
+
headerStyleRepairChain(["brand-bar", "brand-pill", "minimal"])
|
|
6052
|
+
],
|
|
6053
|
+
[
|
|
6054
|
+
asHeaderStyleId("brand-underline"),
|
|
6055
|
+
headerStyleRepairChain(["serif-line", "fine-line", "minimal"])
|
|
6056
|
+
],
|
|
6057
|
+
[
|
|
6058
|
+
asHeaderStyleId("brand-pill"),
|
|
6059
|
+
headerStyleRepairChain(["brand-pill", "brand-bar", "minimal"])
|
|
6060
|
+
],
|
|
6061
|
+
[
|
|
6062
|
+
asHeaderStyleId("pill-nav"),
|
|
6063
|
+
headerStyleRepairChain(["pill-nav", "soft-bar", "minimal"])
|
|
6064
|
+
],
|
|
6065
|
+
[
|
|
6066
|
+
asHeaderStyleId("flat-tabs"),
|
|
6067
|
+
headerStyleRepairChain(["flat-tabs", "pill-nav", "minimal"])
|
|
6068
|
+
],
|
|
6069
|
+
[
|
|
6070
|
+
asHeaderStyleId("serif-line"),
|
|
6071
|
+
headerStyleRepairChain(["serif-line", "fine-line", "minimal"])
|
|
6072
|
+
],
|
|
6073
|
+
[
|
|
6074
|
+
asHeaderStyleId("glass"),
|
|
6075
|
+
headerStyleRepairChain(["glass", "minimal-surface", "minimal"])
|
|
6076
|
+
],
|
|
6077
|
+
[
|
|
6078
|
+
asHeaderStyleId("soft-shell"),
|
|
6079
|
+
headerStyleRepairChain(["soft-shell", "soft-bar", "minimal"])
|
|
6080
|
+
],
|
|
6081
|
+
[
|
|
6082
|
+
asHeaderStyleId("minimal-surface"),
|
|
6083
|
+
headerStyleRepairChain(["minimal-surface", "minimal"])
|
|
6084
|
+
],
|
|
6085
|
+
[
|
|
6086
|
+
asHeaderStyleId("split-glass"),
|
|
6087
|
+
headerStyleRepairChain(["split-glass", "glass", "minimal-surface"])
|
|
6088
|
+
],
|
|
6089
|
+
[
|
|
6090
|
+
asHeaderStyleId("split-pill"),
|
|
6091
|
+
headerStyleRepairChain(["split-pill", "soft-shell", "brand-pill"])
|
|
6092
|
+
],
|
|
6093
|
+
[
|
|
6094
|
+
asHeaderStyleId("fine-line"),
|
|
6095
|
+
headerStyleRepairChain(["fine-line", "minimal"])
|
|
6096
|
+
],
|
|
6097
|
+
[
|
|
6098
|
+
asHeaderStyleId("soft-bar"),
|
|
6099
|
+
headerStyleRepairChain(["soft-bar", "minimal"])
|
|
6100
|
+
],
|
|
6101
|
+
[asHeaderStyleId("minimal"), headerStyleRepairChain(["minimal"])]
|
|
6102
|
+
]
|
|
6103
|
+
);
|
|
6104
|
+
legacyHeaderLookAliases = [
|
|
6105
|
+
{
|
|
6106
|
+
lookId: asHeaderLookId("clean-base"),
|
|
6107
|
+
selection: {
|
|
6108
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
6109
|
+
styleId: asHeaderStyleId("minimal")
|
|
6110
|
+
}
|
|
6111
|
+
},
|
|
6112
|
+
{
|
|
6113
|
+
lookId: asHeaderLookId("brand-solid"),
|
|
6114
|
+
selection: {
|
|
6115
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
6116
|
+
styleId: asHeaderStyleId("brand-bar")
|
|
6117
|
+
}
|
|
6118
|
+
},
|
|
6119
|
+
{
|
|
6120
|
+
lookId: asHeaderLookId("serif-line"),
|
|
6121
|
+
selection: {
|
|
6122
|
+
layoutId: asHeaderLayoutId("centered"),
|
|
6123
|
+
styleId: asHeaderStyleId("serif-line")
|
|
6124
|
+
}
|
|
6125
|
+
},
|
|
6126
|
+
{
|
|
6127
|
+
lookId: asHeaderLookId("centered-calm"),
|
|
6128
|
+
selection: {
|
|
6129
|
+
layoutId: asHeaderLayoutId("centered"),
|
|
6130
|
+
styleId: asHeaderStyleId("minimal")
|
|
6131
|
+
}
|
|
6132
|
+
},
|
|
6133
|
+
{
|
|
6134
|
+
lookId: asHeaderLookId("practical-utility"),
|
|
6135
|
+
selection: {
|
|
6136
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
6137
|
+
styleId: asHeaderStyleId("flat-tabs")
|
|
6138
|
+
}
|
|
6139
|
+
},
|
|
6140
|
+
{
|
|
6141
|
+
lookId: asHeaderLookId("minimal-transparent"),
|
|
6142
|
+
selection: {
|
|
6143
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
6144
|
+
styleId: asHeaderStyleId("minimal")
|
|
6145
|
+
}
|
|
6146
|
+
},
|
|
6147
|
+
{
|
|
6148
|
+
lookId: asHeaderLookId("transparent-overlay"),
|
|
6149
|
+
selection: {
|
|
6150
|
+
layoutId: asHeaderLayoutId("floating"),
|
|
6151
|
+
styleId: asHeaderStyleId("glass")
|
|
6152
|
+
}
|
|
6153
|
+
},
|
|
6154
|
+
{
|
|
6155
|
+
lookId: asHeaderLookId("floating-glass"),
|
|
6156
|
+
selection: {
|
|
6157
|
+
layoutId: asHeaderLayoutId("floating"),
|
|
6158
|
+
styleId: asHeaderStyleId("glass")
|
|
6159
|
+
}
|
|
6160
|
+
}
|
|
6161
|
+
];
|
|
6162
|
+
legacyHeaderLookAliasesById = new Map(legacyHeaderLookAliases.map((alias) => [alias.lookId, alias]));
|
|
5456
6163
|
headerLookCatalog = [
|
|
5457
6164
|
{
|
|
5458
6165
|
id: asHeaderLookId("clean-base"),
|
|
5459
6166
|
label: "Clean base",
|
|
5460
6167
|
visualTreatment: "solid-neutral",
|
|
5461
6168
|
layoutBehavior: "sticky",
|
|
6169
|
+
configuration: {
|
|
6170
|
+
structure: "inline-classic",
|
|
6171
|
+
treatment: "solid-neutral",
|
|
6172
|
+
behavior: "sticky"
|
|
6173
|
+
},
|
|
5462
6174
|
openingRequirement: "none",
|
|
5463
6175
|
compile: cleanBaseHeader
|
|
5464
6176
|
},
|
|
@@ -5467,23 +6179,38 @@ var init_headerLooks = __esm({
|
|
|
5467
6179
|
label: "Brand solid",
|
|
5468
6180
|
visualTreatment: "solid-brand",
|
|
5469
6181
|
layoutBehavior: "sticky-shrink",
|
|
6182
|
+
configuration: {
|
|
6183
|
+
structure: "inline-classic",
|
|
6184
|
+
treatment: "solid-brand",
|
|
6185
|
+
behavior: "sticky-shrink"
|
|
6186
|
+
},
|
|
5470
6187
|
openingRequirement: "none",
|
|
5471
6188
|
compile: solidBrandHeader
|
|
5472
6189
|
},
|
|
5473
6190
|
{
|
|
5474
|
-
id: asHeaderLookId("
|
|
5475
|
-
label: "
|
|
5476
|
-
visualTreatment: "light-
|
|
6191
|
+
id: asHeaderLookId("serif-line"),
|
|
6192
|
+
label: "Serif line",
|
|
6193
|
+
visualTreatment: "light-serif",
|
|
5477
6194
|
layoutBehavior: "sticky",
|
|
6195
|
+
configuration: {
|
|
6196
|
+
structure: "centered-stack",
|
|
6197
|
+
treatment: "light-serif",
|
|
6198
|
+
behavior: "sticky"
|
|
6199
|
+
},
|
|
5478
6200
|
openingRequirement: "none",
|
|
5479
6201
|
maxRecommendedNavItems: 6,
|
|
5480
|
-
compile:
|
|
6202
|
+
compile: serifLineHeader
|
|
5481
6203
|
},
|
|
5482
6204
|
{
|
|
5483
6205
|
id: asHeaderLookId("centered-calm"),
|
|
5484
6206
|
label: "Centered calm",
|
|
5485
|
-
visualTreatment: "light-
|
|
6207
|
+
visualTreatment: "light-serif",
|
|
5486
6208
|
layoutBehavior: "normal-flow",
|
|
6209
|
+
configuration: {
|
|
6210
|
+
structure: "centered-stack",
|
|
6211
|
+
treatment: "light-serif",
|
|
6212
|
+
behavior: "normal-flow"
|
|
6213
|
+
},
|
|
5487
6214
|
openingRequirement: "none",
|
|
5488
6215
|
maxRecommendedNavItems: 5,
|
|
5489
6216
|
allowedLogoShapes: ["none", "text-only", "horizontal", "square"],
|
|
@@ -5494,6 +6221,11 @@ var init_headerLooks = __esm({
|
|
|
5494
6221
|
label: "Practical utility",
|
|
5495
6222
|
visualTreatment: "solid-neutral",
|
|
5496
6223
|
layoutBehavior: "sticky-shrink",
|
|
6224
|
+
configuration: {
|
|
6225
|
+
structure: "inline-classic",
|
|
6226
|
+
treatment: "solid-neutral",
|
|
6227
|
+
behavior: "sticky-shrink"
|
|
6228
|
+
},
|
|
5497
6229
|
openingRequirement: "none",
|
|
5498
6230
|
requiresProminentCta: true,
|
|
5499
6231
|
compile: practicalUtilityHeader
|
|
@@ -5503,6 +6235,11 @@ var init_headerLooks = __esm({
|
|
|
5503
6235
|
label: "Minimal transparent",
|
|
5504
6236
|
visualTreatment: "minimal-transparent",
|
|
5505
6237
|
layoutBehavior: "normal-flow",
|
|
6238
|
+
configuration: {
|
|
6239
|
+
structure: "inline-classic",
|
|
6240
|
+
treatment: "minimal-transparent",
|
|
6241
|
+
behavior: "normal-flow"
|
|
6242
|
+
},
|
|
5506
6243
|
openingRequirement: "reserved-space-ok",
|
|
5507
6244
|
compile: minimalTransparentHeader
|
|
5508
6245
|
},
|
|
@@ -5511,6 +6248,11 @@ var init_headerLooks = __esm({
|
|
|
5511
6248
|
label: "Transparent overlay",
|
|
5512
6249
|
visualTreatment: "transparent-overlay",
|
|
5513
6250
|
layoutBehavior: "fixed-overlay",
|
|
6251
|
+
configuration: {
|
|
6252
|
+
structure: "inline-classic",
|
|
6253
|
+
treatment: "transparent-overlay",
|
|
6254
|
+
behavior: "fixed-overlay"
|
|
6255
|
+
},
|
|
5514
6256
|
openingRequirement: "requires-image-hero-with-contrast-overlay",
|
|
5515
6257
|
maxRecommendedNavItems: 5,
|
|
5516
6258
|
allowedLogoShapes: ["none", "text-only", "horizontal"],
|
|
@@ -5521,12 +6263,22 @@ var init_headerLooks = __esm({
|
|
|
5521
6263
|
label: "Floating glass",
|
|
5522
6264
|
visualTreatment: "floating-glass",
|
|
5523
6265
|
layoutBehavior: "fixed-floating",
|
|
6266
|
+
configuration: {
|
|
6267
|
+
structure: "floating-shell",
|
|
6268
|
+
treatment: "floating-glass",
|
|
6269
|
+
behavior: "fixed-floating"
|
|
6270
|
+
},
|
|
5524
6271
|
openingRequirement: "requires-image-hero-with-contrast-overlay",
|
|
5525
6272
|
maxRecommendedNavItems: 5,
|
|
5526
6273
|
allowedLogoShapes: ["none", "text-only", "horizontal"],
|
|
5527
6274
|
compile: floatingGlassHeader
|
|
5528
6275
|
}
|
|
5529
6276
|
];
|
|
6277
|
+
guaranteedFallbackHeaderLayoutId = asHeaderLayoutId("classic");
|
|
6278
|
+
guaranteedFallbackHeaderStyleId = asHeaderStyleId("minimal");
|
|
6279
|
+
new Set(
|
|
6280
|
+
headerLookCatalog.map((look) => headerConfigurationKey(look.configuration))
|
|
6281
|
+
);
|
|
5530
6282
|
headerLooksById = new Map(
|
|
5531
6283
|
headerLookCatalog.map((look) => [look.id, look])
|
|
5532
6284
|
);
|
|
@@ -5685,27 +6437,312 @@ var init_sourceCatalogs = __esm({
|
|
|
5685
6437
|
}
|
|
5686
6438
|
});
|
|
5687
6439
|
|
|
6440
|
+
// ../theme-core/src/site-styles/typographyPresets.ts
|
|
6441
|
+
function asTypographyPresetId(value) {
|
|
6442
|
+
if (!value.startsWith("typography-preset:")) {
|
|
6443
|
+
throw new Error(`TypographyPresetId must start with "typography-preset:". Received: ${value}`);
|
|
6444
|
+
}
|
|
6445
|
+
return value;
|
|
6446
|
+
}
|
|
6447
|
+
function defineTypographyPreset(preset2) {
|
|
6448
|
+
return {
|
|
6449
|
+
...preset2,
|
|
6450
|
+
id: asTypographyPresetId(preset2.id)
|
|
6451
|
+
};
|
|
6452
|
+
}
|
|
6453
|
+
function findTypographyPreset(id) {
|
|
6454
|
+
return typographyPresetsById.get(id);
|
|
6455
|
+
}
|
|
6456
|
+
var bodyReadablePolicy, headingFlexiblePolicy, displayHeadingPolicy, modernSansTypography, warmRoundedTypography, editorialSerifTypography, classicSerifTypography, luxeContrastTypography, boldDisplayTypography, typographyPresets, typographyPresetsById;
|
|
6457
|
+
var init_typographyPresets = __esm({
|
|
6458
|
+
"../theme-core/src/site-styles/typographyPresets.ts"() {
|
|
6459
|
+
bodyReadablePolicy = {
|
|
6460
|
+
recommendedCategories: ["sans-serif", "serif"],
|
|
6461
|
+
allowedCategories: ["sans-serif", "serif"],
|
|
6462
|
+
requiresItalicForBody: true,
|
|
6463
|
+
requiresBoldForBody: true
|
|
6464
|
+
};
|
|
6465
|
+
headingFlexiblePolicy = {
|
|
6466
|
+
recommendedCategories: ["sans-serif", "serif", "display"],
|
|
6467
|
+
allowedCategories: ["sans-serif", "serif", "display"]
|
|
6468
|
+
};
|
|
6469
|
+
displayHeadingPolicy = {
|
|
6470
|
+
recommendedCategories: ["display", "sans-serif", "serif"],
|
|
6471
|
+
allowedCategories: ["display", "sans-serif", "serif"]
|
|
6472
|
+
};
|
|
6473
|
+
modernSansTypography = {
|
|
6474
|
+
body: {
|
|
6475
|
+
family: "Inter, system-ui, sans-serif",
|
|
6476
|
+
size: "md",
|
|
6477
|
+
weight: "regular",
|
|
6478
|
+
lineHeight: "relaxed",
|
|
6479
|
+
letterSpacing: "normal"
|
|
6480
|
+
},
|
|
6481
|
+
headings: {
|
|
6482
|
+
default: {
|
|
6483
|
+
family: "Inter, system-ui, sans-serif",
|
|
6484
|
+
weight: "semibold",
|
|
6485
|
+
lineHeight: "normal",
|
|
6486
|
+
letterSpacing: "tight",
|
|
6487
|
+
italic: null,
|
|
6488
|
+
case: null
|
|
6489
|
+
},
|
|
6490
|
+
h1: { size: "xl", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
6491
|
+
h2: { size: "lg", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
6492
|
+
h3: { size: "md", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null }
|
|
6493
|
+
},
|
|
6494
|
+
scale: "balanced"
|
|
6495
|
+
};
|
|
6496
|
+
warmRoundedTypography = {
|
|
6497
|
+
body: {
|
|
6498
|
+
family: "Nunito Sans, system-ui, sans-serif",
|
|
6499
|
+
size: "lg",
|
|
6500
|
+
weight: "regular",
|
|
6501
|
+
lineHeight: "relaxed",
|
|
6502
|
+
letterSpacing: "normal"
|
|
6503
|
+
},
|
|
6504
|
+
headings: {
|
|
6505
|
+
default: {
|
|
6506
|
+
family: "Nunito Sans, system-ui, sans-serif",
|
|
6507
|
+
weight: "bold",
|
|
6508
|
+
lineHeight: "normal",
|
|
6509
|
+
letterSpacing: "normal",
|
|
6510
|
+
italic: null,
|
|
6511
|
+
case: null
|
|
6512
|
+
},
|
|
6513
|
+
h1: { size: "xl", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
6514
|
+
h2: { size: "lg", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
6515
|
+
h3: { size: "md", weight: "semibold", lineHeight: "relaxed", letterSpacing: "normal", italic: null }
|
|
6516
|
+
},
|
|
6517
|
+
scale: "balanced"
|
|
6518
|
+
};
|
|
6519
|
+
editorialSerifTypography = {
|
|
6520
|
+
body: {
|
|
6521
|
+
family: "Lora, Georgia, serif",
|
|
6522
|
+
size: "lg",
|
|
6523
|
+
weight: "regular",
|
|
6524
|
+
lineHeight: "loose",
|
|
6525
|
+
letterSpacing: "normal"
|
|
6526
|
+
},
|
|
6527
|
+
headings: {
|
|
6528
|
+
default: {
|
|
6529
|
+
family: "Playfair Display, Georgia, serif",
|
|
6530
|
+
weight: "semibold",
|
|
6531
|
+
lineHeight: "normal",
|
|
6532
|
+
letterSpacing: "tight",
|
|
6533
|
+
italic: null,
|
|
6534
|
+
case: null
|
|
6535
|
+
},
|
|
6536
|
+
h1: { size: "2xl", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
6537
|
+
h2: { size: "xl", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
6538
|
+
h3: { size: "md", weight: "semibold", lineHeight: "relaxed", letterSpacing: "normal", italic: true }
|
|
6539
|
+
},
|
|
6540
|
+
scale: "spacious"
|
|
6541
|
+
};
|
|
6542
|
+
classicSerifTypography = {
|
|
6543
|
+
body: {
|
|
6544
|
+
family: "Libre Baskerville, Georgia, serif",
|
|
6545
|
+
size: "md",
|
|
6546
|
+
weight: "regular",
|
|
6547
|
+
lineHeight: "relaxed",
|
|
6548
|
+
letterSpacing: "normal"
|
|
6549
|
+
},
|
|
6550
|
+
headings: {
|
|
6551
|
+
default: {
|
|
6552
|
+
family: "Cormorant Garamond, Georgia, serif",
|
|
6553
|
+
weight: "semibold",
|
|
6554
|
+
lineHeight: "normal",
|
|
6555
|
+
letterSpacing: "normal",
|
|
6556
|
+
italic: null,
|
|
6557
|
+
case: null
|
|
6558
|
+
},
|
|
6559
|
+
h1: { size: "2xl", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
6560
|
+
h2: { size: "xl", weight: "semibold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
6561
|
+
h3: { size: "md", weight: "medium", lineHeight: "relaxed", letterSpacing: "normal", italic: null }
|
|
6562
|
+
},
|
|
6563
|
+
scale: "balanced"
|
|
6564
|
+
};
|
|
6565
|
+
luxeContrastTypography = {
|
|
6566
|
+
body: {
|
|
6567
|
+
family: "Manrope, system-ui, sans-serif",
|
|
6568
|
+
size: "md",
|
|
6569
|
+
weight: "regular",
|
|
6570
|
+
lineHeight: "relaxed",
|
|
6571
|
+
letterSpacing: "normal"
|
|
6572
|
+
},
|
|
6573
|
+
headings: {
|
|
6574
|
+
default: {
|
|
6575
|
+
family: "Cormorant Garamond, Georgia, serif",
|
|
6576
|
+
weight: "semibold",
|
|
6577
|
+
lineHeight: "normal",
|
|
6578
|
+
letterSpacing: "tight",
|
|
6579
|
+
italic: null,
|
|
6580
|
+
case: null
|
|
6581
|
+
},
|
|
6582
|
+
h1: { size: "2xl", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
6583
|
+
h2: { size: "xl", weight: "semibold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
6584
|
+
h3: { size: "md", weight: "medium", lineHeight: "relaxed", letterSpacing: "normal", italic: null }
|
|
6585
|
+
},
|
|
6586
|
+
scale: "spacious"
|
|
6587
|
+
};
|
|
6588
|
+
boldDisplayTypography = {
|
|
6589
|
+
body: {
|
|
6590
|
+
family: "Manrope, system-ui, sans-serif",
|
|
6591
|
+
size: "lg",
|
|
6592
|
+
weight: "regular",
|
|
6593
|
+
lineHeight: "relaxed",
|
|
6594
|
+
letterSpacing: "normal"
|
|
6595
|
+
},
|
|
6596
|
+
headings: {
|
|
6597
|
+
default: {
|
|
6598
|
+
family: '"TAN - PEARL", sans-serif',
|
|
6599
|
+
weight: "bold",
|
|
6600
|
+
lineHeight: "normal",
|
|
6601
|
+
letterSpacing: "tight",
|
|
6602
|
+
colorToken: "primary",
|
|
6603
|
+
italic: null,
|
|
6604
|
+
case: null
|
|
6605
|
+
},
|
|
6606
|
+
h1: { size: "xl", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
6607
|
+
h2: { size: "lg", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null },
|
|
6608
|
+
h3: { size: "md", weight: "bold", lineHeight: "normal", letterSpacing: "normal", italic: null }
|
|
6609
|
+
},
|
|
6610
|
+
scale: "balanced"
|
|
6611
|
+
};
|
|
6612
|
+
typographyPresets = [
|
|
6613
|
+
defineTypographyPreset({
|
|
6614
|
+
id: "typography-preset:modern-sans",
|
|
6615
|
+
name: "Modern Sans",
|
|
6616
|
+
description: "Crisp, neutral type for clear service pages and practical editorial structure.",
|
|
6617
|
+
defaultFonts: { body: "Inter, system-ui, sans-serif", heading: "Inter, system-ui, sans-serif" },
|
|
6618
|
+
recommendedFonts: {
|
|
6619
|
+
body: ["Inter", "Source Sans 3", "IBM Plex Sans"],
|
|
6620
|
+
heading: ["Inter", "Manrope", "Source Sans 3"]
|
|
6621
|
+
},
|
|
6622
|
+
slotPolicies: { body: bodyReadablePolicy, heading: headingFlexiblePolicy },
|
|
6623
|
+
typography: modernSansTypography
|
|
6624
|
+
}),
|
|
6625
|
+
defineTypographyPreset({
|
|
6626
|
+
id: "typography-preset:warm-rounded",
|
|
6627
|
+
name: "Warm Rounded",
|
|
6628
|
+
description: "Soft, friendly type for welcoming studios, classes, and community businesses.",
|
|
6629
|
+
defaultFonts: { body: "Nunito Sans, system-ui, sans-serif", heading: "Nunito Sans, system-ui, sans-serif" },
|
|
6630
|
+
recommendedFonts: {
|
|
6631
|
+
body: ["Nunito Sans", "Atkinson Hyperlegible", "Lato"],
|
|
6632
|
+
heading: ["Nunito Sans", "Quicksand", "Manrope"]
|
|
6633
|
+
},
|
|
6634
|
+
slotPolicies: { body: bodyReadablePolicy, heading: headingFlexiblePolicy },
|
|
6635
|
+
typography: warmRoundedTypography
|
|
6636
|
+
}),
|
|
6637
|
+
defineTypographyPreset({
|
|
6638
|
+
id: "typography-preset:editorial-serif",
|
|
6639
|
+
name: "Editorial Serif",
|
|
6640
|
+
description: "Story-led type with warm reading rhythm and expressive headings.",
|
|
6641
|
+
defaultFonts: { body: "Lora, Georgia, serif", heading: "Playfair Display, Georgia, serif" },
|
|
6642
|
+
recommendedFonts: {
|
|
6643
|
+
body: ["Lora", "Source Serif 4", "Libre Baskerville"],
|
|
6644
|
+
heading: ["Playfair Display", "Cormorant Garamond", "Fraunces"]
|
|
6645
|
+
},
|
|
6646
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
6647
|
+
typography: editorialSerifTypography
|
|
6648
|
+
}),
|
|
6649
|
+
defineTypographyPreset({
|
|
6650
|
+
id: "typography-preset:classic-serif",
|
|
6651
|
+
name: "Classic Serif",
|
|
6652
|
+
description: "Measured, polished type for premium and established offers.",
|
|
6653
|
+
defaultFonts: { body: "Libre Baskerville, Georgia, serif", heading: "Cormorant Garamond, Georgia, serif" },
|
|
6654
|
+
recommendedFonts: {
|
|
6655
|
+
body: ["Libre Baskerville", "Source Serif 4", "Lora"],
|
|
6656
|
+
heading: ["Cormorant Garamond", "Playfair Display", "Libre Baskerville"]
|
|
6657
|
+
},
|
|
6658
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
6659
|
+
typography: classicSerifTypography
|
|
6660
|
+
}),
|
|
6661
|
+
defineTypographyPreset({
|
|
6662
|
+
id: "typography-preset:luxe-contrast",
|
|
6663
|
+
name: "Luxe Contrast",
|
|
6664
|
+
description: "A restrained sans body paired with elegant high-contrast headings.",
|
|
6665
|
+
defaultFonts: { body: "Manrope, system-ui, sans-serif", heading: "Cormorant Garamond, Georgia, serif" },
|
|
6666
|
+
recommendedFonts: {
|
|
6667
|
+
body: ["Manrope", "Inter", "Source Sans 3"],
|
|
6668
|
+
heading: ["Cormorant Garamond", "Playfair Display", "Bodoni Moda"]
|
|
6669
|
+
},
|
|
6670
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
6671
|
+
typography: luxeContrastTypography
|
|
6672
|
+
}),
|
|
6673
|
+
defineTypographyPreset({
|
|
6674
|
+
id: "typography-preset:bold-display",
|
|
6675
|
+
name: "Bold Display",
|
|
6676
|
+
description: "Punchy display headings with readable sans body copy for branded launches.",
|
|
6677
|
+
defaultFonts: { body: "Manrope, system-ui, sans-serif", heading: '"TAN - PEARL", sans-serif' },
|
|
6678
|
+
recommendedFonts: {
|
|
6679
|
+
body: ["Manrope", "Inter", "Space Grotesk"],
|
|
6680
|
+
heading: ["Anton", "Bebas Neue", "Archivo Black"]
|
|
6681
|
+
},
|
|
6682
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
6683
|
+
typography: boldDisplayTypography,
|
|
6684
|
+
heroTypography: {
|
|
6685
|
+
headlineSize: "6xl",
|
|
6686
|
+
headlineLineHeight: "tight",
|
|
6687
|
+
subheadlineSize: "editorial",
|
|
6688
|
+
subheadlineLineHeight: "normal",
|
|
6689
|
+
microHeadlineSize: "6xl",
|
|
6690
|
+
microHeadlineLineHeight: "tight",
|
|
6691
|
+
microSubheadlineSize: "xl",
|
|
6692
|
+
microSubheadlineLineHeight: "normal",
|
|
6693
|
+
responsive: {
|
|
6694
|
+
tablet: { headlineSize: "5xl" },
|
|
6695
|
+
mobile: { headlineSize: "4xl", subheadlineSize: "xl" }
|
|
6696
|
+
}
|
|
6697
|
+
}
|
|
6698
|
+
})
|
|
6699
|
+
];
|
|
6700
|
+
typographyPresetsById = new Map(
|
|
6701
|
+
typographyPresets.map((preset2) => [preset2.id, preset2])
|
|
6702
|
+
);
|
|
6703
|
+
}
|
|
6704
|
+
});
|
|
6705
|
+
|
|
5688
6706
|
// ../theme-core/src/site-styles/curatedSiteStyles.ts
|
|
5689
6707
|
function uniqueContentFrameKinds() {
|
|
5690
|
-
const kinds = [
|
|
5691
|
-
|
|
5692
|
-
|
|
6708
|
+
const kinds = [
|
|
6709
|
+
...new Set(
|
|
6710
|
+
generatedDesignOptionCatalog.contentFrames.map((frame) => frame.kind)
|
|
6711
|
+
)
|
|
6712
|
+
];
|
|
5693
6713
|
const firstKind = kinds[0];
|
|
5694
6714
|
if (!firstKind) {
|
|
5695
|
-
throw new Error(
|
|
6715
|
+
throw new Error(
|
|
6716
|
+
"Expected generated design option catalog to expose at least one content frame kind."
|
|
6717
|
+
);
|
|
5696
6718
|
}
|
|
5697
6719
|
return [firstKind, ...kinds.slice(1)];
|
|
5698
6720
|
}
|
|
5699
6721
|
function defineCuratedSiteStyle(input) {
|
|
6722
|
+
const legacyHeaderLookIds = input.recommendedHeaderLookIds ?? ["clean-base"];
|
|
6723
|
+
const inferredHeaderCuration = inferHeaderCurationFromLegacyLooks(legacyHeaderLookIds);
|
|
6724
|
+
const typographyPresetChoices = input.typographyPresetChoices ?? defaultTypographyPresetChoicesForRecipe(input.tokenRecipes.typography);
|
|
6725
|
+
const defaultTypographyPresetId = input.defaultTypographyPresetId ? asTypographyPresetId(input.defaultTypographyPresetId) : typographyPresetChoices[0].id;
|
|
6726
|
+
if (!typographyPresetChoices.some(
|
|
6727
|
+
(choice) => choice.id === defaultTypographyPresetId
|
|
6728
|
+
)) {
|
|
6729
|
+
throw new Error(
|
|
6730
|
+
`Default typography preset ${defaultTypographyPresetId} is not curated for site style ${input.id}.`
|
|
6731
|
+
);
|
|
6732
|
+
}
|
|
5700
6733
|
return {
|
|
5701
6734
|
id: asSiteStyleId(input.id),
|
|
5702
6735
|
name: input.name,
|
|
5703
6736
|
description: input.description,
|
|
5704
6737
|
generationBrief: input.generationBrief,
|
|
5705
6738
|
selectionKeywordRules: input.selectionKeywordRules ?? [],
|
|
5706
|
-
siteCreatorSelection: input.siteCreatorSelection ?? {
|
|
6739
|
+
siteCreatorSelection: input.siteCreatorSelection ?? {
|
|
6740
|
+
kind: "explicit_only"
|
|
6741
|
+
},
|
|
5707
6742
|
template: {
|
|
5708
|
-
id: asDesignSystemTemplateId(
|
|
6743
|
+
id: asDesignSystemTemplateId(
|
|
6744
|
+
`template:${input.id.replace("site-style:", "")}`
|
|
6745
|
+
),
|
|
5709
6746
|
name: input.name,
|
|
5710
6747
|
version: 1,
|
|
5711
6748
|
tokenRecipes: input.tokenRecipes,
|
|
@@ -5717,11 +6754,27 @@ function defineCuratedSiteStyle(input) {
|
|
|
5717
6754
|
},
|
|
5718
6755
|
...input.themeOverrides ? { themeOverrides: input.themeOverrides } : {},
|
|
5719
6756
|
recommendedAppearancePresetIds: (input.recommendedAppearancePresetIds ?? []).map(asAppearancePresetId),
|
|
5720
|
-
|
|
6757
|
+
defaultHeaderSelection: input.defaultHeaderSelection ? {
|
|
6758
|
+
layoutId: asHeaderLayoutId(input.defaultHeaderSelection.layoutId),
|
|
6759
|
+
styleId: asHeaderStyleId(input.defaultHeaderSelection.styleId)
|
|
6760
|
+
} : inferredHeaderCuration.defaultHeaderSelection,
|
|
6761
|
+
recommendedHeaderLayoutChoices: input.recommendedHeaderLayoutChoices ?? inferredHeaderCuration.recommendedHeaderLayoutChoices,
|
|
6762
|
+
recommendedHeaderStyleChoicesByLayout: input.recommendedHeaderStyleChoicesByLayout ?? inferredHeaderCuration.recommendedHeaderStyleChoicesByLayout,
|
|
6763
|
+
discouragedHeaderSelections: input.discouragedHeaderSelections?.map(
|
|
6764
|
+
(selection) => ({
|
|
6765
|
+
layoutId: asHeaderLayoutId(selection.layoutId),
|
|
6766
|
+
styleId: asHeaderStyleId(selection.styleId)
|
|
6767
|
+
})
|
|
6768
|
+
),
|
|
6769
|
+
recommendedHeaderLookIds: legacyHeaderLookIds.map(asHeaderLookId),
|
|
5721
6770
|
// Empty is intentional: resolveFooterLook always appends its guaranteed fallback.
|
|
5722
|
-
recommendedFooterLookIds: (input.recommendedFooterLookIds ?? []).map(
|
|
6771
|
+
recommendedFooterLookIds: (input.recommendedFooterLookIds ?? []).map(
|
|
6772
|
+
asFooterLookId
|
|
6773
|
+
),
|
|
5723
6774
|
buttonPersonalityChoices: input.buttonPersonalityChoices,
|
|
5724
|
-
paletteVariantChoices: input.paletteVariantChoices
|
|
6775
|
+
paletteVariantChoices: input.paletteVariantChoices,
|
|
6776
|
+
typographyPresetChoices,
|
|
6777
|
+
defaultTypographyPresetId
|
|
5725
6778
|
};
|
|
5726
6779
|
}
|
|
5727
6780
|
function buttonChoice(id, note) {
|
|
@@ -5730,7 +6783,91 @@ function buttonChoice(id, note) {
|
|
|
5730
6783
|
function paletteChoice(id, note) {
|
|
5731
6784
|
return note ? { id: asPaletteVariantId(id), note } : { id: asPaletteVariantId(id) };
|
|
5732
6785
|
}
|
|
5733
|
-
|
|
6786
|
+
function headerLayoutChoice(id, note) {
|
|
6787
|
+
return note ? { id: asHeaderLayoutId(id), note } : { id: asHeaderLayoutId(id) };
|
|
6788
|
+
}
|
|
6789
|
+
function headerStyleChoice(id, note) {
|
|
6790
|
+
return note ? { id: asHeaderStyleId(id), note } : { id: asHeaderStyleId(id) };
|
|
6791
|
+
}
|
|
6792
|
+
function unbrandHeaderLayoutId(id) {
|
|
6793
|
+
return id;
|
|
6794
|
+
}
|
|
6795
|
+
function uniqueHeaderLayoutChoices(choices) {
|
|
6796
|
+
const seen = /* @__PURE__ */ new Set();
|
|
6797
|
+
const unique = choices.filter((choice) => {
|
|
6798
|
+
if (seen.has(choice.id)) return false;
|
|
6799
|
+
seen.add(choice.id);
|
|
6800
|
+
return true;
|
|
6801
|
+
});
|
|
6802
|
+
const first = unique[0];
|
|
6803
|
+
if (!first) {
|
|
6804
|
+
throw new Error("Expected at least one curated header layout choice.");
|
|
6805
|
+
}
|
|
6806
|
+
return [first, ...unique.slice(1)];
|
|
6807
|
+
}
|
|
6808
|
+
function nonEmptyHeaderStyleChoices(choices, fallbackLayoutId) {
|
|
6809
|
+
const first = choices[0] ?? {
|
|
6810
|
+
id: getCompatibleHeaderStyleIds(fallbackLayoutId)[0] ?? asHeaderStyleId("minimal")
|
|
6811
|
+
};
|
|
6812
|
+
return [first, ...choices.slice(1)];
|
|
6813
|
+
}
|
|
6814
|
+
function inferHeaderCurationFromLegacyLooks(lookIds) {
|
|
6815
|
+
const selections = lookIds.map((lookId) => resolveLegacyHeaderLookAlias(asHeaderLookId(lookId))).filter(
|
|
6816
|
+
(selection) => Boolean(selection)
|
|
6817
|
+
);
|
|
6818
|
+
const defaultHeaderSelection = selections[0] ?? {
|
|
6819
|
+
layoutId: asHeaderLayoutId("classic"),
|
|
6820
|
+
styleId: asHeaderStyleId("minimal")
|
|
6821
|
+
};
|
|
6822
|
+
const layoutChoices = uniqueHeaderLayoutChoices(
|
|
6823
|
+
selections.map((selection) => headerLayoutChoice(selection.layoutId))
|
|
6824
|
+
);
|
|
6825
|
+
const stylesByLayout = {};
|
|
6826
|
+
for (const layoutChoice of layoutChoices) {
|
|
6827
|
+
const styleChoices = selections.filter((selection) => selection.layoutId === layoutChoice.id).map((selection) => headerStyleChoice(selection.styleId));
|
|
6828
|
+
stylesByLayout[unbrandHeaderLayoutId(layoutChoice.id)] = nonEmptyHeaderStyleChoices(styleChoices, layoutChoice.id);
|
|
6829
|
+
}
|
|
6830
|
+
return {
|
|
6831
|
+
defaultHeaderSelection,
|
|
6832
|
+
recommendedHeaderLayoutChoices: layoutChoices,
|
|
6833
|
+
recommendedHeaderStyleChoicesByLayout: stylesByLayout
|
|
6834
|
+
};
|
|
6835
|
+
}
|
|
6836
|
+
function typographyChoice(id, note) {
|
|
6837
|
+
return note ? { id: asTypographyPresetId(id), note } : { id: asTypographyPresetId(id) };
|
|
6838
|
+
}
|
|
6839
|
+
function defaultTypographyPresetChoicesForRecipe(recipe) {
|
|
6840
|
+
switch (recipe) {
|
|
6841
|
+
case "clean-sans":
|
|
6842
|
+
return [
|
|
6843
|
+
typographyChoice("typography-preset:modern-sans"),
|
|
6844
|
+
typographyChoice("typography-preset:luxe-contrast"),
|
|
6845
|
+
typographyChoice("typography-preset:bold-display")
|
|
6846
|
+
];
|
|
6847
|
+
case "friendly-sans":
|
|
6848
|
+
return [
|
|
6849
|
+
typographyChoice("typography-preset:warm-rounded"),
|
|
6850
|
+
typographyChoice("typography-preset:modern-sans"),
|
|
6851
|
+
typographyChoice("typography-preset:editorial-serif")
|
|
6852
|
+
];
|
|
6853
|
+
case "serif-editorial":
|
|
6854
|
+
return [
|
|
6855
|
+
typographyChoice("typography-preset:editorial-serif"),
|
|
6856
|
+
typographyChoice("typography-preset:classic-serif"),
|
|
6857
|
+
typographyChoice("typography-preset:warm-rounded")
|
|
6858
|
+
];
|
|
6859
|
+
case "classic-serif":
|
|
6860
|
+
return [
|
|
6861
|
+
typographyChoice("typography-preset:classic-serif"),
|
|
6862
|
+
typographyChoice("typography-preset:luxe-contrast"),
|
|
6863
|
+
typographyChoice("typography-preset:editorial-serif")
|
|
6864
|
+
];
|
|
6865
|
+
}
|
|
6866
|
+
}
|
|
6867
|
+
function getCuratedSiteStyle(id) {
|
|
6868
|
+
return curatedSiteStylesById.get(id) ?? null;
|
|
6869
|
+
}
|
|
6870
|
+
var curatedSiteStyleIdValues, quietBudget, balancedBudget, expressiveBudget, expressiveUnderlineInputs, generatedContentFrameKinds, curatedSiteStyles, curatedSiteStylesById;
|
|
5734
6871
|
var init_curatedSiteStyles = __esm({
|
|
5735
6872
|
"../theme-core/src/site-styles/curatedSiteStyles.ts"() {
|
|
5736
6873
|
init_personalities();
|
|
@@ -5740,6 +6877,7 @@ var init_curatedSiteStyles = __esm({
|
|
|
5740
6877
|
init_curatedChoices();
|
|
5741
6878
|
init_sourceCatalogs();
|
|
5742
6879
|
init_types2();
|
|
6880
|
+
init_typographyPresets();
|
|
5743
6881
|
curatedSiteStyleIdValues = [
|
|
5744
6882
|
"site-style:calm-studio",
|
|
5745
6883
|
"site-style:clear-professional",
|
|
@@ -5751,6 +6889,7 @@ var init_curatedSiteStyles = __esm({
|
|
|
5751
6889
|
"site-style:personal-retreat-journal",
|
|
5752
6890
|
"site-style:tactile-workshop",
|
|
5753
6891
|
"site-style:modern-wellness",
|
|
6892
|
+
"site-style:soft-earth",
|
|
5754
6893
|
"site-style:bold-launch",
|
|
5755
6894
|
"site-style:south-west-twerk-school"
|
|
5756
6895
|
];
|
|
@@ -5832,7 +6971,11 @@ var init_curatedSiteStyles = __esm({
|
|
|
5832
6971
|
motion: "subtle"
|
|
5833
6972
|
},
|
|
5834
6973
|
compositionBudget: quietBudget,
|
|
5835
|
-
recommendedHeaderLookIds: [
|
|
6974
|
+
recommendedHeaderLookIds: [
|
|
6975
|
+
"centered-calm",
|
|
6976
|
+
"minimal-transparent",
|
|
6977
|
+
"clean-base"
|
|
6978
|
+
],
|
|
5836
6979
|
buttonPersonalityChoices: [
|
|
5837
6980
|
buttonChoice("soft-pill"),
|
|
5838
6981
|
buttonChoice("pebble"),
|
|
@@ -5861,7 +7004,11 @@ var init_curatedSiteStyles = __esm({
|
|
|
5861
7004
|
motion: "subtle"
|
|
5862
7005
|
},
|
|
5863
7006
|
compositionBudget: balancedBudget,
|
|
5864
|
-
recommendedHeaderLookIds: [
|
|
7007
|
+
recommendedHeaderLookIds: [
|
|
7008
|
+
"practical-utility",
|
|
7009
|
+
"brand-solid",
|
|
7010
|
+
"clean-base"
|
|
7011
|
+
],
|
|
5865
7012
|
buttonPersonalityChoices: [
|
|
5866
7013
|
buttonChoice("confident-chip"),
|
|
5867
7014
|
buttonChoice("soft-pill"),
|
|
@@ -5888,7 +7035,11 @@ var init_curatedSiteStyles = __esm({
|
|
|
5888
7035
|
motion: "subtle"
|
|
5889
7036
|
},
|
|
5890
7037
|
compositionBudget: balancedBudget,
|
|
5891
|
-
recommendedHeaderLookIds: [
|
|
7038
|
+
recommendedHeaderLookIds: [
|
|
7039
|
+
"serif-line",
|
|
7040
|
+
"minimal-transparent",
|
|
7041
|
+
"centered-calm"
|
|
7042
|
+
],
|
|
5892
7043
|
buttonPersonalityChoices: [
|
|
5893
7044
|
buttonChoice("editorial-link"),
|
|
5894
7045
|
buttonChoice("soft-pill"),
|
|
@@ -5916,7 +7067,11 @@ var init_curatedSiteStyles = __esm({
|
|
|
5916
7067
|
motion: "expressive"
|
|
5917
7068
|
},
|
|
5918
7069
|
compositionBudget: balancedBudget,
|
|
5919
|
-
recommendedHeaderLookIds: [
|
|
7070
|
+
recommendedHeaderLookIds: [
|
|
7071
|
+
"brand-solid",
|
|
7072
|
+
"practical-utility",
|
|
7073
|
+
"clean-base"
|
|
7074
|
+
],
|
|
5920
7075
|
buttonPersonalityChoices: [
|
|
5921
7076
|
buttonChoice("pebble"),
|
|
5922
7077
|
buttonChoice("brushed-wash"),
|
|
@@ -5933,7 +7088,10 @@ var init_curatedSiteStyles = __esm({
|
|
|
5933
7088
|
name: "Quiet Luxury",
|
|
5934
7089
|
description: "Minimal, confident, and refined for premium experiences and private services.",
|
|
5935
7090
|
generationBrief: "Use fewer claims, more specificity, and restrained sensory detail. Favor elegant media and low repetition over dense panels.",
|
|
5936
|
-
siteCreatorSelection: {
|
|
7091
|
+
siteCreatorSelection: {
|
|
7092
|
+
kind: "site_creator_keyword_heuristic",
|
|
7093
|
+
priority: 20
|
|
7094
|
+
},
|
|
5937
7095
|
selectionKeywordRules: [
|
|
5938
7096
|
{ kind: "word", value: "luxury" },
|
|
5939
7097
|
{ kind: "word", value: "premium" },
|
|
@@ -5951,7 +7109,11 @@ var init_curatedSiteStyles = __esm({
|
|
|
5951
7109
|
motion: "none"
|
|
5952
7110
|
},
|
|
5953
7111
|
compositionBudget: quietBudget,
|
|
5954
|
-
recommendedHeaderLookIds: [
|
|
7112
|
+
recommendedHeaderLookIds: [
|
|
7113
|
+
"minimal-transparent",
|
|
7114
|
+
"serif-line",
|
|
7115
|
+
"clean-base"
|
|
7116
|
+
],
|
|
5955
7117
|
buttonPersonalityChoices: [
|
|
5956
7118
|
buttonChoice("editorial-link"),
|
|
5957
7119
|
buttonChoice("confident-chip"),
|
|
@@ -5987,7 +7149,11 @@ var init_curatedSiteStyles = __esm({
|
|
|
5987
7149
|
motion: "none"
|
|
5988
7150
|
},
|
|
5989
7151
|
compositionBudget: quietBudget,
|
|
5990
|
-
recommendedHeaderLookIds: [
|
|
7152
|
+
recommendedHeaderLookIds: [
|
|
7153
|
+
"practical-utility",
|
|
7154
|
+
"brand-solid",
|
|
7155
|
+
"clean-base"
|
|
7156
|
+
],
|
|
5991
7157
|
buttonPersonalityChoices: [
|
|
5992
7158
|
buttonChoice("confident-chip"),
|
|
5993
7159
|
buttonChoice("pebble"),
|
|
@@ -6014,7 +7180,11 @@ var init_curatedSiteStyles = __esm({
|
|
|
6014
7180
|
motion: "subtle"
|
|
6015
7181
|
},
|
|
6016
7182
|
compositionBudget: balancedBudget,
|
|
6017
|
-
recommendedHeaderLookIds: [
|
|
7183
|
+
recommendedHeaderLookIds: [
|
|
7184
|
+
"centered-calm",
|
|
7185
|
+
"minimal-transparent",
|
|
7186
|
+
"clean-base"
|
|
7187
|
+
],
|
|
6018
7188
|
buttonPersonalityChoices: [
|
|
6019
7189
|
buttonChoice("soft-pill"),
|
|
6020
7190
|
buttonChoice("pebble"),
|
|
@@ -6031,7 +7201,10 @@ var init_curatedSiteStyles = __esm({
|
|
|
6031
7201
|
name: "Quiet Practice",
|
|
6032
7202
|
description: "Grounded, calm, and practical for small appointment-first practices.",
|
|
6033
7203
|
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.",
|
|
6034
|
-
siteCreatorSelection: {
|
|
7204
|
+
siteCreatorSelection: {
|
|
7205
|
+
kind: "site_creator_keyword_heuristic",
|
|
7206
|
+
priority: 30
|
|
7207
|
+
},
|
|
6035
7208
|
selectionKeywordRules: [
|
|
6036
7209
|
{ kind: "substring", value: "massage" },
|
|
6037
7210
|
{ kind: "word", value: "bodywork" },
|
|
@@ -6052,7 +7225,11 @@ var init_curatedSiteStyles = __esm({
|
|
|
6052
7225
|
motion: "subtle"
|
|
6053
7226
|
},
|
|
6054
7227
|
compositionBudget: quietBudget,
|
|
6055
|
-
recommendedHeaderLookIds: [
|
|
7228
|
+
recommendedHeaderLookIds: [
|
|
7229
|
+
"practical-utility",
|
|
7230
|
+
"clean-base",
|
|
7231
|
+
"centered-calm"
|
|
7232
|
+
],
|
|
6056
7233
|
buttonPersonalityChoices: [
|
|
6057
7234
|
buttonChoice("pebble"),
|
|
6058
7235
|
buttonChoice("soft-pill"),
|
|
@@ -6069,7 +7246,10 @@ var init_curatedSiteStyles = __esm({
|
|
|
6069
7246
|
name: "Personal Retreat Journal",
|
|
6070
7247
|
description: "Warm, story-led, and readable for solo practitioners with mixed offers.",
|
|
6071
7248
|
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.",
|
|
6072
|
-
siteCreatorSelection: {
|
|
7249
|
+
siteCreatorSelection: {
|
|
7250
|
+
kind: "site_creator_keyword_heuristic",
|
|
7251
|
+
priority: 40
|
|
7252
|
+
},
|
|
6073
7253
|
selectionKeywordRules: [
|
|
6074
7254
|
{ kind: "substring", value: "retreat" },
|
|
6075
7255
|
{ kind: "phrase", value: "solo practitioner" },
|
|
@@ -6089,7 +7269,11 @@ var init_curatedSiteStyles = __esm({
|
|
|
6089
7269
|
motion: "subtle"
|
|
6090
7270
|
},
|
|
6091
7271
|
compositionBudget: balancedBudget,
|
|
6092
|
-
recommendedHeaderLookIds: [
|
|
7272
|
+
recommendedHeaderLookIds: [
|
|
7273
|
+
"serif-line",
|
|
7274
|
+
"centered-calm",
|
|
7275
|
+
"minimal-transparent"
|
|
7276
|
+
],
|
|
6093
7277
|
buttonPersonalityChoices: [
|
|
6094
7278
|
buttonChoice("editorial-link"),
|
|
6095
7279
|
buttonChoice("soft-pill"),
|
|
@@ -6106,7 +7290,10 @@ var init_curatedSiteStyles = __esm({
|
|
|
6106
7290
|
name: "Tactile Workshop",
|
|
6107
7291
|
description: "Bright, hands-on, and image-led for maker studios, workshops, and creative classes.",
|
|
6108
7292
|
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.",
|
|
6109
|
-
siteCreatorSelection: {
|
|
7293
|
+
siteCreatorSelection: {
|
|
7294
|
+
kind: "site_creator_keyword_heuristic",
|
|
7295
|
+
priority: 50
|
|
7296
|
+
},
|
|
6110
7297
|
selectionKeywordRules: [
|
|
6111
7298
|
{ kind: "substring", value: "ceramic" },
|
|
6112
7299
|
{ kind: "word", value: "pottery" },
|
|
@@ -6126,8 +7313,15 @@ var init_curatedSiteStyles = __esm({
|
|
|
6126
7313
|
motion: "subtle"
|
|
6127
7314
|
},
|
|
6128
7315
|
compositionBudget: balancedBudget,
|
|
6129
|
-
recommendedHeaderLookIds: [
|
|
6130
|
-
|
|
7316
|
+
recommendedHeaderLookIds: [
|
|
7317
|
+
"brand-solid",
|
|
7318
|
+
"practical-utility",
|
|
7319
|
+
"clean-base"
|
|
7320
|
+
],
|
|
7321
|
+
recommendedFooterLookIds: [
|
|
7322
|
+
"site-footer-brand-two-band",
|
|
7323
|
+
"footer-muted-grounding"
|
|
7324
|
+
],
|
|
6131
7325
|
buttonPersonalityChoices: [
|
|
6132
7326
|
buttonChoice("pebble"),
|
|
6133
7327
|
buttonChoice("confident-chip"),
|
|
@@ -6141,12 +7335,121 @@ var init_curatedSiteStyles = __esm({
|
|
|
6141
7335
|
paletteChoice("warm-neutral-clay")
|
|
6142
7336
|
]
|
|
6143
7337
|
}),
|
|
7338
|
+
defineCuratedSiteStyle({
|
|
7339
|
+
id: "site-style:soft-earth",
|
|
7340
|
+
name: "Soft Earth",
|
|
7341
|
+
description: "Warm, grounded, and editorial for yoga studios, retreats, and wellbeing communities.",
|
|
7342
|
+
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.",
|
|
7343
|
+
siteCreatorSelection: {
|
|
7344
|
+
kind: "site_creator_keyword_heuristic",
|
|
7345
|
+
priority: 45
|
|
7346
|
+
},
|
|
7347
|
+
selectionKeywordRules: [
|
|
7348
|
+
{ kind: "word", value: "meditation" },
|
|
7349
|
+
{ kind: "word", value: "wellbeing" },
|
|
7350
|
+
{ kind: "substring", value: "retreat" },
|
|
7351
|
+
{ kind: "phrase", value: "yoga studio" },
|
|
7352
|
+
{ kind: "phrase", value: "mindful movement" }
|
|
7353
|
+
],
|
|
7354
|
+
tokenRecipes: {
|
|
7355
|
+
palette: "warm-neutral",
|
|
7356
|
+
contrast: "standard",
|
|
7357
|
+
radius: "soft",
|
|
7358
|
+
shadow: "subtle",
|
|
7359
|
+
typography: "serif-editorial",
|
|
7360
|
+
spacing: "airy",
|
|
7361
|
+
motion: "subtle"
|
|
7362
|
+
},
|
|
7363
|
+
compositionBudget: balancedBudget,
|
|
7364
|
+
themeOverrides: {
|
|
7365
|
+
typography: {
|
|
7366
|
+
body: {
|
|
7367
|
+
family: "Inter, system-ui, sans-serif",
|
|
7368
|
+
size: "md",
|
|
7369
|
+
weight: "regular",
|
|
7370
|
+
lineHeight: "relaxed",
|
|
7371
|
+
letterSpacing: "normal"
|
|
7372
|
+
},
|
|
7373
|
+
headings: {
|
|
7374
|
+
default: {
|
|
7375
|
+
family: '"Cormorant Garamond", Georgia, serif',
|
|
7376
|
+
weight: "regular",
|
|
7377
|
+
lineHeight: "normal",
|
|
7378
|
+
letterSpacing: "normal",
|
|
7379
|
+
colorToken: "text",
|
|
7380
|
+
italic: null,
|
|
7381
|
+
case: null
|
|
7382
|
+
},
|
|
7383
|
+
h1: {
|
|
7384
|
+
size: "xl",
|
|
7385
|
+
weight: "regular",
|
|
7386
|
+
lineHeight: "normal",
|
|
7387
|
+
letterSpacing: "normal",
|
|
7388
|
+
italic: null
|
|
7389
|
+
},
|
|
7390
|
+
h2: {
|
|
7391
|
+
size: "lg",
|
|
7392
|
+
weight: "regular",
|
|
7393
|
+
lineHeight: "normal",
|
|
7394
|
+
letterSpacing: "normal",
|
|
7395
|
+
italic: null
|
|
7396
|
+
},
|
|
7397
|
+
h3: {
|
|
7398
|
+
size: "md",
|
|
7399
|
+
weight: "regular",
|
|
7400
|
+
lineHeight: "normal",
|
|
7401
|
+
letterSpacing: "normal",
|
|
7402
|
+
italic: null
|
|
7403
|
+
}
|
|
7404
|
+
},
|
|
7405
|
+
scale: "majorThird"
|
|
7406
|
+
},
|
|
7407
|
+
bodyText: {
|
|
7408
|
+
intro: {
|
|
7409
|
+
paragraphSize: "default",
|
|
7410
|
+
headingSize: "editorial"
|
|
7411
|
+
}
|
|
7412
|
+
}
|
|
7413
|
+
},
|
|
7414
|
+
recommendedAppearancePresetIds: [
|
|
7415
|
+
"hero-brand-scrim",
|
|
7416
|
+
"intro-soft-earth-statement",
|
|
7417
|
+
"feature-cards-soft-earth-offerings",
|
|
7418
|
+
"testimonials-soft-earth-proof-band",
|
|
7419
|
+
"faq-soft-earth-two-column",
|
|
7420
|
+
"contact-form-panel"
|
|
7421
|
+
],
|
|
7422
|
+
recommendedHeaderLookIds: [
|
|
7423
|
+
"centered-calm",
|
|
7424
|
+
"minimal-transparent",
|
|
7425
|
+
"serif-line"
|
|
7426
|
+
],
|
|
7427
|
+
recommendedFooterLookIds: [
|
|
7428
|
+
"footer-muted-grounding",
|
|
7429
|
+
"site-footer-brand-two-band"
|
|
7430
|
+
],
|
|
7431
|
+
buttonPersonalityChoices: [
|
|
7432
|
+
buttonChoice("earth-pill"),
|
|
7433
|
+
buttonChoice("soft-pill"),
|
|
7434
|
+
buttonChoice("pebble"),
|
|
7435
|
+
buttonChoice("editorial-link")
|
|
7436
|
+
],
|
|
7437
|
+
paletteVariantChoices: [
|
|
7438
|
+
paletteChoice("warm-neutral-soft-earth"),
|
|
7439
|
+
paletteChoice("warm-neutral-clay"),
|
|
7440
|
+
paletteChoice("warm-neutral-forest"),
|
|
7441
|
+
paletteChoice("soft-natural-sage")
|
|
7442
|
+
]
|
|
7443
|
+
}),
|
|
6144
7444
|
defineCuratedSiteStyle({
|
|
6145
7445
|
id: "site-style:bold-launch",
|
|
6146
7446
|
name: "Bold Launch",
|
|
6147
7447
|
description: "High-energy and punchy for launches, campaigns, and creative offers.",
|
|
6148
7448
|
generationBrief: "Use crisp positioning, bold hero structure, strong calls to action, and confident visual rhythm. Keep it precise, not shouty.",
|
|
6149
|
-
siteCreatorSelection: {
|
|
7449
|
+
siteCreatorSelection: {
|
|
7450
|
+
kind: "site_creator_keyword_heuristic",
|
|
7451
|
+
priority: 10
|
|
7452
|
+
},
|
|
6150
7453
|
selectionKeywordRules: [
|
|
6151
7454
|
{ kind: "substring", value: "launch" },
|
|
6152
7455
|
{ kind: "substring", value: "campaign" },
|
|
@@ -6165,7 +7468,11 @@ var init_curatedSiteStyles = __esm({
|
|
|
6165
7468
|
motion: "expressive"
|
|
6166
7469
|
},
|
|
6167
7470
|
compositionBudget: expressiveBudget,
|
|
6168
|
-
recommendedHeaderLookIds: [
|
|
7471
|
+
recommendedHeaderLookIds: [
|
|
7472
|
+
"transparent-overlay",
|
|
7473
|
+
"floating-glass",
|
|
7474
|
+
"brand-solid"
|
|
7475
|
+
],
|
|
6169
7476
|
buttonPersonalityChoices: [
|
|
6170
7477
|
buttonChoice("ink-stamp"),
|
|
6171
7478
|
buttonChoice("confident-chip"),
|
|
@@ -6194,49 +7501,13 @@ var init_curatedSiteStyles = __esm({
|
|
|
6194
7501
|
motion: "expressive"
|
|
6195
7502
|
},
|
|
6196
7503
|
compositionBudget: expressiveBudget,
|
|
7504
|
+
typographyPresetChoices: [
|
|
7505
|
+
typographyChoice("typography-preset:bold-display"),
|
|
7506
|
+
typographyChoice("typography-preset:modern-sans"),
|
|
7507
|
+
typographyChoice("typography-preset:luxe-contrast")
|
|
7508
|
+
],
|
|
7509
|
+
defaultTypographyPresetId: "typography-preset:bold-display",
|
|
6197
7510
|
themeOverrides: {
|
|
6198
|
-
typography: {
|
|
6199
|
-
body: {
|
|
6200
|
-
family: "Manrope, system-ui, sans-serif",
|
|
6201
|
-
size: "lg",
|
|
6202
|
-
weight: "regular",
|
|
6203
|
-
lineHeight: "relaxed",
|
|
6204
|
-
letterSpacing: "normal"
|
|
6205
|
-
},
|
|
6206
|
-
headings: {
|
|
6207
|
-
default: {
|
|
6208
|
-
family: '"TAN - PEARL", sans-serif',
|
|
6209
|
-
weight: "bold",
|
|
6210
|
-
lineHeight: "normal",
|
|
6211
|
-
letterSpacing: "tight",
|
|
6212
|
-
colorToken: "primary",
|
|
6213
|
-
italic: null,
|
|
6214
|
-
case: null
|
|
6215
|
-
},
|
|
6216
|
-
h1: {
|
|
6217
|
-
size: "xl",
|
|
6218
|
-
weight: "bold",
|
|
6219
|
-
lineHeight: "normal",
|
|
6220
|
-
letterSpacing: "tight",
|
|
6221
|
-
italic: null
|
|
6222
|
-
},
|
|
6223
|
-
h2: {
|
|
6224
|
-
size: "lg",
|
|
6225
|
-
weight: "bold",
|
|
6226
|
-
lineHeight: "normal",
|
|
6227
|
-
letterSpacing: "normal",
|
|
6228
|
-
italic: null
|
|
6229
|
-
},
|
|
6230
|
-
h3: {
|
|
6231
|
-
size: "md",
|
|
6232
|
-
weight: "bold",
|
|
6233
|
-
lineHeight: "normal",
|
|
6234
|
-
letterSpacing: "normal",
|
|
6235
|
-
italic: null
|
|
6236
|
-
}
|
|
6237
|
-
},
|
|
6238
|
-
scale: "balanced"
|
|
6239
|
-
},
|
|
6240
7511
|
bodyText: {
|
|
6241
7512
|
intro: {
|
|
6242
7513
|
paragraphSize: "editorial",
|
|
@@ -6252,8 +7523,15 @@ var init_curatedSiteStyles = __esm({
|
|
|
6252
7523
|
"testimonials-accent-quote-proof",
|
|
6253
7524
|
"contact-form-brand-depth-card"
|
|
6254
7525
|
],
|
|
6255
|
-
recommendedHeaderLookIds: [
|
|
6256
|
-
|
|
7526
|
+
recommendedHeaderLookIds: [
|
|
7527
|
+
"brand-solid",
|
|
7528
|
+
"transparent-overlay",
|
|
7529
|
+
"practical-utility"
|
|
7530
|
+
],
|
|
7531
|
+
recommendedFooterLookIds: [
|
|
7532
|
+
"site-footer-brand-two-band",
|
|
7533
|
+
"footer-muted-grounding"
|
|
7534
|
+
],
|
|
6257
7535
|
buttonPersonalityChoices: [
|
|
6258
7536
|
buttonChoice("showtime-pill"),
|
|
6259
7537
|
buttonChoice("confident-chip"),
|
|
@@ -6268,7 +7546,7 @@ var init_curatedSiteStyles = __esm({
|
|
|
6268
7546
|
]
|
|
6269
7547
|
})
|
|
6270
7548
|
];
|
|
6271
|
-
new Map(
|
|
7549
|
+
curatedSiteStylesById = new Map(
|
|
6272
7550
|
curatedSiteStyles.map((style) => [style.id, style])
|
|
6273
7551
|
);
|
|
6274
7552
|
}
|
|
@@ -6586,6 +7864,7 @@ var init_previewCompiler = __esm({
|
|
|
6586
7864
|
init_variants();
|
|
6587
7865
|
init_curatedChoices();
|
|
6588
7866
|
init_curatedSiteStyles();
|
|
7867
|
+
init_typographyPresets();
|
|
6589
7868
|
init_resolver2();
|
|
6590
7869
|
init_types2();
|
|
6591
7870
|
init_footerLooks();
|
|
@@ -6599,6 +7878,7 @@ var init_previewCompiler = __esm({
|
|
|
6599
7878
|
init_runtimeCompiler();
|
|
6600
7879
|
init_curatedChoices();
|
|
6601
7880
|
init_curatedSiteStyles();
|
|
7881
|
+
init_typographyPresets();
|
|
6602
7882
|
init_types2();
|
|
6603
7883
|
}
|
|
6604
7884
|
});
|
|
@@ -6865,6 +8145,12 @@ var init_pageDesignEditorErrors = __esm({
|
|
|
6865
8145
|
"../theme-core/src/site-styles/pageDesignEditorErrors.ts"() {
|
|
6866
8146
|
}
|
|
6867
8147
|
});
|
|
8148
|
+
|
|
8149
|
+
// ../theme-core/src/site-styles/persistedIdParseResult.ts
|
|
8150
|
+
var init_persistedIdParseResult = __esm({
|
|
8151
|
+
"../theme-core/src/site-styles/persistedIdParseResult.ts"() {
|
|
8152
|
+
}
|
|
8153
|
+
});
|
|
6868
8154
|
var themeTokenRecipeOptions;
|
|
6869
8155
|
var init_tokenRecipes = __esm({
|
|
6870
8156
|
"../theme-core/src/site-styles/tokenRecipes.ts"() {
|
|
@@ -6918,6 +8204,7 @@ var init_site_styles = __esm({
|
|
|
6918
8204
|
init_pageDesignEditorModel();
|
|
6919
8205
|
init_pageDesignIntent();
|
|
6920
8206
|
init_previewCustomization();
|
|
8207
|
+
init_persistedIdParseResult();
|
|
6921
8208
|
init_rawStyleFields();
|
|
6922
8209
|
init_records();
|
|
6923
8210
|
init_resolver2();
|
|
@@ -6926,6 +8213,7 @@ var init_site_styles = __esm({
|
|
|
6926
8213
|
init_sourceCatalogs();
|
|
6927
8214
|
init_styleTags();
|
|
6928
8215
|
init_tokenRecipes();
|
|
8216
|
+
init_typographyPresets();
|
|
6929
8217
|
init_types2();
|
|
6930
8218
|
}
|
|
6931
8219
|
});
|
|
@@ -10998,8 +12286,9 @@ var init_faqAccordion = __esm({
|
|
|
10998
12286
|
},
|
|
10999
12287
|
fallback: "rb-faq-item"
|
|
11000
12288
|
},
|
|
11001
|
-
iconStyle: { $bind: { from: "theme.accordions.icon.style" } }
|
|
11002
|
-
//
|
|
12289
|
+
iconStyle: { $bind: { from: "theme.accordions.icon.style" } },
|
|
12290
|
+
// Legacy theme accordion style
|
|
12291
|
+
iconTreatment: { $bind: { from: "content._sectionStyles.accordionIconTreatment" } }
|
|
11003
12292
|
},
|
|
11004
12293
|
triggerFrom: "faqItem.question",
|
|
11005
12294
|
contentFrom: "faqItem.answer"
|
|
@@ -21643,6 +22932,9 @@ init_schema2();
|
|
|
21643
22932
|
var TEL_RE = /^[+()0-9\s-]{3,}$/;
|
|
21644
22933
|
var SLUG_PATTERN = /^(?:[a-z0-9]+(?:-[a-z0-9]+)*)(?:\/(?:[a-z0-9]+(?:-[a-z0-9]+)*))*$/;
|
|
21645
22934
|
var ALLOWED_URL_PROTOCOLS = ["http:", "https:"];
|
|
22935
|
+
var DATE_PATTERN = /^(?<year>[1-9]\d{3})-(?<month>\d{2})-(?<day>\d{2})$/;
|
|
22936
|
+
var TIME_PATTERN = /^(?<hours>[01]\d|2[0-3]):(?<minutes>[0-5]\d)$/;
|
|
22937
|
+
var DATETIME_PATTERN = /^(?<date>[1-9]\d{3}-\d{2}-\d{2})T(?<time>(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d)(?:\.\d+)?(?<offset>Z|[+-](?:[01]\d|2[0-3]):[0-5]\d)$/;
|
|
21646
22938
|
function assertNever2(value) {
|
|
21647
22939
|
throw new Error(`Unhandled field validation variant: ${JSON.stringify(value)}`);
|
|
21648
22940
|
}
|
|
@@ -21675,6 +22967,12 @@ function fieldIssueToMessage(issue2) {
|
|
|
21675
22967
|
return "Check the format and try again";
|
|
21676
22968
|
case "invalidUrl":
|
|
21677
22969
|
return "Enter a valid web address";
|
|
22970
|
+
case "invalidDate":
|
|
22971
|
+
return "Choose a valid date";
|
|
22972
|
+
case "invalidTime":
|
|
22973
|
+
return "Choose a valid time";
|
|
22974
|
+
case "invalidDateTime":
|
|
22975
|
+
return "Choose a valid date and time";
|
|
21678
22976
|
case "invalidNumber":
|
|
21679
22977
|
return `${issue2.label} needs a number`;
|
|
21680
22978
|
case "tooSmall":
|
|
@@ -21711,12 +23009,16 @@ function deriveFieldValidationPlan(field, path24 = [field.id]) {
|
|
|
21711
23009
|
case "text": {
|
|
21712
23010
|
const inputType = field.ui?.inputType;
|
|
21713
23011
|
if (inputType === "number") {
|
|
21714
|
-
const constraints2 = commonConstraints(required, {
|
|
23012
|
+
const constraints2 = commonConstraints(required, {
|
|
23013
|
+
kind: "numberType"
|
|
23014
|
+
});
|
|
21715
23015
|
if (typeof field.ui?.min === "number") constraints2.push({ kind: "numberMin", minimum: field.ui.min });
|
|
21716
23016
|
if (typeof field.ui?.max === "number") constraints2.push({ kind: "numberMax", maximum: field.ui.max });
|
|
21717
23017
|
return makePlan("number", "number", field, path24, required, constraints2);
|
|
21718
23018
|
}
|
|
21719
|
-
const constraints = commonConstraints(required, {
|
|
23019
|
+
const constraints = commonConstraints(required, {
|
|
23020
|
+
kind: "textType"
|
|
23021
|
+
});
|
|
21720
23022
|
if (inputType === "email") constraints.push({ kind: "emailFormat" });
|
|
21721
23023
|
if (inputType === "tel") constraints.push({ kind: "phoneFormat" });
|
|
21722
23024
|
if (field.ui?.pattern) constraints.push({ kind: "patternFormat", pattern: field.ui.pattern });
|
|
@@ -21724,7 +23026,9 @@ function deriveFieldValidationPlan(field, path24 = [field.id]) {
|
|
|
21724
23026
|
return makePlan("string", "string", field, path24, required, constraints);
|
|
21725
23027
|
}
|
|
21726
23028
|
case "number": {
|
|
21727
|
-
const constraints = commonConstraints(required, {
|
|
23029
|
+
const constraints = commonConstraints(required, {
|
|
23030
|
+
kind: "numberType"
|
|
23031
|
+
});
|
|
21728
23032
|
if (typeof field.min === "number") constraints.push({ kind: "numberMin", minimum: field.min });
|
|
21729
23033
|
if (typeof field.max === "number") constraints.push({ kind: "numberMax", maximum: field.max });
|
|
21730
23034
|
return makePlan("number", "number", field, path24, required, constraints);
|
|
@@ -21735,23 +23039,42 @@ function deriveFieldValidationPlan(field, path24 = [field.id]) {
|
|
|
21735
23039
|
return makePlan("string", "string", field, path24, required, constraints);
|
|
21736
23040
|
}
|
|
21737
23041
|
case "url":
|
|
21738
|
-
return makePlan(
|
|
23042
|
+
return makePlan(
|
|
23043
|
+
"string",
|
|
23044
|
+
"string",
|
|
23045
|
+
field,
|
|
23046
|
+
path24,
|
|
21739
23047
|
required,
|
|
21740
|
-
{ kind: "textType" },
|
|
21741
|
-
|
|
21742
|
-
));
|
|
23048
|
+
commonConstraints(required, { kind: "textType" }, { kind: "urlFormat", allowRelative: Boolean(field.allowRelative) })
|
|
23049
|
+
);
|
|
21743
23050
|
case "reference":
|
|
21744
23051
|
return makePlan("string", "string", field, path24, required, commonConstraints(required, { kind: "referenceText" }));
|
|
21745
23052
|
case "date":
|
|
23053
|
+
return makePlan("string", "string", field, path24, required, commonConstraints(required, { kind: "textType" }, { kind: "dateFormat" }));
|
|
21746
23054
|
case "time":
|
|
23055
|
+
return makePlan("string", "string", field, path24, required, commonConstraints(required, { kind: "textType" }, { kind: "timeFormat" }));
|
|
21747
23056
|
case "datetime":
|
|
21748
|
-
return makePlan(
|
|
23057
|
+
return makePlan(
|
|
23058
|
+
"string",
|
|
23059
|
+
"string",
|
|
23060
|
+
field,
|
|
23061
|
+
path24,
|
|
23062
|
+
required,
|
|
23063
|
+
commonConstraints(required, { kind: "textType" }, { kind: "datetimeFormat" })
|
|
23064
|
+
);
|
|
21749
23065
|
case "select":
|
|
21750
|
-
return makePlan(
|
|
21751
|
-
|
|
21752
|
-
|
|
21753
|
-
|
|
21754
|
-
|
|
23066
|
+
return makePlan(
|
|
23067
|
+
"select",
|
|
23068
|
+
"select",
|
|
23069
|
+
field,
|
|
23070
|
+
path24,
|
|
23071
|
+
required,
|
|
23072
|
+
commonConstraints(required, {
|
|
23073
|
+
kind: "selectOption",
|
|
23074
|
+
source: resolveSelectConstraintSource(field),
|
|
23075
|
+
multiple: Boolean(field.multiple)
|
|
23076
|
+
})
|
|
23077
|
+
);
|
|
21755
23078
|
case "richText":
|
|
21756
23079
|
return makePlan("richText", "object", field, path24, required, commonConstraints(required, { kind: "richTextDoc" }));
|
|
21757
23080
|
case "media":
|
|
@@ -21764,7 +23087,11 @@ function deriveFieldValidationPlan(field, path24 = [field.id]) {
|
|
|
21764
23087
|
case "repeater":
|
|
21765
23088
|
return {
|
|
21766
23089
|
...makePlan("repeater", "array", field, path24, required, commonConstraints(required, { kind: "arrayType" })),
|
|
21767
|
-
...field.polymorphic && field.itemTypes ? {
|
|
23090
|
+
...field.polymorphic && field.itemTypes ? {
|
|
23091
|
+
repeatedItemVariants: deriveRepeatedItemVariants(field, [...path24, 0])
|
|
23092
|
+
} : {
|
|
23093
|
+
repeatedItemPlan: deriveNestedFieldPlans(getRepeaterFields(field), [...path24, 0])
|
|
23094
|
+
},
|
|
21768
23095
|
constraints: withRepeaterItemConstraints(field, commonConstraints(required, { kind: "arrayType" }))
|
|
21769
23096
|
};
|
|
21770
23097
|
case "group":
|
|
@@ -21849,7 +23176,10 @@ function resolveSelectConstraintSource(field) {
|
|
|
21849
23176
|
const source = normalizeSelectSource(field);
|
|
21850
23177
|
switch (source.kind) {
|
|
21851
23178
|
case "static":
|
|
21852
|
-
return {
|
|
23179
|
+
return {
|
|
23180
|
+
kind: "static",
|
|
23181
|
+
values: field.options.map((option) => option.value)
|
|
23182
|
+
};
|
|
21853
23183
|
case "site":
|
|
21854
23184
|
case "sdk":
|
|
21855
23185
|
return { kind: "runtime", source: source.kind };
|
|
@@ -21945,7 +23275,9 @@ function normalizeFieldValue(plan, value, ctx) {
|
|
|
21945
23275
|
}
|
|
21946
23276
|
function normalizeObjectChildren(children, value, ctx) {
|
|
21947
23277
|
if (!value || typeof value !== "object" || Array.isArray(value)) return value;
|
|
21948
|
-
const normalized = {
|
|
23278
|
+
const normalized = {
|
|
23279
|
+
...value
|
|
23280
|
+
};
|
|
21949
23281
|
for (const child of children) {
|
|
21950
23282
|
normalized[child.fieldId] = normalizeFieldValue(child, normalized[child.fieldId], ctx);
|
|
21951
23283
|
}
|
|
@@ -22030,15 +23362,21 @@ function validateStringConstraint(plan, constraint, value) {
|
|
|
22030
23362
|
case "maxLength":
|
|
22031
23363
|
return value.length > constraint.maximum ? [issue(plan, "tooLong", { maximum: constraint.maximum })] : [];
|
|
22032
23364
|
case "emailFormat":
|
|
22033
|
-
return
|
|
23365
|
+
return isCanonicalEmailValue(value) ? [] : [issue(plan, "invalidEmail")];
|
|
22034
23366
|
case "phoneFormat":
|
|
22035
|
-
return
|
|
23367
|
+
return isCanonicalPhoneValue(value) ? [] : [issue(plan, "invalidPhone")];
|
|
22036
23368
|
case "patternFormat": {
|
|
22037
23369
|
const re = compilePattern(constraint.pattern);
|
|
22038
23370
|
return re && !re.test(value) ? [issue(plan, "invalidPattern")] : [];
|
|
22039
23371
|
}
|
|
22040
23372
|
case "urlFormat":
|
|
22041
|
-
return
|
|
23373
|
+
return isCanonicalUrlValue(value, { allowRelative: constraint.allowRelative }) ? [] : [issue(plan, "invalidUrl")];
|
|
23374
|
+
case "dateFormat":
|
|
23375
|
+
return isValidDateString(value) ? [] : [issue(plan, "invalidDate")];
|
|
23376
|
+
case "timeFormat":
|
|
23377
|
+
return isValidTimeString(value) ? [] : [issue(plan, "invalidTime")];
|
|
23378
|
+
case "datetimeFormat":
|
|
23379
|
+
return isValidDateTimeInstantString(value) ? [] : [issue(plan, "invalidDateTime")];
|
|
22042
23380
|
case "slugFormat":
|
|
22043
23381
|
return SLUG_PATTERN.test(value) ? [] : [issue(plan, "invalidSlug")];
|
|
22044
23382
|
default:
|
|
@@ -22075,17 +23413,24 @@ function validateRepeaterPlan(plan, value, ctx) {
|
|
|
22075
23413
|
case "arrayType":
|
|
22076
23414
|
return [];
|
|
22077
23415
|
case "minItems":
|
|
22078
|
-
return value.length < constraint.minimum ? [
|
|
23416
|
+
return value.length < constraint.minimum ? [
|
|
23417
|
+
issue(plan, "tooFewItems", {
|
|
23418
|
+
minimum: constraint.minimum,
|
|
23419
|
+
itemLabel: "item"
|
|
23420
|
+
})
|
|
23421
|
+
] : [];
|
|
22079
23422
|
case "maxItems":
|
|
22080
|
-
return value.length > constraint.maximum ? [
|
|
23423
|
+
return value.length > constraint.maximum ? [
|
|
23424
|
+
issue(plan, "tooManyItems", {
|
|
23425
|
+
maximum: constraint.maximum,
|
|
23426
|
+
itemLabel: "item"
|
|
23427
|
+
})
|
|
23428
|
+
] : [];
|
|
22081
23429
|
default:
|
|
22082
23430
|
return assertNever2(constraint);
|
|
22083
23431
|
}
|
|
22084
23432
|
});
|
|
22085
|
-
return [
|
|
22086
|
-
...constraintIssues,
|
|
22087
|
-
...value.flatMap((item, index) => validateRepeaterItem(plan, item, index, ctx))
|
|
22088
|
-
];
|
|
23433
|
+
return [...constraintIssues, ...value.flatMap((item, index) => validateRepeaterItem(plan, item, index, ctx))];
|
|
22089
23434
|
}
|
|
22090
23435
|
function validateRepeaterItem(plan, item, index, ctx) {
|
|
22091
23436
|
if (!isPlainObject(item)) return [];
|
|
@@ -22128,9 +23473,7 @@ function rebaseFieldPlanPath(plan, fromPrefix, toPrefix) {
|
|
|
22128
23473
|
}))
|
|
22129
23474
|
} : {},
|
|
22130
23475
|
...plan.repeatedItemPlan ? {
|
|
22131
|
-
repeatedItemPlan: plan.repeatedItemPlan.map(
|
|
22132
|
-
(fieldPlan) => rebaseFieldPlanPath(fieldPlan, fromPrefix, toPrefix)
|
|
22133
|
-
)
|
|
23476
|
+
repeatedItemPlan: plan.repeatedItemPlan.map((fieldPlan) => rebaseFieldPlanPath(fieldPlan, fromPrefix, toPrefix))
|
|
22134
23477
|
} : {}
|
|
22135
23478
|
};
|
|
22136
23479
|
case "string":
|
|
@@ -22217,6 +23560,9 @@ function addFieldIssueToZodContext(zodCtx, validationIssue, rootPath) {
|
|
|
22217
23560
|
case "invalidPhone":
|
|
22218
23561
|
case "invalidPattern":
|
|
22219
23562
|
case "invalidUrl":
|
|
23563
|
+
case "invalidDate":
|
|
23564
|
+
case "invalidTime":
|
|
23565
|
+
case "invalidDateTime":
|
|
22220
23566
|
case "invalidNumber":
|
|
22221
23567
|
case "tooSmall":
|
|
22222
23568
|
case "tooLarge":
|
|
@@ -22246,9 +23592,15 @@ function compilePattern(pattern) {
|
|
|
22246
23592
|
function isValidNumber(value) {
|
|
22247
23593
|
return typeof value === "number" && Number.isFinite(value);
|
|
22248
23594
|
}
|
|
22249
|
-
function
|
|
23595
|
+
function isCanonicalEmailValue(value) {
|
|
23596
|
+
return z.email().safeParse(value).success;
|
|
23597
|
+
}
|
|
23598
|
+
function isCanonicalPhoneValue(value) {
|
|
23599
|
+
return TEL_RE.test(value);
|
|
23600
|
+
}
|
|
23601
|
+
function isCanonicalUrlValue(value, options = {}) {
|
|
22250
23602
|
if (!value) return false;
|
|
22251
|
-
if (allowRelative && value.startsWith("/")) return true;
|
|
23603
|
+
if (options.allowRelative === true && value.startsWith("/")) return true;
|
|
22252
23604
|
try {
|
|
22253
23605
|
const parsed = new URL(value);
|
|
22254
23606
|
return ALLOWED_URL_PROTOCOLS.includes(parsed.protocol);
|
|
@@ -22256,6 +23608,53 @@ function isValidUrl(value, allowRelative) {
|
|
|
22256
23608
|
return false;
|
|
22257
23609
|
}
|
|
22258
23610
|
}
|
|
23611
|
+
function isValidDateString(value) {
|
|
23612
|
+
const match = DATE_PATTERN.exec(value);
|
|
23613
|
+
if (!match?.groups) return false;
|
|
23614
|
+
const year = Number(match.groups.year);
|
|
23615
|
+
const month = Number(match.groups.month);
|
|
23616
|
+
const day = Number(match.groups.day);
|
|
23617
|
+
return isValidCalendarDate(year, month, day);
|
|
23618
|
+
}
|
|
23619
|
+
function isValidTimeString(value) {
|
|
23620
|
+
return TIME_PATTERN.test(value);
|
|
23621
|
+
}
|
|
23622
|
+
function isValidDateTimeInstantString(value) {
|
|
23623
|
+
const match = DATETIME_PATTERN.exec(value);
|
|
23624
|
+
if (!match?.groups) return false;
|
|
23625
|
+
const datePart = match.groups.date;
|
|
23626
|
+
if (!datePart || !isValidDateString(datePart)) return false;
|
|
23627
|
+
return !Number.isNaN(Date.parse(value));
|
|
23628
|
+
}
|
|
23629
|
+
function isValidCalendarDate(year, month, day) {
|
|
23630
|
+
if (!Number.isInteger(year) || !Number.isInteger(month) || !Number.isInteger(day)) return false;
|
|
23631
|
+
if (year < 1 || month < 1 || month > 12) return false;
|
|
23632
|
+
return day >= 1 && day <= daysInMonth(year, month);
|
|
23633
|
+
}
|
|
23634
|
+
function daysInMonth(year, month) {
|
|
23635
|
+
switch (month) {
|
|
23636
|
+
case 2:
|
|
23637
|
+
return isLeapYear(year) ? 29 : 28;
|
|
23638
|
+
case 4:
|
|
23639
|
+
case 6:
|
|
23640
|
+
case 9:
|
|
23641
|
+
case 11:
|
|
23642
|
+
return 30;
|
|
23643
|
+
case 1:
|
|
23644
|
+
case 3:
|
|
23645
|
+
case 5:
|
|
23646
|
+
case 7:
|
|
23647
|
+
case 8:
|
|
23648
|
+
case 10:
|
|
23649
|
+
case 12:
|
|
23650
|
+
return 31;
|
|
23651
|
+
default:
|
|
23652
|
+
return 0;
|
|
23653
|
+
}
|
|
23654
|
+
}
|
|
23655
|
+
function isLeapYear(year) {
|
|
23656
|
+
return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
|
|
23657
|
+
}
|
|
22259
23658
|
function isValidSelectValue(value, values, multiple) {
|
|
22260
23659
|
if (multiple) {
|
|
22261
23660
|
return Array.isArray(value) && value.every((item) => typeof item === "string" && values.includes(item));
|
|
@@ -22548,6 +23947,342 @@ var heroBlockDefinition = {
|
|
|
22548
23947
|
manifest: heroManifest
|
|
22549
23948
|
};
|
|
22550
23949
|
|
|
23950
|
+
// ../blocks/src/system/blocks/intro.ts
|
|
23951
|
+
init_defineBlock();
|
|
23952
|
+
|
|
23953
|
+
// ../blocks/src/system/fields/aspectRatio.ts
|
|
23954
|
+
var standardAspectRatioOptions = [
|
|
23955
|
+
{ value: "auto", label: "Auto (original)" },
|
|
23956
|
+
{ value: "16/9", label: "16:9 (Landscape)" },
|
|
23957
|
+
{ value: "4/3", label: "4:3 (Standard)" },
|
|
23958
|
+
{ value: "1/1", label: "1:1 (Square)" },
|
|
23959
|
+
{ value: "3/4", label: "3:4 (Portrait)" }
|
|
23960
|
+
];
|
|
23961
|
+
function createAspectRatioField(options = {}) {
|
|
23962
|
+
return {
|
|
23963
|
+
id: options.id ?? "aspectRatio",
|
|
23964
|
+
type: "select",
|
|
23965
|
+
label: options.label ?? "Aspect ratio",
|
|
23966
|
+
...options.description ? { description: options.description } : {},
|
|
23967
|
+
required: false,
|
|
23968
|
+
defaultValue: options.defaultValue ?? "auto",
|
|
23969
|
+
multiple: false,
|
|
23970
|
+
options: [...standardAspectRatioOptions],
|
|
23971
|
+
ui: {
|
|
23972
|
+
intent: options.uiIntent ?? "display",
|
|
23973
|
+
...options.visibleWhen ? { visibleWhen: options.visibleWhen } : {}
|
|
23974
|
+
}
|
|
23975
|
+
};
|
|
23976
|
+
}
|
|
23977
|
+
|
|
23978
|
+
// ../blocks/src/system/blocks/intro.ts
|
|
23979
|
+
init_ctas();
|
|
23980
|
+
|
|
23981
|
+
// ../blocks/src/system/fields/imageLayout.ts
|
|
23982
|
+
function createImageColSizeField(options = {}) {
|
|
23983
|
+
const {
|
|
23984
|
+
id = "imageColSize",
|
|
23985
|
+
label = "Image column size",
|
|
23986
|
+
description = "Controls how large the image/thumbnail column is at desktop breakpoints.",
|
|
23987
|
+
defaultValue = "1/3",
|
|
23988
|
+
uiIntent = "display",
|
|
23989
|
+
visibleWhen
|
|
23990
|
+
} = options;
|
|
23991
|
+
return {
|
|
23992
|
+
id,
|
|
23993
|
+
type: "select",
|
|
23994
|
+
label,
|
|
23995
|
+
description,
|
|
23996
|
+
required: false,
|
|
23997
|
+
defaultValue,
|
|
23998
|
+
multiple: false,
|
|
23999
|
+
options: [
|
|
24000
|
+
{ value: "1/4", label: "Small (1/4)" },
|
|
24001
|
+
{ value: "1/3", label: "Medium (1/3)" },
|
|
24002
|
+
{ value: "2/5", label: "Large (2/5)" },
|
|
24003
|
+
{ value: "1/2", label: "Extra large (1/2)" },
|
|
24004
|
+
{ value: "2/3", label: "Huge (2/3)" }
|
|
24005
|
+
],
|
|
24006
|
+
ui: {
|
|
24007
|
+
intent: uiIntent,
|
|
24008
|
+
...visibleWhen ? { visibleWhen } : {}
|
|
24009
|
+
}
|
|
24010
|
+
};
|
|
24011
|
+
}
|
|
24012
|
+
function createImagePositionField(options = {}) {
|
|
24013
|
+
const {
|
|
24014
|
+
id = "imagePosition",
|
|
24015
|
+
label = "Image position",
|
|
24016
|
+
description = "Choose which side the image appears on.",
|
|
24017
|
+
defaultValue = "left",
|
|
24018
|
+
includeAlternate = false,
|
|
24019
|
+
uiIntent = "display",
|
|
24020
|
+
visibleWhen
|
|
24021
|
+
} = options;
|
|
24022
|
+
const positionOptions = [
|
|
24023
|
+
{ value: "left", label: "Left" },
|
|
24024
|
+
{ value: "right", label: "Right" },
|
|
24025
|
+
...includeAlternate ? [{ value: "alternate", label: "Alternate" }] : []
|
|
24026
|
+
];
|
|
24027
|
+
return {
|
|
24028
|
+
id,
|
|
24029
|
+
type: "select",
|
|
24030
|
+
label,
|
|
24031
|
+
description,
|
|
24032
|
+
required: false,
|
|
24033
|
+
defaultValue,
|
|
24034
|
+
multiple: false,
|
|
24035
|
+
// Spread to get a mutable array type without unsafe casts.
|
|
24036
|
+
options: [...positionOptions],
|
|
24037
|
+
ui: {
|
|
24038
|
+
intent: uiIntent,
|
|
24039
|
+
...visibleWhen ? { visibleWhen } : {}
|
|
24040
|
+
}
|
|
24041
|
+
};
|
|
24042
|
+
}
|
|
24043
|
+
|
|
24044
|
+
// ../blocks/src/system/blocks/intro.ts
|
|
24045
|
+
init_builder();
|
|
24046
|
+
init_fragments();
|
|
24047
|
+
function introHeading(className) {
|
|
24048
|
+
return text(
|
|
24049
|
+
{
|
|
24050
|
+
as: "h2",
|
|
24051
|
+
className
|
|
24052
|
+
},
|
|
24053
|
+
when("content.title"),
|
|
24054
|
+
bind("content.title")
|
|
24055
|
+
);
|
|
24056
|
+
}
|
|
24057
|
+
function introBody(className = "rb-prose rb-max-w-none") {
|
|
24058
|
+
return richText({ className }, bind("content.body"));
|
|
24059
|
+
}
|
|
24060
|
+
function introCtas(justify = "start") {
|
|
24061
|
+
return ctaRow({
|
|
24062
|
+
justify,
|
|
24063
|
+
gap: "md",
|
|
24064
|
+
containerClassName: "rb-mt-2"
|
|
24065
|
+
});
|
|
24066
|
+
}
|
|
24067
|
+
function introCopyStack(options = {}) {
|
|
24068
|
+
return stack(
|
|
24069
|
+
{
|
|
24070
|
+
gap: "md",
|
|
24071
|
+
className: options.className ?? "rb-intro-copy"
|
|
24072
|
+
},
|
|
24073
|
+
[
|
|
24074
|
+
introHeading(options.headingClassName ?? "rb-intro-title"),
|
|
24075
|
+
introBody(options.bodyClassName),
|
|
24076
|
+
introCtas(options.ctaJustify)
|
|
24077
|
+
]
|
|
24078
|
+
);
|
|
24079
|
+
}
|
|
24080
|
+
var introMedia = media(
|
|
24081
|
+
{
|
|
24082
|
+
className: "rb-intro-media rb-w-full rb-h-auto rb-object-cover",
|
|
24083
|
+
style: {
|
|
24084
|
+
aspectRatio: { $bind: { from: "content.aspectRatio" } }
|
|
24085
|
+
}
|
|
24086
|
+
},
|
|
24087
|
+
bind("content.media")
|
|
24088
|
+
);
|
|
24089
|
+
var centeredCopyLayout = styledSection({
|
|
24090
|
+
children: styledContainer({
|
|
24091
|
+
rootType: "stack",
|
|
24092
|
+
rootProps: { gap: "lg" },
|
|
24093
|
+
children: [
|
|
24094
|
+
introCopyStack({
|
|
24095
|
+
className: "rb-intro-copy rb-mx-auto rb-max-w-3xl rb-text-center",
|
|
24096
|
+
headingClassName: "rb-intro-title rb-text-center",
|
|
24097
|
+
bodyClassName: "rb-prose rb-mx-auto rb-max-w-none",
|
|
24098
|
+
ctaJustify: "center"
|
|
24099
|
+
})
|
|
24100
|
+
]
|
|
24101
|
+
}),
|
|
24102
|
+
baseClass: "",
|
|
24103
|
+
spacing: "medium"
|
|
24104
|
+
});
|
|
24105
|
+
var statementCopyLayout = styledSection({
|
|
24106
|
+
children: styledContainer({
|
|
24107
|
+
children: [
|
|
24108
|
+
el(
|
|
24109
|
+
"div",
|
|
24110
|
+
{
|
|
24111
|
+
className: "rb-intro rb-intro-statement rb-grid rb-grid-cols-1 rb-gap-8 rb-md-grid-cols-2 rb-md-items-start"
|
|
24112
|
+
},
|
|
24113
|
+
[
|
|
24114
|
+
introHeading("rb-intro-title rb-max-w-xl"),
|
|
24115
|
+
stack({ gap: "md", className: "rb-intro-copy rb-max-w-xl" }, [
|
|
24116
|
+
introBody(),
|
|
24117
|
+
introCtas("start")
|
|
24118
|
+
])
|
|
24119
|
+
]
|
|
24120
|
+
)
|
|
24121
|
+
]
|
|
24122
|
+
}),
|
|
24123
|
+
baseClass: "",
|
|
24124
|
+
spacing: "medium"
|
|
24125
|
+
});
|
|
24126
|
+
var statementMediaLayout = styledSection({
|
|
24127
|
+
children: styledContainer({
|
|
24128
|
+
children: [
|
|
24129
|
+
el(
|
|
24130
|
+
"div",
|
|
24131
|
+
{
|
|
24132
|
+
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"
|
|
24133
|
+
},
|
|
24134
|
+
[
|
|
24135
|
+
introHeading("rb-intro-title rb-max-w-xl"),
|
|
24136
|
+
stack({ gap: "md", className: "rb-intro-copy rb-max-w-xl" }, [
|
|
24137
|
+
introBody(),
|
|
24138
|
+
introCtas("start")
|
|
24139
|
+
]),
|
|
24140
|
+
el("div", { className: "rb-intro-media-wrap rb-w-full" }, [introMedia], when("content.media"))
|
|
24141
|
+
]
|
|
24142
|
+
)
|
|
24143
|
+
]
|
|
24144
|
+
}),
|
|
24145
|
+
baseClass: "",
|
|
24146
|
+
spacing: "medium"
|
|
24147
|
+
});
|
|
24148
|
+
var mediaCopyLayout = styledSection({
|
|
24149
|
+
children: styledContainer({
|
|
24150
|
+
children: [
|
|
24151
|
+
responsiveTwoColumn({
|
|
24152
|
+
image: el("div", { className: "rb-intro-media-wrap rb-w-full" }, [introMedia]),
|
|
24153
|
+
text: introCopyStack({
|
|
24154
|
+
className: "rb-intro-copy rb-max-w-xl",
|
|
24155
|
+
headingClassName: "rb-intro-title"
|
|
24156
|
+
}),
|
|
24157
|
+
ratioFrom: "content.ratio",
|
|
24158
|
+
imagePositionFrom: "content.imagePosition",
|
|
24159
|
+
gapFrom: "content.gap",
|
|
24160
|
+
gapFallback: "comfortable",
|
|
24161
|
+
imageWrapperClassName: "rb-w-full rb-shrink-0",
|
|
24162
|
+
textWrapperClassName: "rb-w-full rb-min-w-0 rb-flex-1 rb-self-center"
|
|
24163
|
+
})
|
|
24164
|
+
]
|
|
24165
|
+
}),
|
|
24166
|
+
baseClass: "",
|
|
24167
|
+
spacing: "medium"
|
|
24168
|
+
});
|
|
24169
|
+
var introConfig = {
|
|
24170
|
+
id: "block.intro",
|
|
24171
|
+
title: "Intro",
|
|
24172
|
+
category: "layout",
|
|
24173
|
+
includeContainerStyles: true,
|
|
24174
|
+
titleSource: "title",
|
|
24175
|
+
additionalFields: [
|
|
24176
|
+
{
|
|
24177
|
+
id: "title",
|
|
24178
|
+
type: "text",
|
|
24179
|
+
label: "Statement",
|
|
24180
|
+
required: false,
|
|
24181
|
+
multiline: true,
|
|
24182
|
+
maxLength: 160
|
|
24183
|
+
},
|
|
24184
|
+
{
|
|
24185
|
+
id: "body",
|
|
24186
|
+
type: "richText",
|
|
24187
|
+
label: "Text",
|
|
24188
|
+
required: true,
|
|
24189
|
+
ui: {
|
|
24190
|
+
richTextVariant: "limited"
|
|
24191
|
+
}
|
|
24192
|
+
},
|
|
24193
|
+
{
|
|
24194
|
+
id: "media",
|
|
24195
|
+
type: "media",
|
|
24196
|
+
label: "Media",
|
|
24197
|
+
required: false,
|
|
24198
|
+
mediaKinds: ["image"],
|
|
24199
|
+
ui: {
|
|
24200
|
+
intent: "content",
|
|
24201
|
+
visibleWhen: { field: "variant", notEquals: "statement-copy" }
|
|
24202
|
+
}
|
|
24203
|
+
},
|
|
24204
|
+
createImagePositionField({
|
|
24205
|
+
id: "imagePosition",
|
|
24206
|
+
label: "Image position",
|
|
24207
|
+
defaultValue: "left",
|
|
24208
|
+
uiIntent: "display",
|
|
24209
|
+
visibleWhen: { field: "variant", equals: "media-copy" }
|
|
24210
|
+
}),
|
|
24211
|
+
{
|
|
24212
|
+
id: "gap",
|
|
24213
|
+
type: "select",
|
|
24214
|
+
label: "Gap between media and text",
|
|
24215
|
+
required: false,
|
|
24216
|
+
defaultValue: "comfortable",
|
|
24217
|
+
multiple: false,
|
|
24218
|
+
options: [
|
|
24219
|
+
{ value: "none", label: "None" },
|
|
24220
|
+
{ value: "compact", label: "Compact" },
|
|
24221
|
+
{ value: "cozy", label: "Cozy" },
|
|
24222
|
+
{ value: "medium", label: "Medium" },
|
|
24223
|
+
{ value: "comfortable", label: "Comfortable" },
|
|
24224
|
+
{ value: "spacious", label: "Spacious" }
|
|
24225
|
+
],
|
|
24226
|
+
ui: {
|
|
24227
|
+
intent: "display",
|
|
24228
|
+
visibleWhen: { field: "variant", equals: "media-copy" }
|
|
24229
|
+
}
|
|
24230
|
+
},
|
|
24231
|
+
createImageColSizeField({
|
|
24232
|
+
id: "ratio",
|
|
24233
|
+
label: "Media column size",
|
|
24234
|
+
defaultValue: "1/2",
|
|
24235
|
+
uiIntent: "display",
|
|
24236
|
+
visibleWhen: { field: "variant", equals: "media-copy" }
|
|
24237
|
+
}),
|
|
24238
|
+
createAspectRatioField({
|
|
24239
|
+
id: "aspectRatio",
|
|
24240
|
+
label: "Media aspect ratio",
|
|
24241
|
+
description: "Crop media to a consistent aspect ratio.",
|
|
24242
|
+
defaultValue: "auto",
|
|
24243
|
+
visibleWhen: { field: "media", notEquals: null }
|
|
24244
|
+
}),
|
|
24245
|
+
createCtasRepeater({
|
|
24246
|
+
label: "Calls to action",
|
|
24247
|
+
itemLabel: "CTA",
|
|
24248
|
+
maxItems: 2
|
|
24249
|
+
})
|
|
24250
|
+
],
|
|
24251
|
+
layout: centeredCopyLayout,
|
|
24252
|
+
variants: {
|
|
24253
|
+
"centered-copy": centeredCopyLayout,
|
|
24254
|
+
"statement-copy": statementCopyLayout,
|
|
24255
|
+
"statement-media": statementMediaLayout,
|
|
24256
|
+
"media-copy": mediaCopyLayout
|
|
24257
|
+
},
|
|
24258
|
+
defaultVariant: "statement-copy",
|
|
24259
|
+
variantOptions: {
|
|
24260
|
+
"centered-copy": {
|
|
24261
|
+
label: "Centered copy",
|
|
24262
|
+
description: "A focused intro with centered text and optional calls to action."
|
|
24263
|
+
},
|
|
24264
|
+
"statement-copy": {
|
|
24265
|
+
label: "Statement and copy",
|
|
24266
|
+
description: "A large statement on the left with supporting copy on the right."
|
|
24267
|
+
},
|
|
24268
|
+
"statement-media": {
|
|
24269
|
+
label: "Statement, copy and media",
|
|
24270
|
+
description: "A three-part intro with statement, copy and a small image."
|
|
24271
|
+
},
|
|
24272
|
+
"media-copy": {
|
|
24273
|
+
label: "Media and copy",
|
|
24274
|
+
description: "A compact media/text intro for softer transitions after a hero."
|
|
24275
|
+
}
|
|
24276
|
+
},
|
|
24277
|
+
description: "A flexible introductory section for statement copy, supporting text, media, and CTAs.",
|
|
24278
|
+
tags: ["intro", "introduction", "about", "welcome", "statement", "media", "text"],
|
|
24279
|
+
icon: "PanelTopOpen"
|
|
24280
|
+
};
|
|
24281
|
+
var introManifest = createBlockManifest(introConfig);
|
|
24282
|
+
var introBlockDefinition = {
|
|
24283
|
+
manifest: introManifest
|
|
24284
|
+
};
|
|
24285
|
+
|
|
22551
24286
|
// ../blocks/src/system/blocks/body-text.ts
|
|
22552
24287
|
init_styledSection();
|
|
22553
24288
|
init_defineBlock();
|
|
@@ -23142,6 +24877,37 @@ var faqComposition = composeFragments([
|
|
|
23142
24877
|
{ fragment: faqHeadingFragment, fieldPriority: 0 },
|
|
23143
24878
|
{ fragment: faqAccordionFragment, fieldPriority: 1 }
|
|
23144
24879
|
]);
|
|
24880
|
+
function fragmentLayoutNode(layout) {
|
|
24881
|
+
return isNodeDefinitionArray(layout) ? el("div", {}, [...layout]) : layout;
|
|
24882
|
+
}
|
|
24883
|
+
function isNodeDefinitionArray(layout) {
|
|
24884
|
+
return Array.isArray(layout);
|
|
24885
|
+
}
|
|
24886
|
+
var headingLayout = fragmentLayoutNode(faqHeadingFragment.layout);
|
|
24887
|
+
var accordionLayout = fragmentLayoutNode(faqAccordionFragment.layout);
|
|
24888
|
+
var defaultLayout = styledSection({
|
|
24889
|
+
children: styledContainer({
|
|
24890
|
+
baseClassName: "rb-relative rb-isolate",
|
|
24891
|
+
children: stack({ gap: "xl", className: "rb-w-full rb-max-w-4xl rb-mx-auto" }, faqComposition.layout)
|
|
24892
|
+
}),
|
|
24893
|
+
baseClass: ""
|
|
24894
|
+
});
|
|
24895
|
+
var twoColumnLayout = styledSection({
|
|
24896
|
+
children: styledContainer({
|
|
24897
|
+
baseClassName: "rb-relative rb-isolate",
|
|
24898
|
+
children: el(
|
|
24899
|
+
"div",
|
|
24900
|
+
{
|
|
24901
|
+
className: "rb-faq-two-column rb-grid rb-grid-cols-1 rb-gap-8 rb-lg-grid-cols-2 rb-lg-items-start"
|
|
24902
|
+
},
|
|
24903
|
+
[
|
|
24904
|
+
el("div", { className: "rb-faq-two-column-heading" }, [headingLayout]),
|
|
24905
|
+
el("div", { className: "rb-faq-two-column-accordion" }, [accordionLayout])
|
|
24906
|
+
]
|
|
24907
|
+
)
|
|
24908
|
+
}),
|
|
24909
|
+
baseClass: ""
|
|
24910
|
+
});
|
|
23145
24911
|
var faqManifest = createBlockManifest({
|
|
23146
24912
|
id: "block.faq",
|
|
23147
24913
|
title: "FAQ",
|
|
@@ -23158,13 +24924,22 @@ var faqManifest = createBlockManifest({
|
|
|
23158
24924
|
label: "FAQ item styles"
|
|
23159
24925
|
})
|
|
23160
24926
|
],
|
|
23161
|
-
layout:
|
|
23162
|
-
|
|
23163
|
-
|
|
23164
|
-
|
|
23165
|
-
|
|
23166
|
-
|
|
23167
|
-
|
|
24927
|
+
layout: defaultLayout,
|
|
24928
|
+
variants: {
|
|
24929
|
+
default: defaultLayout,
|
|
24930
|
+
"two-column": twoColumnLayout
|
|
24931
|
+
},
|
|
24932
|
+
defaultVariant: "default",
|
|
24933
|
+
variantOptions: {
|
|
24934
|
+
default: {
|
|
24935
|
+
label: "Default",
|
|
24936
|
+
description: "A centered heading above one FAQ accordion."
|
|
24937
|
+
},
|
|
24938
|
+
"two-column": {
|
|
24939
|
+
label: "Two column",
|
|
24940
|
+
description: "A left heading column with FAQ items on the right."
|
|
24941
|
+
}
|
|
24942
|
+
},
|
|
23168
24943
|
description: "Accordion of frequently asked questions and answers.",
|
|
23169
24944
|
tags: ["faq", "questions", "answers", "help", "support", "accordion", "q&a"],
|
|
23170
24945
|
icon: "HelpCircle"
|
|
@@ -23821,7 +25596,8 @@ function resolveBackgroundVisualStyles(backgroundColor, tokens, defaultToken = "
|
|
|
23821
25596
|
function resolveHeaderVisualStyles(header, tokens) {
|
|
23822
25597
|
const navContainerType = header?.navContainer?.type ?? "none";
|
|
23823
25598
|
const hasContainedNav = navContainerType === "glass" || navContainerType === "pill";
|
|
23824
|
-
|
|
25599
|
+
const hasTransparentVariant = header?.variant === "transparent" || header?.variant === "floating";
|
|
25600
|
+
if (hasContainedNav || hasTransparentVariant) {
|
|
23825
25601
|
return {
|
|
23826
25602
|
backgroundToken: "transparent",
|
|
23827
25603
|
paletteHex: null,
|
|
@@ -23879,10 +25655,7 @@ var headerRootClassTransform = {
|
|
|
23879
25655
|
const navContainerType = header?.navContainer?.type ?? "none";
|
|
23880
25656
|
const hasContainedNav = navContainerType === "glass" || navContainerType === "pill";
|
|
23881
25657
|
const backgroundClass = visuals.isTransparent || hasContainedNav ? "rb-bg-transparent" : null;
|
|
23882
|
-
const classes = [
|
|
23883
|
-
config2.base,
|
|
23884
|
-
backgroundClass
|
|
23885
|
-
];
|
|
25658
|
+
const classes = [config2.base, backgroundClass];
|
|
23886
25659
|
if (!hasContainedNav) {
|
|
23887
25660
|
if (config2.blur) classes.push(config2.blur);
|
|
23888
25661
|
if (config2.blurSupport) classes.push(config2.blurSupport);
|
|
@@ -23897,7 +25670,12 @@ var headerRootClassTransform = {
|
|
|
23897
25670
|
if (shrinkOnScroll && (positioning === "sticky" || positioning === "fixed")) {
|
|
23898
25671
|
classes.push(config2.shrink);
|
|
23899
25672
|
}
|
|
23900
|
-
const VALID_VARIANTS = [
|
|
25673
|
+
const VALID_VARIANTS = [
|
|
25674
|
+
"classic",
|
|
25675
|
+
"centered",
|
|
25676
|
+
"transparent",
|
|
25677
|
+
"floating"
|
|
25678
|
+
];
|
|
23901
25679
|
const variant = header?.variant;
|
|
23902
25680
|
if (variant && VALID_VARIANTS.includes(variant)) {
|
|
23903
25681
|
classes.push(`header-variant-${variant}`);
|
|
@@ -23950,6 +25728,17 @@ var headerRootStyleTransform = {
|
|
|
23950
25728
|
return mergeStyles(...styleParts);
|
|
23951
25729
|
}
|
|
23952
25730
|
};
|
|
25731
|
+
var headerSectionBackgroundTransform = {
|
|
25732
|
+
id: "layout.headerSectionBackground",
|
|
25733
|
+
kind: "string",
|
|
25734
|
+
summary: "Resolve the inner site-header section background token",
|
|
25735
|
+
run: (value) => {
|
|
25736
|
+
const header = asPartialObject(value);
|
|
25737
|
+
const navContainerType = header?.navContainer?.type ?? "none";
|
|
25738
|
+
const usesTransparentRoot = header?.variant === "transparent" || header?.variant === "floating" || navContainerType === "glass" || navContainerType === "pill";
|
|
25739
|
+
return usesTransparentRoot ? "raw:transparent" : "background";
|
|
25740
|
+
}
|
|
25741
|
+
};
|
|
23953
25742
|
var footerRootStyleTransform = {
|
|
23954
25743
|
id: "layout.footerRootStyle",
|
|
23955
25744
|
kind: "formatter",
|
|
@@ -24208,6 +25997,7 @@ var layoutTransforms = [
|
|
|
24208
25997
|
headerRootClassTransform,
|
|
24209
25998
|
footerRootClassTransform,
|
|
24210
25999
|
headerRootStyleTransform,
|
|
26000
|
+
headerSectionBackgroundTransform,
|
|
24211
26001
|
footerRootStyleTransform,
|
|
24212
26002
|
footerBottomBarClassTransform,
|
|
24213
26003
|
footerBottomBarContainerClassTransform,
|
|
@@ -24497,15 +26287,21 @@ var mobileCta = ctaButton({
|
|
|
24497
26287
|
var mobileToggleIcon = stack({ gap: "xs", className: "nav-mobile-icon" }, [
|
|
24498
26288
|
{
|
|
24499
26289
|
type: "div",
|
|
24500
|
-
props: {
|
|
26290
|
+
props: {
|
|
26291
|
+
className: "nav-mobile-bar nav-mobile-bar-top rb-h-0.5 rb-w-5 rb-rounded-full rb-bg-current"
|
|
26292
|
+
}
|
|
24501
26293
|
},
|
|
24502
26294
|
{
|
|
24503
26295
|
type: "div",
|
|
24504
|
-
props: {
|
|
26296
|
+
props: {
|
|
26297
|
+
className: "nav-mobile-bar nav-mobile-bar-middle rb-h-0.5 rb-w-5 rb-rounded-full rb-bg-current"
|
|
26298
|
+
}
|
|
24505
26299
|
},
|
|
24506
26300
|
{
|
|
24507
26301
|
type: "div",
|
|
24508
|
-
props: {
|
|
26302
|
+
props: {
|
|
26303
|
+
className: "nav-mobile-bar nav-mobile-bar-bottom rb-h-0.5 rb-w-5 rb-rounded-full rb-bg-current"
|
|
26304
|
+
}
|
|
24509
26305
|
}
|
|
24510
26306
|
]);
|
|
24511
26307
|
var mobileToggleButton = {
|
|
@@ -24688,31 +26484,12 @@ var floatingLayout = inline(
|
|
|
24688
26484
|
],
|
|
24689
26485
|
when("$root.theme.header.variant", { equals: "floating" })
|
|
24690
26486
|
);
|
|
24691
|
-
var editorialLayout = stack(
|
|
24692
|
-
{
|
|
24693
|
-
gap: "md",
|
|
24694
|
-
align: "center",
|
|
24695
|
-
className: bindProp("$root.theme.header.maxWidth", {
|
|
24696
|
-
transforms: pipe(
|
|
24697
|
-
tx("layout.maxWidthClass", {
|
|
24698
|
-
base: `rb-header-layout ${desktopOnlyDisplay("flex")} rb-w-full rb-flex-col rb-items-center rb-gap-6 rb-text-center`
|
|
24699
|
-
})
|
|
24700
|
-
),
|
|
24701
|
-
fallback: `rb-container rb-header-layout ${desktopOnlyDisplay("flex")} rb-w-full rb-flex-col rb-items-center rb-gap-6 rb-text-center`
|
|
24702
|
-
})
|
|
24703
|
-
},
|
|
24704
|
-
[
|
|
24705
|
-
centeredLogoRow,
|
|
24706
|
-
createNavRow(
|
|
24707
|
-
`${desktopOnlyDisplay("flex")} rb-flex-wrap rb-justify-center rb-gap-x-8 rb-gap-y-3`,
|
|
24708
|
-
"center"
|
|
24709
|
-
)
|
|
24710
|
-
],
|
|
24711
|
-
when("$root.theme.header.variant", { equals: "editorial" })
|
|
24712
|
-
);
|
|
24713
26487
|
var headerLayout = headerSection(
|
|
24714
26488
|
{
|
|
24715
|
-
background: "
|
|
26489
|
+
background: bindProp("$root.theme.header", {
|
|
26490
|
+
transforms: pipe(tx("layout.headerSectionBackground")),
|
|
26491
|
+
fallback: "background"
|
|
26492
|
+
}),
|
|
24716
26493
|
allowOverflow: true,
|
|
24717
26494
|
className: bindProp("$root.theme.header", {
|
|
24718
26495
|
transforms: pipe(tx("layout.headerRootClass")),
|
|
@@ -24720,10 +26497,7 @@ var headerLayout = headerSection(
|
|
|
24720
26497
|
}),
|
|
24721
26498
|
style: bindProp("$root.theme.header", {
|
|
24722
26499
|
transforms: pipe(tx("layout.headerRootStyle")),
|
|
24723
|
-
fallback: mergeStyles(
|
|
24724
|
-
textColorStyle("text"),
|
|
24725
|
-
borderColorStyle("border")
|
|
24726
|
-
)
|
|
26500
|
+
fallback: mergeStyles(textColorStyle("text"), borderColorStyle("border"))
|
|
24727
26501
|
})
|
|
24728
26502
|
},
|
|
24729
26503
|
[
|
|
@@ -24732,7 +26506,6 @@ var headerLayout = headerSection(
|
|
|
24732
26506
|
centeredLayout,
|
|
24733
26507
|
transparentLayout,
|
|
24734
26508
|
floatingLayout,
|
|
24735
|
-
editorialLayout,
|
|
24736
26509
|
mobileOverlay
|
|
24737
26510
|
],
|
|
24738
26511
|
props({
|
|
@@ -25653,6 +27426,231 @@ var collectionBlockDefinition = {
|
|
|
25653
27426
|
manifest: collectionManifest
|
|
25654
27427
|
};
|
|
25655
27428
|
|
|
27429
|
+
// ../blocks/src/system/blocks/feature-cards.ts
|
|
27430
|
+
init_defineBlock();
|
|
27431
|
+
init_boxStyles();
|
|
27432
|
+
init_ctas();
|
|
27433
|
+
init_builder();
|
|
27434
|
+
init_fragments();
|
|
27435
|
+
init_colorStyles();
|
|
27436
|
+
function grid3(props2, children) {
|
|
27437
|
+
return el("grid", props2 ?? void 0, children ?? void 0);
|
|
27438
|
+
}
|
|
27439
|
+
var sectionHeading = stack(
|
|
27440
|
+
{ gap: "sm", className: "rb-feature-cards-heading rb-mx-auto rb-max-w-3xl rb-text-center" },
|
|
27441
|
+
[
|
|
27442
|
+
text(
|
|
27443
|
+
{
|
|
27444
|
+
as: "h2",
|
|
27445
|
+
className: "rb-feature-cards-title rb-text-center"
|
|
27446
|
+
},
|
|
27447
|
+
when("content.title"),
|
|
27448
|
+
bind("content.title")
|
|
27449
|
+
),
|
|
27450
|
+
richText(
|
|
27451
|
+
{
|
|
27452
|
+
className: "rb-feature-cards-description rb-prose rb-mx-auto rb-max-w-none",
|
|
27453
|
+
style: textColorStyle("mutedText")
|
|
27454
|
+
},
|
|
27455
|
+
when("content.description"),
|
|
27456
|
+
bind("content.description")
|
|
27457
|
+
)
|
|
27458
|
+
]
|
|
27459
|
+
);
|
|
27460
|
+
var featureCard = styledCard(
|
|
27461
|
+
[
|
|
27462
|
+
media(
|
|
27463
|
+
{
|
|
27464
|
+
className: "rb-feature-card-media rb-w-full rb-h-auto rb-object-cover",
|
|
27465
|
+
style: {
|
|
27466
|
+
aspectRatio: { $bind: { from: "card.aspectRatio" } }
|
|
27467
|
+
}
|
|
27468
|
+
},
|
|
27469
|
+
when("card.media"),
|
|
27470
|
+
bind("card.media")
|
|
27471
|
+
),
|
|
27472
|
+
stack({ gap: "sm", className: "rb-feature-card-content rb-flex-1 rb-p-6" }, [
|
|
27473
|
+
text(
|
|
27474
|
+
{
|
|
27475
|
+
as: "h3",
|
|
27476
|
+
className: "rb-feature-card-title"
|
|
27477
|
+
},
|
|
27478
|
+
bind("card.title")
|
|
27479
|
+
),
|
|
27480
|
+
richText(
|
|
27481
|
+
{
|
|
27482
|
+
className: "rb-feature-card-body rb-prose rb-max-w-none",
|
|
27483
|
+
style: textColorStyle("mutedText")
|
|
27484
|
+
},
|
|
27485
|
+
when("card.body"),
|
|
27486
|
+
bind("card.body")
|
|
27487
|
+
),
|
|
27488
|
+
ctaRow({
|
|
27489
|
+
collectionPath: "ctas",
|
|
27490
|
+
itemName: "cta",
|
|
27491
|
+
gap: "sm",
|
|
27492
|
+
justify: "start",
|
|
27493
|
+
containerClassName: "rb-mt-auto"
|
|
27494
|
+
})
|
|
27495
|
+
])
|
|
27496
|
+
],
|
|
27497
|
+
{
|
|
27498
|
+
stylesFrom: "content._cardStyles",
|
|
27499
|
+
backgroundFrom: "content._cardStyles.background",
|
|
27500
|
+
baseClassName: "rb-feature-card rb-relative rb-isolate rb-overflow-hidden rb-border rb-flex rb-h-full rb-flex-col"
|
|
27501
|
+
},
|
|
27502
|
+
repeat("content.cards", "card")
|
|
27503
|
+
);
|
|
27504
|
+
var cardsLayout = styledSection({
|
|
27505
|
+
children: styledContainer({
|
|
27506
|
+
rootType: "stack",
|
|
27507
|
+
rootProps: { gap: "xl" },
|
|
27508
|
+
children: [
|
|
27509
|
+
sectionHeading,
|
|
27510
|
+
grid3(
|
|
27511
|
+
{
|
|
27512
|
+
cols: {
|
|
27513
|
+
$bind: {
|
|
27514
|
+
from: "content.columns",
|
|
27515
|
+
fallback: 3,
|
|
27516
|
+
coerce: "number"
|
|
27517
|
+
}
|
|
27518
|
+
},
|
|
27519
|
+
gap: "lg"
|
|
27520
|
+
},
|
|
27521
|
+
[featureCard]
|
|
27522
|
+
)
|
|
27523
|
+
]
|
|
27524
|
+
}),
|
|
27525
|
+
baseClass: "",
|
|
27526
|
+
spacing: "medium"
|
|
27527
|
+
});
|
|
27528
|
+
var featureCardsConfig = {
|
|
27529
|
+
id: "block.feature-cards",
|
|
27530
|
+
title: "Feature Cards",
|
|
27531
|
+
category: "layout",
|
|
27532
|
+
includeContainerStyles: true,
|
|
27533
|
+
titleSource: "title",
|
|
27534
|
+
additionalFields: [
|
|
27535
|
+
{
|
|
27536
|
+
id: "title",
|
|
27537
|
+
type: "text",
|
|
27538
|
+
label: "Title",
|
|
27539
|
+
required: false,
|
|
27540
|
+
multiline: false,
|
|
27541
|
+
maxLength: 120
|
|
27542
|
+
},
|
|
27543
|
+
{
|
|
27544
|
+
id: "description",
|
|
27545
|
+
type: "richText",
|
|
27546
|
+
label: "Description",
|
|
27547
|
+
required: false,
|
|
27548
|
+
ui: {
|
|
27549
|
+
richTextVariant: "limited"
|
|
27550
|
+
}
|
|
27551
|
+
},
|
|
27552
|
+
{
|
|
27553
|
+
id: "columns",
|
|
27554
|
+
type: "select",
|
|
27555
|
+
label: "Columns",
|
|
27556
|
+
required: false,
|
|
27557
|
+
defaultValue: "3",
|
|
27558
|
+
multiple: false,
|
|
27559
|
+
options: [
|
|
27560
|
+
{ value: "2", label: "2 columns" },
|
|
27561
|
+
{ value: "3", label: "3 columns" },
|
|
27562
|
+
{ value: "4", label: "4 columns" }
|
|
27563
|
+
],
|
|
27564
|
+
ui: { intent: "display" }
|
|
27565
|
+
},
|
|
27566
|
+
{
|
|
27567
|
+
id: "cards",
|
|
27568
|
+
type: "repeater",
|
|
27569
|
+
label: "Cards",
|
|
27570
|
+
required: false,
|
|
27571
|
+
minItems: 1,
|
|
27572
|
+
maxItems: 8,
|
|
27573
|
+
itemLabel: "Card",
|
|
27574
|
+
itemLabelSource: "title",
|
|
27575
|
+
allowConversion: true,
|
|
27576
|
+
ui: {
|
|
27577
|
+
intent: "content"
|
|
27578
|
+
},
|
|
27579
|
+
schema: {
|
|
27580
|
+
fields: [
|
|
27581
|
+
{
|
|
27582
|
+
id: "media",
|
|
27583
|
+
type: "media",
|
|
27584
|
+
label: "Image",
|
|
27585
|
+
required: false,
|
|
27586
|
+
mediaKinds: ["image"]
|
|
27587
|
+
},
|
|
27588
|
+
createAspectRatioField({
|
|
27589
|
+
id: "aspectRatio",
|
|
27590
|
+
label: "Image aspect ratio",
|
|
27591
|
+
defaultValue: "4/3",
|
|
27592
|
+
visibleWhen: { field: "media", notEquals: null }
|
|
27593
|
+
}),
|
|
27594
|
+
{
|
|
27595
|
+
id: "title",
|
|
27596
|
+
type: "text",
|
|
27597
|
+
label: "Title",
|
|
27598
|
+
required: true,
|
|
27599
|
+
multiline: false,
|
|
27600
|
+
maxLength: 120
|
|
27601
|
+
},
|
|
27602
|
+
{
|
|
27603
|
+
id: "body",
|
|
27604
|
+
type: "richText",
|
|
27605
|
+
label: "Text",
|
|
27606
|
+
required: false,
|
|
27607
|
+
ui: {
|
|
27608
|
+
richTextVariant: "limited"
|
|
27609
|
+
}
|
|
27610
|
+
},
|
|
27611
|
+
createCtasRepeater({
|
|
27612
|
+
label: "Calls to action",
|
|
27613
|
+
itemLabel: "CTA",
|
|
27614
|
+
maxItems: 1,
|
|
27615
|
+
button: {
|
|
27616
|
+
variants: [
|
|
27617
|
+
{ value: "primary", label: "Primary" },
|
|
27618
|
+
{ value: "secondary", label: "Secondary" },
|
|
27619
|
+
{ value: "outline", label: "Outline" },
|
|
27620
|
+
{ value: "ghost", label: "Ghost" },
|
|
27621
|
+
{ value: "link", label: "Link" }
|
|
27622
|
+
],
|
|
27623
|
+
defaultVariant: "ghost"
|
|
27624
|
+
}
|
|
27625
|
+
})
|
|
27626
|
+
]
|
|
27627
|
+
}
|
|
27628
|
+
},
|
|
27629
|
+
cardStylesField({
|
|
27630
|
+
id: "_cardStyles",
|
|
27631
|
+
label: "Card styles"
|
|
27632
|
+
})
|
|
27633
|
+
],
|
|
27634
|
+
layout: cardsLayout,
|
|
27635
|
+
variants: {
|
|
27636
|
+
cards: cardsLayout
|
|
27637
|
+
},
|
|
27638
|
+
defaultVariant: "cards",
|
|
27639
|
+
variantOptions: {
|
|
27640
|
+
cards: {
|
|
27641
|
+
label: "Cards",
|
|
27642
|
+
description: "A responsive grid of image cards with optional calls to action."
|
|
27643
|
+
}
|
|
27644
|
+
},
|
|
27645
|
+
description: "A card grid for offerings, services, classes, benefits, or featured links.",
|
|
27646
|
+
tags: ["cards", "features", "offerings", "services", "classes", "grid", "links"],
|
|
27647
|
+
icon: "PanelsTopLeft"
|
|
27648
|
+
};
|
|
27649
|
+
var featureCardsManifest = createBlockManifest(featureCardsConfig);
|
|
27650
|
+
var featureCardsBlockDefinition = {
|
|
27651
|
+
manifest: featureCardsManifest
|
|
27652
|
+
};
|
|
27653
|
+
|
|
25656
27654
|
// ../blocks/src/system/blocks/media-text.ts
|
|
25657
27655
|
init_defineBlock();
|
|
25658
27656
|
|
|
@@ -25748,69 +27746,6 @@ function createCarouselBehaviorFields(options = {}) {
|
|
|
25748
27746
|
];
|
|
25749
27747
|
return fields3;
|
|
25750
27748
|
}
|
|
25751
|
-
|
|
25752
|
-
// ../blocks/src/system/fields/imageLayout.ts
|
|
25753
|
-
function createImageColSizeField(options = {}) {
|
|
25754
|
-
const {
|
|
25755
|
-
id = "imageColSize",
|
|
25756
|
-
label = "Image column size",
|
|
25757
|
-
description = "Controls how large the image/thumbnail column is at desktop breakpoints.",
|
|
25758
|
-
defaultValue = "1/3",
|
|
25759
|
-
uiIntent = "display",
|
|
25760
|
-
visibleWhen
|
|
25761
|
-
} = options;
|
|
25762
|
-
return {
|
|
25763
|
-
id,
|
|
25764
|
-
type: "select",
|
|
25765
|
-
label,
|
|
25766
|
-
description,
|
|
25767
|
-
required: false,
|
|
25768
|
-
defaultValue,
|
|
25769
|
-
multiple: false,
|
|
25770
|
-
options: [
|
|
25771
|
-
{ value: "1/4", label: "Small (1/4)" },
|
|
25772
|
-
{ value: "1/3", label: "Medium (1/3)" },
|
|
25773
|
-
{ value: "2/5", label: "Large (2/5)" },
|
|
25774
|
-
{ value: "1/2", label: "Extra large (1/2)" },
|
|
25775
|
-
{ value: "2/3", label: "Huge (2/3)" }
|
|
25776
|
-
],
|
|
25777
|
-
ui: {
|
|
25778
|
-
intent: uiIntent,
|
|
25779
|
-
...visibleWhen ? { visibleWhen } : {}
|
|
25780
|
-
}
|
|
25781
|
-
};
|
|
25782
|
-
}
|
|
25783
|
-
function createImagePositionField(options = {}) {
|
|
25784
|
-
const {
|
|
25785
|
-
id = "imagePosition",
|
|
25786
|
-
label = "Image position",
|
|
25787
|
-
description = "Choose which side the image appears on.",
|
|
25788
|
-
defaultValue = "left",
|
|
25789
|
-
includeAlternate = false,
|
|
25790
|
-
uiIntent = "display",
|
|
25791
|
-
visibleWhen
|
|
25792
|
-
} = options;
|
|
25793
|
-
const positionOptions = [
|
|
25794
|
-
{ value: "left", label: "Left" },
|
|
25795
|
-
{ value: "right", label: "Right" },
|
|
25796
|
-
...includeAlternate ? [{ value: "alternate", label: "Alternate" }] : []
|
|
25797
|
-
];
|
|
25798
|
-
return {
|
|
25799
|
-
id,
|
|
25800
|
-
type: "select",
|
|
25801
|
-
label,
|
|
25802
|
-
description,
|
|
25803
|
-
required: false,
|
|
25804
|
-
defaultValue,
|
|
25805
|
-
multiple: false,
|
|
25806
|
-
// Spread to get a mutable array type without unsafe casts.
|
|
25807
|
-
options: [...positionOptions],
|
|
25808
|
-
ui: {
|
|
25809
|
-
intent: uiIntent,
|
|
25810
|
-
...visibleWhen ? { visibleWhen } : {}
|
|
25811
|
-
}
|
|
25812
|
-
};
|
|
25813
|
-
}
|
|
25814
27749
|
var textCardStylesField = (() => {
|
|
25815
27750
|
const field = cardStylesField({
|
|
25816
27751
|
id: "_textCardStyles",
|
|
@@ -25928,26 +27863,13 @@ var mediaTextManifest = createBlockManifest({
|
|
|
25928
27863
|
},
|
|
25929
27864
|
ui: { intent: "behavior" }
|
|
25930
27865
|
}),
|
|
25931
|
-
{
|
|
27866
|
+
createAspectRatioField({
|
|
25932
27867
|
id: "aspectRatio",
|
|
25933
|
-
type: "select",
|
|
25934
27868
|
label: "Media aspect ratio",
|
|
25935
27869
|
description: "Crop media to a consistent aspect ratio.",
|
|
25936
|
-
required: false,
|
|
25937
27870
|
defaultValue: "auto",
|
|
25938
|
-
|
|
25939
|
-
|
|
25940
|
-
{ value: "auto", label: "Auto (original)" },
|
|
25941
|
-
{ value: "16/9", label: "16:9 (Landscape)" },
|
|
25942
|
-
{ value: "4/3", label: "4:3 (Standard)" },
|
|
25943
|
-
{ value: "1/1", label: "1:1 (Square)" },
|
|
25944
|
-
{ value: "3/4", label: "3:4 (Portrait)" }
|
|
25945
|
-
],
|
|
25946
|
-
ui: {
|
|
25947
|
-
intent: "display",
|
|
25948
|
-
visibleWhen: { field: "images", notEquals: null }
|
|
25949
|
-
}
|
|
25950
|
-
},
|
|
27871
|
+
visibleWhen: { field: "images", notEquals: null }
|
|
27872
|
+
}),
|
|
25951
27873
|
{
|
|
25952
27874
|
id: "text",
|
|
25953
27875
|
type: "richText",
|
|
@@ -26077,7 +27999,7 @@ var mediaTextManifest = createBlockManifest({
|
|
|
26077
27999
|
whenImagesLength(0)
|
|
26078
28000
|
);
|
|
26079
28001
|
const defaultInner = el("div", {}, [defaultImagesLayout, defaultTextOnlyLayout]);
|
|
26080
|
-
const
|
|
28002
|
+
const defaultLayout2 = styledSection({
|
|
26081
28003
|
children: styledContainer({
|
|
26082
28004
|
rootType: "stack",
|
|
26083
28005
|
rootProps: { gap: "lg" },
|
|
@@ -26109,9 +28031,9 @@ var mediaTextManifest = createBlockManifest({
|
|
|
26109
28031
|
spacing: "medium"
|
|
26110
28032
|
});
|
|
26111
28033
|
return {
|
|
26112
|
-
layout:
|
|
28034
|
+
layout: defaultLayout2,
|
|
26113
28035
|
variants: {
|
|
26114
|
-
default:
|
|
28036
|
+
default: defaultLayout2
|
|
26115
28037
|
},
|
|
26116
28038
|
defaultVariant: "default",
|
|
26117
28039
|
variantOptions: {
|
|
@@ -28102,7 +30024,7 @@ init_builder();
|
|
|
28102
30024
|
init_colorStyles();
|
|
28103
30025
|
init_defineBlock();
|
|
28104
30026
|
init_fragments();
|
|
28105
|
-
var
|
|
30027
|
+
var grid4 = (props2, children, ...mods) => el("grid", props2 ?? void 0, children ?? void 0, ...mods);
|
|
28106
30028
|
var galleryContainer = (children, opts) => {
|
|
28107
30029
|
const gap = opts?.gap;
|
|
28108
30030
|
const withExtraClass = (baseClass) => opts?.className ? `${baseClass} ${opts.className}` : baseClass;
|
|
@@ -28182,7 +30104,7 @@ var galleryItem = (options) => stack(
|
|
|
28182
30104
|
],
|
|
28183
30105
|
repeat("content.images", "item")
|
|
28184
30106
|
);
|
|
28185
|
-
var gridLayout3 =
|
|
30107
|
+
var gridLayout3 = grid4(
|
|
28186
30108
|
{
|
|
28187
30109
|
className: "rb-grid rb-grid-cols-1 rb-gap-4 rb-sm-grid-cols-2 rb-md-grid-cols-3"
|
|
28188
30110
|
},
|
|
@@ -28790,7 +30712,7 @@ init_builder();
|
|
|
28790
30712
|
init_fragments();
|
|
28791
30713
|
init_colorStyles();
|
|
28792
30714
|
init_defineBlock();
|
|
28793
|
-
var
|
|
30715
|
+
var grid5 = (props2, children, ...mods) => el("grid", props2 ?? void 0, children ?? void 0, ...mods);
|
|
28794
30716
|
var videoItem = (options) => stack(
|
|
28795
30717
|
{ gap: "xs", className: options.containerClassName },
|
|
28796
30718
|
[
|
|
@@ -28840,7 +30762,7 @@ var gridColumnsClass = (columns) => {
|
|
|
28840
30762
|
return "rb-grid rb-grid-cols-1 rb-gap-6 rb-sm-grid-cols-2 rb-md-grid-cols-3";
|
|
28841
30763
|
}
|
|
28842
30764
|
};
|
|
28843
|
-
var createGridLayout = (columns) =>
|
|
30765
|
+
var createGridLayout = (columns) => grid5(
|
|
28844
30766
|
{
|
|
28845
30767
|
className: gridColumnsClass(columns)
|
|
28846
30768
|
},
|
|
@@ -30926,6 +32848,40 @@ var systemBlockDefinitionsRaw = [
|
|
|
30926
32848
|
})
|
|
30927
32849
|
]
|
|
30928
32850
|
})),
|
|
32851
|
+
withDesignCapability("block.intro", introBlockDefinition, declareBlockDesignCapability({
|
|
32852
|
+
sectionSurfaces: "supported",
|
|
32853
|
+
contentFrames: ["plain", "panel"],
|
|
32854
|
+
itemSurfaces: "unsupported",
|
|
32855
|
+
headingDecorations: ["organic-squiggle"]
|
|
32856
|
+
}), defineBlockDesignMetadata({
|
|
32857
|
+
flow: bodyFlow,
|
|
32858
|
+
layoutProfiles: [
|
|
32859
|
+
layoutProfile({
|
|
32860
|
+
variantKey: "centered-copy",
|
|
32861
|
+
family: "centered",
|
|
32862
|
+
weight: "featured",
|
|
32863
|
+
bias: "soft"
|
|
32864
|
+
}),
|
|
32865
|
+
layoutProfile({
|
|
32866
|
+
variantKey: "statement-copy",
|
|
32867
|
+
family: "split",
|
|
32868
|
+
weight: "featured",
|
|
32869
|
+
bias: "merge"
|
|
32870
|
+
}),
|
|
32871
|
+
layoutProfile({
|
|
32872
|
+
variantKey: "statement-media",
|
|
32873
|
+
family: "media-text",
|
|
32874
|
+
weight: "featured",
|
|
32875
|
+
bias: "soft"
|
|
32876
|
+
}),
|
|
32877
|
+
layoutProfile({
|
|
32878
|
+
variantKey: "media-copy",
|
|
32879
|
+
family: "media-text",
|
|
32880
|
+
weight: "featured",
|
|
32881
|
+
bias: "soft"
|
|
32882
|
+
})
|
|
32883
|
+
]
|
|
32884
|
+
})),
|
|
30929
32885
|
withDesignCapability("block.body-text", bodyTextBlockDefinition, sectionOnly(), defineBlockDesignMetadata({
|
|
30930
32886
|
flow: bodyFlow,
|
|
30931
32887
|
layoutProfiles: [
|
|
@@ -30986,9 +32942,17 @@ var systemBlockDefinitionsRaw = [
|
|
|
30986
32942
|
flow: conversionFlow,
|
|
30987
32943
|
layoutProfiles: [layoutProfile({ variantKey: "default", family: "form", weight: "standard" })]
|
|
30988
32944
|
})),
|
|
30989
|
-
withDesignCapability("block.faq", faqBlockDefinition, withEyebrowCapability(
|
|
32945
|
+
withDesignCapability("block.faq", faqBlockDefinition, withEyebrowCapability(declareBlockDesignCapability({
|
|
32946
|
+
sectionSurfaces: "supported",
|
|
32947
|
+
contentFrames: ["plain", "panel"],
|
|
32948
|
+
itemSurfaces: "supported",
|
|
32949
|
+
accordionIconSets: ["plus", "chevron", "caret", "minimal-cross"]
|
|
32950
|
+
}), standardEyebrowTreatments), defineBlockDesignMetadata({
|
|
30990
32951
|
flow: bodyFlow,
|
|
30991
|
-
layoutProfiles: [
|
|
32952
|
+
layoutProfiles: [
|
|
32953
|
+
layoutProfile({ variantKey: "default", family: "stack", weight: "standard" }),
|
|
32954
|
+
layoutProfile({ variantKey: "two-column", family: "split", weight: "standard" })
|
|
32955
|
+
]
|
|
30992
32956
|
})),
|
|
30993
32957
|
withDesignCapability("block.site-header", siteHeaderBlockDefinition, declareNoBlockDesignCapability("site-chrome"), defineBlockDesignMetadata({
|
|
30994
32958
|
flow: siteChromeFlow,
|
|
@@ -31002,7 +32966,8 @@ var systemBlockDefinitionsRaw = [
|
|
|
31002
32966
|
sectionSurfaces: "supported",
|
|
31003
32967
|
contentFrames: ["plain", "panel"],
|
|
31004
32968
|
itemSurfaces: "supported",
|
|
31005
|
-
testimonialCardTreatments: ["default", "accent-quote"]
|
|
32969
|
+
testimonialCardTreatments: ["default", "accent-quote"],
|
|
32970
|
+
headingDecorations: ["short-center-rule"]
|
|
31006
32971
|
}), defineBlockDesignMetadata({
|
|
31007
32972
|
flow: proofFlow,
|
|
31008
32973
|
layoutProfiles: [
|
|
@@ -31028,6 +32993,22 @@ var systemBlockDefinitionsRaw = [
|
|
|
31028
32993
|
flow: offeringsFlow,
|
|
31029
32994
|
layoutProfiles: [layoutProfile({ variantKey: "default", family: "grid", weight: "standard" })]
|
|
31030
32995
|
})),
|
|
32996
|
+
withDesignCapability("block.feature-cards", featureCardsBlockDefinition, declareBlockDesignCapability({
|
|
32997
|
+
sectionSurfaces: "supported",
|
|
32998
|
+
contentFrames: ["plain", "panel"],
|
|
32999
|
+
itemSurfaces: "supported",
|
|
33000
|
+
headingDecorations: ["short-center-rule"]
|
|
33001
|
+
}), defineBlockDesignMetadata({
|
|
33002
|
+
flow: offeringsFlow,
|
|
33003
|
+
layoutProfiles: [
|
|
33004
|
+
layoutProfile({
|
|
33005
|
+
variantKey: "cards",
|
|
33006
|
+
family: "grid",
|
|
33007
|
+
weight: "standard",
|
|
33008
|
+
bias: "soft"
|
|
33009
|
+
})
|
|
33010
|
+
]
|
|
33011
|
+
})),
|
|
31031
33012
|
withDesignCapability("block.media-text", mediaTextBlockDefinition, mediaPanelCapable(), defineBlockDesignMetadata({
|
|
31032
33013
|
flow: mediaFlow,
|
|
31033
33014
|
layoutProfiles: [
|
|
@@ -34881,8 +36862,10 @@ z.object({
|
|
|
34881
36862
|
var SYSTEM_BLOCK_KINDS = [
|
|
34882
36863
|
// Layout blocks
|
|
34883
36864
|
"block.hero",
|
|
36865
|
+
"block.intro",
|
|
34884
36866
|
"block.columns",
|
|
34885
36867
|
"block.collection",
|
|
36868
|
+
"block.feature-cards",
|
|
34886
36869
|
"block.media-text",
|
|
34887
36870
|
"block.cta-full",
|
|
34888
36871
|
"block.single-button",
|
|
@@ -36336,7 +38319,12 @@ function buildApplySiteStyleSelectionCommand(input) {
|
|
|
36336
38319
|
buttonPersonalityId: input.buttonPersonalityId,
|
|
36337
38320
|
paletteVariantId: input.paletteVariantId,
|
|
36338
38321
|
paletteOverrides: input.paletteOverrides,
|
|
38322
|
+
typographyPresetId: input.typographyPresetId,
|
|
38323
|
+
typographyBodyFontOverride: input.typographyBodyFontOverride,
|
|
38324
|
+
typographyHeadingFontOverride: input.typographyHeadingFontOverride,
|
|
36339
38325
|
headerLookId: input.headerLookId,
|
|
38326
|
+
headerLayoutId: input.headerLayoutId,
|
|
38327
|
+
headerStyleId: input.headerStyleId,
|
|
36340
38328
|
footerLookId: input.footerLookId,
|
|
36341
38329
|
baseSelectionVersion: input.baseSelectionVersion
|
|
36342
38330
|
}
|
|
@@ -36352,7 +38340,12 @@ function applySiteStyleSelectionBodyFromCommand(command, selectionId) {
|
|
|
36352
38340
|
buttonPersonalityId: command.input.buttonPersonalityId,
|
|
36353
38341
|
paletteVariantId: command.input.paletteVariantId,
|
|
36354
38342
|
paletteOverrides: command.input.paletteOverrides,
|
|
38343
|
+
typographyPresetId: command.input.typographyPresetId,
|
|
38344
|
+
typographyBodyFontOverride: command.input.typographyBodyFontOverride,
|
|
38345
|
+
typographyHeadingFontOverride: command.input.typographyHeadingFontOverride,
|
|
36355
38346
|
headerLookId: command.input.headerLookId,
|
|
38347
|
+
headerLayoutId: command.input.headerLayoutId,
|
|
38348
|
+
headerStyleId: command.input.headerStyleId,
|
|
36356
38349
|
footerLookId: command.input.footerLookId,
|
|
36357
38350
|
baseSelectionVersion,
|
|
36358
38351
|
selectionId
|
|
@@ -44194,7 +46187,12 @@ var applySiteStyleSelectionCommandSchema = z.object({
|
|
|
44194
46187
|
buttonPersonalityId: styleCatalogIdSchema.nullable(),
|
|
44195
46188
|
paletteVariantId: styleCatalogIdSchema.nullable(),
|
|
44196
46189
|
paletteOverrides: paletteOverridesSchema2.nullable(),
|
|
46190
|
+
typographyPresetId: styleCatalogIdSchema.nullable().optional(),
|
|
46191
|
+
typographyBodyFontOverride: z.string().trim().min(1).nullable().optional(),
|
|
46192
|
+
typographyHeadingFontOverride: z.string().trim().min(1).nullable().optional(),
|
|
44197
46193
|
headerLookId: styleCatalogIdSchema.nullable(),
|
|
46194
|
+
headerLayoutId: styleCatalogIdSchema,
|
|
46195
|
+
headerStyleId: styleCatalogIdSchema,
|
|
44198
46196
|
footerLookId: styleCatalogIdSchema.nullable(),
|
|
44199
46197
|
baseSelectionVersion: styleSelectionVersionSchema.optional()
|
|
44200
46198
|
}).strict()
|
|
@@ -54508,7 +56506,7 @@ var SimpleCache = class {
|
|
|
54508
56506
|
};
|
|
54509
56507
|
|
|
54510
56508
|
// src/version.ts
|
|
54511
|
-
var SDK_VERSION = "0.
|
|
56509
|
+
var SDK_VERSION = "0.77.1";
|
|
54512
56510
|
|
|
54513
56511
|
// src/client/error.ts
|
|
54514
56512
|
var RiverbankApiError = class _RiverbankApiError extends Error {
|
|
@@ -54936,6 +56934,24 @@ function getPrebuildModule() {
|
|
|
54936
56934
|
return null;
|
|
54937
56935
|
}
|
|
54938
56936
|
}
|
|
56937
|
+
function mergeDefaultHeaders(defaultHeaders, options) {
|
|
56938
|
+
if (!defaultHeaders || Object.keys(defaultHeaders).length === 0) {
|
|
56939
|
+
return options;
|
|
56940
|
+
}
|
|
56941
|
+
return {
|
|
56942
|
+
...options,
|
|
56943
|
+
headers: {
|
|
56944
|
+
...defaultHeaders,
|
|
56945
|
+
...Object.fromEntries(new Headers(options?.headers).entries())
|
|
56946
|
+
}
|
|
56947
|
+
};
|
|
56948
|
+
}
|
|
56949
|
+
function withDefaultHeaders(apiClient, defaultHeaders) {
|
|
56950
|
+
return async (params) => apiClient({
|
|
56951
|
+
...params,
|
|
56952
|
+
options: mergeDefaultHeaders(defaultHeaders, params.options)
|
|
56953
|
+
});
|
|
56954
|
+
}
|
|
54939
56955
|
setSdkVersion(SDK_VERSION);
|
|
54940
56956
|
var DEFAULT_BROWSER_TIMEOUT_MS = 5e3;
|
|
54941
56957
|
var DEFAULT_SERVER_TIMEOUT_MS = 8e3;
|
|
@@ -55135,7 +57151,8 @@ function createRiverbankClient(config2) {
|
|
|
55135
57151
|
keyType = "preview";
|
|
55136
57152
|
break;
|
|
55137
57153
|
}
|
|
55138
|
-
const
|
|
57154
|
+
const baseApiClient = authConfig.type === "none" ? createInternalAPIClient(config2.baseUrl) : authConfig.type === "api-key" ? createBearerAPIClient(authConfig.key, config2.baseUrl) : createBearerAPIClient(authConfig.token, config2.baseUrl);
|
|
57155
|
+
const apiClient = withDefaultHeaders(baseApiClient, config2.defaultHeaders);
|
|
55139
57156
|
const cache = new SimpleCache({
|
|
55140
57157
|
maxSize: cacheMaxSize,
|
|
55141
57158
|
ttl: cacheTTL,
|
|
@@ -61294,12 +63311,19 @@ function buildStyleSelectionApplyInputFromOptions(options) {
|
|
|
61294
63311
|
if (!Number.isInteger(baseSelectionVersion) || baseSelectionVersion < 0) {
|
|
61295
63312
|
throw new Error("--base-selection-version must be a non-negative integer");
|
|
61296
63313
|
}
|
|
63314
|
+
const siteStyle = getCuratedSiteStyle(asSiteStyleId(options.siteStyleId));
|
|
63315
|
+
const defaultHeaderSelection = siteStyle?.defaultHeaderSelection;
|
|
61297
63316
|
return {
|
|
61298
63317
|
siteStyleId: options.siteStyleId,
|
|
61299
63318
|
buttonPersonalityId: options.buttonPersonalityId ?? null,
|
|
61300
63319
|
paletteVariantId: options.paletteVariantId ?? null,
|
|
61301
63320
|
paletteOverrides: parsePaletteOverrides(options.paletteOverrides),
|
|
63321
|
+
typographyPresetId: options.typographyPresetId ?? null,
|
|
63322
|
+
typographyBodyFontOverride: options.typographyBodyFontOverride ?? null,
|
|
63323
|
+
typographyHeadingFontOverride: options.typographyHeadingFontOverride ?? null,
|
|
61302
63324
|
headerLookId: options.headerLookId ?? null,
|
|
63325
|
+
headerLayoutId: options.headerLayoutId ?? defaultHeaderSelection?.layoutId ?? guaranteedFallbackHeaderLayoutId,
|
|
63326
|
+
headerStyleId: options.headerStyleId ?? defaultHeaderSelection?.styleId ?? guaranteedFallbackHeaderStyleId,
|
|
61303
63327
|
footerLookId: options.footerLookId ?? null,
|
|
61304
63328
|
baseSelectionVersion,
|
|
61305
63329
|
selectionId: options.selectionId ?? null
|
|
@@ -61334,6 +63358,18 @@ function buildStyleCatalogListRows(styles = curatedSiteStyles, options = {}) {
|
|
|
61334
63358
|
id: choice.id,
|
|
61335
63359
|
label: findButtonPersonality(choice.id)?.name ?? choice.id
|
|
61336
63360
|
})),
|
|
63361
|
+
typographyPresets: style.typographyPresetChoices.map((choice) => ({
|
|
63362
|
+
id: choice.id,
|
|
63363
|
+
label: findTypographyPreset(choice.id)?.name ?? choice.id
|
|
63364
|
+
})),
|
|
63365
|
+
headerLayouts: style.recommendedHeaderLayoutChoices.map((choice) => ({
|
|
63366
|
+
id: choice.id,
|
|
63367
|
+
label: getHeaderLayout(choice.id)?.label ?? choice.id
|
|
63368
|
+
})),
|
|
63369
|
+
headerStyles: uniqueChoiceIds(Object.values(style.recommendedHeaderStyleChoicesByLayout).flatMap((choices) => choices?.map((choice) => choice.id) ?? [])).map((styleId) => ({
|
|
63370
|
+
id: styleId,
|
|
63371
|
+
label: getHeaderStyle(styleId)?.label ?? styleId
|
|
63372
|
+
})),
|
|
61337
63373
|
headerLooks: style.recommendedHeaderLookIds.map((lookId) => ({
|
|
61338
63374
|
id: lookId,
|
|
61339
63375
|
label: findHeaderLook(lookId)?.label ?? lookId
|
|
@@ -61350,10 +63386,21 @@ function formatStyleCatalogListRow(row) {
|
|
|
61350
63386
|
row.name,
|
|
61351
63387
|
formatChoiceList(row.palettes),
|
|
61352
63388
|
formatChoiceList(row.buttonPersonalities),
|
|
63389
|
+
formatChoiceList(row.typographyPresets),
|
|
63390
|
+
formatChoiceList(row.headerLayouts),
|
|
63391
|
+
formatChoiceList(row.headerStyles),
|
|
61353
63392
|
formatChoiceList(row.headerLooks),
|
|
61354
63393
|
formatChoiceList(row.footerLooks)
|
|
61355
63394
|
];
|
|
61356
63395
|
}
|
|
63396
|
+
function uniqueChoiceIds(choices) {
|
|
63397
|
+
const seen = /* @__PURE__ */ new Set();
|
|
63398
|
+
return choices.filter((choice) => {
|
|
63399
|
+
if (seen.has(choice)) return false;
|
|
63400
|
+
seen.add(choice);
|
|
63401
|
+
return true;
|
|
63402
|
+
});
|
|
63403
|
+
}
|
|
61357
63404
|
function formatChoiceList(choices) {
|
|
61358
63405
|
return choices.map((choice) => `${choice.id} (${choice.label})`).join(", ");
|
|
61359
63406
|
}
|
|
@@ -61365,12 +63412,12 @@ var listCommand8 = new Command("list").description("List curated site styles and
|
|
|
61365
63412
|
output.error(`Unknown site style: ${options.siteStyleId}`);
|
|
61366
63413
|
}
|
|
61367
63414
|
output.table(
|
|
61368
|
-
["Site Style ID", "Name", "Palettes", "Buttons", "Header Looks", "Footer Looks"],
|
|
63415
|
+
["Site Style ID", "Name", "Palettes", "Buttons", "Typography", "Header Layouts", "Header Styles", "Header Looks", "Footer Looks"],
|
|
61369
63416
|
rows.map(formatStyleCatalogListRow)
|
|
61370
63417
|
);
|
|
61371
63418
|
})
|
|
61372
63419
|
);
|
|
61373
|
-
var applyCommand = new Command("apply").description("Apply a curated site-style selection").requiredOption("--site-style-id <id>", "Site style ID, e.g. site-style:calm-studio").requiredOption("--base-selection-version <version>", "Current style selection version").option("--selection-id <id>", "Current style selection row ID").option("--button-personality-id <id>", "Button personality ID").option("--palette-variant-id <id>", "Palette variant ID").option("--palette-overrides <json>", "JSON object of palette token overrides").option("--header-look-id <id>", "
|
|
63420
|
+
var applyCommand = new Command("apply").description("Apply a curated site-style selection").requiredOption("--site-style-id <id>", "Site style ID, e.g. site-style:calm-studio").requiredOption("--base-selection-version <version>", "Current style selection version").option("--selection-id <id>", "Current style selection row ID").option("--button-personality-id <id>", "Button personality ID").option("--palette-variant-id <id>", "Palette variant ID").option("--palette-overrides <json>", "JSON object of palette token overrides").option("--typography-preset-id <id>", "Typography preset ID").option("--typography-body-font-override <family>", "Body font family override").option("--typography-heading-font-override <family>", "Heading font family override").option("--header-look-id <id>", "Legacy header look bridge ID").option("--header-layout-id <id>", "Header layout ID").option("--header-style-id <id>", "Header style ID").option("--footer-look-id <id>", "Footer look ID").action(
|
|
61374
63421
|
withErrorHandling(async (options, command) => {
|
|
61375
63422
|
const { output, client } = createCommandContext(command);
|
|
61376
63423
|
const input = buildStyleSelectionApplyInputFromOptions(options);
|