@riverbankcms/sdk 0.125.0 → 0.127.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/README.md +3 -1
- package/dist/{PreviewEditorSidebar-BezDOtQ7.mjs → PreviewEditorSidebar-BXtfF7tp.mjs} +122 -301
- package/dist/{PreviewEditorUI-CgSqmfo2.mjs → PreviewEditorUI-Dou73Q0K.mjs} +3 -3
- package/dist/{PreviewQueryProvider-BH-3-jSj.mjs → PreviewQueryProvider-DgFDIwvK.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-Co3AHfj0.mjs → SdkPreviewModeRuntime-B0HPXr-l.mjs} +141 -63
- package/dist/{SiteChromeCustomizeContext-BHF-KANn.mjs → SiteChromeCustomizeContext-DZiDBAYu.mjs} +5330 -5841
- package/dist/_dts/ai/src/contracts/proposals.d.ts +1552 -202
- package/dist/_dts/api/src/common/envelope.d.ts +1 -1
- package/dist/_dts/api/src/contentRuntime.d.ts +1 -7
- package/dist/_dts/api/src/endpoints.d.ts +0 -7
- package/dist/_dts/api/src/sdk-event-upsert.d.ts +42 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +11 -9
- package/dist/_dts/api/src/siteOperations.d.ts +18 -1
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +1 -14
- package/dist/_dts/block-form/src/backend/store-backend.d.ts +2 -1
- package/dist/_dts/block-form/src/blockDraftSaveability.d.ts +1 -0
- package/dist/_dts/blocks/src/index.d.ts +3 -2
- package/dist/_dts/blocks/src/lib/media.d.ts +267 -0
- package/dist/_dts/blocks/src/system/constants/buttonRoles.d.ts +0 -13
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationStripeReturn.d.ts +15 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +4 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/mergeResolveImageUrlContexts.d.ts +7 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +2 -2
- package/dist/_dts/content-editor/src/ui/blockValidationManifestRegistry.d.ts +17 -0
- package/dist/_dts/content-editor/src/ui/blockValidationView.d.ts +1 -1
- package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +4 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +322 -171
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +4 -0
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockValidationManifests.d.ts +26 -0
- package/dist/_dts/editor-blocks/src/widgets/rich-text/imageInsert.d.ts +3 -3
- package/dist/_dts/media-editor/src/MediaEditor.d.ts +2 -2
- package/dist/_dts/media-editor/src/context.d.ts +1 -2
- package/dist/_dts/media-editor/src/index.d.ts +3 -1
- package/dist/_dts/media-editor/src/mediaSelection.d.ts +32 -0
- package/dist/_dts/media-editor/src/types.d.ts +3 -1
- package/dist/_dts/media-editor/src/useMediaSelection.d.ts +26 -0
- package/dist/_dts/preview-next/src/client/index.d.ts +2 -0
- package/dist/_dts/preview-next/src/client/preview/HeaderMenuControls.d.ts +12 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +1 -2
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +13 -3
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +7 -2
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +6 -60
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +3 -13
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +8 -100
- package/dist/_dts/preview-next/src/client/preview/headerInteractionPaletteSurfaceState.d.ts +8 -0
- package/dist/_dts/preview-next/src/client/preview/previewThemeRoles.d.ts +15 -0
- package/dist/_dts/preview-next/src/client/preview/siteChromeCustomizeTypes.d.ts +54 -0
- package/dist/_dts/preview-next/src/client/preview/siteChromeLookRows.d.ts +13 -3
- package/dist/_dts/preview-next/src/client/preview/siteChromeNavQuickControlHistory.d.ts +3 -0
- package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +6 -3
- package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +1 -4
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorApplyPayload.d.ts +1 -15
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +11 -21
- package/dist/_dts/sdk/src/cli/commands/event.d.ts +2 -2
- package/dist/_dts/sdk/src/cli/commands/eventOccurrenceSchedule.d.ts +12 -0
- package/dist/_dts/sdk/src/cli/commands/push/pushAllExtras.d.ts +6 -0
- package/dist/_dts/sdk/src/cli/commands/style.d.ts +1 -1
- package/dist/_dts/sdk/src/cli/content/legacyEventScheduleShapeError.d.ts +5 -0
- package/dist/_dts/sdk/src/cli/content/localEventSchedule.d.ts +17 -0
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +5 -10
- package/dist/_dts/sdk/src/cli/migrations/events.d.ts +1 -1
- package/dist/_dts/sdk/src/cli/site-commands/eventScheduleCompiler.d.ts +24 -0
- package/dist/_dts/sdk/src/client/management/http.d.ts +1 -1
- package/dist/_dts/sdk/src/client/management/types.d.ts +3 -28
- package/dist/_dts/sdk/src/config/index.d.ts +1 -1
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +5 -20
- package/dist/_dts/sdk/src/rendering/index.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +2 -2
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/site-commands/src/commandContract.d.ts +33 -5
- package/dist/_dts/site-commands/src/commandDomain.d.ts +2 -2
- package/dist/_dts/site-commands/src/commands.d.ts +38 -9
- package/dist/_dts/site-commands/src/siteStyleCommandSchema.d.ts +28 -1
- package/dist/_dts/site-commands/src/siteStyleSelectionSchemaBuilder.d.ts +4 -4
- package/dist/_dts/theme-core/src/buttons/effects/presets/background.d.ts +1 -1
- package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +0 -18
- package/dist/_dts/theme-core/src/buttons/types.d.ts +1 -3
- package/dist/_dts/theme-core/src/header/containerSchema.d.ts +20 -0
- package/dist/_dts/theme-core/src/header/generateHeaderCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/header/interactionPalette.d.ts +14 -0
- package/dist/_dts/theme-core/src/header/legacyNavLinkStyle.d.ts +3 -0
- package/dist/_dts/theme-core/src/header/paintTargets.d.ts +25 -0
- package/dist/_dts/theme-core/src/header/scrollTreatment.d.ts +11 -0
- package/dist/_dts/theme-core/src/header/surfaceRules.d.ts +9 -0
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +15 -0
- package/dist/_dts/theme-core/src/palette/colors.d.ts +1 -1
- package/dist/_dts/theme-core/src/palette/concretePalette.d.ts +20 -0
- package/dist/_dts/theme-core/src/palette/curated/index.d.ts +2 -17
- package/dist/_dts/theme-core/src/palette/index.d.ts +1 -6
- package/dist/_dts/theme-core/src/palette/schema.d.ts +39 -0
- package/dist/_dts/theme-core/src/schema.d.ts +105 -45
- package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +3 -51
- package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +4 -11
- package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +3 -51
- package/dist/_dts/theme-core/src/site-styles/headerInteractionPalette.d.ts +32 -0
- package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +19 -106
- package/dist/_dts/theme-core/src/site-styles/headerOpeningForeground.d.ts +22 -0
- package/dist/_dts/theme-core/src/site-styles/headerOpeningSection.d.ts +2 -0
- package/dist/_dts/theme-core/src/site-styles/headerStyleParts.d.ts +4 -0
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +3 -0
- package/dist/_dts/theme-core/src/site-styles/lookOptionGroups.d.ts +24 -0
- package/dist/_dts/theme-core/src/site-styles/lookResolution.d.ts +1 -2
- package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +4 -22
- package/dist/_dts/theme-core/src/site-styles/pageDesignEditorOptions.d.ts +21 -0
- package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +5 -7
- package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +5 -6
- package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +4 -1
- package/dist/cli/index.mjs +1583 -1601
- package/dist/cli/init-docs/content/cli-reference.md +6 -3
- package/dist/cli/init-docs/content/content-management.md +24 -13
- package/dist/client/{DiscountCodeDisclosure-CyPpekBp.mjs → DiscountCodeDisclosure-BDFRp8Y7.mjs} +1 -1
- package/dist/client/{EventCombined.client-zywit-60.mjs → EventCombined.client-DJgF1_lf.mjs} +2 -2
- package/dist/client/{EventListing.client-J2nLhkKT.mjs → EventListing.client-CnWGNjOr.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-CSubXWt6.mjs → LeafletStaticMap-BISs9Bl7.mjs} +1 -1
- package/dist/client/{MagicLinkForm-DDLIfiq9.mjs → MagicLinkForm-b5E_HoG9.mjs} +1 -1
- package/dist/client/{StepIndicator-DE8EvHIp.mjs → StepIndicator-D8gVYkK-.mjs} +2 -2
- package/dist/client/{accordion-Ct5T5NiA.mjs → accordion-DFDajgDz.mjs} +1 -1
- package/dist/client/{bookingForm-DMxtLPxw.mjs → bookingForm-Bdqj9-52.mjs} +5 -6
- package/dist/client/bookings.mjs +315 -46
- package/dist/client/{carousel--FMqgvob.mjs → carousel-Cvqf-kN8.mjs} +1 -1
- package/dist/client/{cart-BKX1bWiU.mjs → cart-CuH2TJXP.mjs} +3 -3
- package/dist/client/{checkout-B_jxi4WW.mjs → checkout-CMNPpejZ.mjs} +3 -3
- package/dist/client/client.mjs +1381 -1427
- package/dist/client/{courseRegistration-DH4MlkRD.mjs → courseRegistration-DTEYWL6Z.mjs} +6 -7
- package/dist/client/{eventCalendar-BQILwAcL.mjs → eventCalendar-BW-XoxZ0.mjs} +4 -4
- package/dist/client/{eventCombined-DFFW_Vmo.mjs → eventCombined-Bpn7s0y9.mjs} +2 -2
- package/dist/client/{eventDetails-B045CTSJ.mjs → eventDetails-D2uUSTMH.mjs} +3 -3
- package/dist/client/{eventListing-BDMYNVzS.mjs → eventListing-CVr1c094.mjs} +2 -2
- package/dist/client/{eventRegistration-CQ2-BSnB.mjs → eventRegistration-Dv4AvkMw.mjs} +30 -22
- package/dist/client/{form-DJKuyZgN.mjs → form-DxdKf9fs.mjs} +1 -1
- package/dist/client/{headerSection-DeTjfiDo.mjs → headerSection-BaXI5Sro.mjs} +2 -2
- package/dist/client/hooks.mjs +851 -976
- package/dist/client/{locationMap-i2wDA8gB.mjs → locationMap-BEtW2fKz.mjs} +2 -2
- package/dist/client/{newsletterForm-DKiueauk.mjs → newsletterForm-BKKs0S4R.mjs} +1 -1
- package/dist/client/{pricing-C01J3Epx.mjs → pricing-ClkqcElA.mjs} +1 -1
- package/dist/client/{productDetail-Dfc1sZaX.mjs → productDetail-H-ru8dyy.mjs} +3 -3
- package/dist/client/{productList-BXbvXWTF.mjs → productList-Buyi5c0C.mjs} +3 -3
- package/dist/client/{propsDecoder-CIR5DQ1l.mjs → propsDecoder-BF7i6Ijg.mjs} +293 -65
- package/dist/client/rendering/client.mjs +1145 -1190
- package/dist/client/rendering/islands.mjs +18 -18
- package/dist/client/rendering.mjs +1257 -1298
- package/dist/client/{useDiscountCodeUi-Bcyh4508.mjs → scrollToBlock-D_7t8yWb.mjs} +18 -2
- package/dist/client/{shop-BbNwPKM-.mjs → shop-CF7SZQNX.mjs} +5 -6
- package/dist/client/{shop-commerce-XO-XMFEt.mjs → shop-commerce-DA7_Rq5p.mjs} +4 -4
- package/dist/client/{shop-commerce-store-Byh6OUGK.mjs → shop-commerce-store-BmLqW7Gh.mjs} +1 -1
- package/dist/client/{shopShared-Bbq39mwr.mjs → shopShared-WL-E1znM.mjs} +2 -2
- package/dist/client/{useEventFilters-C8OOJ3el.mjs → useEventFilters-rc8VLeLV.mjs} +2 -2
- package/dist/client/{usePolling-CyJVo9kF.mjs → usePolling-1ncrfd4S.mjs} +2 -2
- package/dist/preview-next/before-render.mjs +0 -7
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/middleware.mjs +0 -7
- package/dist/{previewAuthStore-CJX21dGi.mjs → previewAuthStore-Dev9CdG9.mjs} +0 -7
- package/dist/{sdk-runtime-BGhyuE-E.mjs → sdk-runtime-BnrCCFJq.mjs} +2 -2
- package/dist/{separator-BFs-Kmv5.mjs → separator-CFvBx2yl.mjs} +1 -1
- package/dist/server/components.mjs +1389 -1489
- package/dist/server/config-validation.mjs +851 -976
- package/dist/server/config.mjs +851 -976
- package/dist/server/data.mjs +851 -976
- package/dist/server/index.mjs +1 -8
- package/dist/server/next.mjs +1393 -1500
- package/dist/server/page-converter.mjs +851 -976
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +1346 -1446
- package/dist/server/rendering.mjs +1390 -1490
- package/dist/server/routing.mjs +939 -1041
- package/dist/server/server.mjs +852 -984
- package/dist/server/theme-bridge.mjs +322 -279
- package/dist/server/theme.mjs +277 -33
- package/package.json +1 -1
- package/dist/_dts/editor-blocks/src/widgets/rich-text/ensureRichTextImageAssetIdentifier.d.ts +0 -8
- package/dist/_dts/theme-core/src/palette/editorState.d.ts +0 -75
- package/dist/_dts/theme-core/src/palette/libraryModel.d.ts +0 -64
- package/dist/_dts/theme-core/src/palette/persistenceReadSource.d.ts +0 -81
- package/dist/_dts/theme-core/src/palette/resolveSelection.d.ts +0 -75
- package/dist/_dts/theme-core/src/palette/selection.d.ts +0 -74
- package/dist/_dts/theme-core/src/palette/sitePalettePersistence.d.ts +0 -34
- package/dist/client/scrollToBlock-C86BYkyV.mjs +0 -17
package/dist/server/next.mjs
CHANGED
|
@@ -159,7 +159,7 @@ function defineOwnDataProperty(target, key, value) {
|
|
|
159
159
|
}
|
|
160
160
|
//#endregion
|
|
161
161
|
//#region src/data/dataLoaderContext.ts
|
|
162
|
-
function assertNever$
|
|
162
|
+
function assertNever$25(value) {
|
|
163
163
|
throw new Error(`Unhandled data loader render target: ${String(value)}`);
|
|
164
164
|
}
|
|
165
165
|
function getDataLoaderOwnerPageId(target) {
|
|
@@ -167,7 +167,7 @@ function getDataLoaderOwnerPageId(target) {
|
|
|
167
167
|
case "page": return target.pageId;
|
|
168
168
|
case "entry-template":
|
|
169
169
|
case "page-surface-template": return target.templateId;
|
|
170
|
-
default: return assertNever$
|
|
170
|
+
default: return assertNever$25(target);
|
|
171
171
|
}
|
|
172
172
|
}
|
|
173
173
|
function normalizeDataLoaderSearchParams(input) {
|
|
@@ -6764,13 +6764,6 @@ const API_ENDPOINTS$1 = {
|
|
|
6764
6764
|
auth: "user",
|
|
6765
6765
|
responseKind: "json"
|
|
6766
6766
|
},
|
|
6767
|
-
listSiteThemePalettes: {
|
|
6768
|
-
path: "/sites/{siteId}/theme/palettes",
|
|
6769
|
-
method: "GET",
|
|
6770
|
-
auth: "user",
|
|
6771
|
-
errors: [],
|
|
6772
|
-
responseKind: "json"
|
|
6773
|
-
},
|
|
6774
6767
|
createSiteFontUploadUrl: {
|
|
6775
6768
|
path: "/sites/{siteId}/fonts/upload-url",
|
|
6776
6769
|
method: "POST",
|
|
@@ -8011,7 +8004,7 @@ const parseEventOfferingId = (value) => parseUuidBrand$1(value, unsafeAsEventOff
|
|
|
8011
8004
|
const parseEventSeriesId = (value) => parseUuidBrand$1(value, unsafeAsEventSeriesId);
|
|
8012
8005
|
//#endregion
|
|
8013
8006
|
//#region ../core/src/assert-never.ts
|
|
8014
|
-
function assertNever$
|
|
8007
|
+
function assertNever$24(value, message = "Unexpected variant") {
|
|
8015
8008
|
throw new Error(`${message}: ${String(value)}`);
|
|
8016
8009
|
}
|
|
8017
8010
|
const CURRENCY_LOCALE_BY_CODE = {
|
|
@@ -8102,7 +8095,7 @@ function formatCoursePriceDisplayLabel(display, options) {
|
|
|
8102
8095
|
case "exact": return `Course (${formatCurrencyAmount(display.amount, display.currency, options)})`;
|
|
8103
8096
|
case "from": return `Course (From ${formatCurrencyAmount(display.amount, display.currency, options)})`;
|
|
8104
8097
|
case "range": return `Course (${formatCurrencyAmount(display.minAmount, display.currency, options)} - ${formatCurrencyAmount(display.maxAmount, display.currency, options)})`;
|
|
8105
|
-
default: return assertNever$
|
|
8098
|
+
default: return assertNever$24(display);
|
|
8106
8099
|
}
|
|
8107
8100
|
}
|
|
8108
8101
|
/**
|
|
@@ -8122,7 +8115,7 @@ function formatBookingPriceDisplay(display, options = {}) {
|
|
|
8122
8115
|
case "unavailable": return "Pricing unavailable";
|
|
8123
8116
|
case "external": return display.label;
|
|
8124
8117
|
case "course": return formatCoursePriceDisplayLabel(display.display, options);
|
|
8125
|
-
default: return assertNever$
|
|
8118
|
+
default: return assertNever$24(display);
|
|
8126
8119
|
}
|
|
8127
8120
|
}
|
|
8128
8121
|
/** Render an event's price directly from its pricing value. */
|
|
@@ -8625,7 +8618,7 @@ function navigationAuthoringLinkToCommandLink(link) {
|
|
|
8625
8618
|
badge: link.badge,
|
|
8626
8619
|
label: link.label
|
|
8627
8620
|
};
|
|
8628
|
-
default: return assertNever$
|
|
8621
|
+
default: return assertNever$24(link);
|
|
8629
8622
|
}
|
|
8630
8623
|
}
|
|
8631
8624
|
function portalLabelsForCommand(labels) {
|
|
@@ -8668,7 +8661,7 @@ function navigationReadLinkToLocalLink(item) {
|
|
|
8668
8661
|
badge: link.badge,
|
|
8669
8662
|
label: link.label
|
|
8670
8663
|
};
|
|
8671
|
-
default: return assertNever$
|
|
8664
|
+
default: return assertNever$24(link);
|
|
8672
8665
|
}
|
|
8673
8666
|
}
|
|
8674
8667
|
function internalNavigationLinkToLocalLink(item) {
|
|
@@ -11781,6 +11774,99 @@ function createRichTextDoc(paragraphs) {
|
|
|
11781
11774
|
} : { type: "paragraph" })
|
|
11782
11775
|
};
|
|
11783
11776
|
}
|
|
11777
|
+
const PUBLIC_DOWNLOAD_MEDIA_TYPES = [
|
|
11778
|
+
"document",
|
|
11779
|
+
"spreadsheet",
|
|
11780
|
+
"archive",
|
|
11781
|
+
"audio"
|
|
11782
|
+
];
|
|
11783
|
+
const hotspotSchema$1 = z.object({
|
|
11784
|
+
x: z.number().min(0).max(1),
|
|
11785
|
+
y: z.number().min(0).max(1),
|
|
11786
|
+
radius: z.number().optional()
|
|
11787
|
+
});
|
|
11788
|
+
const rotationSchema$1 = z.union([
|
|
11789
|
+
z.literal(0),
|
|
11790
|
+
z.literal(90),
|
|
11791
|
+
z.literal(180),
|
|
11792
|
+
z.literal(270)
|
|
11793
|
+
]);
|
|
11794
|
+
const rectSchema$1 = z.tuple([
|
|
11795
|
+
z.number(),
|
|
11796
|
+
z.number(),
|
|
11797
|
+
z.number(),
|
|
11798
|
+
z.number()
|
|
11799
|
+
]);
|
|
11800
|
+
const aspectCropSchema$1 = z.object({
|
|
11801
|
+
aspect: z.preprocess((value) => value == null ? void 0 : value, z.string().optional()),
|
|
11802
|
+
rect: z.preprocess((value) => value == null ? void 0 : value, rectSchema$1.optional()),
|
|
11803
|
+
hotspot: z.preprocess((value) => value == null ? void 0 : value, hotspotSchema$1.optional()),
|
|
11804
|
+
rotation: z.preprocess((value) => value == null ? void 0 : value, rotationSchema$1.optional())
|
|
11805
|
+
});
|
|
11806
|
+
const transformSchema$1 = z.object({
|
|
11807
|
+
aspectCrops: z.preprocess((value) => {
|
|
11808
|
+
if (!value || typeof value !== "object" || Array.isArray(value)) return;
|
|
11809
|
+
return value;
|
|
11810
|
+
}, z.record(z.string(), aspectCropSchema$1.catch({}))).optional(),
|
|
11811
|
+
rect: rectSchema$1.optional(),
|
|
11812
|
+
hotspot: hotspotSchema$1.optional(),
|
|
11813
|
+
rotation: rotationSchema$1.optional()
|
|
11814
|
+
});
|
|
11815
|
+
const mediaPosterSchema = z.discriminatedUnion("tag", [z.object({
|
|
11816
|
+
tag: z.literal("storage"),
|
|
11817
|
+
assetId: z.string().optional(),
|
|
11818
|
+
storageBucket: z.string().min(1),
|
|
11819
|
+
storagePath: z.string().min(1)
|
|
11820
|
+
}), z.object({
|
|
11821
|
+
tag: z.literal("external-src"),
|
|
11822
|
+
assetId: z.string().optional(),
|
|
11823
|
+
src: z.string().url()
|
|
11824
|
+
})]);
|
|
11825
|
+
const mediaBaseSchema = z.object({
|
|
11826
|
+
purpose: z.string().optional(),
|
|
11827
|
+
placeholder: z.boolean().default(true).optional(),
|
|
11828
|
+
assetId: z.string().optional(),
|
|
11829
|
+
identifier: z.string().optional(),
|
|
11830
|
+
src: z.string().optional(),
|
|
11831
|
+
alt: z.string().optional(),
|
|
11832
|
+
filename: z.string().optional(),
|
|
11833
|
+
mimeType: z.string().optional(),
|
|
11834
|
+
width: z.number().optional(),
|
|
11835
|
+
height: z.number().optional(),
|
|
11836
|
+
storageBucket: z.string().optional(),
|
|
11837
|
+
storagePath: z.string().optional(),
|
|
11838
|
+
poster: mediaPosterSchema.optional(),
|
|
11839
|
+
transform: transformSchema$1.optional()
|
|
11840
|
+
});
|
|
11841
|
+
/**
|
|
11842
|
+
* Canonical identifier carried by media values that are safe to persist.
|
|
11843
|
+
* Parsing trims boundary input so downstream writers cannot retain whitespace-only
|
|
11844
|
+
* identifiers or independently disagree about normalization.
|
|
11845
|
+
*/
|
|
11846
|
+
const mediaIdentifierSchema = z.string().trim().min(1).brand();
|
|
11847
|
+
const imageMediaSchema = mediaBaseSchema.extend({ type: z.literal("image") });
|
|
11848
|
+
const videoMediaSchema = mediaBaseSchema.extend({ type: z.literal("video") });
|
|
11849
|
+
const audioMediaSchema = mediaBaseSchema.extend({ type: z.literal("audio") });
|
|
11850
|
+
const documentMediaSchema = mediaBaseSchema.extend({ type: z.literal("document") });
|
|
11851
|
+
const spreadsheetMediaSchema = mediaBaseSchema.extend({ type: z.literal("spreadsheet") });
|
|
11852
|
+
const archiveMediaSchema = mediaBaseSchema.extend({ type: z.literal("archive") });
|
|
11853
|
+
const mediaSchema$1 = z.discriminatedUnion("type", [
|
|
11854
|
+
imageMediaSchema,
|
|
11855
|
+
videoMediaSchema,
|
|
11856
|
+
audioMediaSchema,
|
|
11857
|
+
documentMediaSchema,
|
|
11858
|
+
spreadsheetMediaSchema,
|
|
11859
|
+
archiveMediaSchema
|
|
11860
|
+
]);
|
|
11861
|
+
const persistableMediaBaseSchema = mediaBaseSchema.extend({ identifier: mediaIdentifierSchema });
|
|
11862
|
+
z.discriminatedUnion("type", [
|
|
11863
|
+
persistableMediaBaseSchema.extend({ type: z.literal("image") }),
|
|
11864
|
+
persistableMediaBaseSchema.extend({ type: z.literal("video") }),
|
|
11865
|
+
persistableMediaBaseSchema.extend({ type: z.literal("audio") }),
|
|
11866
|
+
persistableMediaBaseSchema.extend({ type: z.literal("document") }),
|
|
11867
|
+
persistableMediaBaseSchema.extend({ type: z.literal("spreadsheet") }),
|
|
11868
|
+
persistableMediaBaseSchema.extend({ type: z.literal("archive") })
|
|
11869
|
+
]);
|
|
11784
11870
|
//#endregion
|
|
11785
11871
|
//#region ../blocks/src/system/manifest/fieldValidation/index.ts
|
|
11786
11872
|
const TEL_RE = /^[+()0-9\s-]{3,}$/;
|
|
@@ -11789,7 +11875,7 @@ const ALLOWED_URL_PROTOCOLS = ["http:", "https:"];
|
|
|
11789
11875
|
const DATE_PATTERN = /^(?<year>[1-9]\d{3})-(?<month>\d{2})-(?<day>\d{2})$/;
|
|
11790
11876
|
const TIME_PATTERN = /^(?<hours>[01]\d|2[0-3]):(?<minutes>[0-5]\d)$/;
|
|
11791
11877
|
const DATETIME_PATTERN = /^(?<date>[1-9]\d{3}-\d{2}-\d{2})T(?<time>(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d)(?:\.\d+)?(?<offset>Z|[+-](?:[01]\d|2[0-3]):[0-5]\d)$/;
|
|
11792
|
-
function assertNever$
|
|
11878
|
+
function assertNever$16(value) {
|
|
11793
11879
|
throw new Error(`Unhandled field validation variant: ${JSON.stringify(value)}`);
|
|
11794
11880
|
}
|
|
11795
11881
|
function validationContext(options = {}) {
|
|
@@ -11842,7 +11928,7 @@ function fieldIssueToMessage(issue) {
|
|
|
11842
11928
|
case "invalidMedia": return `${issue.label} must be a media object with an identifier`;
|
|
11843
11929
|
case "invalidLink": return `${issue.label} must be a valid link`;
|
|
11844
11930
|
case "invalidReference": return `${issue.label} must reference a valid item`;
|
|
11845
|
-
default: return assertNever$
|
|
11931
|
+
default: return assertNever$16(issue);
|
|
11846
11932
|
}
|
|
11847
11933
|
}
|
|
11848
11934
|
function pluralize(label, count) {
|
|
@@ -11962,7 +12048,7 @@ function deriveFieldValidationPlan(field, path = [field.id]) {
|
|
|
11962
12048
|
case "presetOrCustom":
|
|
11963
12049
|
case "contentTypeSelect":
|
|
11964
12050
|
case "entryPicker": return makePlan("passthrough", "unknown", field, path, false, []);
|
|
11965
|
-
default: return assertNever$
|
|
12051
|
+
default: return assertNever$16(field);
|
|
11966
12052
|
}
|
|
11967
12053
|
}
|
|
11968
12054
|
function deriveFieldValidationPlans(fields, parentPath = []) {
|
|
@@ -12037,7 +12123,7 @@ function resolveSelectConstraintSource(field) {
|
|
|
12037
12123
|
kind: "runtime",
|
|
12038
12124
|
source: source.kind
|
|
12039
12125
|
};
|
|
12040
|
-
default: return assertNever$
|
|
12126
|
+
default: return assertNever$16(source);
|
|
12041
12127
|
}
|
|
12042
12128
|
}
|
|
12043
12129
|
function normalizeStoredContentValues(plans, content, options = {}) {
|
|
@@ -12056,7 +12142,7 @@ function allGroupChildPlans(plan) {
|
|
|
12056
12142
|
switch (plan.childSelection.kind) {
|
|
12057
12143
|
case "all": return plan.childSelection.fields;
|
|
12058
12144
|
case "discriminatedTabs": return plan.childSelection.tabs.flatMap((tab) => tab.fields);
|
|
12059
|
-
default: return assertNever$
|
|
12145
|
+
default: return assertNever$16(plan.childSelection);
|
|
12060
12146
|
}
|
|
12061
12147
|
}
|
|
12062
12148
|
function selectedGroupChildPlans(plan, value) {
|
|
@@ -12070,7 +12156,7 @@ function canonicalizeFieldValueForWrite(plan, value) {
|
|
|
12070
12156
|
case "media": {
|
|
12071
12157
|
if (!isPlainObject$5(value)) return value;
|
|
12072
12158
|
const canonical = { ...value };
|
|
12073
|
-
if (
|
|
12159
|
+
if (mediaIdentifierSchema.safeParse(canonical.identifier).success) deleteEnvSpecificKeys(canonical);
|
|
12074
12160
|
return canonical;
|
|
12075
12161
|
}
|
|
12076
12162
|
case "group": return canonicalizeObjectForWrite(selectedGroupChildPlans(plan, value), value);
|
|
@@ -12089,7 +12175,7 @@ function canonicalizeFieldValueForWrite(plan, value) {
|
|
|
12089
12175
|
case "link":
|
|
12090
12176
|
case "select":
|
|
12091
12177
|
case "passthrough": return value;
|
|
12092
|
-
default: return assertNever$
|
|
12178
|
+
default: return assertNever$16(plan);
|
|
12093
12179
|
}
|
|
12094
12180
|
}
|
|
12095
12181
|
function canonicalizeObjectForWrite(plans, value) {
|
|
@@ -12115,7 +12201,7 @@ function normalizeStoredFieldValueWithContext(plan, value, ctx) {
|
|
|
12115
12201
|
case "link":
|
|
12116
12202
|
case "select":
|
|
12117
12203
|
case "passthrough": return normalizeFieldValue(plan, value, ctx);
|
|
12118
|
-
default: return assertNever$
|
|
12204
|
+
default: return assertNever$16(plan);
|
|
12119
12205
|
}
|
|
12120
12206
|
}
|
|
12121
12207
|
function normalizeStoredObjectChildren(children, value, ctx) {
|
|
@@ -12152,7 +12238,7 @@ function normalizeFieldValue(plan, value, ctx) {
|
|
|
12152
12238
|
case "select":
|
|
12153
12239
|
case "passthrough": return value;
|
|
12154
12240
|
case "media": return value;
|
|
12155
|
-
default: return assertNever$
|
|
12241
|
+
default: return assertNever$16(plan);
|
|
12156
12242
|
}
|
|
12157
12243
|
}
|
|
12158
12244
|
function normalizeObjectChildren(children, value, ctx) {
|
|
@@ -12165,7 +12251,7 @@ function normalizeObjectChildren(children, value, ctx) {
|
|
|
12165
12251
|
function normalizeInlineTextFallbacks(plans, values, ctx) {
|
|
12166
12252
|
for (const plan of plans) {
|
|
12167
12253
|
if (plan.kind !== "inlineText" || !plan.plainTextFallbackPath) continue;
|
|
12168
|
-
if (!isMissingForPlan(plan, values[plan.fieldId])) continue;
|
|
12254
|
+
if (!isMissingForPlan(plan, values[plan.fieldId]) && !(ctx.allowIncomplete && !parseInlineTextFromUnknown(values[plan.fieldId]).ok)) continue;
|
|
12169
12255
|
const fallback = getAtFieldPath(values, plan.plainTextFallbackPath);
|
|
12170
12256
|
if (typeof fallback !== "string" || fallback.trim().length === 0) continue;
|
|
12171
12257
|
values[plan.fieldId] = normalizeFieldValue(plan, plainTextToInlineText(fallback), ctx);
|
|
@@ -12206,12 +12292,12 @@ function validateNormalizedFieldValue(plan, value, ctx) {
|
|
|
12206
12292
|
case "select": return validateSelectPlan(plan, value);
|
|
12207
12293
|
case "richText": return isValidRichTextDoc(value) ? [] : [issue(plan, "invalidRichText")];
|
|
12208
12294
|
case "inlineText": return validateInlineTextPlan(plan, value);
|
|
12209
|
-
case "media": return isPlainObject$5(value) &&
|
|
12295
|
+
case "media": return isPlainObject$5(value) && mediaIdentifierSchema.safeParse(value.identifier).success && (value.type === void 0 || typeof value.type === "string" && plan.allowedMediaTypes.includes(value.type)) ? [] : [issue(plan, "invalidMedia")];
|
|
12210
12296
|
case "link": return linkSchema.safeParse(value).success ? [] : [issue(plan, "invalidLink")];
|
|
12211
12297
|
case "repeater": return validateRepeaterPlan(plan, value, ctx);
|
|
12212
12298
|
case "group": return validateGroupPlan(plan, value, ctx);
|
|
12213
12299
|
case "passthrough": return [];
|
|
12214
|
-
default: return assertNever$
|
|
12300
|
+
default: return assertNever$16(plan);
|
|
12215
12301
|
}
|
|
12216
12302
|
}
|
|
12217
12303
|
function shouldRequireValue(plan, value, ctx) {
|
|
@@ -12253,7 +12339,7 @@ function validateStringConstraint(plan, constraint, value) {
|
|
|
12253
12339
|
case "timeFormat": return typeof value === "string" && isValidTimeString(value) ? [] : [issue(plan, "invalidTime")];
|
|
12254
12340
|
case "datetimeFormat": return typeof value === "string" && isValidDateTimeInstantString(value) ? [] : [issue(plan, "invalidDateTime")];
|
|
12255
12341
|
case "slugFormat": return typeof value === "string" && SLUG_PATTERN.test(value) ? [] : [issue(plan, "invalidSlug")];
|
|
12256
|
-
default: return assertNever$
|
|
12342
|
+
default: return assertNever$16(constraint);
|
|
12257
12343
|
}
|
|
12258
12344
|
}
|
|
12259
12345
|
function isValidIconPickerValue(value) {
|
|
@@ -12272,7 +12358,7 @@ function validateNumberConstraint(plan, constraint, value) {
|
|
|
12272
12358
|
case "numberType": return [];
|
|
12273
12359
|
case "numberMin": return value < constraint.minimum ? [issue(plan, "tooSmall", { minimum: constraint.minimum })] : [];
|
|
12274
12360
|
case "numberMax": return value > constraint.maximum ? [issue(plan, "tooLarge", { maximum: constraint.maximum })] : [];
|
|
12275
|
-
default: return assertNever$
|
|
12361
|
+
default: return assertNever$16(constraint);
|
|
12276
12362
|
}
|
|
12277
12363
|
}
|
|
12278
12364
|
function validateSelectPlan(plan, value) {
|
|
@@ -12294,7 +12380,7 @@ function validateRepeaterPlan(plan, value, ctx) {
|
|
|
12294
12380
|
maximum: constraint.maximum,
|
|
12295
12381
|
itemLabel: "item"
|
|
12296
12382
|
})] : [];
|
|
12297
|
-
default: return assertNever$
|
|
12383
|
+
default: return assertNever$16(constraint);
|
|
12298
12384
|
}
|
|
12299
12385
|
}), ...value.flatMap((item, index) => validateRepeaterItem(plan, item, index, ctx))];
|
|
12300
12386
|
}
|
|
@@ -12385,7 +12471,7 @@ function rebaseFieldPlanPath(plan, fromPrefix, toPrefix) {
|
|
|
12385
12471
|
...plan,
|
|
12386
12472
|
path
|
|
12387
12473
|
};
|
|
12388
|
-
default: return assertNever$
|
|
12474
|
+
default: return assertNever$16(plan);
|
|
12389
12475
|
}
|
|
12390
12476
|
}
|
|
12391
12477
|
function validateInlineTextPlan(plan, value) {
|
|
@@ -12432,7 +12518,7 @@ function fieldPlanToObjectPropertyZod(plan, options = {}) {
|
|
|
12432
12518
|
switch (presence.kind) {
|
|
12433
12519
|
case "required": return schema;
|
|
12434
12520
|
case "optional": return schema.optional();
|
|
12435
|
-
default: return assertNever$
|
|
12521
|
+
default: return assertNever$16(presence);
|
|
12436
12522
|
}
|
|
12437
12523
|
}
|
|
12438
12524
|
function addFieldIssueToZodContext(zodCtx, validationIssue, rootPath) {
|
|
@@ -12502,7 +12588,7 @@ function addFieldIssueToZodContext(zodCtx, validationIssue, rootPath) {
|
|
|
12502
12588
|
message
|
|
12503
12589
|
});
|
|
12504
12590
|
return;
|
|
12505
|
-
default: assertNever$
|
|
12591
|
+
default: assertNever$16(validationIssue);
|
|
12506
12592
|
}
|
|
12507
12593
|
}
|
|
12508
12594
|
function relativeZodIssuePath(path, rootPath) {
|
|
@@ -12533,7 +12619,7 @@ function findNestedFieldValidationPlan(plan, path) {
|
|
|
12533
12619
|
case "link":
|
|
12534
12620
|
case "select":
|
|
12535
12621
|
case "passthrough": return null;
|
|
12536
|
-
default: return assertNever$
|
|
12622
|
+
default: return assertNever$16(plan);
|
|
12537
12623
|
}
|
|
12538
12624
|
}
|
|
12539
12625
|
function sameFieldPath(left, right) {
|
|
@@ -12557,7 +12643,7 @@ function validateExplicitNullForPushPlan(plan, value, ctx) {
|
|
|
12557
12643
|
case "link":
|
|
12558
12644
|
case "select":
|
|
12559
12645
|
case "passthrough": return [];
|
|
12560
|
-
default: return assertNever$
|
|
12646
|
+
default: return assertNever$16(plan);
|
|
12561
12647
|
}
|
|
12562
12648
|
}
|
|
12563
12649
|
function validateExplicitNullsForPushRepeater(plan, value, ctx) {
|
|
@@ -12925,6 +13011,17 @@ function asAccessibleSurfaceToken(token) {
|
|
|
12925
13011
|
return token;
|
|
12926
13012
|
}
|
|
12927
13013
|
//#endregion
|
|
13014
|
+
//#region ../theme-core/src/site-styles/lookOptionGroups.ts
|
|
13015
|
+
function defineLookOptionGroup(group) {
|
|
13016
|
+
defaultOption(group);
|
|
13017
|
+
return group;
|
|
13018
|
+
}
|
|
13019
|
+
function defaultOption(group) {
|
|
13020
|
+
const option = group.options.find((candidate) => candidate.id === group.defaultOptionId);
|
|
13021
|
+
if (option) return option;
|
|
13022
|
+
throw new Error(`Look option group "${group.id}" defaults to missing option "${group.defaultOptionId}".`);
|
|
13023
|
+
}
|
|
13024
|
+
//#endregion
|
|
12928
13025
|
//#region ../theme-core/src/site-styles/types.ts
|
|
12929
13026
|
/**
|
|
12930
13027
|
* Defines a literal-preserving catalog while rejecting top-level extra keys on
|
|
@@ -12977,7 +13074,7 @@ function asDesignSystemTemplateId(value) {
|
|
|
12977
13074
|
function makeBoundaryId(previousBlockId, nextBlockId) {
|
|
12978
13075
|
return asDesignBoundaryId(`boundary:${encodeURIComponent(previousBlockId)}:${encodeURIComponent(nextBlockId)}`);
|
|
12979
13076
|
}
|
|
12980
|
-
function assertNever$
|
|
13077
|
+
function assertNever$15(value, message = "Unhandled Theme V2 variant") {
|
|
12981
13078
|
throw new Error(`${message}: ${String(value)}`);
|
|
12982
13079
|
}
|
|
12983
13080
|
function brandNonEmptyString(value, label) {
|
|
@@ -13070,767 +13167,655 @@ function defineBlockDesignCapability(capability) {
|
|
|
13070
13167
|
//#region ../theme-core/src/site-styles/appearancePresetResolution.ts
|
|
13071
13168
|
function assertValidOptionGroups(preset) {
|
|
13072
13169
|
preset.optionGroups?.forEach((group) => {
|
|
13073
|
-
|
|
13170
|
+
defineLookOptionGroup(group);
|
|
13074
13171
|
});
|
|
13075
13172
|
}
|
|
13076
13173
|
function defineBlockAppearancePreset(preset) {
|
|
13077
13174
|
assertValidOptionGroups(preset);
|
|
13078
13175
|
return preset;
|
|
13079
13176
|
}
|
|
13080
|
-
|
|
13081
|
-
|
|
13082
|
-
|
|
13083
|
-
|
|
13084
|
-
|
|
13085
|
-
|
|
13086
|
-
|
|
13087
|
-
|
|
13088
|
-
|
|
13089
|
-
|
|
13090
|
-
|
|
13091
|
-
|
|
13092
|
-
|
|
13093
|
-
|
|
13094
|
-
|
|
13095
|
-
|
|
13096
|
-
|
|
13097
|
-
|
|
13098
|
-
|
|
13099
|
-
|
|
13100
|
-
|
|
13101
|
-
|
|
13102
|
-
|
|
13177
|
+
//#endregion
|
|
13178
|
+
//#region ../theme-core/src/site-styles/blockAppearancePresets.ts
|
|
13179
|
+
const brandScrimOptionGroups = [{
|
|
13180
|
+
id: "image-surface-treatment",
|
|
13181
|
+
label: "Treatment",
|
|
13182
|
+
defaultOptionId: "brand-scrim-primary",
|
|
13183
|
+
options: [{
|
|
13184
|
+
id: "brand-scrim-primary",
|
|
13185
|
+
label: "Brand scrim",
|
|
13186
|
+
designPatch: { imageSurfaceTreatment: {
|
|
13187
|
+
kind: "brand-scrim",
|
|
13188
|
+
token: "primary"
|
|
13189
|
+
} }
|
|
13190
|
+
}, {
|
|
13191
|
+
id: "neutral-scrim",
|
|
13192
|
+
label: "Neutral scrim",
|
|
13193
|
+
designPatch: { imageSurfaceTreatment: { kind: "neutral-scrim" } }
|
|
13194
|
+
}]
|
|
13195
|
+
}];
|
|
13196
|
+
const microBannerLayoutPatches = [{
|
|
13197
|
+
constraints: { layoutVariantKeys: ["micro"] },
|
|
13198
|
+
designPatch: { sectionHeight: "banner" }
|
|
13199
|
+
}];
|
|
13200
|
+
defineBlockAppearancePreset({
|
|
13201
|
+
id: "hero-immersive-image",
|
|
13202
|
+
target: "hero",
|
|
13203
|
+
label: "Immersive image hero",
|
|
13204
|
+
blockKinds: ["block.hero"],
|
|
13205
|
+
constraints: { layoutFamilies: ["centered", "compact"] },
|
|
13206
|
+
layoutPatches: [{
|
|
13207
|
+
constraints: { layoutVariantKeys: ["micro"] },
|
|
13208
|
+
designPatch: {
|
|
13209
|
+
sectionHeight: "banner",
|
|
13210
|
+
heroTypographyScale: "display"
|
|
13103
13211
|
}
|
|
13104
|
-
}
|
|
13105
|
-
|
|
13106
|
-
|
|
13107
|
-
|
|
13108
|
-
|
|
13109
|
-
|
|
13110
|
-
|
|
13111
|
-
|
|
13112
|
-
|
|
13113
|
-
|
|
13114
|
-
|
|
13115
|
-
|
|
13116
|
-
|
|
13117
|
-
|
|
13118
|
-
|
|
13119
|
-
|
|
13120
|
-
|
|
13121
|
-
|
|
13122
|
-
|
|
13123
|
-
|
|
13124
|
-
|
|
13125
|
-
|
|
13126
|
-
|
|
13127
|
-
|
|
13128
|
-
token: "primary",
|
|
13129
|
-
intensity: "balanced"
|
|
13130
|
-
} }
|
|
13131
|
-
}]
|
|
13132
|
-
}],
|
|
13133
|
-
layoutPatches: [{
|
|
13134
|
-
constraints: { layoutVariantKeys: ["micro"] },
|
|
13135
|
-
designPatch: {
|
|
13136
|
-
sectionHeight: "banner",
|
|
13137
|
-
heroTypographyScale: "editorial"
|
|
13138
|
-
}
|
|
13139
|
-
}],
|
|
13140
|
-
design: {
|
|
13141
|
-
sectionSurface: "hero-image",
|
|
13142
|
-
contentFrame: panelFrame("raised"),
|
|
13143
|
-
itemSurface: "none",
|
|
13144
|
-
sectionHeight: "immersive",
|
|
13145
|
-
heroComposition: "bottom-left",
|
|
13146
|
-
heroTypographyScale: "display",
|
|
13147
|
-
imageSurfaceTreatment: {
|
|
13212
|
+
}],
|
|
13213
|
+
design: {
|
|
13214
|
+
sectionSurface: "hero-image",
|
|
13215
|
+
contentFrame: plainFrame,
|
|
13216
|
+
itemSurface: "none",
|
|
13217
|
+
sectionHeight: "hero",
|
|
13218
|
+
heroComposition: "center",
|
|
13219
|
+
heroTypographyScale: "display",
|
|
13220
|
+
imageSurfaceTreatment: { kind: "neutral-wash" }
|
|
13221
|
+
}
|
|
13222
|
+
}), defineBlockAppearancePreset({
|
|
13223
|
+
id: "hero-bottom-left-panel",
|
|
13224
|
+
target: "hero",
|
|
13225
|
+
label: "Bottom-left panel hero",
|
|
13226
|
+
blockKinds: ["block.hero"],
|
|
13227
|
+
constraints: { layoutFamilies: ["centered", "compact"] },
|
|
13228
|
+
optionGroups: [{
|
|
13229
|
+
id: "image-surface-treatment",
|
|
13230
|
+
label: "Treatment",
|
|
13231
|
+
defaultOptionId: "neutral-scrim",
|
|
13232
|
+
options: [{
|
|
13233
|
+
id: "neutral-scrim",
|
|
13234
|
+
label: "Neutral scrim",
|
|
13235
|
+
designPatch: { imageSurfaceTreatment: {
|
|
13148
13236
|
kind: "neutral-scrim",
|
|
13149
13237
|
intensity: "balanced"
|
|
13150
|
-
}
|
|
13151
|
-
}
|
|
13152
|
-
|
|
13153
|
-
|
|
13154
|
-
|
|
13155
|
-
id: "hero-poster-image",
|
|
13156
|
-
target: "hero",
|
|
13157
|
-
label: "Poster image hero",
|
|
13158
|
-
blockKinds: ["block.hero"],
|
|
13159
|
-
constraints: { layoutFamilies: ["centered", "compact"] },
|
|
13160
|
-
layoutPatches: [{
|
|
13161
|
-
constraints: { layoutVariantKeys: ["micro"] },
|
|
13162
|
-
designPatch: {
|
|
13163
|
-
sectionHeight: "banner",
|
|
13164
|
-
heroTypographyScale: "display"
|
|
13165
|
-
}
|
|
13166
|
-
}],
|
|
13167
|
-
design: {
|
|
13168
|
-
sectionSurface: "hero-image",
|
|
13169
|
-
contentFrame: plainFrame,
|
|
13170
|
-
itemSurface: "none",
|
|
13171
|
-
sectionHeight: "immersive",
|
|
13172
|
-
heroComposition: "center",
|
|
13173
|
-
heroTypographyScale: "poster",
|
|
13174
|
-
imageSurfaceTreatment: {
|
|
13238
|
+
} }
|
|
13239
|
+
}, {
|
|
13240
|
+
id: "brand-scrim-primary",
|
|
13241
|
+
label: "Brand scrim",
|
|
13242
|
+
designPatch: { imageSurfaceTreatment: {
|
|
13175
13243
|
kind: "brand-scrim",
|
|
13176
13244
|
token: "primary",
|
|
13177
|
-
intensity: "
|
|
13178
|
-
}
|
|
13179
|
-
}
|
|
13180
|
-
}
|
|
13181
|
-
|
|
13182
|
-
|
|
13183
|
-
|
|
13184
|
-
|
|
13185
|
-
label: "Brand scrim image hero",
|
|
13186
|
-
blockKinds: ["block.hero"],
|
|
13187
|
-
constraints: { layoutFamilies: ["centered", "compact"] },
|
|
13188
|
-
optionGroups: [{
|
|
13189
|
-
id: "image-surface-treatment",
|
|
13190
|
-
label: "Treatment",
|
|
13191
|
-
selectedOptionId: "brand-scrim-primary",
|
|
13192
|
-
options: [{
|
|
13193
|
-
id: "brand-scrim-primary",
|
|
13194
|
-
label: "Brand scrim",
|
|
13195
|
-
designPatch: { imageSurfaceTreatment: {
|
|
13196
|
-
kind: "brand-scrim",
|
|
13197
|
-
token: "primary"
|
|
13198
|
-
} }
|
|
13199
|
-
}, {
|
|
13200
|
-
id: "neutral-scrim",
|
|
13201
|
-
label: "Neutral scrim",
|
|
13202
|
-
designPatch: { imageSurfaceTreatment: { kind: "neutral-scrim" } }
|
|
13203
|
-
}]
|
|
13204
|
-
}],
|
|
13205
|
-
layoutPatches: [{
|
|
13206
|
-
constraints: { layoutVariantKeys: ["micro"] },
|
|
13207
|
-
designPatch: { sectionHeight: "banner" }
|
|
13208
|
-
}],
|
|
13209
|
-
design: {
|
|
13210
|
-
sectionSurface: "hero-image",
|
|
13211
|
-
contentFrame: plainFrame,
|
|
13212
|
-
itemSurface: "none",
|
|
13213
|
-
sectionHeight: "immersive",
|
|
13214
|
-
heroComposition: "center",
|
|
13215
|
-
heroTypographyScale: "display",
|
|
13216
|
-
imageSurfaceTreatment: {
|
|
13217
|
-
kind: "brand-scrim",
|
|
13218
|
-
token: "primary"
|
|
13219
|
-
}
|
|
13220
|
-
}
|
|
13221
|
-
}),
|
|
13222
|
-
defineBlockAppearancePreset({
|
|
13223
|
-
kind: "block-design",
|
|
13224
|
-
id: "hero-brand-scrim-fixed-frame",
|
|
13225
|
-
target: "hero",
|
|
13226
|
-
label: "Fixed-frame brand scrim hero",
|
|
13227
|
-
blockKinds: ["block.hero"],
|
|
13228
|
-
constraints: { layoutFamilies: ["centered", "compact"] },
|
|
13229
|
-
optionGroups: [{
|
|
13230
|
-
id: "image-surface-treatment",
|
|
13231
|
-
label: "Treatment",
|
|
13232
|
-
selectedOptionId: "brand-scrim-primary",
|
|
13233
|
-
options: [{
|
|
13234
|
-
id: "brand-scrim-primary",
|
|
13235
|
-
label: "Brand scrim",
|
|
13236
|
-
designPatch: { imageSurfaceTreatment: {
|
|
13237
|
-
kind: "brand-scrim",
|
|
13238
|
-
token: "primary"
|
|
13239
|
-
} }
|
|
13240
|
-
}, {
|
|
13241
|
-
id: "neutral-scrim",
|
|
13242
|
-
label: "Neutral scrim",
|
|
13243
|
-
designPatch: { imageSurfaceTreatment: { kind: "neutral-scrim" } }
|
|
13244
|
-
}]
|
|
13245
|
-
}],
|
|
13246
|
-
layoutPatches: [{
|
|
13247
|
-
constraints: { layoutVariantKeys: ["micro"] },
|
|
13248
|
-
designPatch: { sectionHeight: "banner" }
|
|
13249
|
-
}],
|
|
13250
|
-
design: {
|
|
13251
|
-
sectionSurface: "hero-image",
|
|
13252
|
-
contentFrame: plainFrame,
|
|
13253
|
-
itemSurface: "none",
|
|
13254
|
-
sectionHeight: "immersive",
|
|
13255
|
-
heroComposition: "center",
|
|
13256
|
-
heroTypographyScale: "display",
|
|
13257
|
-
imageSurfaceTreatment: {
|
|
13258
|
-
kind: "brand-scrim",
|
|
13259
|
-
token: "primary"
|
|
13260
|
-
},
|
|
13261
|
-
imageSurfaceMotion: "fixed-frame",
|
|
13262
|
-
eyebrowTreatment: "accent-pill-bounce"
|
|
13263
|
-
}
|
|
13264
|
-
}),
|
|
13265
|
-
defineBlockAppearancePreset({
|
|
13266
|
-
kind: "block-design",
|
|
13267
|
-
id: "hero-brand-depth-expressive",
|
|
13268
|
-
target: "hero",
|
|
13269
|
-
label: "Expressive brand-depth hero",
|
|
13270
|
-
blockKinds: ["block.hero"],
|
|
13271
|
-
constraints: { layoutFamilies: ["centered", "compact"] },
|
|
13272
|
-
design: {
|
|
13273
|
-
sectionSurface: "brand-depth-band",
|
|
13274
|
-
contentFrame: plainFrame,
|
|
13275
|
-
itemSurface: "none",
|
|
13276
|
-
heroComposition: "center",
|
|
13277
|
-
heroTypographyScale: "editorial",
|
|
13278
|
-
eyebrowTreatment: "accent-pill-bounce"
|
|
13279
|
-
}
|
|
13280
|
-
}),
|
|
13281
|
-
defineBlockAppearancePreset({
|
|
13282
|
-
kind: "block-design",
|
|
13283
|
-
id: "hero-contained-intro",
|
|
13284
|
-
target: "hero",
|
|
13285
|
-
label: "Contained intro hero",
|
|
13286
|
-
blockKinds: ["block.hero"],
|
|
13287
|
-
design: {
|
|
13288
|
-
sectionSurface: "muted-band",
|
|
13289
|
-
contentFrame: panelFrame("inset"),
|
|
13290
|
-
itemSurface: "none",
|
|
13291
|
-
heroComposition: "center",
|
|
13292
|
-
heroTypographyScale: "editorial"
|
|
13293
|
-
}
|
|
13294
|
-
}),
|
|
13295
|
-
defineBlockAppearancePreset({
|
|
13296
|
-
kind: "block-design",
|
|
13297
|
-
id: "hero-split-editorial",
|
|
13298
|
-
target: "hero",
|
|
13299
|
-
label: "Editorial split hero",
|
|
13300
|
-
blockKinds: ["block.hero"],
|
|
13301
|
-
constraints: { layoutFamilies: ["split"] },
|
|
13302
|
-
design: {
|
|
13303
|
-
sectionSurface: "base",
|
|
13304
|
-
contentFrame: plainFrame,
|
|
13305
|
-
itemSurface: "none",
|
|
13306
|
-
heroTypographyScale: "editorial"
|
|
13307
|
-
}
|
|
13308
|
-
}),
|
|
13309
|
-
defineBlockAppearancePreset({
|
|
13310
|
-
kind: "block-design",
|
|
13311
|
-
id: "hero-split-brand",
|
|
13312
|
-
target: "hero",
|
|
13313
|
-
label: "Brand split hero",
|
|
13314
|
-
blockKinds: ["block.hero"],
|
|
13315
|
-
constraints: { layoutFamilies: ["split"] },
|
|
13316
|
-
design: {
|
|
13317
|
-
sectionSurface: "brand-depth-band",
|
|
13318
|
-
contentFrame: plainFrame,
|
|
13319
|
-
itemSurface: "none",
|
|
13320
|
-
heroTypographyScale: "display",
|
|
13321
|
-
eyebrowTreatment: "accent-pill-bounce"
|
|
13322
|
-
}
|
|
13323
|
-
}),
|
|
13324
|
-
defineBlockAppearancePreset({
|
|
13325
|
-
kind: "block-design",
|
|
13326
|
-
id: "hero-split-soft-panel",
|
|
13327
|
-
target: "hero",
|
|
13328
|
-
label: "Soft panel split hero",
|
|
13329
|
-
blockKinds: ["block.hero"],
|
|
13330
|
-
constraints: { layoutFamilies: ["split"] },
|
|
13331
|
-
design: {
|
|
13332
|
-
sectionSurface: "muted-band",
|
|
13333
|
-
contentFrame: panelFrame("raised"),
|
|
13334
|
-
itemSurface: "none",
|
|
13245
|
+
intensity: "balanced"
|
|
13246
|
+
} }
|
|
13247
|
+
}]
|
|
13248
|
+
}],
|
|
13249
|
+
layoutPatches: [{
|
|
13250
|
+
constraints: { layoutVariantKeys: ["micro"] },
|
|
13251
|
+
designPatch: {
|
|
13252
|
+
sectionHeight: "banner",
|
|
13335
13253
|
heroTypographyScale: "editorial"
|
|
13336
13254
|
}
|
|
13337
|
-
}
|
|
13338
|
-
|
|
13339
|
-
|
|
13340
|
-
|
|
13341
|
-
|
|
13342
|
-
|
|
13343
|
-
|
|
13344
|
-
|
|
13345
|
-
|
|
13346
|
-
|
|
13347
|
-
|
|
13348
|
-
|
|
13255
|
+
}],
|
|
13256
|
+
design: {
|
|
13257
|
+
sectionSurface: "hero-image",
|
|
13258
|
+
contentFrame: panelFrame("raised"),
|
|
13259
|
+
itemSurface: "none",
|
|
13260
|
+
sectionHeight: "immersive",
|
|
13261
|
+
heroComposition: "bottom-left",
|
|
13262
|
+
heroTypographyScale: "display",
|
|
13263
|
+
imageSurfaceTreatment: {
|
|
13264
|
+
kind: "neutral-scrim",
|
|
13265
|
+
intensity: "balanced"
|
|
13266
|
+
}
|
|
13267
|
+
}
|
|
13268
|
+
}), defineBlockAppearancePreset({
|
|
13269
|
+
id: "hero-poster-image",
|
|
13270
|
+
target: "hero",
|
|
13271
|
+
label: "Poster image hero",
|
|
13272
|
+
blockKinds: ["block.hero"],
|
|
13273
|
+
constraints: { layoutFamilies: ["centered", "compact"] },
|
|
13274
|
+
layoutPatches: [{
|
|
13275
|
+
constraints: { layoutVariantKeys: ["micro"] },
|
|
13276
|
+
designPatch: {
|
|
13277
|
+
sectionHeight: "banner",
|
|
13349
13278
|
heroTypographyScale: "display"
|
|
13350
13279
|
}
|
|
13351
|
-
}
|
|
13352
|
-
|
|
13353
|
-
|
|
13354
|
-
|
|
13355
|
-
|
|
13356
|
-
|
|
13357
|
-
|
|
13358
|
-
|
|
13359
|
-
|
|
13360
|
-
|
|
13361
|
-
|
|
13362
|
-
|
|
13363
|
-
|
|
13364
|
-
|
|
13365
|
-
|
|
13366
|
-
|
|
13367
|
-
|
|
13368
|
-
|
|
13369
|
-
|
|
13370
|
-
|
|
13371
|
-
|
|
13372
|
-
|
|
13373
|
-
|
|
13374
|
-
|
|
13375
|
-
|
|
13376
|
-
|
|
13377
|
-
|
|
13378
|
-
|
|
13379
|
-
|
|
13380
|
-
|
|
13381
|
-
|
|
13382
|
-
|
|
13383
|
-
|
|
13384
|
-
|
|
13385
|
-
|
|
13386
|
-
|
|
13387
|
-
|
|
13388
|
-
|
|
13389
|
-
|
|
13390
|
-
|
|
13391
|
-
|
|
13392
|
-
|
|
13393
|
-
|
|
13394
|
-
|
|
13395
|
-
|
|
13396
|
-
|
|
13397
|
-
|
|
13398
|
-
|
|
13399
|
-
|
|
13400
|
-
|
|
13401
|
-
|
|
13402
|
-
|
|
13403
|
-
|
|
13404
|
-
|
|
13405
|
-
|
|
13406
|
-
|
|
13407
|
-
|
|
13408
|
-
|
|
13409
|
-
|
|
13410
|
-
|
|
13411
|
-
|
|
13412
|
-
|
|
13413
|
-
|
|
13414
|
-
|
|
13415
|
-
|
|
13416
|
-
|
|
13417
|
-
|
|
13418
|
-
|
|
13419
|
-
|
|
13420
|
-
|
|
13421
|
-
|
|
13422
|
-
|
|
13423
|
-
|
|
13424
|
-
|
|
13425
|
-
|
|
13426
|
-
|
|
13427
|
-
|
|
13428
|
-
|
|
13429
|
-
|
|
13430
|
-
|
|
13431
|
-
|
|
13432
|
-
|
|
13433
|
-
|
|
13434
|
-
|
|
13435
|
-
|
|
13436
|
-
|
|
13437
|
-
|
|
13438
|
-
|
|
13439
|
-
|
|
13440
|
-
|
|
13441
|
-
|
|
13442
|
-
|
|
13443
|
-
|
|
13444
|
-
|
|
13445
|
-
|
|
13446
|
-
|
|
13447
|
-
|
|
13448
|
-
|
|
13449
|
-
|
|
13450
|
-
|
|
13451
|
-
|
|
13452
|
-
|
|
13453
|
-
|
|
13454
|
-
|
|
13455
|
-
|
|
13456
|
-
|
|
13457
|
-
|
|
13458
|
-
|
|
13459
|
-
|
|
13460
|
-
|
|
13461
|
-
|
|
13462
|
-
|
|
13463
|
-
|
|
13464
|
-
|
|
13465
|
-
|
|
13466
|
-
|
|
13467
|
-
|
|
13468
|
-
|
|
13469
|
-
|
|
13470
|
-
|
|
13471
|
-
|
|
13472
|
-
|
|
13473
|
-
|
|
13474
|
-
|
|
13475
|
-
|
|
13476
|
-
|
|
13477
|
-
|
|
13478
|
-
|
|
13479
|
-
|
|
13480
|
-
|
|
13481
|
-
|
|
13482
|
-
|
|
13483
|
-
|
|
13484
|
-
|
|
13485
|
-
|
|
13486
|
-
|
|
13487
|
-
|
|
13488
|
-
|
|
13489
|
-
|
|
13490
|
-
|
|
13491
|
-
|
|
13492
|
-
|
|
13493
|
-
|
|
13494
|
-
|
|
13495
|
-
}
|
|
13496
|
-
}
|
|
13497
|
-
|
|
13498
|
-
|
|
13499
|
-
|
|
13500
|
-
|
|
13501
|
-
|
|
13502
|
-
|
|
13503
|
-
|
|
13504
|
-
|
|
13505
|
-
|
|
13506
|
-
|
|
13507
|
-
|
|
13508
|
-
|
|
13509
|
-
|
|
13510
|
-
|
|
13511
|
-
|
|
13512
|
-
|
|
13513
|
-
|
|
13514
|
-
|
|
13515
|
-
|
|
13516
|
-
|
|
13517
|
-
|
|
13518
|
-
|
|
13519
|
-
|
|
13520
|
-
|
|
13521
|
-
|
|
13522
|
-
|
|
13523
|
-
|
|
13524
|
-
|
|
13525
|
-
|
|
13526
|
-
|
|
13527
|
-
|
|
13528
|
-
|
|
13529
|
-
|
|
13530
|
-
|
|
13531
|
-
|
|
13532
|
-
|
|
13533
|
-
|
|
13534
|
-
|
|
13535
|
-
|
|
13536
|
-
|
|
13537
|
-
|
|
13538
|
-
|
|
13539
|
-
|
|
13540
|
-
|
|
13541
|
-
|
|
13542
|
-
|
|
13543
|
-
|
|
13544
|
-
|
|
13545
|
-
|
|
13546
|
-
|
|
13547
|
-
|
|
13548
|
-
|
|
13549
|
-
|
|
13550
|
-
|
|
13551
|
-
|
|
13552
|
-
|
|
13553
|
-
|
|
13554
|
-
|
|
13555
|
-
|
|
13556
|
-
|
|
13557
|
-
|
|
13558
|
-
|
|
13559
|
-
|
|
13560
|
-
|
|
13561
|
-
|
|
13562
|
-
|
|
13563
|
-
|
|
13564
|
-
|
|
13565
|
-
|
|
13566
|
-
|
|
13567
|
-
|
|
13568
|
-
|
|
13569
|
-
|
|
13570
|
-
|
|
13571
|
-
|
|
13572
|
-
|
|
13573
|
-
|
|
13574
|
-
|
|
13575
|
-
|
|
13576
|
-
|
|
13577
|
-
|
|
13578
|
-
|
|
13579
|
-
|
|
13580
|
-
|
|
13581
|
-
|
|
13582
|
-
|
|
13583
|
-
|
|
13584
|
-
|
|
13585
|
-
|
|
13586
|
-
|
|
13587
|
-
|
|
13588
|
-
|
|
13589
|
-
|
|
13590
|
-
|
|
13591
|
-
|
|
13592
|
-
|
|
13593
|
-
|
|
13594
|
-
|
|
13595
|
-
|
|
13596
|
-
|
|
13597
|
-
|
|
13598
|
-
|
|
13599
|
-
|
|
13600
|
-
|
|
13601
|
-
|
|
13602
|
-
|
|
13603
|
-
|
|
13604
|
-
|
|
13605
|
-
|
|
13606
|
-
|
|
13607
|
-
|
|
13608
|
-
|
|
13609
|
-
|
|
13610
|
-
|
|
13611
|
-
|
|
13612
|
-
|
|
13613
|
-
|
|
13614
|
-
|
|
13615
|
-
|
|
13616
|
-
|
|
13617
|
-
|
|
13618
|
-
|
|
13619
|
-
|
|
13620
|
-
|
|
13621
|
-
|
|
13622
|
-
|
|
13623
|
-
|
|
13624
|
-
|
|
13625
|
-
|
|
13626
|
-
|
|
13627
|
-
|
|
13628
|
-
|
|
13629
|
-
|
|
13630
|
-
|
|
13631
|
-
|
|
13632
|
-
|
|
13633
|
-
|
|
13634
|
-
|
|
13635
|
-
|
|
13636
|
-
|
|
13637
|
-
|
|
13638
|
-
|
|
13639
|
-
|
|
13640
|
-
|
|
13641
|
-
|
|
13642
|
-
|
|
13643
|
-
|
|
13644
|
-
}
|
|
13645
|
-
|
|
13646
|
-
|
|
13647
|
-
|
|
13648
|
-
|
|
13649
|
-
|
|
13650
|
-
|
|
13651
|
-
|
|
13652
|
-
|
|
13653
|
-
|
|
13654
|
-
|
|
13655
|
-
|
|
13656
|
-
|
|
13657
|
-
|
|
13658
|
-
|
|
13659
|
-
|
|
13660
|
-
|
|
13661
|
-
|
|
13662
|
-
|
|
13663
|
-
|
|
13664
|
-
|
|
13665
|
-
|
|
13666
|
-
|
|
13667
|
-
|
|
13668
|
-
|
|
13669
|
-
|
|
13670
|
-
|
|
13671
|
-
|
|
13672
|
-
|
|
13673
|
-
|
|
13674
|
-
|
|
13675
|
-
|
|
13676
|
-
|
|
13677
|
-
|
|
13678
|
-
|
|
13679
|
-
|
|
13680
|
-
|
|
13681
|
-
|
|
13682
|
-
|
|
13683
|
-
|
|
13684
|
-
|
|
13685
|
-
|
|
13686
|
-
|
|
13687
|
-
|
|
13688
|
-
|
|
13689
|
-
|
|
13690
|
-
|
|
13691
|
-
|
|
13692
|
-
|
|
13693
|
-
|
|
13694
|
-
|
|
13695
|
-
|
|
13696
|
-
|
|
13697
|
-
|
|
13698
|
-
|
|
13699
|
-
|
|
13700
|
-
|
|
13701
|
-
|
|
13702
|
-
|
|
13703
|
-
|
|
13704
|
-
|
|
13705
|
-
|
|
13706
|
-
|
|
13707
|
-
|
|
13708
|
-
|
|
13709
|
-
|
|
13710
|
-
|
|
13711
|
-
|
|
13712
|
-
|
|
13713
|
-
|
|
13714
|
-
|
|
13715
|
-
|
|
13716
|
-
|
|
13717
|
-
|
|
13718
|
-
|
|
13719
|
-
|
|
13720
|
-
|
|
13721
|
-
|
|
13722
|
-
|
|
13723
|
-
|
|
13724
|
-
|
|
13725
|
-
|
|
13726
|
-
|
|
13727
|
-
|
|
13728
|
-
|
|
13729
|
-
|
|
13730
|
-
|
|
13731
|
-
|
|
13732
|
-
|
|
13733
|
-
|
|
13734
|
-
|
|
13735
|
-
|
|
13736
|
-
|
|
13737
|
-
|
|
13738
|
-
|
|
13739
|
-
|
|
13740
|
-
|
|
13741
|
-
|
|
13742
|
-
|
|
13743
|
-
|
|
13744
|
-
|
|
13745
|
-
|
|
13746
|
-
|
|
13747
|
-
|
|
13748
|
-
|
|
13749
|
-
|
|
13750
|
-
|
|
13751
|
-
|
|
13752
|
-
|
|
13753
|
-
|
|
13754
|
-
|
|
13755
|
-
|
|
13756
|
-
|
|
13757
|
-
|
|
13758
|
-
|
|
13759
|
-
|
|
13760
|
-
|
|
13761
|
-
|
|
13762
|
-
|
|
13763
|
-
|
|
13764
|
-
|
|
13765
|
-
|
|
13766
|
-
|
|
13767
|
-
|
|
13768
|
-
|
|
13769
|
-
|
|
13770
|
-
}
|
|
13771
|
-
|
|
13772
|
-
|
|
13773
|
-
|
|
13774
|
-
|
|
13775
|
-
|
|
13776
|
-
|
|
13777
|
-
|
|
13778
|
-
|
|
13779
|
-
|
|
13780
|
-
|
|
13781
|
-
|
|
13782
|
-
|
|
13783
|
-
|
|
13784
|
-
|
|
13785
|
-
|
|
13786
|
-
|
|
13787
|
-
|
|
13788
|
-
|
|
13789
|
-
|
|
13790
|
-
|
|
13791
|
-
|
|
13792
|
-
|
|
13793
|
-
|
|
13794
|
-
|
|
13795
|
-
|
|
13796
|
-
|
|
13797
|
-
|
|
13798
|
-
|
|
13799
|
-
|
|
13800
|
-
|
|
13801
|
-
|
|
13802
|
-
|
|
13803
|
-
|
|
13804
|
-
|
|
13805
|
-
|
|
13806
|
-
|
|
13807
|
-
|
|
13808
|
-
|
|
13809
|
-
|
|
13810
|
-
|
|
13811
|
-
|
|
13812
|
-
|
|
13813
|
-
|
|
13814
|
-
|
|
13815
|
-
|
|
13816
|
-
|
|
13817
|
-
|
|
13818
|
-
|
|
13819
|
-
|
|
13820
|
-
|
|
13821
|
-
|
|
13822
|
-
|
|
13823
|
-
|
|
13824
|
-
|
|
13825
|
-
|
|
13826
|
-
|
|
13827
|
-
|
|
13828
|
-
|
|
13829
|
-
|
|
13830
|
-
|
|
13831
|
-
|
|
13832
|
-
|
|
13833
|
-
|
|
13280
|
+
}],
|
|
13281
|
+
design: {
|
|
13282
|
+
sectionSurface: "hero-image",
|
|
13283
|
+
contentFrame: plainFrame,
|
|
13284
|
+
itemSurface: "none",
|
|
13285
|
+
sectionHeight: "immersive",
|
|
13286
|
+
heroComposition: "center",
|
|
13287
|
+
heroTypographyScale: "poster",
|
|
13288
|
+
imageSurfaceTreatment: {
|
|
13289
|
+
kind: "brand-scrim",
|
|
13290
|
+
token: "primary",
|
|
13291
|
+
intensity: "strong"
|
|
13292
|
+
}
|
|
13293
|
+
}
|
|
13294
|
+
}), defineBlockAppearancePreset({
|
|
13295
|
+
id: "hero-brand-scrim",
|
|
13296
|
+
target: "hero",
|
|
13297
|
+
label: "Brand scrim image hero",
|
|
13298
|
+
blockKinds: ["block.hero"],
|
|
13299
|
+
constraints: { layoutFamilies: ["centered", "compact"] },
|
|
13300
|
+
optionGroups: brandScrimOptionGroups,
|
|
13301
|
+
layoutPatches: microBannerLayoutPatches,
|
|
13302
|
+
design: {
|
|
13303
|
+
sectionSurface: "hero-image",
|
|
13304
|
+
contentFrame: plainFrame,
|
|
13305
|
+
itemSurface: "none",
|
|
13306
|
+
sectionHeight: "immersive",
|
|
13307
|
+
heroComposition: "center",
|
|
13308
|
+
heroTypographyScale: "display",
|
|
13309
|
+
imageSurfaceTreatment: {
|
|
13310
|
+
kind: "brand-scrim",
|
|
13311
|
+
token: "primary"
|
|
13312
|
+
}
|
|
13313
|
+
}
|
|
13314
|
+
}), defineBlockAppearancePreset({
|
|
13315
|
+
id: "hero-brand-scrim-fixed-frame",
|
|
13316
|
+
target: "hero",
|
|
13317
|
+
label: "Fixed-frame brand scrim hero",
|
|
13318
|
+
blockKinds: ["block.hero"],
|
|
13319
|
+
constraints: { layoutFamilies: ["centered", "compact"] },
|
|
13320
|
+
optionGroups: brandScrimOptionGroups,
|
|
13321
|
+
layoutPatches: microBannerLayoutPatches,
|
|
13322
|
+
design: {
|
|
13323
|
+
sectionSurface: "hero-image",
|
|
13324
|
+
contentFrame: plainFrame,
|
|
13325
|
+
itemSurface: "none",
|
|
13326
|
+
sectionHeight: "immersive",
|
|
13327
|
+
heroComposition: "center",
|
|
13328
|
+
heroTypographyScale: "display",
|
|
13329
|
+
imageSurfaceTreatment: {
|
|
13330
|
+
kind: "brand-scrim",
|
|
13331
|
+
token: "primary"
|
|
13332
|
+
},
|
|
13333
|
+
imageSurfaceMotion: "fixed-frame",
|
|
13334
|
+
eyebrowTreatment: "accent-pill-bounce"
|
|
13335
|
+
}
|
|
13336
|
+
}), defineBlockAppearancePreset({
|
|
13337
|
+
id: "hero-brand-depth-expressive",
|
|
13338
|
+
target: "hero",
|
|
13339
|
+
label: "Expressive brand-depth hero",
|
|
13340
|
+
blockKinds: ["block.hero"],
|
|
13341
|
+
constraints: { layoutFamilies: ["centered", "compact"] },
|
|
13342
|
+
design: {
|
|
13343
|
+
sectionSurface: "brand-depth-band",
|
|
13344
|
+
contentFrame: plainFrame,
|
|
13345
|
+
itemSurface: "none",
|
|
13346
|
+
heroComposition: "center",
|
|
13347
|
+
heroTypographyScale: "editorial",
|
|
13348
|
+
eyebrowTreatment: "accent-pill-bounce"
|
|
13349
|
+
}
|
|
13350
|
+
}), defineBlockAppearancePreset({
|
|
13351
|
+
id: "hero-contained-intro",
|
|
13352
|
+
target: "hero",
|
|
13353
|
+
label: "Contained intro hero",
|
|
13354
|
+
blockKinds: ["block.hero"],
|
|
13355
|
+
design: {
|
|
13356
|
+
sectionSurface: "muted-band",
|
|
13357
|
+
contentFrame: panelFrame("inset"),
|
|
13358
|
+
itemSurface: "none",
|
|
13359
|
+
heroComposition: "center",
|
|
13360
|
+
heroTypographyScale: "editorial"
|
|
13361
|
+
}
|
|
13362
|
+
}), defineBlockAppearancePreset({
|
|
13363
|
+
id: "hero-split-editorial",
|
|
13364
|
+
target: "hero",
|
|
13365
|
+
label: "Editorial split hero",
|
|
13366
|
+
blockKinds: ["block.hero"],
|
|
13367
|
+
constraints: { layoutFamilies: ["split"] },
|
|
13368
|
+
design: {
|
|
13369
|
+
sectionSurface: "base",
|
|
13370
|
+
contentFrame: plainFrame,
|
|
13371
|
+
itemSurface: "none",
|
|
13372
|
+
heroTypographyScale: "editorial"
|
|
13373
|
+
}
|
|
13374
|
+
}), defineBlockAppearancePreset({
|
|
13375
|
+
id: "hero-split-brand",
|
|
13376
|
+
target: "hero",
|
|
13377
|
+
label: "Brand split hero",
|
|
13378
|
+
blockKinds: ["block.hero"],
|
|
13379
|
+
constraints: { layoutFamilies: ["split"] },
|
|
13380
|
+
design: {
|
|
13381
|
+
sectionSurface: "brand-depth-band",
|
|
13382
|
+
contentFrame: plainFrame,
|
|
13383
|
+
itemSurface: "none",
|
|
13384
|
+
heroTypographyScale: "display",
|
|
13385
|
+
eyebrowTreatment: "accent-pill-bounce"
|
|
13386
|
+
}
|
|
13387
|
+
}), defineBlockAppearancePreset({
|
|
13388
|
+
id: "hero-split-soft-panel",
|
|
13389
|
+
target: "hero",
|
|
13390
|
+
label: "Soft panel split hero",
|
|
13391
|
+
blockKinds: ["block.hero"],
|
|
13392
|
+
constraints: { layoutFamilies: ["split"] },
|
|
13393
|
+
design: {
|
|
13394
|
+
sectionSurface: "muted-band",
|
|
13395
|
+
contentFrame: panelFrame("raised"),
|
|
13396
|
+
itemSurface: "none",
|
|
13397
|
+
heroTypographyScale: "editorial"
|
|
13398
|
+
}
|
|
13399
|
+
}), defineBlockAppearancePreset({
|
|
13400
|
+
id: "hero-split-accent",
|
|
13401
|
+
target: "hero",
|
|
13402
|
+
label: "Accent split hero",
|
|
13403
|
+
blockKinds: ["block.hero"],
|
|
13404
|
+
constraints: { layoutFamilies: ["split"] },
|
|
13405
|
+
design: {
|
|
13406
|
+
sectionSurface: "accent-band",
|
|
13407
|
+
contentFrame: panelFrame("raised"),
|
|
13408
|
+
itemSurface: "none",
|
|
13409
|
+
heroTypographyScale: "display"
|
|
13410
|
+
}
|
|
13411
|
+
}), defineBlockAppearancePreset({
|
|
13412
|
+
id: "intro-editorial-statement",
|
|
13413
|
+
target: "intro",
|
|
13414
|
+
label: "Editorial intro statement",
|
|
13415
|
+
blockKinds: ["block.intro"],
|
|
13416
|
+
constraints: { layoutVariantKeys: ["centered-copy", "statement-copy"] },
|
|
13417
|
+
design: {
|
|
13418
|
+
sectionSurface: "base",
|
|
13419
|
+
contentFrame: plainFrame,
|
|
13420
|
+
itemSurface: "none",
|
|
13421
|
+
composition: {
|
|
13422
|
+
kind: "intro",
|
|
13423
|
+
treatment: "editorial-statement"
|
|
13424
|
+
}
|
|
13425
|
+
}
|
|
13426
|
+
}), defineBlockAppearancePreset({
|
|
13427
|
+
id: "intro-portrait-bio",
|
|
13428
|
+
target: "intro",
|
|
13429
|
+
label: "Portrait and bio",
|
|
13430
|
+
blockKinds: ["block.intro"],
|
|
13431
|
+
constraints: { layoutVariantKeys: ["media-copy"] },
|
|
13432
|
+
design: {
|
|
13433
|
+
sectionSurface: "base",
|
|
13434
|
+
contentFrame: plainFrame,
|
|
13435
|
+
itemSurface: "none",
|
|
13436
|
+
composition: {
|
|
13437
|
+
kind: "intro",
|
|
13438
|
+
treatment: "portrait-bio"
|
|
13439
|
+
}
|
|
13440
|
+
}
|
|
13441
|
+
}), defineBlockAppearancePreset({
|
|
13442
|
+
id: "offerings-preview-default-cards",
|
|
13443
|
+
target: "offerings",
|
|
13444
|
+
label: "Default offering cards",
|
|
13445
|
+
blockKinds: ["block.offerings-preview"],
|
|
13446
|
+
design: {
|
|
13447
|
+
sectionSurface: "base",
|
|
13448
|
+
contentFrame: plainFrame,
|
|
13449
|
+
itemSurface: "default"
|
|
13450
|
+
}
|
|
13451
|
+
}), defineBlockAppearancePreset({
|
|
13452
|
+
id: "offerings-preview-secondary-cards",
|
|
13453
|
+
target: "offerings",
|
|
13454
|
+
label: "Secondary offering cards",
|
|
13455
|
+
blockKinds: ["block.offerings-preview"],
|
|
13456
|
+
design: {
|
|
13457
|
+
sectionSurface: "muted-band",
|
|
13458
|
+
contentFrame: plainFrame,
|
|
13459
|
+
itemSurface: "inset"
|
|
13460
|
+
}
|
|
13461
|
+
}), defineBlockAppearancePreset({
|
|
13462
|
+
id: "offerings-preview-non-carded",
|
|
13463
|
+
target: "offerings",
|
|
13464
|
+
label: "Non-carded offerings",
|
|
13465
|
+
blockKinds: ["block.offerings-preview"],
|
|
13466
|
+
design: {
|
|
13467
|
+
sectionSurface: "muted-band",
|
|
13468
|
+
contentFrame: plainFrame,
|
|
13469
|
+
itemSurface: "editorial"
|
|
13470
|
+
}
|
|
13471
|
+
}), defineBlockAppearancePreset({
|
|
13472
|
+
id: "offerings-preview-paired-feature-cards",
|
|
13473
|
+
target: "offerings",
|
|
13474
|
+
label: "Paired feature cards",
|
|
13475
|
+
blockKinds: ["block.offerings-preview"],
|
|
13476
|
+
constraints: { layoutVariantKeys: ["cards"] },
|
|
13477
|
+
design: {
|
|
13478
|
+
sectionSurface: "base",
|
|
13479
|
+
contentFrame: plainFrame,
|
|
13480
|
+
itemSurface: "none"
|
|
13481
|
+
}
|
|
13482
|
+
}), defineBlockAppearancePreset({
|
|
13483
|
+
id: "offerings-preview-open-editorial-columns",
|
|
13484
|
+
target: "offerings",
|
|
13485
|
+
label: "Open editorial columns",
|
|
13486
|
+
blockKinds: ["block.offerings-preview"],
|
|
13487
|
+
constraints: { layoutVariantKeys: ["cards"] },
|
|
13488
|
+
design: {
|
|
13489
|
+
sectionSurface: "base",
|
|
13490
|
+
contentFrame: plainFrame,
|
|
13491
|
+
itemSurface: "none"
|
|
13492
|
+
}
|
|
13493
|
+
}), defineBlockAppearancePreset({
|
|
13494
|
+
id: "offerings-preview-joined-programme-panel",
|
|
13495
|
+
target: "offerings",
|
|
13496
|
+
label: "Joined programme panel",
|
|
13497
|
+
blockKinds: ["block.offerings-preview"],
|
|
13498
|
+
constraints: { layoutVariantKeys: ["cards"] },
|
|
13499
|
+
design: {
|
|
13500
|
+
sectionSurface: "base",
|
|
13501
|
+
contentFrame: plainFrame,
|
|
13502
|
+
itemSurface: "none"
|
|
13503
|
+
}
|
|
13504
|
+
}), defineBlockAppearancePreset({
|
|
13505
|
+
id: "feature-cards-raised-rule",
|
|
13506
|
+
target: "feature-cards",
|
|
13507
|
+
label: "Raised cards with rule",
|
|
13508
|
+
blockKinds: ["block.feature-cards"],
|
|
13509
|
+
design: {
|
|
13510
|
+
sectionSurface: "base",
|
|
13511
|
+
contentFrame: plainFrame,
|
|
13512
|
+
itemSurface: "raised"
|
|
13513
|
+
}
|
|
13514
|
+
}), defineBlockAppearancePreset({
|
|
13515
|
+
id: "feature-cards-bold-colors",
|
|
13516
|
+
target: "feature-cards",
|
|
13517
|
+
label: "Bold colour-blocked cards",
|
|
13518
|
+
blockKinds: ["block.feature-cards"],
|
|
13519
|
+
design: {
|
|
13520
|
+
sectionSurface: "base",
|
|
13521
|
+
contentFrame: plainFrame,
|
|
13522
|
+
itemSurface: "color-blocked"
|
|
13523
|
+
}
|
|
13524
|
+
}), defineBlockAppearancePreset({
|
|
13525
|
+
id: "feature-cards-editorial-columns",
|
|
13526
|
+
target: "feature-cards",
|
|
13527
|
+
label: "Editorial open columns",
|
|
13528
|
+
blockKinds: ["block.feature-cards"],
|
|
13529
|
+
design: {
|
|
13530
|
+
sectionSurface: "base",
|
|
13531
|
+
contentFrame: plainFrame,
|
|
13532
|
+
itemSurface: "editorial"
|
|
13533
|
+
}
|
|
13534
|
+
}), defineBlockAppearancePreset({
|
|
13535
|
+
id: "feature-cards-asymmetric-emphasis",
|
|
13536
|
+
target: "feature-cards",
|
|
13537
|
+
label: "Asymmetric emphasis pair",
|
|
13538
|
+
blockKinds: ["block.feature-cards"],
|
|
13539
|
+
constraints: { layoutFamilies: ["grid"] },
|
|
13540
|
+
design: {
|
|
13541
|
+
sectionSurface: "base",
|
|
13542
|
+
contentFrame: plainFrame,
|
|
13543
|
+
itemSurface: "none",
|
|
13544
|
+
composition: {
|
|
13545
|
+
kind: "feature-cards",
|
|
13546
|
+
treatment: "asymmetric-emphasis"
|
|
13547
|
+
}
|
|
13548
|
+
}
|
|
13549
|
+
}), defineBlockAppearancePreset({
|
|
13550
|
+
id: "feature-cards-framed-programme",
|
|
13551
|
+
target: "feature-cards",
|
|
13552
|
+
label: "Framed programme cards",
|
|
13553
|
+
blockKinds: ["block.feature-cards"],
|
|
13554
|
+
constraints: { layoutFamilies: ["grid"] },
|
|
13555
|
+
design: {
|
|
13556
|
+
sectionSurface: "brand-depth-band",
|
|
13557
|
+
contentFrame: plainFrame,
|
|
13558
|
+
itemSurface: "inset",
|
|
13559
|
+
composition: {
|
|
13560
|
+
kind: "feature-cards",
|
|
13561
|
+
treatment: "framed-programme"
|
|
13562
|
+
}
|
|
13563
|
+
}
|
|
13564
|
+
}), defineBlockAppearancePreset({
|
|
13565
|
+
id: "feature-cards-soft-panels",
|
|
13566
|
+
target: "feature-cards",
|
|
13567
|
+
label: "Soft tinted panels",
|
|
13568
|
+
blockKinds: ["block.feature-cards"],
|
|
13569
|
+
design: {
|
|
13570
|
+
sectionSurface: "base",
|
|
13571
|
+
contentFrame: plainFrame,
|
|
13572
|
+
itemSurface: "inset"
|
|
13573
|
+
}
|
|
13574
|
+
}), defineBlockAppearancePreset({
|
|
13575
|
+
id: "feature-cards-editorial-diptych",
|
|
13576
|
+
target: "feature-cards",
|
|
13577
|
+
label: "Editorial diptych",
|
|
13578
|
+
blockKinds: ["block.feature-cards"],
|
|
13579
|
+
constraints: { layoutVariantKeys: ["editorial-diptych"] },
|
|
13580
|
+
design: {
|
|
13581
|
+
sectionSurface: "base",
|
|
13582
|
+
contentFrame: plainFrame,
|
|
13583
|
+
itemSurface: "flat"
|
|
13584
|
+
}
|
|
13585
|
+
}), defineBlockAppearancePreset({
|
|
13586
|
+
id: "feature-cards-editorial-pathways",
|
|
13587
|
+
target: "feature-cards",
|
|
13588
|
+
label: "Editorial pathways",
|
|
13589
|
+
blockKinds: ["block.feature-cards"],
|
|
13590
|
+
constraints: { layoutVariantKeys: ["editorial-pathways"] },
|
|
13591
|
+
design: {
|
|
13592
|
+
sectionSurface: "base",
|
|
13593
|
+
contentFrame: plainFrame,
|
|
13594
|
+
itemSurface: "flat"
|
|
13595
|
+
}
|
|
13596
|
+
}), defineBlockAppearancePreset({
|
|
13597
|
+
id: "feature-cards-photo-tiles",
|
|
13598
|
+
target: "feature-cards",
|
|
13599
|
+
label: "Photo tiles",
|
|
13600
|
+
blockKinds: ["block.feature-cards"],
|
|
13601
|
+
design: {
|
|
13602
|
+
sectionSurface: "base",
|
|
13603
|
+
contentFrame: plainFrame,
|
|
13604
|
+
itemSurface: "raised"
|
|
13605
|
+
}
|
|
13606
|
+
}), defineBlockAppearancePreset({
|
|
13607
|
+
id: "events-lined-panel",
|
|
13608
|
+
target: "events",
|
|
13609
|
+
label: "Raised event panel",
|
|
13610
|
+
blockKinds: ["block.event-calendar", "block.event-listing"],
|
|
13611
|
+
design: {
|
|
13612
|
+
sectionSurface: "base",
|
|
13613
|
+
contentFrame: panelFrame("raised"),
|
|
13614
|
+
itemSurface: "none"
|
|
13615
|
+
}
|
|
13616
|
+
}), defineBlockAppearancePreset({
|
|
13617
|
+
id: "events-ruled-register",
|
|
13618
|
+
target: "events",
|
|
13619
|
+
label: "Ruled event register",
|
|
13620
|
+
blockKinds: ["block.event-calendar", "block.event-listing"],
|
|
13621
|
+
design: {
|
|
13622
|
+
sectionSurface: "brand-depth-band",
|
|
13623
|
+
contentFrame: plainFrame,
|
|
13624
|
+
itemSurface: "none",
|
|
13625
|
+
eventListTreatment: "ruled-register"
|
|
13626
|
+
}
|
|
13627
|
+
}), defineBlockAppearancePreset({
|
|
13628
|
+
id: "events-editorial-register",
|
|
13629
|
+
target: "events",
|
|
13630
|
+
label: "Editorial event register",
|
|
13631
|
+
blockKinds: ["block.event-calendar", "block.event-listing"],
|
|
13632
|
+
design: {
|
|
13633
|
+
sectionSurface: "base",
|
|
13634
|
+
contentFrame: plainFrame,
|
|
13635
|
+
itemSurface: "none",
|
|
13636
|
+
eventListTreatment: "editorial-register"
|
|
13637
|
+
}
|
|
13638
|
+
}), defineBlockAppearancePreset({
|
|
13639
|
+
id: "events-dense-index",
|
|
13640
|
+
target: "events",
|
|
13641
|
+
label: "Dense event index",
|
|
13642
|
+
blockKinds: ["block.event-calendar", "block.event-listing"],
|
|
13643
|
+
design: {
|
|
13644
|
+
sectionSurface: "accent-band",
|
|
13645
|
+
contentFrame: plainFrame,
|
|
13646
|
+
itemSurface: "none",
|
|
13647
|
+
eventListTreatment: "dense-index"
|
|
13648
|
+
}
|
|
13649
|
+
}), defineBlockAppearancePreset({
|
|
13650
|
+
id: "schedule-details-brand-depth",
|
|
13651
|
+
target: "events",
|
|
13652
|
+
label: "Brand-depth schedule details",
|
|
13653
|
+
blockKinds: ["block.event-details", "block.course-details"],
|
|
13654
|
+
design: {
|
|
13655
|
+
sectionSurface: "brand-depth-band",
|
|
13656
|
+
contentFrame: plainFrame,
|
|
13657
|
+
itemSurface: "none",
|
|
13658
|
+
tileTreatment: "brand-depth"
|
|
13659
|
+
}
|
|
13660
|
+
}), defineBlockAppearancePreset({
|
|
13661
|
+
id: "media-text-flush-feature",
|
|
13662
|
+
target: "media-text",
|
|
13663
|
+
label: "Flush media feature",
|
|
13664
|
+
blockKinds: ["block.media-text"],
|
|
13665
|
+
design: {
|
|
13666
|
+
sectionSurface: "muted-band",
|
|
13667
|
+
contentFrame: flushPanelFrame({ bleed: "start" }),
|
|
13668
|
+
itemSurface: "none"
|
|
13669
|
+
}
|
|
13670
|
+
}), defineBlockAppearancePreset({
|
|
13671
|
+
id: "testimonials-simple-cards",
|
|
13672
|
+
target: "testimonials",
|
|
13673
|
+
label: "Simple testimonial cards",
|
|
13674
|
+
blockKinds: ["block.testimonials"],
|
|
13675
|
+
design: {
|
|
13676
|
+
sectionSurface: "base",
|
|
13677
|
+
contentFrame: plainFrame,
|
|
13678
|
+
itemSurface: "default"
|
|
13679
|
+
}
|
|
13680
|
+
}), defineBlockAppearancePreset({
|
|
13681
|
+
id: "testimonials-raised-panel",
|
|
13682
|
+
target: "testimonials",
|
|
13683
|
+
label: "Raised testimonial panel",
|
|
13684
|
+
blockKinds: ["block.testimonials"],
|
|
13685
|
+
design: {
|
|
13686
|
+
sectionSurface: "muted-band",
|
|
13687
|
+
contentFrame: panelFrame("raised"),
|
|
13688
|
+
itemSurface: "raised"
|
|
13689
|
+
}
|
|
13690
|
+
}), defineBlockAppearancePreset({
|
|
13691
|
+
id: "testimonials-accent-panel",
|
|
13692
|
+
target: "testimonials",
|
|
13693
|
+
label: "Accent testimonial panel",
|
|
13694
|
+
blockKinds: ["block.testimonials"],
|
|
13695
|
+
design: {
|
|
13696
|
+
sectionSurface: "accent-band",
|
|
13697
|
+
contentFrame: panelFrame("raised"),
|
|
13698
|
+
itemSurface: "raised"
|
|
13699
|
+
}
|
|
13700
|
+
}), defineBlockAppearancePreset({
|
|
13701
|
+
id: "testimonials-default-cards",
|
|
13702
|
+
target: "testimonials",
|
|
13703
|
+
label: "Default cards",
|
|
13704
|
+
blockKinds: ["block.testimonials"],
|
|
13705
|
+
design: {
|
|
13706
|
+
sectionSurface: "base",
|
|
13707
|
+
contentFrame: plainFrame,
|
|
13708
|
+
itemSurface: "none",
|
|
13709
|
+
testimonialCardTreatment: "default"
|
|
13710
|
+
}
|
|
13711
|
+
}), defineBlockAppearancePreset({
|
|
13712
|
+
id: "testimonials-statement-cards",
|
|
13713
|
+
target: "testimonials",
|
|
13714
|
+
label: "Statement cards",
|
|
13715
|
+
blockKinds: ["block.testimonials"],
|
|
13716
|
+
design: {
|
|
13717
|
+
sectionSurface: "accent-band",
|
|
13718
|
+
contentFrame: plainFrame,
|
|
13719
|
+
itemSurface: "raised",
|
|
13720
|
+
testimonialCardTreatment: "statement"
|
|
13721
|
+
}
|
|
13722
|
+
}), defineBlockAppearancePreset({
|
|
13723
|
+
id: "testimonials-brand-statement-cards",
|
|
13724
|
+
target: "testimonials",
|
|
13725
|
+
label: "Brand statement cards",
|
|
13726
|
+
blockKinds: ["block.testimonials"],
|
|
13727
|
+
design: {
|
|
13728
|
+
sectionSurface: "brand-depth-band",
|
|
13729
|
+
contentFrame: plainFrame,
|
|
13730
|
+
itemSurface: "raised",
|
|
13731
|
+
testimonialCardTreatment: "statement"
|
|
13732
|
+
}
|
|
13733
|
+
}), defineBlockAppearancePreset({
|
|
13734
|
+
id: "testimonials-non-carded",
|
|
13735
|
+
target: "testimonials",
|
|
13736
|
+
label: "Non-carded",
|
|
13737
|
+
blockKinds: ["block.testimonials"],
|
|
13738
|
+
design: {
|
|
13739
|
+
sectionSurface: "muted-band",
|
|
13740
|
+
contentFrame: plainFrame,
|
|
13741
|
+
itemSurface: "none",
|
|
13742
|
+
testimonialCardTreatment: "non-carded"
|
|
13743
|
+
}
|
|
13744
|
+
}), defineBlockAppearancePreset({
|
|
13745
|
+
id: "testimonials-evergreen-lead",
|
|
13746
|
+
target: "testimonials",
|
|
13747
|
+
label: "Evergreen lead",
|
|
13748
|
+
blockKinds: ["block.testimonials"],
|
|
13749
|
+
constraints: { layoutVariantKeys: ["featured-editorial"] },
|
|
13750
|
+
design: {
|
|
13751
|
+
sectionSurface: "base",
|
|
13752
|
+
contentFrame: plainFrame,
|
|
13753
|
+
itemSurface: "none"
|
|
13754
|
+
}
|
|
13755
|
+
}), defineBlockAppearancePreset({
|
|
13756
|
+
id: "testimonials-room-and-response",
|
|
13757
|
+
target: "testimonials",
|
|
13758
|
+
label: "Room and response",
|
|
13759
|
+
blockKinds: ["block.testimonials"],
|
|
13760
|
+
constraints: { layoutVariantKeys: ["featured-editorial"] },
|
|
13761
|
+
design: {
|
|
13762
|
+
sectionSurface: "base",
|
|
13763
|
+
contentFrame: plainFrame,
|
|
13764
|
+
itemSurface: "none"
|
|
13765
|
+
}
|
|
13766
|
+
}), defineBlockAppearancePreset({
|
|
13767
|
+
id: "testimonials-open-floor",
|
|
13768
|
+
target: "testimonials",
|
|
13769
|
+
label: "Open floor",
|
|
13770
|
+
blockKinds: ["block.testimonials"],
|
|
13771
|
+
constraints: { layoutVariantKeys: ["featured-editorial"] },
|
|
13772
|
+
design: {
|
|
13773
|
+
sectionSurface: "base",
|
|
13774
|
+
contentFrame: plainFrame,
|
|
13775
|
+
itemSurface: "none"
|
|
13776
|
+
}
|
|
13777
|
+
}), defineBlockAppearancePreset({
|
|
13778
|
+
id: "faq-base-accordion",
|
|
13779
|
+
target: "faq",
|
|
13780
|
+
label: "Base accordion FAQ",
|
|
13781
|
+
blockKinds: ["block.faq"],
|
|
13782
|
+
design: {
|
|
13783
|
+
sectionSurface: "base",
|
|
13784
|
+
contentFrame: plainFrame,
|
|
13785
|
+
itemSurface: "default"
|
|
13786
|
+
}
|
|
13787
|
+
}), defineBlockAppearancePreset({
|
|
13788
|
+
id: "faq-contained-help",
|
|
13789
|
+
target: "faq",
|
|
13790
|
+
label: "Contained help panel",
|
|
13791
|
+
blockKinds: ["block.faq"],
|
|
13792
|
+
design: {
|
|
13793
|
+
sectionSurface: "muted-band",
|
|
13794
|
+
contentFrame: panelFrame("inset"),
|
|
13795
|
+
itemSurface: "default"
|
|
13796
|
+
}
|
|
13797
|
+
}), defineBlockAppearancePreset({
|
|
13798
|
+
id: "contact-form-panel",
|
|
13799
|
+
target: "contact-form",
|
|
13800
|
+
label: "Raised form panel",
|
|
13801
|
+
blockKinds: ["block.form"],
|
|
13802
|
+
design: {
|
|
13803
|
+
sectionSurface: "muted-band",
|
|
13804
|
+
contentFrame: panelFrame("raised"),
|
|
13805
|
+
itemSurface: "none"
|
|
13806
|
+
}
|
|
13807
|
+
}), defineBlockAppearancePreset({
|
|
13808
|
+
id: "cta-accent-band",
|
|
13809
|
+
target: "cta",
|
|
13810
|
+
label: "Accent CTA band",
|
|
13811
|
+
blockKinds: ["block.cta-full"],
|
|
13812
|
+
design: {
|
|
13813
|
+
sectionSurface: "accent-band",
|
|
13814
|
+
contentFrame: plainFrame,
|
|
13815
|
+
itemSurface: "none",
|
|
13816
|
+
eyebrowTreatment: "accent"
|
|
13817
|
+
}
|
|
13818
|
+
});
|
|
13834
13819
|
//#endregion
|
|
13835
13820
|
//#region ../theme-core/src/site-styles/headerCtaVariants.ts
|
|
13836
13821
|
function hasButtonVariant(theme, variantId) {
|
|
@@ -15239,6 +15224,21 @@ const themeColorTokenSchema = z$1.string().min(1).refine((value) => Boolean(isTh
|
|
|
15239
15224
|
//#region ../theme-core/src/palette/colors.ts
|
|
15240
15225
|
const HEX_COLOR_REGEX = /^#[0-9a-f]{6}$/;
|
|
15241
15226
|
const NORMALIZABLE_HEX_REGEX = /^#(?:[0-9a-f]{3}|[0-9a-f]{6})$/i;
|
|
15227
|
+
const THEME_PALETTE_COLOR_ORDER = [
|
|
15228
|
+
"primary",
|
|
15229
|
+
"secondary",
|
|
15230
|
+
"accent",
|
|
15231
|
+
"success",
|
|
15232
|
+
"warning",
|
|
15233
|
+
"destructive",
|
|
15234
|
+
"background",
|
|
15235
|
+
"surface",
|
|
15236
|
+
"surfaceAlt",
|
|
15237
|
+
"muted",
|
|
15238
|
+
"text",
|
|
15239
|
+
"primaryForeground",
|
|
15240
|
+
"border"
|
|
15241
|
+
];
|
|
15242
15242
|
const hexColorSchema = z$1.string().regex(HEX_COLOR_REGEX, "Hex must be #RRGGBB (lowercase)").transform((value) => value);
|
|
15243
15243
|
const paletteModeSchema = z$1.enum(["light", "dark"]);
|
|
15244
15244
|
const PALETTE_VALUE_KEY_PREFIX = "palette-value:v1|";
|
|
@@ -15316,6 +15316,12 @@ function requirePaletteColorsFromEntries(entries) {
|
|
|
15316
15316
|
if (result.ok) return result.colors;
|
|
15317
15317
|
throw new Error(`Invalid complete palette: ${result.error.kind}`);
|
|
15318
15318
|
}
|
|
15319
|
+
function paletteColorEntries(colors) {
|
|
15320
|
+
return THEME_PALETTE_COLOR_ORDER.map((name) => ({
|
|
15321
|
+
name,
|
|
15322
|
+
hex: colors[name]
|
|
15323
|
+
}));
|
|
15324
|
+
}
|
|
15319
15325
|
function paletteColorFingerprint(colors) {
|
|
15320
15326
|
return PALETTE_TOKEN_NAMES.map((name) => `${name}:${colors[name]}`).join("|");
|
|
15321
15327
|
}
|
|
@@ -15323,7 +15329,7 @@ function canonicalPaletteHashInput(colors, mode) {
|
|
|
15323
15329
|
return `${mode}|${paletteColorFingerprint(colors)}`;
|
|
15324
15330
|
}
|
|
15325
15331
|
/**
|
|
15326
|
-
*
|
|
15332
|
+
* Stable curated-catalogue identity. Do not reorder roles: the order comes
|
|
15327
15333
|
* from PALETTE_TOKEN_NAMES through canonicalPaletteHashInput.
|
|
15328
15334
|
*/
|
|
15329
15335
|
function paletteValueKey(colors, mode) {
|
|
@@ -16649,13 +16655,6 @@ const warmDarkKirtanGold = defineCuratedPalette({
|
|
|
16649
16655
|
});
|
|
16650
16656
|
//#endregion
|
|
16651
16657
|
//#region ../theme-core/src/palette/curated/index.ts
|
|
16652
|
-
/**
|
|
16653
|
-
* Curated palette library.
|
|
16654
|
-
*
|
|
16655
|
-
* Authoring keys are readable source aliases. Value keys are derived from the
|
|
16656
|
-
* complete mode and semantic colours and are the only curated identity used at
|
|
16657
|
-
* persistence and runtime boundaries.
|
|
16658
|
-
*/
|
|
16659
16658
|
function admitCuratedPaletteDefinition(definition) {
|
|
16660
16659
|
return {
|
|
16661
16660
|
...definition,
|
|
@@ -16682,11 +16681,8 @@ const curatedPalettes = [
|
|
|
16682
16681
|
admitCuratedPaletteDefinition(warmDarkEmber),
|
|
16683
16682
|
admitCuratedPaletteDefinition(warmDarkKirtanGold)
|
|
16684
16683
|
];
|
|
16685
|
-
|
|
16684
|
+
new Map(curatedPalettes.map((palette) => [palette.valueKey, palette]));
|
|
16686
16685
|
const curatedPalettesByAuthoringKey = new Map(curatedPalettes.map((palette) => [palette.authoringKey, palette]));
|
|
16687
|
-
function findCuratedPalette(valueKey) {
|
|
16688
|
-
return curatedPalettesByValueKey.get(valueKey);
|
|
16689
|
-
}
|
|
16690
16686
|
function findCuratedPaletteByAuthoringKey(authoringKey) {
|
|
16691
16687
|
return curatedPalettesByAuthoringKey.get(authoringKey);
|
|
16692
16688
|
}
|
|
@@ -16695,87 +16691,6 @@ function requireCuratedPaletteValueKey(authoringKey) {
|
|
|
16695
16691
|
if (!palette) throw new Error(`Unknown curated palette authoring key "${authoringKey}"`);
|
|
16696
16692
|
return palette.valueKey;
|
|
16697
16693
|
}
|
|
16698
|
-
/** Parses a raw persisted key into catalogue-proven curated membership. */
|
|
16699
|
-
const knownCuratedPaletteValueKeySchema = z$1.string().transform((value, ctx) => {
|
|
16700
|
-
const valueKey = parsePaletteValueKey(value);
|
|
16701
|
-
if (!valueKey) {
|
|
16702
|
-
ctx.addIssue({
|
|
16703
|
-
code: "custom",
|
|
16704
|
-
message: "Invalid canonical palette value key"
|
|
16705
|
-
});
|
|
16706
|
-
return z$1.NEVER;
|
|
16707
|
-
}
|
|
16708
|
-
const palette = findCuratedPalette(valueKey);
|
|
16709
|
-
if (!palette) {
|
|
16710
|
-
ctx.addIssue({
|
|
16711
|
-
code: "custom",
|
|
16712
|
-
message: "Unknown curated palette value key"
|
|
16713
|
-
});
|
|
16714
|
-
return z$1.NEVER;
|
|
16715
|
-
}
|
|
16716
|
-
return palette.valueKey;
|
|
16717
|
-
});
|
|
16718
|
-
//#endregion
|
|
16719
|
-
//#region ../theme-core/src/palette/selection.ts
|
|
16720
|
-
const sitePaletteIdSchema = z$1.string().uuid().transform((value) => value);
|
|
16721
|
-
const sitePaletteVersionSchema = z$1.number().int().nonnegative().transform((value) => value);
|
|
16722
|
-
const paletteSelectionSchema = z$1.discriminatedUnion("kind", [z$1.object({
|
|
16723
|
-
kind: z$1.literal("curated"),
|
|
16724
|
-
valueKey: knownCuratedPaletteValueKeySchema
|
|
16725
|
-
}), z$1.object({
|
|
16726
|
-
kind: z$1.literal("site"),
|
|
16727
|
-
paletteId: sitePaletteIdSchema
|
|
16728
|
-
})]);
|
|
16729
|
-
const onboardingPaletteOriginSchema = z$1.object({
|
|
16730
|
-
kind: z$1.literal("onboarding"),
|
|
16731
|
-
sourceKey: z$1.string().min(1).nullable()
|
|
16732
|
-
});
|
|
16733
|
-
const curatedForkPaletteOriginSchema = z$1.object({
|
|
16734
|
-
kind: z$1.literal("curated-fork"),
|
|
16735
|
-
sourceValueKey: paletteValueKeySchema
|
|
16736
|
-
});
|
|
16737
|
-
const manualPaletteOriginSchema = z$1.object({ kind: z$1.literal("manual") });
|
|
16738
|
-
const legacyCustomizedPaletteOriginSchema = z$1.object({
|
|
16739
|
-
kind: z$1.literal("legacy-customized"),
|
|
16740
|
-
sourceKey: z$1.string().min(1).nullable()
|
|
16741
|
-
});
|
|
16742
|
-
const sitePaletteOriginSchema = z$1.discriminatedUnion("kind", [
|
|
16743
|
-
onboardingPaletteOriginSchema,
|
|
16744
|
-
curatedForkPaletteOriginSchema,
|
|
16745
|
-
manualPaletteOriginSchema,
|
|
16746
|
-
legacyCustomizedPaletteOriginSchema
|
|
16747
|
-
]);
|
|
16748
|
-
const editorSitePaletteOriginSchema = z$1.discriminatedUnion("kind", [z$1.object({
|
|
16749
|
-
kind: z$1.literal("curated-fork"),
|
|
16750
|
-
sourceValueKey: knownCuratedPaletteValueKeySchema
|
|
16751
|
-
}), manualPaletteOriginSchema]);
|
|
16752
|
-
z$1.object({
|
|
16753
|
-
id: sitePaletteIdSchema,
|
|
16754
|
-
colors: paletteColorsSchema,
|
|
16755
|
-
mode: paletteModeSchema,
|
|
16756
|
-
origin: sitePaletteOriginSchema,
|
|
16757
|
-
version: sitePaletteVersionSchema
|
|
16758
|
-
});
|
|
16759
|
-
z$1.discriminatedUnion("kind", [
|
|
16760
|
-
z$1.object({ kind: z$1.literal("preserve") }),
|
|
16761
|
-
z$1.object({
|
|
16762
|
-
kind: z$1.literal("select"),
|
|
16763
|
-
selection: paletteSelectionSchema
|
|
16764
|
-
}),
|
|
16765
|
-
z$1.object({
|
|
16766
|
-
kind: z$1.literal("create-site"),
|
|
16767
|
-
colors: paletteColorsSchema,
|
|
16768
|
-
mode: paletteModeSchema,
|
|
16769
|
-
origin: editorSitePaletteOriginSchema
|
|
16770
|
-
}),
|
|
16771
|
-
z$1.object({
|
|
16772
|
-
kind: z$1.literal("update-site"),
|
|
16773
|
-
paletteId: sitePaletteIdSchema,
|
|
16774
|
-
expectedVersion: sitePaletteVersionSchema,
|
|
16775
|
-
colors: paletteColorsSchema,
|
|
16776
|
-
mode: paletteModeSchema
|
|
16777
|
-
})
|
|
16778
|
-
]);
|
|
16779
16694
|
const defaultThemeTokens = {
|
|
16780
16695
|
color: {
|
|
16781
16696
|
"background/base": "#ffffff",
|
|
@@ -16984,6 +16899,32 @@ function parseBackgroundAppearanceColorToken(value) {
|
|
|
16984
16899
|
function uniqueStrings(values) {
|
|
16985
16900
|
return Array.from(new Set(values));
|
|
16986
16901
|
}
|
|
16902
|
+
const headerInteractionPaletteSchema = z$1.enum([
|
|
16903
|
+
"primary",
|
|
16904
|
+
"secondary",
|
|
16905
|
+
"accent"
|
|
16906
|
+
]);
|
|
16907
|
+
//#endregion
|
|
16908
|
+
//#region ../theme-core/src/site-styles/headerInteractionPalette.ts
|
|
16909
|
+
const clearSplitInteractionPalette = defineLookOptionGroup({
|
|
16910
|
+
id: "interaction-palette",
|
|
16911
|
+
label: "Hover colour",
|
|
16912
|
+
defaultOptionId: "accent",
|
|
16913
|
+
options: [
|
|
16914
|
+
{
|
|
16915
|
+
id: "accent",
|
|
16916
|
+
label: "Accent"
|
|
16917
|
+
},
|
|
16918
|
+
{
|
|
16919
|
+
id: "primary",
|
|
16920
|
+
label: "Primary"
|
|
16921
|
+
},
|
|
16922
|
+
{
|
|
16923
|
+
id: "secondary",
|
|
16924
|
+
label: "Secondary"
|
|
16925
|
+
}
|
|
16926
|
+
]
|
|
16927
|
+
});
|
|
16987
16928
|
//#endregion
|
|
16988
16929
|
//#region ../theme-core/src/site-styles/logoBranding.ts
|
|
16989
16930
|
const logoTextConfidenceValues = [
|
|
@@ -17206,7 +17147,7 @@ const overlayLogoAccommodations = [
|
|
|
17206
17147
|
* optional nested styling fields that would otherwise leak from another Look.
|
|
17207
17148
|
*/
|
|
17208
17149
|
function baseHeader(theme) {
|
|
17209
|
-
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;
|
|
17150
|
+
const { navLinkStyle: _navLinkStyle, navFontRole: _navFontRole, navTypography: _navTypography, navTextSize: _navTextSize, interactionPalette: _interactionPalette, dropdownStyle: _dropdownStyle, ctaVariant: _ctaVariant, navContainer: _navContainer, container: _container, shadow: _shadow, logo: _logo, logoText: _logoText, border: _border, ...header } = theme.header;
|
|
17210
17151
|
return {
|
|
17211
17152
|
...header,
|
|
17212
17153
|
navContainer: {
|
|
@@ -17221,7 +17162,6 @@ const headerLayoutCatalog = defineExactCatalog()([
|
|
|
17221
17162
|
id: asHeaderLayoutId("classic"),
|
|
17222
17163
|
label: "Classic",
|
|
17223
17164
|
description: "Logo and navigation in one practical horizontal row.",
|
|
17224
|
-
structure: "inline-classic",
|
|
17225
17165
|
variant: "classic",
|
|
17226
17166
|
defaultPositioning: "sticky",
|
|
17227
17167
|
shrinkOnScroll: false
|
|
@@ -17230,7 +17170,6 @@ const headerLayoutCatalog = defineExactCatalog()([
|
|
|
17230
17170
|
id: asHeaderLayoutId("centered"),
|
|
17231
17171
|
label: "Centered",
|
|
17232
17172
|
description: "Logo centered above a balanced navigation row.",
|
|
17233
|
-
structure: "centered-stack",
|
|
17234
17173
|
variant: "centered",
|
|
17235
17174
|
defaultPositioning: "static",
|
|
17236
17175
|
shrinkOnScroll: false,
|
|
@@ -17246,7 +17185,6 @@ const headerLayoutCatalog = defineExactCatalog()([
|
|
|
17246
17185
|
id: asHeaderLayoutId("floating"),
|
|
17247
17186
|
label: "Floating",
|
|
17248
17187
|
description: "Detached header chrome that sits over the opening section.",
|
|
17249
|
-
structure: "floating-shell",
|
|
17250
17188
|
variant: "floating",
|
|
17251
17189
|
defaultPositioning: "sticky",
|
|
17252
17190
|
shrinkOnScroll: true,
|
|
@@ -17408,10 +17346,13 @@ const headerStyleCatalog = defineExactCatalog()([
|
|
|
17408
17346
|
label: "Clear Split",
|
|
17409
17347
|
description: "Floating logo with transparent navigation and no shared shell.",
|
|
17410
17348
|
supportedLayoutIds: supportedLayouts(["floating"]),
|
|
17411
|
-
navInteraction: "
|
|
17349
|
+
navInteraction: "pill-background",
|
|
17412
17350
|
surface: "floating",
|
|
17413
|
-
defaultDepth: "
|
|
17351
|
+
defaultDepth: "line",
|
|
17414
17352
|
navTypography: "plain",
|
|
17353
|
+
openingForegroundTarget: "all",
|
|
17354
|
+
scrollTreatment: "contrast-glass",
|
|
17355
|
+
interactionPalette: clearSplitInteractionPalette,
|
|
17415
17356
|
moods: ["editorial", "calm"]
|
|
17416
17357
|
},
|
|
17417
17358
|
{
|
|
@@ -17434,6 +17375,7 @@ const headerStyleCatalog = defineExactCatalog()([
|
|
|
17434
17375
|
surface: "floating",
|
|
17435
17376
|
defaultDepth: "shadow",
|
|
17436
17377
|
navTypography: "quiet-caps",
|
|
17378
|
+
openingForegroundTarget: "brand-only",
|
|
17437
17379
|
moods: ["expressive"]
|
|
17438
17380
|
},
|
|
17439
17381
|
{
|
|
@@ -17445,6 +17387,7 @@ const headerStyleCatalog = defineExactCatalog()([
|
|
|
17445
17387
|
surface: "floating",
|
|
17446
17388
|
defaultDepth: "shadow",
|
|
17447
17389
|
navTypography: "heading",
|
|
17390
|
+
openingForegroundTarget: "brand-only",
|
|
17448
17391
|
moods: ["calm", "editorial"]
|
|
17449
17392
|
}
|
|
17450
17393
|
]);
|
|
@@ -17639,7 +17582,7 @@ function applyNavTypography(style, typography) {
|
|
|
17639
17582
|
textSize: "sm",
|
|
17640
17583
|
letterSpacing: "wider"
|
|
17641
17584
|
};
|
|
17642
|
-
default: return assertNever$
|
|
17585
|
+
default: return assertNever$15(typography, "Unhandled header nav typography");
|
|
17643
17586
|
}
|
|
17644
17587
|
}
|
|
17645
17588
|
function underlineNavLinkStyle(colorToken, underlineColorToken, typography = "plain") {
|
|
@@ -17668,7 +17611,7 @@ function themedHeaderShadow(theme) {
|
|
|
17668
17611
|
case "low": return { elevation: "sm" };
|
|
17669
17612
|
case "medium": return { elevation: "md" };
|
|
17670
17613
|
case "high": return { elevation: "lg" };
|
|
17671
|
-
default: return assertNever$
|
|
17614
|
+
default: return assertNever$15(theme.shadow.elevation, "Unhandled theme shadow elevation");
|
|
17672
17615
|
}
|
|
17673
17616
|
}
|
|
17674
17617
|
function solidBrandHeader(theme) {
|
|
@@ -17946,13 +17889,6 @@ const headerLookCatalog = defineExactCatalog()([
|
|
|
17946
17889
|
{
|
|
17947
17890
|
id: asHeaderLookId("clean-base"),
|
|
17948
17891
|
label: "Clean base",
|
|
17949
|
-
visualTreatment: "solid-neutral",
|
|
17950
|
-
layoutBehavior: "sticky",
|
|
17951
|
-
configuration: {
|
|
17952
|
-
structure: "inline-classic",
|
|
17953
|
-
treatment: "solid-neutral",
|
|
17954
|
-
behavior: "sticky"
|
|
17955
|
-
},
|
|
17956
17892
|
openingRequirement: "none",
|
|
17957
17893
|
logoAccommodations: inlineClassicLogoAccommodations,
|
|
17958
17894
|
compile: cleanBaseHeader
|
|
@@ -17960,13 +17896,6 @@ const headerLookCatalog = defineExactCatalog()([
|
|
|
17960
17896
|
{
|
|
17961
17897
|
id: asHeaderLookId("classic-centered-nav"),
|
|
17962
17898
|
label: "Centered nav",
|
|
17963
|
-
visualTreatment: "solid-neutral",
|
|
17964
|
-
layoutBehavior: "sticky",
|
|
17965
|
-
configuration: {
|
|
17966
|
-
structure: "inline-classic",
|
|
17967
|
-
treatment: "solid-neutral",
|
|
17968
|
-
behavior: "sticky"
|
|
17969
|
-
},
|
|
17970
17899
|
openingRequirement: "none",
|
|
17971
17900
|
maxRecommendedNavItems: 6,
|
|
17972
17901
|
logoAccommodations: inlineClassicLogoAccommodations,
|
|
@@ -17975,13 +17904,6 @@ const headerLookCatalog = defineExactCatalog()([
|
|
|
17975
17904
|
{
|
|
17976
17905
|
id: asHeaderLookId("brand-solid"),
|
|
17977
17906
|
label: "Brand solid",
|
|
17978
|
-
visualTreatment: "solid-brand",
|
|
17979
|
-
layoutBehavior: "sticky-shrink",
|
|
17980
|
-
configuration: {
|
|
17981
|
-
structure: "inline-classic",
|
|
17982
|
-
treatment: "solid-brand",
|
|
17983
|
-
behavior: "sticky-shrink"
|
|
17984
|
-
},
|
|
17985
17907
|
openingRequirement: "none",
|
|
17986
17908
|
logoAccommodations: inlineClassicLogoAccommodations,
|
|
17987
17909
|
compile: solidBrandHeader
|
|
@@ -17989,13 +17911,6 @@ const headerLookCatalog = defineExactCatalog()([
|
|
|
17989
17911
|
{
|
|
17990
17912
|
id: asHeaderLookId("serif-line"),
|
|
17991
17913
|
label: "Serif line",
|
|
17992
|
-
visualTreatment: "light-serif",
|
|
17993
|
-
layoutBehavior: "sticky",
|
|
17994
|
-
configuration: {
|
|
17995
|
-
structure: "centered-stack",
|
|
17996
|
-
treatment: "light-serif",
|
|
17997
|
-
behavior: "sticky"
|
|
17998
|
-
},
|
|
17999
17914
|
openingRequirement: "none",
|
|
18000
17915
|
maxRecommendedNavItems: 6,
|
|
18001
17916
|
logoAccommodations: centeredLogoAccommodations,
|
|
@@ -18004,13 +17919,6 @@ const headerLookCatalog = defineExactCatalog()([
|
|
|
18004
17919
|
{
|
|
18005
17920
|
id: asHeaderLookId("centered-calm"),
|
|
18006
17921
|
label: "Centered calm",
|
|
18007
|
-
visualTreatment: "light-serif",
|
|
18008
|
-
layoutBehavior: "normal-flow",
|
|
18009
|
-
configuration: {
|
|
18010
|
-
structure: "centered-stack",
|
|
18011
|
-
treatment: "light-serif",
|
|
18012
|
-
behavior: "normal-flow"
|
|
18013
|
-
},
|
|
18014
17922
|
openingRequirement: "none",
|
|
18015
17923
|
maxRecommendedNavItems: 5,
|
|
18016
17924
|
logoAccommodations: centeredLogoAccommodations,
|
|
@@ -18019,13 +17927,6 @@ const headerLookCatalog = defineExactCatalog()([
|
|
|
18019
17927
|
{
|
|
18020
17928
|
id: asHeaderLookId("practical-utility"),
|
|
18021
17929
|
label: "Practical utility",
|
|
18022
|
-
visualTreatment: "solid-neutral",
|
|
18023
|
-
layoutBehavior: "sticky-shrink",
|
|
18024
|
-
configuration: {
|
|
18025
|
-
structure: "inline-classic",
|
|
18026
|
-
treatment: "solid-neutral",
|
|
18027
|
-
behavior: "sticky-shrink"
|
|
18028
|
-
},
|
|
18029
17930
|
openingRequirement: "none",
|
|
18030
17931
|
requiresProminentCta: true,
|
|
18031
17932
|
logoAccommodations: inlineClassicLogoAccommodations,
|
|
@@ -18034,13 +17935,6 @@ const headerLookCatalog = defineExactCatalog()([
|
|
|
18034
17935
|
{
|
|
18035
17936
|
id: asHeaderLookId("minimal-transparent"),
|
|
18036
17937
|
label: "Minimal transparent",
|
|
18037
|
-
visualTreatment: "minimal-transparent",
|
|
18038
|
-
layoutBehavior: "normal-flow",
|
|
18039
|
-
configuration: {
|
|
18040
|
-
structure: "inline-classic",
|
|
18041
|
-
treatment: "minimal-transparent",
|
|
18042
|
-
behavior: "normal-flow"
|
|
18043
|
-
},
|
|
18044
17938
|
openingRequirement: "reserved-space-ok",
|
|
18045
17939
|
logoAccommodations: inlineClassicLogoAccommodations,
|
|
18046
17940
|
compile: minimalTransparentHeader
|
|
@@ -18048,13 +17942,6 @@ const headerLookCatalog = defineExactCatalog()([
|
|
|
18048
17942
|
{
|
|
18049
17943
|
id: asHeaderLookId("transparent-overlay"),
|
|
18050
17944
|
label: "Transparent overlay",
|
|
18051
|
-
visualTreatment: "transparent-overlay",
|
|
18052
|
-
layoutBehavior: "fixed-overlay",
|
|
18053
|
-
configuration: {
|
|
18054
|
-
structure: "inline-classic",
|
|
18055
|
-
treatment: "transparent-overlay",
|
|
18056
|
-
behavior: "fixed-overlay"
|
|
18057
|
-
},
|
|
18058
17945
|
openingRequirement: "requires-image-hero-with-contrast-overlay",
|
|
18059
17946
|
maxRecommendedNavItems: 5,
|
|
18060
17947
|
logoAccommodations: overlayLogoAccommodations,
|
|
@@ -18063,24 +17950,13 @@ const headerLookCatalog = defineExactCatalog()([
|
|
|
18063
17950
|
{
|
|
18064
17951
|
id: asHeaderLookId("floating-glass"),
|
|
18065
17952
|
label: "Floating glass",
|
|
18066
|
-
visualTreatment: "floating-glass",
|
|
18067
|
-
layoutBehavior: "fixed-floating",
|
|
18068
|
-
configuration: {
|
|
18069
|
-
structure: "floating-shell",
|
|
18070
|
-
treatment: "floating-glass",
|
|
18071
|
-
behavior: "fixed-floating"
|
|
18072
|
-
},
|
|
18073
17953
|
openingRequirement: "requires-image-hero-with-contrast-overlay",
|
|
18074
17954
|
maxRecommendedNavItems: 5,
|
|
18075
17955
|
logoAccommodations: overlayLogoAccommodations,
|
|
18076
17956
|
compile: floatingGlassHeader
|
|
18077
17957
|
}
|
|
18078
17958
|
]);
|
|
18079
|
-
new Set(headerLookCatalog.map((look) => headerConfigurationKey(look.configuration)));
|
|
18080
17959
|
new Map(headerLookCatalog.map((look) => [look.id, look]));
|
|
18081
|
-
function headerConfigurationKey(configuration) {
|
|
18082
|
-
return `${configuration.structure}:${configuration.treatment}:${configuration.behavior}`;
|
|
18083
|
-
}
|
|
18084
17960
|
//#endregion
|
|
18085
17961
|
//#region ../theme-core/src/site-styles/sectionTransitions.ts
|
|
18086
17962
|
function boundaryRuntimeMetrics(family, size, heightExpression) {
|
|
@@ -18284,8 +18160,6 @@ const VARIANT_ROLES = [
|
|
|
18284
18160
|
"secondary",
|
|
18285
18161
|
"outline",
|
|
18286
18162
|
"ghost",
|
|
18287
|
-
"link",
|
|
18288
|
-
"tertiary",
|
|
18289
18163
|
"accent"
|
|
18290
18164
|
];
|
|
18291
18165
|
function isVariantRole(value) {
|
|
@@ -18297,7 +18171,7 @@ function isVariantRole(value) {
|
|
|
18297
18171
|
* IDs become class selectors, so keep the contract deliberately narrower than
|
|
18298
18172
|
* an arbitrary string and shared with every authoring/runtime boundary.
|
|
18299
18173
|
*/
|
|
18300
|
-
const buttonVariantIdSchema = z$1.string().min(1).max(50).regex(/^[a-z0-9-]+$/, "Button variant IDs may contain lowercase letters, numbers, and hyphens only");
|
|
18174
|
+
const buttonVariantIdSchema = z$1.string().min(1).max(50).regex(/^[a-z0-9-]+$/, "Button variant IDs may contain lowercase letters, numbers, and hyphens only").refine((value) => value !== "link" && value !== "tertiary", { message: "Retired button role IDs are not valid variant IDs" });
|
|
18301
18175
|
function asSpecialVariantId(value) {
|
|
18302
18176
|
const parsed = buttonVariantIdSchema.safeParse(value);
|
|
18303
18177
|
if (!parsed.success) throw new Error("SpecialVariantId must be a CSS-safe button variant ID");
|
|
@@ -21488,39 +21362,39 @@ function defaultTypographyForRecipe(recipe) {
|
|
|
21488
21362
|
}
|
|
21489
21363
|
//#endregion
|
|
21490
21364
|
//#region ../theme-core/src/lib/media.ts
|
|
21491
|
-
const hotspotSchema
|
|
21365
|
+
const hotspotSchema = z.object({
|
|
21492
21366
|
x: z.number().min(0).max(1),
|
|
21493
21367
|
y: z.number().min(0).max(1),
|
|
21494
21368
|
radius: z.number().optional()
|
|
21495
21369
|
});
|
|
21496
|
-
const rotationSchema
|
|
21370
|
+
const rotationSchema = z.union([
|
|
21497
21371
|
z.literal(0),
|
|
21498
21372
|
z.literal(90),
|
|
21499
21373
|
z.literal(180),
|
|
21500
21374
|
z.literal(270)
|
|
21501
21375
|
]);
|
|
21502
|
-
const rectSchema
|
|
21376
|
+
const rectSchema = z.tuple([
|
|
21503
21377
|
z.number(),
|
|
21504
21378
|
z.number(),
|
|
21505
21379
|
z.number(),
|
|
21506
21380
|
z.number()
|
|
21507
21381
|
]);
|
|
21508
|
-
const aspectCropSchema
|
|
21382
|
+
const aspectCropSchema = z.object({
|
|
21509
21383
|
aspect: z.preprocess((value) => value == null ? void 0 : value, z.string().optional()),
|
|
21510
|
-
rect: z.preprocess((value) => value == null ? void 0 : value, rectSchema
|
|
21511
|
-
hotspot: z.preprocess((value) => value == null ? void 0 : value, hotspotSchema
|
|
21512
|
-
rotation: z.preprocess((value) => value == null ? void 0 : value, rotationSchema
|
|
21384
|
+
rect: z.preprocess((value) => value == null ? void 0 : value, rectSchema.optional()),
|
|
21385
|
+
hotspot: z.preprocess((value) => value == null ? void 0 : value, hotspotSchema.optional()),
|
|
21386
|
+
rotation: z.preprocess((value) => value == null ? void 0 : value, rotationSchema.optional())
|
|
21513
21387
|
});
|
|
21514
|
-
const transformSchema
|
|
21388
|
+
const transformSchema = z.object({
|
|
21515
21389
|
aspectCrops: z.preprocess((value) => {
|
|
21516
21390
|
if (!value || typeof value !== "object" || Array.isArray(value)) return;
|
|
21517
21391
|
return value;
|
|
21518
|
-
}, z.record(z.string(), aspectCropSchema
|
|
21519
|
-
rect: rectSchema
|
|
21520
|
-
hotspot: hotspotSchema
|
|
21521
|
-
rotation: rotationSchema
|
|
21392
|
+
}, z.record(z.string(), aspectCropSchema.catch({}))).optional(),
|
|
21393
|
+
rect: rectSchema.optional(),
|
|
21394
|
+
hotspot: hotspotSchema.optional(),
|
|
21395
|
+
rotation: rotationSchema.optional()
|
|
21522
21396
|
});
|
|
21523
|
-
const mediaSchema
|
|
21397
|
+
const mediaSchema = z.object({
|
|
21524
21398
|
type: z.enum([
|
|
21525
21399
|
"image",
|
|
21526
21400
|
"video",
|
|
@@ -21541,7 +21415,35 @@ const mediaSchema$1 = z.object({
|
|
|
21541
21415
|
height: z.number().optional(),
|
|
21542
21416
|
storageBucket: z.string().optional(),
|
|
21543
21417
|
storagePath: z.string().optional(),
|
|
21544
|
-
transform: transformSchema
|
|
21418
|
+
transform: transformSchema.optional()
|
|
21419
|
+
});
|
|
21420
|
+
//#endregion
|
|
21421
|
+
//#region ../theme-core/src/palette/schema.ts
|
|
21422
|
+
const colourHexString = z$1.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
|
|
21423
|
+
const paletteColorSchema = z$1.object({
|
|
21424
|
+
name: z$1.string().min(1),
|
|
21425
|
+
hex: colourHexString
|
|
21426
|
+
});
|
|
21427
|
+
const paletteMetaSchema = z$1.object({ mode: z$1.enum(["light", "dark"]) });
|
|
21428
|
+
const paletteSchema = z$1.object({
|
|
21429
|
+
colors: z$1.array(paletteColorSchema),
|
|
21430
|
+
meta: paletteMetaSchema
|
|
21431
|
+
}).transform((palette, ctx) => {
|
|
21432
|
+
const colors = paletteColorsFromEntries(palette.colors);
|
|
21433
|
+
if (!colors.ok) {
|
|
21434
|
+
ctx.addIssue({
|
|
21435
|
+
code: "custom",
|
|
21436
|
+
message: `Invalid complete palette: ${colors.error.kind}`
|
|
21437
|
+
});
|
|
21438
|
+
return z$1.NEVER;
|
|
21439
|
+
}
|
|
21440
|
+
return {
|
|
21441
|
+
colors: paletteColorEntries(colors.colors).map(({ name, hex }) => ({
|
|
21442
|
+
name: String(name),
|
|
21443
|
+
hex: String(hex)
|
|
21444
|
+
})),
|
|
21445
|
+
meta: palette.meta
|
|
21446
|
+
};
|
|
21545
21447
|
});
|
|
21546
21448
|
//#endregion
|
|
21547
21449
|
//#region ../theme-core/src/surfaces/foregroundRoles.ts
|
|
@@ -22346,264 +22248,6 @@ function generateInteractiveChildInheritanceCSS(selector) {
|
|
|
22346
22248
|
return `\n${selector} * {\n font-family: inherit;\n font-weight: inherit;\n font-style: inherit;\n letter-spacing: inherit;\n text-transform: inherit;\n color: inherit;\n}\n`;
|
|
22347
22249
|
}
|
|
22348
22250
|
//#endregion
|
|
22349
|
-
//#region ../theme-core/src/buttons/effects/presets/background.ts
|
|
22350
|
-
/**
|
|
22351
|
-
* Darken background on hover
|
|
22352
|
-
*
|
|
22353
|
-
* Works with solid backgrounds only. Darkens the background color by adjusting the shade.
|
|
22354
|
-
*/
|
|
22355
|
-
const darkenBackgroundEffect = {
|
|
22356
|
-
id: "darken-background",
|
|
22357
|
-
name: "Darken on Hover",
|
|
22358
|
-
description: "Darkens the background color on hover",
|
|
22359
|
-
category: "background",
|
|
22360
|
-
pseudoElement: "none",
|
|
22361
|
-
applicableTo: ["button"],
|
|
22362
|
-
customizableOption: {
|
|
22363
|
-
name: "amount",
|
|
22364
|
-
type: "select",
|
|
22365
|
-
label: "Darken Amount (shade step)",
|
|
22366
|
-
default: 100,
|
|
22367
|
-
options: [
|
|
22368
|
-
0,
|
|
22369
|
-
100,
|
|
22370
|
-
200,
|
|
22371
|
-
300,
|
|
22372
|
-
400,
|
|
22373
|
-
500,
|
|
22374
|
-
600,
|
|
22375
|
-
700,
|
|
22376
|
-
800,
|
|
22377
|
-
900
|
|
22378
|
-
]
|
|
22379
|
-
},
|
|
22380
|
-
isApplicable: (buttonConfig) => {
|
|
22381
|
-
return buttonConfig.background.type === "solid";
|
|
22382
|
-
},
|
|
22383
|
-
generateCSS: (ctx) => {
|
|
22384
|
-
const { themeId, variantId, options, tokens, buttonConfig } = ctx;
|
|
22385
|
-
if (buttonConfig.background.type !== "solid") return "";
|
|
22386
|
-
const amount = options.amount || 100;
|
|
22387
|
-
const baseToken = buttonConfig.background.colorToken ?? "primary-500";
|
|
22388
|
-
const darkerToken = tokens.adjustShade(baseToken, amount);
|
|
22389
|
-
return `
|
|
22390
|
-
:where([data-theme-scope="${themeId}"]) .${variantId}:hover {
|
|
22391
|
-
background-color: ${tokens.getColor(darkerToken)};
|
|
22392
|
-
}
|
|
22393
|
-
`;
|
|
22394
|
-
}
|
|
22395
|
-
};
|
|
22396
|
-
/**
|
|
22397
|
-
* Lighten background on hover
|
|
22398
|
-
*
|
|
22399
|
-
* Works with solid backgrounds only. Lightens the background color by adjusting the shade.
|
|
22400
|
-
*/
|
|
22401
|
-
const lightenBackgroundEffect = {
|
|
22402
|
-
id: "lighten-background",
|
|
22403
|
-
name: "Lighten on Hover",
|
|
22404
|
-
description: "Lightens the background color on hover",
|
|
22405
|
-
category: "background",
|
|
22406
|
-
pseudoElement: "none",
|
|
22407
|
-
applicableTo: ["button"],
|
|
22408
|
-
customizableOption: {
|
|
22409
|
-
name: "amount",
|
|
22410
|
-
type: "select",
|
|
22411
|
-
label: "Lighten Amount (shade step)",
|
|
22412
|
-
default: 100,
|
|
22413
|
-
options: [
|
|
22414
|
-
0,
|
|
22415
|
-
100,
|
|
22416
|
-
200,
|
|
22417
|
-
300,
|
|
22418
|
-
400,
|
|
22419
|
-
500,
|
|
22420
|
-
600,
|
|
22421
|
-
700,
|
|
22422
|
-
800,
|
|
22423
|
-
900
|
|
22424
|
-
]
|
|
22425
|
-
},
|
|
22426
|
-
isApplicable: (buttonConfig) => {
|
|
22427
|
-
return buttonConfig.background.type === "solid";
|
|
22428
|
-
},
|
|
22429
|
-
generateCSS: (ctx) => {
|
|
22430
|
-
const { themeId, variantId, options, tokens, buttonConfig } = ctx;
|
|
22431
|
-
if (buttonConfig.background.type !== "solid") return "";
|
|
22432
|
-
const amount = options.amount || 100;
|
|
22433
|
-
const baseToken = buttonConfig.background.colorToken ?? "primary-500";
|
|
22434
|
-
const lighterToken = tokens.adjustShade(baseToken, -amount);
|
|
22435
|
-
return `
|
|
22436
|
-
:where([data-theme-scope="${themeId}"]) .${variantId}:hover {
|
|
22437
|
-
background-color: ${tokens.getColor(lighterToken)};
|
|
22438
|
-
}
|
|
22439
|
-
`;
|
|
22440
|
-
}
|
|
22441
|
-
};
|
|
22442
|
-
/**
|
|
22443
|
-
* Fade background on hover (reduce opacity)
|
|
22444
|
-
*
|
|
22445
|
-
* Works with all background types.
|
|
22446
|
-
*/
|
|
22447
|
-
const fadeBackgroundEffect = {
|
|
22448
|
-
id: "fade-background",
|
|
22449
|
-
name: "Fade on Hover",
|
|
22450
|
-
description: "Reduces background opacity on hover",
|
|
22451
|
-
category: "background",
|
|
22452
|
-
pseudoElement: "none",
|
|
22453
|
-
applicableTo: ["nav-link"],
|
|
22454
|
-
customizableOption: {
|
|
22455
|
-
name: "opacity",
|
|
22456
|
-
type: "percentage",
|
|
22457
|
-
label: "Hover Opacity",
|
|
22458
|
-
default: 80
|
|
22459
|
-
},
|
|
22460
|
-
generateCSS: (ctx) => {
|
|
22461
|
-
const { themeId, variantId, options } = ctx;
|
|
22462
|
-
return `
|
|
22463
|
-
:where([data-theme-scope="${themeId}"]) .${variantId}:hover {
|
|
22464
|
-
opacity: ${(options.opacity || 80) / 100};
|
|
22465
|
-
}
|
|
22466
|
-
`;
|
|
22467
|
-
}
|
|
22468
|
-
};
|
|
22469
|
-
/**
|
|
22470
|
-
* Reduce opacity on hover (simple opacity reduction)
|
|
22471
|
-
*
|
|
22472
|
-
* Navigation-link effect that reduces opacity by a percentage (default 15%).
|
|
22473
|
-
*/
|
|
22474
|
-
const opacityReduceEffect = {
|
|
22475
|
-
id: "opacity-reduce",
|
|
22476
|
-
name: "Reduce Opacity",
|
|
22477
|
-
description: "Reduces navigation-link opacity on hover by a percentage",
|
|
22478
|
-
category: "background",
|
|
22479
|
-
pseudoElement: "none",
|
|
22480
|
-
applicableTo: ["nav-link"],
|
|
22481
|
-
customizableOption: {
|
|
22482
|
-
name: "reduction",
|
|
22483
|
-
type: "percentage",
|
|
22484
|
-
label: "Opacity Reduction",
|
|
22485
|
-
default: 15
|
|
22486
|
-
},
|
|
22487
|
-
generateCSS: (ctx) => {
|
|
22488
|
-
const { themeId, variantId, options } = ctx;
|
|
22489
|
-
return `
|
|
22490
|
-
:where([data-theme-scope="${themeId}"]) .${variantId}:hover {
|
|
22491
|
-
opacity: ${1 - (options.reduction || 15) / 100};
|
|
22492
|
-
}
|
|
22493
|
-
`;
|
|
22494
|
-
}
|
|
22495
|
-
};
|
|
22496
|
-
/**
|
|
22497
|
-
* Animated gradient background
|
|
22498
|
-
*
|
|
22499
|
-
* Animates a gradient background by shifting its position on hover.
|
|
22500
|
-
* Works with gradient backgrounds only.
|
|
22501
|
-
*
|
|
22502
|
-
* Sets background-size to 200% and animates background-position from left to right.
|
|
22503
|
-
*/
|
|
22504
|
-
const animatedGradientEffect = {
|
|
22505
|
-
id: "animated-gradient",
|
|
22506
|
-
name: "Animated Gradient",
|
|
22507
|
-
description: "Animates gradient position on hover",
|
|
22508
|
-
category: "background",
|
|
22509
|
-
pseudoElement: "none",
|
|
22510
|
-
applicableTo: ["button"],
|
|
22511
|
-
customizableOption: {
|
|
22512
|
-
name: "direction",
|
|
22513
|
-
type: "select",
|
|
22514
|
-
label: "Animation Direction",
|
|
22515
|
-
default: "horizontal",
|
|
22516
|
-
options: ["horizontal", "vertical"]
|
|
22517
|
-
},
|
|
22518
|
-
isApplicable: (buttonConfig) => {
|
|
22519
|
-
return buttonConfig.background.type === "gradient";
|
|
22520
|
-
},
|
|
22521
|
-
generateCSS: (ctx) => {
|
|
22522
|
-
const { themeId, variantId, options, buttonConfig } = ctx;
|
|
22523
|
-
if (buttonConfig.background.type !== "gradient") return "";
|
|
22524
|
-
const direction = options.direction || "horizontal";
|
|
22525
|
-
return `
|
|
22526
|
-
/* Setup animated gradient */
|
|
22527
|
-
:where([data-theme-scope="${themeId}"]) .${variantId} {
|
|
22528
|
-
background-size: ${direction === "horizontal" ? "200% auto" : "auto 200%"};
|
|
22529
|
-
background-position: left center;
|
|
22530
|
-
transition: background-position 0.3s ease;
|
|
22531
|
-
}
|
|
22532
|
-
|
|
22533
|
-
/* Animate gradient on hover */
|
|
22534
|
-
:where([data-theme-scope="${themeId}"]) .${variantId}:hover {
|
|
22535
|
-
background-position: ${direction === "horizontal" ? "right center" : "center bottom"};
|
|
22536
|
-
}
|
|
22537
|
-
`;
|
|
22538
|
-
}
|
|
22539
|
-
};
|
|
22540
|
-
/**
|
|
22541
|
-
* Add background color on hover
|
|
22542
|
-
*
|
|
22543
|
-
* Works best with transparent backgrounds. Adds a solid background color on hover.
|
|
22544
|
-
*/
|
|
22545
|
-
const backgroundOnHoverEffect = {
|
|
22546
|
-
id: "background-on-hover",
|
|
22547
|
-
name: "Background on Hover",
|
|
22548
|
-
description: "Adds background color on hover",
|
|
22549
|
-
category: "background",
|
|
22550
|
-
pseudoElement: "none",
|
|
22551
|
-
applicableTo: ["button", "nav-link"],
|
|
22552
|
-
customizableOption: {
|
|
22553
|
-
name: "colorToken",
|
|
22554
|
-
type: "select",
|
|
22555
|
-
label: "Background Color",
|
|
22556
|
-
default: "neutral-800",
|
|
22557
|
-
options: [
|
|
22558
|
-
"neutral-700",
|
|
22559
|
-
"neutral-800",
|
|
22560
|
-
"neutral-900",
|
|
22561
|
-
"primary"
|
|
22562
|
-
]
|
|
22563
|
-
},
|
|
22564
|
-
generateCSS: (ctx) => {
|
|
22565
|
-
const { themeId, variantId, options, tokens, buttonConfig } = ctx;
|
|
22566
|
-
const colorToken = options.colorToken || "neutral-800";
|
|
22567
|
-
return `
|
|
22568
|
-
/* Add background on hover */
|
|
22569
|
-
:where([data-theme-scope="${themeId}"]) .${variantId}:hover {
|
|
22570
|
-
background-color: ${tokens.getColor(colorToken)};${"textColorToken" in buttonConfig && typeof options.textColorToken === "string" ? `\n color: ${tokens.getColor(options.textColorToken)};` : ""}
|
|
22571
|
-
}
|
|
22572
|
-
`;
|
|
22573
|
-
}
|
|
22574
|
-
};
|
|
22575
|
-
/**
|
|
22576
|
-
* Add semi-transparent background color on hover
|
|
22577
|
-
*
|
|
22578
|
-
* Adds a background with opacity/alpha channel. Perfect for retro/arcade styles.
|
|
22579
|
-
*/
|
|
22580
|
-
const backgroundOnHoverAlphaEffect = {
|
|
22581
|
-
id: "background-on-hover-alpha",
|
|
22582
|
-
name: "Background on Hover (Transparent)",
|
|
22583
|
-
description: "Adds semi-transparent background on hover",
|
|
22584
|
-
category: "background",
|
|
22585
|
-
pseudoElement: "none",
|
|
22586
|
-
applicableTo: ["nav-link"],
|
|
22587
|
-
customizableOption: {
|
|
22588
|
-
name: "opacity",
|
|
22589
|
-
type: "percentage",
|
|
22590
|
-
label: "Opacity",
|
|
22591
|
-
default: 50
|
|
22592
|
-
},
|
|
22593
|
-
generateCSS: (ctx) => {
|
|
22594
|
-
const { themeId, variantId, stateGroup, options } = ctx;
|
|
22595
|
-
const rawOpacity = options.opacity;
|
|
22596
|
-
const clampedOpacity = Math.max(0, Math.min(100, typeof rawOpacity === "number" && !Number.isNaN(rawOpacity) ? rawOpacity : 50));
|
|
22597
|
-
const cssVar = `var(--tb-${options.colorToken || "neutral-800"})`;
|
|
22598
|
-
return `
|
|
22599
|
-
/* Add semi-transparent background (${stateGroup}) */
|
|
22600
|
-
:where([data-theme-scope="${themeId}"]) .${variantId}${stateGroup === "base" ? "" : `:${stateGroup}`} {
|
|
22601
|
-
background-color: rgb(${cssVar} / ${clampedOpacity}%);
|
|
22602
|
-
}
|
|
22603
|
-
`;
|
|
22604
|
-
}
|
|
22605
|
-
};
|
|
22606
|
-
//#endregion
|
|
22607
22251
|
//#region ../theme-core/src/buttons/effects/cssUtils.ts
|
|
22608
22252
|
/**
|
|
22609
22253
|
* CSS Utilities for Effect Presets
|
|
@@ -22655,6 +22299,71 @@ function generateStateCSS(themeId, variantId, state, cssProperties) {
|
|
|
22655
22299
|
`;
|
|
22656
22300
|
}
|
|
22657
22301
|
//#endregion
|
|
22302
|
+
//#region ../theme-core/src/buttons/effects/presets/background.ts
|
|
22303
|
+
/**
|
|
22304
|
+
* Darken background on hover
|
|
22305
|
+
*
|
|
22306
|
+
* Works with solid backgrounds only. Darkens the background color by adjusting the shade.
|
|
22307
|
+
*/
|
|
22308
|
+
const darkenBackgroundEffect = shadeBackgroundEffect({
|
|
22309
|
+
id: "darken-background",
|
|
22310
|
+
name: "Darken on Hover",
|
|
22311
|
+
description: "Darkens the background color on hover",
|
|
22312
|
+
label: "Darken Amount (shade step)",
|
|
22313
|
+
shadeDirection: 1
|
|
22314
|
+
});
|
|
22315
|
+
/**
|
|
22316
|
+
* Lighten background on hover
|
|
22317
|
+
*
|
|
22318
|
+
* Works with solid backgrounds only. Lightens the background color by adjusting the shade.
|
|
22319
|
+
*/
|
|
22320
|
+
const lightenBackgroundEffect = shadeBackgroundEffect({
|
|
22321
|
+
id: "lighten-background",
|
|
22322
|
+
name: "Lighten on Hover",
|
|
22323
|
+
description: "Lightens the background color on hover",
|
|
22324
|
+
label: "Lighten Amount (shade step)",
|
|
22325
|
+
shadeDirection: -1
|
|
22326
|
+
});
|
|
22327
|
+
function shadeBackgroundEffect(config) {
|
|
22328
|
+
return {
|
|
22329
|
+
id: config.id,
|
|
22330
|
+
name: config.name,
|
|
22331
|
+
description: config.description,
|
|
22332
|
+
category: "background",
|
|
22333
|
+
pseudoElement: "none",
|
|
22334
|
+
applicableTo: ["button"],
|
|
22335
|
+
customizableOption: {
|
|
22336
|
+
name: "amount",
|
|
22337
|
+
type: "select",
|
|
22338
|
+
label: config.label,
|
|
22339
|
+
default: 100,
|
|
22340
|
+
options: [
|
|
22341
|
+
0,
|
|
22342
|
+
100,
|
|
22343
|
+
200,
|
|
22344
|
+
300,
|
|
22345
|
+
400,
|
|
22346
|
+
500,
|
|
22347
|
+
600,
|
|
22348
|
+
700,
|
|
22349
|
+
800,
|
|
22350
|
+
900
|
|
22351
|
+
]
|
|
22352
|
+
},
|
|
22353
|
+
isApplicable: (buttonConfig) => buttonConfig.background.type === "solid",
|
|
22354
|
+
generateCSS: ({ themeId, variantId, options, tokens, buttonConfig }) => {
|
|
22355
|
+
if (buttonConfig.background.type !== "solid") return "";
|
|
22356
|
+
const amount = (options.amount || 100) * config.shadeDirection;
|
|
22357
|
+
const baseToken = buttonConfig.background.colorToken ?? "primary-500";
|
|
22358
|
+
return `
|
|
22359
|
+
:where([data-theme-scope="${themeId}"]) .${variantId}:hover {
|
|
22360
|
+
background-color: ${tokens.getColor(tokens.adjustShade(baseToken, amount))};
|
|
22361
|
+
}
|
|
22362
|
+
`;
|
|
22363
|
+
}
|
|
22364
|
+
};
|
|
22365
|
+
}
|
|
22366
|
+
//#endregion
|
|
22658
22367
|
//#region ../theme-core/src/buttons/effects/registry.ts
|
|
22659
22368
|
/**
|
|
22660
22369
|
* Registry of all available effect presets
|
|
@@ -22662,11 +22371,144 @@ function generateStateCSS(themeId, variantId, state, cssProperties) {
|
|
|
22662
22371
|
const EFFECT_PRESETS = [
|
|
22663
22372
|
darkenBackgroundEffect,
|
|
22664
22373
|
lightenBackgroundEffect,
|
|
22665
|
-
|
|
22666
|
-
|
|
22667
|
-
|
|
22668
|
-
|
|
22669
|
-
|
|
22374
|
+
{
|
|
22375
|
+
id: "fade-background",
|
|
22376
|
+
name: "Fade on Hover",
|
|
22377
|
+
description: "Reduces background opacity on hover",
|
|
22378
|
+
category: "background",
|
|
22379
|
+
pseudoElement: "none",
|
|
22380
|
+
applicableTo: ["nav-link"],
|
|
22381
|
+
customizableOption: {
|
|
22382
|
+
name: "opacity",
|
|
22383
|
+
type: "percentage",
|
|
22384
|
+
label: "Hover Opacity",
|
|
22385
|
+
default: 80
|
|
22386
|
+
},
|
|
22387
|
+
generateCSS: (ctx) => {
|
|
22388
|
+
const { themeId, variantId, options } = ctx;
|
|
22389
|
+
return `
|
|
22390
|
+
:where([data-theme-scope="${themeId}"]) .${variantId}:hover {
|
|
22391
|
+
opacity: ${(options.opacity || 80) / 100};
|
|
22392
|
+
}
|
|
22393
|
+
`;
|
|
22394
|
+
}
|
|
22395
|
+
},
|
|
22396
|
+
{
|
|
22397
|
+
id: "opacity-reduce",
|
|
22398
|
+
name: "Reduce Opacity",
|
|
22399
|
+
description: "Reduces navigation-link opacity on hover by a percentage",
|
|
22400
|
+
category: "background",
|
|
22401
|
+
pseudoElement: "none",
|
|
22402
|
+
applicableTo: ["nav-link"],
|
|
22403
|
+
customizableOption: {
|
|
22404
|
+
name: "reduction",
|
|
22405
|
+
type: "percentage",
|
|
22406
|
+
label: "Opacity Reduction",
|
|
22407
|
+
default: 15
|
|
22408
|
+
},
|
|
22409
|
+
generateCSS: (ctx) => {
|
|
22410
|
+
const { themeId, variantId, options } = ctx;
|
|
22411
|
+
return `
|
|
22412
|
+
:where([data-theme-scope="${themeId}"]) .${variantId}:hover {
|
|
22413
|
+
opacity: ${1 - (options.reduction || 15) / 100};
|
|
22414
|
+
}
|
|
22415
|
+
`;
|
|
22416
|
+
}
|
|
22417
|
+
},
|
|
22418
|
+
{
|
|
22419
|
+
id: "animated-gradient",
|
|
22420
|
+
name: "Animated Gradient",
|
|
22421
|
+
description: "Animates gradient position on hover",
|
|
22422
|
+
category: "background",
|
|
22423
|
+
pseudoElement: "none",
|
|
22424
|
+
applicableTo: ["button"],
|
|
22425
|
+
customizableOption: {
|
|
22426
|
+
name: "direction",
|
|
22427
|
+
type: "select",
|
|
22428
|
+
label: "Animation Direction",
|
|
22429
|
+
default: "horizontal",
|
|
22430
|
+
options: ["horizontal", "vertical"]
|
|
22431
|
+
},
|
|
22432
|
+
isApplicable: (buttonConfig) => {
|
|
22433
|
+
return buttonConfig.background.type === "gradient";
|
|
22434
|
+
},
|
|
22435
|
+
generateCSS: (ctx) => {
|
|
22436
|
+
const { themeId, variantId, options, buttonConfig } = ctx;
|
|
22437
|
+
if (buttonConfig.background.type !== "gradient") return "";
|
|
22438
|
+
const direction = options.direction || "horizontal";
|
|
22439
|
+
return `
|
|
22440
|
+
/* Setup animated gradient */
|
|
22441
|
+
:where([data-theme-scope="${themeId}"]) .${variantId} {
|
|
22442
|
+
background-size: ${direction === "horizontal" ? "200% auto" : "auto 200%"};
|
|
22443
|
+
background-position: left center;
|
|
22444
|
+
transition: background-position 0.3s ease;
|
|
22445
|
+
}
|
|
22446
|
+
|
|
22447
|
+
/* Animate gradient on hover */
|
|
22448
|
+
:where([data-theme-scope="${themeId}"]) .${variantId}:hover {
|
|
22449
|
+
background-position: ${direction === "horizontal" ? "right center" : "center bottom"};
|
|
22450
|
+
}
|
|
22451
|
+
`;
|
|
22452
|
+
}
|
|
22453
|
+
},
|
|
22454
|
+
{
|
|
22455
|
+
id: "background-on-hover",
|
|
22456
|
+
name: "Background on Hover",
|
|
22457
|
+
description: "Adds background color on hover",
|
|
22458
|
+
category: "background",
|
|
22459
|
+
pseudoElement: "none",
|
|
22460
|
+
applicableTo: ["button", "nav-link"],
|
|
22461
|
+
customizableOption: {
|
|
22462
|
+
name: "colorToken",
|
|
22463
|
+
type: "select",
|
|
22464
|
+
label: "Background Color",
|
|
22465
|
+
default: "neutral-800",
|
|
22466
|
+
options: [
|
|
22467
|
+
"neutral-700",
|
|
22468
|
+
"neutral-800",
|
|
22469
|
+
"neutral-900",
|
|
22470
|
+
"primary"
|
|
22471
|
+
]
|
|
22472
|
+
},
|
|
22473
|
+
generateCSS: (ctx) => {
|
|
22474
|
+
const { themeId, variantId, stateGroup, options, tokens, buttonConfig } = ctx;
|
|
22475
|
+
const colorToken = options.colorToken || "neutral-800";
|
|
22476
|
+
const color = tokens.getColor(colorToken);
|
|
22477
|
+
const navForeground = "textColorToken" in buttonConfig && typeof options.textColorToken === "string" ? `\n color: ${tokens.getColor(options.textColorToken)};` : "";
|
|
22478
|
+
return `
|
|
22479
|
+
/* Add background on hover */
|
|
22480
|
+
${getStateSelector(themeId, variantId, stateGroup)} {
|
|
22481
|
+
background-color: ${color};${navForeground}
|
|
22482
|
+
}
|
|
22483
|
+
`;
|
|
22484
|
+
}
|
|
22485
|
+
},
|
|
22486
|
+
{
|
|
22487
|
+
id: "background-on-hover-alpha",
|
|
22488
|
+
name: "Background on Hover (Transparent)",
|
|
22489
|
+
description: "Adds semi-transparent background on hover",
|
|
22490
|
+
category: "background",
|
|
22491
|
+
pseudoElement: "none",
|
|
22492
|
+
applicableTo: ["nav-link"],
|
|
22493
|
+
customizableOption: {
|
|
22494
|
+
name: "opacity",
|
|
22495
|
+
type: "percentage",
|
|
22496
|
+
label: "Opacity",
|
|
22497
|
+
default: 50
|
|
22498
|
+
},
|
|
22499
|
+
generateCSS: (ctx) => {
|
|
22500
|
+
const { themeId, variantId, stateGroup, options } = ctx;
|
|
22501
|
+
const rawOpacity = options.opacity;
|
|
22502
|
+
const clampedOpacity = Math.max(0, Math.min(100, typeof rawOpacity === "number" && !Number.isNaN(rawOpacity) ? rawOpacity : 50));
|
|
22503
|
+
const cssVar = `var(--tb-${options.colorToken || "neutral-800"})`;
|
|
22504
|
+
return `
|
|
22505
|
+
/* Add semi-transparent background (${stateGroup}) */
|
|
22506
|
+
:where([data-theme-scope="${themeId}"]) .${variantId}${stateGroup === "base" ? "" : `:${stateGroup}`} {
|
|
22507
|
+
background-color: rgb(${cssVar} / ${clampedOpacity}%);
|
|
22508
|
+
}
|
|
22509
|
+
`;
|
|
22510
|
+
}
|
|
22511
|
+
},
|
|
22670
22512
|
{
|
|
22671
22513
|
id: "border-glow",
|
|
22672
22514
|
name: "Border Glow",
|
|
@@ -25605,6 +25447,147 @@ function resolveOnColorForThemeToken(token) {
|
|
|
25605
25447
|
return shade <= 400 ? "#000000" : "#FFFFFF";
|
|
25606
25448
|
}
|
|
25607
25449
|
//#endregion
|
|
25450
|
+
//#region ../theme-core/src/header/paintTargets.ts
|
|
25451
|
+
/** Resolve the element that owns the visible header surface for each layout. */
|
|
25452
|
+
function getHeaderPaintTargets(variant, themeId, state = "base") {
|
|
25453
|
+
const scope = `:where([data-theme-scope="${themeId}"])`;
|
|
25454
|
+
const scrolledRoot = state === "scrolled" ? ".header-root.header-scrolled " : "";
|
|
25455
|
+
if (variant === "floating") {
|
|
25456
|
+
if (state === "scrolled") {
|
|
25457
|
+
const desktopOwner = `${scope} ${scrolledRoot}.header-floating-container`;
|
|
25458
|
+
const mobileOwner = `${scope} ${scrolledRoot}.header-mobile-bar`;
|
|
25459
|
+
return [{
|
|
25460
|
+
kind: "viewport-band",
|
|
25461
|
+
clipSelector: `${scope}:has(.header-root.header-scrolled)`,
|
|
25462
|
+
ownerSelector: desktopOwner,
|
|
25463
|
+
selector: `${desktopOwner}::before`,
|
|
25464
|
+
mediaQuery: MQ_MD_UP,
|
|
25465
|
+
topExtension: {
|
|
25466
|
+
customProperty: "--rb-header-floating-top-gap",
|
|
25467
|
+
value: "1rem",
|
|
25468
|
+
ownerProperty: "top"
|
|
25469
|
+
},
|
|
25470
|
+
ownerNeedsPositioning: false
|
|
25471
|
+
}, {
|
|
25472
|
+
kind: "viewport-band",
|
|
25473
|
+
clipSelector: `${scope}:has(.header-root.header-scrolled)`,
|
|
25474
|
+
ownerSelector: mobileOwner,
|
|
25475
|
+
selector: `${mobileOwner}::before`,
|
|
25476
|
+
mediaQuery: MQ_MD_DOWN,
|
|
25477
|
+
topExtension: {
|
|
25478
|
+
customProperty: "--rb-header-floating-top-gap",
|
|
25479
|
+
value: "0.75rem",
|
|
25480
|
+
ownerProperty: "margin-top"
|
|
25481
|
+
},
|
|
25482
|
+
ownerNeedsPositioning: true
|
|
25483
|
+
}];
|
|
25484
|
+
}
|
|
25485
|
+
return [{
|
|
25486
|
+
kind: "element-box",
|
|
25487
|
+
selector: `${scope} ${scrolledRoot}.header-floating-container`,
|
|
25488
|
+
mediaQuery: MQ_MD_UP
|
|
25489
|
+
}, {
|
|
25490
|
+
kind: "element-box",
|
|
25491
|
+
selector: `${scope} ${scrolledRoot}.header-mobile-bar`,
|
|
25492
|
+
mediaQuery: MQ_MD_DOWN
|
|
25493
|
+
}];
|
|
25494
|
+
}
|
|
25495
|
+
return [{
|
|
25496
|
+
kind: "element-box",
|
|
25497
|
+
selector: `${scope} .header-root${state === "scrolled" ? ".header-scrolled" : ""}::before`,
|
|
25498
|
+
pseudoElement: "inset"
|
|
25499
|
+
}];
|
|
25500
|
+
}
|
|
25501
|
+
function renderHeaderPaintTargetRules(targets, rules) {
|
|
25502
|
+
return targets.map((target) => {
|
|
25503
|
+
const block = renderHeaderPaintTargetRule(target, rules);
|
|
25504
|
+
return target.mediaQuery ? `@media ${target.mediaQuery} {\n${block}\n}` : block;
|
|
25505
|
+
}).join("\n");
|
|
25506
|
+
}
|
|
25507
|
+
function renderHeaderPaintTargetRule(target, rules) {
|
|
25508
|
+
switch (target.kind) {
|
|
25509
|
+
case "element-box": {
|
|
25510
|
+
const pseudoElementSetup = target.pseudoElement === "inset" ? [
|
|
25511
|
+
"content: \"\";",
|
|
25512
|
+
"position: absolute;",
|
|
25513
|
+
"inset: 0;",
|
|
25514
|
+
"pointer-events: none;",
|
|
25515
|
+
"border-radius: inherit;",
|
|
25516
|
+
"z-index: -1;"
|
|
25517
|
+
] : [];
|
|
25518
|
+
return `${target.selector} {\n ${[...pseudoElementSetup, ...rules].join("\n ")}\n}`;
|
|
25519
|
+
}
|
|
25520
|
+
case "viewport-band": {
|
|
25521
|
+
const gap = target.topExtension;
|
|
25522
|
+
const ownerRules = [
|
|
25523
|
+
`${gap.customProperty}: ${gap.value};`,
|
|
25524
|
+
`${gap.ownerProperty}: var(${gap.customProperty});`,
|
|
25525
|
+
...target.ownerNeedsPositioning ? ["position: relative;"] : [],
|
|
25526
|
+
"isolation: isolate;",
|
|
25527
|
+
"background: none;",
|
|
25528
|
+
"backdrop-filter: none;",
|
|
25529
|
+
"-webkit-backdrop-filter: none;",
|
|
25530
|
+
"border: 0;",
|
|
25531
|
+
"box-shadow: none;"
|
|
25532
|
+
];
|
|
25533
|
+
const bandRules = [
|
|
25534
|
+
"content: \"\";",
|
|
25535
|
+
"position: absolute;",
|
|
25536
|
+
`top: calc(-1 * var(${gap.customProperty}));`,
|
|
25537
|
+
"bottom: 0;",
|
|
25538
|
+
"left: 50%;",
|
|
25539
|
+
"width: 100vw;",
|
|
25540
|
+
"transform: translateX(-50%);",
|
|
25541
|
+
"pointer-events: none;",
|
|
25542
|
+
"border-radius: 0;",
|
|
25543
|
+
"z-index: -1;",
|
|
25544
|
+
...rules
|
|
25545
|
+
];
|
|
25546
|
+
return `${target.clipSelector} {\n overflow-x: clip;\n}\n${target.ownerSelector} {\n ${ownerRules.join("\n ")}\n}\n${target.selector} {\n ${bandRules.join("\n ")}\n}`;
|
|
25547
|
+
}
|
|
25548
|
+
}
|
|
25549
|
+
}
|
|
25550
|
+
//#endregion
|
|
25551
|
+
//#region ../theme-core/src/header/scrollTreatment.ts
|
|
25552
|
+
const headerScrollTreatmentSchema = z$1.discriminatedUnion("kind", [z$1.object({
|
|
25553
|
+
kind: z$1.literal("contrast-glass"),
|
|
25554
|
+
backgroundTone: z$1.enum(["light", "dark"])
|
|
25555
|
+
})]).optional();
|
|
25556
|
+
function generateMobileOverlayBackdropFilterFix(themeId, variant) {
|
|
25557
|
+
const root = `:where([data-theme-scope="${themeId}"]) .header-root:has([data-nav-mobile-overlay][aria-hidden="false"])`;
|
|
25558
|
+
return `\n${(variant === "floating" ? [`${root} .header-mobile-bar`, `${root} .header-mobile-bar::before`] : [`${root}::before`]).join(",\n")} {\n backdrop-filter: none !important;\n -webkit-backdrop-filter: none !important;\n}\n`;
|
|
25559
|
+
}
|
|
25560
|
+
function generateHeaderScrollTreatmentStyles(treatment, themeId, variant, surfaceRules = []) {
|
|
25561
|
+
if (!treatment) return "";
|
|
25562
|
+
switch (treatment.kind) {
|
|
25563
|
+
case "contrast-glass": {
|
|
25564
|
+
const backgroundChannels = treatment.backgroundTone === "dark" ? "0 0 0" : "255 255 255";
|
|
25565
|
+
return renderHeaderPaintTargetRules(getHeaderPaintTargets(variant, themeId, "scrolled"), [`background-color: rgb(${backgroundChannels} / 0.60);`, ...surfaceRules]);
|
|
25566
|
+
}
|
|
25567
|
+
}
|
|
25568
|
+
}
|
|
25569
|
+
//#endregion
|
|
25570
|
+
//#region ../theme-core/src/header/containerSchema.ts
|
|
25571
|
+
const headerContainerSchema = z$1.object({
|
|
25572
|
+
rounded: z$1.enum([
|
|
25573
|
+
"none",
|
|
25574
|
+
"sm",
|
|
25575
|
+
"md",
|
|
25576
|
+
"lg",
|
|
25577
|
+
"xl",
|
|
25578
|
+
"2xl"
|
|
25579
|
+
]).default("xl"),
|
|
25580
|
+
border: z$1.boolean().default(true),
|
|
25581
|
+
shadow: z$1.boolean().default(true),
|
|
25582
|
+
padding: z$1.enum([
|
|
25583
|
+
"sm",
|
|
25584
|
+
"md",
|
|
25585
|
+
"lg"
|
|
25586
|
+
]).default("md"),
|
|
25587
|
+
tint: z$1.string().nullable().optional(),
|
|
25588
|
+
opacity: z$1.number().min(0).max(1).default(.12)
|
|
25589
|
+
}).optional();
|
|
25590
|
+
//#endregion
|
|
25608
25591
|
//#region ../theme-core/src/schema.ts
|
|
25609
25592
|
const axesSchema = z$1.object({
|
|
25610
25593
|
tone: z$1.enum([
|
|
@@ -25634,16 +25617,6 @@ const axesSchema = z$1.object({
|
|
|
25634
25617
|
"expressive"
|
|
25635
25618
|
])
|
|
25636
25619
|
});
|
|
25637
|
-
const colourHexString = z$1.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
|
|
25638
|
-
const paletteColorSchema = z$1.object({
|
|
25639
|
-
name: z$1.string().min(1),
|
|
25640
|
-
hex: colourHexString
|
|
25641
|
-
});
|
|
25642
|
-
const paletteMetaSchema = z$1.object({ mode: z$1.enum(["light", "dark"]) });
|
|
25643
|
-
const paletteSchema = z$1.object({
|
|
25644
|
-
colors: z$1.array(paletteColorSchema),
|
|
25645
|
-
meta: paletteMetaSchema
|
|
25646
|
-
});
|
|
25647
25620
|
const typographyStyleSchema = z$1.object({
|
|
25648
25621
|
family: z$1.string().min(1),
|
|
25649
25622
|
weight: z$1.enum([
|
|
@@ -25775,7 +25748,7 @@ const boxBackgroundSchema = z$1.object({
|
|
|
25775
25748
|
color: tokenOrCssColorValueSchema.nullable().optional(),
|
|
25776
25749
|
gradient: z$1.string().nullable().optional(),
|
|
25777
25750
|
gradientPresetId: z$1.string().min(1).nullable().optional(),
|
|
25778
|
-
image: mediaSchema
|
|
25751
|
+
image: mediaSchema.nullable().optional(),
|
|
25779
25752
|
objectFit: z$1.enum([
|
|
25780
25753
|
"fill",
|
|
25781
25754
|
"fit",
|
|
@@ -26023,25 +25996,6 @@ const navFontWeight = z$1.enum([
|
|
|
26023
25996
|
]);
|
|
26024
25997
|
const headerMaxWidth = z$1.enum(["container", "full"]);
|
|
26025
25998
|
const headerBarFrame = z$1.enum(["full-bleed", "inset-shell"]);
|
|
26026
|
-
const headerContainerSchema = z$1.object({
|
|
26027
|
-
rounded: z$1.enum([
|
|
26028
|
-
"none",
|
|
26029
|
-
"sm",
|
|
26030
|
-
"md",
|
|
26031
|
-
"lg",
|
|
26032
|
-
"xl",
|
|
26033
|
-
"2xl"
|
|
26034
|
-
]).default("xl"),
|
|
26035
|
-
border: z$1.boolean().default(true),
|
|
26036
|
-
shadow: z$1.boolean().default(true),
|
|
26037
|
-
padding: z$1.enum([
|
|
26038
|
-
"sm",
|
|
26039
|
-
"md",
|
|
26040
|
-
"lg"
|
|
26041
|
-
]).default("md"),
|
|
26042
|
-
tint: z$1.string().nullable().optional(),
|
|
26043
|
-
opacity: z$1.number().min(0).max(1).default(.12)
|
|
26044
|
-
}).optional();
|
|
26045
25999
|
const headerBorderSchema = componentBorderSchema.extend({ position: z$1.enum([
|
|
26046
26000
|
"bottom",
|
|
26047
26001
|
"top",
|
|
@@ -26159,7 +26113,7 @@ const headerBackgroundSchema = z$1.object({
|
|
|
26159
26113
|
contentOwner: z$1.literal(siteChromeBackgroundOverrideOwner).optional(),
|
|
26160
26114
|
color: tokenOrCssColorValueSchema.nullable().optional(),
|
|
26161
26115
|
gradient: gradientConfigSchema.nullable().optional(),
|
|
26162
|
-
image: mediaSchema
|
|
26116
|
+
image: mediaSchema.nullable().optional(),
|
|
26163
26117
|
textColor: tokenOrCssColorValueSchema.nullable().optional()
|
|
26164
26118
|
});
|
|
26165
26119
|
const headerSchema = z$1.object({
|
|
@@ -26168,7 +26122,8 @@ const headerSchema = z$1.object({
|
|
|
26168
26122
|
shrinkOnScroll: z$1.boolean(),
|
|
26169
26123
|
maxWidth: headerMaxWidth,
|
|
26170
26124
|
barFrame: headerBarFrame.optional(),
|
|
26171
|
-
|
|
26125
|
+
scrollTreatment: headerScrollTreatmentSchema,
|
|
26126
|
+
logoOverride: mediaSchema.nullable().optional(),
|
|
26172
26127
|
background: headerBackgroundSchema.default({
|
|
26173
26128
|
type: "color",
|
|
26174
26129
|
color: "surface"
|
|
@@ -26180,6 +26135,7 @@ const headerSchema = z$1.object({
|
|
|
26180
26135
|
navFontRole: z$1.enum(["body", "heading"]).optional(),
|
|
26181
26136
|
navTypography: z$1.enum(["body", "heading"]).optional(),
|
|
26182
26137
|
navTextSize: navLinkStyleSchema.shape.textSize,
|
|
26138
|
+
interactionPalette: headerInteractionPaletteSchema.optional(),
|
|
26183
26139
|
navPlacement: z$1.enum(["end", "center"]).optional(),
|
|
26184
26140
|
container: headerContainerSchema,
|
|
26185
26141
|
border: headerBorderSchema,
|
|
@@ -31656,15 +31612,6 @@ const heroCopyFragment = defineFragment({
|
|
|
31656
31612
|
*/
|
|
31657
31613
|
const BLOCK_BUTTON_ROLES = PUBLIC_BUTTON_ROLES;
|
|
31658
31614
|
const blockButtonRoleSchema = z$1.enum(BLOCK_BUTTON_ROLES);
|
|
31659
|
-
/**
|
|
31660
|
-
* Temporary rollout boundary for persisted content written before issue #1220.
|
|
31661
|
-
* Authoring remains strict through `blockButtonRoleSchema`; this parser exists
|
|
31662
|
-
* only until the post-deploy role rewrite has been audited in production.
|
|
31663
|
-
*/
|
|
31664
|
-
function canonicalizePersistedBlockButtonRole(value) {
|
|
31665
|
-
return value === "link" || value === "tertiary" ? "ghost" : value;
|
|
31666
|
-
}
|
|
31667
|
-
const persistedBlockButtonRoleSchema = z$1.preprocess((value) => typeof value === "string" ? canonicalizePersistedBlockButtonRole(value) : value, blockButtonRoleSchema);
|
|
31668
31615
|
const BLOCK_BUTTON_ROLE_LABELS = {
|
|
31669
31616
|
primary: "Primary",
|
|
31670
31617
|
secondary: "Secondary",
|
|
@@ -36410,7 +36357,7 @@ function planSiteChromePlacement(positioning) {
|
|
|
36410
36357
|
headerRootClassName: "rb-fixed rb-top-0 rb-left-0 rb-right-0",
|
|
36411
36358
|
standaloneShellClassName: "fixed left-0 right-0 top-0 z-40 w-full"
|
|
36412
36359
|
};
|
|
36413
|
-
default: return assertNever$
|
|
36360
|
+
default: return assertNever$15(positioning);
|
|
36414
36361
|
}
|
|
36415
36362
|
}
|
|
36416
36363
|
function splitSiteChromePlacementClasses(className) {
|
|
@@ -39436,84 +39383,6 @@ const weeklySlotAvailabilityBlockDefinition = {
|
|
|
39436
39383
|
mode: "server"
|
|
39437
39384
|
} }
|
|
39438
39385
|
};
|
|
39439
|
-
const PUBLIC_DOWNLOAD_MEDIA_TYPES = [
|
|
39440
|
-
"document",
|
|
39441
|
-
"spreadsheet",
|
|
39442
|
-
"archive",
|
|
39443
|
-
"audio"
|
|
39444
|
-
];
|
|
39445
|
-
const hotspotSchema = z.object({
|
|
39446
|
-
x: z.number().min(0).max(1),
|
|
39447
|
-
y: z.number().min(0).max(1),
|
|
39448
|
-
radius: z.number().optional()
|
|
39449
|
-
});
|
|
39450
|
-
const rotationSchema = z.union([
|
|
39451
|
-
z.literal(0),
|
|
39452
|
-
z.literal(90),
|
|
39453
|
-
z.literal(180),
|
|
39454
|
-
z.literal(270)
|
|
39455
|
-
]);
|
|
39456
|
-
const rectSchema = z.tuple([
|
|
39457
|
-
z.number(),
|
|
39458
|
-
z.number(),
|
|
39459
|
-
z.number(),
|
|
39460
|
-
z.number()
|
|
39461
|
-
]);
|
|
39462
|
-
const aspectCropSchema = z.object({
|
|
39463
|
-
aspect: z.preprocess((value) => value == null ? void 0 : value, z.string().optional()),
|
|
39464
|
-
rect: z.preprocess((value) => value == null ? void 0 : value, rectSchema.optional()),
|
|
39465
|
-
hotspot: z.preprocess((value) => value == null ? void 0 : value, hotspotSchema.optional()),
|
|
39466
|
-
rotation: z.preprocess((value) => value == null ? void 0 : value, rotationSchema.optional())
|
|
39467
|
-
});
|
|
39468
|
-
const transformSchema = z.object({
|
|
39469
|
-
aspectCrops: z.preprocess((value) => {
|
|
39470
|
-
if (!value || typeof value !== "object" || Array.isArray(value)) return;
|
|
39471
|
-
return value;
|
|
39472
|
-
}, z.record(z.string(), aspectCropSchema.catch({}))).optional(),
|
|
39473
|
-
rect: rectSchema.optional(),
|
|
39474
|
-
hotspot: hotspotSchema.optional(),
|
|
39475
|
-
rotation: rotationSchema.optional()
|
|
39476
|
-
});
|
|
39477
|
-
const mediaPosterSchema = z.discriminatedUnion("tag", [z.object({
|
|
39478
|
-
tag: z.literal("storage"),
|
|
39479
|
-
assetId: z.string().optional(),
|
|
39480
|
-
storageBucket: z.string().min(1),
|
|
39481
|
-
storagePath: z.string().min(1)
|
|
39482
|
-
}), z.object({
|
|
39483
|
-
tag: z.literal("external-src"),
|
|
39484
|
-
assetId: z.string().optional(),
|
|
39485
|
-
src: z.string().url()
|
|
39486
|
-
})]);
|
|
39487
|
-
const mediaBaseSchema = z.object({
|
|
39488
|
-
purpose: z.string().optional(),
|
|
39489
|
-
placeholder: z.boolean().default(true).optional(),
|
|
39490
|
-
assetId: z.string().optional(),
|
|
39491
|
-
identifier: z.string().optional(),
|
|
39492
|
-
src: z.string().optional(),
|
|
39493
|
-
alt: z.string().optional(),
|
|
39494
|
-
filename: z.string().optional(),
|
|
39495
|
-
mimeType: z.string().optional(),
|
|
39496
|
-
width: z.number().optional(),
|
|
39497
|
-
height: z.number().optional(),
|
|
39498
|
-
storageBucket: z.string().optional(),
|
|
39499
|
-
storagePath: z.string().optional(),
|
|
39500
|
-
poster: mediaPosterSchema.optional(),
|
|
39501
|
-
transform: transformSchema.optional()
|
|
39502
|
-
});
|
|
39503
|
-
const imageMediaSchema = mediaBaseSchema.extend({ type: z.literal("image") });
|
|
39504
|
-
const videoMediaSchema = mediaBaseSchema.extend({ type: z.literal("video") });
|
|
39505
|
-
const audioMediaSchema = mediaBaseSchema.extend({ type: z.literal("audio") });
|
|
39506
|
-
const documentMediaSchema = mediaBaseSchema.extend({ type: z.literal("document") });
|
|
39507
|
-
const spreadsheetMediaSchema = mediaBaseSchema.extend({ type: z.literal("spreadsheet") });
|
|
39508
|
-
const archiveMediaSchema = mediaBaseSchema.extend({ type: z.literal("archive") });
|
|
39509
|
-
const mediaSchema = z.discriminatedUnion("type", [
|
|
39510
|
-
imageMediaSchema,
|
|
39511
|
-
videoMediaSchema,
|
|
39512
|
-
audioMediaSchema,
|
|
39513
|
-
documentMediaSchema,
|
|
39514
|
-
spreadsheetMediaSchema,
|
|
39515
|
-
archiveMediaSchema
|
|
39516
|
-
]);
|
|
39517
39386
|
//#endregion
|
|
39518
39387
|
//#region ../blocks/src/system/blocks/shared/bookingPaymentTerms.ts
|
|
39519
39388
|
const bookingDepositRefundPolicySchema = z$1.enum(["refundable", "non_refundable"]);
|
|
@@ -39953,7 +39822,7 @@ const publicEventSchema = z$1.object({
|
|
|
39953
39822
|
presentation: z$1.object({
|
|
39954
39823
|
cardTitleOverride: z$1.string().nullable().optional(),
|
|
39955
39824
|
summary: z$1.string().nullable().optional(),
|
|
39956
|
-
image: mediaSchema.nullable().optional()
|
|
39825
|
+
image: mediaSchema$1.nullable().optional()
|
|
39957
39826
|
}).optional(),
|
|
39958
39827
|
slug: z$1.string(),
|
|
39959
39828
|
path: z$1.string().nullable(),
|
|
@@ -40579,7 +40448,7 @@ function isEventCalendarListLayout(value) {
|
|
|
40579
40448
|
//#region ../blocks/src/system/runtime/nodes/shared/contract-schemas.ts
|
|
40580
40449
|
const previewStageSchema = z$1.enum(["preview", "published"]);
|
|
40581
40450
|
const registrationButtonVariantSchema = blockButtonRoleSchema;
|
|
40582
|
-
const eventButtonVariantSchema =
|
|
40451
|
+
const eventButtonVariantSchema = blockButtonRoleSchema;
|
|
40583
40452
|
const eventLayoutSchema = z$1.enum(eventCalendarListLayoutValues);
|
|
40584
40453
|
const eventCalendarDisplayModeSchema = z$1.enum(eventCalendarDisplayModeValues);
|
|
40585
40454
|
const eventCalendarDefaultViewSchema = z$1.enum(eventCalendarDefaultViewValues);
|
|
@@ -46751,10 +46620,10 @@ function preferredPathsForSource(source) {
|
|
|
46751
46620
|
case "workshop": return ["/workshops", "/workshop"];
|
|
46752
46621
|
case "retreat": return ["/retreats", "/retreat"];
|
|
46753
46622
|
case "performance": return ["/performances", "/performance"];
|
|
46754
|
-
default: return assertNever$
|
|
46623
|
+
default: return assertNever$24(source.preset, "Unhandled offerings preview event preset");
|
|
46755
46624
|
}
|
|
46756
46625
|
case "course": return ["/courses", "/course"];
|
|
46757
|
-
default: return assertNever$
|
|
46626
|
+
default: return assertNever$24(source, "Unhandled offerings preview source");
|
|
46758
46627
|
}
|
|
46759
46628
|
}
|
|
46760
46629
|
function normalizeRoutePath(value) {
|
|
@@ -50791,7 +50660,7 @@ const newsletterSignupBlockDefinition = {
|
|
|
50791
50660
|
//#endregion
|
|
50792
50661
|
//#region ../blocks/src/system/blocks/team-members.ts
|
|
50793
50662
|
const ITEM_NAME = "member";
|
|
50794
|
-
const teamMemberPhotoSchema = mediaSchema.refine((media) => media.type === "image", { message: "Team member photos must be image media" }).nullable();
|
|
50663
|
+
const teamMemberPhotoSchema = mediaSchema$1.refine((media) => media.type === "image", { message: "Team member photos must be image media" }).nullable();
|
|
50795
50664
|
const teamMemberDataSchema = z$1.object({
|
|
50796
50665
|
_type: z$1.literal("teamMember"),
|
|
50797
50666
|
id: z$1.string(),
|
|
@@ -52366,7 +52235,7 @@ function getBlockDefinition(name) {
|
|
|
52366
52235
|
//#endregion
|
|
52367
52236
|
//#region ../blocks/src/system/helpers/backgroundMedia.ts
|
|
52368
52237
|
function resolveBackgroundMedia(input) {
|
|
52369
|
-
const parsedMedia = mediaSchema.safeParse(input.image);
|
|
52238
|
+
const parsedMedia = mediaSchema$1.safeParse(input.image);
|
|
52370
52239
|
if (!parsedMedia.success) return null;
|
|
52371
52240
|
switch (parsedMedia.data.type) {
|
|
52372
52241
|
case "image":
|
|
@@ -52901,7 +52770,7 @@ function resolveLinkedContentEditSupport(contentType) {
|
|
|
52901
52770
|
kind: "unsupported-domain-backed",
|
|
52902
52771
|
reason: metadata.reason
|
|
52903
52772
|
};
|
|
52904
|
-
default: return assertNever$
|
|
52773
|
+
default: return assertNever$24(metadata);
|
|
52905
52774
|
}
|
|
52906
52775
|
}
|
|
52907
52776
|
function contentTypeKeyToLabel(key) {
|
|
@@ -53661,6 +53530,9 @@ function renderTrailingAffordanceIcon(affordance) {
|
|
|
53661
53530
|
className: "rb-ml-2 rb-h-4 rb-w-4 rb-inline-block"
|
|
53662
53531
|
});
|
|
53663
53532
|
}
|
|
53533
|
+
function isMissingRequiredLink(linkRequired, resolvedHref) {
|
|
53534
|
+
return linkRequired && resolvedHref.length === 0;
|
|
53535
|
+
}
|
|
53664
53536
|
const ButtonNode = ({ value, children, href, variantId = "primary", size = "md", disabled, type = "button", target, rel, linkRequired = false, trailingIcon, blockId: _blockId, blockKind: _blockKind, blockContent: _blockContent, fragmentRegistry: _fragmentRegistry, pathBase: _pathBase, className, ...rest }) => {
|
|
53665
53537
|
const content = value ?? children;
|
|
53666
53538
|
if (!content) {
|
|
@@ -53669,12 +53541,16 @@ const ButtonNode = ({ value, children, href, variantId = "primary", size = "md",
|
|
|
53669
53541
|
}
|
|
53670
53542
|
const affordanceIcon = renderTrailingAffordanceIcon(resolveButtonAffordance({ trailingIcon }));
|
|
53671
53543
|
const resolvedHref = typeof href === "string" ? href.trim() : "";
|
|
53672
|
-
if (linkRequired
|
|
53544
|
+
if (isMissingRequiredLink(linkRequired, resolvedHref)) {
|
|
53673
53545
|
if (process.env.NODE_ENV === "development") console.warn("[ButtonNode] Missing href for link-required button");
|
|
53674
53546
|
return null;
|
|
53675
53547
|
}
|
|
53676
53548
|
const extraClassName = affordanceIcon ? [className, AFFORDANCE_SUPPRESS_CLASS].filter(Boolean).join(" ") : className;
|
|
53677
|
-
const resolvedVariantId = parseThemeButtonVariantId(
|
|
53549
|
+
const resolvedVariantId = parseThemeButtonVariantId(variantId);
|
|
53550
|
+
if (variantId && !resolvedVariantId) {
|
|
53551
|
+
console.error("[ButtonNode] Invalid button variant", { variantId });
|
|
53552
|
+
return null;
|
|
53553
|
+
}
|
|
53678
53554
|
const combinedClassName = resolvedVariantId ? themeButtonClassName({
|
|
53679
53555
|
variant: resolvedVariantId,
|
|
53680
53556
|
size,
|
|
@@ -53803,8 +53679,9 @@ function iconForMediaType(type) {
|
|
|
53803
53679
|
});
|
|
53804
53680
|
}
|
|
53805
53681
|
}
|
|
53806
|
-
function
|
|
53807
|
-
|
|
53682
|
+
function parseButtonVariant(value) {
|
|
53683
|
+
if (value === null || value === void 0) return "primary";
|
|
53684
|
+
return isBlockButtonRole(value) ? value : null;
|
|
53808
53685
|
}
|
|
53809
53686
|
function FileDownloadNode({ value, title, description, buttonLabel, buttonVariant, className }) {
|
|
53810
53687
|
if (!value || !isDownloadableMediaType(value.type)) return null;
|
|
@@ -53814,7 +53691,11 @@ function FileDownloadNode({ value, title, description, buttonLabel, buttonVarian
|
|
|
53814
53691
|
const heading = title?.trim() || filename;
|
|
53815
53692
|
const body = description?.trim();
|
|
53816
53693
|
const label = buttonLabel?.trim() || "Download";
|
|
53817
|
-
const variant =
|
|
53694
|
+
const variant = parseButtonVariant(buttonVariant);
|
|
53695
|
+
if (!variant) {
|
|
53696
|
+
console.error("[FileDownloadNode] Invalid button variant", { buttonVariant });
|
|
53697
|
+
return null;
|
|
53698
|
+
}
|
|
53818
53699
|
return /* @__PURE__ */ jsx("div", {
|
|
53819
53700
|
className,
|
|
53820
53701
|
children: /* @__PURE__ */ jsxs("div", {
|
|
@@ -55428,7 +55309,7 @@ function eventSeriesIdsForSubject(subject) {
|
|
|
55428
55309
|
switch (subject.kind) {
|
|
55429
55310
|
case "eventSeries": return [subject.eventSeriesId];
|
|
55430
55311
|
case "eventOffering": return subject.availableEventSeriesIds;
|
|
55431
|
-
default: return assertNever$
|
|
55312
|
+
default: return assertNever$24(subject);
|
|
55432
55313
|
}
|
|
55433
55314
|
}
|
|
55434
55315
|
//#endregion
|
|
@@ -56145,7 +56026,7 @@ function renderOfferingGroupItems(presentation, items, options) {
|
|
|
56145
56026
|
children: items.map((item) => renderOfferingCompactItem(item, options))
|
|
56146
56027
|
})
|
|
56147
56028
|
});
|
|
56148
|
-
default: return assertNever$
|
|
56029
|
+
default: return assertNever$24(presentation, "Unhandled offerings preview presentation");
|
|
56149
56030
|
}
|
|
56150
56031
|
}
|
|
56151
56032
|
function compareCoursesByNextSession(left, right) {
|
|
@@ -56190,7 +56071,7 @@ function featuredSummaryDetails(item) {
|
|
|
56190
56071
|
const summary = deriveCourseScheduleSummary(item.course);
|
|
56191
56072
|
return summary ? formatFeaturedSummary(summary, item.course.venue?.name ?? null) : null;
|
|
56192
56073
|
}
|
|
56193
|
-
default: return assertNever$
|
|
56074
|
+
default: return assertNever$24(item, "Unhandled offerings preview item");
|
|
56194
56075
|
}
|
|
56195
56076
|
}
|
|
56196
56077
|
function formatFeaturedSummary(summary, venue) {
|
|
@@ -56199,7 +56080,7 @@ function formatFeaturedSummary(summary, venue) {
|
|
|
56199
56080
|
case "multi-day-span": return detailsFromOccurrences(summary.occurrence, summary.occurrence, venue, null, null, true);
|
|
56200
56081
|
case "fixed-recurring-run": return detailsFromOccurrences(summary.first, summary.last, venue, summary.recurrenceLabel, null);
|
|
56201
56082
|
case "irregular-multi-session-run": return detailsFromOccurrences(summary.first, summary.last, venue, null, `${summary.sessionCount} dates`);
|
|
56202
|
-
default: return assertNever$
|
|
56083
|
+
default: return assertNever$24(summary, "Unhandled offerings preview schedule summary");
|
|
56203
56084
|
}
|
|
56204
56085
|
}
|
|
56205
56086
|
function detailsFromOccurrences(first, last, venue, recurrence, sessionCount, spanUsesEndDate = false) {
|
|
@@ -56596,7 +56477,7 @@ function bookingActionContent(input) {
|
|
|
56596
56477
|
children: input.buttonText
|
|
56597
56478
|
});
|
|
56598
56479
|
case "unavailable": return null;
|
|
56599
|
-
default: return assertNever$
|
|
56480
|
+
default: return assertNever$24(input.booking);
|
|
56600
56481
|
}
|
|
56601
56482
|
}
|
|
56602
56483
|
function RecurringSchedule({ schedule, buttonText = "Book", buttonVariant = "primary", showVenue = true, emptyMessage = "Regular schedule details will be added shortly." }) {
|
|
@@ -58774,7 +58655,7 @@ function previewEditableTargetToPath(target) {
|
|
|
58774
58655
|
case "current-entry-field":
|
|
58775
58656
|
case "current-entry-metadata": return target.path;
|
|
58776
58657
|
case "read-only": return;
|
|
58777
|
-
default: return assertNever$
|
|
58658
|
+
default: return assertNever$24(target);
|
|
58778
58659
|
}
|
|
58779
58660
|
}
|
|
58780
58661
|
function previewEditableTargetToFieldKey(target) {
|
|
@@ -59849,7 +59730,7 @@ function collectNestedPreviewFieldConstraintEntries(field, path) {
|
|
|
59849
59730
|
case "text":
|
|
59850
59731
|
case "time":
|
|
59851
59732
|
case "url": return [];
|
|
59852
|
-
default: return assertNever$
|
|
59733
|
+
default: return assertNever$24(field);
|
|
59853
59734
|
}
|
|
59854
59735
|
}
|
|
59855
59736
|
function makeDefaultBlockComponent(args) {
|
|
@@ -60696,6 +60577,41 @@ function resolveColorTokenHex(theme, colorToken) {
|
|
|
60696
60577
|
if (colorToken === "transparent") return null;
|
|
60697
60578
|
return expandPalette(theme.palette)[colorToken] ?? null;
|
|
60698
60579
|
}
|
|
60580
|
+
const NAV_DROPDOWN_CONTAINER_RAIL_CSS_RULES = [
|
|
60581
|
+
`min-width: 12rem;`,
|
|
60582
|
+
`width: max-content;`,
|
|
60583
|
+
`max-width: min(22rem, calc(100vw - 2rem));`,
|
|
60584
|
+
`transform: translateX(var(--nav-dropdown-shift-x, 0px));`
|
|
60585
|
+
];
|
|
60586
|
+
//#endregion
|
|
60587
|
+
//#region ../theme-core/src/header/surfaceRules.ts
|
|
60588
|
+
/** Compile the visual surface declarations independently of paint geometry. */
|
|
60589
|
+
function buildHeaderSurfaceRules(header, tokens, blur) {
|
|
60590
|
+
const base = [];
|
|
60591
|
+
const scrolled = [];
|
|
60592
|
+
const background = header.background;
|
|
60593
|
+
if (background.type === "color") base.push(`background-color: ${tokens.getColor(background.color || "surface")};`);
|
|
60594
|
+
else if (background.type === "gradient" && background.gradient) {
|
|
60595
|
+
const stops = background.gradient.stops.map((stop) => tokens.getColor(stop.color)).join(", ");
|
|
60596
|
+
base.push(`background-image: linear-gradient(${background.gradient.angle ?? 180}deg, ${stops});`);
|
|
60597
|
+
}
|
|
60598
|
+
const blurRules = [`backdrop-filter: ${blur};`, `-webkit-backdrop-filter: ${blur};`];
|
|
60599
|
+
base.push(...blurRules);
|
|
60600
|
+
scrolled.push(...blurRules);
|
|
60601
|
+
const borderWidth = getComponentBorderWidthPx(header.border?.width ?? "none");
|
|
60602
|
+
if (!header.border || borderWidth === "0") return {
|
|
60603
|
+
base,
|
|
60604
|
+
scrolled,
|
|
60605
|
+
border: []
|
|
60606
|
+
};
|
|
60607
|
+
const color = rgbColorValue(header.border.colorToken?.trim() || "border");
|
|
60608
|
+
const style = header.border.style === "dashed" ? "dashed" : "solid";
|
|
60609
|
+
return {
|
|
60610
|
+
base,
|
|
60611
|
+
scrolled,
|
|
60612
|
+
border: header.border.position === "both" ? [`border-top: ${borderWidth} ${style} ${color};`, `border-bottom: ${borderWidth} ${style} ${color};`] : [`border-${header.border.position}: ${borderWidth} ${style} ${color};`]
|
|
60613
|
+
};
|
|
60614
|
+
}
|
|
60699
60615
|
//#endregion
|
|
60700
60616
|
//#region ../theme-core/src/navigation/presets.ts
|
|
60701
60617
|
/**
|
|
@@ -60857,12 +60773,71 @@ function getNavLinkPreset(presetId) {
|
|
|
60857
60773
|
return NAV_LINK_PRESETS[presetId];
|
|
60858
60774
|
}
|
|
60859
60775
|
Object.keys(NAV_LINK_PRESETS);
|
|
60860
|
-
|
|
60861
|
-
|
|
60862
|
-
|
|
60863
|
-
|
|
60864
|
-
|
|
60865
|
-
|
|
60776
|
+
//#endregion
|
|
60777
|
+
//#region ../theme-core/src/header/legacyNavLinkStyle.ts
|
|
60778
|
+
function buildLegacyHeaderNavLinkStyle(header, contrastTreatment, navTextSize) {
|
|
60779
|
+
const navStyle = header.navStyle ?? "minimal";
|
|
60780
|
+
const basePreset = getNavLinkPreset(navStyle);
|
|
60781
|
+
if (!basePreset) return null;
|
|
60782
|
+
const style = {
|
|
60783
|
+
...basePreset,
|
|
60784
|
+
fontWeight: header.navWeight ?? basePreset.fontWeight,
|
|
60785
|
+
colorToken: (header.navColor ?? header.textColor)?.trim() || basePreset.colorToken,
|
|
60786
|
+
...contrastTreatment ? { contrastTreatment } : {},
|
|
60787
|
+
...navTextSize ? { textSize: navTextSize } : {}
|
|
60788
|
+
};
|
|
60789
|
+
if (header.navWeight === "bold" && navStyle === "solid") style.textTransform = "uppercase";
|
|
60790
|
+
applyLegacyNavEffects(style, header);
|
|
60791
|
+
applyLegacyGlassTreatment(style, header, navStyle);
|
|
60792
|
+
return style;
|
|
60793
|
+
}
|
|
60794
|
+
function applyLegacyNavEffects(style, header) {
|
|
60795
|
+
if (!header.navEffects) return;
|
|
60796
|
+
const effects = style.effects = {
|
|
60797
|
+
...style.effects,
|
|
60798
|
+
hover: [...style.effects?.hover ?? []],
|
|
60799
|
+
active: [...style.effects?.active ?? []]
|
|
60800
|
+
};
|
|
60801
|
+
if (header.navEffects.glow) effects.hover.push({
|
|
60802
|
+
effectId: "outer-glow",
|
|
60803
|
+
options: { spread: 5 }
|
|
60804
|
+
});
|
|
60805
|
+
if (header.navEffects.neumorphic) {
|
|
60806
|
+
effects.hover.push({
|
|
60807
|
+
effectId: "neumorphic-shadow",
|
|
60808
|
+
options: { mode: "pressed" }
|
|
60809
|
+
});
|
|
60810
|
+
effects.hover.push({
|
|
60811
|
+
effectId: "text-color-change",
|
|
60812
|
+
options: { hoverColorToken: "primary" }
|
|
60813
|
+
});
|
|
60814
|
+
}
|
|
60815
|
+
if (header.navEffects.underlineGradient) effects.hover.push({
|
|
60816
|
+
effectId: "border-bottom-grow",
|
|
60817
|
+
options: { origin: "center" }
|
|
60818
|
+
});
|
|
60819
|
+
}
|
|
60820
|
+
function applyLegacyGlassTreatment(style, header, navStyle) {
|
|
60821
|
+
if (header.navContainer?.type !== "glass" || navStyle !== "minimal") return;
|
|
60822
|
+
style.borderRadius = "full";
|
|
60823
|
+
style.effects = {
|
|
60824
|
+
...style.effects,
|
|
60825
|
+
hover: glassStateEffects(10),
|
|
60826
|
+
active: glassStateEffects(18)
|
|
60827
|
+
};
|
|
60828
|
+
}
|
|
60829
|
+
function glassStateEffects(opacity) {
|
|
60830
|
+
return [{
|
|
60831
|
+
effectId: "background-on-hover-alpha",
|
|
60832
|
+
options: {
|
|
60833
|
+
colorToken: "neutral-50",
|
|
60834
|
+
opacity
|
|
60835
|
+
}
|
|
60836
|
+
}, {
|
|
60837
|
+
effectId: "text-color-change",
|
|
60838
|
+
options: { hoverColorToken: "neutral-50" }
|
|
60839
|
+
}];
|
|
60840
|
+
}
|
|
60866
60841
|
//#endregion
|
|
60867
60842
|
//#region ../theme-core/src/header/generateHeaderCss.ts
|
|
60868
60843
|
const HEADER_BLUR = "blur(12px)";
|
|
@@ -60892,8 +60867,8 @@ function generateHeaderCss(options) {
|
|
|
60892
60867
|
const cssChunks = [];
|
|
60893
60868
|
const headerContrastTreatment = resolveHeaderContrastTreatment(header);
|
|
60894
60869
|
const headerNavTextSize = resolveHeaderNavTextSize(header);
|
|
60895
|
-
cssChunks.push(generateHeaderRootStyles(header, themeId, tokens
|
|
60896
|
-
cssChunks.push(generateMobileOverlayBackdropFilterFix(themeId));
|
|
60870
|
+
cssChunks.push(generateHeaderRootStyles(header, themeId, tokens));
|
|
60871
|
+
cssChunks.push(generateMobileOverlayBackdropFilterFix(themeId, header.variant));
|
|
60897
60872
|
cssChunks.push(generateLogoStyles({
|
|
60898
60873
|
logo: header.logo,
|
|
60899
60874
|
themeId,
|
|
@@ -60931,56 +60906,34 @@ function isClearSplitHeaderShape(header) {
|
|
|
60931
60906
|
function isDetachedFloatingHeaderShape(header) {
|
|
60932
60907
|
return header.variant === "floating" && !header.container;
|
|
60933
60908
|
}
|
|
60934
|
-
function generateMobileOverlayBackdropFilterFix(themeId) {
|
|
60935
|
-
return `\n${`:where([data-theme-scope="${themeId}"]) .header-root:has([data-nav-mobile-overlay][aria-hidden="false"])::before`} {\n backdrop-filter: none !important;\n -webkit-backdrop-filter: none !important;\n}\n`;
|
|
60936
|
-
}
|
|
60937
60909
|
/**
|
|
60938
60910
|
* Generate root header container styles
|
|
60939
60911
|
*/
|
|
60940
|
-
function generateHeaderRootStyles(header, themeId, tokens
|
|
60912
|
+
function generateHeaderRootStyles(header, themeId, tokens) {
|
|
60941
60913
|
const selector = `:where([data-theme-scope="${themeId}"]) .header-root`;
|
|
60942
|
-
const backgroundSelector = `:where([data-theme-scope="${themeId}"]) .header-root::before`;
|
|
60943
60914
|
const rules = [];
|
|
60944
|
-
const backgroundRules = [];
|
|
60945
60915
|
const navContainerType = header.navContainer?.type ?? "none";
|
|
60946
60916
|
const isContainedNav = navContainerType === "pill" || navContainerType === "glass";
|
|
60947
60917
|
rules.push("position: relative;");
|
|
60948
60918
|
rules.push("isolation: isolate;");
|
|
60949
|
-
|
|
60950
|
-
|
|
60951
|
-
|
|
60952
|
-
|
|
60953
|
-
|
|
60954
|
-
|
|
60955
|
-
|
|
60956
|
-
|
|
60957
|
-
|
|
60958
|
-
}
|
|
60959
|
-
backgroundRules.push(`backdrop-filter: ${HEADER_BLUR};`);
|
|
60960
|
-
backgroundRules.push(`-webkit-backdrop-filter: ${HEADER_BLUR};`);
|
|
60961
|
-
if (header.border) {
|
|
60962
|
-
const borderWidth = getComponentBorderWidthPx(header.border.width);
|
|
60963
|
-
if (borderWidth !== "0") {
|
|
60964
|
-
const borderToken = header.border?.colorToken?.trim() || "border";
|
|
60965
|
-
const borderColor = tokens.getColor(borderToken);
|
|
60966
|
-
const borderStyle = header.border.style === "dashed" ? "dashed" : "solid";
|
|
60967
|
-
if (header.border.position === "bottom") rules.push(`border-bottom: ${borderWidth} ${borderStyle} ${borderColor};`);
|
|
60968
|
-
else if (header.border.position === "top") rules.push(`border-top: ${borderWidth} ${borderStyle} ${borderColor};`);
|
|
60969
|
-
else if (header.border.position === "both") {
|
|
60970
|
-
rules.push(`border-top: ${borderWidth} ${borderStyle} ${borderColor};`);
|
|
60971
|
-
rules.push(`border-bottom: ${borderWidth} ${borderStyle} ${borderColor};`);
|
|
60972
|
-
}
|
|
60973
|
-
}
|
|
60974
|
-
}
|
|
60975
|
-
}
|
|
60919
|
+
const surfaceRules = isContainedNav ? {
|
|
60920
|
+
base: [],
|
|
60921
|
+
scrolled: [],
|
|
60922
|
+
border: []
|
|
60923
|
+
} : buildHeaderSurfaceRules(header, tokens, HEADER_BLUR);
|
|
60924
|
+
const floatingSurfaceBorder = header.variant === "floating";
|
|
60925
|
+
if (!floatingSurfaceBorder) rules.push(...surfaceRules.border);
|
|
60926
|
+
const basePaintRules = floatingSurfaceBorder ? [...surfaceRules.base, ...surfaceRules.border] : surfaceRules.base;
|
|
60927
|
+
const scrolledPaintRules = floatingSurfaceBorder ? [...surfaceRules.scrolled, ...surfaceRules.border] : surfaceRules.scrolled;
|
|
60976
60928
|
if (header.positioning === "sticky" || header.positioning === "fixed") {
|
|
60977
60929
|
const shadowVar = getComponentShadowVar(header.shadow?.elevation ?? "none");
|
|
60978
60930
|
if (shadowVar) rules.push(`box-shadow: ${shadowVar};`);
|
|
60979
60931
|
}
|
|
60980
60932
|
const baseBlock = `\n${selector} {\n ${rules.join("\n ")}\n}\n`;
|
|
60981
60933
|
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`;
|
|
60982
|
-
|
|
60983
|
-
|
|
60934
|
+
const scrollTreatmentStyles = generateHeaderScrollTreatmentStyles(header.scrollTreatment, themeId, header.variant, scrolledPaintRules);
|
|
60935
|
+
if (isContainedNav || basePaintRules.length === 0) return `${baseBlock}\n${overlayFix}${scrollTreatmentStyles}`;
|
|
60936
|
+
return `${baseBlock}\n${renderHeaderPaintTargetRules(getHeaderPaintTargets(header.variant, themeId), basePaintRules)}\n${overlayFix}${usesInsetShell(header) ? generateInsetShellStyles(header, themeId) : ""}${scrollTreatmentStyles}`;
|
|
60984
60937
|
}
|
|
60985
60938
|
/**
|
|
60986
60939
|
* Reshapes the full-bleed header paint layer into a contained brand capsule at
|
|
@@ -61025,10 +60978,10 @@ function generateLogoStyles(input) {
|
|
|
61025
60978
|
else rules.push(`font-family: var(--font-heading);`);
|
|
61026
60979
|
if (logo) {
|
|
61027
60980
|
if (logo.letterSpacing && logo.letterSpacing !== "normal") rules.push(`letter-spacing: ${{
|
|
61028
|
-
|
|
61029
|
-
|
|
61030
|
-
|
|
61031
|
-
|
|
60981
|
+
normal: "0em",
|
|
60982
|
+
wide: "0.05em",
|
|
60983
|
+
wider: "0.1em",
|
|
60984
|
+
widest: "0.15em"
|
|
61032
60985
|
}[logo.letterSpacing]};`);
|
|
61033
60986
|
if (logo.gradient) {
|
|
61034
60987
|
rules.push(`background: linear-gradient(to right, ${primaryColor}, ${accentColor});`);
|
|
@@ -61101,71 +61054,11 @@ function generateNavLinkStyles(header, themeId, tokens, theme, contrastTreatment
|
|
|
61101
61054
|
} : header.navLinkStyle, navPreferences),
|
|
61102
61055
|
className: "header-nav-link"
|
|
61103
61056
|
});
|
|
61104
|
-
const
|
|
61105
|
-
|
|
61106
|
-
|
|
61107
|
-
console.warn(`[generateHeaderCss] Nav link preset not found: ${navStyle}`);
|
|
61057
|
+
const mergedStyle = buildLegacyHeaderNavLinkStyle(header, contrastTreatment, navTextSize);
|
|
61058
|
+
if (!mergedStyle) {
|
|
61059
|
+
console.warn(`[generateHeaderCss] Nav link preset not found: ${header.navStyle}`);
|
|
61108
61060
|
return "";
|
|
61109
61061
|
}
|
|
61110
|
-
const mergedStyle = {
|
|
61111
|
-
...basePreset,
|
|
61112
|
-
fontWeight: header.navWeight ?? basePreset.fontWeight,
|
|
61113
|
-
colorToken: (header.navColor ?? header.textColor)?.trim() || basePreset.colorToken,
|
|
61114
|
-
...contrastTreatment ? { contrastTreatment } : {},
|
|
61115
|
-
...navTextSize ? { textSize: navTextSize } : {}
|
|
61116
|
-
};
|
|
61117
|
-
if (header.navWeight === "bold" && navStyle === "solid") mergedStyle.textTransform = "uppercase";
|
|
61118
|
-
if (header.navEffects) {
|
|
61119
|
-
const effects = mergedStyle.effects = {
|
|
61120
|
-
...mergedStyle.effects,
|
|
61121
|
-
hover: [...mergedStyle.effects?.hover || []],
|
|
61122
|
-
active: [...mergedStyle.effects?.active || []]
|
|
61123
|
-
};
|
|
61124
|
-
if (header.navEffects.glow) effects.hover.push({
|
|
61125
|
-
effectId: "outer-glow",
|
|
61126
|
-
options: { spread: 5 }
|
|
61127
|
-
});
|
|
61128
|
-
if (header.navEffects.neumorphic) {
|
|
61129
|
-
effects.hover.push({
|
|
61130
|
-
effectId: "neumorphic-shadow",
|
|
61131
|
-
options: { mode: "pressed" }
|
|
61132
|
-
});
|
|
61133
|
-
effects.hover.push({
|
|
61134
|
-
effectId: "text-color-change",
|
|
61135
|
-
options: { hoverColorToken: "primary" }
|
|
61136
|
-
});
|
|
61137
|
-
}
|
|
61138
|
-
if (header.navEffects.underlineGradient) effects.hover.push({
|
|
61139
|
-
effectId: "border-bottom-grow",
|
|
61140
|
-
options: { origin: "center" }
|
|
61141
|
-
});
|
|
61142
|
-
}
|
|
61143
|
-
if ((header.navContainer?.type ?? "none") === "glass" && navStyle === "minimal") {
|
|
61144
|
-
mergedStyle.borderRadius = "full";
|
|
61145
|
-
mergedStyle.effects = {
|
|
61146
|
-
...mergedStyle.effects,
|
|
61147
|
-
hover: [{
|
|
61148
|
-
effectId: "background-on-hover-alpha",
|
|
61149
|
-
options: {
|
|
61150
|
-
colorToken: "neutral-50",
|
|
61151
|
-
opacity: 10
|
|
61152
|
-
}
|
|
61153
|
-
}, {
|
|
61154
|
-
effectId: "text-color-change",
|
|
61155
|
-
options: { hoverColorToken: "neutral-50" }
|
|
61156
|
-
}],
|
|
61157
|
-
active: [{
|
|
61158
|
-
effectId: "background-on-hover-alpha",
|
|
61159
|
-
options: {
|
|
61160
|
-
colorToken: "neutral-50",
|
|
61161
|
-
opacity: 18
|
|
61162
|
-
}
|
|
61163
|
-
}, {
|
|
61164
|
-
effectId: "text-color-change",
|
|
61165
|
-
options: { hoverColorToken: "neutral-50" }
|
|
61166
|
-
}]
|
|
61167
|
-
};
|
|
61168
|
-
}
|
|
61169
61062
|
return generateNavLinkCSS({
|
|
61170
61063
|
themeId,
|
|
61171
61064
|
tokens,
|
|
@@ -61193,10 +61086,10 @@ function generateDropdownContainerStyles(header, themeId, tokens) {
|
|
|
61193
61086
|
if (shadowVar) rules.push(`box-shadow: ${shadowVar};`);
|
|
61194
61087
|
const borderRadius = dropdownStyle?.borderRadius ?? "md";
|
|
61195
61088
|
rules.push(`border-radius: ${{
|
|
61196
|
-
|
|
61197
|
-
|
|
61198
|
-
|
|
61199
|
-
|
|
61089
|
+
none: "0",
|
|
61090
|
+
sm: "0.25rem",
|
|
61091
|
+
md: "0.5rem",
|
|
61092
|
+
lg: "0.75rem"
|
|
61200
61093
|
}[borderRadius]};`);
|
|
61201
61094
|
rules.push(`padding: 0.5rem 0;`);
|
|
61202
61095
|
return `\n${selector} {\n ${rules.join("\n ")}\n}\n`;
|
|
@@ -61251,16 +61144,16 @@ function generateDropdownLinkStyles(header, themeId, tokens, theme) {
|
|
|
61251
61144
|
const additionalRules = [];
|
|
61252
61145
|
const letterSpacing = configuredDropdownStyle?.letterSpacing ?? "normal";
|
|
61253
61146
|
if (letterSpacing !== "normal") additionalRules.push(`letter-spacing: ${{
|
|
61254
|
-
|
|
61255
|
-
|
|
61256
|
-
|
|
61147
|
+
normal: "0em",
|
|
61148
|
+
wide: "0.05em",
|
|
61149
|
+
wider: "0.1em"
|
|
61257
61150
|
}[letterSpacing]};`);
|
|
61258
61151
|
const textSize = configuredDropdownStyle?.textSize ?? "sm";
|
|
61259
61152
|
additionalRules.push(`font-size: ${{
|
|
61260
|
-
|
|
61261
|
-
|
|
61262
|
-
|
|
61263
|
-
|
|
61153
|
+
xs: "0.75rem",
|
|
61154
|
+
sm: "0.875rem",
|
|
61155
|
+
base: "1rem",
|
|
61156
|
+
lg: "1.125rem"
|
|
61264
61157
|
}[textSize]};`);
|
|
61265
61158
|
if (additionalRules.length > 0) return baseCSS + `\n${`:where([data-theme-scope="${themeId}"]) .nav-dropdown-link`} {\n ${additionalRules.join("\n ")}\n}\n`;
|
|
61266
61159
|
return baseCSS;
|
|
@@ -61356,18 +61249,18 @@ function generateFloatingContainerStyles(header, themeId, tokens) {
|
|
|
61356
61249
|
rules.push(`-webkit-backdrop-filter: ${FLOATING_BLUR};`);
|
|
61357
61250
|
if (container.border) rules.push(`border: 1px solid rgb(255 255 255 / 0.2);`);
|
|
61358
61251
|
rules.push(`border-radius: ${{
|
|
61359
|
-
|
|
61360
|
-
|
|
61361
|
-
|
|
61362
|
-
|
|
61363
|
-
|
|
61252
|
+
none: "0",
|
|
61253
|
+
sm: "0.375rem",
|
|
61254
|
+
md: "0.5rem",
|
|
61255
|
+
lg: "0.75rem",
|
|
61256
|
+
xl: "1rem",
|
|
61364
61257
|
"2xl": "1.5rem"
|
|
61365
61258
|
}[container.rounded]};`);
|
|
61366
61259
|
if (container.shadow) rules.push(`box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);`);
|
|
61367
61260
|
rules.push(`padding: ${{
|
|
61368
|
-
|
|
61369
|
-
|
|
61370
|
-
|
|
61261
|
+
sm: "1rem 1.5rem",
|
|
61262
|
+
md: "1.5rem 2rem",
|
|
61263
|
+
lg: "2rem 2.5rem"
|
|
61371
61264
|
}[container.padding]};`);
|
|
61372
61265
|
return `\n${selector} {\n ${rules.join("\n ")}\n}\n`;
|
|
61373
61266
|
}
|
|
@@ -63965,7 +63858,7 @@ function sourceLabel(source) {
|
|
|
63965
63858
|
case "managed-database": return "DB";
|
|
63966
63859
|
case "sdk-synced": return "SDK-synced DB";
|
|
63967
63860
|
case "sdk-config": return "SDK config";
|
|
63968
|
-
default: return assertNever$
|
|
63861
|
+
default: return assertNever$24(source);
|
|
63969
63862
|
}
|
|
63970
63863
|
}
|
|
63971
63864
|
//#endregion
|
|
@@ -83003,7 +82896,7 @@ function renderWithSdkThemeRuntime({ themeRuntime, theme, children }) {
|
|
|
83003
82896
|
children
|
|
83004
82897
|
});
|
|
83005
82898
|
case "none": return /* @__PURE__ */ jsx(Fragment, { children });
|
|
83006
|
-
default: return assertNever$
|
|
82899
|
+
default: return assertNever$24(themeRuntime);
|
|
83007
82900
|
}
|
|
83008
82901
|
}
|
|
83009
82902
|
//#endregion
|
|
@@ -84231,7 +84124,7 @@ var CircuitOpenError = class extends Error {
|
|
|
84231
84124
|
* 1. This constant
|
|
84232
84125
|
* 2. The "version" field in package.json
|
|
84233
84126
|
*/
|
|
84234
|
-
const SDK_VERSION = "0.
|
|
84127
|
+
const SDK_VERSION = "0.127.0";
|
|
84235
84128
|
//#endregion
|
|
84236
84129
|
//#region src/next/content-load-failure.ts
|
|
84237
84130
|
const SdkContentLoadError = RiverbankContentLoadError;
|