@riverbankcms/sdk 0.104.3 → 0.107.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 +84 -51
- package/dist/{PreviewEditorSidebar-CBMhU9p_.mjs → PreviewEditorSidebar-DpAbAl08.mjs} +1811 -1179
- package/dist/{PreviewEditorUI-C5KEw4M8.mjs → PreviewEditorUI-O7cn6Xxv.mjs} +3 -3
- package/dist/{PreviewQueryProvider-CStABBUh.mjs → PreviewQueryProvider-D0tnKl0t.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-Iq12HjL7.mjs → SdkPreviewModeRuntime-CVB7urtl.mjs} +2144 -393
- package/dist/{SiteChromeCustomizeContext-Cx0NMdyv.mjs → SiteChromeCustomizeContext-C_sizso-.mjs} +3825 -2653
- package/dist/_dts/ai/src/contracts/proposals.d.ts +32945 -1339
- package/dist/_dts/api/src/bookingConfig.d.ts +2 -0
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +5 -1
- package/dist/_dts/api/src/contentRuntime.d.ts +6 -15
- package/dist/_dts/api/src/courses.d.ts +68 -10
- package/dist/_dts/api/src/endpoints.d.ts +29 -0
- package/dist/_dts/api/src/index.d.ts +124 -124
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +9 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +116 -6
- package/dist/_dts/api/src/siteOperations.d.ts +1 -0
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +26 -4
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +31 -46
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +36 -4
- package/dist/_dts/blocks/src/definitions.d.ts +1 -1
- package/dist/_dts/blocks/src/portal/types.d.ts +25 -7
- package/dist/_dts/blocks/src/system/blocks/course-registration.d.ts +2 -2
- package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +4 -0
- package/dist/_dts/blocks/src/system/blocks/events/recurring-schedule-projection.d.ts +52 -0
- package/dist/_dts/blocks/src/system/blocks/events/recurring-schedule.d.ts +22 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +45 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +10 -0
- package/dist/_dts/blocks/src/system/blocks/feature-cards.d.ts +4 -1
- package/dist/_dts/blocks/src/system/blocks/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +9 -0
- package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +8 -2
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/index.d.ts +8 -8
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +24 -24
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/scheduleSummary.d.ts +29 -0
- package/dist/_dts/blocks/src/system/blocks/shop.d.ts +2 -1
- package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
- package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +2 -5
- package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
- package/dist/_dts/blocks/src/system/designCapabilities.d.ts +1 -0
- package/dist/_dts/blocks/src/system/fragments/library/newsletterForm.d.ts +2 -2
- package/dist/_dts/blocks/src/system/node/fragments/styledCard.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/blockComposition.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +90 -6
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +45 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/commerce/shared/display.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details/logic.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details/view.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details.server.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/course-page-surface-scope.d.ts +17 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/types.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventScope.d.ts +9 -18
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCalendar.interactive.d.ts +106 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/RecurringSchedule.d.ts +11 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekBoardView.d.ts +7 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/media.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +11 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +6 -6
- package/dist/_dts/blocks/src/system/runtime/nodes/shop.interactive.d.ts +11 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/shop.types.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/svg.d.ts +7 -0
- package/dist/_dts/core/src/branded.d.ts +44 -0
- package/dist/_dts/core/src/dated-offering-settlement.d.ts +47 -0
- package/dist/_dts/core/src/event-page-surface-subject.d.ts +44 -0
- package/dist/_dts/core/src/index.d.ts +49 -47
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +1452 -15
- package/dist/_dts/editor-blocks/src/block-editor/FeatureCardIconsPanel.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/GeneratedIconSetDialog.d.ts +4 -1
- package/dist/_dts/media-core/src/index.d.ts +2 -1
- package/dist/_dts/media-core/src/storagePathDomain.d.ts +47 -0
- package/dist/_dts/media-core/src/url.d.ts +1 -21
- package/dist/_dts/preview-next/src/client/blocks/pageDesignRuntimePreview.d.ts +4 -2
- package/dist/_dts/preview-next/src/client/blocks/previewProjection/runtimeContentDecoration.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +3 -9
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +7 -11
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +3 -9
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +2 -6
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +5 -9
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +81 -43
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.typography.d.ts +61 -0
- package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +7 -17
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +15 -8
- package/dist/_dts/preview-next/src/client/preview/typographyFontCatalog.d.ts +57 -0
- package/dist/_dts/sdk/src/cli/commands/pull.d.ts +1 -1
- package/dist/_dts/sdk/src/cli/commands/push/execute/theme.d.ts +4 -7
- package/dist/_dts/sdk/src/cli/commands/style.d.ts +24 -10
- package/dist/_dts/sdk/src/cli/site-commands/oneOffCommands.d.ts +3 -3
- package/dist/_dts/sdk/src/cli/sync/media.d.ts +16 -2
- package/dist/_dts/sdk/src/client/management/blocks.d.ts +1 -1
- package/dist/_dts/sdk/src/client/management/index.d.ts +1 -1
- package/dist/_dts/sdk/src/client/management/types.d.ts +132 -23
- package/dist/_dts/sdk/src/client/types.d.ts +2 -0
- package/dist/_dts/sdk/src/config/types.d.ts +1 -1
- package/dist/_dts/sdk/src/config/validation.d.ts +3 -0
- package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +23 -3
- package/dist/_dts/sdk/src/data/dataLoaderContext.d.ts +17 -0
- package/dist/_dts/sdk/src/data/dataLoaderValue.d.ts +36 -0
- package/dist/_dts/sdk/src/data/defineOwnDataProperty.d.ts +2 -0
- package/dist/_dts/sdk/src/data/executeCodeLoaders.d.ts +36 -40
- package/dist/_dts/sdk/src/data/index.d.ts +3 -3
- package/dist/_dts/sdk/src/data/resolveBlockData.d.ts +54 -0
- package/dist/_dts/sdk/src/data/types.d.ts +43 -78
- package/dist/_dts/sdk/src/next/index.d.ts +1 -0
- package/dist/_dts/sdk/src/next/redirect-destination.d.ts +1 -1
- package/dist/_dts/sdk/src/next/resolveTheme.d.ts +2 -1
- package/dist/_dts/sdk/src/next/types.d.ts +10 -1
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +3 -8
- package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +9 -4
- package/dist/_dts/sdk/src/rendering/helpers/loadPage.d.ts +6 -10
- package/dist/_dts/sdk/src/rendering/index.d.ts +1 -0
- package/dist/_dts/sdk/src/server.d.ts +4 -3
- package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/site-commands/src/capabilityGaps.d.ts +2 -2
- package/dist/_dts/site-commands/src/commands.d.ts +921 -30
- package/dist/_dts/theme-core/src/buttons/generateDefaultButtonSystem.d.ts +5 -1
- package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
- package/dist/_dts/theme-core/src/buttons/personalities/quiet-arrow.d.ts +17 -0
- package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +2 -2
- package/dist/_dts/theme-core/src/buttons/types.d.ts +9 -5
- package/dist/_dts/theme-core/src/data.d.ts +12 -0
- package/dist/_dts/theme-core/src/fonts/index.d.ts +1 -1
- package/dist/_dts/theme-core/src/fonts/types.d.ts +6 -0
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +36 -24
- package/dist/_dts/theme-core/src/palette/colors.d.ts +12 -0
- package/dist/_dts/theme-core/src/palette/curated/brand-led.d.ts +10 -5
- package/dist/_dts/theme-core/src/palette/curated/high-contrast.d.ts +6 -3
- package/dist/_dts/theme-core/src/palette/curated/index.d.ts +31 -236
- package/dist/_dts/theme-core/src/palette/curated/soft-natural.d.ts +8 -4
- package/dist/_dts/theme-core/src/palette/curated/types.d.ts +14 -12
- package/dist/_dts/theme-core/src/palette/curated/warm-dark.d.ts +4 -2
- package/dist/_dts/theme-core/src/palette/curated/warm-neutral.d.ts +8 -4
- package/dist/_dts/theme-core/src/palette/editorState.d.ts +33 -3
- package/dist/_dts/theme-core/src/palette/index.d.ts +0 -4
- package/dist/_dts/theme-core/src/palette/libraryModel.d.ts +12 -6
- package/dist/_dts/theme-core/src/palette/persistenceReadSource.d.ts +20 -72
- package/dist/_dts/theme-core/src/palette/resolveSelection.d.ts +29 -4
- package/dist/_dts/theme-core/src/palette/selection.d.ts +6 -4
- package/dist/_dts/theme-core/src/schema.d.ts +121 -4
- package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +218 -158
- package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +5 -6
- package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +218 -158
- package/dist/_dts/theme-core/src/site-styles/compositionBudget.d.ts +1 -0
- package/dist/_dts/theme-core/src/site-styles/contentTemplateRuntimeCompiler.d.ts +2 -1
- package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +161 -51
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +6 -0
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -2
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +24 -1
- package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +14 -48
- package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +10 -23
- package/dist/_dts/theme-core/src/site-styles/siteStyleThemeCompiler.d.ts +1 -2
- package/dist/_dts/theme-core/src/site-styles/siteStyleTypography.d.ts +456 -0
- package/dist/_dts/theme-core/src/site-styles/types.d.ts +52 -3
- package/dist/cli/index.mjs +3155 -1701
- package/dist/client/{DiscountCodeDisclosure-BXM73_E5.mjs → DiscountCodeDisclosure-BwGkvmVH.mjs} +1 -1
- package/dist/client/{EventCombined.client-DT5elP7j.mjs → EventCombined.client-JnWE6Hzc.mjs} +3 -3
- package/dist/client/{EventListing.client-pTYGfV9C.mjs → EventListing.client-DQewc_kg.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-dQrhlUe3.mjs → LeafletStaticMap-DPAU3SFt.mjs} +1 -1
- package/dist/client/{MagicLinkForm-u6Dul4j5.mjs → MagicLinkForm-D4kpWCbW.mjs} +2 -2
- package/dist/client/{StepIndicator-nWqineJ2.mjs → StepIndicator-CBlkb4rA.mjs} +2 -2
- package/dist/client/{accordion-CSJcTUyH.mjs → accordion-DAIBVpTS.mjs} +1 -1
- package/dist/client/{bookingForm-C73wOuVa.mjs → bookingForm-DZ-4l5_1.mjs} +7 -7
- package/dist/client/bookings.mjs +239 -110
- package/dist/client/{buttons-DfYyqt8C.mjs → buttons-DJgynGHQ.mjs} +122 -58
- package/dist/client/{carousel-fMBb0JSc.mjs → carousel-D-SLfX8r.mjs} +1 -1
- package/dist/client/{cart-BtaCwT3S.mjs → cart-CEgbgJhX.mjs} +3 -3
- package/dist/client/{checkout-DkTwZSnh.mjs → checkout-CXWrCRAA.mjs} +3 -3
- package/dist/client/client.mjs +4300 -1560
- package/dist/client/{colorStyles-Wyl6JujD.mjs → colorStyles-jZS6KfkP.mjs} +1 -1
- package/dist/client/{colorTokenParts-dT8MISgJ.mjs → colorTokenParts-CMugwvX_.mjs} +3 -1
- package/dist/client/{courseRegistration-DnLmapJu.mjs → courseRegistration-DVmLrRVz.mjs} +56 -21
- package/dist/client/{eventCalendar-BvLOc9KY.mjs → eventCalendar-DCuyPY_c.mjs} +29 -21
- package/dist/client/{eventCombined-kShgJPQr.mjs → eventCombined-kP2CA2D4.mjs} +2 -2
- package/dist/client/{eventDetails-C5NTM0Vo.mjs → eventDetails-DU0LeF5e.mjs} +4 -4
- package/dist/client/{eventListing-B82ZdKP6.mjs → eventListing-CcHF87BI.mjs} +2 -2
- package/dist/client/{eventRegistration-qJVFqBWo.mjs → eventRegistration-DJnR0yFH.mjs} +8 -8
- package/dist/client/{form-BvAcKiuu.mjs → form-CH1lCusH.mjs} +2 -2
- package/dist/client/{headerSection-NvAiEHAg.mjs → headerSection-CBPFZoku.mjs} +3 -3
- package/dist/client/hooks.mjs +2958 -1848
- package/dist/client/{locationMap-D0j52xfI.mjs → locationMap-Cx1hBg5n.mjs} +3 -3
- package/dist/client/{media-BCW_g2cQ.mjs → media-DHtSxS5V.mjs} +61 -56
- package/dist/client/{newsletterForm-B8_i93qH.mjs → newsletterForm-1ZL_ti9u.mjs} +3 -3
- package/dist/client/{pricing-DIYnyHOk.mjs → pricing-BIbzmV0G.mjs} +1 -1
- package/dist/client/{productDetail-w0eAHkuQ.mjs → productDetail-BTh5gHBV.mjs} +3 -3
- package/dist/client/{productList-Vsguq5Xt.mjs → productList-Cc7OMrqN.mjs} +3 -3
- package/dist/client/{propsDecoder-CD2pJ1WB.mjs → propsDecoder-oR-M-ISN.mjs} +192 -59
- package/dist/client/rendering/client.mjs +2031 -1239
- package/dist/client/rendering/islands.mjs +20 -20
- package/dist/client/rendering.mjs +4889 -1712
- package/dist/client/{shop-Dgxs-Q8F.mjs → shop-CQ_YbCnn.mjs} +8 -8
- package/dist/client/{shop-commerce-DJAhsTaT.mjs → shop-commerce-BM-AoD3M.mjs} +6 -6
- package/dist/client/{shop-commerce-store-CfCXltXW.mjs → shop-commerce-store-DFMQhU5p.mjs} +1 -1
- package/dist/client/{shopShared-CmDcPXUt.mjs → shopShared-D0SKO2Cu.mjs} +3 -3
- package/dist/client/{useDiscountCodeUi-CirrT2bM.mjs → useDiscountCodeUi-CrG4_ARt.mjs} +1 -1
- package/dist/client/{useEventFilters-CNZxlCcO.mjs → useEventFilters-CxK8Fekl.mjs} +6 -6
- package/dist/client/{usePolling-Baks_iBI.mjs → usePolling-jcVryNgZ.mjs} +2 -2
- package/dist/preview-next/before-render.mjs +40 -1
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/middleware.mjs +40 -1
- package/dist/{previewAuthStore-CfquDtTh.mjs → previewAuthStore-BPcJPzdz.mjs} +40 -1
- package/dist/{sdk-runtime-BfNiFeNJ.mjs → sdk-runtime-C39Rsk-x.mjs} +2 -2
- package/dist/{separator-BhAR_Xmf.mjs → separator-BoMSQnsP.mjs} +1 -1
- package/dist/server/components.mjs +4661 -2162
- package/dist/server/config-validation.mjs +2728 -1847
- package/dist/server/config.mjs +2728 -1847
- package/dist/server/data.mjs +3381 -1915
- package/dist/server/index.mjs +46 -4
- package/dist/server/next/middleware.mjs +1 -1
- package/dist/server/next.mjs +5555 -2225
- package/dist/server/page-converter.mjs +3058 -2182
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +4850 -2125
- package/dist/server/rendering.mjs +5664 -2464
- package/dist/server/routing.mjs +3027 -1509
- package/dist/server/server.mjs +3844 -2217
- package/dist/server/theme-bridge.mjs +9121 -7765
- package/dist/server/theme.mjs +152 -59
- package/dist/styles/index.css +1217 -31
- package/package.json +1 -1
- package/dist/_dts/preview-next/src/client/preview/typographySelectionInput.d.ts +0 -16
- package/dist/_dts/theme-core/src/palette/historicalThemePalette.d.ts +0 -44
- package/dist/_dts/theme-core/src/palette/legacyRuntimeProjection.d.ts +0 -55
- package/dist/_dts/theme-core/src/palette/legacySelection.d.ts +0 -45
- package/dist/_dts/theme-core/src/palette/paletteCompatibilityTransition.d.ts +0 -232
- package/dist/_dts/theme-core/src/site-styles/typographyPresets.d.ts +0 -234
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type SiteIconStyleGuideVersionId } from '../../../blocks/src/index';
|
|
2
2
|
import type { BlockItem, DraftsSlice, UiStore } from './types';
|
|
3
3
|
import { type GeneratedIconSetGenerateInput, type GeneratedIconSetGenerateResult } from './GeneratedIconSetDialog';
|
|
4
4
|
import { type GeneratedIconApplyState } from './generatedIconApplyCoordination';
|
|
@@ -31,12 +31,15 @@ export type GeneratedIconSetApplyResult = Readonly<{
|
|
|
31
31
|
kind: 'failed';
|
|
32
32
|
message: string;
|
|
33
33
|
}>;
|
|
34
|
-
export declare function GeneratedIconSetDialog({ open, onOpenChange, cards, styleGuideSummary, styleGuideEditHref, onGenerate, onApply, }: {
|
|
34
|
+
export declare function GeneratedIconSetDialog({ open, onOpenChange, cards, styleGuideSummary, styleGuideEditHref, generatedIconSizePx, onGeneratedIconSizeChange, hasStaleGeneratedIcons, onGenerate, onApply, }: {
|
|
35
35
|
open: boolean;
|
|
36
36
|
onOpenChange: (open: boolean) => void;
|
|
37
37
|
cards: readonly FeatureCardIconDialogCard[];
|
|
38
38
|
styleGuideSummary?: string | null;
|
|
39
39
|
styleGuideEditHref?: string | null;
|
|
40
|
+
generatedIconSizePx?: number;
|
|
41
|
+
onGeneratedIconSizeChange?: (value: number) => void;
|
|
42
|
+
hasStaleGeneratedIcons?: boolean;
|
|
40
43
|
onGenerate?: (input: GeneratedIconSetGenerateInput) => Promise<GeneratedIconSetGenerateResult>;
|
|
41
44
|
onApply?: (preview: GeneratedIconSetPreview) => GeneratedIconSetApplyResult | void | Promise<GeneratedIconSetApplyResult | void>;
|
|
42
45
|
}): import("react").JSX.Element;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './types';
|
|
2
2
|
export * from './fileDomain';
|
|
3
3
|
export * from './fileStorage';
|
|
4
|
+
export * from './storagePathDomain';
|
|
4
5
|
export * from './fileSafety';
|
|
5
6
|
export * from './filePersistence';
|
|
6
7
|
export * from './fileAssetLegacyProjection';
|
|
@@ -26,7 +27,7 @@ export * from './classifyAllPlanning';
|
|
|
26
27
|
export * from './mediaSettingsState';
|
|
27
28
|
export * from './videoSlotPolicy';
|
|
28
29
|
export * from './identifiers';
|
|
29
|
-
export { getImageUrl, getDirectImageUrl, getDirectImageUrlForRelativePath, getDirectImageUrlForSiteScopedPath, getDirectImageUrlForBucketPath,
|
|
30
|
+
export { getImageUrl, getDirectImageUrl, getDirectImageUrlForRelativePath, getDirectImageUrlForSiteScopedPath, getDirectImageUrlForBucketPath, getDirectImageUrlForMediaAsset, isSiteScopedDirectImageStoragePath, type DirectImageMediaAsset, type DirectImageUrlOptions, type DirectImageUrlPathTarget, type ImageProxyFit, type ImageProxyParams, } from './url';
|
|
30
31
|
export { isSameTransformRect, isSameHotspot, type HotspotLike } from './compare';
|
|
31
32
|
export { asRecord, isRecord } from './typeGuards';
|
|
32
33
|
export { emitMediaCropDebug, isMediaCropDebugEnabled } from './cropDebug';
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { RelativeStoragePath as CoreRelativeStoragePath, SiteScopedStoragePath as CoreSiteScopedStoragePath } from '../../core/src/index';
|
|
2
|
+
declare const __storagePathSiteBrand: unique symbol;
|
|
3
|
+
type SiteScopedStoragePathBrand<TSiteId extends string> = Readonly<{
|
|
4
|
+
kind: 'SiteScopedStoragePath';
|
|
5
|
+
siteId: TSiteId;
|
|
6
|
+
}>;
|
|
7
|
+
export type RelativeStoragePath = CoreRelativeStoragePath;
|
|
8
|
+
export type SiteScopedStoragePath<TSiteId extends string = string> = CoreSiteScopedStoragePath & {
|
|
9
|
+
readonly [__storagePathSiteBrand]: SiteScopedStoragePathBrand<TSiteId>;
|
|
10
|
+
};
|
|
11
|
+
export type StoragePathForSite<TSiteId extends string = string> = Readonly<{
|
|
12
|
+
relativePath: RelativeStoragePath;
|
|
13
|
+
fullPath: SiteScopedStoragePath<TSiteId>;
|
|
14
|
+
}>;
|
|
15
|
+
export type StoragePathParseError = {
|
|
16
|
+
tag: 'MISSING';
|
|
17
|
+
} | {
|
|
18
|
+
tag: 'EMPTY';
|
|
19
|
+
} | {
|
|
20
|
+
tag: 'LEADING_SLASH';
|
|
21
|
+
} | {
|
|
22
|
+
tag: 'DOUBLE_SLASH';
|
|
23
|
+
} | {
|
|
24
|
+
tag: 'TRAVERSAL';
|
|
25
|
+
} | {
|
|
26
|
+
tag: 'SITE_SCOPED_PATH';
|
|
27
|
+
} | {
|
|
28
|
+
tag: 'INVALID_SITE_PREFIX';
|
|
29
|
+
expectedPrefix: string;
|
|
30
|
+
};
|
|
31
|
+
export type StoragePathParseResult<T> = {
|
|
32
|
+
ok: true;
|
|
33
|
+
value: T;
|
|
34
|
+
} | {
|
|
35
|
+
ok: false;
|
|
36
|
+
error: StoragePathParseError;
|
|
37
|
+
};
|
|
38
|
+
export declare function unwrapRelativeStoragePath(value: RelativeStoragePath): string;
|
|
39
|
+
export declare function unwrapSiteScopedStoragePath<TSiteId extends string>(value: SiteScopedStoragePath<TSiteId>): string;
|
|
40
|
+
export declare function parseRelativeStoragePath(value: unknown): StoragePathParseResult<RelativeStoragePath>;
|
|
41
|
+
export declare function assertRelativeStoragePath(value: string): RelativeStoragePath;
|
|
42
|
+
export declare function toSiteScopedStoragePath<TSiteId extends string>(siteId: TSiteId, relativePath: RelativeStoragePath): SiteScopedStoragePath<TSiteId>;
|
|
43
|
+
export declare function normalizeRelativeStoragePathForSite<TSiteId extends string>(siteId: TSiteId, value: unknown): StoragePathParseResult<StoragePathForSite<TSiteId>>;
|
|
44
|
+
export declare function normalizeAmbiguousStoragePathForSite<TSiteId extends string>(siteId: TSiteId, value: unknown): StoragePathParseResult<StoragePathForSite<TSiteId>>;
|
|
45
|
+
export declare function parseSiteScopedStoragePathForSite<TSiteId extends string>(siteId: TSiteId, value: unknown): StoragePathParseResult<SiteScopedStoragePath<TSiteId>>;
|
|
46
|
+
export declare function assertSiteScopedStoragePathForSite<TSiteId extends string>(siteId: TSiteId, value: string): SiteScopedStoragePath<TSiteId>;
|
|
47
|
+
export {};
|
|
@@ -25,31 +25,11 @@ export type DirectImageUrlPathTarget = Readonly<{
|
|
|
25
25
|
kind: 'bucket-scoped';
|
|
26
26
|
storagePath: string;
|
|
27
27
|
}>;
|
|
28
|
-
export declare function isRelativeDirectImageStoragePath(storagePath: string): storagePath is RelativeStoragePath;
|
|
29
28
|
export declare function isSiteScopedDirectImageStoragePath(storagePath: string): storagePath is SiteScopedStoragePath;
|
|
29
|
+
export declare function getDirectImageUrl(supabaseUrl: string, target: DirectImageUrlPathTarget, storageBucket?: string, options?: DirectImageUrlOptions): string;
|
|
30
30
|
export declare function getDirectImageUrlForRelativePath(supabaseUrl: string, storagePath: RelativeStoragePath, siteId: string, storageBucket?: string, options?: DirectImageUrlOptions): string;
|
|
31
31
|
export declare function getDirectImageUrlForSiteScopedPath(supabaseUrl: string, storagePath: SiteScopedStoragePath, storageBucket?: string, options?: DirectImageUrlOptions): string;
|
|
32
32
|
export declare function getDirectImageUrlForBucketPath(supabaseUrl: string, storagePath: string, storageBucket?: string, options?: DirectImageUrlOptions): string;
|
|
33
|
-
export declare function getDirectImageUrlForStoragePath(supabaseUrl: string, storagePath: RelativeStoragePath | SiteScopedStoragePath | string, storageBucket?: string, siteId?: string, options?: DirectImageUrlOptions): string;
|
|
34
|
-
/**
|
|
35
|
-
* @deprecated Prefer `getDirectImageUrlForMediaAsset`, `getDirectImageUrlForRelativePath`,
|
|
36
|
-
* `getDirectImageUrlForSiteScopedPath`, or `getDirectImageUrlForBucketPath` so path shape
|
|
37
|
-
* is explicit at the call site.
|
|
38
|
-
*
|
|
39
|
-
* Build a direct Supabase storage URL for an image.
|
|
40
|
-
*
|
|
41
|
-
* For images with transform options, uses the render endpoint which applies
|
|
42
|
-
* server-side transformations. For images without transforms (or SVGs),
|
|
43
|
-
* returns the direct public object URL.
|
|
44
|
-
*
|
|
45
|
-
* @param supabaseUrl - Supabase project URL (e.g., https://xxx.supabase.co)
|
|
46
|
-
* @param storagePath - Relative path within the bucket (e.g., originals/2024/12/img.png)
|
|
47
|
-
* @param storageBucket - Storage bucket name (default: 'media')
|
|
48
|
-
* @param siteId - Site UUID to prepend as path prefix
|
|
49
|
-
* @param options - Optional transform parameters
|
|
50
|
-
* @returns Direct URL to the image
|
|
51
|
-
*/
|
|
52
|
-
export declare function getDirectImageUrl(supabaseUrl: string, storagePath: RelativeStoragePath | SiteScopedStoragePath | string, storageBucket?: string, siteId?: string, options?: DirectImageUrlOptions): string;
|
|
53
33
|
export type DirectImageMediaAsset = Pick<MediaAsset, 'storageBucket' | 'storagePath'>;
|
|
54
34
|
export declare function getDirectImageUrlForMediaAsset(supabaseUrl: string, asset: DirectImageMediaAsset, options?: DirectImageUrlOptions): string;
|
|
55
35
|
export type ImageProxyFit = 'clip' | 'crop' | 'max';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { BlockItem } from '../../../../editor-blocks/src/index';
|
|
2
|
-
import type { DesignRuntimeRules, PageDesignEditorReadModel, SurfaceResolutionContext } from '../../../../theme-core/src/site-styles/previewCompiler';
|
|
2
|
+
import type { DesignRuntimeRules, ComponentRuntimeRules, PageDesignEditorReadModel, SurfaceResolutionContext } from '../../../../theme-core/src/site-styles/previewCompiler';
|
|
3
3
|
import type { PreviewPageDesignEditorState } from '../preview/PageDesignEditorStateContext';
|
|
4
4
|
import { type RuntimeContentDecorationProjection } from './previewProjection';
|
|
5
5
|
export type RuntimePreviewSource = Readonly<{
|
|
@@ -9,13 +9,15 @@ export type RuntimePreviewSource = Readonly<{
|
|
|
9
9
|
editorModel: PageDesignEditorReadModel;
|
|
10
10
|
surfaceResolutionContext: SurfaceResolutionContext;
|
|
11
11
|
designRules?: DesignRuntimeRules;
|
|
12
|
+
componentRules?: ComponentRuntimeRules;
|
|
12
13
|
}>;
|
|
13
14
|
export declare function applyPageDesignRuntimeFieldsToBlockItems(blockItems: readonly BlockItem[], source: RuntimePreviewSource): BlockItem[];
|
|
14
15
|
export declare function applyPageDesignRuntimeFieldsToBlockContent(block: BlockItem, content: Record<string, unknown> | null, source: RuntimePreviewSource): Record<string, unknown> | null;
|
|
15
|
-
export declare function buildPageDesignRuntimeFieldsByBlockId(editorModel: PageDesignEditorReadModel, surfaceResolutionContext: SurfaceResolutionContext, designRules?: DesignRuntimeRules): RuntimeContentDecorationProjection['fieldsByBlockId'];
|
|
16
|
+
export declare function buildPageDesignRuntimeFieldsByBlockId(editorModel: PageDesignEditorReadModel, surfaceResolutionContext: SurfaceResolutionContext, designRules?: DesignRuntimeRules, componentRules?: ComponentRuntimeRules): RuntimeContentDecorationProjection['fieldsByBlockId'];
|
|
16
17
|
export declare function pageDesignRuntimeProjectionFromSource(source: RuntimePreviewSource): RuntimeContentDecorationProjection | null;
|
|
17
18
|
export declare function resolveRuntimePreviewSource(input: Readonly<{
|
|
18
19
|
pageDesignState: PreviewPageDesignEditorState;
|
|
19
20
|
surfaceResolutionContext: SurfaceResolutionContext | null;
|
|
20
21
|
designRules?: DesignRuntimeRules;
|
|
22
|
+
componentRules?: ComponentRuntimeRules;
|
|
21
23
|
}>): RuntimePreviewSource;
|
package/dist/_dts/preview-next/src/client/blocks/previewProjection/runtimeContentDecoration.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { BlockItem } from '../../../../../editor-blocks/src/index';
|
|
2
2
|
import { type DesignRuntimeRules, type PageDesignEditorReadModel, type RuntimeContentAdjacency, type SurfaceResolutionContext } from '../../../../../theme-core/src/site-styles/previewCompiler';
|
|
3
3
|
import type { CanonicalBlockContent, PreviewRenderContent, RuntimeContentDecorationProjection } from './types';
|
|
4
|
-
|
|
4
|
+
import type { ComponentRuntimeRules } from '../../../../../theme-core/src/site-styles/previewCompiler';
|
|
5
|
+
export declare function runtimeContentDecorationProjectionFromEditorModel(editorModel: PageDesignEditorReadModel, surfaceResolutionContext: SurfaceResolutionContext, designRules?: DesignRuntimeRules, componentRules?: ComponentRuntimeRules): RuntimeContentDecorationProjection;
|
|
5
6
|
export declare function applyRuntimeContentDecorationProjection(block: BlockItem, content: CanonicalBlockContent | PreviewRenderContent | null, projection: RuntimeContentDecorationProjection, adjacency?: Pick<RuntimeContentAdjacency, 'nextContent'>): PreviewRenderContent;
|
|
@@ -23,6 +23,7 @@ type PageBlockEditorPanelProps = {
|
|
|
23
23
|
linkedEntrySection?: PreviewLinkedEntrySidebarSection | null;
|
|
24
24
|
designPanel?: ReactNode;
|
|
25
25
|
designOpenRequestId?: number | null;
|
|
26
|
+
designTakeoverActive?: boolean;
|
|
26
27
|
sdkConfig?: SdkConfigForBlockPicker | null;
|
|
27
28
|
mediaAssets?: MediaAssetIndexItem[];
|
|
28
29
|
bookingOfferingPresets?: readonly BookingOfferingPresetSummary[] | null;
|
|
@@ -33,5 +34,5 @@ type PageBlockEditorPanelProps = {
|
|
|
33
34
|
onViewportWidthChange: (width: ViewportWidth) => void;
|
|
34
35
|
onZoomChange: (zoom: ZoomLevel) => void;
|
|
35
36
|
};
|
|
36
|
-
export declare function PageBlockEditorPanel({ siteId, pageId, dashboardBaseUrl, theme, apiClient, bearerToken, supabaseUrl, blockItems, uiStoreForBlockEditor, blockEditorRef, onBlocksChange, metadataPanel, linkedEntrySection, designPanel, designOpenRequestId, sdkConfig, mediaAssets, bookingOfferingPresets, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: PageBlockEditorPanelProps): React.JSX.Element;
|
|
37
|
+
export declare function PageBlockEditorPanel({ siteId, pageId, dashboardBaseUrl, theme, apiClient, bearerToken, supabaseUrl, blockItems, uiStoreForBlockEditor, blockEditorRef, onBlocksChange, metadataPanel, linkedEntrySection, designPanel, designOpenRequestId, designTakeoverActive, sdkConfig, mediaAssets, bookingOfferingPresets, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: PageBlockEditorPanelProps): React.JSX.Element;
|
|
37
38
|
export {};
|
|
@@ -6,8 +6,7 @@ import type { EntrySubrouteContextData, BookingOfferingPresetSummary, MediaAsset
|
|
|
6
6
|
import { type ContentTypeSchema } from "../../../../content-model/src/index";
|
|
7
7
|
import { type ZoomLevel } from "../../../../content-editor/src/index";
|
|
8
8
|
import type { ButtonPersonalityId } from "../../../../theme-core/src/buttons/index";
|
|
9
|
-
import type {
|
|
10
|
-
import type { FooterSelectionContext, FooterLookId, HeaderLayoutId, HeaderSelectionContext, HeaderLookId, HeaderStyleId, TypographyPresetId } from "../../../../theme-core/src/site-styles/index";
|
|
9
|
+
import type { FooterSelectionContext, FooterLookId, HeaderLayoutId, HeaderSelectionContext, HeaderLookId, HeaderStyleId } from "../../../../theme-core/src/site-styles/index";
|
|
11
10
|
import type { PreviewDesignRow } from "./sidebarTabPreference";
|
|
12
11
|
import type { ViewportMode, ViewportWidth } from "./PreviewViewportControls";
|
|
13
12
|
import { type SiteStyleAccess } from "./siteStyleAccess";
|
|
@@ -37,14 +36,9 @@ export type PreviewEditorSidebarProps = {
|
|
|
37
36
|
themeSelectionUpdatedAt?: string | null;
|
|
38
37
|
/** Persisted Style configurator selections (Phase C / E). */
|
|
39
38
|
themeSelectionButtonPersonalityId?: ButtonPersonalityId | null;
|
|
40
|
-
runtimePaletteState
|
|
41
|
-
themeSelectionPaletteVariantId?: CuratedPaletteId | null;
|
|
42
|
-
themeSelectionPaletteOverrides?: PaletteOverrides | null;
|
|
39
|
+
runtimePaletteState: import('./styleConfiguratorSnapshot').PreviewRuntimePaletteState;
|
|
43
40
|
themeSelectionHeaderLayoutId?: HeaderLayoutId | null;
|
|
44
41
|
themeSelectionHeaderStyleId?: HeaderStyleId | null;
|
|
45
|
-
themeSelectionTypographyPresetId?: TypographyPresetId | null;
|
|
46
|
-
themeSelectionTypographyBodyFontOverride?: string | null;
|
|
47
|
-
themeSelectionTypographyHeadingFontOverride?: string | null;
|
|
48
42
|
themeSelectionHeaderLookId?: HeaderLookId | null;
|
|
49
43
|
themeSelectionFooterLookId?: FooterLookId | null;
|
|
50
44
|
themeSelectionHeaderContext?: Partial<HeaderSelectionContext>;
|
|
@@ -72,4 +66,4 @@ export type PreviewEditorSidebarProps = {
|
|
|
72
66
|
onViewportWidthChange: (width: ViewportWidth) => void;
|
|
73
67
|
onZoomChange: (zoom: ZoomLevel) => void;
|
|
74
68
|
};
|
|
75
|
-
export declare function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl, pageId, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, themeId, themeSelectionId, themeSelectionVersion, themeSelectionUpdatedAt, themeSelectionButtonPersonalityId, runtimePaletteState,
|
|
69
|
+
export declare function PreviewEditorSidebar({ surfaceId, siteId, dashboardBaseUrl, pageId, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, theme, themeId, themeSelectionId, themeSelectionVersion, themeSelectionUpdatedAt, themeSelectionButtonPersonalityId, runtimePaletteState, themeSelectionHeaderLayoutId, themeSelectionHeaderStyleId, themeSelectionHeaderLookId, themeSelectionFooterLookId, themeSelectionHeaderContext, themeSelectionFooterContext, designRowRequest, apiClient, bearerToken, supabaseUrl, entrySubrouteContext, assistantPanel, sdkConfig, mediaAssets, bookingOfferingPresets, siteStyleAccess, activeTab, onTabChange, onClose, viewportMode, viewportWidth, zoom, onViewportModeChange, onViewportWidthChange, onZoomChange, }: PreviewEditorSidebarProps): React.JSX.Element;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import React, { type ComponentProps, type ReactNode } from 'react';
|
|
2
2
|
import { BlockApiProvider } from '../../../../blocks/src/client';
|
|
3
3
|
import type { ButtonPersonalityId } from '../../../../theme-core/src/buttons/index';
|
|
4
|
-
import type {
|
|
5
|
-
import type { FooterSelectionContext, FooterLookId, HeaderLayoutId, HeaderSelectionContext, HeaderLookId, HeaderStyleId, TypographyPresetId } from '../../../../theme-core/src/site-styles/index';
|
|
4
|
+
import type { FooterSelectionContext, FooterLookId, HeaderLayoutId, HeaderSelectionContext, HeaderLookId, HeaderStyleId } from '../../../../theme-core/src/site-styles/index';
|
|
6
5
|
import type { EntrySubrouteContextData, BookingOfferingPresetSummary, MediaAssetIndexItem, Theme } from '../../../../blocks/src/index';
|
|
7
6
|
import type { ContentTypeSchema } from '../../../../content-model/src/index';
|
|
8
7
|
import type { SdkConfigForBlockPicker } from '../../../../editor-blocks/src/index';
|
|
@@ -39,18 +38,13 @@ export type PreviewShellProps = {
|
|
|
39
38
|
themeSelectionUpdatedAt?: string | null;
|
|
40
39
|
/**
|
|
41
40
|
* Persisted Style configurator selections. Forwarded into StyleConfigurator
|
|
42
|
-
* so reload renders the user's saved button personality
|
|
43
|
-
*
|
|
41
|
+
* so reload renders the user's saved button personality and authoritative
|
|
42
|
+
* complete palette state.
|
|
44
43
|
*/
|
|
45
44
|
themeSelectionButtonPersonalityId?: ButtonPersonalityId | null;
|
|
46
|
-
runtimePaletteState
|
|
47
|
-
themeSelectionPaletteVariantId?: CuratedPaletteId | null;
|
|
48
|
-
themeSelectionPaletteOverrides?: PaletteOverrides | null;
|
|
45
|
+
runtimePaletteState: import('./styleConfiguratorSnapshot').PreviewRuntimePaletteState;
|
|
49
46
|
themeSelectionHeaderLayoutId?: HeaderLayoutId | null;
|
|
50
47
|
themeSelectionHeaderStyleId?: HeaderStyleId | null;
|
|
51
|
-
themeSelectionTypographyPresetId?: TypographyPresetId | null;
|
|
52
|
-
themeSelectionTypographyBodyFontOverride?: string | null;
|
|
53
|
-
themeSelectionTypographyHeadingFontOverride?: string | null;
|
|
54
48
|
themeSelectionHeaderLookId?: HeaderLookId | null;
|
|
55
49
|
themeSelectionFooterLookId?: FooterLookId | null;
|
|
56
50
|
themeSelectionHeaderContext?: Partial<HeaderSelectionContext>;
|
|
@@ -75,9 +69,11 @@ export type PreviewShellProps = {
|
|
|
75
69
|
supabaseUrl?: string;
|
|
76
70
|
themeRuntime?: PreviewThemeRuntime;
|
|
77
71
|
designEditorEligibility?: PreviewDesignEditorEligibility;
|
|
72
|
+
/** Hides site-style controls for runtimes without palette authority. */
|
|
73
|
+
hideSiteStyleConfigurator?: boolean;
|
|
78
74
|
baseFetch?: BaseFetch;
|
|
79
75
|
};
|
|
80
|
-
export declare function PreviewShell({ children, apiBaseUrl, blockApiConfig, siteId, siteSlug, editableId, previewSession, previewToken, dashboardBaseUrl, surfaceId, theme, themeId, themeSelectionId, themeSelectionVersion, themeSelectionUpdatedAt, themeSelectionButtonPersonalityId, runtimePaletteState,
|
|
76
|
+
export declare function PreviewShell({ children, apiBaseUrl, blockApiConfig, siteId, siteSlug, editableId, previewSession, previewToken, dashboardBaseUrl, surfaceId, theme, themeId, themeSelectionId, themeSelectionVersion, themeSelectionUpdatedAt, themeSelectionButtonPersonalityId, runtimePaletteState, themeSelectionHeaderLayoutId, themeSelectionHeaderStyleId, themeSelectionHeaderLookId, themeSelectionFooterLookId, themeSelectionHeaderContext, themeSelectionFooterContext, pageId, routeId, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, initialStatus, initialBlocks, pageMetadata, isSiteLaunched, maintenanceModeEnabled, entrySubrouteContext, assistantPanel, sdkConfig, mediaAssets, bookingOfferingPresets, supabaseUrl, themeRuntime, designEditorEligibility, hideSiteStyleConfigurator, baseFetch, }: PreviewShellProps): React.JSX.Element;
|
|
81
77
|
export declare function defaultDesignEditorEligibility(input: Readonly<{
|
|
82
78
|
pageId: string | null;
|
|
83
79
|
entryData?: PreviewContentEntryData | null;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import React, { type ReactNode } from "react";
|
|
2
2
|
import { type EntrySubrouteContextData, type BookingOfferingPresetSummary, type MediaAssetIndexItem, type Theme } from "../../../../blocks/src/index";
|
|
3
3
|
import type { ButtonPersonalityId } from "../../../../theme-core/src/buttons/index";
|
|
4
|
-
import type {
|
|
5
|
-
import type { FooterSelectionContext, HeaderSelectionContext, FooterLookId, HeaderLayoutId, HeaderLookId, HeaderStyleId, TypographyPresetId } from "../../../../theme-core/src/site-styles/index";
|
|
4
|
+
import type { FooterSelectionContext, HeaderSelectionContext, FooterLookId, HeaderLayoutId, HeaderLookId, HeaderStyleId } from "../../../../theme-core/src/site-styles/index";
|
|
6
5
|
import type { ContentTypeSchema } from "../../../../content-model/src/index";
|
|
7
6
|
import type { ApiClient } from "../../../../api/src/request";
|
|
8
7
|
import type { SdkConfigForBlockPicker } from "../../../../editor-blocks/src/index";
|
|
@@ -29,14 +28,9 @@ export type PreviewShellLayoutProps = {
|
|
|
29
28
|
themeSelectionVersion?: number | null;
|
|
30
29
|
themeSelectionUpdatedAt?: string | null;
|
|
31
30
|
themeSelectionButtonPersonalityId?: ButtonPersonalityId | null;
|
|
32
|
-
runtimePaletteState
|
|
33
|
-
themeSelectionPaletteVariantId?: CuratedPaletteId | null;
|
|
34
|
-
themeSelectionPaletteOverrides?: PaletteOverrides | null;
|
|
31
|
+
runtimePaletteState: import('./styleConfiguratorSnapshot').PreviewRuntimePaletteState;
|
|
35
32
|
themeSelectionHeaderLayoutId?: HeaderLayoutId | null;
|
|
36
33
|
themeSelectionHeaderStyleId?: HeaderStyleId | null;
|
|
37
|
-
themeSelectionTypographyPresetId?: TypographyPresetId | null;
|
|
38
|
-
themeSelectionTypographyBodyFontOverride?: string | null;
|
|
39
|
-
themeSelectionTypographyHeadingFontOverride?: string | null;
|
|
40
34
|
themeSelectionHeaderLookId?: HeaderLookId | null;
|
|
41
35
|
themeSelectionFooterLookId?: FooterLookId | null;
|
|
42
36
|
themeSelectionHeaderContext?: Partial<HeaderSelectionContext>;
|
|
@@ -52,4 +46,4 @@ export type PreviewShellLayoutProps = {
|
|
|
52
46
|
themeRuntime?: PreviewThemeRuntime;
|
|
53
47
|
siteStyleAccess?: SiteStyleAccess;
|
|
54
48
|
};
|
|
55
|
-
export declare function PreviewShellLayout({ children, theme, surfaceId, siteId, dashboardBaseUrl, pageId, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, apiClient, bearerToken, themeId, themeSelectionId, themeSelectionVersion, themeSelectionUpdatedAt, themeSelectionButtonPersonalityId, runtimePaletteState,
|
|
49
|
+
export declare function PreviewShellLayout({ children, theme, surfaceId, siteId, dashboardBaseUrl, pageId, entryData, contentTypeSchema, referenceContentTypeKeys, draftContent, currentTemplate, apiClient, bearerToken, themeId, themeSelectionId, themeSelectionVersion, themeSelectionUpdatedAt, themeSelectionButtonPersonalityId, runtimePaletteState, themeSelectionHeaderLayoutId, themeSelectionHeaderStyleId, themeSelectionHeaderLookId, themeSelectionFooterLookId, themeSelectionHeaderContext, themeSelectionFooterContext, supabaseUrl, isSiteLaunched, maintenanceModeEnabled, entrySubrouteContext, assistantPanel, sdkConfig, mediaAssets, bookingOfferingPresets, themeRuntime, siteStyleAccess, }: PreviewShellLayoutProps): React.JSX.Element;
|
|
@@ -2,8 +2,7 @@ import React, { type ReactNode } from 'react';
|
|
|
2
2
|
import { type ApiClient } from '../../../../api/src/request';
|
|
3
3
|
import type { Theme } from '../../../../blocks/src/index';
|
|
4
4
|
import type { ButtonPersonalityId } from '../../../../theme-core/src/buttons/index';
|
|
5
|
-
import type {
|
|
6
|
-
import type { BrandDisplayMode, FooterLayoutId, FooterLookId, HeaderNavFontSizePreference, HeaderNavTypographyPreference, FooterSelectionContext, HeaderLayoutId, HeaderLookId, HeaderSelectionContext, HeaderStyleId, LogoSizePolicy, SiteChromeBackgroundColorToken, SiteChromeBackgroundOverride, TypographyPresetId } from '../../../../theme-core/src/site-styles/index';
|
|
5
|
+
import type { BrandDisplayMode, FooterLayoutId, FooterLookId, HeaderNavFontSizePreference, HeaderNavTypographyPreference, FooterSelectionContext, HeaderLayoutId, HeaderLookId, HeaderSelectionContext, HeaderStyleId, LogoSizePolicy, SiteChromeBackgroundColorToken, SiteChromeBackgroundOverride } from '../../../../theme-core/src/site-styles/index';
|
|
7
6
|
import { headerNavFontSizeOptions, headerNavTypographyOptions } from '../../../../theme-core/src/site-styles/index';
|
|
8
7
|
import { type StyleConfiguratorHistoryEntry } from './StyleConfigurator.state';
|
|
9
8
|
import type { SiteStyleAccess } from './siteStyleAccess';
|
|
@@ -118,12 +117,9 @@ export type SiteChromeCustomizeProviderProps = Readonly<{
|
|
|
118
117
|
selectionVersion?: number | null;
|
|
119
118
|
selectionUpdatedAt?: string | null;
|
|
120
119
|
buttonPersonalityId: ButtonPersonalityId | null;
|
|
121
|
-
runtimePaletteState
|
|
120
|
+
runtimePaletteState: import('./styleConfiguratorSnapshot').PreviewRuntimePaletteState;
|
|
122
121
|
headerLayoutId?: HeaderLayoutId | null;
|
|
123
122
|
headerStyleId?: HeaderStyleId | null;
|
|
124
|
-
typographyPresetId?: TypographyPresetId | null;
|
|
125
|
-
typographyBodyFontOverride?: string | null;
|
|
126
|
-
typographyHeadingFontOverride?: string | null;
|
|
127
123
|
headerLookId?: HeaderLookId | null;
|
|
128
124
|
footerLookId?: FooterLookId | null;
|
|
129
125
|
}> & Readonly<Record<string, unknown>>;
|
|
@@ -2,10 +2,10 @@ import React from 'react';
|
|
|
2
2
|
import type { ApiClient } from '../../../../api/src/request';
|
|
3
3
|
import type { Theme } from '../../../../blocks/src/index';
|
|
4
4
|
import { type ButtonPersonalityId } from '../../../../theme-core/src/buttons/index';
|
|
5
|
-
import { type
|
|
6
|
-
import { type FooterSelectionContext, type FooterLookId, type HeaderLayoutId, type HeaderLookId, type HeaderSelectionContext, type HeaderStyleId, type TypographyPresetId } from '../../../../theme-core/src/site-styles/index';
|
|
5
|
+
import { type FooterSelectionContext, type FooterLookId, type HeaderLayoutId, type HeaderLookId, type HeaderSelectionContext, type HeaderStyleId } from '../../../../theme-core/src/site-styles/index';
|
|
7
6
|
import { type VisibleSiteStyleAccess } from './siteStyleAccess';
|
|
8
7
|
import type { PreviewDesignRow } from './sidebarTabPreference';
|
|
8
|
+
import type { PreviewRuntimePaletteState } from './styleConfiguratorSnapshot';
|
|
9
9
|
export type StyleConfiguratorProps = Readonly<{
|
|
10
10
|
siteId: string;
|
|
11
11
|
apiClient: ApiClient;
|
|
@@ -19,14 +19,9 @@ export type StyleConfiguratorProps = Readonly<{
|
|
|
19
19
|
selectionVersion?: number | null;
|
|
20
20
|
selectionUpdatedAt?: string | null;
|
|
21
21
|
buttonPersonalityId: ButtonPersonalityId | null;
|
|
22
|
-
runtimePaletteState
|
|
23
|
-
paletteVariantId?: CuratedPaletteId | null;
|
|
24
|
-
paletteOverrides?: PaletteOverrides | null;
|
|
22
|
+
runtimePaletteState: PreviewRuntimePaletteState;
|
|
25
23
|
headerLayoutId?: HeaderLayoutId | null;
|
|
26
24
|
headerStyleId?: HeaderStyleId | null;
|
|
27
|
-
typographyPresetId?: TypographyPresetId | null;
|
|
28
|
-
typographyBodyFontOverride?: string | null;
|
|
29
|
-
typographyHeadingFontOverride?: string | null;
|
|
30
25
|
headerLookId?: HeaderLookId | null;
|
|
31
26
|
footerLookId?: FooterLookId | null;
|
|
32
27
|
}> & Readonly<Record<string, unknown>>;
|
|
@@ -37,6 +32,7 @@ export type StyleConfiguratorProps = Readonly<{
|
|
|
37
32
|
id: number;
|
|
38
33
|
row: PreviewDesignRow;
|
|
39
34
|
}> | null;
|
|
35
|
+
onFocusedSurfaceChange?: (focused: boolean) => void;
|
|
40
36
|
siteStyleAccess: VisibleSiteStyleAccess;
|
|
41
37
|
}>;
|
|
42
|
-
export declare function StyleConfigurator({ siteId, apiClient, theme, selectionId, selectionVersion, selectionUpdatedAt, initialSelections, headerSelectionContext, footerSelectionContext, expandedRowRequest, siteStyleAccess, }: StyleConfiguratorProps): React.JSX.Element;
|
|
38
|
+
export declare function StyleConfigurator({ siteId, apiClient, theme, selectionId, selectionVersion, selectionUpdatedAt, initialSelections, headerSelectionContext, footerSelectionContext, expandedRowRequest, onFocusedSurfaceChange, siteStyleAccess, }: StyleConfiguratorProps): React.JSX.Element;
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
*/
|
|
13
13
|
import type { ButtonPersonalityId } from '../../../../theme-core/src/buttons/index';
|
|
14
14
|
import type { Theme } from '../../../../blocks/src/index';
|
|
15
|
-
import type {
|
|
16
|
-
import { type FooterLookId, type HeaderLayoutId, type HeaderLookId, type HeaderStyleId
|
|
15
|
+
import type { PaletteColors, PaletteMode, PaletteSelection, PaletteEditorState, KnownCuratedPaletteValueKey, ResolvedPaletteSelection, RuntimePaletteState, SitePalette, SitePaletteId, SitePaletteVersion, PaletteLibraryAuthority } from '../../../../theme-core/src/palette/index';
|
|
16
|
+
import { type FooterLookId, type HeaderLayoutId, type HeaderLookId, type HeaderStyleId } from '../../../../theme-core/src/site-styles/index';
|
|
17
17
|
import type { SelectionFallbackWarning, SiteStyleId } from '../../../../theme-core/src/site-styles/previewCompiler';
|
|
18
18
|
import { type EditorStagedSessionCapabilities, type EditorStagedSessionState } from '../../../../content-editor/src/editorTransactionState';
|
|
19
19
|
export type StyleConfiguratorSaveStatus = Readonly<{
|
|
@@ -25,6 +25,7 @@ export type StyleConfiguratorSaveStatus = Readonly<{
|
|
|
25
25
|
}> | Readonly<{
|
|
26
26
|
kind: 'failed';
|
|
27
27
|
message: string;
|
|
28
|
+
failureKind: 'retryable' | 'stale';
|
|
28
29
|
}>;
|
|
29
30
|
export type StyleConfiguratorExpandedRow = 'style' | 'header-layout' | 'header-style' | 'footer-layout' | 'footer' | 'buttons' | 'typography' | 'palette' | 'colours' | null;
|
|
30
31
|
/**
|
|
@@ -37,20 +38,6 @@ export type StyleConfiguratorNotice = never;
|
|
|
37
38
|
type ThemeTypography = Theme['typography'];
|
|
38
39
|
type BodyTypography = ThemeTypography['body'];
|
|
39
40
|
type HeadingTypography = ThemeTypography['headings']['default'];
|
|
40
|
-
export type TypographySelectionSnapshot = Readonly<{
|
|
41
|
-
kind: 'preset';
|
|
42
|
-
presetId: TypographyPresetId | null;
|
|
43
|
-
bodyFontOverride: string | null;
|
|
44
|
-
headingFontOverride: string | null;
|
|
45
|
-
}> | Readonly<{
|
|
46
|
-
kind: 'custom';
|
|
47
|
-
typography: ThemeTypography;
|
|
48
|
-
}>;
|
|
49
|
-
export type TypographySelectionFlatFields = Readonly<{
|
|
50
|
-
typographyPresetId: TypographyPresetId | null;
|
|
51
|
-
typographyBodyFontOverride: string | null;
|
|
52
|
-
typographyHeadingFontOverride: string | null;
|
|
53
|
-
}>;
|
|
54
41
|
export type TypographyDraftPatch = Readonly<{
|
|
55
42
|
kind: 'heading';
|
|
56
43
|
patch: Partial<HeadingTypography>;
|
|
@@ -61,24 +48,41 @@ export type TypographyDraftPatch = Readonly<{
|
|
|
61
48
|
kind: 'scale';
|
|
62
49
|
scale: ThemeTypography['scale'];
|
|
63
50
|
}>;
|
|
51
|
+
/** Runtime authority is deliberately separate from the editable core state. */
|
|
64
52
|
export type PaletteSelectionSnapshot = Readonly<{
|
|
65
|
-
kind: '
|
|
66
|
-
|
|
53
|
+
kind: 'available';
|
|
54
|
+
editor: PaletteEditorState;
|
|
55
|
+
}> | Readonly<{
|
|
56
|
+
kind: 'invalid';
|
|
57
|
+
reason: PaletteAuthorityError;
|
|
58
|
+
}>;
|
|
59
|
+
export type PaletteAuthorityError = Extract<RuntimePaletteState, {
|
|
60
|
+
kind: 'invalid';
|
|
61
|
+
}>['reason'] | 'runtime-curated-palette-missing' | 'runtime-curated-palette-mismatch' | 'invalid-active-site-palette-version';
|
|
62
|
+
/** Read-only UI projection. It intentionally owns no palette transitions. */
|
|
63
|
+
export type PalettePreviewProjection = Readonly<{
|
|
64
|
+
kind: 'curated';
|
|
65
|
+
valueKey: KnownCuratedPaletteValueKey;
|
|
66
|
+
colors: PaletteColors;
|
|
67
|
+
mode: PaletteMode;
|
|
68
|
+
}> | Readonly<{
|
|
69
|
+
kind: 'curated-fork';
|
|
70
|
+
sourceValueKey: KnownCuratedPaletteValueKey;
|
|
67
71
|
colors: PaletteColors;
|
|
68
72
|
mode: PaletteMode;
|
|
69
73
|
}> | Readonly<{
|
|
70
|
-
kind: '
|
|
74
|
+
kind: 'site';
|
|
71
75
|
paletteId: SitePaletteId;
|
|
72
76
|
colors: PaletteColors;
|
|
73
77
|
mode: PaletteMode;
|
|
74
78
|
version: SitePaletteVersion;
|
|
75
79
|
}> | Readonly<{
|
|
76
|
-
kind: '
|
|
80
|
+
kind: 'new-site';
|
|
77
81
|
colors: PaletteColors;
|
|
78
82
|
mode: PaletteMode;
|
|
79
83
|
}> | Readonly<{
|
|
80
84
|
kind: 'invalid';
|
|
81
|
-
reason:
|
|
85
|
+
reason: PaletteAuthorityError;
|
|
82
86
|
}>;
|
|
83
87
|
export type SelectionSnapshot = Readonly<{
|
|
84
88
|
siteStyleId: SiteStyleId;
|
|
@@ -90,7 +94,7 @@ export type SelectionSnapshot = Readonly<{
|
|
|
90
94
|
footerLookId: FooterLookId | null;
|
|
91
95
|
buttonPersonalityId: ButtonPersonalityId;
|
|
92
96
|
palette: PaletteSelectionSnapshot;
|
|
93
|
-
|
|
97
|
+
typography: ThemeTypography;
|
|
94
98
|
}>;
|
|
95
99
|
type StyleConfiguratorTargetKey = 'design:site-style';
|
|
96
100
|
export type StyleConfiguratorHistoryEntry = Readonly<{
|
|
@@ -100,6 +104,22 @@ export type StyleConfiguratorHistoryEntry = Readonly<{
|
|
|
100
104
|
next: SelectionSnapshot;
|
|
101
105
|
}>;
|
|
102
106
|
export type StyleConfiguratorStagedSession = EditorStagedSessionState<SelectionSnapshot, StyleConfiguratorHistoryEntry, StyleConfiguratorTargetKey>;
|
|
107
|
+
/**
|
|
108
|
+
* A collaborator selected a different active palette while this editor had an
|
|
109
|
+
* unsaved edit to the formerly active site palette. The base remains the
|
|
110
|
+
* server authority; the complete local draft remains available for an
|
|
111
|
+
* intentional retry or cancel.
|
|
112
|
+
*/
|
|
113
|
+
export type StyleConfiguratorStalePaletteConflict = Readonly<{
|
|
114
|
+
kind: 'active-palette-changed';
|
|
115
|
+
originalPaletteId: SitePaletteId;
|
|
116
|
+
localDraft: Readonly<{
|
|
117
|
+
paletteId: SitePaletteId;
|
|
118
|
+
expectedVersion: SitePaletteVersion;
|
|
119
|
+
colors: PaletteColors;
|
|
120
|
+
mode: PaletteMode;
|
|
121
|
+
}>;
|
|
122
|
+
}>;
|
|
103
123
|
export type StyleConfiguratorState = Readonly<{
|
|
104
124
|
/**
|
|
105
125
|
* Last persisted server snapshot. Updated on apply-success (and on
|
|
@@ -114,10 +134,7 @@ export type StyleConfiguratorState = Readonly<{
|
|
|
114
134
|
saveStatus: StyleConfiguratorSaveStatus;
|
|
115
135
|
warnings: ReadonlyArray<SelectionFallbackWarning>;
|
|
116
136
|
notices: ReadonlyArray<StyleConfiguratorNotice>;
|
|
117
|
-
|
|
118
|
-
colors: PaletteColors;
|
|
119
|
-
mode: PaletteMode;
|
|
120
|
-
}>>>>;
|
|
137
|
+
stalePaletteConflict: StyleConfiguratorStalePaletteConflict | null;
|
|
121
138
|
expandedRow: StyleConfiguratorExpandedRow;
|
|
122
139
|
stagedSession: StyleConfiguratorStagedSession;
|
|
123
140
|
}>;
|
|
@@ -144,33 +161,39 @@ export declare function previewButtonPersonality(state: StyleConfiguratorState,
|
|
|
144
161
|
export declare function previewHeaderLayout(state: StyleConfiguratorState, headerLayoutId: HeaderLayoutId): StyleConfiguratorState;
|
|
145
162
|
export declare function previewHeaderStyle(state: StyleConfiguratorState, headerStyleId: HeaderStyleId): StyleConfiguratorState;
|
|
146
163
|
export declare function previewFooterLook(state: StyleConfiguratorState, footerLookId: FooterLookId | null): StyleConfiguratorState;
|
|
147
|
-
export declare function
|
|
148
|
-
export declare function setCustomTypography(state: StyleConfiguratorState, typography: ThemeTypography): StyleConfiguratorState;
|
|
164
|
+
export declare function previewTypography(state: StyleConfiguratorState, typography: ThemeTypography): StyleConfiguratorState;
|
|
149
165
|
export declare function applyTypographyDraftPatch(state: StyleConfiguratorState, currentTypography: ThemeTypography, patch: TypographyDraftPatch): StyleConfiguratorState;
|
|
150
166
|
export declare function resetTypographyToSaved(state: StyleConfiguratorState): StyleConfiguratorState;
|
|
151
|
-
export declare function previewCuratedPalette(state: StyleConfiguratorState,
|
|
152
|
-
|
|
167
|
+
export declare function previewCuratedPalette(state: StyleConfiguratorState, valueKey: KnownCuratedPaletteValueKey): StyleConfiguratorState;
|
|
168
|
+
export declare function previewSitePalette(state: StyleConfiguratorState, palette: Readonly<{
|
|
169
|
+
paletteId: SitePaletteId;
|
|
153
170
|
colors: PaletteColors;
|
|
154
171
|
mode: PaletteMode;
|
|
172
|
+
version: SitePaletteVersion;
|
|
155
173
|
}>): StyleConfiguratorState;
|
|
174
|
+
/** Starts a manual palette from the active complete palette, never sparse overrides. */
|
|
175
|
+
export declare function createPalette(state: StyleConfiguratorState): StyleConfiguratorState;
|
|
156
176
|
export declare function setPaletteColors(state: StyleConfiguratorState, colors: PaletteColors): StyleConfiguratorState;
|
|
157
177
|
/**
|
|
158
178
|
* Records the post-compile resolved selection + any fallback warnings.
|
|
159
179
|
* Used after `compileSiteThemeFromSelections` runs against a new site style:
|
|
160
180
|
* the resolver may have auto-picked a different personality if the user's
|
|
161
181
|
* previous selection is not offered for the new style, or a different palette
|
|
162
|
-
* if the persisted palette
|
|
182
|
+
* if the persisted palette value key is no longer known.
|
|
163
183
|
*
|
|
164
184
|
*/
|
|
165
185
|
export declare function applyResolvedSelections(state: StyleConfiguratorState, input: Readonly<{
|
|
166
|
-
resolved: Pick<SelectionSnapshot, 'buttonPersonalityId' | 'headerLayoutId' | 'headerStyleId' | 'headerLookId'
|
|
167
|
-
typographySelection?: TypographySelectionSnapshot;
|
|
186
|
+
resolved: Pick<SelectionSnapshot, 'buttonPersonalityId' | 'headerLayoutId' | 'headerStyleId' | 'headerLookId' | 'typography'>;
|
|
168
187
|
warnings: ReadonlyArray<SelectionFallbackWarning>;
|
|
169
188
|
}>): StyleConfiguratorState;
|
|
170
189
|
export declare function cancelPreview(state: StyleConfiguratorState): StyleConfiguratorState;
|
|
171
190
|
export declare function markApplySaving(state: StyleConfiguratorState): StyleConfiguratorState;
|
|
172
191
|
export declare function markApplySaved(state: StyleConfiguratorState, persisted: SelectionSnapshot): StyleConfiguratorState;
|
|
173
192
|
export declare function markApplyFailed(state: StyleConfiguratorState, message: string, failureKind?: 'retryable' | 'stale'): StyleConfiguratorState;
|
|
193
|
+
/** Advances a stale site's CAS token only for the user's explicit retry. */
|
|
194
|
+
export declare function prepareStalePaletteRetry(state: StyleConfiguratorState, input?: Readonly<{
|
|
195
|
+
sitePalettes: readonly SitePalette[];
|
|
196
|
+
}>): StyleConfiguratorState;
|
|
174
197
|
export declare function toggleRow(state: StyleConfiguratorState, row: StyleConfiguratorExpandedRow): StyleConfiguratorState;
|
|
175
198
|
export declare function dismissWarnings(state: StyleConfiguratorState): StyleConfiguratorState;
|
|
176
199
|
export declare function dismissNotices(state: StyleConfiguratorState): StyleConfiguratorState;
|
|
@@ -180,16 +203,31 @@ export declare function dismissNotices(state: StyleConfiguratorState): StyleConf
|
|
|
180
203
|
* changes the persisted selection out-of-band.
|
|
181
204
|
*/
|
|
182
205
|
export declare function syncStyleConfiguratorState(state: StyleConfiguratorState, base: SelectionSnapshot): StyleConfiguratorState;
|
|
206
|
+
/** Reconciles typed palette-library authority with the editor's saved base. */
|
|
207
|
+
export declare function reconcilePaletteLibraryActive(state: StyleConfiguratorState, active: PaletteLibraryAuthority, sitePalettes: readonly SitePalette[]): StyleConfiguratorState;
|
|
208
|
+
/**
|
|
209
|
+
* A palette-library response only refreshes palette authority. Unlike a full
|
|
210
|
+
* server snapshot, it must never discard the user's staged site-style work.
|
|
211
|
+
* Site drafts keep their complete local colours/mode and rebase their expected
|
|
212
|
+
* version when the same palette was changed elsewhere.
|
|
213
|
+
*/
|
|
214
|
+
export declare function rebasePaletteLibraryAuthority(state: StyleConfiguratorState, committedPalette: ResolvedPaletteSelection): StyleConfiguratorState;
|
|
183
215
|
export declare function selectionSnapshotsEqual(a: SelectionSnapshot, b: SelectionSnapshot): boolean;
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
export declare function
|
|
192
|
-
export declare function
|
|
193
|
-
|
|
216
|
+
type ModernRuntimePaletteState = Extract<RuntimePaletteState, Readonly<{
|
|
217
|
+
authority: 'curated';
|
|
218
|
+
}>> | Extract<RuntimePaletteState, Readonly<{
|
|
219
|
+
authority: 'site';
|
|
220
|
+
}>> | Extract<RuntimePaletteState, Readonly<{
|
|
221
|
+
kind: 'invalid';
|
|
222
|
+
}>>;
|
|
223
|
+
export declare function paletteSelectionSnapshotFromRuntime(runtime: ModernRuntimePaletteState): PaletteSelectionSnapshot;
|
|
224
|
+
export declare function paletteSelectionSnapshotFromComplete(input: Readonly<{
|
|
225
|
+
selection: PaletteSelection;
|
|
226
|
+
colors: PaletteColors;
|
|
227
|
+
mode: PaletteMode;
|
|
228
|
+
version?: SitePaletteVersion;
|
|
229
|
+
}>): PaletteSelectionSnapshot;
|
|
194
230
|
export declare function paletteSelectionSnapshotsEqual(left: PaletteSelectionSnapshot, right: PaletteSelectionSnapshot): boolean;
|
|
231
|
+
export declare function palettePreviewProjection(palette: PaletteSelectionSnapshot): PalettePreviewProjection;
|
|
232
|
+
export declare function committedPaletteForSnapshot(palette: PaletteSelectionSnapshot): ResolvedPaletteSelection | null;
|
|
195
233
|
export {};
|