@riverbankcms/sdk 0.107.0 → 0.108.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{PreviewEditorSidebar-DpAbAl08.mjs → PreviewEditorSidebar-BBT-kZAM.mjs} +46 -11
- package/dist/{PreviewEditorUI-O7cn6Xxv.mjs → PreviewEditorUI-D69xNKT2.mjs} +10 -9
- package/dist/{PreviewQueryProvider-D0tnKl0t.mjs → PreviewQueryProvider-RRu7wyQ5.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-CVB7urtl.mjs → SdkPreviewModeRuntime-CuDjXH6o.mjs} +426 -72
- package/dist/{SiteChromeCustomizeContext-C_sizso-.mjs → SiteChromeCustomizeContext-BQUY2dEk.mjs} +3865 -544
- package/dist/_dts/ai/src/contracts/proposals.d.ts +3712 -220
- package/dist/_dts/api/src/blocks.d.ts +41 -7
- package/dist/_dts/api/src/bookingRecords.d.ts +180 -115
- package/dist/_dts/api/src/cache-tags.d.ts +3 -0
- package/dist/_dts/api/src/contentRuntime.d.ts +19 -1
- package/dist/_dts/api/src/endpoints.d.ts +99 -0
- package/dist/_dts/api/src/footer-settings.d.ts +1 -0
- package/dist/_dts/api/src/footerSettings.d.ts +8 -0
- package/dist/_dts/api/src/index.d.ts +5 -2
- package/dist/_dts/api/src/navigation/contracts.d.ts +3 -3
- package/dist/_dts/api/src/previewContentContract.d.ts +4 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +62 -0
- package/dist/_dts/api/src/siteBanner.d.ts +2 -2
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +143 -55
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +7 -1
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +41 -1
- package/dist/_dts/blocks/src/primitives/layout/Section.d.ts +0 -1
- package/dist/_dts/blocks/src/rendering/server.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +50 -0
- package/dist/_dts/blocks/src/system/blocks/site-footer.d.ts +9 -48
- package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
- package/dist/_dts/blocks/src/system/icons/registry.d.ts +2 -1
- package/dist/_dts/blocks/src/system/icons/social.d.ts +5 -0
- package/dist/_dts/blocks/src/system/icons/svg.d.ts +1 -0
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +2 -2
- package/dist/_dts/blocks/src/system/node/fragments/backgroundLayer.d.ts +13 -0
- package/dist/_dts/blocks/src/system/node/fragments/footerNav.d.ts +2 -0
- package/dist/_dts/blocks/src/system/node/fragments/styledContainer.d.ts +4 -4
- package/dist/_dts/blocks/src/system/node/fragments/styledSection.d.ts +3 -12
- package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +1 -1
- package/dist/_dts/blocks/src/system/types/link.d.ts +3 -3
- package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +14 -0
- package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +27 -8
- package/dist/_dts/content-editor/src/footerComposer.d.ts +56 -0
- package/dist/_dts/content-editor/src/hooks/useEntryActions.d.ts +1 -1
- package/dist/_dts/content-editor/src/hooks/useEntryMutations.d.ts +5 -5
- package/dist/_dts/content-editor/src/index.d.ts +2 -0
- package/dist/_dts/content-editor/src/primitives/PreviewRichTextEditor.d.ts +3 -1
- package/dist/_dts/content-editor/src/services/contentEntryServices.d.ts +20 -36
- package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +5 -1
- package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +11 -0
- package/dist/_dts/content-model/src/content-types/schema.d.ts +1 -1
- package/dist/_dts/content-model/src/definitions/shared.d.ts +3 -0
- package/dist/_dts/core/src/branded.d.ts +3 -0
- package/dist/_dts/core/src/editor-state.d.ts +4 -0
- package/dist/_dts/core/src/footer-composition.d.ts +143 -0
- package/dist/_dts/core/src/index.d.ts +2 -0
- package/dist/_dts/core/src/public-profile.d.ts +73 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +3043 -2941
- package/dist/_dts/db/src/schemas/forms.d.ts +10 -10
- package/dist/_dts/editor/src/primitives/rich-text/RichTextEditorSurface.d.ts +5 -0
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +1 -0
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockCreation.d.ts +2 -1
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockDuplication.d.ts +2 -1
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockReorder.d.ts +2 -1
- package/dist/_dts/editor-blocks/src/block-editor/owner.d.ts +10 -0
- package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +1 -0
- package/dist/_dts/path-utils/src/index.d.ts +5 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewChromeLayer.d.ts +5 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewEntryControllerProvider.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/previewErrorMessages.d.ts +4 -0
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +1 -0
- package/dist/_dts/sdk/src/client/management/blocks.d.ts +14 -1
- package/dist/_dts/sdk/src/client/management/index.d.ts +1 -0
- package/dist/_dts/sdk/src/client/management/types.d.ts +15 -1
- package/dist/_dts/sdk/src/config/content-types.d.ts +2 -0
- package/dist/_dts/sdk/src/config/content-validation.d.ts +4 -0
- package/dist/_dts/sdk/src/navigation/index.d.ts +2 -0
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +3 -2
- package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +2 -1
- package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +1 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/site-commands/src/commands.d.ts +13 -10
- package/dist/_dts/theme-core/src/accordions/types.d.ts +2 -2
- package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
- package/dist/_dts/theme-core/src/buttons/personalities/two-tone-pill.d.ts +17 -0
- package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/buttons/types.d.ts +3 -3
- package/dist/_dts/theme-core/src/cards/types.d.ts +3 -3
- package/dist/_dts/theme-core/src/footer/mode.d.ts +15 -0
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +36 -30
- package/dist/_dts/theme-core/src/navigation/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/schema.d.ts +1186 -34
- package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +12 -1
- package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +15 -0
- package/dist/cli/index.mjs +760 -374
- package/dist/client/{DiscountCodeDisclosure-BwGkvmVH.mjs → DiscountCodeDisclosure-D6TOf6Hi.mjs} +1 -1
- package/dist/client/{EventCombined.client-JnWE6Hzc.mjs → EventCombined.client-Dao3zxRk.mjs} +3 -3
- package/dist/client/{EventListing.client-DQewc_kg.mjs → EventListing.client-B2NNt4y1.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-DPAU3SFt.mjs → LeafletStaticMap-BhwFo16w.mjs} +1 -1
- package/dist/client/{MagicLinkForm-D4kpWCbW.mjs → MagicLinkForm-BWnB7cMR.mjs} +2 -2
- package/dist/client/{StepIndicator-CBlkb4rA.mjs → StepIndicator-TzRiQ0BY.mjs} +2 -2
- package/dist/client/{accordion-DAIBVpTS.mjs → accordion-BPy-AJ4_.mjs} +1 -1
- package/dist/client/{bookingForm-DZ-4l5_1.mjs → bookingForm-BL4PGZds.mjs} +6 -6
- package/dist/client/bookings.mjs +143 -94
- package/dist/client/{buttons-DJgynGHQ.mjs → buttons-EBjyslaX.mjs} +144 -95
- package/dist/client/{carousel-D-SLfX8r.mjs → carousel-C2b7Cn9-.mjs} +1 -1
- package/dist/client/{cart-CEgbgJhX.mjs → cart-BQcbXIVD.mjs} +3 -3
- package/dist/client/{checkout-CXWrCRAA.mjs → checkout-DEmpGRJu.mjs} +3 -3
- package/dist/client/client.mjs +827 -434
- package/dist/client/{courseRegistration-DVmLrRVz.mjs → courseRegistration-BqRZPmsq.mjs} +7 -7
- package/dist/client/{eventCalendar-DCuyPY_c.mjs → eventCalendar-B8N_tSl5.mjs} +5 -5
- package/dist/client/{eventCombined-kP2CA2D4.mjs → eventCombined-Gjn6gtq7.mjs} +2 -2
- package/dist/client/{eventDetails-DU0LeF5e.mjs → eventDetails-M-VCxA-r.mjs} +3 -3
- package/dist/client/{eventListing-CcHF87BI.mjs → eventListing-DR19hqYi.mjs} +2 -2
- package/dist/client/{eventRegistration-DJnR0yFH.mjs → eventRegistration-BR02a0k3.mjs} +7 -7
- package/dist/client/{form-CH1lCusH.mjs → form-LY2xIbwg.mjs} +2 -2
- package/dist/client/{headerSection-CBPFZoku.mjs → headerSection-CYwwXJfh.mjs} +3 -3
- package/dist/client/hooks.mjs +377 -362
- package/dist/client/{locationMap-Cx1hBg5n.mjs → locationMap-DWnBXrFq.mjs} +2 -2
- package/dist/client/{newsletterForm-1ZL_ti9u.mjs → newsletterForm-D9s-fQ2P.mjs} +2 -2
- package/dist/client/{pricing-BIbzmV0G.mjs → pricing-DDq80oYc.mjs} +1 -1
- package/dist/client/{productDetail-BTh5gHBV.mjs → productDetail-B0SbWd45.mjs} +3 -3
- package/dist/client/{productList-Cc7OMrqN.mjs → productList-PwYlZn0y.mjs} +3 -3
- package/dist/client/{propsDecoder-oR-M-ISN.mjs → propsDecoder-BRWBiH7i.mjs} +33 -9
- package/dist/client/rendering/client.mjs +247 -40
- package/dist/client/rendering/islands.mjs +18 -18
- package/dist/client/rendering.mjs +478 -270
- package/dist/client/{shop-CQ_YbCnn.mjs → shop-CMwZPYME.mjs} +6 -6
- package/dist/client/{shop-commerce-BM-AoD3M.mjs → shop-commerce-BuxsFate.mjs} +5 -5
- package/dist/client/{shop-commerce-store-DFMQhU5p.mjs → shop-commerce-store-boYlEJ91.mjs} +1 -1
- package/dist/client/{shopShared-D0SKO2Cu.mjs → shopShared-D2naaOes.mjs} +2 -2
- package/dist/client/{useDiscountCodeUi-CrG4_ARt.mjs → useDiscountCodeUi-D9RHpVoj.mjs} +1 -1
- package/dist/client/{useEventFilters-CxK8Fekl.mjs → useEventFilters-igGiK1re.mjs} +3 -3
- package/dist/client/{usePolling-jcVryNgZ.mjs → usePolling-CI7MbsFB.mjs} +2 -2
- package/dist/preview-next/before-render.mjs +178 -0
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/middleware.mjs +178 -0
- package/dist/{previewAuthStore-BPcJPzdz.mjs → previewAuthStore-a_cBD28m.mjs} +178 -0
- package/dist/{sdk-runtime-C39Rsk-x.mjs → sdk-runtime-MBzD-GmP.mjs} +2 -2
- package/dist/{separator-BoMSQnsP.mjs → separator-5ahRBC85.mjs} +1 -1
- package/dist/server/components.mjs +556 -366
- package/dist/server/config-validation.mjs +384 -363
- package/dist/server/config.mjs +384 -364
- package/dist/server/data.mjs +377 -362
- package/dist/server/index.mjs +179 -1
- package/dist/server/navigation.mjs +9 -3
- package/dist/server/next.mjs +1384 -995
- package/dist/server/page-converter.mjs +368 -355
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +539 -360
- package/dist/server/rendering.mjs +556 -366
- package/dist/server/routing.mjs +613 -543
- package/dist/server/server.mjs +554 -361
- package/dist/server/theme-bridge.mjs +189 -98
- package/dist/server/theme.mjs +161 -95
- package/dist/styles/index.css +7 -1
- package/package.json +1 -1
|
@@ -225,7 +225,7 @@ function formatEventPricing(pricing, options = {}) {
|
|
|
225
225
|
//#endregion
|
|
226
226
|
//#region ../core/src/event-page-surface-subject.ts
|
|
227
227
|
function parseEventPageSurfaceSubject(value) {
|
|
228
|
-
if (!isRecord$
|
|
228
|
+
if (!isRecord$33(value)) return err$3({ kind: "notObject" });
|
|
229
229
|
switch (value.kind) {
|
|
230
230
|
case "eventSeries": {
|
|
231
231
|
const eventSeriesId = parseEventSeriesId(value.eventSeriesId);
|
|
@@ -268,7 +268,7 @@ function parseEventPageSurfaceSubject(value) {
|
|
|
268
268
|
});
|
|
269
269
|
}
|
|
270
270
|
}
|
|
271
|
-
function isRecord$
|
|
271
|
+
function isRecord$33(value) {
|
|
272
272
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
273
273
|
}
|
|
274
274
|
//#endregion
|
|
@@ -483,6 +483,17 @@ function toLocationCoordinates(value) {
|
|
|
483
483
|
lng: value.lng
|
|
484
484
|
};
|
|
485
485
|
}
|
|
486
|
+
new Map([
|
|
487
|
+
"brand",
|
|
488
|
+
"supporting-text",
|
|
489
|
+
"social-links",
|
|
490
|
+
"navigation",
|
|
491
|
+
"business-address",
|
|
492
|
+
"contact",
|
|
493
|
+
"opening-hours",
|
|
494
|
+
"legal-navigation",
|
|
495
|
+
"legal"
|
|
496
|
+
].map((kind, index) => [kind, index]));
|
|
486
497
|
function sortStableJsonValue(value) {
|
|
487
498
|
if (value === null) return null;
|
|
488
499
|
if (typeof value === "string" || typeof value === "boolean") return value;
|
|
@@ -494,7 +505,7 @@ function sortStableJsonValue(value) {
|
|
|
494
505
|
if (typeof value === "object") {
|
|
495
506
|
const prototype = Object.getPrototypeOf(value);
|
|
496
507
|
if (prototype !== Object.prototype && prototype !== null) throw new TypeError("Stable JSON only supports plain objects");
|
|
497
|
-
return Object.fromEntries(Object.entries(value).sort(([left], [right]) => left
|
|
508
|
+
return Object.fromEntries(Object.entries(value).sort(([left], [right]) => left < right ? -1 : left > right ? 1 : 0).map(([key, child]) => [key, sortStableJsonValue(child)]));
|
|
498
509
|
}
|
|
499
510
|
throw new TypeError(`Stable JSON does not support ${typeof value}`);
|
|
500
511
|
}
|
|
@@ -524,7 +535,7 @@ function containsUnsafePathSegmentCharacter(value) {
|
|
|
524
535
|
function isReservedPathSegment(value) {
|
|
525
536
|
return value === "." || value === "..";
|
|
526
537
|
}
|
|
527
|
-
function isUnsafePathSegment(segment) {
|
|
538
|
+
function isUnsafePathSegment$1(segment) {
|
|
528
539
|
return segment.trim().length === 0 || segment !== segment.trim() || isReservedPathSegment(segment) || containsUnsafePathSegmentCharacter(segment);
|
|
529
540
|
}
|
|
530
541
|
({
|
|
@@ -540,7 +551,7 @@ function parseStoragePath(value) {
|
|
|
540
551
|
* that every tenant/site identifier remains one segment, never a nested path.
|
|
541
552
|
*/
|
|
542
553
|
function joinStoragePathSegments(segments) {
|
|
543
|
-
if (segments.some(isUnsafePathSegment)) return err$3("unsafe-path-segment");
|
|
554
|
+
if (segments.some(isUnsafePathSegment$1)) return err$3("unsafe-path-segment");
|
|
544
555
|
return ok$3(unsafeAsStoragePath(segments.join("/")));
|
|
545
556
|
}
|
|
546
557
|
//#endregion
|
|
@@ -1200,7 +1211,7 @@ const ALLOWED_TRANSFORM_IDS = [
|
|
|
1200
1211
|
"media.fromUrl",
|
|
1201
1212
|
"background.resolveStyle",
|
|
1202
1213
|
"background.resolveColorsStyle",
|
|
1203
|
-
"background.
|
|
1214
|
+
"background.resolveFrameClassName",
|
|
1204
1215
|
"background.resolveImageStyle",
|
|
1205
1216
|
"background.resolveImageClassName",
|
|
1206
1217
|
"background.resolveOverlayStyle",
|
|
@@ -1230,7 +1241,7 @@ function mqBetween(minPx, maxPx) {
|
|
|
1230
1241
|
return `${mqUp(minPx)} and ${mqDown(maxPx)}`;
|
|
1231
1242
|
}
|
|
1232
1243
|
const MQ_SM_UP = mqUp(640);
|
|
1233
|
-
mqUp(768);
|
|
1244
|
+
const MQ_MD_UP = mqUp(768);
|
|
1234
1245
|
const MQ_LG_UP = mqUp(BREAKPOINT_LG);
|
|
1235
1246
|
mqUp(BREAKPOINT_XL);
|
|
1236
1247
|
const MQ_SM_DOWN = mqDown(639);
|
|
@@ -10274,104 +10285,153 @@ const showtimePill = defineButtonPersonality({
|
|
|
10274
10285
|
}
|
|
10275
10286
|
});
|
|
10276
10287
|
//#endregion
|
|
10277
|
-
//#region ../theme-core/src/buttons/personalities/
|
|
10278
|
-
|
|
10279
|
-
|
|
10280
|
-
|
|
10281
|
-
|
|
10282
|
-
|
|
10283
|
-
|
|
10284
|
-
|
|
10285
|
-
|
|
10286
|
-
|
|
10287
|
-
|
|
10288
|
+
//#region ../theme-core/src/buttons/personalities/soft-pill.ts
|
|
10289
|
+
/**
|
|
10290
|
+
* Soft Pill — rounded-full pill buttons with a hover lift. The default for
|
|
10291
|
+
* Calm Studio and Modern Wellness; reads as quietly modern and welcoming.
|
|
10292
|
+
*/
|
|
10293
|
+
const softPill = defineButtonPersonality({
|
|
10294
|
+
id: "soft-pill",
|
|
10295
|
+
name: "Soft Pill",
|
|
10296
|
+
description: "Rounded pills with a gentle lift on hover. Quietly modern.",
|
|
10297
|
+
tags: {
|
|
10298
|
+
tone: "classic",
|
|
10299
|
+
energy: "calm",
|
|
10300
|
+
motion: "subtle",
|
|
10301
|
+
era: "organic"
|
|
10302
|
+
},
|
|
10303
|
+
buttonSystem: {
|
|
10304
|
+
global: {
|
|
10305
|
+
cornerStyle: "pill",
|
|
10306
|
+
shadow: "low",
|
|
10307
|
+
textTransform: "none",
|
|
10308
|
+
fontWeight: 500,
|
|
10309
|
+
borderWidth: 2,
|
|
10310
|
+
hoverTransform: "lift",
|
|
10311
|
+
hoverColor: "none"
|
|
10288
10312
|
},
|
|
10289
|
-
|
|
10290
|
-
|
|
10291
|
-
|
|
10292
|
-
|
|
10293
|
-
|
|
10294
|
-
|
|
10295
|
-
|
|
10296
|
-
|
|
10297
|
-
|
|
10298
|
-
},
|
|
10299
|
-
variants: [
|
|
10300
|
-
{
|
|
10301
|
-
id: "primary",
|
|
10302
|
-
name: "Primary",
|
|
10303
|
-
enabled: true,
|
|
10304
|
-
priority: 1,
|
|
10305
|
-
background: {
|
|
10306
|
-
type: "solid",
|
|
10307
|
-
colorToken: "primary"
|
|
10308
|
-
},
|
|
10309
|
-
textColorToken: "primaryForeground",
|
|
10310
|
-
borderRadius: "rounded-full",
|
|
10311
|
-
shadow: {
|
|
10312
|
-
elevation: "low",
|
|
10313
|
-
softness: "soft",
|
|
10314
|
-
position: "bottom"
|
|
10315
|
-
},
|
|
10316
|
-
effects: {
|
|
10317
|
-
hover: [{
|
|
10318
|
-
effectId: "lift",
|
|
10319
|
-
options: { translateY: "-1px" }
|
|
10320
|
-
}],
|
|
10321
|
-
active: [{
|
|
10322
|
-
effectId: "scale-down",
|
|
10323
|
-
options: { scale: "0.98" }
|
|
10324
|
-
}]
|
|
10325
|
-
}
|
|
10326
|
-
},
|
|
10327
|
-
{
|
|
10328
|
-
id: "secondary",
|
|
10329
|
-
name: "Secondary",
|
|
10330
|
-
enabled: true,
|
|
10331
|
-
priority: 2,
|
|
10332
|
-
background: { type: "transparent" },
|
|
10333
|
-
textColorToken: "primary",
|
|
10334
|
-
borderRadius: "rounded-full",
|
|
10335
|
-
border: {
|
|
10336
|
-
widthClass: "border-2",
|
|
10337
|
-
colorToken: "primary"
|
|
10338
|
-
},
|
|
10339
|
-
effects: { hover: [{
|
|
10340
|
-
effectId: "background-on-hover",
|
|
10341
|
-
options: { colorToken: "surface" }
|
|
10342
|
-
}] }
|
|
10313
|
+
variants: [
|
|
10314
|
+
{
|
|
10315
|
+
id: "primary",
|
|
10316
|
+
name: "Primary",
|
|
10317
|
+
enabled: true,
|
|
10318
|
+
priority: 1,
|
|
10319
|
+
background: {
|
|
10320
|
+
type: "solid",
|
|
10321
|
+
colorToken: "primary"
|
|
10343
10322
|
},
|
|
10344
|
-
|
|
10345
|
-
|
|
10346
|
-
|
|
10347
|
-
|
|
10348
|
-
|
|
10349
|
-
|
|
10350
|
-
textColorToken: "text",
|
|
10351
|
-
borderRadius: "rounded-full",
|
|
10352
|
-
border: {
|
|
10353
|
-
widthClass: "border",
|
|
10354
|
-
colorToken: "border"
|
|
10355
|
-
},
|
|
10356
|
-
effects: { hover: [{
|
|
10357
|
-
effectId: "background-on-hover",
|
|
10358
|
-
options: { colorToken: "surface" }
|
|
10359
|
-
}] }
|
|
10323
|
+
textColorToken: "primaryForeground",
|
|
10324
|
+
borderRadius: "rounded-full",
|
|
10325
|
+
shadow: {
|
|
10326
|
+
elevation: "low",
|
|
10327
|
+
softness: "soft",
|
|
10328
|
+
position: "bottom"
|
|
10360
10329
|
},
|
|
10361
|
-
{
|
|
10362
|
-
|
|
10363
|
-
|
|
10364
|
-
|
|
10365
|
-
|
|
10366
|
-
|
|
10367
|
-
|
|
10368
|
-
|
|
10369
|
-
|
|
10370
|
-
effectId: "background-on-hover",
|
|
10371
|
-
options: { colorToken: "surface" }
|
|
10372
|
-
}] }
|
|
10330
|
+
effects: {
|
|
10331
|
+
hover: [{
|
|
10332
|
+
effectId: "lift",
|
|
10333
|
+
options: { translateY: "-1px" }
|
|
10334
|
+
}],
|
|
10335
|
+
active: [{
|
|
10336
|
+
effectId: "scale-down",
|
|
10337
|
+
options: { scale: "0.98" }
|
|
10338
|
+
}]
|
|
10373
10339
|
}
|
|
10374
|
-
|
|
10340
|
+
},
|
|
10341
|
+
{
|
|
10342
|
+
id: "secondary",
|
|
10343
|
+
name: "Secondary",
|
|
10344
|
+
enabled: true,
|
|
10345
|
+
priority: 2,
|
|
10346
|
+
background: { type: "transparent" },
|
|
10347
|
+
textColorToken: "primary",
|
|
10348
|
+
borderRadius: "rounded-full",
|
|
10349
|
+
border: {
|
|
10350
|
+
widthClass: "border-2",
|
|
10351
|
+
colorToken: "primary"
|
|
10352
|
+
},
|
|
10353
|
+
effects: { hover: [{
|
|
10354
|
+
effectId: "background-on-hover",
|
|
10355
|
+
options: { colorToken: "surface" }
|
|
10356
|
+
}] }
|
|
10357
|
+
},
|
|
10358
|
+
{
|
|
10359
|
+
id: "outline",
|
|
10360
|
+
name: "Outline",
|
|
10361
|
+
enabled: true,
|
|
10362
|
+
priority: 3,
|
|
10363
|
+
background: { type: "transparent" },
|
|
10364
|
+
textColorToken: "text",
|
|
10365
|
+
borderRadius: "rounded-full",
|
|
10366
|
+
border: {
|
|
10367
|
+
widthClass: "border",
|
|
10368
|
+
colorToken: "border"
|
|
10369
|
+
},
|
|
10370
|
+
effects: { hover: [{
|
|
10371
|
+
effectId: "background-on-hover",
|
|
10372
|
+
options: { colorToken: "surface" }
|
|
10373
|
+
}] }
|
|
10374
|
+
},
|
|
10375
|
+
{
|
|
10376
|
+
id: "ghost",
|
|
10377
|
+
name: "Ghost",
|
|
10378
|
+
enabled: true,
|
|
10379
|
+
priority: 3,
|
|
10380
|
+
background: { type: "transparent" },
|
|
10381
|
+
textColorToken: "text",
|
|
10382
|
+
borderRadius: "rounded-full",
|
|
10383
|
+
effects: { hover: [{
|
|
10384
|
+
effectId: "background-on-hover",
|
|
10385
|
+
options: { colorToken: "surface" }
|
|
10386
|
+
}] }
|
|
10387
|
+
}
|
|
10388
|
+
]
|
|
10389
|
+
}
|
|
10390
|
+
});
|
|
10391
|
+
//#endregion
|
|
10392
|
+
//#region ../theme-core/src/buttons/personalities/two-tone-pill.ts
|
|
10393
|
+
const solidSecondary = {
|
|
10394
|
+
id: "secondary",
|
|
10395
|
+
name: "Secondary",
|
|
10396
|
+
enabled: true,
|
|
10397
|
+
priority: 2,
|
|
10398
|
+
background: {
|
|
10399
|
+
type: "solid",
|
|
10400
|
+
colorToken: "secondary"
|
|
10401
|
+
},
|
|
10402
|
+
textColorToken: "onSecondary",
|
|
10403
|
+
borderRadius: "rounded-full",
|
|
10404
|
+
shadow: {
|
|
10405
|
+
elevation: "none",
|
|
10406
|
+
softness: null,
|
|
10407
|
+
position: "bottom"
|
|
10408
|
+
},
|
|
10409
|
+
effects: {
|
|
10410
|
+
hover: [{
|
|
10411
|
+
effectId: "background-on-hover-alpha",
|
|
10412
|
+
options: {
|
|
10413
|
+
colorToken: "secondary",
|
|
10414
|
+
opacity: 88
|
|
10415
|
+
}
|
|
10416
|
+
}],
|
|
10417
|
+
active: [{
|
|
10418
|
+
effectId: "scale-down",
|
|
10419
|
+
options: { scale: "0.98" }
|
|
10420
|
+
}]
|
|
10421
|
+
}
|
|
10422
|
+
};
|
|
10423
|
+
//#endregion
|
|
10424
|
+
//#region ../theme-core/src/buttons/personalities/index.ts
|
|
10425
|
+
const buttonPersonalities = [
|
|
10426
|
+
softPill,
|
|
10427
|
+
defineButtonPersonality({
|
|
10428
|
+
id: "two-tone-pill",
|
|
10429
|
+
name: "Two-tone Pill",
|
|
10430
|
+
description: "Rounded pills with distinct solid primary and secondary brand colours.",
|
|
10431
|
+
tags: softPill.tags,
|
|
10432
|
+
buttonSystem: {
|
|
10433
|
+
...softPill.buttonSystem,
|
|
10434
|
+
variants: softPill.buttonSystem.variants.map((variant) => variant.id === "secondary" ? solidSecondary : variant)
|
|
10375
10435
|
}
|
|
10376
10436
|
}),
|
|
10377
10437
|
earthPill,
|
|
@@ -10993,7 +11053,7 @@ const overlayLogoAccommodations = [
|
|
|
10993
11053
|
* optional nested styling fields that would otherwise leak from another Look.
|
|
10994
11054
|
*/
|
|
10995
11055
|
function baseHeader(theme) {
|
|
10996
|
-
const { navLinkStyle: _navLinkStyle, navTypography: _navTypography, navTextSize: _navTextSize, dropdownStyle: _dropdownStyle, ctaVariant: _ctaVariant, navContainer: _navContainer, container: _container, shadow: _shadow, logo: _logo, logoText: _logoText, border: _border, ...header } = theme.header;
|
|
11056
|
+
const { navLinkStyle: _navLinkStyle, navFontRole: _navFontRole, navTypography: _navTypography, navTextSize: _navTextSize, dropdownStyle: _dropdownStyle, ctaVariant: _ctaVariant, navContainer: _navContainer, container: _container, shadow: _shadow, logo: _logo, logoText: _logoText, border: _border, ...header } = theme.header;
|
|
10997
11057
|
return {
|
|
10998
11058
|
...header,
|
|
10999
11059
|
navContainer: {
|
|
@@ -11142,6 +11202,17 @@ const headerStyleCatalog = defineExactCatalog()([
|
|
|
11142
11202
|
navTypography: "brand-caps",
|
|
11143
11203
|
moods: ["expressive"]
|
|
11144
11204
|
},
|
|
11205
|
+
{
|
|
11206
|
+
id: asHeaderStyleId("brand-capsule"),
|
|
11207
|
+
label: "Brand Capsule",
|
|
11208
|
+
description: "Solid brand chrome designed as a floating capsule, with quiet-caps nav, a soft pill active state, and an inverted CTA pill.",
|
|
11209
|
+
supportedLayoutIds: supportedLayouts(["classic"]),
|
|
11210
|
+
navInteraction: "pill-background",
|
|
11211
|
+
surface: "brand-solid",
|
|
11212
|
+
defaultDepth: "shadow",
|
|
11213
|
+
navTypography: "quiet-caps",
|
|
11214
|
+
moods: ["expressive", "professional"]
|
|
11215
|
+
},
|
|
11145
11216
|
{
|
|
11146
11217
|
id: asHeaderStyleId("serif-line"),
|
|
11147
11218
|
label: "Serif Line",
|
|
@@ -11235,6 +11306,7 @@ const headerStyleCompatibilityOrder = /* @__PURE__ */ new Map([
|
|
|
11235
11306
|
"brand-bar",
|
|
11236
11307
|
"brand-underline",
|
|
11237
11308
|
"brand-pill",
|
|
11309
|
+
"brand-capsule",
|
|
11238
11310
|
"serif-line",
|
|
11239
11311
|
"flat-tabs"
|
|
11240
11312
|
])],
|
|
@@ -11272,6 +11344,11 @@ headerStyleRepairChain([
|
|
|
11272
11344
|
"brand-pill",
|
|
11273
11345
|
"brand-bar",
|
|
11274
11346
|
"minimal"
|
|
11347
|
+
]), headerStyleRepairChain([
|
|
11348
|
+
"brand-capsule",
|
|
11349
|
+
"brand-pill",
|
|
11350
|
+
"brand-bar",
|
|
11351
|
+
"minimal"
|
|
11275
11352
|
]), headerStyleRepairChain([
|
|
11276
11353
|
"pill-nav",
|
|
11277
11354
|
"soft-bar",
|
|
@@ -15205,7 +15282,7 @@ function generateVariantCSS(variant, themeId, tokens, theme) {
|
|
|
15205
15282
|
rules.push(`display: flex`);
|
|
15206
15283
|
rules.push(`flex-direction: column`);
|
|
15207
15284
|
rules.push(`position: relative`);
|
|
15208
|
-
rules.push(`overflow:
|
|
15285
|
+
rules.push(`overflow: visible`);
|
|
15209
15286
|
const mediaRadius = MEDIA_CORNER_MAP[corners];
|
|
15210
15287
|
const mediaRules = [`border-top-left-radius: ${mediaRadius}`, `border-top-right-radius: ${mediaRadius}`];
|
|
15211
15288
|
const contentRules = [`padding: ${CONTENT_PADDING_MAP[variant.spacing] || CONTENT_PADDING_MAP.comfortable}`];
|
|
@@ -16729,6 +16806,7 @@ const navFontWeight = z$1.enum([
|
|
|
16729
16806
|
"bold"
|
|
16730
16807
|
]);
|
|
16731
16808
|
const headerMaxWidth = z$1.enum(["container", "full"]);
|
|
16809
|
+
const headerBarFrame = z$1.enum(["full-bleed", "inset-shell"]);
|
|
16732
16810
|
const headerContainerSchema = z$1.object({
|
|
16733
16811
|
rounded: z$1.enum([
|
|
16734
16812
|
"none",
|
|
@@ -16873,6 +16951,7 @@ const headerSchema = z$1.object({
|
|
|
16873
16951
|
positioning: headerPositioning,
|
|
16874
16952
|
shrinkOnScroll: z$1.boolean(),
|
|
16875
16953
|
maxWidth: headerMaxWidth,
|
|
16954
|
+
barFrame: headerBarFrame.optional(),
|
|
16876
16955
|
logoOverride: mediaSchema$1.nullable().optional(),
|
|
16877
16956
|
background: headerBackgroundSchema.default({
|
|
16878
16957
|
type: "color",
|
|
@@ -16882,6 +16961,7 @@ const headerSchema = z$1.object({
|
|
|
16882
16961
|
navStyle: headerNavStyle,
|
|
16883
16962
|
navColor: themeColorTokenSchema.nullable().optional(),
|
|
16884
16963
|
navWeight: navFontWeight.default("medium"),
|
|
16964
|
+
navFontRole: z$1.enum(["body", "heading"]).optional(),
|
|
16885
16965
|
navTypography: z$1.enum(["body", "heading"]).optional(),
|
|
16886
16966
|
navTextSize: navLinkStyleSchema.shape.textSize,
|
|
16887
16967
|
navPlacement: z$1.enum(["end", "center"]).optional(),
|
|
@@ -16897,7 +16977,21 @@ const headerSchema = z$1.object({
|
|
|
16897
16977
|
ctaTreatment: headerCtaTreatmentSchema.optional(),
|
|
16898
16978
|
ctaVariant: z$1.string().min(1).optional(),
|
|
16899
16979
|
dropdownStyle: dropdownStyleSchema
|
|
16900
|
-
});
|
|
16980
|
+
}).transform(normaliseHeaderNavFontRole);
|
|
16981
|
+
/**
|
|
16982
|
+
* Normalises the legacy `navTypography` font-role alias into the canonical
|
|
16983
|
+
* `navFontRole` field so persisted themes migrate at the parse boundary without
|
|
16984
|
+
* a data migration. `navFontRole` always wins when both are present; the legacy
|
|
16985
|
+
* field is dropped so we never carry a dual write forward.
|
|
16986
|
+
*/
|
|
16987
|
+
function normaliseHeaderNavFontRole(header) {
|
|
16988
|
+
if (header.navTypography === void 0) return header;
|
|
16989
|
+
const { navTypography, ...rest } = header;
|
|
16990
|
+
return header.navFontRole === void 0 ? {
|
|
16991
|
+
...rest,
|
|
16992
|
+
navFontRole: navTypography
|
|
16993
|
+
} : rest;
|
|
16994
|
+
}
|
|
16901
16995
|
const footerVariant = z$1.enum([
|
|
16902
16996
|
"simple",
|
|
16903
16997
|
"columns",
|
|
@@ -17929,6 +18023,7 @@ const curatedSiteStyles = [
|
|
|
17929
18023
|
],
|
|
17930
18024
|
buttonPersonalityChoices: [
|
|
17931
18025
|
buttonChoice("soft-pill"),
|
|
18026
|
+
buttonChoice("two-tone-pill"),
|
|
17932
18027
|
buttonChoice("pebble"),
|
|
17933
18028
|
buttonChoice("editorial-link"),
|
|
17934
18029
|
buttonChoice("brushed-wash")
|
|
@@ -19108,6 +19203,7 @@ const curatedSiteStyles = [
|
|
|
19108
19203
|
],
|
|
19109
19204
|
buttonPersonalityChoices: [
|
|
19110
19205
|
buttonChoice("quiet-arrow"),
|
|
19206
|
+
buttonChoice("two-tone-pill"),
|
|
19111
19207
|
buttonChoice("flat-ink"),
|
|
19112
19208
|
buttonChoice("editorial-link")
|
|
19113
19209
|
],
|
|
@@ -19315,6 +19411,21 @@ function toSiteChromeBackgroundColorTokens(tokenNames) {
|
|
|
19315
19411
|
return token ? [token] : [];
|
|
19316
19412
|
});
|
|
19317
19413
|
}
|
|
19414
|
+
/**
|
|
19415
|
+
* Applies the user's nav font-role/size overrides on top of a style-resolved
|
|
19416
|
+
* nav link style. This is where the precedence contract lands:
|
|
19417
|
+
*
|
|
19418
|
+
* - The nav typography TREATMENT (case/tracking identity: plain / heading /
|
|
19419
|
+
* quiet-caps / brand-caps) is ALWAYS owned by the active header style and is
|
|
19420
|
+
* baked into `style` before this call (see `applyNavTypography` in
|
|
19421
|
+
* headerLooks.ts).
|
|
19422
|
+
* - Each treatment resolves through a DEFAULT font role: `heading` resolves
|
|
19423
|
+
* through the heading role; `plain` / `quiet-caps` / `brand-caps` resolve
|
|
19424
|
+
* through the body role.
|
|
19425
|
+
* - The user's `navFontRole` (surfaced here as `preferences.typography`) only
|
|
19426
|
+
* overrides which font ROLE the treatment resolves through. It never changes
|
|
19427
|
+
* the treatment. `'inherit'` keeps the treatment's default role.
|
|
19428
|
+
*/
|
|
19318
19429
|
function mergeHeaderNavTypographyPreference(style, preferences) {
|
|
19319
19430
|
return preferences.typography === "inherit" && preferences.fontSize === "inherit" ? style : {
|
|
19320
19431
|
...style,
|
|
@@ -20434,6 +20545,7 @@ function devValidate(node) {
|
|
|
20434
20545
|
}
|
|
20435
20546
|
//#endregion
|
|
20436
20547
|
//#region ../blocks/src/system/node/fragments/backgroundLayer.ts
|
|
20548
|
+
const BACKGROUND_FRAME_BASE_CLASS = "rb-background-frame rb-absolute rb-inset-0 rb-z-neg-10 rb-h-full rb-w-full rb-isolate rb-pointer-events-none";
|
|
20437
20549
|
/**
|
|
20438
20550
|
* Creates background layer nodes for rendering backgrounds from field data.
|
|
20439
20551
|
*
|
|
@@ -20499,6 +20611,34 @@ function backgroundLayer(path, options = {}) {
|
|
|
20499
20611
|
];
|
|
20500
20612
|
}
|
|
20501
20613
|
/**
|
|
20614
|
+
* Wrap decorative background layers in their own clipping frame.
|
|
20615
|
+
*
|
|
20616
|
+
* Foreground content remains outside this frame, so editor outlines, focus
|
|
20617
|
+
* rings, and floating controls are never clipped by a visual background.
|
|
20618
|
+
* Backgrounds that explicitly opt into overflow keep that behavior within
|
|
20619
|
+
* the decorative layer rather than changing the content root.
|
|
20620
|
+
*/
|
|
20621
|
+
function backgroundFrame(path, options = {}) {
|
|
20622
|
+
const { leadingNodes = [], ...layerOptions } = options;
|
|
20623
|
+
const framedLayerOptions = {
|
|
20624
|
+
...layerOptions,
|
|
20625
|
+
styleClassName: layerOptions.styleClassName ?? "background-style rb-absolute rb-inset-0 rb-z-0 rb-h-full rb-w-full rb-pointer-events-none",
|
|
20626
|
+
imageClassName: layerOptions.imageClassName ?? "rb-absolute rb-z-0",
|
|
20627
|
+
overlayClassName: layerOptions.overlayClassName ?? "background-overlay rb-absolute rb-inset-0 rb-z-0 rb-h-full rb-w-full rb-pointer-events-none"
|
|
20628
|
+
};
|
|
20629
|
+
return el("div", {
|
|
20630
|
+
className: { $bind: {
|
|
20631
|
+
from: path,
|
|
20632
|
+
transforms: [{
|
|
20633
|
+
id: "background.resolveFrameClassName",
|
|
20634
|
+
options: { baseClass: BACKGROUND_FRAME_BASE_CLASS }
|
|
20635
|
+
}],
|
|
20636
|
+
fallback: `${BACKGROUND_FRAME_BASE_CLASS} rb-overflow-hidden`
|
|
20637
|
+
} },
|
|
20638
|
+
style: { borderRadius: "inherit" }
|
|
20639
|
+
}, [...leadingNodes, ...backgroundLayer(path, framedLayerOptions)]);
|
|
20640
|
+
}
|
|
20641
|
+
/**
|
|
20502
20642
|
* Creates a media node for rendering background image/video media with conditional rendering.
|
|
20503
20643
|
*
|
|
20504
20644
|
* This helper creates a media element that:
|
|
@@ -20660,8 +20800,8 @@ function sectionContainer(children, opts) {
|
|
|
20660
20800
|
* - content
|
|
20661
20801
|
*/
|
|
20662
20802
|
function styledContainer(config) {
|
|
20663
|
-
const { children, rootType = "div", rootProps, bindFrom = "_containerStyles", baseClassName = "rb-relative rb-isolate rb-overflow-
|
|
20664
|
-
const
|
|
20803
|
+
const { children, rootType = "div", rootProps, bindFrom = "_containerStyles", baseClassName = "rb-relative rb-isolate rb-overflow-visible", imageClassName = "rb-absolute rb-z-0", constrainWidth = true } = config;
|
|
20804
|
+
const backgroundNode = backgroundFrame(`${bindFrom}.background`, { imageClassName });
|
|
20665
20805
|
const childrenArray = Array.isArray(children) ? children : [children];
|
|
20666
20806
|
const { className: _ignoredClassName, style: _ignoredStyle, ...safeRootProps } = rootProps ?? {};
|
|
20667
20807
|
return el(rootType, {
|
|
@@ -20684,7 +20824,7 @@ function styledContainer(config) {
|
|
|
20684
20824
|
}],
|
|
20685
20825
|
fallback: constrainWidth ? `${baseClassName} rb-container` : baseClassName
|
|
20686
20826
|
} }
|
|
20687
|
-
}, [
|
|
20827
|
+
}, [backgroundNode, ...childrenArray]);
|
|
20688
20828
|
}
|
|
20689
20829
|
//#endregion
|
|
20690
20830
|
//#region ../blocks/src/system/spacing.ts
|
|
@@ -20817,7 +20957,7 @@ const DEFAULT_SECTION_SPACING = "medium";
|
|
|
20817
20957
|
* - Creating a section wrapper with background theme
|
|
20818
20958
|
* - Adding background color/gradient/image layers
|
|
20819
20959
|
* - Binding className to section styles with transform
|
|
20820
|
-
* -
|
|
20960
|
+
* - Keeping foreground overflow visible while decorative backgrounds clip independently
|
|
20821
20961
|
* - Wrapping content children
|
|
20822
20962
|
*
|
|
20823
20963
|
* Use this helper to eliminate 25+ lines of boilerplate section setup code.
|
|
@@ -20853,8 +20993,8 @@ const DEFAULT_SECTION_SPACING = "medium";
|
|
|
20853
20993
|
* });
|
|
20854
20994
|
*/
|
|
20855
20995
|
function styledSection(config) {
|
|
20856
|
-
const { children, baseClass = "rb-px-6", spacing = DEFAULT_SECTION_SPACING, background = "background", bindFrom = "_sectionStyles", imageClassName = "rb-absolute rb-z-
|
|
20857
|
-
const
|
|
20996
|
+
const { children, baseClass = "rb-px-6", spacing = DEFAULT_SECTION_SPACING, background = "background", bindFrom = "_sectionStyles", imageClassName = "rb-absolute rb-z-0", renderBackgroundImage = true, backgroundImageLoading, backgroundImageFetchPriority, fullWidthPath } = config;
|
|
20997
|
+
const renderedBackgroundNode = backgroundFrame(`${bindFrom}.background`, {
|
|
20858
20998
|
imageClassName,
|
|
20859
20999
|
fallbackToken: background,
|
|
20860
21000
|
omitImageLayer: !renderBackgroundImage,
|
|
@@ -20877,13 +21017,8 @@ function styledSection(config) {
|
|
|
20877
21017
|
fullWidthPath
|
|
20878
21018
|
}
|
|
20879
21019
|
}]
|
|
20880
|
-
} },
|
|
20881
|
-
allowOverflow: allowOverflow ? true : { $bind: {
|
|
20882
|
-
from: `${bindFrom}.background`,
|
|
20883
|
-
transforms: [{ id: "background.resolveAllowOverflow" }],
|
|
20884
|
-
fallback: false
|
|
20885
21020
|
} }
|
|
20886
|
-
}, [
|
|
21021
|
+
}, [renderedBackgroundNode, ...childrenArray]);
|
|
20887
21022
|
}
|
|
20888
21023
|
//#endregion
|
|
20889
21024
|
//#region ../blocks/src/system/node/fragments/ctaButton.ts
|
|
@@ -21744,9 +21879,12 @@ function responsiveTwoColumn({ image, text, ratioFrom, imagePositionFrom, gapCla
|
|
|
21744
21879
|
//#endregion
|
|
21745
21880
|
//#region ../blocks/src/system/node/fragments/styledCard.ts
|
|
21746
21881
|
function styledCard(children, opts, ...mods) {
|
|
21747
|
-
const baseClassName = opts.baseClassName ?? "rb-relative rb-isolate rb-overflow-
|
|
21748
|
-
const defaultBackgroundLayer = el("div", {
|
|
21749
|
-
|
|
21882
|
+
const baseClassName = opts.baseClassName ?? "rb-relative rb-isolate rb-overflow-visible rb-border";
|
|
21883
|
+
const defaultBackgroundLayer = el("div", {
|
|
21884
|
+
className: "rb-absolute rb-inset-0 rb-z-neg-10 rb-h-full rb-w-full rb-pointer-events-none rb-bg-surface",
|
|
21885
|
+
style: { borderRadius: "inherit" }
|
|
21886
|
+
});
|
|
21887
|
+
const backgroundNode = backgroundFrame(opts.backgroundFrom);
|
|
21750
21888
|
const style = {
|
|
21751
21889
|
...opts.style ?? {},
|
|
21752
21890
|
borderColor: { $bind: {
|
|
@@ -21773,7 +21911,7 @@ function styledCard(children, opts, ...mods) {
|
|
|
21773
21911
|
...style ? { style } : {}
|
|
21774
21912
|
}, [
|
|
21775
21913
|
defaultBackgroundLayer,
|
|
21776
|
-
|
|
21914
|
+
backgroundNode,
|
|
21777
21915
|
...children
|
|
21778
21916
|
], ...mods);
|
|
21779
21917
|
}
|
|
@@ -22646,7 +22784,7 @@ function buildTestimonialCard(...mods) {
|
|
|
22646
22784
|
}, props({ value: "“" })), richText({ className: "rb-prose rb-max-w-none" }, bind("testimonial.content.body"), when("testimonial.content.body"))]), el("div", { className: "rb-testimonial-attribution" }, buildAttributionNodes())])], {
|
|
22647
22785
|
stylesFrom: "content._cardStyles",
|
|
22648
22786
|
backgroundFrom: "content._cardStyles.background",
|
|
22649
|
-
baseClassName: "rb-testimonial-card rb-relative rb-isolate rb-flex rb-h-full rb-flex-col rb-overflow-
|
|
22787
|
+
baseClassName: "rb-testimonial-card rb-relative rb-isolate rb-flex rb-h-full rb-flex-col rb-overflow-visible rb-p-8"
|
|
22650
22788
|
}, ...mods);
|
|
22651
22789
|
}
|
|
22652
22790
|
/**
|
|
@@ -23374,7 +23512,7 @@ function createFaqAccordionLayout(options = {}) {
|
|
|
23374
23512
|
options: {
|
|
23375
23513
|
axis: "all",
|
|
23376
23514
|
includeSpacing: false,
|
|
23377
|
-
baseClass: "rb-faq-item rb-relative rb-isolate rb-overflow-
|
|
23515
|
+
baseClass: "rb-faq-item rb-relative rb-isolate rb-overflow-visible"
|
|
23378
23516
|
}
|
|
23379
23517
|
}]
|
|
23380
23518
|
},
|
|
@@ -24899,7 +25037,6 @@ function splitLayoutWith(children) {
|
|
|
24899
25037
|
}
|
|
24900
25038
|
}),
|
|
24901
25039
|
renderBackgroundImage: false,
|
|
24902
|
-
allowOverflow: true,
|
|
24903
25040
|
baseClass: ""
|
|
24904
25041
|
});
|
|
24905
25042
|
}
|
|
@@ -25527,7 +25664,7 @@ function postCard(children, ...mods) {
|
|
|
25527
25664
|
return styledCard(children, {
|
|
25528
25665
|
stylesFrom: "content._cardStyles",
|
|
25529
25666
|
backgroundFrom: "content._cardStyles.background",
|
|
25530
|
-
baseClassName: "rb-relative rb-isolate rb-overflow-
|
|
25667
|
+
baseClassName: "rb-relative rb-isolate rb-overflow-visible rb-border rb-flex rb-flex-col rb-h-full"
|
|
25531
25668
|
}, ...mods);
|
|
25532
25669
|
}
|
|
25533
25670
|
const gridPostCard = postCard([postImageLink("rb-h-48 rb-w-full rb-object-cover rb-transition-transform rb-hover-scale-105", {
|
|
@@ -25563,7 +25700,7 @@ const stackPostCard = styledCard([inline({
|
|
|
25563
25700
|
])])], {
|
|
25564
25701
|
stylesFrom: "content._cardStyles",
|
|
25565
25702
|
backgroundFrom: "content._cardStyles.background",
|
|
25566
|
-
baseClassName: "rb-relative rb-isolate rb-overflow-
|
|
25703
|
+
baseClassName: "rb-relative rb-isolate rb-overflow-visible rb-border"
|
|
25567
25704
|
}, repeat("data.posts", "post"));
|
|
25568
25705
|
const emptyState$2 = {
|
|
25569
25706
|
...styledCard([text({
|
|
@@ -25572,7 +25709,7 @@ const emptyState$2 = {
|
|
|
25572
25709
|
}, bind("content.emptyMessage", { fallback: "No posts published yet." }))], {
|
|
25573
25710
|
stylesFrom: "content._cardStyles",
|
|
25574
25711
|
backgroundFrom: "content._cardStyles.background",
|
|
25575
|
-
baseClassName: "rb-relative rb-isolate rb-overflow-
|
|
25712
|
+
baseClassName: "rb-relative rb-isolate rb-overflow-visible rb-border rb-border-dashed rb-p-8 rb-text-center"
|
|
25576
25713
|
}),
|
|
25577
25714
|
$when: {
|
|
25578
25715
|
when: { from: "data.posts[0]" },
|
|
@@ -25582,7 +25719,7 @@ const emptyState$2 = {
|
|
|
25582
25719
|
function blogListingShell(children) {
|
|
25583
25720
|
return styledSection({
|
|
25584
25721
|
children: styledContainer({
|
|
25585
|
-
baseClassName: "rb-relative rb-isolate rb-overflow-
|
|
25722
|
+
baseClassName: "rb-relative rb-isolate rb-overflow-visible",
|
|
25586
25723
|
children
|
|
25587
25724
|
}),
|
|
25588
25725
|
baseClass: ""
|
|
@@ -26016,7 +26153,7 @@ const copyLayout = fragmentLayoutNode$1(formCopyFragment.layout);
|
|
|
26016
26153
|
const formSurface = styledContainer({
|
|
26017
26154
|
bindFrom: "_containerStyles",
|
|
26018
26155
|
constrainWidth: false,
|
|
26019
|
-
baseClassName: "rb-form-surface rb-relative rb-isolate rb-overflow-
|
|
26156
|
+
baseClassName: "rb-form-surface rb-relative rb-isolate rb-overflow-visible",
|
|
26020
26157
|
children: fragmentLayoutNode$1(formEmbedFragment.layout)
|
|
26021
26158
|
});
|
|
26022
26159
|
function createFormLayout(variant) {
|
|
@@ -27293,6 +27430,7 @@ const headerRootClassTransform = {
|
|
|
27293
27430
|
];
|
|
27294
27431
|
const variant = header?.variant;
|
|
27295
27432
|
if (variant && VALID_VARIANTS.includes(variant)) classes.push(`header-variant-${variant}`);
|
|
27433
|
+
if (header?.barFrame === "inset-shell" && variant === "classic") classes.push("header-bar-frame-inset-shell");
|
|
27296
27434
|
return joinClasses$2(classes);
|
|
27297
27435
|
}
|
|
27298
27436
|
};
|
|
@@ -27837,7 +27975,7 @@ function markEditableSurfaceForwarding(component) {
|
|
|
27837
27975
|
const SITE_CHROME_VISIBLE_HEADER_ATTR = "data-site-chrome-visible-header";
|
|
27838
27976
|
//#endregion
|
|
27839
27977
|
//#region ../blocks/src/system/blocks/site-header.ts
|
|
27840
|
-
const whenTransformed
|
|
27978
|
+
const whenTransformed = (from, transformId, equals = true) => (node) => ({
|
|
27841
27979
|
...node,
|
|
27842
27980
|
$when: {
|
|
27843
27981
|
when: {
|
|
@@ -27865,7 +28003,7 @@ const logoRow = link({
|
|
|
27865
28003
|
text({
|
|
27866
28004
|
as: "strong",
|
|
27867
28005
|
className: "header-logo-text rb-truncate"
|
|
27868
|
-
}, whenTransformed
|
|
28006
|
+
}, whenTransformed("$root.theme.header.logo", "layout.headerLogoTextVisible"), bind("site.title", { fallback: "Your Site" }))
|
|
27869
28007
|
]);
|
|
27870
28008
|
const centeredLogoRow = link({
|
|
27871
28009
|
href: "/",
|
|
@@ -27885,7 +28023,7 @@ const centeredLogoRow = link({
|
|
|
27885
28023
|
text({
|
|
27886
28024
|
as: "strong",
|
|
27887
28025
|
className: "header-logo-text"
|
|
27888
|
-
}, whenTransformed
|
|
28026
|
+
}, whenTransformed("$root.theme.header.logo", "layout.headerLogoTextVisible"), bind("site.title", { fallback: "Your Site" }))
|
|
27889
28027
|
]);
|
|
27890
28028
|
const createNavRow = (className, align = "end") => navRow({
|
|
27891
28029
|
className: `${className} header-nav-row`,
|
|
@@ -28017,7 +28155,7 @@ const classicLayout = inline({
|
|
|
28017
28155
|
logoRow,
|
|
28018
28156
|
createNavRow(`rb-ml-auto ${desktopOnlyDisplay("flex")} rb-gap-6`),
|
|
28019
28157
|
headerCta
|
|
28020
|
-
], whenTransformed
|
|
28158
|
+
], whenTransformed("$root.theme.header", "layout.classicNavMode", "inline"));
|
|
28021
28159
|
const classicCenteredNavLayout = inline({
|
|
28022
28160
|
className: bindProp("$root.theme.header.maxWidth", {
|
|
28023
28161
|
transforms: pipe(tx("layout.maxWidthClass", { base: `rb-header-layout ${desktopOnlyDisplay("flex")} rb-w-full rb-items-center rb-gap-6` })),
|
|
@@ -28028,7 +28166,7 @@ const classicCenteredNavLayout = inline({
|
|
|
28028
28166
|
logoRow,
|
|
28029
28167
|
createNavRow(`rb-flex-1 rb-justify-center ${desktopOnlyDisplay("flex")} rb-gap-6`, "center"),
|
|
28030
28168
|
headerCta
|
|
28031
|
-
], whenTransformed
|
|
28169
|
+
], whenTransformed("$root.theme.header", "layout.classicNavMode", "centered"));
|
|
28032
28170
|
const centeredLayout = stack({
|
|
28033
28171
|
gap: "md",
|
|
28034
28172
|
align: "center",
|
|
@@ -28091,7 +28229,6 @@ const siteHeaderManifest = createBlockManifest({
|
|
|
28091
28229
|
transforms: pipe(tx("layout.headerSectionBackground")),
|
|
28092
28230
|
fallback: "background"
|
|
28093
28231
|
}),
|
|
28094
|
-
allowOverflow: true,
|
|
28095
28232
|
className: bindProp("$root.theme.header", {
|
|
28096
28233
|
transforms: pipe(tx("layout.headerRootClass")),
|
|
28097
28234
|
fallback: "header-root rb-z-40 rb-w-full transition-theme"
|
|
@@ -28142,218 +28279,154 @@ const footerNavGroupsLayout = stack({
|
|
|
28142
28279
|
linkRequired: true,
|
|
28143
28280
|
target: { $bind: { from: "entry.target" } },
|
|
28144
28281
|
rel: { $bind: { from: "entry.rel" } }
|
|
28145
|
-
}, [text({ as: "span" }, bind("entry.label"))], repeat("group.children", "entry"))])], repeat("footerMenu.groups", "group"))],
|
|
28282
|
+
}, [text({ as: "span" }, bind("entry.label"))], repeat("group.children", "entry"))])], repeat("footerMenu.groups", "group"))], whenCollectionHasItems("footerMenu.groups"));
|
|
28146
28283
|
//#endregion
|
|
28147
28284
|
//#region ../blocks/src/system/blocks/site-footer.ts
|
|
28148
|
-
const
|
|
28149
|
-
|
|
28150
|
-
...node,
|
|
28151
|
-
$when: {
|
|
28152
|
-
when: {
|
|
28153
|
-
from,
|
|
28154
|
-
transforms: [{ id: transformId }]
|
|
28155
|
-
},
|
|
28156
|
-
equals
|
|
28157
|
-
}
|
|
28158
|
-
});
|
|
28159
|
-
const bottomBarTextLayout = () => {
|
|
28160
|
-
const bottomTextNode = footerTextLayout()[1];
|
|
28161
|
-
return bottomTextNode ? [bottomTextNode] : [];
|
|
28162
|
-
};
|
|
28163
|
-
const bodyTextLayout = () => {
|
|
28164
|
-
const bodyTextNode = footerTextLayout()[0];
|
|
28165
|
-
return bodyTextNode ? [bodyTextNode] : [];
|
|
28166
|
-
};
|
|
28167
|
-
const businessAddressLayout = () => [text({
|
|
28168
|
-
as: "p",
|
|
28169
|
-
className: "rb-caption rb-opacity-80"
|
|
28170
|
-
}, bind("site.businessAddress.displayAddress"), when("content.showBusinessAddress", { equals: true }))];
|
|
28171
|
-
const inlineBottomTextLayout = () => {
|
|
28172
|
-
const bottomTextNode = footerTextLayout()[1];
|
|
28173
|
-
if (!bottomTextNode) return [];
|
|
28174
|
-
return [when("$root.theme.footer.bottomBar.enabled", {
|
|
28175
|
-
equals: true,
|
|
28176
|
-
not: true
|
|
28177
|
-
})(bottomTextNode)];
|
|
28178
|
-
};
|
|
28179
|
-
const simpleFooterLayout = stack({
|
|
28180
|
-
gap: "md",
|
|
28181
|
-
align: "start",
|
|
28182
|
-
className: { $bind: {
|
|
28183
|
-
from: "$root.theme.footer",
|
|
28184
|
-
transforms: [{ id: "layout.footerSimpleRootClass" }],
|
|
28185
|
-
fallback: "rb-container rb-flex rb-w-full rb-flex-col rb-items-start rb-gap-4 rb-py-10 rb-text-left"
|
|
28186
|
-
} }
|
|
28187
|
-
}, [
|
|
28188
|
-
link({
|
|
28189
|
-
href: "/",
|
|
28190
|
-
className: { $bind: {
|
|
28191
|
-
from: "$root.theme.footer.logo",
|
|
28192
|
-
transforms: [{
|
|
28193
|
-
id: "layout.footerLogoClass",
|
|
28194
|
-
options: { requireExplicitShow: true }
|
|
28195
|
-
}],
|
|
28196
|
-
fallback: "rb-hidden"
|
|
28197
|
-
} }
|
|
28198
|
-
}, [
|
|
28199
|
-
media({ className: { $bind: {
|
|
28200
|
-
from: "$root.theme.footer.logo",
|
|
28201
|
-
transforms: [{ id: "layout.footerLogoMediaClass" }],
|
|
28202
|
-
fallback: "rb-w-auto"
|
|
28203
|
-
} } }, when("content.logo"), bind("content.logo")),
|
|
28204
|
-
stack({ className: "rb-contents" }, [media({ className: { $bind: {
|
|
28205
|
-
from: "$root.theme.footer.logo",
|
|
28206
|
-
transforms: [{ id: "layout.footerLogoMediaClass" }],
|
|
28207
|
-
fallback: "rb-w-auto"
|
|
28208
|
-
} } }, when("site.logo"), bind("site.logo"))], when("content.logo", { not: true })),
|
|
28209
|
-
text({
|
|
28210
|
-
as: "strong",
|
|
28211
|
-
className: "footer-logo-text rb-nav-text"
|
|
28212
|
-
}, whenTransformed("$root.theme.footer", "layout.footerLogoTextVisible"), bind("site.title", { fallback: "Your Site" }))
|
|
28213
|
-
]),
|
|
28214
|
-
footerNav({
|
|
28215
|
-
collectionPath: "footerMenu.items",
|
|
28216
|
-
mode: "flatten",
|
|
28217
|
-
className: { $bind: {
|
|
28218
|
-
from: "$root.theme.footer.navLayout",
|
|
28219
|
-
transforms: [{ id: "layout.footerSimpleNavClass" }],
|
|
28220
|
-
fallback: "footer-nav rb-flex rb-flex-wrap rb-justify-start rb-gap-x-6 rb-gap-y-3"
|
|
28221
|
-
} },
|
|
28222
|
-
linkClassName: "footer-nav-link rb-inline-flex rb-items-center rb-px-4 rb-py-2 rb-nav-text transition-theme-standard"
|
|
28223
|
-
}),
|
|
28224
|
-
...bodyTextLayout(),
|
|
28225
|
-
...businessAddressLayout(),
|
|
28226
|
-
...inlineBottomTextLayout()
|
|
28227
|
-
], when("$root.theme.footer.variant", { equals: "simple" }));
|
|
28228
|
-
const columnsFooterLayout = stack({
|
|
28229
|
-
gap: "xl",
|
|
28230
|
-
align: "start",
|
|
28285
|
+
const brandLogo = link({
|
|
28286
|
+
href: "/",
|
|
28231
28287
|
className: { $bind: {
|
|
28232
|
-
from: "$root.theme.footer.
|
|
28288
|
+
from: "$root.theme.footer.logo",
|
|
28233
28289
|
transforms: [{
|
|
28234
|
-
id: "layout.
|
|
28235
|
-
options: { base: "
|
|
28290
|
+
id: "layout.footerLogoClass",
|
|
28291
|
+
options: { base: "footer-logo rb-inline-flex rb-items-center rb-gap-3 rb-no-underline" }
|
|
28236
28292
|
}],
|
|
28237
|
-
fallback: "
|
|
28293
|
+
fallback: "footer-logo rb-inline-flex rb-items-center rb-gap-3 rb-no-underline"
|
|
28238
28294
|
} }
|
|
28239
|
-
}, [
|
|
28240
|
-
|
|
28241
|
-
|
|
28242
|
-
|
|
28243
|
-
|
|
28244
|
-
|
|
28245
|
-
|
|
28246
|
-
|
|
28247
|
-
|
|
28248
|
-
|
|
28249
|
-
|
|
28250
|
-
|
|
28251
|
-
|
|
28252
|
-
|
|
28253
|
-
|
|
28254
|
-
|
|
28255
|
-
|
|
28256
|
-
gap: "xl",
|
|
28257
|
-
align: "start",
|
|
28295
|
+
}, [media({ className: { $bind: {
|
|
28296
|
+
from: "$root.theme.footer.logo",
|
|
28297
|
+
transforms: [{
|
|
28298
|
+
id: "layout.footerLogoMediaClass",
|
|
28299
|
+
options: { base: "rb-h-10 rb-w-auto" }
|
|
28300
|
+
}],
|
|
28301
|
+
fallback: "rb-h-10 rb-w-auto"
|
|
28302
|
+
} } }, when("module.showLogo", { equals: true }), when("content.logo"), bind("content.logo")), text({
|
|
28303
|
+
as: "strong",
|
|
28304
|
+
className: "footer-logo-text rb-nav-text"
|
|
28305
|
+
}, when("module.showTitle", { equals: true }), bind("site.title", { fallback: "Your Site" }))], when("module.kind", { equals: "brand" }));
|
|
28306
|
+
const navigation = stack({
|
|
28307
|
+
gap: "md",
|
|
28308
|
+
className: "rb-w-full"
|
|
28309
|
+
}, [footerNavGroupsLayout, footerNav({
|
|
28310
|
+
collectionPath: "footerMenu.items",
|
|
28311
|
+
mode: "links-only",
|
|
28258
28312
|
className: { $bind: {
|
|
28259
|
-
from: "
|
|
28260
|
-
|
|
28261
|
-
|
|
28262
|
-
|
|
28263
|
-
|
|
28264
|
-
|
|
28265
|
-
|
|
28313
|
+
from: "module.navigationClassName",
|
|
28314
|
+
fallback: "footer-nav rb-flex rb-flex-wrap rb-gap-x-6 rb-gap-y-3"
|
|
28315
|
+
} },
|
|
28316
|
+
linkClassName: "footer-nav-link rb-nav-text transition-theme-standard"
|
|
28317
|
+
})], when("module.kind", { equals: "navigation" }));
|
|
28318
|
+
const legalNavigation = footerNav({
|
|
28319
|
+
collectionPath: "legalFooterMenu.items",
|
|
28320
|
+
mode: "links-only",
|
|
28321
|
+
className: "rb-flex rb-flex-wrap rb-gap-x-4 rb-gap-y-2",
|
|
28322
|
+
linkClassName: "footer-nav-link rb-caption transition-theme-standard"
|
|
28323
|
+
});
|
|
28324
|
+
const address = text({
|
|
28325
|
+
as: "address",
|
|
28326
|
+
className: "rb-not-italic rb-opacity-80"
|
|
28327
|
+
}, when("module.kind", { equals: "business-address" }), bind("module.address"));
|
|
28328
|
+
const contact = stack({
|
|
28329
|
+
gap: "sm",
|
|
28330
|
+
className: "rb-items-start"
|
|
28331
|
+
}, [link({
|
|
28332
|
+
href: { $bind: { from: "contactLink.href" } },
|
|
28333
|
+
className: "rb-nav-text rb-break-words transition-theme-standard"
|
|
28334
|
+
}, [text({ as: "span" }, bind("contactLink.label"))], repeat("module.contactLinks", "contactLink"))], when("module.kind", { equals: "contact" }));
|
|
28335
|
+
const hours = stack({
|
|
28336
|
+
gap: "sm",
|
|
28337
|
+
className: "rb-w-full"
|
|
28338
|
+
}, [inline({ className: "rb-flex rb-w-full rb-justify-between rb-gap-4" }, [text({
|
|
28339
|
+
as: "span",
|
|
28340
|
+
className: "rb-label"
|
|
28341
|
+
}, bind("hoursDay.weekday")), text({
|
|
28342
|
+
as: "span",
|
|
28343
|
+
className: "rb-caption rb-opacity-80"
|
|
28344
|
+
}, bind("hoursDay.hours"))], repeat("module.openingHours", "hoursDay")), text({
|
|
28345
|
+
as: "p",
|
|
28346
|
+
className: "rb-caption rb-opacity-70"
|
|
28347
|
+
}, bind("module.timeZone"), when("module.timeZone"))], when("module.kind", { equals: "opening-hours" }));
|
|
28348
|
+
const socials = inline({ className: "rb-flex rb-flex-wrap rb-gap-x-5 rb-gap-y-3" }, [link({
|
|
28349
|
+
href: { $bind: { from: "social.href" } },
|
|
28350
|
+
target: "_blank",
|
|
28351
|
+
rel: "noreferrer noopener",
|
|
28352
|
+
"aria-label": { $bind: { from: "social.label" } },
|
|
28353
|
+
className: "rb-nav-text transition-theme-standard"
|
|
28354
|
+
}, [icon({ className: "rb-h-5 rb-w-5" }, bind("social.icon"), when("social.icon")), text({ as: "span" }, bind("social.label"), when("social.icon", { equals: null }))], repeat("module.socialLinks", "social"))], when("module.kind", { equals: "social-links" }));
|
|
28355
|
+
const authoredCopy = richText({
|
|
28356
|
+
className: "rb-prose rb-prose-sm rb-max-w-none",
|
|
28357
|
+
style: textColorStyle("text/80")
|
|
28358
|
+
}, when("module.content"), bind("module.content", { transforms: [{
|
|
28359
|
+
id: "content.interpolateRichTextTokens",
|
|
28360
|
+
options: { tokens: ["year", "site_name"] }
|
|
28361
|
+
}] }));
|
|
28362
|
+
const footerGroup = stack({
|
|
28363
|
+
gap: "md",
|
|
28364
|
+
align: "stretch",
|
|
28365
|
+
className: "rb-min-w-0",
|
|
28366
|
+
"data-footer-group": { $bind: { from: "group.kind" } }
|
|
28367
|
+
}, [stack({
|
|
28368
|
+
gap: "md",
|
|
28369
|
+
align: "start",
|
|
28370
|
+
"data-preview-footer-module-id": { $bind: { from: "module.id" } }
|
|
28266
28371
|
}, [
|
|
28267
|
-
|
|
28268
|
-
|
|
28269
|
-
|
|
28270
|
-
|
|
28271
|
-
}
|
|
28272
|
-
|
|
28273
|
-
|
|
28274
|
-
|
|
28275
|
-
|
|
28276
|
-
|
|
28277
|
-
|
|
28278
|
-
|
|
28279
|
-
|
|
28280
|
-
|
|
28281
|
-
|
|
28282
|
-
|
|
28283
|
-
|
|
28284
|
-
|
|
28285
|
-
|
|
28286
|
-
|
|
28287
|
-
}
|
|
28288
|
-
|
|
28289
|
-
|
|
28290
|
-
|
|
28291
|
-
|
|
28292
|
-
|
|
28293
|
-
|
|
28294
|
-
from: "$root.theme.footer.logo",
|
|
28295
|
-
transforms: [{ id: "layout.footerLogoMediaClass" }],
|
|
28296
|
-
fallback: "rb-w-auto"
|
|
28297
|
-
} } }, when("site.logo"), bind("site.logo"))], when("content.logo", { not: true })),
|
|
28298
|
-
text({
|
|
28299
|
-
as: "strong",
|
|
28300
|
-
className: "footer-logo-text rb-nav-text"
|
|
28301
|
-
}, whenTransformed("$root.theme.footer", "layout.footerLogoTextVisible"), bind("site.title", { fallback: "Your Site" }))
|
|
28302
|
-
])]),
|
|
28303
|
-
...businessAddressLayout(),
|
|
28304
|
-
...inlineBottomTextLayout()
|
|
28305
|
-
], when("$root.theme.footer.variant", { equals: "split" }));
|
|
28306
|
-
const footerLayout = section$1({
|
|
28307
|
-
background: "background",
|
|
28372
|
+
text({
|
|
28373
|
+
as: "h2",
|
|
28374
|
+
className: "rb-label",
|
|
28375
|
+
style: textColorStyle("text/70")
|
|
28376
|
+
}, bind("module.heading"), when("module.heading")),
|
|
28377
|
+
brandLogo,
|
|
28378
|
+
navigation,
|
|
28379
|
+
stack({
|
|
28380
|
+
gap: "sm",
|
|
28381
|
+
className: "rb-w-full"
|
|
28382
|
+
}, [legalNavigation], when("module.kind", { equals: "legal-navigation" })),
|
|
28383
|
+
address,
|
|
28384
|
+
contact,
|
|
28385
|
+
hours,
|
|
28386
|
+
socials,
|
|
28387
|
+
stack({ className: "rb-w-full" }, [authoredCopy], when("module.kind", { equals: "supporting-text" })),
|
|
28388
|
+
stack({ className: "rb-w-full rb-lg-col-span-3" }, [authoredCopy], when("module.kind", { equals: "legal" }))
|
|
28389
|
+
], repeat("group.modules", "module"))], repeat("region.groups", "group"));
|
|
28390
|
+
const footerMainRegion = stack({
|
|
28391
|
+
className: { $bind: { from: "region.className" } },
|
|
28392
|
+
"data-footer-region": { $bind: { from: "region.kind" } }
|
|
28393
|
+
}, [footerGroup], when("region.kind", { equals: "main" }), repeat("content.footerRuntime.regions", "region"));
|
|
28394
|
+
const footerBottomRegion = stack({ className: { $bind: {
|
|
28395
|
+
from: "$root.theme.footer",
|
|
28396
|
+
transforms: [{ id: "layout.footerBottomBarContainerClass" }],
|
|
28397
|
+
fallback: "rb-w-full"
|
|
28398
|
+
} } }, [stack({
|
|
28308
28399
|
className: { $bind: {
|
|
28309
28400
|
from: "$root.theme.footer",
|
|
28310
|
-
transforms: [{ id: "layout.
|
|
28311
|
-
fallback: "rb-w-full rb-border-t
|
|
28401
|
+
transforms: [{ id: "layout.footerBottomBarClass" }],
|
|
28402
|
+
fallback: "rb-w-full rb-border-t rb-px-6 rb-py-6 rb-text-center"
|
|
28312
28403
|
} },
|
|
28313
28404
|
style: { $bind: {
|
|
28314
28405
|
from: "$root.theme.footer",
|
|
28315
|
-
transforms: [{ id: "layout.
|
|
28316
|
-
|
|
28317
|
-
|
|
28318
|
-
}, [
|
|
28319
|
-
simpleFooterLayout,
|
|
28320
|
-
columnsFooterLayout,
|
|
28321
|
-
splitFooterLayout,
|
|
28322
|
-
stack({
|
|
28323
|
-
className: { $bind: {
|
|
28324
|
-
from: "$root.theme.footer",
|
|
28325
|
-
transforms: [{ id: "layout.footerBottomBarClass" }],
|
|
28326
|
-
fallback: "rb-w-full rb-border-t rb-py-5"
|
|
28327
|
-
} },
|
|
28328
|
-
style: { $bind: {
|
|
28329
|
-
from: "$root.theme.footer",
|
|
28330
|
-
transforms: [{ id: "layout.footerBottomBarStyle" }]
|
|
28331
|
-
} }
|
|
28332
|
-
}, [stack({ className: { $bind: {
|
|
28333
|
-
from: "$root.theme.footer",
|
|
28334
|
-
transforms: [{ id: "layout.footerBottomBarContainerClass" }],
|
|
28335
|
-
fallback: "rb-container"
|
|
28336
|
-
} } }, [...bottomBarTextLayout()])], when("$root.theme.footer.bottomBar.enabled", { equals: true }))
|
|
28337
|
-
]);
|
|
28406
|
+
transforms: [{ id: "layout.footerBottomBarStyle" }]
|
|
28407
|
+
} },
|
|
28408
|
+
"data-footer-region": "bottom"
|
|
28409
|
+
}, [footerGroup])], when("region.kind", { equals: "bottom" }), repeat("content.footerRuntime.regions", "region"));
|
|
28338
28410
|
const siteFooterManifest = createBlockManifest({
|
|
28339
28411
|
id: "block.site-footer",
|
|
28340
28412
|
title: "Site Footer",
|
|
28341
28413
|
category: "layout",
|
|
28342
|
-
fragments: [{
|
|
28343
|
-
fragment: footerBottomTextFragment,
|
|
28344
|
-
fieldPriority: 0
|
|
28345
|
-
}],
|
|
28346
28414
|
skipSectionStyles: true,
|
|
28347
|
-
|
|
28348
|
-
|
|
28349
|
-
|
|
28350
|
-
|
|
28351
|
-
|
|
28352
|
-
|
|
28353
|
-
|
|
28354
|
-
|
|
28355
|
-
|
|
28356
|
-
|
|
28415
|
+
layout: section$1({
|
|
28416
|
+
background: "background",
|
|
28417
|
+
className: { $bind: {
|
|
28418
|
+
from: "$root.theme.footer",
|
|
28419
|
+
transforms: [{ id: "layout.footerRootClass" }],
|
|
28420
|
+
fallback: "rb-w-full rb-border-t transition-theme"
|
|
28421
|
+
} },
|
|
28422
|
+
style: { $bind: {
|
|
28423
|
+
from: "$root.theme.footer",
|
|
28424
|
+
transforms: [{ id: "layout.footerRootStyle" }],
|
|
28425
|
+
fallback: mergeStyles(backgroundColorStyle("surface"), surfaceForegroundStyle({ text: "rgb(var(--tb-text))" }), borderColorStyle("border"))
|
|
28426
|
+
} },
|
|
28427
|
+
"data-footer-membership": { $bind: { from: "content.footerRuntime.membershipKey" } }
|
|
28428
|
+
}, [footerMainRegion, footerBottomRegion]),
|
|
28429
|
+
description: "Site-wide composed footer with canonical shared details.",
|
|
28357
28430
|
styleTokens: { spacing: "md" },
|
|
28358
28431
|
paletteHidden: true
|
|
28359
28432
|
});
|
|
@@ -28832,7 +28905,7 @@ const repeatedItemsNode = repeaterFragmentLayout({
|
|
|
28832
28905
|
id: "boxStyles.all",
|
|
28833
28906
|
options: {
|
|
28834
28907
|
axis: "all",
|
|
28835
|
-
baseClass: "rb-collection-item rb-relative rb-isolate rb-overflow-
|
|
28908
|
+
baseClass: "rb-collection-item rb-relative rb-isolate rb-overflow-visible rb-border"
|
|
28836
28909
|
}
|
|
28837
28910
|
}]
|
|
28838
28911
|
},
|
|
@@ -43820,16 +43893,17 @@ const backgroundTransforms = [
|
|
|
43820
43893
|
run: (value, _options, context) => resolveSurfaceForegroundStyles(value, context)
|
|
43821
43894
|
},
|
|
43822
43895
|
{
|
|
43823
|
-
id: "background.
|
|
43896
|
+
id: "background.resolveFrameClassName",
|
|
43824
43897
|
kind: "formatter",
|
|
43825
|
-
summary: "Resolve
|
|
43826
|
-
run: (value) => {
|
|
43827
|
-
|
|
43898
|
+
summary: "Resolve clipping on a decorative background frame without clipping foreground content",
|
|
43899
|
+
run: (value, options) => {
|
|
43900
|
+
const baseClass = options?.baseClass?.trim() ?? "";
|
|
43901
|
+
if (!value || typeof value !== "object") return `${baseClass} rb-overflow-hidden`.trim();
|
|
43828
43902
|
const input = value;
|
|
43829
|
-
if (input.overflow === true) return
|
|
43903
|
+
if (input.overflow === true) return `${baseClass} rb-overflow-visible`.trim();
|
|
43830
43904
|
const objectFit = isString$1(input.objectFit) ? input.objectFit.trim() : null;
|
|
43831
43905
|
const scale = isString$1(input.scale) ? input.scale.trim() : isNumber$1(input.scale) ? String(input.scale) : null;
|
|
43832
|
-
return Boolean((objectFit === "custom" || objectFit === "original") && scale && scale.trim().length > 0);
|
|
43906
|
+
return `${baseClass} ${Boolean((objectFit === "custom" || objectFit === "original") && scale && scale.trim().length > 0) ? "rb-overflow-visible" : "rb-overflow-hidden"}`.trim();
|
|
43833
43907
|
}
|
|
43834
43908
|
},
|
|
43835
43909
|
{
|
|
@@ -44377,10 +44451,10 @@ function isRecord$17(value) {
|
|
|
44377
44451
|
}
|
|
44378
44452
|
//#endregion
|
|
44379
44453
|
//#region ../blocks/src/primitives/layout/Section.tsx
|
|
44380
|
-
const Section = forwardRef(function Section({ as: Comp = "section", children, background, className = "",
|
|
44454
|
+
const Section = forwardRef(function Section({ as: Comp = "section", children, background, className = "", style, "data-slot": dataSlot }, ref) {
|
|
44381
44455
|
return /* @__PURE__ */ jsx(Comp, {
|
|
44382
44456
|
ref,
|
|
44383
|
-
className: clsx("rb-relative rb-isolate
|
|
44457
|
+
className: clsx("rb-relative rb-isolate rb-overflow-visible", className),
|
|
44384
44458
|
style: mergeStyles(typeof background === "string" && background.trim().length > 0 ? backgroundColorStyle(background.trim()) : void 0, style),
|
|
44385
44459
|
"data-slot": dataSlot ?? "section",
|
|
44386
44460
|
children
|
|
@@ -44501,10 +44575,7 @@ function Grid({ as: Comp = "div", cols = {
|
|
|
44501
44575
|
}
|
|
44502
44576
|
//#endregion
|
|
44503
44577
|
//#region ../blocks/src/system/runtime/nodes/layout.tsx
|
|
44504
|
-
const SectionNode = ({ blockId: _blockId, blockKind: _blockKind, blockContent: _blockContent, fragmentRegistry: _fragmentRegistry, previewAuthoring: _previewAuthoring, pathBase: _pathBase,
|
|
44505
|
-
...props,
|
|
44506
|
-
allowOverflow
|
|
44507
|
-
});
|
|
44578
|
+
const SectionNode = ({ blockId: _blockId, blockKind: _blockKind, blockContent: _blockContent, fragmentRegistry: _fragmentRegistry, previewAuthoring: _previewAuthoring, pathBase: _pathBase, ...props }) => /* @__PURE__ */ jsx(Section, { ...props });
|
|
44508
44579
|
const StackNode = ({ blockId: _blockId, blockKind: _blockKind, blockContent: _blockContent, fragmentRegistry: _fragmentRegistry, previewAuthoring: _previewAuthoring, pathBase: _pathBase, ...props }) => /* @__PURE__ */ jsx(Stack, { ...props });
|
|
44509
44580
|
const InlineNode = ({ blockId: _blockId, blockKind: _blockKind, blockContent: _blockContent, fragmentRegistry: _fragmentRegistry, previewAuthoring: _previewAuthoring, pathBase: _pathBase, ...props }) => /* @__PURE__ */ jsx(Inline, { ...props });
|
|
44510
44581
|
const GridNode = ({ blockId: _blockId, blockKind: _blockKind, blockContent: _blockContent, fragmentRegistry: _fragmentRegistry, previewAuthoring: _previewAuthoring, pathBase: _pathBase, ...props }) => /* @__PURE__ */ jsx(Grid, { ...props });
|
|
@@ -44514,6 +44585,28 @@ const FigureNode = ({ blockId: _blockId, blockKind: _blockKind, blockContent: _b
|
|
|
44514
44585
|
//#region ../path-utils/src/index.ts
|
|
44515
44586
|
const PATH_SEPARATOR_REGEX$1 = /\./g;
|
|
44516
44587
|
const BRACKET_ACCESS_REGEX$1 = /\[([^\]]+)\]/g;
|
|
44588
|
+
/**
|
|
44589
|
+
* Segments that would traverse or mutate the prototype chain.
|
|
44590
|
+
*
|
|
44591
|
+
* `setAtPath` creates nested objects along the path, so allowing these
|
|
44592
|
+
* segments is a prototype-pollution vector. They are rejected everywhere a
|
|
44593
|
+
* path is parsed (string or pre-parsed array form) — fail closed.
|
|
44594
|
+
*/
|
|
44595
|
+
const UNSAFE_PATH_SEGMENTS = /* @__PURE__ */ new Set([
|
|
44596
|
+
"__proto__",
|
|
44597
|
+
"constructor",
|
|
44598
|
+
"prototype"
|
|
44599
|
+
]);
|
|
44600
|
+
var UnsafePathSegmentError = class extends Error {
|
|
44601
|
+
constructor(segment) {
|
|
44602
|
+
super(`Unsafe path segment: "${segment}"`);
|
|
44603
|
+
this.name = "UnsafePathSegmentError";
|
|
44604
|
+
this.segment = segment;
|
|
44605
|
+
}
|
|
44606
|
+
};
|
|
44607
|
+
function assertSafePathSegments(segments) {
|
|
44608
|
+
for (const segment of segments) if (typeof segment === "string" && UNSAFE_PATH_SEGMENTS.has(segment)) throw new UnsafePathSegmentError(segment);
|
|
44609
|
+
}
|
|
44517
44610
|
function isRecord$16(value) {
|
|
44518
44611
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
44519
44612
|
}
|
|
@@ -44525,7 +44618,10 @@ function getContainerValue(container, segment) {
|
|
|
44525
44618
|
if (segment in container) return Reflect.get(container, segment);
|
|
44526
44619
|
}
|
|
44527
44620
|
function parsePath(path) {
|
|
44528
|
-
if (Array.isArray(path))
|
|
44621
|
+
if (Array.isArray(path)) {
|
|
44622
|
+
assertSafePathSegments(path);
|
|
44623
|
+
return path;
|
|
44624
|
+
}
|
|
44529
44625
|
const segments = [];
|
|
44530
44626
|
const parts = path.split(PATH_SEPARATOR_REGEX$1);
|
|
44531
44627
|
for (const raw of parts) {
|
|
@@ -44545,6 +44641,7 @@ function parsePath(path) {
|
|
|
44545
44641
|
}
|
|
44546
44642
|
if (baseMatch === null && !raw.includes("[")) segments.push(raw);
|
|
44547
44643
|
}
|
|
44644
|
+
assertSafePathSegments(segments);
|
|
44548
44645
|
return segments;
|
|
44549
44646
|
}
|
|
44550
44647
|
function getAtPath(source, path) {
|
|
@@ -44786,6 +44883,58 @@ function getCtaIconComponent(name) {
|
|
|
44786
44883
|
return CTA_ICON_COMPONENTS[name] ?? null;
|
|
44787
44884
|
}
|
|
44788
44885
|
//#endregion
|
|
44886
|
+
//#region ../blocks/src/system/icons/social.tsx
|
|
44887
|
+
const SOCIAL_ICON_NAMES = [
|
|
44888
|
+
"SocialFacebook",
|
|
44889
|
+
"SocialInstagram",
|
|
44890
|
+
"SocialLinkedIn",
|
|
44891
|
+
"SocialTikTok",
|
|
44892
|
+
"SocialX",
|
|
44893
|
+
"SocialYouTube"
|
|
44894
|
+
];
|
|
44895
|
+
const socialIcons = {
|
|
44896
|
+
SocialFacebook: createIcon("SocialFacebookIcon", /* @__PURE__ */ jsx("path", { d: "M14 8h3V4h-3c-3 0-5 2-5 5v3H6v4h3v6h4v-6h3l1-4h-4V9c0-.7.3-1 1-1Z" })),
|
|
44897
|
+
SocialInstagram: createIcon("SocialInstagramIcon", /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
44898
|
+
/* @__PURE__ */ jsx("rect", {
|
|
44899
|
+
x: "3",
|
|
44900
|
+
y: "3",
|
|
44901
|
+
width: "18",
|
|
44902
|
+
height: "18",
|
|
44903
|
+
rx: "5"
|
|
44904
|
+
}),
|
|
44905
|
+
/* @__PURE__ */ jsx("circle", {
|
|
44906
|
+
cx: "12",
|
|
44907
|
+
cy: "12",
|
|
44908
|
+
r: "4"
|
|
44909
|
+
}),
|
|
44910
|
+
/* @__PURE__ */ jsx("circle", {
|
|
44911
|
+
cx: "17.5",
|
|
44912
|
+
cy: "6.5",
|
|
44913
|
+
r: ".75",
|
|
44914
|
+
fill: "currentColor",
|
|
44915
|
+
stroke: "none"
|
|
44916
|
+
})
|
|
44917
|
+
] })),
|
|
44918
|
+
SocialLinkedIn: createIcon("SocialLinkedInIcon", /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
44919
|
+
/* @__PURE__ */ jsx("path", { d: "M6 9v10" }),
|
|
44920
|
+
/* @__PURE__ */ jsx("path", {
|
|
44921
|
+
d: "M6 5.5v.01",
|
|
44922
|
+
strokeWidth: "3"
|
|
44923
|
+
}),
|
|
44924
|
+
/* @__PURE__ */ jsx("path", { d: "M10.5 19v-6a4 4 0 0 1 8 0v6" }),
|
|
44925
|
+
/* @__PURE__ */ jsx("path", { d: "M10.5 9v10" })
|
|
44926
|
+
] })),
|
|
44927
|
+
SocialTikTok: createIcon("SocialTikTokIcon", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "M14 4v11.5a4.5 4.5 0 1 1-4-4.47" }), /* @__PURE__ */ jsx("path", { d: "M14 4c.7 3 2.4 4.5 5 4.5" })] })),
|
|
44928
|
+
SocialX: createIcon("SocialXIcon", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "m5 4 14 16" }), /* @__PURE__ */ jsx("path", { d: "M19 4 5 20" })] })),
|
|
44929
|
+
SocialYouTube: createIcon("SocialYouTubeIcon", /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("path", { d: "M21 12c0 3.5-.5 5.5-1.3 6.3S16.5 19.5 12 19.5s-6.9-.4-7.7-1.2S3 15.5 3 12s.5-5.5 1.3-6.3S7.5 4.5 12 4.5s6.9.4 7.7 1.2S21 8.5 21 12Z" }), /* @__PURE__ */ jsx("path", { d: "m10 9 5 3-5 3Z" })] }))
|
|
44930
|
+
};
|
|
44931
|
+
function isSocialIconName(value) {
|
|
44932
|
+
return typeof value === "string" && SOCIAL_ICON_NAMES.includes(value);
|
|
44933
|
+
}
|
|
44934
|
+
function getSocialIconComponent(value) {
|
|
44935
|
+
return isSocialIconName(value) ? socialIcons[value] : null;
|
|
44936
|
+
}
|
|
44937
|
+
//#endregion
|
|
44789
44938
|
//#region ../blocks/src/system/icons/registry.ts
|
|
44790
44939
|
function buildSearchText(parts) {
|
|
44791
44940
|
return parts.map((part) => part.trim()).filter(Boolean).join(" ");
|
|
@@ -44815,7 +44964,7 @@ function semanticOptionsForPreset(preset) {
|
|
|
44815
44964
|
}
|
|
44816
44965
|
semanticOptionsForPreset("feature");
|
|
44817
44966
|
function getIconComponent(name) {
|
|
44818
|
-
return getCtaIconComponent(name) ?? getSemanticIconComponent(name);
|
|
44967
|
+
return getCtaIconComponent(name) ?? getSemanticIconComponent(name) ?? getSocialIconComponent(name);
|
|
44819
44968
|
}
|
|
44820
44969
|
//#endregion
|
|
44821
44970
|
//#region ../blocks/src/system/runtime/nodes/buttonAffordance.ts
|
|
@@ -45607,7 +45756,6 @@ const HeaderSectionNode = ({ blockId, children, className, "data-preview-site-ch
|
|
|
45607
45756
|
const asProp = rest.as;
|
|
45608
45757
|
const styleProp = rest.style;
|
|
45609
45758
|
const backgroundProp = typeof rest.background === "string" ? rest.background : void 0;
|
|
45610
|
-
const allowOverflowProp = typeof rest.allowOverflow === "boolean" ? rest.allowOverflow : void 0;
|
|
45611
45759
|
const dataSlotProp = typeof rest["data-slot"] === "string" ? rest["data-slot"] : void 0;
|
|
45612
45760
|
return /* @__PURE__ */ jsxs("nav", {
|
|
45613
45761
|
...getIslandRootProps("headerSection", blockId),
|
|
@@ -45622,7 +45770,6 @@ const HeaderSectionNode = ({ blockId, children, className, "data-preview-site-ch
|
|
|
45622
45770
|
as: asProp,
|
|
45623
45771
|
style: styleProp,
|
|
45624
45772
|
background: backgroundProp ?? "background",
|
|
45625
|
-
allowOverflow: allowOverflowProp,
|
|
45626
45773
|
"data-slot": dataSlotProp,
|
|
45627
45774
|
className: sectionClasses || void 0,
|
|
45628
45775
|
children
|
|
@@ -50342,7 +50489,7 @@ function resolveGroupFrame(cardStyles) {
|
|
|
50342
50489
|
contentClassName: "offerings-preview-card-content rb-flex rb-h-full rb-min-h-full rb-flex-col rb-gap-5"
|
|
50343
50490
|
};
|
|
50344
50491
|
return {
|
|
50345
|
-
containerClassName: ["offerings-preview-card offerings-preview-card--framed rb-relative rb-isolate rb-h-full rb-min-h-full rb-overflow-
|
|
50492
|
+
containerClassName: ["offerings-preview-card offerings-preview-card--framed rb-relative rb-isolate rb-h-full rb-min-h-full rb-overflow-visible rb-bg-surface rb-border rb-border-border", resolveGroupFrameClasses(cardStyles)].filter(Boolean).join(" "),
|
|
50346
50493
|
containerStyle: resolveGroupFrameStyle(cardStyles),
|
|
50347
50494
|
contentClassName: "card-content offerings-preview-card-content rb-flex rb-h-full rb-min-h-full rb-flex-col rb-gap-5"
|
|
50348
50495
|
};
|
|
@@ -53375,9 +53522,9 @@ function isReactNode(value) {
|
|
|
53375
53522
|
* Handles conditionals ($when), scopes ($scopes), repeaters ($repeat), bindings ($bind), and children.
|
|
53376
53523
|
*/
|
|
53377
53524
|
function resolveNode(node, context, indexFallback) {
|
|
53378
|
-
if (!shouldRenderNode(node, context)) return null;
|
|
53379
53525
|
const scopeContext = applyScopes(node, context);
|
|
53380
53526
|
if (node.$repeat) return resolveRepeater(node, scopeContext);
|
|
53527
|
+
if (!shouldRenderNode(node, scopeContext)) return null;
|
|
53381
53528
|
const registry = scopeContext.registry ?? serverComponentRegistry;
|
|
53382
53529
|
const normalizedType = node.type.toLowerCase();
|
|
53383
53530
|
const component = registry[node.type] ?? registry[normalizedType] ?? (normalizedType === "section" ? SectionNode : void 0);
|
|
@@ -54835,6 +54982,19 @@ const NAV_DROPDOWN_CONTAINER_RAIL_CSS_RULES = [
|
|
|
54835
54982
|
//#region ../theme-core/src/header/generateHeaderCss.ts
|
|
54836
54983
|
const HEADER_BLUR = "blur(12px)";
|
|
54837
54984
|
const FLOATING_BLUR = "blur(16px)";
|
|
54985
|
+
const INSET_SHELL_MARKER_CLASS = "header-bar-frame-inset-shell";
|
|
54986
|
+
const INSET_SHELL_EDGE = "1rem";
|
|
54987
|
+
const INSET_SHELL_INSET_BLOCK = "0.875rem";
|
|
54988
|
+
const INSET_SHELL_RADIUS = "9999px";
|
|
54989
|
+
const INSET_SHELL_CONTAINER_MAX = "80rem";
|
|
54990
|
+
const INSET_SHELL_INTERIOR_PADDING_X = "1.75rem";
|
|
54991
|
+
/**
|
|
54992
|
+
* Whether the classic header should render as an inset "brand capsule" shell.
|
|
54993
|
+
* The facet is only meaningful for the classic layout; other variants ignore it.
|
|
54994
|
+
*/
|
|
54995
|
+
function usesInsetShell(header) {
|
|
54996
|
+
return header.barFrame === "inset-shell" && header.variant === "classic";
|
|
54997
|
+
}
|
|
54838
54998
|
/**
|
|
54839
54999
|
* Generate complete CSS for header system from theme config
|
|
54840
55000
|
*
|
|
@@ -54934,7 +55094,36 @@ function generateHeaderRootStyles(header, themeId, tokens, _theme) {
|
|
|
54934
55094
|
const baseBlock = `\n${selector} {\n ${rules.join("\n ")}\n}\n`;
|
|
54935
55095
|
const overlayFix = `\n${`${selector}:has([data-nav-mobile-overlay][aria-hidden="false"])`} {\n backdrop-filter: none !important;\n -webkit-backdrop-filter: none !important;\n}\n`;
|
|
54936
55096
|
if (isContainedNav || backgroundRules.length === 0) return `${baseBlock}\n${overlayFix}`;
|
|
54937
|
-
return `${baseBlock}\n${`\n${backgroundSelector} {\n content: \"\";\n position: absolute;\n inset: 0;\n pointer-events: none;\n border-radius: inherit;\n z-index: -1;\n ${backgroundRules.join("\n ")}\n}\n`}\n${overlayFix}`;
|
|
55097
|
+
return `${baseBlock}\n${`\n${backgroundSelector} {\n content: \"\";\n position: absolute;\n inset: 0;\n pointer-events: none;\n border-radius: inherit;\n z-index: -1;\n ${backgroundRules.join("\n ")}\n}\n`}\n${overlayFix}${usesInsetShell(header) ? generateInsetShellStyles(header, themeId) : ""}`;
|
|
55098
|
+
}
|
|
55099
|
+
/**
|
|
55100
|
+
* Reshapes the full-bleed header paint layer into a contained brand capsule at
|
|
55101
|
+
* the desktop breakpoint. The capsule is centred, capped to the page container
|
|
55102
|
+
* width, inset from the top, fully rounded, and carries the header depth so it
|
|
55103
|
+
* reads as a floating pill. Root border/shadow are neutralised on desktop so a
|
|
55104
|
+
* bordered style does not leave a full-width hairline around the capsule. Sticky
|
|
55105
|
+
* positioning is unaffected — the root stays full width and sticky while the
|
|
55106
|
+
* ::before paint provides the capsule.
|
|
55107
|
+
*/
|
|
55108
|
+
function generateInsetShellStyles(header, themeId) {
|
|
55109
|
+
const scope = `:where([data-theme-scope="${themeId}"])`;
|
|
55110
|
+
const shellRootSelector = `${scope} .header-root.${INSET_SHELL_MARKER_CLASS}`;
|
|
55111
|
+
const shellBeforeSelector = `${scope} .header-root.${INSET_SHELL_MARKER_CLASS}::before`;
|
|
55112
|
+
const layoutSelector = `${scope} .header-root.${INSET_SHELL_MARKER_CLASS} .rb-header-layout`;
|
|
55113
|
+
const widthValue = header.maxWidth === "full" ? `calc(100% - (${INSET_SHELL_EDGE} * 2))` : `min(${INSET_SHELL_CONTAINER_MAX}, calc(100% - (${INSET_SHELL_EDGE} * 2)))`;
|
|
55114
|
+
const shadowVar = getComponentShadowVar(header.shadow?.elevation ?? "none");
|
|
55115
|
+
const rootRules = ["border: none;", "box-shadow: none;"];
|
|
55116
|
+
const beforeRules = [
|
|
55117
|
+
`inset: ${INSET_SHELL_INSET_BLOCK} auto;`,
|
|
55118
|
+
"left: 50%;",
|
|
55119
|
+
"right: auto;",
|
|
55120
|
+
"transform: translateX(-50%);",
|
|
55121
|
+
`width: ${widthValue};`,
|
|
55122
|
+
`border-radius: ${INSET_SHELL_RADIUS};`,
|
|
55123
|
+
...shadowVar ? [`box-shadow: ${shadowVar};`] : []
|
|
55124
|
+
];
|
|
55125
|
+
const layoutRules = [`padding-inline: ${INSET_SHELL_INTERIOR_PADDING_X};`];
|
|
55126
|
+
return `\n@media ${MQ_MD_UP} {\n${shellRootSelector} {\n ${rootRules.join("\n ")}\n}\n${shellBeforeSelector} {\n ${beforeRules.join("\n ")}\n}\n${layoutSelector} {\n ${layoutRules.join("\n ")}\n}\n}\n`;
|
|
54938
55127
|
}
|
|
54939
55128
|
/**
|
|
54940
55129
|
* Generate logo typography styles
|
|
@@ -55012,7 +55201,7 @@ function generateLogoTextBehaviorStyles(logoText, themeId) {
|
|
|
55012
55201
|
*/
|
|
55013
55202
|
function generateNavLinkStyles(header, themeId, tokens, theme, contrastTreatment, navTextSize) {
|
|
55014
55203
|
const navPreferences = {
|
|
55015
|
-
typography: header.navTypography ?? "inherit",
|
|
55204
|
+
typography: header.navFontRole ?? header.navTypography ?? "inherit",
|
|
55016
55205
|
fontSize: readHeaderNavFontSizePreference(header.navTextSize)
|
|
55017
55206
|
};
|
|
55018
55207
|
if (header.navLinkStyle) return generateNavLinkCSS({
|
|
@@ -59325,6 +59514,12 @@ const containerResponsiveThemeCss = `/*
|
|
|
59325
59514
|
.rb-lg-hidden {
|
|
59326
59515
|
display: none;
|
|
59327
59516
|
}
|
|
59517
|
+
.rb-lg-flex-row {
|
|
59518
|
+
flex-direction: row;
|
|
59519
|
+
}
|
|
59520
|
+
.rb-lg-items-center {
|
|
59521
|
+
align-items: center;
|
|
59522
|
+
}
|
|
59328
59523
|
}
|
|
59329
59524
|
|
|
59330
59525
|
}
|
|
@@ -70761,7 +70956,7 @@ const containerResponsiveThemeCss = `/*
|
|
|
70761
70956
|
[data-block="feature-cards"][data-block-composition="asymmetric-emphasis"]
|
|
70762
70957
|
.rb-feature-card {
|
|
70763
70958
|
height: auto;
|
|
70764
|
-
overflow:
|
|
70959
|
+
overflow: visible;
|
|
70765
70960
|
border: 0;
|
|
70766
70961
|
border-radius: 0;
|
|
70767
70962
|
background: transparent;
|
|
@@ -71380,8 +71575,6 @@ function ThemeScope$1({ theme, children, themeId = "theme-default", responsiveMo
|
|
|
71380
71575
|
children
|
|
71381
71576
|
});
|
|
71382
71577
|
}
|
|
71383
|
-
//#endregion
|
|
71384
|
-
//#region ../theme-core/src/footer/mode.ts
|
|
71385
71578
|
/**
|
|
71386
71579
|
* Resolve what to render for the footer given the current mode and whether the
|
|
71387
71580
|
* site is SDK-managed.
|
|
@@ -71880,19 +72073,9 @@ function getPrimaryNavigation(navigation) {
|
|
|
71880
72073
|
return a.id.localeCompare(b.id);
|
|
71881
72074
|
})[0] ?? null;
|
|
71882
72075
|
}
|
|
71883
|
-
|
|
71884
|
-
* Get the footer navigation menu object.
|
|
71885
|
-
* Returns menu marked as isFooter, or null if none marked.
|
|
71886
|
-
*
|
|
71887
|
-
* @example
|
|
71888
|
-
* ```ts
|
|
71889
|
-
* const menu = getFooterNavigation(siteData.navigation);
|
|
71890
|
-
* console.log(menu?.name); // "Footer menu"
|
|
71891
|
-
* ```
|
|
71892
|
-
*/
|
|
71893
|
-
function getFooterNavigation(navigation) {
|
|
72076
|
+
function getFooterNavigationByRole(navigation, role) {
|
|
71894
72077
|
if (!navigation || navigation.length === 0) return null;
|
|
71895
|
-
const footerMenus = navigation.filter((menu) => menu.isFooter);
|
|
72078
|
+
const footerMenus = navigation.filter((menu) => menu.footerRole === role || role === "main" && menu.footerRole == null && menu.isFooter);
|
|
71896
72079
|
if (footerMenus.length > 1) console.warn(`[riverbank/sdk] Multiple footer navigation menus detected (${footerMenus.length}); using first flagged menu by input order.`);
|
|
71897
72080
|
return footerMenus[0] ?? null;
|
|
71898
72081
|
}
|
|
@@ -72105,7 +72288,10 @@ function buildMenu(navigation, routes, options) {
|
|
|
72105
72288
|
* ```
|
|
72106
72289
|
*/
|
|
72107
72290
|
function buildFooterMenu(navigation, routes, options) {
|
|
72108
|
-
|
|
72291
|
+
return buildFooterMenuForRole(navigation, routes, "main", options);
|
|
72292
|
+
}
|
|
72293
|
+
function buildFooterMenuForRole(navigation, routes, role, options) {
|
|
72294
|
+
const menu = getFooterNavigationByRole(navigation, role);
|
|
72109
72295
|
if (!menu) return {
|
|
72110
72296
|
items: [],
|
|
72111
72297
|
ctaItem: null,
|
|
@@ -72272,6 +72458,7 @@ async function Layout({ siteData: providedSiteData, client, siteId, slug, domain
|
|
|
72272
72458
|
};
|
|
72273
72459
|
const menuViewModel = buildMenu(navigation, routes, navigationOptions);
|
|
72274
72460
|
const footerMenuViewModel = buildFooterMenu(navigation, routes, navigationOptions);
|
|
72461
|
+
const legalFooterMenuViewModel = buildFooterMenuForRole(navigation, routes, "legal-policy", navigationOptions);
|
|
72275
72462
|
const logoViewModel = buildLogo(layout.logo ?? null, site.title);
|
|
72276
72463
|
const headerData = {
|
|
72277
72464
|
menu: menuViewModel,
|
|
@@ -72283,6 +72470,7 @@ async function Layout({ siteData: providedSiteData, client, siteId, slug, domain
|
|
|
72283
72470
|
const footerData = {
|
|
72284
72471
|
menu: menuViewModel,
|
|
72285
72472
|
footerMenu: footerMenuViewModel,
|
|
72473
|
+
legalFooterMenu: legalFooterMenuViewModel,
|
|
72286
72474
|
logo: logoViewModel,
|
|
72287
72475
|
site,
|
|
72288
72476
|
theme,
|
|
@@ -72318,6 +72506,7 @@ async function Layout({ siteData: providedSiteData, client, siteId, slug, domain
|
|
|
72318
72506
|
site,
|
|
72319
72507
|
menu: menuViewModel,
|
|
72320
72508
|
footerMenu: footerMenuViewModel,
|
|
72509
|
+
legalFooterMenu: legalFooterMenuViewModel,
|
|
72321
72510
|
content: { logo: logoViewModel }
|
|
72322
72511
|
};
|
|
72323
72512
|
let headerElement = null;
|
|
@@ -72848,6 +73037,7 @@ const TAG_TEMPLATES = {
|
|
|
72848
73037
|
siteRouteOutcomes: "riverbank:site:{siteId}:route-outcomes",
|
|
72849
73038
|
routeById: "riverbank:route:{routeId}",
|
|
72850
73039
|
pageById: "riverbank:page:{pageId}",
|
|
73040
|
+
pageSurfaceById: "riverbank:page-surface:{pageSurfaceId}",
|
|
72851
73041
|
workflowRunById: "riverbank:workflow-run:{runId}",
|
|
72852
73042
|
siteForms: "riverbank:site:{siteId}:forms",
|
|
72853
73043
|
formById: "riverbank:form:{formId}",
|
|
@@ -72871,7 +73061,7 @@ const TAG_TEMPLATES = {
|
|
|
72871
73061
|
blockedDemoMutationPolicy("blocked-hidden", "This action is not available in demo sites.");
|
|
72872
73062
|
blockedDemoMutationPolicy("blocked-disabled", "This setting is disabled in demo sites.");
|
|
72873
73063
|
blockedDemoMutationPolicy("internal-only", "This internal operation is not available in demo sites.");
|
|
72874
|
-
TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteBookingSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteBookingSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.routeById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteById, TAG_TEMPLATES.siteBySlug, TAG_TEMPLATES.siteByDomain, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteById, TAG_TEMPLATES.siteBySlug, TAG_TEMPLATES.siteByDomain, TAG_TEMPLATES.workflowRunById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.routeById, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.navigationItemById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.navigationItemById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRedirects, TAG_TEMPLATES.siteRouteOutcomes, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRedirects, TAG_TEMPLATES.siteRouteOutcomes, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.formById, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEventFilters, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicTeamMembers, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicPasses, TAG_TEMPLATES.publicMemberships, TAG_TEMPLATES.publicProducts, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicShop, TAG_TEMPLATES.publicCheckout, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents;
|
|
73064
|
+
TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteBookingSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteBookingSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteEmailSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.site, TAG_TEMPLATES.siteNewsletter, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.routeById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteById, TAG_TEMPLATES.siteBySlug, TAG_TEMPLATES.siteByDomain, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteById, TAG_TEMPLATES.siteBySlug, TAG_TEMPLATES.siteByDomain, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.workflowRunById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.routeById, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.site, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.site, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.navigationItemById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.navigationItemById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteNavigation, TAG_TEMPLATES.navigationMenuById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteSettings, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.siteTheme, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteCollection, TAG_TEMPLATES.pageSurfaceById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.pageById, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRedirects, TAG_TEMPLATES.siteRouteOutcomes, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteRedirects, TAG_TEMPLATES.siteRouteOutcomes, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.formSubmissionsBySlug, TAG_TEMPLATES.formById, TAG_TEMPLATES.siteForms, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEventFilters, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicTeamMembers, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicCourses, TAG_TEMPLATES.publicPasses, TAG_TEMPLATES.publicMemberships, TAG_TEMPLATES.publicProducts, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicGifting, TAG_TEMPLATES.publicShop, TAG_TEMPLATES.publicCheckout, TAG_TEMPLATES.siteRoutableContent, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents, TAG_TEMPLATES.publicEvents;
|
|
72875
73065
|
z$1.object({
|
|
72876
73066
|
formulaVersion: z$1.literal("managed-domain-overage-v1"),
|
|
72877
73067
|
conversionRule: z$1.literal("usd-to-gbp-1-to-1-v1"),
|