@riverbankcms/sdk 0.126.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/dist/{PreviewEditorSidebar-DcYJxTgc.mjs → PreviewEditorSidebar-BXtfF7tp.mjs} +58 -38
- package/dist/{PreviewEditorUI-Ctt1yTJr.mjs → PreviewEditorUI-Dou73Q0K.mjs} +2 -2
- package/dist/{SdkPreviewModeRuntime-CvW1vdQ4.mjs → SdkPreviewModeRuntime-B0HPXr-l.mjs} +119 -41
- package/dist/{SiteChromeCustomizeContext-C87qlKWw.mjs → SiteChromeCustomizeContext-DZiDBAYu.mjs} +9961 -9583
- package/dist/_dts/ai/src/contracts/proposals.d.ts +198 -0
- package/dist/_dts/api/src/contentRuntime.d.ts +1 -5
- 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/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 +143 -155
- 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/PreviewShell.d.ts +12 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +7 -1
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +4 -49
- 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/sdk/src/rendering/islands/types.d.ts +2 -2
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- 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/schema.d.ts +67 -19
- 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 +1 -1
- package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +4 -1
- package/dist/cli/index.mjs +973 -1081
- package/dist/client/{DiscountCodeDisclosure-DS0AuFWW.mjs → DiscountCodeDisclosure-BDFRp8Y7.mjs} +1 -1
- package/dist/client/{EventCombined.client-DtMxLr7q.mjs → EventCombined.client-DJgF1_lf.mjs} +2 -2
- package/dist/client/{EventListing.client-BdLSRNg1.mjs → EventListing.client-CnWGNjOr.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-BrpC6vsT.mjs → LeafletStaticMap-BISs9Bl7.mjs} +1 -1
- package/dist/client/{MagicLinkForm-Bt3IuLMy.mjs → MagicLinkForm-b5E_HoG9.mjs} +1 -1
- package/dist/client/{StepIndicator-CBYPFVoy.mjs → StepIndicator-D8gVYkK-.mjs} +2 -2
- package/dist/client/{accordion-BqqwPJWM.mjs → accordion-DFDajgDz.mjs} +1 -1
- package/dist/client/{bookingForm-SneP3yxC.mjs → bookingForm-Bdqj9-52.mjs} +5 -5
- package/dist/client/bookings.mjs +126 -23
- package/dist/client/{carousel-BTIR9L3I.mjs → carousel-Cvqf-kN8.mjs} +1 -1
- package/dist/client/{cart-bqiqd8SX.mjs → cart-CuH2TJXP.mjs} +3 -3
- package/dist/client/{checkout-WbTFV5v4.mjs → checkout-CMNPpejZ.mjs} +3 -3
- package/dist/client/client.mjs +1227 -1209
- package/dist/client/{courseRegistration-BcemLAdN.mjs → courseRegistration-DTEYWL6Z.mjs} +6 -6
- package/dist/client/{eventCalendar-CsxIw0V_.mjs → eventCalendar-BW-XoxZ0.mjs} +4 -4
- package/dist/client/{eventCombined-B6XMoHfa.mjs → eventCombined-Bpn7s0y9.mjs} +2 -2
- package/dist/client/{eventDetails-BJaoPPfo.mjs → eventDetails-D2uUSTMH.mjs} +3 -3
- package/dist/client/{eventListing-DgwdYHRT.mjs → eventListing-CVr1c094.mjs} +2 -2
- package/dist/client/{eventRegistration-C0O3folu.mjs → eventRegistration-Dv4AvkMw.mjs} +6 -6
- package/dist/client/{form-Bk9txGFt.mjs → form-DxdKf9fs.mjs} +1 -1
- package/dist/client/{headerSection-yIBt0yTv.mjs → headerSection-BaXI5Sro.mjs} +2 -2
- package/dist/client/hooks.mjs +801 -874
- package/dist/client/{locationMap-C-3KIpv-.mjs → locationMap-BEtW2fKz.mjs} +2 -2
- package/dist/client/{newsletterForm-CzB8g8h2.mjs → newsletterForm-BKKs0S4R.mjs} +1 -1
- package/dist/client/{pricing-C1QeDes_.mjs → pricing-ClkqcElA.mjs} +1 -1
- package/dist/client/{productDetail-w7SBp5uc.mjs → productDetail-H-ru8dyy.mjs} +3 -3
- package/dist/client/{productList-D0tGKHGf.mjs → productList-Buyi5c0C.mjs} +3 -3
- package/dist/client/{propsDecoder-Bcin2DB3.mjs → propsDecoder-BF7i6Ijg.mjs} +127 -55
- package/dist/client/rendering/client.mjs +928 -916
- package/dist/client/rendering/islands.mjs +18 -18
- package/dist/client/rendering.mjs +1130 -1114
- package/dist/client/{scrollToBlock-h-o_STf_.mjs → scrollToBlock-D_7t8yWb.mjs} +1 -1
- package/dist/client/{shop-BGzmL8O_.mjs → shop-CF7SZQNX.mjs} +5 -5
- package/dist/client/{shop-commerce-lX8QxjX-.mjs → shop-commerce-DA7_Rq5p.mjs} +4 -4
- package/dist/client/{shop-commerce-store-CEurARtu.mjs → shop-commerce-store-BmLqW7Gh.mjs} +1 -1
- package/dist/client/{shopShared-DXxH8xxw.mjs → shopShared-WL-E1znM.mjs} +2 -2
- package/dist/client/{useEventFilters-B591g9vd.mjs → useEventFilters-rc8VLeLV.mjs} +2 -2
- package/dist/client/{usePolling-BvnChV4m.mjs → usePolling-1ncrfd4S.mjs} +2 -2
- package/dist/preview-next/client/runtime.mjs +3 -3
- package/dist/{sdk-runtime-M__i3Jce.mjs → sdk-runtime-BnrCCFJq.mjs} +1 -1
- package/dist/{separator-VSlnI9bc.mjs → separator-CFvBx2yl.mjs} +1 -1
- package/dist/server/components.mjs +1302 -1350
- package/dist/server/config-validation.mjs +801 -874
- package/dist/server/config.mjs +801 -874
- package/dist/server/data.mjs +801 -874
- package/dist/server/index.mjs +1 -1
- package/dist/server/next.mjs +1303 -1351
- package/dist/server/page-converter.mjs +801 -874
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +1296 -1344
- package/dist/server/rendering.mjs +1302 -1350
- package/dist/server/routing.mjs +869 -895
- package/dist/server/server.mjs +802 -875
- package/dist/server/theme-bridge.mjs +151 -118
- package/dist/server/theme.mjs +111 -23
- package/package.json +1 -1
- package/dist/_dts/editor-blocks/src/widgets/rich-text/ensureRichTextImageAssetIdentifier.d.ts +0 -8
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { $ as
|
|
2
|
+
import { $ as createOptimisticActionRunner, $o as resolveButtonStyleSelection, A as isPreviewingChange, B as previewHeaderStyle, Bs as SelectValue, Bt as useEditorUiStore, D as createStyleConfiguratorState, Dl as Maximize2, Dn as ThemeScope, E as cancelPreview, Ei as findFooterLook, F as palettePreviewProjection, G as syncStyleConfiguratorState, Gs as PopoverContent, H as resetTypographyToSaved, Hs as CalloutDescription, I as previewButtonStyle, Ii as getHeaderLayout, Il as ChevronRight, Is as Select, Js as Tabs, K as toggleRow, Ks as PopoverTrigger, L as previewCuratedPalette, Li as getHeaderStyle, Ll as ChevronLeft, Ls as SelectContent, M as markApplySaved, N as markApplySaving, O as deriveStyleConfiguratorCapabilities, Oc as cn, Ol as LoaderCircle, P as openRow, Pt as BlockEditor, Qc as assertNever$1, Qo as findButtonStyleRecipe, R as previewFooterLook, Rs as SelectItem, Si as curatedSiteStyles, T as applyTypographyDraftPatch, Tc as Button, Tl as Monitor, U as setPaletteColors, Us as SearchInput, V as previewSiteStyle, Vs as Callout, Vt as useEditorUiStoreInstance, W as styleConfiguratorHistoryEntryForPersistedSelection, Wi as curatedPalettes, Ws as Popover, Xs as TabsList, Ys as TabsContent, Zo as buttonStyleSelectionParameterValue, Zs as TabsTrigger, _ as cycleableSiteChromeOptions, _c as DropdownMenuTrigger, _l as Smartphone, _s as paletteColorEntries, ac as CollapsibleContent, an as resolvePageRouteSlug, at as ContentFieldsForm, c as selectionSnapshotFromApplySiteStyleSelectionResponse, d as resolveStyleConfiguratorInitialSnapshot, dc as Surface, dn as createManifestValidation, es as updateButtonStyleSelectionChoice, et as resolvePreviewSidebarTab, fc as DropdownMenu, fn as FormRenderer, g as cycleSiteChromeLookId, gc as DropdownMenuSeparator, h as buildSiteChromeLookModels, hc as DropdownMenuLabel, ic as Collapsible, in as deriveRouteMetadataPresentation, is as themeButtonClassName, j as markApplyFailed, jc as unsafeAsEditorBlockId, k as dismissWarnings, l as deriveSiteStylePreviewUpdate, ll as X$1, ln as ManifestForm, lt as useEntryController, m as reportPreviewDesignError, mc as DropdownMenuItem, ml as Tablet, mn as createStoreBackend, n as useSiteChromeCustomizeOptional, nn as isAdapterReferenceKind, oc as CollapsibleTrigger, on as resolveContentTitle, ot as useUISelector, p as PREVIEW_DESIGN_SAVE_ERROR_MESSAGE, pc as DropdownMenuContent, qs as Input, s as buildApplySiteStyleSelectionBody, ts as buttonStyleSelectionKey, tt as FooterComposerPanel, u as planSiteStylePreviewChange, v as planSiteChromeLookSelection, vl as SlidersHorizontal, vn as listEntryPageContentSlots, vs as paletteColorsSchema, w as applyResolvedSelections, wi as getCuratedSiteStyle, x as usePreviewDesignCoordinator, y as siteChromeLookUnavailableReasonLabel, z as previewHeaderLayout, zl as Check, zs as SelectTrigger } from "./SiteChromeCustomizeContext-DZiDBAYu.mjs";
|
|
3
3
|
import { d as unwrapResponse, f as getDashboardUrl, r as usePreviewAuth } from "./previewAuthStore-Dev9CdG9.mjs";
|
|
4
|
-
import { S as getSiteFontsStorageUrl, _ as useBlockCustomizeControls, b as buildFontPreviewUrl, d as resolvePreviewDashboardSetupHandoff, f as resolvePreviewEditorGuidanceModel, g as usePreviewBlockCustomizeSelectionOptional, h as canInspectSiteStyle, m as canApplySiteStyle, p as resolvePreviewSidebarChromeModel, u as buildPreviewDashboardSetupUrl, v as PreviewFormProvider, x as generateFontFaceCss, y as previewWidgetOverrides } from "./SdkPreviewModeRuntime-
|
|
5
|
-
import { t as Separator } from "./separator-
|
|
4
|
+
import { S as getSiteFontsStorageUrl, _ as useBlockCustomizeControls, b as buildFontPreviewUrl, d as resolvePreviewDashboardSetupHandoff, f as resolvePreviewEditorGuidanceModel, g as usePreviewBlockCustomizeSelectionOptional, h as canInspectSiteStyle, m as canApplySiteStyle, p as resolvePreviewSidebarChromeModel, u as buildPreviewDashboardSetupUrl, v as PreviewFormProvider, x as generateFontFaceCss, y as previewWidgetOverrides } from "./SdkPreviewModeRuntime-B0HPXr-l.mjs";
|
|
5
|
+
import { t as Separator } from "./separator-CFvBx2yl.mjs";
|
|
6
6
|
import React, { createContext, forwardRef, useCallback, useContext, useEffect, useId, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore, useTransition } from "react";
|
|
7
7
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
8
8
|
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
|
@@ -2176,6 +2176,60 @@ function ButtonStylePreviewPair({ selection, previewTheme, compact = false }) {
|
|
|
2176
2176
|
});
|
|
2177
2177
|
}
|
|
2178
2178
|
//#endregion
|
|
2179
|
+
//#region ../preview-next/src/client/preview/HeaderMenuControls.tsx
|
|
2180
|
+
function isHeaderMenuSurfaceState(state) {
|
|
2181
|
+
return state.kind === "available" && state.surface === "header";
|
|
2182
|
+
}
|
|
2183
|
+
function HeaderMenuControls({ state, disabled, onMenuFontChange, onMenuFontSizeChange }) {
|
|
2184
|
+
const customize = useSiteChromeCustomizeOptional();
|
|
2185
|
+
const controlDisabled = disabled || !state.applyAllowed;
|
|
2186
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
2187
|
+
className: "grid grid-cols-2 gap-2 rounded-md border bg-muted/20 p-2",
|
|
2188
|
+
children: [
|
|
2189
|
+
/* @__PURE__ */ jsxs("label", {
|
|
2190
|
+
className: "block text-xs font-medium text-muted-foreground",
|
|
2191
|
+
children: [/* @__PURE__ */ jsx("span", { children: "Menu font" }), /* @__PURE__ */ jsx("select", {
|
|
2192
|
+
className: "mt-1 h-8 w-full rounded-md border bg-background px-2 text-sm text-foreground disabled:cursor-not-allowed disabled:opacity-50",
|
|
2193
|
+
value: state.menuFont,
|
|
2194
|
+
onChange: (event) => onMenuFontChange?.(event.currentTarget.value),
|
|
2195
|
+
disabled: controlDisabled,
|
|
2196
|
+
children: state.menuFontOptions.map((option) => /* @__PURE__ */ jsx("option", {
|
|
2197
|
+
value: option.value,
|
|
2198
|
+
children: option.label
|
|
2199
|
+
}, option.value))
|
|
2200
|
+
})]
|
|
2201
|
+
}),
|
|
2202
|
+
/* @__PURE__ */ jsxs("label", {
|
|
2203
|
+
className: "block text-xs font-medium text-muted-foreground",
|
|
2204
|
+
children: [/* @__PURE__ */ jsx("span", { children: "Menu font size" }), /* @__PURE__ */ jsx("select", {
|
|
2205
|
+
className: "mt-1 h-8 w-full rounded-md border bg-background px-2 text-sm text-foreground disabled:cursor-not-allowed disabled:opacity-50",
|
|
2206
|
+
value: state.menuFontSize,
|
|
2207
|
+
onChange: (event) => onMenuFontSizeChange?.(event.currentTarget.value),
|
|
2208
|
+
disabled: controlDisabled,
|
|
2209
|
+
children: state.menuFontSizeOptions.map((option) => /* @__PURE__ */ jsx("option", {
|
|
2210
|
+
value: option.value,
|
|
2211
|
+
children: option.label
|
|
2212
|
+
}, option.value))
|
|
2213
|
+
})]
|
|
2214
|
+
}),
|
|
2215
|
+
state.interactionPalette.kind === "available" ? /* @__PURE__ */ jsxs("label", {
|
|
2216
|
+
className: "block text-xs font-medium text-muted-foreground",
|
|
2217
|
+
children: [/* @__PURE__ */ jsx("span", { children: "Hover pill colour" }), /* @__PURE__ */ jsx("select", {
|
|
2218
|
+
"aria-label": "Hover pill colour",
|
|
2219
|
+
className: "mt-1 h-8 w-full rounded-md border bg-background px-2 text-sm text-foreground disabled:cursor-not-allowed disabled:opacity-50",
|
|
2220
|
+
value: state.interactionPalette.preference,
|
|
2221
|
+
onChange: (event) => customize?.setHeaderInteractionPalette(event.currentTarget.value),
|
|
2222
|
+
disabled: controlDisabled,
|
|
2223
|
+
children: state.interactionPalette.options.map((option) => /* @__PURE__ */ jsx("option", {
|
|
2224
|
+
value: option.value,
|
|
2225
|
+
children: option.label
|
|
2226
|
+
}, option.value))
|
|
2227
|
+
})]
|
|
2228
|
+
}) : null
|
|
2229
|
+
]
|
|
2230
|
+
});
|
|
2231
|
+
}
|
|
2232
|
+
//#endregion
|
|
2179
2233
|
//#region ../preview-next/src/client/preview/typographyFontCatalog.ts
|
|
2180
2234
|
const typographyFontCategories = [
|
|
2181
2235
|
{
|
|
@@ -3827,7 +3881,7 @@ function SiteChromeLookRow({ label, ariaLabel, defaultDescription, catalog, opti
|
|
|
3827
3881
|
children: options.map((look) => /* @__PURE__ */ jsx(PickerOption, {
|
|
3828
3882
|
selected: look.id === currentId,
|
|
3829
3883
|
label: look.label,
|
|
3830
|
-
description: look.description,
|
|
3884
|
+
description: look.available ? look.description : [look.description, siteChromeLookUnavailableReasonLabel(look.unavailableReason)].filter(Boolean).join(" "),
|
|
3831
3885
|
onSelect: () => onPreview(look.id),
|
|
3832
3886
|
disabled: disabled || !look.available
|
|
3833
3887
|
}, look.id ?? "site-style-default"))
|
|
@@ -3835,40 +3889,6 @@ function SiteChromeLookRow({ label, ariaLabel, defaultDescription, catalog, opti
|
|
|
3835
3889
|
]
|
|
3836
3890
|
});
|
|
3837
3891
|
}
|
|
3838
|
-
function isHeaderMenuSurfaceState(state) {
|
|
3839
|
-
return state.kind === "available" && state.surface === "header" && Array.isArray(state.menuFontOptions) && Array.isArray(state.menuFontSizeOptions);
|
|
3840
|
-
}
|
|
3841
|
-
function HeaderMenuControls({ state, disabled, onMenuFontChange, onMenuFontSizeChange }) {
|
|
3842
|
-
const controlDisabled = disabled || !state.applyAllowed;
|
|
3843
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
3844
|
-
className: "grid grid-cols-2 gap-2 rounded-md border bg-muted/20 p-2",
|
|
3845
|
-
children: [/* @__PURE__ */ jsxs("label", {
|
|
3846
|
-
className: "block text-xs font-medium text-muted-foreground",
|
|
3847
|
-
children: [/* @__PURE__ */ jsx("span", { children: "Menu font" }), /* @__PURE__ */ jsx("select", {
|
|
3848
|
-
className: "mt-1 h-8 w-full rounded-md border bg-background px-2 text-sm text-foreground disabled:cursor-not-allowed disabled:opacity-50",
|
|
3849
|
-
value: state.menuFont,
|
|
3850
|
-
onChange: (event) => onMenuFontChange?.(event.currentTarget.value),
|
|
3851
|
-
disabled: controlDisabled,
|
|
3852
|
-
children: state.menuFontOptions.map((option) => /* @__PURE__ */ jsx("option", {
|
|
3853
|
-
value: option.value,
|
|
3854
|
-
children: option.label
|
|
3855
|
-
}, option.value))
|
|
3856
|
-
})]
|
|
3857
|
-
}), /* @__PURE__ */ jsxs("label", {
|
|
3858
|
-
className: "block text-xs font-medium text-muted-foreground",
|
|
3859
|
-
children: [/* @__PURE__ */ jsx("span", { children: "Menu font size" }), /* @__PURE__ */ jsx("select", {
|
|
3860
|
-
className: "mt-1 h-8 w-full rounded-md border bg-background px-2 text-sm text-foreground disabled:cursor-not-allowed disabled:opacity-50",
|
|
3861
|
-
value: state.menuFontSize,
|
|
3862
|
-
onChange: (event) => onMenuFontSizeChange?.(event.currentTarget.value),
|
|
3863
|
-
disabled: controlDisabled,
|
|
3864
|
-
children: state.menuFontSizeOptions.map((option) => /* @__PURE__ */ jsx("option", {
|
|
3865
|
-
value: option.value,
|
|
3866
|
-
children: option.label
|
|
3867
|
-
}, option.value))
|
|
3868
|
-
})]
|
|
3869
|
-
})]
|
|
3870
|
-
});
|
|
3871
|
-
}
|
|
3872
3892
|
function PaletteRow({ expanded, onToggle, siteStyle, palette, onPreview, onTokenChange, disabled, mutationDisabled }) {
|
|
3873
3893
|
const optionRefs = useRef([]);
|
|
3874
3894
|
const suggestedKeys = new Set(siteStyle.paletteRecommendations.map((recommendation) => recommendation.id));
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { $s as DialogContent,
|
|
2
|
+
import { $s as DialogContent, Bt as useEditorUiStore, Cl as PenLine, Ec as cva, Fs as TooltipTrigger, Ml as EllipsisVertical, Ns as Tooltip, Oc as cn, Ol as LoaderCircle, Ps as TooltipContent, Qs as Dialog, Rl as ChevronDown, Sl as Pencil, Tc as Button, Vt as useEditorUiStoreInstance, Zt as useMultiAutosave, _c as DropdownMenuTrigger, a as previewDesignHistoryDomainForCommand, bl as Redo2, dl as Undo2, ec as DialogDescription, fc as DropdownMenu, fl as TriangleAlert, gl as Sparkles, i as usePreviewDesignHistoryOrder, jl as Eye, jt as useEditor, mc as DropdownMenuItem, n as useSiteChromeCustomizeOptional, nc as DialogHeader, o as selectPreviewDesignHistoryDomain, pc as DropdownMenuContent, rc as DialogTitle, ut as useEntryEditorController, wl as Palette, zt as classifyHistoryShortcut } from "./SiteChromeCustomizeContext-DZiDBAYu.mjs";
|
|
3
3
|
import { d as unwrapResponse, r as usePreviewAuth } from "./previewAuthStore-Dev9CdG9.mjs";
|
|
4
|
-
import { C as FixedBottomSurface, a as usePreviewPageDesignEditorState, c as applyPreviewChromeSurfaceToElement, l as resolvePreviewChromeSurface, o as PREVIEW_CHROME_PORTAL_CLASS_NAME, s as PREVIEW_CHROME_THEME_CLASS_NAME } from "./SdkPreviewModeRuntime-
|
|
4
|
+
import { C as FixedBottomSurface, a as usePreviewPageDesignEditorState, c as applyPreviewChromeSurfaceToElement, l as resolvePreviewChromeSurface, o as PREVIEW_CHROME_PORTAL_CLASS_NAME, s as PREVIEW_CHROME_THEME_CLASS_NAME } from "./SdkPreviewModeRuntime-B0HPXr-l.mjs";
|
|
5
5
|
import * as React$1 from "react";
|
|
6
6
|
import { useCallback, useEffect, useMemo, useState, useTransition } from "react";
|
|
7
7
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { $ as resolvePreviewSidebarTab, $a as markEditableSurfaceForwarding, $c as expectParsedBrandedId, $i as normalizeOfferingsPreviewItemLimit, $n as shopBlockDefinition, $r as singleButtonFragment, $s as DialogContent, $t as createSnapshotFromPageRecord, Aa as formatEventTeacherLine, Ac as parseFooterModuleId, Ai as getGradientPreset, Al as GripVertical, An as buildThemeRuntime, Ao as FileArchiveIcon, Ar as buildCheckoutInteractiveIslandProps, As as unmapValueFromSelect, At as useEditor, Ba as getLocalMinuteOfDay, Bc as parseBookingLocalDate, Bi as backgroundAppearanceQuickColorTokenNames, Bl as ArrowDown, Bn as SITE_CHROME_VISIBLE_HEADER_SELECTOR, Bo as getCurrentResolveImageUrlContext, Br as EMPTY_COMMERCE_CART_STATE, Bs as SelectValue, Bt as useEditorUiStoreInstance, Ca as normalizeLocationMapProps, Cc as composeEventHandlers, Ci as designRuntimeRulesForTheme, Cn as DEFAULT_LAUNCH_READINESS_INPUT, Co as ArrowDownIcon, Cr as giftingBlockDefinition, Cs as getFieldIntent, Ct as MediaField, Da as formatEventDateParts, Dc as useComposedRefs, Di as gradientToCss, Dn as ThemeScope, Do as CirclePlusIcon, Dr as checkoutBlockDefinition, Ds as hasEmptyOption, Dt as RichTextField, Ea as formatEventCompactDateRail, El as Minus, En as isSupportedLoaderEndpoint, Eo as CircleMinusIcon, Er as buildCourseRegistrationInteractiveIslandProps, Es as useSdkConfig, Et as useRichTextImagePicker, Fa as resolveEventCta, Fc as formatBookingDateTime, Fi as sectionTransitionVariantForBoundaryOptionId, Fl as CircleMinus, Fn as generateDefaultAccordionSystem, Fo as PlusIcon, Fr as buildCartDisplay, Ft as prepareBlockEditorManifest, Ga as buildInteractiveIslandProps, Gc as formatBookingPriceDisplay, Gi as createTransformRegistry, Gn as mediaTransforms, Go as resolveMediaStorageUrl, Gr as productItemKey, Gt as pushHistoryEntry, Ha as normalizeEventRegistrationPageSurfaceSubject, Hc as toBookingTimeZone, Hi as parseBackgroundAppearanceColorToken, Hn as planSiteOverlayHeaderClearance, Ho as renderVideo, Hr as buildProductCartItem, Ht as canRedoHistory, Ia as resolveEventLinkProps, Ic as formatBookingInstant, Il as ChevronRight, In as getBlockDefinition, Io as ImagePresets, Ir as buildProductCardDisplay, Is as Select, It as stripTopLevelRoutingUi, J as deriveTransactionCapabilities, Ja as createZodCodec, Jc as publicEventPricingType, Jn as formattingTransforms, Jo as attachRenderableMediaAssetFields, Jr as headingFragment, Js as Tabs, Jt as unsafeAsLinkedContentEntryId, K as beginAutosaveBatch, Ka as createInteractiveIslandCodec, Kc as publicEventPricingCurrency, Ki as runTransforms, Kn as layoutTransforms, Ko as setContextResolveImageUrlContext, Kr as reduceCommerceCart, Kt as redoHistory, La as getEventAvailability, Lc as formatBookingTime, Ll as ChevronLeft, Ln as projectRecurringSchedule, Lo as MediaPlaceholder, Lr as buildProductDetailDisplay, Ls as SelectContent, Lt as getBlockManifestFromSdkConfig, Ma as getCardOrientation, Mc as unsafeAsEditorBlockValues, Mi as defaultSectionTransitionVariantForFamily, Mn as getResponsiveScopeSpec, Mo as FileSpreadsheetIcon, Mr as buildProductListInteractiveIslandProps, Ms as useField, Mt as LinkWidgetProvider, Na as getContainerClass, Nc as addLocalScheduleDays, Ni as sectionTransitionFamilies, Nl as CreditCard, Nn as escapeStyleContent, No as FileTextIcon, Nr as buildShopInteractiveIslandProps, Oa as formatEventPrice, Oc as cn, Oi as GRADIENT_PRESETS, On as containerResponsiveThemeCss, Oo as ClockIcon$1, Or as cartBlockDefinition, Os as mapCurrentValueForSelect, Ot as RichTextWidgetProvider, Pa as groupEventsByDate, Pc as formatBookingDate, Pi as sectionTransitionFamilyForBoundaryOptionId, Pl as CirclePlus, Pn as mergeContentWithBlockStyleOverrides, Po as MinusIcon, Pr as getShopDisplayForItems, Pt as hideThemeV2RawStyleFields, Qa as composeHeaderSectionWrapperClassName, Qc as assertNever$5, Qi as buildOfferingsPreviewRenderStates, Qn as NAV_DROPDOWN_SHIFT_PROPERTY, Qr as blogFeaturedPostFragment, Qs as Dialog, Qt as createRoutingHelpers, Ra as getEventAvailabilityStatus, Rc as formatLocalScheduleDate, Ri as BACKGROUND_BODY_TEXT_MIN_CONTRAST_RATIO, Rl as ChevronDown, Rn as siteFooterManifest, Ro as buildResolveImageUrlContext, Rr as formatCommercePrice, Rs as SelectItem, S as usePreviewThemeOverlay, Sa as buildGoogleMapsDirectionsUrl, Sc as createContextScope, Sn as decodePublicProductCategorySelectorQuery, So as getIconComponent, Sr as getWizardStepsForContext$1, Ss as textColorStyle, St as FileField, Ta as formatDate$3, Tc as Button, Ti as surfaceResolutionContextFromTheme, Tn as AMBIENT_BACKGROUND_ROLES, To as ChevronDownIcon, Tr as courseRegistrationBlockDefinition, Ts as SdkConfigProvider, Tt as ReferenceWidgetProvider, Ua as resolveEventRegistrationScopedEvents, Uc as toScheduledBookingDateTime, Ui as defaultThemeTokens, Un as visibleHeaderClearancePx, Uo as resolveImageUrlWithContext, Ur as deriveCommerceCheckoutState, Ut as canUndoHistory, Va as resolveRuntimeEventPricing, Vc as resolveBookingTimeZoneId, Vi as foregroundTokenForBackgroundAppearanceColorToken, Vl as __exportAll, Vn as SITE_OVERLAY_HEADER_CLEARANCE_CSS_VAR, Vo as renderAudio, Vr as buildPassCartItem, Vt as useOptionalEditorUiStoreInstance, Wa as blockBookingPaymentTermsSchema, Wc as parseEventPageSurfaceSubject, Wn as contentTransforms, Wo as resolveMediaNodeResponsiveImage, Wr as parseStoredCommerceCartState, Wt as createHistoryState, X as idleEditorTransactionQueueState, Xa as defineProgressiveBlockRuntime, Xc as publicEventTicketTypes, Xn as ImageResolveContextProvider, Xo as siblingPath, Xr as faqAccordionFragment, Xs as TabsList, Y as enqueueTransaction, Ya as defineClientOwnedBlockRuntime, Yc as publicEventScalarPrice, Yn as createManifestValidator, Yo as getAtPath, Yr as cardFragment, Ys as TabsContent, Yt as recordsEqual, Z as rejectAutosaveBatch, Zc as formatCurrencyAmount, Zi as OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS, Zn as useImageResolveContextOptional, Zr as faqHeadingFragment, Zs as TabsTrigger, Zt as useDebouncedLatestSave, _a as when, _i as compileEditorModelRuntime, _n as useMediaEditorOptional, _o as inlineTextToPlainText, _r as resolveDiscountContext, _t as IconPickerField, aa as buildEventCollectionDisplay, ai as heroCtaRowFragment, al as unsafeAsFormId, ao as resolveFeatureCardGeneratedIconSizePx, ar as buildEventListingInteractiveIslandProps, as as parseThemeForPersistence, at as useUISelector, ba as eventCalendarListLayoutCompatibleDisplayModeValues, bc as createCollection, bi as planPageDesignLayoutLookCompatibility, bn as getPageDesignEditorState, bo as canonicalizePersistedBlockButtonRole, br as WIZARD_STEPS$1, bs as mergeStyles, bt as ButtonVariantField, ca as eventCollectionDisplaySchemaShape, cc as Root, ci as bodyCopyFragment, cl as ok$3, cn as validateBlockManifestIssues, co as parseBlockIconValue, cr as buildEventCalendarListingDisplay, cs as resolveOnColorForThemeToken, da as buildEventRuntimeFilters, di as getAnchorClasses, do as parseGeneratedIconSetId, dr as buildFormInteractiveIslandProps, ds as pageDesignEditorBackgroundOverrideOwner, dt as createSiteOptionWidgetAdapters, ea as resolveOfferingsPreviewCoursePath, ec as DialogDescription, ei as formEmbedFragment, el as parseMediaAssetId, en as BUILT_IN_REFERENCE_KINDS, eo as splitPositioningClasses, er as productListBlockDefinition, f as PREVIEW_DESIGN_LOAD_ERROR_MESSAGE, fa as getEventRuntimeFiltersKey, fi as boxStylesTransforms, fn as FormRenderer, fo as RichTextDocSchema, fr as eventRegistrationBlockDefinition, fs as asDesignBlockId, ft as SiteOptionPickerField, ga as el, gi as applyCompiledRuntimeFieldsToContent, gl as Sparkles, gn as MediaEditorContextProvider, go as coerceInlineTextWithFallback, gr as findPreSelectedEvent, gs as normalizeCardVariantRole, gt as InlineTextField, ha as normalizeOptionalId, hi as formatSiteChromeBackgroundTokenLabel, hl as Star, hn as MediaEditor, ho as logger, hr as findEventByOccurrenceId, hs as normalizeBoxStylesCardVariant, ht as OfferingsPreviewWidgetProvider, i as usePreviewDesignHistoryOrder, ia as resolveSpacing, ii as ctaCopyFragment, il as unsafeAsCustomerPassId, io as FEATURE_CARD_ICON_TREATMENTS, ir as eventListingBlockDefinition, is as themeButtonClassName, ja as formatTime$3, jc as unsafeAsEditorBlockId, ji as parseGradientPresetId, jn as DEFAULT_THEME_RESPONSIVE_MODE, jo as FileAudioIcon, jr as buildProductDetailInteractiveIslandProps, js as FieldFrame, jt as LinkField, ka as formatEventPriceDisplay, kc as clsx, ki as GRADIENT_PRESET_IDS, kl as Image, kn as createCustomBlockRegistry, ko as DownloadIcon, kr as buildCartInteractiveIslandProps, ks as mapOptionValueForSelect, kt as EditorProvider, la as eventCollectionHydrationSchema, lc as Trigger, li as defineFragment, ll as X, lo as resolveBlockIconRenderValue, lr as buildEventCalendarListingRender, ls as resolveTokenOrCssColorValue, lt as useEntryEditorController, m as reportPreviewDesignError, ma as normalizeCsvString, mi as resolveBackgroundColorValue, mn as createStoreBackend, mo as isRecord$20, mr as toRegistrationEvents, ms as ICON_CONFIG, mt as OfferingsPreviewGroupOrderField, n as useSiteChromeCustomizeOptional, na as resolveOfferingsPreviewGroups, nc as DialogHeader, ni as testimonialsCarouselFragment, nl as unsafeAsAppointmentResourceId, nn as parseReferenceKind, no as PUBLIC_DOWNLOAD_MEDIA_TYPES, nr as newsletterSignupBlockDefinition, ns as AFFORDANCE_SUPPRESS_CLASS, nt as PreviewInlineTextEditor, oa as buildEventCollectionHydration, oi as ctaRowFragment, ol as unsafeAsPassId, on as PaletteProvider, oo as shouldReserveFeatureCardIconZone, or as eventCalendarBlockDefinition, os as getTextColorForBackground, ot as EditableBlockProvider, p as PREVIEW_DESIGN_SAVE_ERROR_MESSAGE, pa as normalizeCsvIds, pi as resolveSurfaceForegroundStyles, pl as Ticket, pn as evaluateVisibility, po as isObjectRecord, pr as buildEventRegistrationInteractiveIslandProps, ps as assertNever$6, pt as SiteOptionWidgetProvider, q as confirmAutosaveBatch, qa as defineInteractiveIslandMetaKeys, qc as publicEventPricingMode, qi as ctaButton, qn as uiTransforms, qo as SECTION_BACKGROUND_MIN_SOURCE_WIDTH, qr as richTextFragment, qt as undoHistory, r as PreviewDesignHistoryOrderProvider, ra as isSemanticSpacing, rc as DialogTitle, ri as testimonialsHeadingFragment, rl as unsafeAsAppointmentServiceId, ro as mediaSchema, rr as buildNewsletterFormInteractiveIslandProps, rs as parseThemeButtonVariantId, rt as PreviewTextEditor, sa as buildEventCollectionListingDisplay, sc as Content, si as heroCopyFragment, sl as err$2, sn as usePalette, so as buildGeneratedBlockIconRenderAssetLookupFromUnknown, sr as buildEventCalendarInteractiveIslandProps, ss as isCssColorLiteral, st as EntryControllerProvider, t as SiteChromeCustomizeProvider, ta as resolveOfferingsPreviewGroupCta, tc as DialogFooter, ti as formCopyFragment, tl as parseSiteId, to as planSiteChromePlacement, tr as productDetailBlockDefinition, tt as PreviewRichTextEditor, ua as eventCollectionSourceSchemaShape, uc as createCollapsibleScope, ui as BACKGROUND_POSITION_PRESET_VALUES, ul as Upload, un as createManifestFormAdapter, uo as parseGeneratedIconAssetId, ur as formBlockDefinition, us as isThemeV2NormalEditorRawStyleFieldName, ut as createSiteOptionApiLoader, va as bindingSchema, vc as useId$1, vi as retargetCompiledBoundaryRuntimeForContentAdjacency, vn as useApiMediaUploader, vo as isInlineTextEmpty, vr as resolveEventRequiresPayment, vt as EntryPickerField, wa as toLocationMapHydrationProps, wc as Primitive, wn as deriveLaunchReadiness, wo as ArrowRightIcon, wr as buildGiftingInteractiveIslandProps, ws as isHeaderField, wt as ReferenceField, x as PreviewThemeOverlayProvider, xa as eventCalendarListLayoutOptions, xc as useControllableState, xi as componentRuntimeRulesForTheme, xl as Plus, xo as isBlockButtonRole, xr as getStepNumber$1, xs as rgbColorValue, xt as ButtonWidgetProvider, y as PreviewDesignCoordinatorProvider, ya as previewStageSchema, yc as useDirection, yi as retargetCompiledRuntimeFieldsForContentAdjacency, yl as RotateCcw, yn as applyPageDesignEditorAction, yo as parseInlineTextFromUnknown, yr as resolveRegistrationTarget, ys as backgroundColorStyle, yt as EntryPickerWidgetProvider, za as getLocalDateKey, zc as getBookingLocalDateKey, zi as backgroundAppearanceColorTokenNames, zn as siteHeaderManifest, zo as computeMediaTransformStyle, zr as formatInterval, zs as SelectTrigger, zt as useEditorUiStore } from "./SiteChromeCustomizeContext-C87qlKWw.mjs";
|
|
2
|
+
import { $a as markEditableSurfaceForwarding, $c as expectParsedBrandedId, $i as normalizeOfferingsPreviewItemLimit, $n as shopBlockDefinition, $r as singleButtonFragment, $s as DialogContent, $t as createRoutingHelpers, Aa as formatEventTeacherLine, Ac as parseFooterModuleId, Ai as getGradientPreset, Al as GripVertical, An as buildThemeRuntime, Ao as FileAudioIcon, Ar as buildCheckoutInteractiveIslandProps, As as unmapValueFromSelect, At as EditorProvider, Ba as getLocalMinuteOfDay, Bc as parseBookingLocalDate, Bi as backgroundAppearanceQuickColorTokenNames, Bl as ArrowDown, Bn as SITE_CHROME_VISIBLE_HEADER_SELECTOR, Bo as renderAudio, Br as EMPTY_COMMERCE_CART_STATE, Bs as SelectValue, Bt as useEditorUiStore, C as usePreviewThemeOverlay, Ca as normalizeLocationMapProps, Cc as composeEventHandlers, Ci as designRuntimeRulesForTheme, Cn as MediaEditorContextProvider, Co as ArrowRightIcon, Cr as giftingBlockDefinition, Cs as getFieldIntent, Ct as FileField, Da as formatEventDateParts, Dc as useComposedRefs, Di as gradientToCss, Dn as ThemeScope, Do as ClockIcon$1, Dr as checkoutBlockDefinition, Ds as hasEmptyOption, Dt as useRichTextImagePicker, Ea as formatEventCompactDateRail, El as Minus, En as isSupportedLoaderEndpoint, Eo as CirclePlusIcon, Er as buildCourseRegistrationInteractiveIslandProps, Es as useSdkConfig, Et as ReferenceWidgetProvider, Fa as resolveEventCta, Fc as formatBookingDateTime, Fi as sectionTransitionVariantForBoundaryOptionId, Fl as CircleMinus, Fn as generateDefaultAccordionSystem, Fo as ImagePresets, Fr as buildCartDisplay, Ft as hideThemeV2RawStyleFields, Ga as buildInteractiveIslandProps, Gc as formatBookingPriceDisplay, Gi as createTransformRegistry, Gn as mediaTransforms, Go as setContextResolveImageUrlContext, Gr as productItemKey, Gt as createHistoryState, Ha as normalizeEventRegistrationPageSurfaceSubject, Hc as toBookingTimeZone, Hi as parseBackgroundAppearanceColorToken, Hn as planSiteOverlayHeaderClearance, Ho as resolveImageUrlWithContext, Hr as buildProductCartItem, Ht as useOptionalEditorUiStoreInstance, Ia as resolveEventLinkProps, Ic as formatBookingInstant, Il as ChevronRight, In as getBlockDefinition, Io as MediaPlaceholder, Ir as buildProductCardDisplay, Is as Select, It as prepareBlockEditorManifest, J as confirmAutosaveBatch, Ja as createZodCodec, Jc as publicEventPricingType, Jn as formattingTransforms, Jo as buildRenderableMediaAssetIndex, Jr as headingFragment, Js as Tabs, Jt as undoHistory, Ka as createInteractiveIslandCodec, Kc as publicEventPricingCurrency, Ki as runTransforms, Kn as layoutTransforms, Ko as SECTION_BACKGROUND_MIN_SOURCE_WIDTH, Kr as reduceCommerceCart, Kt as pushHistoryEntry, La as getEventAvailability, Lc as formatBookingTime, Ll as ChevronLeft, Ln as projectRecurringSchedule, Lo as buildResolveImageUrlContext, Lr as buildProductDetailDisplay, Ls as SelectContent, Lt as stripTopLevelRoutingUi, Ma as getCardOrientation, Mc as unsafeAsEditorBlockValues, Mi as defaultSectionTransitionVariantForFamily, Mn as getResponsiveScopeSpec, Mo as FileTextIcon, Mr as buildProductListInteractiveIslandProps, Ms as useField, Mt as LinkField, Na as getContainerClass, Nc as addLocalScheduleDays, Ni as sectionTransitionFamilies, Nl as CreditCard, Nn as escapeStyleContent, No as MinusIcon, Nr as buildShopInteractiveIslandProps, Nt as LinkWidgetProvider, Oa as formatEventPrice, Oc as cn, Oi as GRADIENT_PRESETS, On as containerResponsiveThemeCss, Oo as DownloadIcon, Or as cartBlockDefinition, Os as mapCurrentValueForSelect, Ot as RichTextField, Pa as groupEventsByDate, Pc as formatBookingDate, Pi as sectionTransitionFamilyForBoundaryOptionId, Pl as CirclePlus, Pn as mergeContentWithBlockStyleOverrides, Po as PlusIcon, Pr as getShopDisplayForItems, Q as rejectAutosaveBatch, Qa as composeHeaderSectionWrapperClassName, Qc as assertNever$5, Qi as buildOfferingsPreviewRenderStates, Qn as NAV_DROPDOWN_SHIFT_PROPERTY, Qr as blogFeaturedPostFragment, Qs as Dialog, Qt as useDebouncedLatestSave, Ra as getEventAvailabilityStatus, Rc as formatLocalScheduleDate, Ri as BACKGROUND_BODY_TEXT_MIN_CONTRAST_RATIO, Rl as ChevronDown, Rn as siteFooterManifest, Ro as computeMediaTransformStyle, Rr as formatCommercePrice, Rs as SelectItem, Rt as getBlockManifestFromSdkConfig, S as PreviewThemeOverlayProvider, Sa as buildGoogleMapsDirectionsUrl, Sc as createContextScope, Sn as AMBIENT_BACKGROUND_ROLES, So as ArrowDownIcon, Sr as getWizardStepsForContext$1, Ss as textColorStyle, St as ButtonWidgetProvider, Ta as formatDate$3, Tc as Button, Ti as surfaceResolutionContextFromTheme, Tn as useApiMediaUploader, To as CircleMinusIcon, Tr as courseRegistrationBlockDefinition, Ts as SdkConfigProvider, Tt as ReferenceField, Ua as resolveEventRegistrationScopedEvents, Uc as toScheduledBookingDateTime, Ui as defaultThemeTokens, Un as visibleHeaderClearancePx, Uo as resolveMediaNodeResponsiveImage, Ur as deriveCommerceCheckoutState, Ut as canRedoHistory, Va as resolveRuntimeEventPricing, Vc as resolveBookingTimeZoneId, Vi as foregroundTokenForBackgroundAppearanceColorToken, Vl as __exportAll, Vn as SITE_OVERLAY_HEADER_CLEARANCE_CSS_VAR, Vo as renderVideo, Vr as buildPassCartItem, Vt as useEditorUiStoreInstance, Wa as blockBookingPaymentTermsSchema, Wc as parseEventPageSurfaceSubject, Wn as contentTransforms, Wo as resolveMediaStorageUrl, Wr as parseStoredCommerceCartState, Wt as canUndoHistory, X as enqueueTransaction, Xa as defineProgressiveBlockRuntime, Xc as publicEventTicketTypes, Xn as ImageResolveContextProvider, Xo as siblingPath, Xr as faqAccordionFragment, Xs as TabsList, Xt as recordsEqual, Y as deriveTransactionCapabilities, Ya as defineClientOwnedBlockRuntime, Yc as publicEventScalarPrice, Yn as createManifestValidator, Yo as getAtPath, Yr as cardFragment, Ys as TabsContent, Yt as unsafeAsLinkedContentEntryId, Z as idleEditorTransactionQueueState, Zc as formatCurrencyAmount, Zi as OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS, Zn as useImageResolveContextOptional, Zr as faqHeadingFragment, Zs as TabsTrigger, _a as when, _i as compileEditorModelRuntime, _n as getPageDesignEditorState, _o as coerceInlineTextWithFallback, _r as resolveDiscountContext, _t as InlineTextField, aa as buildEventCollectionDisplay, ai as heroCtaRowFragment, al as unsafeAsFormId, ao as FEATURE_CARD_ICON_TREATMENTS, ar as buildEventListingInteractiveIslandProps, as as parseThemeForPersistence, b as PreviewDesignCoordinatorProvider, ba as eventCalendarListLayoutCompatibleDisplayModeValues, bc as createCollection, bi as planPageDesignLayoutLookCompatibility, bn as DEFAULT_LAUNCH_READINESS_INPUT, bo as parseInlineTextFromUnknown, br as WIZARD_STEPS$1, bs as mergeStyles, bt as EntryPickerWidgetProvider, ca as eventCollectionDisplaySchemaShape, cc as Root, ci as bodyCopyFragment, cl as ok$3, cn as usePalette, co as buildGeneratedBlockIconRenderAssetLookupFromUnknown, cr as buildEventCalendarListingDisplay, cs as resolveOnColorForThemeToken, ct as EntryControllerProvider, da as buildEventRuntimeFilters, di as getAnchorClasses, do as parseGeneratedIconAssetId, dr as buildFormInteractiveIslandProps, ds as pageDesignEditorBackgroundOverrideOwner, dt as createSiteOptionApiLoader, ea as resolveOfferingsPreviewCoursePath, ec as DialogDescription, ei as formEmbedFragment, el as parseMediaAssetId, en as createSnapshotFromPageRecord, eo as splitPositioningClasses, er as productListBlockDefinition, et as resolvePreviewSidebarTab, f as PREVIEW_DESIGN_LOAD_ERROR_MESSAGE, fa as getEventRuntimeFiltersKey, fi as boxStylesTransforms, fn as FormRenderer, fo as parseGeneratedIconSetId, fr as eventRegistrationBlockDefinition, fs as asDesignBlockId, ft as createSiteOptionWidgetAdapters, ga as el, gi as applyCompiledRuntimeFieldsToContent, gl as Sparkles, gn as applyPageDesignEditorAction, go as logger, gr as findPreSelectedEvent, gs as normalizeCardVariantRole, gt as OfferingsPreviewWidgetProvider, ha as normalizeOptionalId, hi as formatSiteChromeBackgroundTokenLabel, hl as Star, hn as MediaEditor, ho as isRecord$20, hr as findEventByOccurrenceId, hs as normalizeBoxStylesCardVariant, ht as OfferingsPreviewGroupOrderField, i as usePreviewDesignHistoryOrder, ia as resolveSpacing, ii as ctaCopyFragment, il as unsafeAsCustomerPassId, io as mediaSchema, ir as eventListingBlockDefinition, is as themeButtonClassName, it as PreviewTextEditor, ja as formatTime$3, jc as unsafeAsEditorBlockId, ji as parseGradientPresetId, jn as DEFAULT_THEME_RESPONSIVE_MODE, jo as FileSpreadsheetIcon, jr as buildProductDetailInteractiveIslandProps, js as FieldFrame, jt as useEditor, ka as formatEventPriceDisplay, kc as clsx, ki as GRADIENT_PRESET_IDS, kl as Image, kn as createCustomBlockRegistry, ko as FileArchiveIcon, kr as buildCartInteractiveIslandProps, ks as mapOptionValueForSelect, kt as RichTextWidgetProvider, la as eventCollectionHydrationSchema, lc as Trigger, li as defineFragment, ll as X, lo as parseBlockIconValue, lr as buildEventCalendarListingRender, ls as resolveTokenOrCssColorValue, m as reportPreviewDesignError, ma as normalizeCsvString, mi as resolveBackgroundColorValue, mn as createStoreBackend, mo as isObjectRecord, mr as toRegistrationEvents, ms as ICON_CONFIG, mt as SiteOptionWidgetProvider, n as useSiteChromeCustomizeOptional, na as resolveOfferingsPreviewGroups, nc as DialogHeader, ni as testimonialsCarouselFragment, nl as unsafeAsAppointmentResourceId, no as isBlockButtonRole, nr as newsletterSignupBlockDefinition, ns as AFFORDANCE_SUPPRESS_CLASS, nt as PreviewRichTextEditor, oa as buildEventCollectionHydration, oi as ctaRowFragment, ol as unsafeAsPassId, oo as resolveFeatureCardGeneratedIconSizePx, or as eventCalendarBlockDefinition, os as getTextColorForBackground, ot as useUISelector, p as PREVIEW_DESIGN_SAVE_ERROR_MESSAGE, pa as normalizeCsvIds, pi as resolveSurfaceForegroundStyles, pl as Ticket, pn as evaluateVisibility, po as RichTextDocSchema, pr as buildEventRegistrationInteractiveIslandProps, ps as assertNever$6, pt as SiteOptionPickerField, q as beginAutosaveBatch, qa as defineInteractiveIslandMetaKeys, qc as publicEventPricingMode, qi as ctaButton, qn as uiTransforms, qo as attachRenderableMediaAssetFields, qr as richTextFragment, qt as redoHistory, r as PreviewDesignHistoryOrderProvider, ra as isSemanticSpacing, rc as DialogTitle, ri as testimonialsHeadingFragment, rl as unsafeAsAppointmentServiceId, rn as parseReferenceKind, ro as PUBLIC_DOWNLOAD_MEDIA_TYPES, rr as buildNewsletterFormInteractiveIslandProps, rs as parseThemeButtonVariantId, rt as PreviewInlineTextEditor, sa as buildEventCollectionListingDisplay, sc as Content, si as heroCopyFragment, sl as err$2, sn as PaletteProvider, so as shouldReserveFeatureCardIconZone, sr as buildEventCalendarInteractiveIslandProps, ss as isCssColorLiteral, st as EditableBlockProvider, t as SiteChromeCustomizeProvider, ta as resolveOfferingsPreviewGroupCta, tc as DialogFooter, ti as formCopyFragment, tl as parseSiteId, tn as BUILT_IN_REFERENCE_KINDS, to as planSiteChromePlacement, tr as productDetailBlockDefinition, ua as eventCollectionSourceSchemaShape, uc as createCollapsibleScope, ui as BACKGROUND_POSITION_PRESET_VALUES, ul as Upload, un as createManifestFormAdapter, uo as resolveBlockIconRenderValue, ur as formBlockDefinition, us as isThemeV2NormalEditorRawStyleFieldName, ut as useEntryEditorController, va as bindingSchema, vc as useId$1, vi as retargetCompiledBoundaryRuntimeForContentAdjacency, vo as inlineTextToPlainText, vr as resolveEventRequiresPayment, vt as IconPickerField, wa as toLocationMapHydrationProps, wc as Primitive, wn as useMediaEditorOptional, wo as ChevronDownIcon, wr as buildGiftingInteractiveIslandProps, ws as isHeaderField, wt as MediaField, xa as eventCalendarListLayoutOptions, xc as useControllableState, xi as componentRuntimeRulesForTheme, xl as Plus, xn as deriveLaunchReadiness, xo as getIconComponent, xr as getStepNumber$1, xs as rgbColorValue, xt as ButtonVariantField, ya as previewStageSchema, yc as useDirection, yi as retargetCompiledRuntimeFieldsForContentAdjacency, yl as RotateCcw, yn as decodePublicProductCategorySelectorQuery, yo as isInlineTextEmpty, yr as resolveRegistrationTarget, ys as backgroundColorStyle, yt as EntryPickerField, za as getLocalDateKey, zc as getBookingLocalDateKey, zi as backgroundAppearanceColorTokenNames, zn as siteHeaderManifest, zo as getCurrentResolveImageUrlContext, zr as formatInterval, zs as SelectTrigger } from "./SiteChromeCustomizeContext-DZiDBAYu.mjs";
|
|
3
3
|
import { i as useOptionalPreviewLayout, t as PreviewQueryProvider } from "./PreviewQueryProvider-DgFDIwvK.mjs";
|
|
4
4
|
import { _ as API_ENDPOINTS, a as usePreviewToken, c as createBearerAPIClient, d as unwrapResponse, g as resolveSurfaceDocumentAttributes, h as SURFACE_IDS, i as usePreviewAuthFetch, m as SURFACE_DOCUMENT_DATA_ATTRIBUTE, n as markPreviewAuthExpired, o as isPreviewRuntimeSessionEditable, r as usePreviewAuth, s as ApiRequestError, t as initPreviewAuth } from "./previewAuthStore-Dev9CdG9.mjs";
|
|
5
5
|
import * as React$1 from "react";
|
|
@@ -1868,6 +1868,9 @@ function renderTrailingAffordanceIcon(affordance) {
|
|
|
1868
1868
|
className: "rb-ml-2 rb-h-4 rb-w-4 rb-inline-block"
|
|
1869
1869
|
});
|
|
1870
1870
|
}
|
|
1871
|
+
function isMissingRequiredLink(linkRequired, resolvedHref) {
|
|
1872
|
+
return linkRequired && resolvedHref.length === 0;
|
|
1873
|
+
}
|
|
1871
1874
|
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 }) => {
|
|
1872
1875
|
const content = value ?? children;
|
|
1873
1876
|
if (!content) {
|
|
@@ -1876,12 +1879,16 @@ const ButtonNode = ({ value, children, href, variantId = "primary", size = "md",
|
|
|
1876
1879
|
}
|
|
1877
1880
|
const affordanceIcon = renderTrailingAffordanceIcon(resolveButtonAffordance({ trailingIcon }));
|
|
1878
1881
|
const resolvedHref = typeof href === "string" ? href.trim() : "";
|
|
1879
|
-
if (linkRequired
|
|
1882
|
+
if (isMissingRequiredLink(linkRequired, resolvedHref)) {
|
|
1880
1883
|
console.warn("[ButtonNode] Missing href for link-required button");
|
|
1881
1884
|
return null;
|
|
1882
1885
|
}
|
|
1883
1886
|
const extraClassName = affordanceIcon ? [className, AFFORDANCE_SUPPRESS_CLASS].filter(Boolean).join(" ") : className;
|
|
1884
|
-
const resolvedVariantId = parseThemeButtonVariantId(
|
|
1887
|
+
const resolvedVariantId = parseThemeButtonVariantId(variantId);
|
|
1888
|
+
if (variantId && !resolvedVariantId) {
|
|
1889
|
+
console.error("[ButtonNode] Invalid button variant", { variantId });
|
|
1890
|
+
return null;
|
|
1891
|
+
}
|
|
1885
1892
|
const combinedClassName = resolvedVariantId ? themeButtonClassName({
|
|
1886
1893
|
variant: resolvedVariantId,
|
|
1887
1894
|
size,
|
|
@@ -2106,8 +2113,9 @@ function iconForMediaType(type) {
|
|
|
2106
2113
|
});
|
|
2107
2114
|
}
|
|
2108
2115
|
}
|
|
2109
|
-
function
|
|
2110
|
-
|
|
2116
|
+
function parseButtonVariant(value) {
|
|
2117
|
+
if (value === null || value === void 0) return "primary";
|
|
2118
|
+
return isBlockButtonRole(value) ? value : null;
|
|
2111
2119
|
}
|
|
2112
2120
|
function FileDownloadNode({ value, title, description, buttonLabel, buttonVariant, className }) {
|
|
2113
2121
|
if (!value || !isDownloadableMediaType(value.type)) return null;
|
|
@@ -2117,7 +2125,11 @@ function FileDownloadNode({ value, title, description, buttonLabel, buttonVarian
|
|
|
2117
2125
|
const heading = title?.trim() || filename;
|
|
2118
2126
|
const body = description?.trim();
|
|
2119
2127
|
const label = buttonLabel?.trim() || "Download";
|
|
2120
|
-
const variant =
|
|
2128
|
+
const variant = parseButtonVariant(buttonVariant);
|
|
2129
|
+
if (!variant) {
|
|
2130
|
+
console.error("[FileDownloadNode] Invalid button variant", { buttonVariant });
|
|
2131
|
+
return null;
|
|
2132
|
+
}
|
|
2121
2133
|
return /* @__PURE__ */ jsx("div", {
|
|
2122
2134
|
className,
|
|
2123
2135
|
children: /* @__PURE__ */ jsxs("div", {
|
|
@@ -26447,6 +26459,43 @@ function isUnknownArray$1(value) {
|
|
|
26447
26459
|
return Array.isArray(value);
|
|
26448
26460
|
}
|
|
26449
26461
|
//#endregion
|
|
26462
|
+
//#region ../blocks/src/system/runtime/nodes/mergeResolveImageUrlContexts.ts
|
|
26463
|
+
function normalizedIdentifier(asset) {
|
|
26464
|
+
return (typeof asset.identifier === "string" ? asset.identifier.trim() : "") || void 0;
|
|
26465
|
+
}
|
|
26466
|
+
function indexAssets(index) {
|
|
26467
|
+
if (!index) return [];
|
|
26468
|
+
const assetsById = /* @__PURE__ */ new Map();
|
|
26469
|
+
for (const asset of [...index.byId.values(), ...index.byIdentifier.values()]) assetsById.set(asset.id, asset);
|
|
26470
|
+
return [...assetsById.values()];
|
|
26471
|
+
}
|
|
26472
|
+
function mergeAssetIndexes(baseline, live) {
|
|
26473
|
+
if (!baseline) return live;
|
|
26474
|
+
if (!live) return baseline;
|
|
26475
|
+
let merged = [...indexAssets(baseline)];
|
|
26476
|
+
for (const liveAsset of indexAssets(live)) {
|
|
26477
|
+
const liveIdentifier = normalizedIdentifier(liveAsset);
|
|
26478
|
+
merged = merged.filter((asset) => asset.id !== liveAsset.id && (liveIdentifier === void 0 || normalizedIdentifier(asset) !== liveIdentifier));
|
|
26479
|
+
merged.push(liveAsset);
|
|
26480
|
+
}
|
|
26481
|
+
return buildRenderableMediaAssetIndex(merged);
|
|
26482
|
+
}
|
|
26483
|
+
/**
|
|
26484
|
+
* Combines a render snapshot with client registrations without changing the
|
|
26485
|
+
* persisted media value. Live registrations are authoritative for both asset
|
|
26486
|
+
* IDs and identifiers. Contexts for different known sites never share indexes.
|
|
26487
|
+
*/
|
|
26488
|
+
function mergeResolveImageUrlContexts(baseline, live) {
|
|
26489
|
+
if (!baseline) return live ?? void 0;
|
|
26490
|
+
if (!live) return baseline;
|
|
26491
|
+
const sitesConflict = baseline.siteId !== void 0 && live.siteId !== void 0 && baseline.siteId !== live.siteId;
|
|
26492
|
+
return {
|
|
26493
|
+
supabaseUrl: live.supabaseUrl ?? baseline.supabaseUrl,
|
|
26494
|
+
siteId: live.siteId ?? baseline.siteId,
|
|
26495
|
+
mediaAssetIndex: sitesConflict ? live.mediaAssetIndex : mergeAssetIndexes(baseline.mediaAssetIndex, live.mediaAssetIndex)
|
|
26496
|
+
};
|
|
26497
|
+
}
|
|
26498
|
+
//#endregion
|
|
26450
26499
|
//#region ../blocks/src/system/runtime/nodes/media.client.tsx
|
|
26451
26500
|
const FALLBACK_IMAGE_DATA_URL = "data:image/svg+xml;charset=utf-8," + encodeURIComponent(`<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600">
|
|
26452
26501
|
<defs>
|
|
@@ -26463,11 +26512,16 @@ const FALLBACK_IMAGE_DATA_URL = "data:image/svg+xml;charset=utf-8," + encodeURIC
|
|
|
26463
26512
|
</g>
|
|
26464
26513
|
</svg>`);
|
|
26465
26514
|
const MediaNode = ({ value, className, style, videoPlayback = "inline", loading = "lazy", fetchPriority, size = ImagePresets.full, fieldPath, blockKind, blockContent, imageResolveContext: explicitImageResolveContext }) => {
|
|
26466
|
-
const
|
|
26467
|
-
const imageResolveContext = explicitImageResolveContext ?? contextImageResolveContext;
|
|
26515
|
+
const imageResolveContext = mergeResolveImageUrlContexts(explicitImageResolveContext, useImageResolveContextOptional());
|
|
26468
26516
|
if (!value) return null;
|
|
26469
|
-
|
|
26470
|
-
|
|
26517
|
+
switch (value.type) {
|
|
26518
|
+
case "video": return renderVideo(value, className, style, imageResolveContext, { playback: videoPlayback });
|
|
26519
|
+
case "audio": return renderAudio(value, className, style, imageResolveContext);
|
|
26520
|
+
case "image":
|
|
26521
|
+
case "archive":
|
|
26522
|
+
case "document":
|
|
26523
|
+
case "spreadsheet": break;
|
|
26524
|
+
}
|
|
26471
26525
|
const { imageUrl, responsive, transformAspectRatio, resolvedTransform, isProxy } = resolveMediaNodeResponsiveImage(value, size, style, {
|
|
26472
26526
|
fieldPath,
|
|
26473
26527
|
blockKind,
|
|
@@ -31161,7 +31215,6 @@ function MediaEditorProvider({ siteId, apiClient, children, bucket = DEFAULT_MED
|
|
|
31161
31215
|
getPublicUrl: computePublicUrl,
|
|
31162
31216
|
registerMediaAsset,
|
|
31163
31217
|
bearerToken,
|
|
31164
|
-
mediaAssetIndex: imageResolveContext.mediaAssetIndex,
|
|
31165
31218
|
imageResolveContext
|
|
31166
31219
|
}), [
|
|
31167
31220
|
apiClient,
|
|
@@ -32208,8 +32261,7 @@ function useBlockCustomizeControls({ blockId, blockKind, content, uiStore, theme
|
|
|
32208
32261
|
return createStoreBackend({
|
|
32209
32262
|
scope: "blocks",
|
|
32210
32263
|
store: uiStore,
|
|
32211
|
-
blockId
|
|
32212
|
-
validateFn: (values) => validateBlockManifestIssues(preparedManifest.validationManifest, values, "strict")
|
|
32264
|
+
blockId
|
|
32213
32265
|
});
|
|
32214
32266
|
}, [
|
|
32215
32267
|
blockId,
|
|
@@ -35227,6 +35279,18 @@ function setPreviewSidebarTab(tab) {
|
|
|
35227
35279
|
} catch {}
|
|
35228
35280
|
}
|
|
35229
35281
|
//#endregion
|
|
35282
|
+
//#region ../preview-next/src/client/preview/previewThemeRoles.ts
|
|
35283
|
+
/**
|
|
35284
|
+
* Splits the preview theme inputs into their two distinct roles so the
|
|
35285
|
+
* page-adapted render theme can never reach the persistence path.
|
|
35286
|
+
*/
|
|
35287
|
+
function resolvePreviewThemeRoles(input) {
|
|
35288
|
+
return {
|
|
35289
|
+
persistenceTheme: input.theme,
|
|
35290
|
+
documentTheme: input.renderTheme ?? input.theme
|
|
35291
|
+
};
|
|
35292
|
+
}
|
|
35293
|
+
//#endregion
|
|
35230
35294
|
//#region ../blocks/src/client/site-chrome.tsx
|
|
35231
35295
|
const siteChromeBlockRenderDeps = {
|
|
35232
35296
|
buildThemeRuntime,
|
|
@@ -36651,17 +36715,21 @@ function LinkedEntryEditEventBridge() {
|
|
|
36651
36715
|
//#region ../preview-next/src/client/preview/PreviewShellLayout.tsx
|
|
36652
36716
|
const previewContainerResponsiveEnabled = process.env.NEXT_PUBLIC_ENABLE_PREVIEW_CONTAINER_RESPONSIVE !== "false";
|
|
36653
36717
|
const PreviewEditorSidebar = React.lazy(async () => {
|
|
36654
|
-
return { default: (await import("./PreviewEditorSidebar-
|
|
36718
|
+
return { default: (await import("./PreviewEditorSidebar-BXtfF7tp.mjs")).PreviewEditorSidebar };
|
|
36655
36719
|
});
|
|
36656
36720
|
const PreviewEditorUI = React.lazy(async () => {
|
|
36657
|
-
return { default: (await import("./PreviewEditorUI-
|
|
36721
|
+
return { default: (await import("./PreviewEditorUI-Dou73Q0K.mjs")).PreviewEditorUI };
|
|
36658
36722
|
});
|
|
36659
36723
|
const previewPaneContainmentStyle = {
|
|
36660
36724
|
contain: "layout paint",
|
|
36661
36725
|
isolation: "isolate",
|
|
36662
36726
|
transform: "translateZ(0)"
|
|
36663
36727
|
};
|
|
36664
|
-
function PreviewShellLayout({ children, theme, surfaceId, siteId, dashboardBaseUrl = null, pageId, entryData, contentTypeSchema, referenceContentTypeKeys = [], draftContent, currentTemplate, apiClient, bearerToken, themeId = null, themeSelectionId = null, themeSelectionVersion = null, themeSelectionUpdatedAt = null, themeSelectionButtonStyleSelection = null, themeSelectionHeaderLayoutId = null, themeSelectionHeaderStyleId = null, themeSelectionHeaderLookId = null, themeSelectionFooterLookId = null, themeSelectionHeaderContext, supabaseUrl, isSiteLaunched, maintenanceModeEnabled, entrySubrouteContext, assistantPanel, sdkConfig, mediaAssets, bookingOfferingPresets, themeRuntime = defaultPreviewThemeRuntime, siteStyleAccess = { kind: "hidden" }, onFooterSaved }) {
|
|
36728
|
+
function PreviewShellLayout({ children, theme, renderTheme, surfaceId, siteId, dashboardBaseUrl = null, pageId, entryData, contentTypeSchema, referenceContentTypeKeys = [], draftContent, currentTemplate, apiClient, bearerToken, themeId = null, themeSelectionId = null, themeSelectionVersion = null, themeSelectionUpdatedAt = null, themeSelectionButtonStyleSelection = null, themeSelectionHeaderLayoutId = null, themeSelectionHeaderStyleId = null, themeSelectionHeaderLookId = null, themeSelectionFooterLookId = null, themeSelectionHeaderContext, supabaseUrl, isSiteLaunched, maintenanceModeEnabled, entrySubrouteContext, assistantPanel, sdkConfig, mediaAssets, bookingOfferingPresets, themeRuntime = defaultPreviewThemeRuntime, siteStyleAccess = { kind: "hidden" }, onFooterSaved }) {
|
|
36729
|
+
const { persistenceTheme, documentTheme } = resolvePreviewThemeRoles({
|
|
36730
|
+
theme,
|
|
36731
|
+
renderTheme
|
|
36732
|
+
});
|
|
36665
36733
|
const layout = useOptionalPreviewLayout();
|
|
36666
36734
|
const headerNode = layout?.headerNode ?? null;
|
|
36667
36735
|
const bannerNode = layout?.bannerNode ?? null;
|
|
@@ -36829,7 +36897,7 @@ function PreviewShellLayout({ children, theme, surfaceId, siteId, dashboardBaseU
|
|
|
36829
36897
|
referenceContentTypeKeys,
|
|
36830
36898
|
draftContent,
|
|
36831
36899
|
currentTemplate,
|
|
36832
|
-
theme,
|
|
36900
|
+
theme: persistenceTheme,
|
|
36833
36901
|
apiClient,
|
|
36834
36902
|
bearerToken,
|
|
36835
36903
|
themeId,
|
|
@@ -36865,27 +36933,12 @@ function PreviewShellLayout({ children, theme, surfaceId, siteId, dashboardBaseU
|
|
|
36865
36933
|
}, overlayScopeKey)
|
|
36866
36934
|
})
|
|
36867
36935
|
});
|
|
36868
|
-
const editorUI = /* @__PURE__ */ jsx(React.Suspense, {
|
|
36869
|
-
fallback: null,
|
|
36870
|
-
children: /* @__PURE__ */ jsx(PreviewEditorUI, {
|
|
36871
|
-
dashboardBaseUrl,
|
|
36872
|
-
inMaintenanceMode: maintenanceModeEnabled,
|
|
36873
|
-
siteId,
|
|
36874
|
-
surfaceId,
|
|
36875
|
-
isSiteLaunched,
|
|
36876
|
-
apiClient
|
|
36877
|
-
})
|
|
36878
|
-
});
|
|
36879
|
-
const previewBanner = /* @__PURE__ */ jsx(PreviewAuthBanner, {
|
|
36880
|
-
dashboardBaseUrl,
|
|
36881
|
-
surfaceId
|
|
36882
|
-
});
|
|
36883
36936
|
return /* @__PURE__ */ jsx(PreviewThemeOverlayProvider, {
|
|
36884
|
-
baseTheme:
|
|
36937
|
+
baseTheme: documentTheme,
|
|
36885
36938
|
children: /* @__PURE__ */ jsx(PreviewDesignCoordinatorProvider, { children: /* @__PURE__ */ jsx(SiteChromeCustomizeProvider, {
|
|
36886
36939
|
siteId,
|
|
36887
36940
|
apiClient,
|
|
36888
|
-
theme,
|
|
36941
|
+
theme: persistenceTheme,
|
|
36889
36942
|
themeId,
|
|
36890
36943
|
selectionId: themeSelectionId,
|
|
36891
36944
|
selectionVersion: themeSelectionVersion,
|
|
@@ -36904,8 +36957,21 @@ function PreviewShellLayout({ children, theme, surfaceId, siteId, dashboardBaseU
|
|
|
36904
36957
|
canOpenDesignEditor: entryData == null && pageId !== null && canInspectSiteStyle(siteStyleAccess),
|
|
36905
36958
|
children: /* @__PURE__ */ jsxs(PreviewBlockCustomizeSelectionProvider, { children: [
|
|
36906
36959
|
/* @__PURE__ */ jsx(LinkedEntryEditEventBridge, {}),
|
|
36907
|
-
|
|
36908
|
-
|
|
36960
|
+
/* @__PURE__ */ jsx(React.Suspense, {
|
|
36961
|
+
fallback: null,
|
|
36962
|
+
children: /* @__PURE__ */ jsx(PreviewEditorUI, {
|
|
36963
|
+
dashboardBaseUrl,
|
|
36964
|
+
inMaintenanceMode: maintenanceModeEnabled,
|
|
36965
|
+
siteId,
|
|
36966
|
+
surfaceId,
|
|
36967
|
+
isSiteLaunched,
|
|
36968
|
+
apiClient
|
|
36969
|
+
})
|
|
36970
|
+
}),
|
|
36971
|
+
/* @__PURE__ */ jsx(PreviewAuthBanner, {
|
|
36972
|
+
dashboardBaseUrl,
|
|
36973
|
+
surfaceId
|
|
36974
|
+
}),
|
|
36909
36975
|
/* @__PURE__ */ jsx("div", {
|
|
36910
36976
|
className: "fixed inset-0 overflow-hidden bg-background",
|
|
36911
36977
|
children: isOpen ? /* @__PURE__ */ jsx(ResizableSplitPane, {
|
|
@@ -36928,14 +36994,15 @@ function PreviewShellLayout({ children, theme, surfaceId, siteId, dashboardBaseU
|
|
|
36928
36994
|
}
|
|
36929
36995
|
//#endregion
|
|
36930
36996
|
//#region ../preview-next/src/client/preview/PreviewShell.tsx
|
|
36931
|
-
function PreviewShell({ children, apiBaseUrl, blockApiConfig, siteId, siteSlug, editableId, previewSession, previewToken, dashboardBaseUrl = null, surfaceId, theme, themeId = null, themeSelectionId = null, themeSelectionVersion = null, themeSelectionUpdatedAt = null, themeSelectionButtonStyleSelection = null, themeSelectionHeaderLayoutId = null, themeSelectionHeaderStyleId = null, themeSelectionHeaderLookId = null, themeSelectionFooterLookId = null, themeSelectionHeaderContext, pageId, routeId, entryData, contentTypeSchema, referenceContentTypeKeys = [], draftContent, currentTemplate, initialStatus, initialBlocks, pageMetadata, isSiteLaunched, maintenanceModeEnabled, entrySubrouteContext, assistantPanel, sdkConfig, mediaAssets, bookingOfferingPresets, supabaseUrl, themeRuntime = defaultPreviewThemeRuntime, designEditorEligibility, hideSiteStyleConfigurator = false, baseFetch, onFooterSaved }) {
|
|
36997
|
+
function PreviewShell({ children, apiBaseUrl, blockApiConfig, siteId, siteSlug, editableId, previewSession, previewToken, dashboardBaseUrl = null, surfaceId, theme, renderTheme, themeId = null, themeSelectionId = null, themeSelectionVersion = null, themeSelectionUpdatedAt = null, themeSelectionButtonStyleSelection = null, themeSelectionHeaderLayoutId = null, themeSelectionHeaderStyleId = null, themeSelectionHeaderLookId = null, themeSelectionFooterLookId = null, themeSelectionHeaderContext, pageId, routeId, entryData, contentTypeSchema, referenceContentTypeKeys = [], draftContent, currentTemplate, initialStatus, initialBlocks, pageMetadata, isSiteLaunched, maintenanceModeEnabled, entrySubrouteContext, assistantPanel, sdkConfig, mediaAssets, bookingOfferingPresets, supabaseUrl, themeRuntime = defaultPreviewThemeRuntime, designEditorEligibility, hideSiteStyleConfigurator = false, baseFetch, onFooterSaved }) {
|
|
36932
36998
|
const apiClient = useMemo(() => createBearerAPIClient(previewToken, apiBaseUrl), [previewToken, apiBaseUrl]);
|
|
36933
|
-
const
|
|
36999
|
+
const { designEditorEnabled, siteStyleAccess } = resolveShellAccess({
|
|
37000
|
+
previewSession,
|
|
37001
|
+
designEditorEligibility,
|
|
36934
37002
|
pageId,
|
|
36935
|
-
entryData
|
|
37003
|
+
entryData,
|
|
37004
|
+
hideSiteStyleConfigurator
|
|
36936
37005
|
});
|
|
36937
|
-
const designEditorEnabled = isPreviewRuntimeSessionEditable(previewSession) && resolvedDesignEditorEligibility.kind === "managed-page" && Boolean(pageId);
|
|
36938
|
-
const siteStyleAccess = hideSiteStyleConfigurator ? { kind: "hidden" } : resolveSiteStyleAccess(previewSession);
|
|
36939
37006
|
return /* @__PURE__ */ jsx(BlockApiProvider, {
|
|
36940
37007
|
config: blockApiConfig,
|
|
36941
37008
|
children: /* @__PURE__ */ jsx(PreviewQueryProvider, { children: /* @__PURE__ */ jsx(PreviewAuthInit, {
|
|
@@ -36970,6 +37037,7 @@ function PreviewShell({ children, apiBaseUrl, blockApiConfig, siteId, siteSlug,
|
|
|
36970
37037
|
mediaAssets,
|
|
36971
37038
|
children: [/* @__PURE__ */ jsx(PreviewKeepAliveClient, { baseFetch }), /* @__PURE__ */ jsx(PreviewShellLayout, {
|
|
36972
37039
|
theme,
|
|
37040
|
+
renderTheme,
|
|
36973
37041
|
surfaceId,
|
|
36974
37042
|
siteId,
|
|
36975
37043
|
dashboardBaseUrl,
|
|
@@ -37016,6 +37084,16 @@ function defaultDesignEditorEligibility(input) {
|
|
|
37016
37084
|
if (input.pageId) return { kind: "managed-page" };
|
|
37017
37085
|
return { kind: "unsupported" };
|
|
37018
37086
|
}
|
|
37087
|
+
function resolveShellAccess(input) {
|
|
37088
|
+
const eligibility = input.designEditorEligibility ?? defaultDesignEditorEligibility({
|
|
37089
|
+
pageId: input.pageId,
|
|
37090
|
+
entryData: input.entryData
|
|
37091
|
+
});
|
|
37092
|
+
return {
|
|
37093
|
+
designEditorEnabled: isPreviewRuntimeSessionEditable(input.previewSession) && eligibility.kind === "managed-page" && Boolean(input.pageId),
|
|
37094
|
+
siteStyleAccess: input.hideSiteStyleConfigurator ? { kind: "hidden" } : resolveSiteStyleAccess(input.previewSession)
|
|
37095
|
+
};
|
|
37096
|
+
}
|
|
37019
37097
|
//#endregion
|
|
37020
37098
|
//#region ../preview-next/src/client/utils/path.ts
|
|
37021
37099
|
const PATH_SEPARATOR_REGEX = /\./g;
|