@riverbankcms/sdk 0.140.0 → 0.142.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{PreviewEditorSidebar-CUyTzd5z.mjs → PreviewEditorSidebar-Dk6Dt11f.mjs} +24 -15
- package/dist/{PreviewEditorUI-Agkw4v5i.mjs → PreviewEditorUI-D6EQTsCA.mjs} +3 -3
- package/dist/{PreviewQueryProvider-CN0ewic5.mjs → PreviewQueryProvider-CC-EPkyQ.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-DdbeAdS8.mjs → SdkPreviewModeRuntime-DH1n4ytY.mjs} +85 -54
- package/dist/{SiteChromeCustomizeContext-CqGOz-Kv.mjs → SiteChromeCustomizeContext-DunIzY0K.mjs} +797 -216
- package/dist/_dts/api/src/billing.d.ts +6 -1
- package/dist/_dts/api/src/bookingConfig.d.ts +1 -1
- package/dist/_dts/api/src/commercePortalEndpoints.d.ts +2 -2
- package/dist/_dts/api/src/contentRuntime.d.ts +12 -31
- package/dist/_dts/api/src/domainConnection.d.ts +4 -0
- package/dist/_dts/api/src/endpoints.d.ts +0 -27
- package/dist/_dts/api/src/footerCompositionContracts.d.ts +25 -0
- package/dist/_dts/api/src/index.d.ts +2 -2
- package/dist/_dts/api/src/launchReadiness.d.ts +1 -0
- package/dist/_dts/api/src/navigation/dashboardSiteNav.d.ts +2 -1
- package/dist/_dts/api/src/publicBookingService.d.ts +1 -0
- package/dist/_dts/api/src/sdkConfig/layout.d.ts +13 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +3 -8
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +3 -26
- package/dist/_dts/api/src/siteOnboarding.d.ts +7 -0
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +1 -31
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +6 -1
- package/dist/_dts/billing/src/site-arrangements.d.ts +18 -5
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +4 -0
- package/dist/_dts/blocks/src/pageRendererContracts.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/events/eventSelectionFields.d.ts +122 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/calendarWindow.d.ts +2 -1
- package/dist/_dts/blocks/src/system/blocks/events/shared/eventSelection.d.ts +11 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +56 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +8 -0
- package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +2 -2
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +47 -47
- package/dist/_dts/blocks/src/system/data/prefetchBlockData.d.ts +5 -0
- package/dist/_dts/blocks/src/system/data/utils.d.ts +1 -1
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +27 -1
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +12 -180
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +6 -90
- package/dist/_dts/blocks/src/system/runtime/hooks/useEventFilters.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/appointment-services.d.ts +5 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.state.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useDiscountCodeUi.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useDiscountCodeUi.state.d.ts +10 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventCheckoutHandoffRestore.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +4 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useSettledCommerceView.d.ts +37 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +4 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +11 -101
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +63 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/listOptions.d.ts +2 -0
- package/dist/_dts/blocks/src/system/transforms/registry/eventCalendar.d.ts +12 -0
- package/dist/_dts/commerce/src/purchase/bookingInstalmentSchedule.d.ts +4 -0
- package/dist/_dts/commerce/src/purchase/stripeCommissionMetadata.d.ts +1 -2
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +3102 -3122
- package/dist/_dts/editor-blocks/src/block-editor/ColourFieldOptionsProvider.d.ts +7 -0
- package/dist/_dts/editor-blocks/src/block-editor/colourFieldVisibility.d.ts +7 -0
- package/dist/_dts/editor-blocks/src/block-editor/preparedManifest.d.ts +2 -0
- package/dist/_dts/editor-blocks/src/index.d.ts +1 -0
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/loaders.d.ts +27 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/preview/PreviewFooterEditorPanel.d.ts +3 -6
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/preview/footerInspection.d.ts +16 -0
- package/dist/_dts/preview-next/src/client/preview/sdkConfig.d.ts +6 -0
- package/dist/_dts/sdk/src/config/types.d.ts +2 -18
- package/dist/_dts/sdk/src/config/validation.d.ts +6 -0
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +4 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/ThemeFontLoader.d.ts +17 -1
- package/dist/_dts/theme-core/src/buttons/affordanceSuppression.d.ts +17 -0
- package/dist/_dts/theme-core/src/buttons/buttonColourContract.d.ts +1 -1
- package/dist/_dts/theme-core/src/buttons/classNames.d.ts +16 -0
- package/dist/_dts/theme-core/src/buttons/generateButtonCss.d.ts +0 -6
- package/dist/_dts/theme-core/src/buttons/resolvedButtonCss.d.ts +4 -4
- package/dist/_dts/theme-core/src/footer/mode.d.ts +10 -1
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/hosted-booking-appearance.d.ts +54 -12
- package/dist/_dts/theme-core/src/index.d.ts +1 -1
- package/dist/_dts/theme-core/src/schema.d.ts +1 -7
- package/dist/_dts/theme-core/src/site-styles/effectivePageDesign.d.ts +32 -0
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -0
- package/dist/client/{BookingConsentAgreement-CuKa82V4.mjs → BookingConsentAgreement-CnJeq3_r.mjs} +2 -2
- package/dist/client/{DiscountCodeDisclosure-BbYieKWB.mjs → DiscountCodeDisclosure-BINEO6J9.mjs} +1 -1
- package/dist/client/{EventCombined.client-LTfR1Aby.mjs → EventCombined.client-srxNQ6sZ.mjs} +11 -15
- package/dist/client/{EventListing.client-DUHpYSuo.mjs → EventListing.client-DbyVyGkX.mjs} +4 -17
- package/dist/client/{LeafletStaticMap-CHRupL6m.mjs → LeafletStaticMap-B-wpijzL.mjs} +1 -1
- package/dist/client/{accordion-6HiIFxNL.mjs → accordion-B-iUXU7n.mjs} +1 -1
- package/dist/client/{bookingForm-Dlmid43H.mjs → bookingForm-BXYPke5q.mjs} +5 -5
- package/dist/client/bookings.mjs +194 -102
- package/dist/client/{carousel-DmkZRRq_.mjs → carousel-Cr4aj63H.mjs} +1 -1
- package/dist/client/{cart-CIC24330.mjs → cart-DibP9WWa.mjs} +3 -3
- package/dist/client/{checkout-D1Zw9imo.mjs → checkout-CrSBVnL8.mjs} +3 -3
- package/dist/client/client.mjs +643 -192
- package/dist/client/{context-Cy1OayHx.mjs → context-Ces-AgdR.mjs} +1 -1
- package/dist/client/{dates-aDcfoLHr.mjs → dates-BXyNeNhB.mjs} +2 -2
- package/dist/client/{eventCalendar-FQxMPAjf.mjs → eventCalendar-HwpPeqrH.mjs} +11 -7
- package/dist/client/{eventCombined-Dr3ac6Hb.mjs → eventCombined-BpFUkuEI.mjs} +3 -3
- package/dist/client/{eventDetails-D-AzUHFQ.mjs → eventDetails-DK_agiWy.mjs} +4 -4
- package/dist/client/{eventListing-B3XxBf3i.mjs → eventListing-DhzHqP1c.mjs} +3 -3
- package/dist/client/{eventRegistration-I6EaokFD.mjs → eventRegistration-BdQ_Dn2d.mjs} +124 -32
- package/dist/client/{form-BbWckVWY.mjs → form-B1frcuzy.mjs} +2 -2
- package/dist/client/{headerSection-C9qU4Y7x.mjs → headerSection-CT5z460s.mjs} +2 -2
- package/dist/client/hooks.mjs +274 -45
- package/dist/client/{locationMap-CLCShvlG.mjs → locationMap-CIQXB9i2.mjs} +2 -2
- package/dist/client/{newsletterForm-Briukxzi.mjs → newsletterForm-BYNYZSes.mjs} +23 -10
- package/dist/client/{pricing-Copadu-2.mjs → pricing-CbTlAsmt.mjs} +1 -1
- package/dist/client/{productDetail-oujlRd-r.mjs → productDetail-CR7Z3yjS.mjs} +3 -3
- package/dist/client/{productList-BRiIRUcd.mjs → productList-DXj00vzR.mjs} +3 -3
- package/dist/client/{propsDecoder-CB2KS_ko.mjs → propsDecoder-DiLiBdek.mjs} +57 -16
- package/dist/client/rendering/client.mjs +476 -132
- package/dist/client/rendering/islands.mjs +17 -17
- package/dist/client/rendering.mjs +686 -195
- package/dist/client/{scrollToBlock-B1IS1_ua.mjs → scrollToBlock-CrcbBf0h.mjs} +28 -11
- package/dist/client/{shop-Vn6yNFED.mjs → shop-DgqiB_1b.mjs} +6 -6
- package/dist/client/{shop-commerce-BVTqipYp.mjs → shop-commerce-D_J781in.mjs} +5 -5
- package/dist/client/{shop-commerce-store-BVnJVy7v.mjs → shop-commerce-store-PGUbDwqe.mjs} +1 -1
- package/dist/client/{shopShared-COIeK77T.mjs → shopShared-C_Bb2zwG.mjs} +3 -3
- package/dist/client/{useEventFilters-DzIUcS9n.mjs → useEventFilters-CM17Xpr1.mjs} +17 -11
- package/dist/preview-next/before-render.mjs +0 -37
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/editor-chrome.css +4 -8
- package/dist/preview-next/keepAlive.mjs +0 -37
- package/dist/preview-next/middleware.mjs +0 -37
- package/dist/{previewAuthStore-Gjb6r6vz.mjs → previewAuthStore-oVttoRDO.mjs} +0 -37
- package/dist/{sdk-runtime-CnCLvZRv.mjs → sdk-runtime-DhmuRhIX.mjs} +2 -2
- package/dist/{separator-DKDRJ1oH.mjs → separator-C3hlg9LH.mjs} +1 -1
- package/dist/server/components.mjs +452 -111
- package/dist/server/config-validation.mjs +263 -40
- package/dist/server/config.mjs +263 -40
- package/dist/server/data.mjs +274 -45
- package/dist/server/index.mjs +1 -38
- package/dist/server/next.mjs +427 -119
- package/dist/server/page-converter.mjs +208 -33
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +467 -119
- package/dist/server/rendering.mjs +467 -117
- package/dist/server/routing.mjs +301 -50
- package/dist/server/server.mjs +275 -83
- package/dist/server/theme-bridge.mjs +57 -23
- package/dist/server/theme.mjs +11 -9
- package/dist/styles/index.css +28 -2
- package/package.json +1 -1
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
//#region ../theme-core/src/footer/mode.ts
|
|
5
|
+
const footerModeSchema = z.enum([
|
|
6
|
+
"default",
|
|
7
|
+
"blocks",
|
|
8
|
+
"default+blocks",
|
|
9
|
+
"none"
|
|
10
|
+
]);
|
|
11
|
+
//#endregion
|
|
4
12
|
//#region ../theme-core/src/lib/media.ts
|
|
5
13
|
const hotspotSchema = z.object({
|
|
6
14
|
x: z.number().min(0).max(1),
|
|
@@ -1096,7 +1104,7 @@ const BUTTON_CONTRAST_POLICY = {
|
|
|
1096
1104
|
nonTextMinimumRatio: 3,
|
|
1097
1105
|
gradientSamplesPerSegment: 20,
|
|
1098
1106
|
alphaBackgrounds: "reject-without-known-surface",
|
|
1099
|
-
disabled: "
|
|
1107
|
+
disabled: "validated-colour-pair-with-muted-control-opacity"
|
|
1100
1108
|
};
|
|
1101
1109
|
function formatButtonColourContractError(error) {
|
|
1102
1110
|
switch (error.tag) {
|
|
@@ -1789,17 +1797,16 @@ function resolvedButtonFocusDeclarations(indicator, role) {
|
|
|
1789
1797
|
] : [["outline", value("outline", `3px solid ${indicator.colorCss}`)], ["outline-offset", value("outline-offset", "3px")]];
|
|
1790
1798
|
}
|
|
1791
1799
|
/**
|
|
1792
|
-
* Disabled buttons
|
|
1793
|
-
*
|
|
1794
|
-
*
|
|
1795
|
-
* remain observable.
|
|
1800
|
+
* Disabled buttons are deliberately muted as unavailable controls. Native
|
|
1801
|
+
* disabled controls are exempt from active-control contrast requirements;
|
|
1802
|
+
* opacity distinguishes the state without introducing a focus-like outline.
|
|
1803
|
+
* Retaining pointer events lets the not-allowed cursor remain observable.
|
|
1796
1804
|
*/
|
|
1797
1805
|
const RESOLVED_BUTTON_DISABLED_DECLARATIONS = [
|
|
1798
1806
|
["cursor", "not-allowed"],
|
|
1799
1807
|
["transform", "none"],
|
|
1800
1808
|
["box-shadow", "none"],
|
|
1801
|
-
["
|
|
1802
|
-
["outline-offset", "-4px"]
|
|
1809
|
+
["opacity", "0.55"]
|
|
1803
1810
|
];
|
|
1804
1811
|
buttonSizeNameSchema.options;
|
|
1805
1812
|
//#endregion
|
|
@@ -5645,12 +5652,6 @@ const footerVariant = z.enum([
|
|
|
5645
5652
|
"split"
|
|
5646
5653
|
]);
|
|
5647
5654
|
const footerMaxWidth = z.enum(["container", "full"]);
|
|
5648
|
-
const footerMode = z.enum([
|
|
5649
|
-
"default",
|
|
5650
|
-
"blocks",
|
|
5651
|
-
"default+blocks",
|
|
5652
|
-
"none"
|
|
5653
|
-
]);
|
|
5654
5655
|
const footerNavLayoutMode = z.enum([
|
|
5655
5656
|
"stack",
|
|
5656
5657
|
"inline",
|
|
@@ -5739,9 +5740,9 @@ const footerSchema = z.object({
|
|
|
5739
5740
|
/**
|
|
5740
5741
|
* SDK-only footer rendering mode.
|
|
5741
5742
|
*
|
|
5742
|
-
*
|
|
5743
|
+
* Historical persisted field; SDK rendering mode now lives in layout.footerMode.
|
|
5743
5744
|
*/
|
|
5744
|
-
mode:
|
|
5745
|
+
mode: footerModeSchema.optional(),
|
|
5745
5746
|
variant: footerVariant,
|
|
5746
5747
|
maxWidth: footerMaxWidth,
|
|
5747
5748
|
showLogoText: z.boolean().optional(),
|
|
@@ -12509,10 +12510,19 @@ const containerResponsiveThemeCss = `/*
|
|
|
12509
12510
|
padding-top: 2.5rem;
|
|
12510
12511
|
padding-bottom: 2.5rem;
|
|
12511
12512
|
}
|
|
12513
|
+
/* Clearance for a surface that is not an authored block page.
|
|
12514
|
+
An authored page gets this through its opening block's container (see the
|
|
12515
|
+
overlay-clearance rule in styles.css). A reserved surface or a system
|
|
12516
|
+
destination page has no such block, so it consumes the same variable here.
|
|
12517
|
+
Marked with one class rather than per-surface selectors, because the last
|
|
12518
|
+
two additions to this family were both missed and shipped overlapping. */
|
|
12512
12519
|
:where(.theme-scope)
|
|
12513
12520
|
[data-site-document-layout-mode="header-overlay"]
|
|
12514
|
-
|
|
12515
|
-
padding-top: calc(
|
|
12521
|
+
.rb-overlay-clearance-surface {
|
|
12522
|
+
padding-top: calc(
|
|
12523
|
+
var(--site-overlay-header-clearance, 5.5rem) +
|
|
12524
|
+
var(--site-overlay-opening-content-extra-pad, clamp(1rem, 2vw, 1.75rem))
|
|
12525
|
+
);
|
|
12516
12526
|
}
|
|
12517
12527
|
.rb-preview-editor-offset {
|
|
12518
12528
|
padding-bottom: calc(
|
|
@@ -22869,6 +22879,23 @@ const containerResponsiveThemeCss = `/*
|
|
|
22869
22879
|
gap: 0.5rem;
|
|
22870
22880
|
}
|
|
22871
22881
|
|
|
22882
|
+
/* Error panel and field notes. The form block scopes these to its own
|
|
22883
|
+
data-block, so the newsletter form (which also renders in the footer)
|
|
22884
|
+
needs its own copy of the treatment. */
|
|
22885
|
+
:where(.theme-scope) .newsletter-form .fb-error:not([data-field-validation-message]) {
|
|
22886
|
+
background-color: var(--fb-error-bg);
|
|
22887
|
+
color: var(--fb-error-text);
|
|
22888
|
+
border: 1px solid var(--fb-error-border);
|
|
22889
|
+
border-radius: var(--rb-block-radius);
|
|
22890
|
+
padding: 1rem;
|
|
22891
|
+
font-size: 0.875rem;
|
|
22892
|
+
}
|
|
22893
|
+
|
|
22894
|
+
:where(.theme-scope) .newsletter-form [data-field-validation-message] {
|
|
22895
|
+
font-size: 0.875rem;
|
|
22896
|
+
color: var(--fb-error-text);
|
|
22897
|
+
}
|
|
22898
|
+
|
|
22872
22899
|
/* Required indicator */
|
|
22873
22900
|
:where(.theme-scope) .newsletter-required {
|
|
22874
22901
|
color: rgb(var(--tb-primary));
|
|
@@ -25528,14 +25555,11 @@ function normalizeTokenValue(value) {
|
|
|
25528
25555
|
if (trimmedValue.startsWith("#")) return hexToRgbChannels(trimmedValue);
|
|
25529
25556
|
return trimmedValue;
|
|
25530
25557
|
}
|
|
25531
|
-
function buildThemeRuntimeFromBridge(config) {
|
|
25532
|
-
validateThemeBridgeConfig(config);
|
|
25533
|
-
return buildBridgeCssVars(config);
|
|
25534
|
-
}
|
|
25535
25558
|
function buildThemeBridgeRuntime(config) {
|
|
25536
|
-
const
|
|
25559
|
+
const validatedConfig = validateThemeBridgeConfig(config);
|
|
25560
|
+
const cssVars = buildBridgeCssVars(validatedConfig);
|
|
25537
25561
|
const themeId = "sdk";
|
|
25538
|
-
const corners =
|
|
25562
|
+
const corners = validatedConfig.corners ?? "rounded";
|
|
25539
25563
|
const generatorTheme = buildBridgeGeneratorTheme(corners);
|
|
25540
25564
|
return {
|
|
25541
25565
|
themeId,
|
|
@@ -25694,6 +25718,7 @@ function validateThemeBridgeConfig(config) {
|
|
|
25694
25718
|
}
|
|
25695
25719
|
validateBridgeTokens(config.tokens);
|
|
25696
25720
|
if (config.overrides !== void 0) parseBridgeOverrideRules(config.overrides);
|
|
25721
|
+
return config;
|
|
25697
25722
|
}
|
|
25698
25723
|
function resolveBridgeTokens(tokens) {
|
|
25699
25724
|
const resolved = {};
|
|
@@ -25872,6 +25897,15 @@ function buildBridgeGeneratorTheme(corners) {
|
|
|
25872
25897
|
}
|
|
25873
25898
|
};
|
|
25874
25899
|
}
|
|
25900
|
+
z.object({
|
|
25901
|
+
palette: paletteColorsSchema,
|
|
25902
|
+
paletteMode: paletteModeSchema,
|
|
25903
|
+
typography: z.object({
|
|
25904
|
+
headingFamily: z.string().trim().min(1),
|
|
25905
|
+
bodyFamily: z.string().trim().min(1)
|
|
25906
|
+
}).strict(),
|
|
25907
|
+
corners
|
|
25908
|
+
}).strict();
|
|
25875
25909
|
//#endregion
|
|
25876
25910
|
//#region src/theme-bridge/generateCssVars.ts
|
|
25877
25911
|
/**
|
package/dist/server/theme.mjs
CHANGED
|
@@ -636,6 +636,14 @@ z.string().transform((value, ctx) => {
|
|
|
636
636
|
return z.NEVER;
|
|
637
637
|
});
|
|
638
638
|
//#endregion
|
|
639
|
+
//#region ../theme-core/src/footer/mode.ts
|
|
640
|
+
const footerModeSchema = z.enum([
|
|
641
|
+
"default",
|
|
642
|
+
"blocks",
|
|
643
|
+
"default+blocks",
|
|
644
|
+
"none"
|
|
645
|
+
]);
|
|
646
|
+
//#endregion
|
|
639
647
|
//#region ../theme-core/src/lib/media.ts
|
|
640
648
|
const hotspotSchema = z.object({
|
|
641
649
|
x: z.number().min(0).max(1),
|
|
@@ -1335,7 +1343,7 @@ const BUTTON_CONTRAST_POLICY = {
|
|
|
1335
1343
|
nonTextMinimumRatio: 3,
|
|
1336
1344
|
gradientSamplesPerSegment: 20,
|
|
1337
1345
|
alphaBackgrounds: "reject-without-known-surface",
|
|
1338
|
-
disabled: "
|
|
1346
|
+
disabled: "validated-colour-pair-with-muted-control-opacity"
|
|
1339
1347
|
};
|
|
1340
1348
|
function validateButtonSurfaceContrast(input) {
|
|
1341
1349
|
const ratio = contrastRatio(input.buttonPaint, input.surfaceHex);
|
|
@@ -5435,12 +5443,6 @@ const footerVariant = z.enum([
|
|
|
5435
5443
|
"split"
|
|
5436
5444
|
]);
|
|
5437
5445
|
const footerMaxWidth = z.enum(["container", "full"]);
|
|
5438
|
-
const footerMode = z.enum([
|
|
5439
|
-
"default",
|
|
5440
|
-
"blocks",
|
|
5441
|
-
"default+blocks",
|
|
5442
|
-
"none"
|
|
5443
|
-
]);
|
|
5444
5446
|
const footerNavLayoutMode = z.enum([
|
|
5445
5447
|
"stack",
|
|
5446
5448
|
"inline",
|
|
@@ -5529,9 +5531,9 @@ const footerSchema = z.object({
|
|
|
5529
5531
|
/**
|
|
5530
5532
|
* SDK-only footer rendering mode.
|
|
5531
5533
|
*
|
|
5532
|
-
*
|
|
5534
|
+
* Historical persisted field; SDK rendering mode now lives in layout.footerMode.
|
|
5533
5535
|
*/
|
|
5534
|
-
mode:
|
|
5536
|
+
mode: footerModeSchema.optional(),
|
|
5535
5537
|
variant: footerVariant,
|
|
5536
5538
|
maxWidth: footerMaxWidth,
|
|
5537
5539
|
showLogoText: z.boolean().optional(),
|
package/dist/styles/index.css
CHANGED
|
@@ -792,10 +792,19 @@
|
|
|
792
792
|
padding-top: 2.5rem;
|
|
793
793
|
padding-bottom: 2.5rem;
|
|
794
794
|
}
|
|
795
|
+
/* Clearance for a surface that is not an authored block page.
|
|
796
|
+
An authored page gets this through its opening block's container (see the
|
|
797
|
+
overlay-clearance rule in styles.css). A reserved surface or a system
|
|
798
|
+
destination page has no such block, so it consumes the same variable here.
|
|
799
|
+
Marked with one class rather than per-surface selectors, because the last
|
|
800
|
+
two additions to this family were both missed and shipped overlapping. */
|
|
795
801
|
:where(.theme-scope)
|
|
796
802
|
[data-site-document-layout-mode="header-overlay"]
|
|
797
|
-
|
|
798
|
-
padding-top: calc(
|
|
803
|
+
.rb-overlay-clearance-surface {
|
|
804
|
+
padding-top: calc(
|
|
805
|
+
var(--site-overlay-header-clearance, 5.5rem) +
|
|
806
|
+
var(--site-overlay-opening-content-extra-pad, clamp(1rem, 2vw, 1.75rem))
|
|
807
|
+
);
|
|
799
808
|
}
|
|
800
809
|
.rb-preview-editor-offset {
|
|
801
810
|
padding-bottom: calc(
|
|
@@ -11094,6 +11103,23 @@
|
|
|
11094
11103
|
gap: 0.5rem;
|
|
11095
11104
|
}
|
|
11096
11105
|
|
|
11106
|
+
/* Error panel and field notes. The form block scopes these to its own
|
|
11107
|
+
data-block, so the newsletter form (which also renders in the footer)
|
|
11108
|
+
needs its own copy of the treatment. */
|
|
11109
|
+
:where(.theme-scope) .newsletter-form .fb-error:not([data-field-validation-message]) {
|
|
11110
|
+
background-color: var(--fb-error-bg);
|
|
11111
|
+
color: var(--fb-error-text);
|
|
11112
|
+
border: 1px solid var(--fb-error-border);
|
|
11113
|
+
border-radius: var(--rb-block-radius);
|
|
11114
|
+
padding: 1rem;
|
|
11115
|
+
font-size: 0.875rem;
|
|
11116
|
+
}
|
|
11117
|
+
|
|
11118
|
+
:where(.theme-scope) .newsletter-form [data-field-validation-message] {
|
|
11119
|
+
font-size: 0.875rem;
|
|
11120
|
+
color: var(--fb-error-text);
|
|
11121
|
+
}
|
|
11122
|
+
|
|
11097
11123
|
/* Required indicator */
|
|
11098
11124
|
:where(.theme-scope) .newsletter-required {
|
|
11099
11125
|
color: rgb(var(--tb-primary));
|