@ohhwells/bridge 0.1.43 → 0.1.45

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
@@ -152,8 +152,14 @@ declare const DropIndicator: React.ForwardRefExoticComponent<React.HTMLAttribute
152
152
  state?: "default" | "hover" | "dragIdle" | "dragActive" | null | undefined;
153
153
  } & class_variance_authority_types.ClassProp) | undefined) => string> & React.RefAttributes<HTMLDivElement>>;
154
154
 
155
+ /**
156
+ * Custom/Toolbar shell (Figma 7320:11058).
157
+ * One pill, two fills — text formatting or item actions. No hardcoded colors.
158
+ */
155
159
  declare const CustomToolbar: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
160
+ /** Separators belong on the text-format fill only — not item-actions. */
156
161
  declare function CustomToolbarDivider({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>): react_jsx_runtime.JSX.Element;
162
+ /** Figma Toggle: 28×28, radius calc(var(--radius)-2px)=6px, icon 16. */
157
163
  declare const CustomToolbarButton: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & {
158
164
  active?: boolean;
159
165
  } & React.RefAttributes<HTMLButtonElement>>;
@@ -165,11 +171,15 @@ type ItemActionToolbarProps = {
165
171
  editLinkDisabled?: boolean;
166
172
  addItemDisabled?: boolean;
167
173
  moreDisabled?: boolean;
174
+ /** Hide Add item — CTA buttons only show Edit link (prototype). */
175
+ showAddItem?: boolean;
176
+ /** Hide More — CTA buttons only show Edit link (prototype). */
177
+ showMore?: boolean;
168
178
  /** Tooltip placement relative to each icon — Figma uses bottom. */
169
179
  tooltipSide?: 'top' | 'bottom' | 'left' | 'right';
170
180
  };
171
- /** Item-action fill for Custom/Toolbar — Edit link / Add item / More. */
172
- declare function ItemActionToolbar({ onEditLink, onAddItem, onMore, editLinkDisabled, addItemDisabled, moreDisabled, tooltipSide, }: ItemActionToolbarProps): react_jsx_runtime.JSX.Element;
181
+ /** Item-action fill for Custom/Toolbar — Edit link / Add item / More (no separators). */
182
+ declare function ItemActionToolbar({ onEditLink, onAddItem, onMore, editLinkDisabled, addItemDisabled, moreDisabled, showAddItem, showMore, tooltipSide, }: ItemActionToolbarProps): react_jsx_runtime.JSX.Element;
173
183
 
174
184
  type ItemInteractionState = 'default' | 'hover' | 'sibling-hint' | 'active-top' | 'active-bottom' | 'dragging';
175
185
  type ItemInteractionLayerProps = {
@@ -183,15 +193,31 @@ type ItemInteractionLayerProps = {
183
193
  dragHandleLabel?: string;
184
194
  onDragHandleDragStart?: (e: React.DragEvent<HTMLButtonElement>) => void;
185
195
  onDragHandleDragEnd?: (e: React.DragEvent<HTMLButtonElement>) => void;
196
+ /** Press on the item chrome (not handle/toolbar) — starts press-to-drag. */
197
+ onItemPointerDown?: (e: React.PointerEvent<HTMLDivElement>) => void;
198
+ /** Click on chrome without a drag — typically enter text edit. */
199
+ onItemClick?: (clientX: number, clientY: number) => void;
200
+ /**
201
+ * Full-bleed press-drag surface over the selection.
202
+ * Disable for footer column frames so child links keep grab cursor / hover.
203
+ */
204
+ itemDragSurface?: boolean;
205
+ /** Gap between element and chrome border — Figma inset is 4px. */
186
206
  chromeGap?: number;
187
207
  className?: string;
188
208
  };
189
- declare function ItemInteractionLayer({ rect, state, elRef, toolbar, showHandle, dragDisabled, dragHandleLabel, onDragHandleDragStart, onDragHandleDragEnd, chromeGap, className, }: ItemInteractionLayerProps): react_jsx_runtime.JSX.Element | null;
209
+ declare function ItemInteractionLayer({ rect, state, elRef, toolbar, showHandle, dragDisabled, dragHandleLabel, onDragHandleDragStart, onDragHandleDragEnd, onItemPointerDown, onItemClick, itemDragSurface, chromeGap, className, }: ItemInteractionLayerProps): react_jsx_runtime.JSX.Element | null;
190
210
 
191
211
  declare function TooltipProvider({ delayDuration, ...props }: React.ComponentProps<typeof Tooltip$1.Provider>): react_jsx_runtime.JSX.Element;
192
212
  declare function Tooltip({ ...props }: React.ComponentProps<typeof Tooltip$1.Root>): react_jsx_runtime.JSX.Element;
193
213
  declare function TooltipTrigger({ ...props }: React.ComponentProps<typeof Tooltip$1.Trigger>): react_jsx_runtime.JSX.Element;
194
- declare function TooltipContent({ className, sideOffset, side, children, ...props }: React.ComponentProps<typeof Tooltip$1.Content>): react_jsx_runtime.JSX.Element;
214
+ /**
215
+ * Tooltip content — CSS caret (not Radix Arrow) so `sideOffset` is the true
216
+ * trigger↔tooltip gap. Default 6px matches item-action toolbar AC.
217
+ */
218
+ declare function TooltipContent({ className, sideOffset, side, children, hideArrow, ...props }: React.ComponentProps<typeof Tooltip$1.Content> & {
219
+ hideArrow?: boolean;
220
+ }): react_jsx_runtime.JSX.Element;
195
221
 
196
222
  declare function isEditSessionActive(): boolean;
197
223
 
package/dist/index.d.ts CHANGED
@@ -152,8 +152,14 @@ declare const DropIndicator: React.ForwardRefExoticComponent<React.HTMLAttribute
152
152
  state?: "default" | "hover" | "dragIdle" | "dragActive" | null | undefined;
153
153
  } & class_variance_authority_types.ClassProp) | undefined) => string> & React.RefAttributes<HTMLDivElement>>;
154
154
 
155
+ /**
156
+ * Custom/Toolbar shell (Figma 7320:11058).
157
+ * One pill, two fills — text formatting or item actions. No hardcoded colors.
158
+ */
155
159
  declare const CustomToolbar: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
160
+ /** Separators belong on the text-format fill only — not item-actions. */
156
161
  declare function CustomToolbarDivider({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>): react_jsx_runtime.JSX.Element;
162
+ /** Figma Toggle: 28×28, radius calc(var(--radius)-2px)=6px, icon 16. */
157
163
  declare const CustomToolbarButton: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & {
158
164
  active?: boolean;
159
165
  } & React.RefAttributes<HTMLButtonElement>>;
@@ -165,11 +171,15 @@ type ItemActionToolbarProps = {
165
171
  editLinkDisabled?: boolean;
166
172
  addItemDisabled?: boolean;
167
173
  moreDisabled?: boolean;
174
+ /** Hide Add item — CTA buttons only show Edit link (prototype). */
175
+ showAddItem?: boolean;
176
+ /** Hide More — CTA buttons only show Edit link (prototype). */
177
+ showMore?: boolean;
168
178
  /** Tooltip placement relative to each icon — Figma uses bottom. */
169
179
  tooltipSide?: 'top' | 'bottom' | 'left' | 'right';
170
180
  };
171
- /** Item-action fill for Custom/Toolbar — Edit link / Add item / More. */
172
- declare function ItemActionToolbar({ onEditLink, onAddItem, onMore, editLinkDisabled, addItemDisabled, moreDisabled, tooltipSide, }: ItemActionToolbarProps): react_jsx_runtime.JSX.Element;
181
+ /** Item-action fill for Custom/Toolbar — Edit link / Add item / More (no separators). */
182
+ declare function ItemActionToolbar({ onEditLink, onAddItem, onMore, editLinkDisabled, addItemDisabled, moreDisabled, showAddItem, showMore, tooltipSide, }: ItemActionToolbarProps): react_jsx_runtime.JSX.Element;
173
183
 
174
184
  type ItemInteractionState = 'default' | 'hover' | 'sibling-hint' | 'active-top' | 'active-bottom' | 'dragging';
175
185
  type ItemInteractionLayerProps = {
@@ -183,15 +193,31 @@ type ItemInteractionLayerProps = {
183
193
  dragHandleLabel?: string;
184
194
  onDragHandleDragStart?: (e: React.DragEvent<HTMLButtonElement>) => void;
185
195
  onDragHandleDragEnd?: (e: React.DragEvent<HTMLButtonElement>) => void;
196
+ /** Press on the item chrome (not handle/toolbar) — starts press-to-drag. */
197
+ onItemPointerDown?: (e: React.PointerEvent<HTMLDivElement>) => void;
198
+ /** Click on chrome without a drag — typically enter text edit. */
199
+ onItemClick?: (clientX: number, clientY: number) => void;
200
+ /**
201
+ * Full-bleed press-drag surface over the selection.
202
+ * Disable for footer column frames so child links keep grab cursor / hover.
203
+ */
204
+ itemDragSurface?: boolean;
205
+ /** Gap between element and chrome border — Figma inset is 4px. */
186
206
  chromeGap?: number;
187
207
  className?: string;
188
208
  };
189
- declare function ItemInteractionLayer({ rect, state, elRef, toolbar, showHandle, dragDisabled, dragHandleLabel, onDragHandleDragStart, onDragHandleDragEnd, chromeGap, className, }: ItemInteractionLayerProps): react_jsx_runtime.JSX.Element | null;
209
+ declare function ItemInteractionLayer({ rect, state, elRef, toolbar, showHandle, dragDisabled, dragHandleLabel, onDragHandleDragStart, onDragHandleDragEnd, onItemPointerDown, onItemClick, itemDragSurface, chromeGap, className, }: ItemInteractionLayerProps): react_jsx_runtime.JSX.Element | null;
190
210
 
191
211
  declare function TooltipProvider({ delayDuration, ...props }: React.ComponentProps<typeof Tooltip$1.Provider>): react_jsx_runtime.JSX.Element;
192
212
  declare function Tooltip({ ...props }: React.ComponentProps<typeof Tooltip$1.Root>): react_jsx_runtime.JSX.Element;
193
213
  declare function TooltipTrigger({ ...props }: React.ComponentProps<typeof Tooltip$1.Trigger>): react_jsx_runtime.JSX.Element;
194
- declare function TooltipContent({ className, sideOffset, side, children, ...props }: React.ComponentProps<typeof Tooltip$1.Content>): react_jsx_runtime.JSX.Element;
214
+ /**
215
+ * Tooltip content — CSS caret (not Radix Arrow) so `sideOffset` is the true
216
+ * trigger↔tooltip gap. Default 6px matches item-action toolbar AC.
217
+ */
218
+ declare function TooltipContent({ className, sideOffset, side, children, hideArrow, ...props }: React.ComponentProps<typeof Tooltip$1.Content> & {
219
+ hideArrow?: boolean;
220
+ }): react_jsx_runtime.JSX.Element;
195
221
 
196
222
  declare function isEditSessionActive(): boolean;
197
223