@riverbankcms/sdk 0.103.0 → 0.104.1
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-DkNpCPja.mjs → PreviewEditorSidebar-CmaPXdKu.mjs} +148 -128
- package/dist/{PreviewEditorUI-DeNKtqk3.mjs → PreviewEditorUI-C5xRTh2b.mjs} +3 -3
- package/dist/{PreviewQueryProvider-ZF6TXq5Q.mjs → PreviewQueryProvider-CStABBUh.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-5bCsXK2y.mjs → SdkPreviewModeRuntime-Eks51NcN.mjs} +1204 -566
- package/dist/{SiteChromeCustomizeContext-CO1sTK_W.mjs → SiteChromeCustomizeContext-Bt8zb3qu.mjs} +5330 -4533
- package/dist/_dts/api/src/bookingVerticals.d.ts +64 -1
- package/dist/_dts/api/src/contentRuntime.d.ts +6 -3
- package/dist/_dts/api/src/endpoints.d.ts +10 -3
- package/dist/_dts/api/src/index.d.ts +1 -1
- package/dist/_dts/api/src/siteIcons.d.ts +39 -43
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +3 -3
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +36 -7
- package/dist/_dts/block-form/src/widgets/SliderField/SliderField.d.ts +3 -3
- package/dist/_dts/block-form/src/widgets/SliderField/sliderValue.d.ts +36 -0
- package/dist/_dts/block-form/src/widgets/utils/readNumericUiConfig.d.ts +3 -0
- package/dist/_dts/blocks/src/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/feature-card-icons.d.ts +29 -29
- package/dist/_dts/blocks/src/system/blocks/feature-cards.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +3 -0
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +135 -0
- package/dist/_dts/blocks/src/system/icons/generatedAssets.d.ts +28 -0
- package/dist/_dts/blocks/src/system/icons/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/icons/value.d.ts +3 -6
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +240 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/feature-card-icon.d.ts +1 -0
- package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +2 -0
- package/dist/_dts/content-editor/src/ui/stores/generatedIconAssetsStore.d.ts +9 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +208 -0
- package/dist/_dts/editor/src/index.d.ts +3 -1
- package/dist/_dts/editor/src/primitives/rich-text/RichTextEditorSurface.d.ts +14 -6
- package/dist/_dts/editor/src/primitives/rich-text/RichTextToolbar.d.ts +23 -4
- package/dist/_dts/editor/src/primitives/rich-text/config.d.ts +6 -0
- package/dist/_dts/editor/src/primitives/rich-text/extensions/RichTextLink.d.ts +1 -0
- package/dist/_dts/editor/src/primitives/rich-text/paste.d.ts +10 -0
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +7 -0
- package/dist/_dts/editor-blocks/src/BlockForm.d.ts +2 -1
- package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +4 -4
- package/dist/_dts/editor-blocks/src/block-editor/BlockCardBody.d.ts +2 -3
- package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +4 -4
- package/dist/_dts/editor-blocks/src/block-editor/FeatureCardIconsPanel.d.ts +4 -4
- package/dist/_dts/editor-blocks/src/block-editor/GeneratedIconSetDialog.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/block-editor/SortableBlockItem.d.ts +2 -3
- package/dist/_dts/editor-blocks/src/block-editor/blockHeaderActionPlan.d.ts +1 -5
- package/dist/_dts/editor-blocks/src/block-editor/featureCardIconActions.d.ts +25 -19
- package/dist/_dts/editor-blocks/src/block-editor/generatedIconApplyCoordination.d.ts +32 -0
- package/dist/_dts/editor-blocks/src/widgets/icon-picker/GeneratedIconLibraryContext.d.ts +28 -0
- package/dist/_dts/editor-blocks/src/widgets/icon-picker/index.d.ts +2 -0
- package/dist/_dts/editor-blocks/src/widgets/icon-picker/loaders.d.ts +7 -0
- package/dist/_dts/preview-next/src/client/preview/CustomizeBackgroundControlRows.d.ts +15 -0
- package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/EntrySlotBlockEditorPanel.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 +4 -3
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +4 -3
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +4 -3
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +3 -4
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +5 -4
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +44 -18
- package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +4 -5
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorApplyPayload.d.ts +22 -1
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +12 -4
- package/dist/_dts/sdk/src/client/management/types.d.ts +3 -0
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +0 -1
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +5 -2
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +9 -9
- package/dist/_dts/theme-core/src/navigation/types.d.ts +2 -0
- package/dist/_dts/theme-core/src/palette/colors.d.ts +84 -0
- package/dist/_dts/theme-core/src/palette/{variants → curated}/brand-led.d.ts +12 -24
- package/dist/_dts/theme-core/src/palette/{variants → curated}/high-contrast.d.ts +9 -18
- package/dist/_dts/theme-core/src/palette/{variants → curated}/index.d.ts +67 -119
- package/dist/_dts/theme-core/src/palette/{variants → curated}/soft-natural.d.ts +12 -24
- package/dist/_dts/theme-core/src/palette/{variants → curated}/types.d.ts +50 -60
- package/dist/_dts/theme-core/src/palette/{variants → curated}/warm-dark.d.ts +6 -12
- package/dist/_dts/theme-core/src/palette/{variants → curated}/warm-neutral.d.ts +12 -24
- package/dist/_dts/theme-core/src/palette/editorState.d.ts +45 -0
- package/dist/_dts/theme-core/src/palette/index.d.ts +25 -14
- package/dist/_dts/theme-core/src/palette/legacyRuntimeProjection.d.ts +55 -0
- package/dist/_dts/theme-core/src/palette/legacySelection.d.ts +34 -0
- package/dist/_dts/theme-core/src/palette/libraryModel.d.ts +58 -0
- package/dist/_dts/theme-core/src/palette/paletteCompatibilityTransition.d.ts +232 -0
- package/dist/_dts/theme-core/src/palette/persistenceReadSource.d.ts +118 -0
- package/dist/_dts/theme-core/src/palette/resolveSelection.d.ts +50 -0
- package/dist/_dts/theme-core/src/palette/selection.d.ts +72 -0
- package/dist/_dts/theme-core/src/palette/sitePalettePersistence.d.ts +34 -0
- package/dist/_dts/theme-core/src/palette/themePaletteCompatibility.d.ts +58 -0
- package/dist/_dts/theme-core/src/schema.d.ts +9 -0
- package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +22 -22
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +31 -9
- package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +22 -16
- package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +6 -5
- package/dist/_dts/theme-core/src/site-styles/themeParity.d.ts +21 -0
- package/dist/_dts/ui/src/palette/PaletteTokenEditor.d.ts +2 -1
- package/dist/cli/index.mjs +7805 -7449
- package/dist/client/{DiscountCodeDisclosure-ChVZwVtS.mjs → DiscountCodeDisclosure-Dit2aItR.mjs} +1 -1
- package/dist/client/{EventCombined.client-PZtXbH6R.mjs → EventCombined.client-BnREyCjf.mjs} +3 -3
- package/dist/client/{EventListing.client-C4AMTXec.mjs → EventListing.client-0uHld51x.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-B0w8_i0u.mjs → LeafletStaticMap-DJcvSfmj.mjs} +1 -1
- package/dist/client/{MagicLinkForm-DF0ZGhIu.mjs → MagicLinkForm-EAsIktfw.mjs} +2 -2
- package/dist/client/{StepIndicator-PccQ89Ct.mjs → StepIndicator-CRR17tYI.mjs} +2 -2
- package/dist/client/{accordion-CTNWT1lk.mjs → accordion-B47HIuuH.mjs} +1 -1
- package/dist/client/{bookingForm-DYixwPqP.mjs → bookingForm-I1E-8F9P.mjs} +6 -6
- package/dist/client/{buttons-CySQwlFs.mjs → buttons-BbPn8OKA.mjs} +1 -1
- package/dist/client/{carousel-W75iYR0M.mjs → carousel-OlM7SyBs.mjs} +1 -1
- package/dist/client/{cart-Ca_DGWQq.mjs → cart-BKpG5jz6.mjs} +3 -3
- package/dist/client/{checkout-STgKTsNh.mjs → checkout-Dmmr6qoU.mjs} +3 -3
- package/dist/client/client.mjs +8706 -8320
- package/dist/client/{courseRegistration-DQI1cu1u.mjs → courseRegistration-CflZiqGk.mjs} +7 -7
- package/dist/client/{eventCalendar-BJrHpofg.mjs → eventCalendar-BvoLWcp-.mjs} +5 -5
- package/dist/client/{eventCombined-DPtqBHaH.mjs → eventCombined-DsrO8t_t.mjs} +2 -2
- package/dist/client/{eventDetails-Brt31CDo.mjs → eventDetails-C3hxgcJm.mjs} +3 -3
- package/dist/client/{eventListing-BrClHJOq.mjs → eventListing-C-hb237X.mjs} +2 -2
- package/dist/client/{eventRegistration-DxlNlVUC.mjs → eventRegistration-B0gyzDGi.mjs} +7 -7
- package/dist/client/{form-Vp5cGzDF.mjs → form-C_RUi6oJ.mjs} +2 -2
- package/dist/client/{headerSection-DL2xjRgW.mjs → headerSection-IKQiD2U0.mjs} +3 -3
- package/dist/client/hooks.mjs +4845 -4663
- package/dist/client/{locationMap-B0EjoXQS.mjs → locationMap-8ZBrMzRJ.mjs} +2 -2
- package/dist/client/{newsletterForm-BlV9VRlq.mjs → newsletterForm-CYk3ucwj.mjs} +2 -2
- package/dist/client/{pricing-DmRD7Tjx.mjs → pricing-B5GmvfIH.mjs} +1 -1
- package/dist/client/{productDetail-BLTQsY2f.mjs → productDetail-BjS2Dqzo.mjs} +3 -3
- package/dist/client/{productList-R8lsMpRs.mjs → productList-BOHvC8My.mjs} +3 -3
- package/dist/client/{propsDecoder-DgAshF92.mjs → propsDecoder-WS6UEJwZ.mjs} +7 -0
- package/dist/client/rendering/client.mjs +3606 -3281
- package/dist/client/rendering/islands.mjs +18 -18
- package/dist/client/rendering.mjs +8569 -8190
- package/dist/client/{shop-DWjyje1s.mjs → shop-CON03-wN.mjs} +6 -6
- package/dist/client/{shop-commerce-CSKCR87d.mjs → shop-commerce-DlqrFgH8.mjs} +5 -5
- package/dist/client/{shop-commerce-store-DxPnE-iN.mjs → shop-commerce-store-l74-Kne6.mjs} +1 -1
- package/dist/client/{shopShared-OOeAkFq7.mjs → shopShared-CQheEXSg.mjs} +2 -2
- package/dist/client/{useDiscountCodeUi-Bp6X7XgG.mjs → useDiscountCodeUi-v6OluyWl.mjs} +1 -1
- package/dist/client/{useEventFilters-B489x9TO.mjs → useEventFilters-BqSTcNOf.mjs} +3 -3
- package/dist/client/{usePolling-BKP66stL.mjs → usePolling-DMfADjIF.mjs} +2 -2
- package/dist/preview-next/before-render.mjs +10 -3
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/middleware.mjs +10 -3
- package/dist/{previewAuthStore-ByPPZqmp.mjs → previewAuthStore-CfquDtTh.mjs} +10 -3
- package/dist/{sdk-runtime-C8whifOy.mjs → sdk-runtime-BUmJ0DaT.mjs} +2 -2
- package/dist/{separator-CM2C5Axs.mjs → separator-Dd-JYok7.mjs} +1 -1
- package/dist/server/components.mjs +9871 -9557
- package/dist/server/config-validation.mjs +4869 -4687
- package/dist/server/config.mjs +4869 -4687
- package/dist/server/data.mjs +4846 -4664
- package/dist/server/index.mjs +11 -4
- package/dist/server/next.mjs +8665 -8344
- package/dist/server/page-converter.mjs +4749 -4575
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +9816 -9586
- package/dist/server/rendering.mjs +9880 -9566
- package/dist/server/routing.mjs +4975 -4704
- package/dist/server/server.mjs +4819 -4630
- package/dist/server/theme-bridge.mjs +207 -114
- package/dist/server/theme.mjs +92 -91
- package/dist/styles/index.css +20 -0
- package/package.json +1 -1
|
@@ -5,7 +5,7 @@ export declare const BOOKING_ENGINES: readonly ["event_series", "course", "appoi
|
|
|
5
5
|
export type BookingEngine = (typeof BOOKING_ENGINES)[number];
|
|
6
6
|
export declare const VERTICAL_PRESET_AVAILABILITIES: readonly ["onboarding", "settings", "future"];
|
|
7
7
|
export type VerticalPresetAvailability = (typeof VERTICAL_PRESET_AVAILABILITIES)[number];
|
|
8
|
-
export declare const VERTICAL_IDS: readonly ["yoga_wellness", "fitness_pt", "dance_school", "therapist_practitioner", "beauty_spa", "consultant_coach", "training_provider", "retreat_centre", "music_school", "voice_singing", "performing_arts_school", "community_wellbeing", "venue_event_space"];
|
|
8
|
+
export declare const VERTICAL_IDS: readonly ["yoga_wellness", "fitness_pt", "dance_school", "physiotherapy_physical_health", "massage_bodywork", "therapist_practitioner", "beauty_spa", "consultant_coach", "training_provider", "retreat_centre", "music_school", "voice_singing", "performing_arts_school", "community_wellbeing", "venue_event_space"];
|
|
9
9
|
export type VerticalId = (typeof VERTICAL_IDS)[number];
|
|
10
10
|
export type EventSeriesCanonicalBehaviour = Extract<CanonicalBookingBehaviour, 'class' | 'workshop' | 'retreat' | 'performance'>;
|
|
11
11
|
export declare const EVENT_SERIES_BEHAVIOURS: readonly ["class", "workshop", "retreat", "performance"];
|
|
@@ -133,6 +133,14 @@ export declare const VERTICAL_DEFINITIONS: readonly [{
|
|
|
133
133
|
readonly id: "dance_school";
|
|
134
134
|
readonly label: "Dance school";
|
|
135
135
|
readonly description: "Dance classes, terms, workshops, private lessons, and shows.";
|
|
136
|
+
}, {
|
|
137
|
+
readonly id: "physiotherapy_physical_health";
|
|
138
|
+
readonly label: "Physiotherapy & physical health";
|
|
139
|
+
readonly description: "Physiotherapists, chiropractors, osteopaths, sports therapists, and rehabilitation practitioners.";
|
|
140
|
+
}, {
|
|
141
|
+
readonly id: "massage_bodywork";
|
|
142
|
+
readonly label: "Massage & bodywork";
|
|
143
|
+
readonly description: "Massage therapists, bodyworkers, and somatic practitioners.";
|
|
136
144
|
}, {
|
|
137
145
|
readonly id: "therapist_practitioner";
|
|
138
146
|
readonly label: "Therapist or practitioner";
|
|
@@ -311,6 +319,60 @@ export declare const VERTICAL_BOOKING_PRESETS: readonly [Readonly<{
|
|
|
311
319
|
label: string;
|
|
312
320
|
pluralLabel: string;
|
|
313
321
|
description: string;
|
|
322
|
+
}>, Readonly<{
|
|
323
|
+
id: "physiotherapy_physical_health.appointments";
|
|
324
|
+
verticalId: VerticalId;
|
|
325
|
+
canonicalBehaviour: CanonicalBookingBehaviour;
|
|
326
|
+
engine: BookingEngine;
|
|
327
|
+
availability: VerticalPresetAvailability;
|
|
328
|
+
label: string;
|
|
329
|
+
pluralLabel: string;
|
|
330
|
+
description: string;
|
|
331
|
+
}>, Readonly<{
|
|
332
|
+
id: "physiotherapy_physical_health.rehab_classes";
|
|
333
|
+
verticalId: VerticalId;
|
|
334
|
+
canonicalBehaviour: CanonicalBookingBehaviour;
|
|
335
|
+
engine: BookingEngine;
|
|
336
|
+
availability: VerticalPresetAvailability;
|
|
337
|
+
label: string;
|
|
338
|
+
pluralLabel: string;
|
|
339
|
+
description: string;
|
|
340
|
+
}>, Readonly<{
|
|
341
|
+
id: "physiotherapy_physical_health.workshops";
|
|
342
|
+
verticalId: VerticalId;
|
|
343
|
+
canonicalBehaviour: CanonicalBookingBehaviour;
|
|
344
|
+
engine: BookingEngine;
|
|
345
|
+
availability: VerticalPresetAvailability;
|
|
346
|
+
label: string;
|
|
347
|
+
pluralLabel: string;
|
|
348
|
+
description: string;
|
|
349
|
+
}>, Readonly<{
|
|
350
|
+
id: "massage_bodywork.treatments";
|
|
351
|
+
verticalId: VerticalId;
|
|
352
|
+
canonicalBehaviour: CanonicalBookingBehaviour;
|
|
353
|
+
engine: BookingEngine;
|
|
354
|
+
availability: VerticalPresetAvailability;
|
|
355
|
+
label: string;
|
|
356
|
+
pluralLabel: string;
|
|
357
|
+
description: string;
|
|
358
|
+
}>, Readonly<{
|
|
359
|
+
id: "massage_bodywork.group_sessions";
|
|
360
|
+
verticalId: VerticalId;
|
|
361
|
+
canonicalBehaviour: CanonicalBookingBehaviour;
|
|
362
|
+
engine: BookingEngine;
|
|
363
|
+
availability: VerticalPresetAvailability;
|
|
364
|
+
label: string;
|
|
365
|
+
pluralLabel: string;
|
|
366
|
+
description: string;
|
|
367
|
+
}>, Readonly<{
|
|
368
|
+
id: "massage_bodywork.workshops";
|
|
369
|
+
verticalId: VerticalId;
|
|
370
|
+
canonicalBehaviour: CanonicalBookingBehaviour;
|
|
371
|
+
engine: BookingEngine;
|
|
372
|
+
availability: VerticalPresetAvailability;
|
|
373
|
+
label: string;
|
|
374
|
+
pluralLabel: string;
|
|
375
|
+
description: string;
|
|
314
376
|
}>, Readonly<{
|
|
315
377
|
id: "therapist_practitioner.appointments";
|
|
316
378
|
verticalId: VerticalId;
|
|
@@ -696,6 +758,7 @@ export declare function getVerticalPresetsForVertical(verticalId: VerticalId, op
|
|
|
696
758
|
availability?: VerticalPresetAvailability | 'selectable';
|
|
697
759
|
}>): readonly VerticalBookingPresetDefinition[];
|
|
698
760
|
export declare function getOnboardingPresetsForVertical(verticalId: VerticalId): readonly VerticalBookingPresetDefinition[];
|
|
761
|
+
export declare function getDefaultOnboardingPresetForVertical(verticalId: VerticalId): VerticalBookingPresetDefinition | null;
|
|
699
762
|
export declare function isEventSeriesCanonicalBehaviour(behaviour: CanonicalBookingBehaviour): behaviour is EventSeriesCanonicalBehaviour;
|
|
700
763
|
export declare function isEventSeriesVerticalPresetDefinition(presetDefinition: VerticalBookingPresetDefinition): presetDefinition is EventSeriesVerticalPresetDefinition;
|
|
701
764
|
export declare function canonicalBehaviourToEventPreset(behaviour: EventSeriesCanonicalBehaviour): EventSeriesCanonicalBehaviour;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Block, SdkCustomBlock, SdkCustomBlockInput, SiteFont, Theme } from '../../blocks/src/index';
|
|
2
2
|
import type { CamelizeKeys, DbRow } from '../../db/src/index';
|
|
3
|
+
import type { CuratedPaletteId, PaletteOverrides, RuntimePaletteState } from '../../theme-core/src/palette/index';
|
|
3
4
|
import type { ContentTypeRoutingInfo, PublicContentTypeMeta } from './contentTypes';
|
|
4
5
|
import type { SiteRuntimePrivacyPolicy } from './privacyPolicy';
|
|
5
6
|
import type { SitePagePayload } from './sitePages';
|
|
@@ -357,10 +358,12 @@ export type SiteBySlugResponse = {
|
|
|
357
358
|
* Persisted Style configurator selections (Phase C). Optional so legacy
|
|
358
359
|
* site_theme_selections rows (pre-migration) still satisfy the response
|
|
359
360
|
* type — consumers fall back to the site style's defaults when null.
|
|
360
|
-
|
|
361
|
+
*/
|
|
361
362
|
selectionButtonPersonalityId?: string | null;
|
|
362
|
-
|
|
363
|
-
|
|
363
|
+
runtimePaletteState?: RuntimePaletteState | null;
|
|
364
|
+
/** Temporary legacy compatibility projection for stale runtime clients. */
|
|
365
|
+
selectionPaletteVariantId?: CuratedPaletteId | null;
|
|
366
|
+
selectionPaletteOverrides?: PaletteOverrides | null;
|
|
364
367
|
selectionHeaderLayoutId?: string | null;
|
|
365
368
|
selectionHeaderStyleId?: string | null;
|
|
366
369
|
selectionTypographyPresetId?: string | null;
|
|
@@ -1920,9 +1920,9 @@ export declare const API_ENDPOINTS: {
|
|
|
1920
1920
|
readonly responseKind: "json";
|
|
1921
1921
|
readonly errors: readonly [];
|
|
1922
1922
|
};
|
|
1923
|
-
readonly
|
|
1924
|
-
readonly path: "/sites/{siteId}/
|
|
1925
|
-
readonly method: "
|
|
1923
|
+
readonly listGeneratedIconSets: {
|
|
1924
|
+
readonly path: "/sites/{siteId}/generated-icons";
|
|
1925
|
+
readonly method: "GET";
|
|
1926
1926
|
readonly tags: ["riverbank:site:{siteId}", "riverbank:site:{siteId}:settings"];
|
|
1927
1927
|
readonly auth: "user";
|
|
1928
1928
|
readonly responseKind: "json";
|
|
@@ -4684,6 +4684,13 @@ export declare const API_ENDPOINTS: {
|
|
|
4684
4684
|
readonly auth: "user";
|
|
4685
4685
|
readonly responseKind: "json";
|
|
4686
4686
|
};
|
|
4687
|
+
readonly listSiteThemePalettes: {
|
|
4688
|
+
readonly path: "/sites/{siteId}/theme/palettes";
|
|
4689
|
+
readonly method: "GET";
|
|
4690
|
+
readonly auth: "user";
|
|
4691
|
+
readonly errors: readonly [];
|
|
4692
|
+
readonly responseKind: "json";
|
|
4693
|
+
};
|
|
4687
4694
|
readonly createSiteFontUploadUrl: {
|
|
4688
4695
|
readonly path: "/sites/{siteId}/fonts/upload-url";
|
|
4689
4696
|
readonly method: "POST";
|
|
@@ -15,7 +15,7 @@ export type { DiscountsAvailableResponse, NewsletterSubscribeTarget, NewsletterS
|
|
|
15
15
|
export { PUBLIC_EVENT_TICKET_SELECTION_CONTRACT_VERSION } from "./publicExperienceEndpoints";
|
|
16
16
|
export type { ListMailchimpAudiencesResponse, MailchimpAudienceId, MailchimpAudienceCompatibilityIssue, MailchimpAudienceReferenceItem, MailchimpConnectionId, MailchimpIntegrationConnectionStatus, MailchimpIntegrationReauthReason, MailchimpOAuthReturnIntent, MailchimpSignupSyncHealthCounts, MailchimpSignupSyncHealthErrorCategory, MailchimpSignupSyncHealthGroup, MailchimpSignupSyncHealthResponse, MailchimpSignupSyncHealthState, MailchimpSignupSourceBlockId, StartMailchimpOAuthRequest, StartMailchimpOAuthResponse, } from "./mailchimpIntegration";
|
|
17
17
|
export { parseMailchimpAudienceId, parseMailchimpConnectionId, } from "./mailchimpIntegration";
|
|
18
|
-
export type {
|
|
18
|
+
export type { GeneratedIconSetCardRequest, GeneratedIconSetGenerateRequest, GeneratedIconSetGenerateResponse, GeneratedIconSetListRequest, GeneratedIconSetListResponse, GeneratedIconLibraryAsset, GeneratedIconLibrarySet, GeneratedIconRenderAsset, GeneratedIconRenderAssetRef, GeneratedIconRenderAssetsRequest, GeneratedIconRenderAssetsResponse, SiteIconStyleGuidePayload, SiteIconStyleGuideResponse, SiteIconStyleStrokeRule, SiteIconStyleGuideUpdateRequest, } from "./siteIcons";
|
|
19
19
|
export { DEFAULT_LAUNCH_READINESS_INPUT, deriveLaunchReadiness, } from "./launchReadiness";
|
|
20
20
|
export { getDashboardBaseUrl, getDashboardUrl, getAbsoluteDashboardUrl, getCmsApiUrl, resolveApiBaseUrl, normalizeDashboardOrigin, deriveCmsApiUrlFromDashboardUrl, } from "./url";
|
|
21
21
|
export { API_ERROR_CODES, ApiEnvelopeError, extractApiEnvelopeErrorDetails, isApiErrorCode, unwrapResponse, } from "./common/envelope";
|
|
@@ -9,7 +9,6 @@ export type BlockIconValue = {
|
|
|
9
9
|
kind: "generated";
|
|
10
10
|
setId: string;
|
|
11
11
|
assetId: string;
|
|
12
|
-
semanticFallbackIconId: SemanticIconId;
|
|
13
12
|
styleGuideVersionId: string;
|
|
14
13
|
};
|
|
15
14
|
export type SiteIconStyleGuidePayload = {
|
|
@@ -59,34 +58,46 @@ export type GeneratedIconSetGenerateRequest = {
|
|
|
59
58
|
cards: GeneratedIconSetCardRequest[];
|
|
60
59
|
userStyleNote?: string | null;
|
|
61
60
|
};
|
|
62
|
-
export type
|
|
63
|
-
|
|
61
|
+
export type GeneratedIconRenderAssetRef = {
|
|
62
|
+
setId: string;
|
|
63
|
+
assetId: string;
|
|
64
|
+
};
|
|
65
|
+
export type GeneratedIconRenderAsset = GeneratedIconRenderAssetRef & {
|
|
64
66
|
src: string;
|
|
65
|
-
width
|
|
66
|
-
height
|
|
67
|
-
iconValue: BlockIconValue;
|
|
67
|
+
width?: number;
|
|
68
|
+
height?: number;
|
|
68
69
|
};
|
|
69
|
-
|
|
70
|
+
type GeneratedIconLibraryAssetBase = {
|
|
70
71
|
cardKey: string;
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
height: number;
|
|
74
|
-
byteLength: number;
|
|
75
|
-
bytesBase64: string;
|
|
72
|
+
subjectLabel: string;
|
|
73
|
+
iconValue: BlockIconValue;
|
|
76
74
|
};
|
|
77
|
-
export type
|
|
75
|
+
export type GeneratedIconLibraryAsset = GeneratedIconLibraryAssetBase & ({
|
|
76
|
+
availability: "available";
|
|
77
|
+
mediaAssetId: string;
|
|
78
|
+
renderAsset: GeneratedIconRenderAsset;
|
|
79
|
+
} | {
|
|
80
|
+
availability: "unavailable";
|
|
81
|
+
mediaAssetId: string | null;
|
|
82
|
+
renderAsset: null;
|
|
83
|
+
});
|
|
84
|
+
export type GeneratedIconLibrarySet = {
|
|
78
85
|
setId: string;
|
|
79
86
|
blockKind: string;
|
|
80
87
|
blockLabel: string;
|
|
81
88
|
userStyleNote: string | null;
|
|
82
89
|
styleGuideVersionId: string;
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
+
sourceContentFingerprint: string | null;
|
|
91
|
+
sourceFingerprintVersion: number | null;
|
|
92
|
+
sourceCards: GeneratedIconSetCardRequest[] | null;
|
|
93
|
+
createdAt: string;
|
|
94
|
+
styleFreshness: {
|
|
95
|
+
kind: "current";
|
|
96
|
+
} | {
|
|
97
|
+
kind: "older_style";
|
|
98
|
+
currentStyleGuideVersionId: string;
|
|
99
|
+
};
|
|
100
|
+
assets: GeneratedIconLibraryAsset[];
|
|
90
101
|
};
|
|
91
102
|
export type GeneratedIconSetGenerateResponse = {
|
|
92
103
|
styleGuide: {
|
|
@@ -94,35 +105,20 @@ export type GeneratedIconSetGenerateResponse = {
|
|
|
94
105
|
sourceFingerprint: string;
|
|
95
106
|
displaySummary: string;
|
|
96
107
|
};
|
|
97
|
-
|
|
98
|
-
preview: {
|
|
99
|
-
assets: GeneratedIconSetPreviewAsset[];
|
|
100
|
-
};
|
|
101
|
-
};
|
|
102
|
-
export type GeneratedIconSetApplyRequest = {
|
|
103
|
-
candidate: GeneratedIconSetCandidate;
|
|
108
|
+
set: GeneratedIconLibrarySet;
|
|
104
109
|
};
|
|
105
|
-
export type
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
assets: Array<{
|
|
109
|
-
cardKey: string;
|
|
110
|
-
mediaAssetId: string;
|
|
111
|
-
iconValue: BlockIconValue;
|
|
112
|
-
}>;
|
|
110
|
+
export type GeneratedIconSetListRequest = {
|
|
111
|
+
cursor?: string;
|
|
112
|
+
limit?: string;
|
|
113
113
|
};
|
|
114
|
-
export type
|
|
115
|
-
|
|
116
|
-
|
|
114
|
+
export type GeneratedIconSetListResponse = {
|
|
115
|
+
sets: GeneratedIconLibrarySet[];
|
|
116
|
+
nextCursor: string | null;
|
|
117
117
|
};
|
|
118
118
|
export type GeneratedIconRenderAssetsRequest = {
|
|
119
119
|
refs: GeneratedIconRenderAssetRef[];
|
|
120
120
|
};
|
|
121
|
-
export type GeneratedIconRenderAsset = GeneratedIconRenderAssetRef & {
|
|
122
|
-
src: string;
|
|
123
|
-
width?: number;
|
|
124
|
-
height?: number;
|
|
125
|
-
};
|
|
126
121
|
export type GeneratedIconRenderAssetsResponse = {
|
|
127
122
|
assets: GeneratedIconRenderAsset[];
|
|
128
123
|
};
|
|
124
|
+
export {};
|
|
@@ -12,7 +12,7 @@ import type { LinkPayload, RoutableContentItem, SitemapRouteItem } from "./navig
|
|
|
12
12
|
import type { RouteMetadataPayload, RouteMetadataResponse } from "./routes";
|
|
13
13
|
import type { SiteAnalyticsSettingsPayload, SiteAnalyticsSettingsResponse } from "./siteAnalytics";
|
|
14
14
|
import type { SiteBannerSettingsPayload, SiteBannerSettingsResponse } from "./siteBanner";
|
|
15
|
-
import type {
|
|
15
|
+
import type { GeneratedIconSetGenerateRequest, GeneratedIconSetGenerateResponse, GeneratedIconSetListRequest, GeneratedIconSetListResponse, SiteIconStyleGuideResponse, SiteIconStyleGuideUpdateRequest } from "./siteIcons";
|
|
16
16
|
import type { AiBrandGuidelinesGenerateRequest, AiBrandGuidelinesGenerateResponse, AiBrandGuidelinesGenerationContextResponse, SiteAiBrandGuidelinesPayload, SiteAiBrandGuidelinesResponse, SiteAiProfilePayload, SiteAiProfileResponse, SiteGenerationIntakePayload, SiteGenerationIntakeResponse } from "./siteOnboarding";
|
|
17
17
|
import type { SitePrivacySettingsPayload, SitePrivacySettingsResponse } from "./privacyPolicy";
|
|
18
18
|
import type { MaintenanceSettingsPayload, MaintenanceSettingsResponse, SiteBusinessAddressPayload, SiteBusinessAddressResponse, SiteFooterBlocksEditorResponse, SiteGeneralSettingsPayload, SiteGeneralSettingsResponse, SiteLayoutSettingsPayload, SiteLayoutSettingsResponse, UpdateSiteDeploymentModePayload, UpdateSiteDeploymentModeResponse, UpdateSiteFooterBlocksPayload, UpdateSiteFooterBlocksResponse } from "./siteSettings";
|
|
@@ -509,9 +509,9 @@ export type SiteManagementAPIEndpoints = {
|
|
|
509
509
|
generateGeneratedIconSet: APIEndpoint<GeneratedIconSetGenerateRequest, {
|
|
510
510
|
siteId: string;
|
|
511
511
|
}, GeneratedIconSetGenerateResponse>;
|
|
512
|
-
|
|
512
|
+
listGeneratedIconSets: APIEndpoint<never, {
|
|
513
513
|
siteId: string;
|
|
514
|
-
},
|
|
514
|
+
} & GeneratedIconSetListRequest, GeneratedIconSetListResponse>;
|
|
515
515
|
getSiteAiProfile: APIEndpoint<never, {
|
|
516
516
|
siteId: string;
|
|
517
517
|
}, SiteAiProfileResponse>;
|
|
@@ -3,7 +3,7 @@ import type { ListMediaAssetsResult, MediaAssetWithLabels } from '@riverbankcms/
|
|
|
3
3
|
import type { DbJson } from '../../db/src/index';
|
|
4
4
|
import type { PageDesignEditorReadModel, PageDesignIntent, AppearancePresetId, BoundaryOptionId, DesignBlockId, FooterLookId, HeaderLayoutId, HeaderLookId, HeaderStyleId, LayoutVariantKey, SiteStyleId, TypographyPresetId } from '../../theme-core/src/site-styles/index';
|
|
5
5
|
import type { ButtonPersonalityId } from '../../theme-core/src/buttons/index';
|
|
6
|
-
import type { PaletteOverrides,
|
|
6
|
+
import type { PaletteCommand, PaletteOverrides, PaletteSelection, CuratedPaletteId } from '../../theme-core/src/palette/index';
|
|
7
7
|
import type { APIEndpoint } from './apiEndpointTypes';
|
|
8
8
|
import type { AnalyticsReportQuery, AnalyticsReportResponse } from './analytics';
|
|
9
9
|
import type { CreateMediaAssetBody, MediaAssetResponse, MediaAssetFileFilterContract, MediaBulkDeleteResponse, MediaClassifyJobResponse, MediaJobSummaryResponse, MediaLabelSummary, MediaSettingsResponse } from './media';
|
|
@@ -21,7 +21,7 @@ import type { DevToolsGetSiteRoleDowngradeQuery, DevToolsImpersonationResponse,
|
|
|
21
21
|
*/
|
|
22
22
|
export type SiteThemeSelectionsPayload = {
|
|
23
23
|
buttonPersonalityId?: ButtonPersonalityId | null;
|
|
24
|
-
paletteVariantId?:
|
|
24
|
+
paletteVariantId?: CuratedPaletteId | null;
|
|
25
25
|
paletteOverrides?: PaletteOverrides | null;
|
|
26
26
|
headerLayoutId?: HeaderLayoutId | null;
|
|
27
27
|
headerStyleId?: HeaderStyleId | null;
|
|
@@ -31,11 +31,9 @@ export type SiteThemeSelectionsPayload = {
|
|
|
31
31
|
headerLookId?: HeaderLookId | null;
|
|
32
32
|
footerLookId?: FooterLookId | null;
|
|
33
33
|
};
|
|
34
|
-
|
|
34
|
+
type ApplySiteStyleSelectionCommonBody = Readonly<{
|
|
35
35
|
siteStyleId: SiteStyleId;
|
|
36
36
|
buttonPersonalityId: ButtonPersonalityId | null;
|
|
37
|
-
paletteVariantId: PaletteVariantId | null;
|
|
38
|
-
paletteOverrides: PaletteOverrides | null;
|
|
39
37
|
typographyPresetId?: TypographyPresetId | null;
|
|
40
38
|
typographyBodyFontOverride?: string | null;
|
|
41
39
|
typographyHeadingFontOverride?: string | null;
|
|
@@ -47,6 +45,16 @@ export type ApplySiteStyleSelectionBody = Readonly<{
|
|
|
47
45
|
baseSelectionVersion: number;
|
|
48
46
|
selectionId?: string | null;
|
|
49
47
|
}>;
|
|
48
|
+
export type ApplySiteStyleSelectionBody = ApplySiteStyleSelectionCommonBody & (Readonly<{
|
|
49
|
+
paletteCommand: PaletteCommand;
|
|
50
|
+
paletteVariantId?: never;
|
|
51
|
+
paletteOverrides?: never;
|
|
52
|
+
}> | Readonly<{
|
|
53
|
+
/** Bounded input adapter for callers not yet emitting commands. */
|
|
54
|
+
paletteCommand?: undefined;
|
|
55
|
+
paletteVariantId: CuratedPaletteId | null;
|
|
56
|
+
paletteOverrides: PaletteOverrides | null;
|
|
57
|
+
}>);
|
|
50
58
|
export type ApplySiteStyleSelectionResponse = Readonly<{
|
|
51
59
|
success: boolean;
|
|
52
60
|
themeId: string;
|
|
@@ -57,8 +65,11 @@ export type ApplySiteStyleSelectionResponse = Readonly<{
|
|
|
57
65
|
theme: Theme;
|
|
58
66
|
siteStyleId: SiteStyleId;
|
|
59
67
|
buttonPersonalityId: ButtonPersonalityId;
|
|
60
|
-
paletteVariantId:
|
|
68
|
+
paletteVariantId: CuratedPaletteId;
|
|
61
69
|
paletteOverrides: PaletteOverrides | null;
|
|
70
|
+
activePaletteSelection: PaletteSelection;
|
|
71
|
+
/** Present only when the active selection is a site palette. */
|
|
72
|
+
activeSitePaletteVersion: number | null;
|
|
62
73
|
headerLayoutId: HeaderLayoutId;
|
|
63
74
|
headerStyleId: HeaderStyleId;
|
|
64
75
|
typographyPresetId: TypographyPresetId | null;
|
|
@@ -67,6 +78,18 @@ export type ApplySiteStyleSelectionResponse = Readonly<{
|
|
|
67
78
|
headerLookId: HeaderLookId | null;
|
|
68
79
|
footerLookId: FooterLookId;
|
|
69
80
|
}>;
|
|
81
|
+
export type ListSiteThemePalettesResponse = Readonly<{
|
|
82
|
+
active: Readonly<{
|
|
83
|
+
kind: 'migrated';
|
|
84
|
+
selection: PaletteSelection;
|
|
85
|
+
}> | Readonly<{
|
|
86
|
+
kind: 'legacy-unmigrated';
|
|
87
|
+
}> | Readonly<{
|
|
88
|
+
kind: 'invalid';
|
|
89
|
+
reason: string;
|
|
90
|
+
}>;
|
|
91
|
+
palettes: readonly import('../../theme-core/src/palette/index').SitePalette[];
|
|
92
|
+
}>;
|
|
70
93
|
export type SaveSiteChromeLookSelectionBody = Readonly<{
|
|
71
94
|
surface: 'header';
|
|
72
95
|
lookId: HeaderLookId | null;
|
|
@@ -89,6 +112,7 @@ export type SaveSiteChromeLookSelectionResponse = Readonly<{
|
|
|
89
112
|
themeId: string;
|
|
90
113
|
selectionId: string;
|
|
91
114
|
selectionUpdatedAt: string | null;
|
|
115
|
+
selectionVersion: number;
|
|
92
116
|
savedAt: string;
|
|
93
117
|
theme: Theme;
|
|
94
118
|
headerLookId: HeaderLookId | null;
|
|
@@ -230,6 +254,7 @@ export type SiteRuntimeAPIEndpoints = {
|
|
|
230
254
|
themeId: string;
|
|
231
255
|
selectionId: string;
|
|
232
256
|
selectionUpdatedAt: string | null;
|
|
257
|
+
selectionVersion: number;
|
|
233
258
|
savedAt: string;
|
|
234
259
|
overrides: Record<string, unknown> | null;
|
|
235
260
|
theme: Theme;
|
|
@@ -242,7 +267,7 @@ export type SiteRuntimeAPIEndpoints = {
|
|
|
242
267
|
* local state without a follow-up read.
|
|
243
268
|
*/
|
|
244
269
|
buttonPersonalityId: ButtonPersonalityId | null;
|
|
245
|
-
paletteVariantId:
|
|
270
|
+
paletteVariantId: CuratedPaletteId | null;
|
|
246
271
|
paletteOverrides: PaletteOverrides | null;
|
|
247
272
|
headerLayoutId: HeaderLayoutId | null;
|
|
248
273
|
headerStyleId: HeaderStyleId | null;
|
|
@@ -255,6 +280,9 @@ export type SiteRuntimeAPIEndpoints = {
|
|
|
255
280
|
applySiteStyleSelection: APIEndpoint<ApplySiteStyleSelectionBody, {
|
|
256
281
|
siteId: string;
|
|
257
282
|
}, ApplySiteStyleSelectionResponse>;
|
|
283
|
+
listSiteThemePalettes: APIEndpoint<never, {
|
|
284
|
+
siteId: string;
|
|
285
|
+
}, ListSiteThemePalettesResponse>;
|
|
258
286
|
saveSiteChromeLookSelection: APIEndpoint<SaveSiteChromeLookSelectionBody, {
|
|
259
287
|
siteId: string;
|
|
260
288
|
}, SaveSiteChromeLookSelectionResponse>;
|
|
@@ -807,3 +835,4 @@ export type SiteRuntimeAPIEndpoints = {
|
|
|
807
835
|
sessionId?: string;
|
|
808
836
|
}, never, void>;
|
|
809
837
|
};
|
|
838
|
+
export {};
|
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
* `ui: { widget: 'slider' }` on `type: 'number'` fields.
|
|
8
8
|
*
|
|
9
9
|
* Key behaviors:
|
|
10
|
-
* -
|
|
11
|
-
* -
|
|
12
|
-
* - Supports
|
|
10
|
+
* - Percentage/max-on-unset behavior remains the default for opacity fields
|
|
11
|
+
* - Supports percent, pixel, and unitless value display
|
|
12
|
+
* - Supports an optional linked numeric input for broad ranges
|
|
13
13
|
*/
|
|
14
14
|
import type { FieldWidgetProps } from '../../fields/props';
|
|
15
15
|
import type { NumberFieldConfig } from '../../fields/types';
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { SliderUiConfig } from '../utils/readNumericUiConfig';
|
|
2
|
+
import { type Result } from '../../../../core/src/index';
|
|
3
|
+
export type SliderValueBounds = Readonly<{
|
|
4
|
+
min: number;
|
|
5
|
+
max: number;
|
|
6
|
+
step: number;
|
|
7
|
+
}>;
|
|
8
|
+
export type SliderValueBoundsError = Readonly<{
|
|
9
|
+
tag: 'invalid_min';
|
|
10
|
+
value: number;
|
|
11
|
+
}> | Readonly<{
|
|
12
|
+
tag: 'invalid_max';
|
|
13
|
+
value: number;
|
|
14
|
+
}> | Readonly<{
|
|
15
|
+
tag: 'inverted_range';
|
|
16
|
+
min: number;
|
|
17
|
+
max: number;
|
|
18
|
+
}> | Readonly<{
|
|
19
|
+
tag: 'invalid_step';
|
|
20
|
+
value: number;
|
|
21
|
+
}>;
|
|
22
|
+
export declare const DEFAULT_SLIDER_VALUE_BOUNDS: SliderValueBounds;
|
|
23
|
+
export declare function parseSliderValueBounds(input: Readonly<{
|
|
24
|
+
fieldMin?: number;
|
|
25
|
+
fieldMax?: number;
|
|
26
|
+
fieldStep?: number;
|
|
27
|
+
ui: SliderUiConfig;
|
|
28
|
+
}>): Result<SliderValueBounds, SliderValueBoundsError>;
|
|
29
|
+
export declare function constrainSliderValue(value: number, bounds: SliderValueBounds): number;
|
|
30
|
+
export declare function resolveSliderDisplayValue(input: Readonly<{
|
|
31
|
+
value: number | null | undefined;
|
|
32
|
+
defaultValue: unknown;
|
|
33
|
+
unsetValue: SliderUiConfig['unsetValue'];
|
|
34
|
+
bounds: SliderValueBounds;
|
|
35
|
+
}>): number;
|
|
36
|
+
export declare function sliderValueSuffix(unit: SliderUiConfig['valueUnit']): string;
|
|
@@ -5,6 +5,9 @@ export type NumericInputUiConfig = {
|
|
|
5
5
|
};
|
|
6
6
|
export type SliderUiConfig = NumericInputUiConfig & {
|
|
7
7
|
showValue?: boolean;
|
|
8
|
+
valueUnit?: 'percent' | 'pixels' | 'unitless';
|
|
9
|
+
unsetValue?: 'max' | 'field-default';
|
|
10
|
+
allowDirectInput?: boolean;
|
|
8
11
|
};
|
|
9
12
|
export declare function readNumberFieldUiConfig(ui: unknown): NumericInputUiConfig;
|
|
10
13
|
export declare function readSliderFieldUiConfig(ui: unknown): SliderUiConfig;
|
|
@@ -33,7 +33,7 @@ export * from '../../theme-core/src/siteChrome';
|
|
|
33
33
|
export * from '../../theme-core/src/blocks/index';
|
|
34
34
|
export { EDITABLE_SURFACE_FORWARDING_PROP, markEditableSurfaceForwarding, type EditableSurfaceForwardingComponent, } from './system/runtime/header/shared';
|
|
35
35
|
export * from './system';
|
|
36
|
-
export { parseSiteIconStyleGuideVersionId, type SiteIconStyleGuideVersionId, } from './system/icons/ids';
|
|
36
|
+
export { type GeneratedIconAssetId, type GeneratedIconSetId, parseSiteIconStyleGuideVersionId, type SiteIconStyleGuideVersionId, } from './system/icons/ids';
|
|
37
37
|
export { isSemanticIconId, type SemanticIconId, } from './system/icons/semantic';
|
|
38
38
|
export { getGeneratedBlockIconStyleState, parseBlockIconValue, type GeneratedBlockIconValue, type GeneratedBlockIconStyleState, } from './system/icons/value';
|
|
39
39
|
export { SUPPORTED_LOADER_ENDPOINTS, isSupportedLoaderEndpoint, type SupportedLoaderEndpoint, } from './system/data';
|
|
@@ -1,8 +1,37 @@
|
|
|
1
1
|
import type { TipTapNode } from '../manifest/richTextSchema';
|
|
2
|
+
import { type Brand, type Result } from '../../../../core/src/index';
|
|
2
3
|
import type { SemanticIconId } from '../icons/semantic';
|
|
3
4
|
import { type BlockIconValue } from '../icons/value';
|
|
4
5
|
export declare const FEATURE_CARD_ICON_TREATMENTS: readonly ["plain", "soft-badge", "utility-badge"];
|
|
5
6
|
export type FeatureCardIconTreatment = (typeof FEATURE_CARD_ICON_TREATMENTS)[number];
|
|
7
|
+
export declare const FEATURE_CARD_GENERATED_ICON_SIZE_PX: {
|
|
8
|
+
readonly min: 40;
|
|
9
|
+
readonly max: 400;
|
|
10
|
+
readonly step: 5;
|
|
11
|
+
readonly default: 75;
|
|
12
|
+
};
|
|
13
|
+
export type FeatureCardGeneratedIconSizePx = Brand<number, 'FeatureCardGeneratedIconSizePx'>;
|
|
14
|
+
export type FeatureCardGeneratedIconSizeError = Readonly<{
|
|
15
|
+
tag: 'not_number';
|
|
16
|
+
}> | Readonly<{
|
|
17
|
+
tag: 'not_finite';
|
|
18
|
+
value: number;
|
|
19
|
+
}> | Readonly<{
|
|
20
|
+
tag: 'not_integer';
|
|
21
|
+
value: number;
|
|
22
|
+
}> | Readonly<{
|
|
23
|
+
tag: 'out_of_range';
|
|
24
|
+
value: number;
|
|
25
|
+
min: number;
|
|
26
|
+
max: number;
|
|
27
|
+
}> | Readonly<{
|
|
28
|
+
tag: 'off_step';
|
|
29
|
+
value: number;
|
|
30
|
+
min: number;
|
|
31
|
+
step: number;
|
|
32
|
+
}>;
|
|
33
|
+
export declare function parseFeatureCardGeneratedIconSizePx(value: unknown): Result<FeatureCardGeneratedIconSizePx, FeatureCardGeneratedIconSizeError>;
|
|
34
|
+
export declare function resolveFeatureCardGeneratedIconSizePx(value: unknown): FeatureCardGeneratedIconSizePx;
|
|
6
35
|
export type FeatureCardIconContent = {
|
|
7
36
|
title?: string | null;
|
|
8
37
|
body?: TipTapNode | null;
|
|
@@ -17,41 +46,12 @@ export type FeatureCardIconSuggestionInput = {
|
|
|
17
46
|
bodyText: string;
|
|
18
47
|
icon: BlockIconValue;
|
|
19
48
|
};
|
|
20
|
-
export type FeatureCardIconSuggestion = {
|
|
21
|
-
cardKey: string;
|
|
22
|
-
iconId: string;
|
|
23
|
-
};
|
|
24
|
-
export type ValidatedFeatureCardIconSuggestion = {
|
|
25
|
-
cardKey: string;
|
|
26
|
-
iconId: SemanticIconId;
|
|
27
|
-
};
|
|
28
49
|
export type FeatureCardIconCompletion = {
|
|
29
50
|
totalCards: number;
|
|
30
51
|
cardsWithIcons: number;
|
|
31
52
|
};
|
|
32
|
-
export type FeatureCardIconSuggestionPlan = {
|
|
33
|
-
kind: 'applied';
|
|
34
|
-
appliedSuggestions: readonly ValidatedFeatureCardIconSuggestion[];
|
|
35
|
-
} | {
|
|
36
|
-
kind: 'duplicate_card_key';
|
|
37
|
-
cardKey: string;
|
|
38
|
-
} | {
|
|
39
|
-
kind: 'duplicate_suggestion_card_key';
|
|
40
|
-
cardKey: string;
|
|
41
|
-
} | {
|
|
42
|
-
kind: 'missing_suggestion_card_key';
|
|
43
|
-
cardKey: string;
|
|
44
|
-
} | {
|
|
45
|
-
kind: 'unknown_card_key';
|
|
46
|
-
cardKey: string;
|
|
47
|
-
} | {
|
|
48
|
-
kind: 'invalid_semantic_icon';
|
|
49
|
-
iconId: string;
|
|
50
|
-
};
|
|
51
53
|
export declare function createFeatureCardIconKey(card: FeatureCardIconInputContent, index: number): string;
|
|
52
54
|
export declare function getFeatureCardIconCompletion(cards: readonly FeatureCardIconInputContent[] | null | undefined): FeatureCardIconCompletion;
|
|
53
55
|
export declare function shouldReserveFeatureCardIconZone(cards: readonly FeatureCardIconInputContent[] | null | undefined): boolean;
|
|
54
56
|
export declare function toFeatureCardIconSuggestionInputs(cards: readonly FeatureCardIconInputContent[] | null | undefined): readonly FeatureCardIconSuggestionInput[];
|
|
55
57
|
export declare function suggestSemanticIconForFeatureCard(card: FeatureCardIconSuggestionInput): SemanticIconId;
|
|
56
|
-
export declare function suggestFeatureCardSemanticIcons(cards: readonly FeatureCardIconInputContent[] | null | undefined): readonly FeatureCardIconSuggestion[];
|
|
57
|
-
export declare function applyFeatureCardIconSuggestions(cards: readonly FeatureCardIconInputContent[], suggestions: readonly FeatureCardIconSuggestion[]): FeatureCardIconSuggestionPlan;
|
|
@@ -25,6 +25,7 @@ export type FeatureCardsContent = {
|
|
|
25
25
|
columns?: FeatureCardsColumns | null;
|
|
26
26
|
cardMarker?: FeatureCardsCardMarker | null;
|
|
27
27
|
_iconTreatment?: FeatureCardIconTreatment | null;
|
|
28
|
+
_generatedIconSizePx?: number | null;
|
|
28
29
|
cards?: FeatureCard[] | null;
|
|
29
30
|
};
|
|
30
31
|
export declare const featureCardsBlockDefinition: SystemBlockDefinition<FeatureCardsContent>;
|
|
@@ -76,6 +76,9 @@ export declare const locationMapManifest: import("..").DefinedBlockManifest<{
|
|
|
76
76
|
max?: number | undefined;
|
|
77
77
|
step?: number | undefined;
|
|
78
78
|
showValue?: boolean | undefined;
|
|
79
|
+
valueUnit?: "percent" | "pixels" | "unitless" | undefined;
|
|
80
|
+
unsetValue?: "max" | "field-default" | undefined;
|
|
81
|
+
allowDirectInput?: boolean | undefined;
|
|
79
82
|
pattern?: string | undefined;
|
|
80
83
|
placeholder?: string | undefined;
|
|
81
84
|
visibleWhen?: import("..").FieldVisibleWhen | undefined;
|