@riverbankcms/sdk 0.60.12 → 0.60.14

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.
Files changed (91) hide show
  1. package/README.md +10 -7
  2. package/dist/_dts/api/src/bookingConfig.d.ts +31 -1
  3. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +38 -1
  4. package/dist/_dts/api/src/bookingOperations.d.ts +3 -0
  5. package/dist/_dts/api/src/bookingRecords.d.ts +45 -0
  6. package/dist/_dts/api/src/bookingRefundOutcomes.d.ts +4 -4
  7. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +1 -5
  8. package/dist/_dts/api/src/communications.d.ts +1 -1
  9. package/dist/_dts/api/src/contentRuntime.d.ts +1 -1
  10. package/dist/_dts/api/src/endpoints.d.ts +89 -9
  11. package/dist/_dts/api/src/index.d.ts +2 -1
  12. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +1 -0
  13. package/dist/_dts/api/src/seoEndpoints.d.ts +2 -0
  14. package/dist/_dts/api/src/siteAssets.d.ts +0 -10
  15. package/dist/_dts/api/src/types.d.ts +1 -1
  16. package/dist/_dts/blocks/src/PageRenderer.d.ts +1 -0
  17. package/dist/_dts/blocks/src/index.d.ts +1 -0
  18. package/dist/_dts/blocks/src/portal/types.d.ts +1 -1
  19. package/dist/_dts/blocks/src/server.d.ts +1 -0
  20. package/dist/_dts/blocks/src/subroutes/fold.d.ts +40 -0
  21. package/dist/_dts/blocks/src/subroutes/formatDate.d.ts +12 -0
  22. package/dist/_dts/blocks/src/subroutes/index.d.ts +3 -0
  23. package/dist/_dts/blocks/src/subroutes/kinds.d.ts +32 -0
  24. package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +3 -1
  25. package/dist/_dts/blocks/src/system/helpers/resolveBackground.d.ts +2 -0
  26. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/types.d.ts +1 -0
  27. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +1 -0
  28. package/dist/_dts/blocks/src/system/spacing.d.ts +2 -1
  29. package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +5 -0
  30. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +5 -1
  31. package/dist/_dts/core/src/booking-refunds.d.ts +8 -0
  32. package/dist/_dts/core/src/participant-identity.d.ts +1 -73
  33. package/dist/_dts/core/src/participants.d.ts +19 -7
  34. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +188 -36
  35. package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +3 -3
  36. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +3 -3
  37. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +3 -3
  38. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +3 -3
  39. package/dist/_dts/preview-next/src/client/preview/SubrouteNoticePanel.d.ts +13 -0
  40. package/dist/_dts/preview-next/src/client/preview/subrouteNotice.d.ts +26 -0
  41. package/dist/_dts/sdk/src/contracts/page.d.ts +1 -0
  42. package/dist/_dts/sdk/src/public-api/contracts.d.ts +1 -0
  43. package/dist/_dts/sdk/src/rendering/islands/types.d.ts +1 -0
  44. package/dist/_dts/sdk/src/routing/resolvePageContent.d.ts +4 -5
  45. package/dist/_dts/sdk/src/version.d.ts +1 -1
  46. package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
  47. package/dist/_dts/theme-core/src/buttons/personalities/showtime-pill.d.ts +17 -0
  48. package/dist/_dts/theme-core/src/buttons/types.d.ts +1 -1
  49. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  50. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +66 -30
  51. package/dist/_dts/theme-core/src/palette/variants/brand-led.d.ts +16 -0
  52. package/dist/_dts/theme-core/src/palette/variants/index.d.ts +15 -0
  53. package/dist/_dts/theme-core/src/palette/variants/types.d.ts +3 -3
  54. package/dist/_dts/theme-core/src/schema.d.ts +174 -6
  55. package/dist/_dts/theme-core/src/site-styles/appearancePresets.d.ts +328 -15
  56. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +54 -2
  57. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +124 -0
  58. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -2
  59. package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -0
  60. package/dist/_dts/theme-core/src/site-styles/lookResolution.d.ts +21 -0
  61. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +2 -1
  62. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +1 -1
  63. package/dist/_dts/theme-core/src/site-styles/types.d.ts +135 -2
  64. package/dist/_dts/ui/src/badge.d.ts +1 -1
  65. package/dist/_dts/ui/src/button.d.ts +1 -1
  66. package/dist/cli/index.mjs +744 -176
  67. package/dist/client/bookings.mjs +115 -63
  68. package/dist/client/client.mjs +848 -227
  69. package/dist/client/hooks.mjs +737 -173
  70. package/dist/client/rendering/client.mjs +179 -100
  71. package/dist/client/rendering/islands.mjs +179 -99
  72. package/dist/client/rendering.mjs +847 -226
  73. package/dist/preview-next/before-render.mjs +103 -16
  74. package/dist/preview-next/client/runtime.mjs +1615 -319
  75. package/dist/preview-next/middleware.mjs +103 -16
  76. package/dist/server/components.mjs +838 -227
  77. package/dist/server/config-validation.mjs +737 -173
  78. package/dist/server/config.mjs +737 -173
  79. package/dist/server/data.mjs +737 -173
  80. package/dist/server/index.mjs +106 -79
  81. package/dist/server/next.mjs +841 -229
  82. package/dist/server/page-converter.mjs +589 -144
  83. package/dist/server/prebuild.mjs +1 -1
  84. package/dist/server/rendering/server.mjs +838 -227
  85. package/dist/server/rendering.mjs +838 -227
  86. package/dist/server/routing.mjs +771 -178
  87. package/dist/server/server.mjs +738 -174
  88. package/dist/server/theme-bridge.mjs +216 -39
  89. package/dist/server/theme.mjs +139 -37
  90. package/dist/styles/index.css +44 -2
  91. package/package.json +1 -1
@@ -157,11 +157,73 @@ export declare const blockDesignPlanSchema: z.ZodObject<{
157
157
  high: "high";
158
158
  medium: "medium";
159
159
  }>;
160
+ sectionHeight: z.ZodOptional<z.ZodEnum<{
161
+ default: "default";
162
+ hero: "hero";
163
+ banner: "banner";
164
+ immersive: "immersive";
165
+ }>>;
160
166
  heroLegibility: z.ZodOptional<z.ZodEnum<{
161
167
  none: "none";
162
168
  "scrim-gradient": "scrim-gradient";
163
169
  "solid-panel": "solid-panel";
164
170
  }>>;
171
+ imageSurfaceTreatment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
172
+ kind: z.ZodLiteral<"none">;
173
+ }, z.core.$strict>, z.ZodObject<{
174
+ kind: z.ZodLiteral<"brand-scrim">;
175
+ token: z.ZodEnum<{
176
+ primary: "primary";
177
+ secondary: "secondary";
178
+ accent: "accent";
179
+ }>;
180
+ intensity: z.ZodOptional<z.ZodEnum<{
181
+ balanced: "balanced";
182
+ soft: "soft";
183
+ strong: "strong";
184
+ }>>;
185
+ }, z.core.$strict>, z.ZodObject<{
186
+ kind: z.ZodLiteral<"brand-wash">;
187
+ token: z.ZodEnum<{
188
+ primary: "primary";
189
+ secondary: "secondary";
190
+ accent: "accent";
191
+ }>;
192
+ intensity: z.ZodOptional<z.ZodEnum<{
193
+ balanced: "balanced";
194
+ soft: "soft";
195
+ strong: "strong";
196
+ }>>;
197
+ }, z.core.$strict>, z.ZodObject<{
198
+ kind: z.ZodLiteral<"neutral-scrim">;
199
+ intensity: z.ZodOptional<z.ZodEnum<{
200
+ balanced: "balanced";
201
+ soft: "soft";
202
+ strong: "strong";
203
+ }>>;
204
+ }, z.core.$strict>, z.ZodObject<{
205
+ kind: z.ZodLiteral<"neutral-wash">;
206
+ intensity: z.ZodOptional<z.ZodEnum<{
207
+ balanced: "balanced";
208
+ soft: "soft";
209
+ strong: "strong";
210
+ }>>;
211
+ }, z.core.$strict>, z.ZodObject<{
212
+ kind: z.ZodLiteral<"solid-panel">;
213
+ intensity: z.ZodOptional<z.ZodEnum<{
214
+ balanced: "balanced";
215
+ soft: "soft";
216
+ strong: "strong";
217
+ }>>;
218
+ }, z.core.$strict>], "kind">>;
219
+ imageSurfaceMotion: z.ZodOptional<z.ZodEnum<{
220
+ static: "static";
221
+ "fixed-frame": "fixed-frame";
222
+ }>>;
223
+ testimonialCardTreatment: z.ZodOptional<z.ZodEnum<{
224
+ default: "default";
225
+ "accent-quote": "accent-quote";
226
+ }>>;
165
227
  }, z.core.$strict>;
166
228
  export declare const styleAuthoritySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
167
229
  kind: z.ZodLiteral<"theme-v2">;
@@ -276,11 +338,73 @@ export declare const persistedPageDesignStateV1Schema: z.ZodObject<{
276
338
  high: "high";
277
339
  medium: "medium";
278
340
  }>;
341
+ sectionHeight: z.ZodOptional<z.ZodEnum<{
342
+ default: "default";
343
+ hero: "hero";
344
+ banner: "banner";
345
+ immersive: "immersive";
346
+ }>>;
279
347
  heroLegibility: z.ZodOptional<z.ZodEnum<{
280
348
  none: "none";
281
349
  "scrim-gradient": "scrim-gradient";
282
350
  "solid-panel": "solid-panel";
283
351
  }>>;
352
+ imageSurfaceTreatment: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
353
+ kind: z.ZodLiteral<"none">;
354
+ }, z.core.$strict>, z.ZodObject<{
355
+ kind: z.ZodLiteral<"brand-scrim">;
356
+ token: z.ZodEnum<{
357
+ primary: "primary";
358
+ secondary: "secondary";
359
+ accent: "accent";
360
+ }>;
361
+ intensity: z.ZodOptional<z.ZodEnum<{
362
+ balanced: "balanced";
363
+ soft: "soft";
364
+ strong: "strong";
365
+ }>>;
366
+ }, z.core.$strict>, z.ZodObject<{
367
+ kind: z.ZodLiteral<"brand-wash">;
368
+ token: z.ZodEnum<{
369
+ primary: "primary";
370
+ secondary: "secondary";
371
+ accent: "accent";
372
+ }>;
373
+ intensity: z.ZodOptional<z.ZodEnum<{
374
+ balanced: "balanced";
375
+ soft: "soft";
376
+ strong: "strong";
377
+ }>>;
378
+ }, z.core.$strict>, z.ZodObject<{
379
+ kind: z.ZodLiteral<"neutral-scrim">;
380
+ intensity: z.ZodOptional<z.ZodEnum<{
381
+ balanced: "balanced";
382
+ soft: "soft";
383
+ strong: "strong";
384
+ }>>;
385
+ }, z.core.$strict>, z.ZodObject<{
386
+ kind: z.ZodLiteral<"neutral-wash">;
387
+ intensity: z.ZodOptional<z.ZodEnum<{
388
+ balanced: "balanced";
389
+ soft: "soft";
390
+ strong: "strong";
391
+ }>>;
392
+ }, z.core.$strict>, z.ZodObject<{
393
+ kind: z.ZodLiteral<"solid-panel">;
394
+ intensity: z.ZodOptional<z.ZodEnum<{
395
+ balanced: "balanced";
396
+ soft: "soft";
397
+ strong: "strong";
398
+ }>>;
399
+ }, z.core.$strict>], "kind">>;
400
+ imageSurfaceMotion: z.ZodOptional<z.ZodEnum<{
401
+ static: "static";
402
+ "fixed-frame": "fixed-frame";
403
+ }>>;
404
+ testimonialCardTreatment: z.ZodOptional<z.ZodEnum<{
405
+ default: "default";
406
+ "accent-quote": "accent-quote";
407
+ }>>;
284
408
  }, z.core.$strict>>;
285
409
  styleAuthorities: z.ZodArray<z.ZodObject<{
286
410
  unit: z.ZodLiteral<"block-runtime-fields">;
@@ -26,7 +26,8 @@ export declare const generatedSiteStyleIdSchema: z.ZodPipe<z.ZodEnum<{
26
26
  "site-style:practical-services": "site-style:practical-services";
27
27
  "site-style:modern-wellness": "site-style:modern-wellness";
28
28
  "site-style:bold-launch": "site-style:bold-launch";
29
- }>, z.ZodTransform<SiteStyleId, "site-style:calm-studio" | "site-style:clear-professional" | "site-style:warm-editorial" | "site-style:bright-community" | "site-style:quiet-luxury" | "site-style:practical-services" | "site-style:modern-wellness" | "site-style:bold-launch">>;
29
+ "site-style:south-west-twerk-school": "site-style:south-west-twerk-school";
30
+ }>, z.ZodTransform<SiteStyleId, "site-style:calm-studio" | "site-style:clear-professional" | "site-style:warm-editorial" | "site-style:bright-community" | "site-style:quiet-luxury" | "site-style:practical-services" | "site-style:modern-wellness" | "site-style:bold-launch" | "site-style:south-west-twerk-school">>;
30
31
  export declare const generatedBlockDesignIntentSchema: z.ZodObject<{
31
32
  sectionSurface: z.ZodDiscriminatedUnion<[z.ZodObject<{
32
33
  source: z.ZodLiteral<"generated">;
@@ -163,7 +164,8 @@ export declare const generatedPageDesignIntentSchema: z.ZodObject<{
163
164
  "site-style:practical-services": "site-style:practical-services";
164
165
  "site-style:modern-wellness": "site-style:modern-wellness";
165
166
  "site-style:bold-launch": "site-style:bold-launch";
166
- }>, z.ZodTransform<SiteStyleId, "site-style:calm-studio" | "site-style:clear-professional" | "site-style:warm-editorial" | "site-style:bright-community" | "site-style:quiet-luxury" | "site-style:practical-services" | "site-style:modern-wellness" | "site-style:bold-launch">>;
167
+ "site-style:south-west-twerk-school": "site-style:south-west-twerk-school";
168
+ }>, z.ZodTransform<SiteStyleId, "site-style:calm-studio" | "site-style:clear-professional" | "site-style:warm-editorial" | "site-style:bright-community" | "site-style:quiet-luxury" | "site-style:practical-services" | "site-style:modern-wellness" | "site-style:bold-launch" | "site-style:south-west-twerk-school">>;
167
169
  blocks: z.ZodArray<z.ZodObject<{
168
170
  blockId: z.ZodString;
169
171
  blockKind: z.ZodString;
@@ -6,6 +6,7 @@ export * from './curatedSiteStyles';
6
6
  export * from './designState';
7
7
  export * from './generatedSchemas';
8
8
  export * from './generatedDesignPipeline';
9
+ export * from './lookResolution';
9
10
  export * from './pageDesignAuthority';
10
11
  export * from './pageDesignEditorErrors';
11
12
  export * from './pageDesignEditorModel';
@@ -0,0 +1,21 @@
1
+ import { type BlockAppearanceDesign, type BlockAppearanceOptionGroup, type BlockAppearancePreset } from './appearancePresets';
2
+ import type { BlockLayoutDesignProfile } from './blockFlow';
3
+ import type { CuratedSiteStyle } from './curatedSiteStyles';
4
+ import { type AppearancePresetId } from './types';
5
+ export type ResolvedBlockAppearancePreset = Readonly<{
6
+ id: AppearancePresetId;
7
+ label: string;
8
+ design: BlockAppearanceDesign;
9
+ optionGroups: readonly BlockAppearanceOptionGroup[];
10
+ }>;
11
+ export declare function blockAppearancePresetSupportsBlockKind(preset: BlockAppearancePreset, blockKind: string): boolean;
12
+ export declare function blockAppearancePresetSupportsLayoutProfile(preset: BlockAppearancePreset, profile: BlockLayoutDesignProfile | null, input?: Readonly<{
13
+ allowLayoutConstrainedPresetWithoutProfile?: boolean;
14
+ }>): boolean;
15
+ export declare function resolveBlockAppearancePreset(preset: BlockAppearancePreset, layoutProfile?: BlockLayoutDesignProfile | null): ResolvedBlockAppearancePreset;
16
+ export declare function getCompatibleBlockAppearancePresets(input: Readonly<{
17
+ blockKind: string;
18
+ layoutProfile?: BlockLayoutDesignProfile | null;
19
+ siteStyle?: CuratedSiteStyle | null;
20
+ allowLayoutConstrainedPresetWithoutProfile?: boolean;
21
+ }>): readonly ResolvedBlockAppearancePreset[];
@@ -1,4 +1,4 @@
1
- import { type BlockAppearanceDesign } from './appearancePresets';
1
+ import type { BlockAppearanceDesign, BlockAppearanceOptionGroup } from './appearancePresets';
2
2
  import type { BlockDesignMetadata, BlockLayoutDesignProfile } from './blockFlow';
3
3
  import { type PageDesignIntent } from './pageDesignIntent';
4
4
  import { type AppearancePresetId, type BoundaryOptionId, type DesignBlockId, type DesignBoundaryId, type LayoutVariantKey, type NonEmptyReadonlyArray, type PageFlowPresetId, type SiteStyleId, type SiteStyleSectionTransitionIntent } from './types';
@@ -46,6 +46,7 @@ export type PageDesignEditorLookOption = Readonly<{
46
46
  id: AppearancePresetId;
47
47
  label: string;
48
48
  design: BlockAppearanceDesign;
49
+ optionGroups: readonly BlockAppearanceOptionGroup[];
49
50
  }>;
50
51
  export type PageDesignEditorLayoutOption = Readonly<{
51
52
  id: LayoutVariantKey;
@@ -1,5 +1,5 @@
1
1
  import type { PageDesignEditorReadModel } from './pageDesignEditorModel';
2
- import type { Theme } from '../schema';
2
+ import { type Theme } from '../schema';
3
3
  import { type ButtonPersonalityId } from '../buttons/personalities';
4
4
  import { type PaletteOverrides, type PaletteVariantId } from '../palette/variants';
5
5
  import { type CuratedSiteStyle } from './curatedSiteStyles';
@@ -91,6 +91,7 @@ export type SiteStyleSurfaceIntent = 'base' | 'muted-band' | 'accent-band' | 'he
91
91
  export type SiteStyleItemSurfaceIntent = 'none' | 'default' | 'flat' | 'outlined' | 'raised' | 'inset' | 'editorial';
92
92
  export type SiteStyleSectionTransitionIntent = 'none' | 'soft-fade-short' | 'soft-fade-long' | 'wave-edge' | 'angle-edge';
93
93
  export type SiteStyleEmphasis = 'low' | 'medium' | 'high';
94
+ export type SectionHeightIntent = 'default' | 'banner' | 'hero' | 'immersive';
94
95
  export type FrameKind = 'plain' | 'panel' | 'flush-panel';
95
96
  export type PanelFrameTreatment = 'inset' | 'raised' | 'editorial';
96
97
  export type FlushFrameTreatment = 'media-panel';
@@ -162,6 +163,31 @@ export type AdvancedSurfaceIntent = SiteStyleSurfaceIntent | AdvancedDetachedDes
162
163
  export type MediaCompositionIntent = 'none' | 'supporting' | 'dominant';
163
164
  export type DecorativeCompositionIntent = 'none' | 'supporting' | 'feature';
164
165
  export type HeroLegibilityStrategy = 'none' | 'scrim-gradient' | 'solid-panel';
166
+ export type ImageSurfaceTreatmentToken = 'primary' | 'secondary' | 'accent';
167
+ export type ImageSurfaceTreatmentIntensity = 'soft' | 'balanced' | 'strong';
168
+ export type ImageSurfaceMotion = 'static' | 'fixed-frame';
169
+ export type ImageSurfaceTreatment = Readonly<{
170
+ kind: 'none';
171
+ }> | Readonly<{
172
+ kind: 'brand-scrim';
173
+ token: ImageSurfaceTreatmentToken;
174
+ intensity?: ImageSurfaceTreatmentIntensity;
175
+ }> | Readonly<{
176
+ kind: 'brand-wash';
177
+ token: ImageSurfaceTreatmentToken;
178
+ intensity?: ImageSurfaceTreatmentIntensity;
179
+ }> | Readonly<{
180
+ kind: 'neutral-scrim';
181
+ intensity?: ImageSurfaceTreatmentIntensity;
182
+ }> | Readonly<{
183
+ kind: 'neutral-wash';
184
+ intensity?: ImageSurfaceTreatmentIntensity;
185
+ }> | Readonly<{
186
+ kind: 'solid-panel';
187
+ intensity?: ImageSurfaceTreatmentIntensity;
188
+ }>;
189
+ export type ImageSurfaceTreatmentKind = ImageSurfaceTreatment['kind'];
190
+ export type TestimonialCardTreatment = 'default' | 'accent-quote';
165
191
  export type GeneratedMediaCompositionIntent = Extract<MediaCompositionIntent, 'none' | 'supporting' | 'dominant'>;
166
192
  export type UserMediaCompositionIntent = MediaCompositionIntent;
167
193
  export type AdvancedMediaCompositionIntent = MediaCompositionIntent | AdvancedDetachedDesignValue;
@@ -309,14 +335,22 @@ export type BlockDesignPlan<TBlockId extends string = DesignBlockId, TPurpose ex
309
335
  itemSurface: SiteStyleItemSurfaceIntent;
310
336
  transitionAfter: SiteStyleSectionTransitionIntent;
311
337
  emphasis: SiteStyleEmphasis;
338
+ sectionHeight?: SectionHeightIntent;
312
339
  heroLegibility?: HeroLegibilityStrategy;
340
+ imageSurfaceTreatment?: ImageSurfaceTreatment;
341
+ imageSurfaceMotion?: ImageSurfaceMotion;
342
+ testimonialCardTreatment?: TestimonialCardTreatment;
313
343
  }>;
314
344
  export type ResolvedBlockDesignPlan<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = Readonly<BlockDesignPlan<TBlockId, TPurpose> & {
315
345
  appliedSectionSurface: SiteStyleSurfaceIntent;
316
346
  appliedContentFrame: ContentFrameIntent;
317
347
  appliedTransitionAfter: SiteStyleSectionTransitionIntent;
318
348
  appliedItemSurface: SiteStyleItemSurfaceIntent;
349
+ appliedSectionHeight: SectionHeightIntent;
319
350
  appliedHeroLegibility: HeroLegibilityStrategy;
351
+ appliedImageSurfaceTreatment: ImageSurfaceTreatment;
352
+ appliedImageSurfaceMotion: ImageSurfaceMotion;
353
+ appliedTestimonialCardTreatment: TestimonialCardTreatment;
320
354
  }>;
321
355
  export type PageDesignState<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = Readonly<{
322
356
  schemaVersion: 1;
@@ -331,12 +365,20 @@ export type DesignedBlockDesignCapabilityInput = Readonly<{
331
365
  sectionSurfaces: 'supported' | 'unsupported';
332
366
  contentFrames: FrameCapability;
333
367
  itemSurfaces: 'supported' | 'unsupported';
368
+ sectionHeights?: NonEmptyReadonlyArray<SectionHeightIntent>;
369
+ imageSurfaceTreatments?: NonEmptyReadonlyArray<ImageSurfaceTreatmentKind>;
370
+ imageSurfaceMotions?: NonEmptyReadonlyArray<ImageSurfaceMotion>;
371
+ testimonialCardTreatments?: NonEmptyReadonlyArray<TestimonialCardTreatment>;
334
372
  }>;
335
373
  export type DesignedBlockDesignCapability = Readonly<{
336
374
  kind: 'designed';
337
375
  sectionSurfaces: 'supported' | 'unsupported';
338
376
  contentFrames: FrameCapability;
339
377
  itemSurfaces: 'supported' | 'unsupported';
378
+ sectionHeights: NonEmptyReadonlyArray<SectionHeightIntent>;
379
+ imageSurfaceTreatments: NonEmptyReadonlyArray<ImageSurfaceTreatmentKind>;
380
+ imageSurfaceMotions: NonEmptyReadonlyArray<ImageSurfaceMotion>;
381
+ testimonialCardTreatments: NonEmptyReadonlyArray<TestimonialCardTreatment>;
340
382
  }>;
341
383
  export type UnsupportedBlockDesignCapabilityReason = 'site-chrome' | 'transactional' | 'placeholder' | 'legacy-layout' | 'custom-runtime';
342
384
  export type NoBlockDesignCapability = Readonly<{
@@ -347,7 +389,7 @@ export type BlockDesignCapability = DesignedBlockDesignCapability | NoBlockDesig
347
389
  export type BlockDesignCapabilityMap = Readonly<Partial<Record<string, BlockDesignCapability>>>;
348
390
  export declare function defineBlockDesignCapability(capability: DesignedBlockDesignCapabilityInput): DesignedBlockDesignCapability;
349
391
  export declare function defineNoBlockDesignCapability(reason: UnsupportedBlockDesignCapabilityReason): NoBlockDesignCapability;
350
- export type DesignRepairAction = 'fallback-block-design' | 'fallback-section-surface' | 'fallback-content-frame' | 'fallback-item-surface' | 'remove-transition' | 'fallback-hero-legibility' | 'reduce-accent-density' | 'reduce-panel-density' | 'reduce-transition-mix' | 'reduce-primary-ctas' | 'reduce-media-density' | 'reduce-decorative-repetition';
392
+ export type DesignRepairAction = 'fallback-block-design' | 'fallback-section-surface' | 'fallback-content-frame' | 'fallback-item-surface' | 'fallback-section-height' | 'fallback-image-surface-treatment' | 'fallback-image-surface-motion' | 'fallback-testimonial-card-treatment' | 'remove-hero-legibility' | 'remove-transition' | 'fallback-hero-legibility' | 'reduce-accent-density' | 'reduce-panel-density' | 'reduce-transition-mix' | 'reduce-primary-ctas' | 'reduce-media-density' | 'reduce-decorative-repetition';
351
393
  export type UnsupportedSectionSurfaceIssue<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = Readonly<{
352
394
  kind: 'unsupported-section-surface';
353
395
  blockId: TBlockId;
@@ -381,19 +423,110 @@ export type UnsupportedItemSurfaceIssue<TBlockId extends string = DesignBlockId,
381
423
  severity: DesignIssueSeverity;
382
424
  allowedRepairActions: readonly ['fallback-item-surface'];
383
425
  }>;
426
+ export type UnsupportedSectionHeightIssue<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = Readonly<{
427
+ kind: 'unsupported-section-height';
428
+ blockId: TBlockId;
429
+ blockKind: string;
430
+ purpose: TPurpose;
431
+ requested: SectionHeightIntent;
432
+ fallback: 'default';
433
+ policy: DesignResolutionPolicy;
434
+ severity: DesignIssueSeverity;
435
+ allowedRepairActions: readonly ['fallback-section-height'];
436
+ }>;
437
+ export type UnsupportedImageSurfaceTreatmentIssue<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = Readonly<{
438
+ kind: 'unsupported-image-surface-treatment';
439
+ blockId: TBlockId;
440
+ blockKind: string;
441
+ purpose: TPurpose;
442
+ requested: ImageSurfaceTreatment;
443
+ fallback: Readonly<{
444
+ kind: 'none';
445
+ }>;
446
+ policy: DesignResolutionPolicy;
447
+ severity: DesignIssueSeverity;
448
+ allowedRepairActions: readonly ['fallback-image-surface-treatment'];
449
+ }>;
450
+ export type UnsupportedImageSurfaceMotionIssue<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = Readonly<{
451
+ kind: 'unsupported-image-surface-motion';
452
+ blockId: TBlockId;
453
+ blockKind: string;
454
+ purpose: TPurpose;
455
+ requested: ImageSurfaceMotion;
456
+ fallback: 'static';
457
+ policy: DesignResolutionPolicy;
458
+ severity: DesignIssueSeverity;
459
+ allowedRepairActions: readonly ['fallback-image-surface-motion'];
460
+ }>;
461
+ export type UnsupportedTestimonialCardTreatmentIssue<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = Readonly<{
462
+ kind: 'unsupported-testimonial-card-treatment';
463
+ blockId: TBlockId;
464
+ blockKind: string;
465
+ purpose: TPurpose;
466
+ requested: TestimonialCardTreatment;
467
+ fallback: 'default';
468
+ policy: DesignResolutionPolicy;
469
+ severity: DesignIssueSeverity;
470
+ allowedRepairActions: readonly ['fallback-testimonial-card-treatment'];
471
+ }>;
472
+ export type ImageSurfaceTreatmentWithoutImageSurfaceIssue<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = Readonly<{
473
+ kind: 'image-surface-treatment-without-image-surface';
474
+ blockId: TBlockId;
475
+ blockKind: string;
476
+ purpose: TPurpose;
477
+ requested: ImageSurfaceTreatment;
478
+ fallback: Readonly<{
479
+ kind: 'none';
480
+ }>;
481
+ policy: DesignResolutionPolicy;
482
+ severity: DesignIssueSeverity;
483
+ allowedRepairActions: readonly ['fallback-image-surface-treatment'];
484
+ }>;
485
+ export type ImageSurfaceMotionWithoutImageSurfaceIssue<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = Readonly<{
486
+ kind: 'image-surface-motion-without-image-surface';
487
+ blockId: TBlockId;
488
+ blockKind: string;
489
+ purpose: TPurpose;
490
+ requested: ImageSurfaceMotion;
491
+ fallback: 'static';
492
+ policy: DesignResolutionPolicy;
493
+ severity: DesignIssueSeverity;
494
+ allowedRepairActions: readonly ['fallback-image-surface-motion'];
495
+ }>;
496
+ export type HeroLegibilityOverriddenByImageSurfaceTreatmentIssue<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = Readonly<{
497
+ kind: 'hero-legibility-overridden-by-image-surface-treatment';
498
+ blockId: TBlockId;
499
+ blockKind: string;
500
+ purpose: TPurpose;
501
+ requested: HeroLegibilityStrategy;
502
+ fallback: 'none';
503
+ policy: DesignResolutionPolicy;
504
+ severity: DesignIssueSeverity;
505
+ allowedRepairActions: readonly ['remove-hero-legibility'];
506
+ }>;
384
507
  export type BlockDesignCapabilityRequest = Readonly<{
385
508
  sectionSurface: SiteStyleSurfaceIntent;
386
509
  contentFrame: ContentFrameIntent;
387
510
  itemSurface: SiteStyleItemSurfaceIntent;
388
511
  transitionAfter: SiteStyleSectionTransitionIntent;
512
+ sectionHeight?: SectionHeightIntent;
389
513
  heroLegibility?: HeroLegibilityStrategy;
514
+ imageSurfaceTreatment?: ImageSurfaceTreatment;
515
+ imageSurfaceMotion?: ImageSurfaceMotion;
516
+ testimonialCardTreatment?: TestimonialCardTreatment;
390
517
  }>;
391
518
  export type BlockDesignCapabilityFallback = Readonly<{
392
519
  sectionSurface: 'base';
393
520
  contentFrame: PlainFrameIntent;
394
521
  itemSurface: 'none';
395
522
  transitionAfter: 'none';
523
+ sectionHeight: 'default';
396
524
  heroLegibility: 'none';
525
+ imageSurfaceTreatment: Readonly<{
526
+ kind: 'none';
527
+ }>;
528
+ imageSurfaceMotion: 'static';
529
+ testimonialCardTreatment: 'default';
397
530
  }>;
398
531
  export type MissingBlockDesignCapabilityIssue<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = Readonly<{
399
532
  kind: 'missing-block-design-capability';
@@ -440,7 +573,7 @@ export type HeroImageWithoutLegibilityIssue<TBlockId extends string = DesignBloc
440
573
  severity: DesignIssueSeverity;
441
574
  allowedRepairActions: readonly ['fallback-hero-legibility'];
442
575
  }>;
443
- export type DesignResolutionIssue<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = UnsupportedSectionSurfaceIssue<TBlockId, TPurpose> | UnsupportedContentFrameIssue<TBlockId, TPurpose> | UnsupportedItemSurfaceIssue<TBlockId, TPurpose> | MissingBlockDesignCapabilityIssue<TBlockId, TPurpose> | UnsupportedBlockDesignCapabilityIssue<TBlockId, TPurpose> | RemovedTransitionForFlushFrameIssue<TBlockId, TPurpose> | HeroImageWithoutLegibilityIssue<TBlockId, TPurpose>;
576
+ export type DesignResolutionIssue<TBlockId extends string = DesignBlockId, TPurpose extends string = string> = UnsupportedSectionSurfaceIssue<TBlockId, TPurpose> | UnsupportedContentFrameIssue<TBlockId, TPurpose> | UnsupportedItemSurfaceIssue<TBlockId, TPurpose> | UnsupportedSectionHeightIssue<TBlockId, TPurpose> | UnsupportedImageSurfaceTreatmentIssue<TBlockId, TPurpose> | UnsupportedImageSurfaceMotionIssue<TBlockId, TPurpose> | UnsupportedTestimonialCardTreatmentIssue<TBlockId, TPurpose> | ImageSurfaceTreatmentWithoutImageSurfaceIssue<TBlockId, TPurpose> | ImageSurfaceMotionWithoutImageSurfaceIssue<TBlockId, TPurpose> | HeroLegibilityOverriddenByImageSurfaceTreatmentIssue<TBlockId, TPurpose> | MissingBlockDesignCapabilityIssue<TBlockId, TPurpose> | UnsupportedBlockDesignCapabilityIssue<TBlockId, TPurpose> | RemovedTransitionForFlushFrameIssue<TBlockId, TPurpose> | HeroImageWithoutLegibilityIssue<TBlockId, TPurpose>;
444
577
  export type DesignRepairResultForIssue<TIssue extends DesignResolutionIssue<string, string>> = {
445
578
  [TKind in TIssue['kind']]: Readonly<{
446
579
  kind: TKind extends 'removed-transition-for-flush-frame' ? 'repaired' : 'fallbackApplied';
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  import { type VariantProps } from "class-variance-authority";
3
3
  declare const badgeVariants: (props?: ({
4
- variant?: "success" | "default" | "warning" | "secondary" | "destructive" | "outline" | null | undefined;
4
+ variant?: "success" | "default" | "warning" | "secondary" | "outline" | "destructive" | null | undefined;
5
5
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
6
6
  export interface BadgeProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import { type VariantProps } from 'class-variance-authority';
2
2
  import * as React from 'react';
3
3
  declare const buttonVariants: (props?: ({
4
- variant?: "link" | "default" | "secondary" | "destructive" | "outline" | "ghost" | "onDark" | "onDarkOutline" | "heroGlass" | null | undefined;
4
+ variant?: "link" | "default" | "secondary" | "outline" | "ghost" | "destructive" | "onDark" | "onDarkOutline" | "heroGlass" | null | undefined;
5
5
  size?: "default" | "lg" | "sm" | "icon" | null | undefined;
6
6
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
7
  export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {