@ohhwells/bridge 0.1.76 → 0.1.77-next.232

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/index.d.cts CHANGED
@@ -20,7 +20,7 @@ declare function OhhwellsBridge(): react_jsx_runtime.JSX.Element;
20
20
  */
21
21
  declare const AI_TREE_SCHEMA_VERSIONS: readonly [1];
22
22
  type SectionScaffold = 'stacked' | 'split' | 'overlay';
23
- type AiBlockType = 'text' | 'button' | 'media' | 'media-list' | 'rating' | 'divider' | 'input' | 'section-header' | 'button-row' | 'card' | 'collection' | 'accordion' | 'form' | 'embed' | 'schedule-widget';
23
+ type AiBlockType = 'text' | 'button' | 'media' | 'media-list' | 'rating' | 'divider' | 'input' | 'section-header' | 'button-row' | 'card' | 'collection' | 'accordion' | 'form' | 'embed' | 'schedule-widget' | 'group';
24
24
  interface AiBlockNode {
25
25
  type: AiBlockType;
26
26
  span: number;
@@ -44,6 +44,10 @@ interface AiSectionSettings {
44
44
  verticalPosition?: 'top' | 'center';
45
45
  overlayIntensity?: 'low' | 'medium' | 'high';
46
46
  backgroundMedia?: string;
47
+ /** Tinted band behind the section, resolved against the brand tokens. */
48
+ sectionBackground?: 'default' | 'surface' | 'accent' | 'accent-soft';
49
+ /** Vertical distribution of column content (stacked/split scaffolds). */
50
+ textDistribution?: 'top' | 'center' | 'space-between';
47
51
  }
48
52
  interface AiLayoutTree {
49
53
  schemaVersion: number;
@@ -135,6 +139,8 @@ declare function isRenderableTree(value: unknown): value is AiLayoutTree;
135
139
  interface AiTreeRendererProps {
136
140
  tree: AiLayoutTree;
137
141
  brand?: AiBrandKit;
142
+ /** The host template's button corner radius (e.g. "0px", "8px"); a form's submit adopts it. */
143
+ buttonRadius?: string | null;
138
144
  /** Resolves a media ref to a URL; null renders a placeholder. */
139
145
  resolveMedia?: (ref: string) => string | null;
140
146
  /**
@@ -144,7 +150,7 @@ interface AiTreeRendererProps {
144
150
  */
145
151
  editKeyPrefix?: string;
146
152
  }
147
- declare function AiTreeRenderer({ tree, brand, resolveMedia, editKeyPrefix }: AiTreeRendererProps): react_jsx_runtime.JSX.Element | null;
153
+ declare function AiTreeRenderer({ tree, brand, buttonRadius, resolveMedia, editKeyPrefix, }: AiTreeRendererProps): react_jsx_runtime.JSX.Element | null;
148
154
 
149
155
  type LinkPage = {
150
156
  path: string;
@@ -249,7 +255,7 @@ declare function filterAvailablePages(pages: LinkPage[], existingTargets: string
249
255
 
250
256
  declare const toggleVariants: (props?: ({
251
257
  variant?: "default" | "outline" | null | undefined;
252
- size?: "default" | "sm" | "lg" | null | undefined;
258
+ size?: "default" | "lg" | "sm" | null | undefined;
253
259
  } & class_variance_authority_types.ClassProp) | undefined) => string;
254
260
  declare function Toggle({ className, variant, size, ...props }: React.ComponentProps<typeof Toggle$1.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
255
261
 
@@ -267,7 +273,7 @@ declare function SchedulingWidget({ notifyOnConnect, initialScheduleId, insertAf
267
273
  notifyOnConnect?: boolean;
268
274
  initialScheduleId?: string | null;
269
275
  insertAfter?: string;
270
- }): react_jsx_runtime.JSX.Element | null;
276
+ }): react_jsx_runtime.JSX.Element;
271
277
 
272
278
  declare const DragHandle: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & React.RefAttributes<HTMLButtonElement>>;
273
279
 
@@ -413,6 +419,16 @@ declare function TooltipContent({ className, sideOffset, side, children, hideArr
413
419
  hideArrow?: boolean;
414
420
  }): react_jsx_runtime.JSX.Element;
415
421
 
422
+ interface EmptySectionProps {
423
+ title: string;
424
+ homeHref?: string;
425
+ /** data-ohw-key values for the editable text nodes — omit a key to leave that node non-editable. */
426
+ eyebrowKey?: string;
427
+ titleKey?: string;
428
+ subtitleKey?: string;
429
+ }
430
+ declare function EmptySection({ title, homeHref, eyebrowKey, titleKey, subtitleKey }: EmptySectionProps): react_jsx_runtime.JSX.Element;
431
+
416
432
  declare function isEditSessionActive(): boolean;
417
433
 
418
434
  type CarouselSlide = {
@@ -436,4 +452,4 @@ declare function useOhwCarousel(key: string, initial: CarouselSlide[]): {
436
452
  bind: Record<string, string>;
437
453
  };
438
454
 
439
- export { AI_DEFAULT_BRAND, AI_TREE_SCHEMA_VERSIONS, AI_TREE_TOKENS, type AiBlockNode, type AiBrandKit, type AiLayoutTree, AiTreeRenderer, type AiTreeRendererProps, type CarouselSlide, CustomToolbar, CustomToolbarButton, CustomToolbarDivider, DragHandle, DropIndicator, type DropIndicatorProps, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, ItemActionToolbar, type ItemActionToolbarProps, ItemInteractionLayer, type ItemInteractionLayerProps, type ItemInteractionState, LinkEditorPanel, type LinkModalMode, type LinkModalProps, type LinkPage, LinkPopover, type LinkSection, OhhwellsBridge, SchedulingWidget, type SectionScaffold, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, buildTarget, dropIndicatorVariants, filterAvailablePages, getEditModeInitialState, isEditSessionActive, isRenderableTree, isValidUrl, parseTarget, toggleVariants, useOhwCarousel, validateUrlInput };
455
+ export { AI_DEFAULT_BRAND, AI_TREE_SCHEMA_VERSIONS, AI_TREE_TOKENS, type AiBlockNode, type AiBrandKit, type AiLayoutTree, AiTreeRenderer, type AiTreeRendererProps, type CarouselSlide, CustomToolbar, CustomToolbarButton, CustomToolbarDivider, DragHandle, DropIndicator, type DropIndicatorProps, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, EmptySection, type EmptySectionProps, ItemActionToolbar, type ItemActionToolbarProps, ItemInteractionLayer, type ItemInteractionLayerProps, type ItemInteractionState, LinkEditorPanel, type LinkModalMode, type LinkModalProps, type LinkPage, LinkPopover, type LinkSection, OhhwellsBridge, SchedulingWidget, type SectionScaffold, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, buildTarget, dropIndicatorVariants, filterAvailablePages, getEditModeInitialState, isEditSessionActive, isRenderableTree, isValidUrl, parseTarget, toggleVariants, useOhwCarousel, validateUrlInput };
package/dist/index.d.ts CHANGED
@@ -20,7 +20,7 @@ declare function OhhwellsBridge(): react_jsx_runtime.JSX.Element;
20
20
  */
21
21
  declare const AI_TREE_SCHEMA_VERSIONS: readonly [1];
22
22
  type SectionScaffold = 'stacked' | 'split' | 'overlay';
23
- type AiBlockType = 'text' | 'button' | 'media' | 'media-list' | 'rating' | 'divider' | 'input' | 'section-header' | 'button-row' | 'card' | 'collection' | 'accordion' | 'form' | 'embed' | 'schedule-widget';
23
+ type AiBlockType = 'text' | 'button' | 'media' | 'media-list' | 'rating' | 'divider' | 'input' | 'section-header' | 'button-row' | 'card' | 'collection' | 'accordion' | 'form' | 'embed' | 'schedule-widget' | 'group';
24
24
  interface AiBlockNode {
25
25
  type: AiBlockType;
26
26
  span: number;
@@ -44,6 +44,10 @@ interface AiSectionSettings {
44
44
  verticalPosition?: 'top' | 'center';
45
45
  overlayIntensity?: 'low' | 'medium' | 'high';
46
46
  backgroundMedia?: string;
47
+ /** Tinted band behind the section, resolved against the brand tokens. */
48
+ sectionBackground?: 'default' | 'surface' | 'accent' | 'accent-soft';
49
+ /** Vertical distribution of column content (stacked/split scaffolds). */
50
+ textDistribution?: 'top' | 'center' | 'space-between';
47
51
  }
48
52
  interface AiLayoutTree {
49
53
  schemaVersion: number;
@@ -135,6 +139,8 @@ declare function isRenderableTree(value: unknown): value is AiLayoutTree;
135
139
  interface AiTreeRendererProps {
136
140
  tree: AiLayoutTree;
137
141
  brand?: AiBrandKit;
142
+ /** The host template's button corner radius (e.g. "0px", "8px"); a form's submit adopts it. */
143
+ buttonRadius?: string | null;
138
144
  /** Resolves a media ref to a URL; null renders a placeholder. */
139
145
  resolveMedia?: (ref: string) => string | null;
140
146
  /**
@@ -144,7 +150,7 @@ interface AiTreeRendererProps {
144
150
  */
145
151
  editKeyPrefix?: string;
146
152
  }
147
- declare function AiTreeRenderer({ tree, brand, resolveMedia, editKeyPrefix }: AiTreeRendererProps): react_jsx_runtime.JSX.Element | null;
153
+ declare function AiTreeRenderer({ tree, brand, buttonRadius, resolveMedia, editKeyPrefix, }: AiTreeRendererProps): react_jsx_runtime.JSX.Element | null;
148
154
 
149
155
  type LinkPage = {
150
156
  path: string;
@@ -249,7 +255,7 @@ declare function filterAvailablePages(pages: LinkPage[], existingTargets: string
249
255
 
250
256
  declare const toggleVariants: (props?: ({
251
257
  variant?: "default" | "outline" | null | undefined;
252
- size?: "default" | "sm" | "lg" | null | undefined;
258
+ size?: "default" | "lg" | "sm" | null | undefined;
253
259
  } & class_variance_authority_types.ClassProp) | undefined) => string;
254
260
  declare function Toggle({ className, variant, size, ...props }: React.ComponentProps<typeof Toggle$1.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
255
261
 
@@ -267,7 +273,7 @@ declare function SchedulingWidget({ notifyOnConnect, initialScheduleId, insertAf
267
273
  notifyOnConnect?: boolean;
268
274
  initialScheduleId?: string | null;
269
275
  insertAfter?: string;
270
- }): react_jsx_runtime.JSX.Element | null;
276
+ }): react_jsx_runtime.JSX.Element;
271
277
 
272
278
  declare const DragHandle: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & React.RefAttributes<HTMLButtonElement>>;
273
279
 
@@ -413,6 +419,16 @@ declare function TooltipContent({ className, sideOffset, side, children, hideArr
413
419
  hideArrow?: boolean;
414
420
  }): react_jsx_runtime.JSX.Element;
415
421
 
422
+ interface EmptySectionProps {
423
+ title: string;
424
+ homeHref?: string;
425
+ /** data-ohw-key values for the editable text nodes — omit a key to leave that node non-editable. */
426
+ eyebrowKey?: string;
427
+ titleKey?: string;
428
+ subtitleKey?: string;
429
+ }
430
+ declare function EmptySection({ title, homeHref, eyebrowKey, titleKey, subtitleKey }: EmptySectionProps): react_jsx_runtime.JSX.Element;
431
+
416
432
  declare function isEditSessionActive(): boolean;
417
433
 
418
434
  type CarouselSlide = {
@@ -436,4 +452,4 @@ declare function useOhwCarousel(key: string, initial: CarouselSlide[]): {
436
452
  bind: Record<string, string>;
437
453
  };
438
454
 
439
- export { AI_DEFAULT_BRAND, AI_TREE_SCHEMA_VERSIONS, AI_TREE_TOKENS, type AiBlockNode, type AiBrandKit, type AiLayoutTree, AiTreeRenderer, type AiTreeRendererProps, type CarouselSlide, CustomToolbar, CustomToolbarButton, CustomToolbarDivider, DragHandle, DropIndicator, type DropIndicatorProps, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, ItemActionToolbar, type ItemActionToolbarProps, ItemInteractionLayer, type ItemInteractionLayerProps, type ItemInteractionState, LinkEditorPanel, type LinkModalMode, type LinkModalProps, type LinkPage, LinkPopover, type LinkSection, OhhwellsBridge, SchedulingWidget, type SectionScaffold, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, buildTarget, dropIndicatorVariants, filterAvailablePages, getEditModeInitialState, isEditSessionActive, isRenderableTree, isValidUrl, parseTarget, toggleVariants, useOhwCarousel, validateUrlInput };
455
+ export { AI_DEFAULT_BRAND, AI_TREE_SCHEMA_VERSIONS, AI_TREE_TOKENS, type AiBlockNode, type AiBrandKit, type AiLayoutTree, AiTreeRenderer, type AiTreeRendererProps, type CarouselSlide, CustomToolbar, CustomToolbarButton, CustomToolbarDivider, DragHandle, DropIndicator, type DropIndicatorProps, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, EmptySection, type EmptySectionProps, ItemActionToolbar, type ItemActionToolbarProps, ItemInteractionLayer, type ItemInteractionLayerProps, type ItemInteractionState, LinkEditorPanel, type LinkModalMode, type LinkModalProps, type LinkPage, LinkPopover, type LinkSection, OhhwellsBridge, SchedulingWidget, type SectionScaffold, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, buildTarget, dropIndicatorVariants, filterAvailablePages, getEditModeInitialState, isEditSessionActive, isRenderableTree, isValidUrl, parseTarget, toggleVariants, useOhwCarousel, validateUrlInput };