react-grab 0.1.15 → 0.1.17

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.
@@ -1 +1 @@
1
- 'use strict';var chunkEFUDUWZJ_cjs=require('../chunk-EFUDUWZJ.cjs');Object.defineProperty(exports,"DEFAULT_THEME",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.j}});Object.defineProperty(exports,"copyContent",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.d}});Object.defineProperty(exports,"formatElementInfo",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.c}});Object.defineProperty(exports,"generateSnippet",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.e}});Object.defineProperty(exports,"getStack",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.b}});Object.defineProperty(exports,"init",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.o}});Object.defineProperty(exports,"isInstrumentationActive",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.a}});
1
+ 'use strict';var chunkILQ5JMGX_cjs=require('../chunk-ILQ5JMGX.cjs');Object.defineProperty(exports,"DEFAULT_THEME",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.j}});Object.defineProperty(exports,"copyContent",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.d}});Object.defineProperty(exports,"formatElementInfo",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.c}});Object.defineProperty(exports,"generateSnippet",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.e}});Object.defineProperty(exports,"getStack",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.b}});Object.defineProperty(exports,"init",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.m}});Object.defineProperty(exports,"isInstrumentationActive",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.a}});
@@ -1,3 +1,3 @@
1
- export { v as ActionContext, q as AgentCompleteResult, A as AgentContext, p as AgentOptions, n as AgentProvider, m as AgentSession, o as AgentSessionStorage, t as ContextMenuAction, D as DEFAULT_THEME, O as Options, e as OverlayBounds, P as Plugin, x as PluginConfig, y as PluginHooks, R as ReactGrabAPI, z as ReactGrabRendererProps, r as SettableOptions, S as SourceInfo, B as copyContent, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from '../index-BR6gp9du.cjs';
1
+ export { x as ActionContext, q as AgentCompleteResult, A as AgentContext, p as AgentOptions, n as AgentProvider, m as AgentSession, o as AgentSessionStorage, t as ContextMenuAction, D as DEFAULT_THEME, O as Options, e as OverlayBounds, P as Plugin, z as PluginConfig, B as PluginHooks, R as ReactGrabAPI, F as ReactGrabRendererProps, r as SettableOptions, S as SourceInfo, H as copyContent, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from '../index-BCkTVQa8.cjs';
2
2
  export { isInstrumentationActive } from 'bippy';
3
3
  import 'bippy/source';
@@ -1,3 +1,3 @@
1
- export { v as ActionContext, q as AgentCompleteResult, A as AgentContext, p as AgentOptions, n as AgentProvider, m as AgentSession, o as AgentSessionStorage, t as ContextMenuAction, D as DEFAULT_THEME, O as Options, e as OverlayBounds, P as Plugin, x as PluginConfig, y as PluginHooks, R as ReactGrabAPI, z as ReactGrabRendererProps, r as SettableOptions, S as SourceInfo, B as copyContent, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from '../index-BR6gp9du.js';
1
+ export { x as ActionContext, q as AgentCompleteResult, A as AgentContext, p as AgentOptions, n as AgentProvider, m as AgentSession, o as AgentSessionStorage, t as ContextMenuAction, D as DEFAULT_THEME, O as Options, e as OverlayBounds, P as Plugin, z as PluginConfig, B as PluginHooks, R as ReactGrabAPI, F as ReactGrabRendererProps, r as SettableOptions, S as SourceInfo, H as copyContent, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from '../index-BCkTVQa8.js';
2
2
  export { isInstrumentationActive } from 'bippy';
3
3
  import 'bippy/source';
@@ -1 +1 @@
1
- export{j as DEFAULT_THEME,d as copyContent,c as formatElementInfo,e as generateSnippet,b as getStack,o as init,a as isInstrumentationActive}from'../chunk-CRY4UGGA.js';
1
+ export{j as DEFAULT_THEME,d as copyContent,c as formatElementInfo,e as generateSnippet,b as getStack,m as init,a as isInstrumentationActive}from'../chunk-WBYGVXEQ.js';
@@ -212,6 +212,7 @@ interface ContextMenuActionContext extends ActionContext {
212
212
  interface ContextMenuAction {
213
213
  id: string;
214
214
  label: string;
215
+ target?: "context-menu";
215
216
  shortcut?: string;
216
217
  enabled?: boolean | ((context: ActionContext) => boolean);
217
218
  onAction: (context: ContextMenuActionContext) => void | Promise<void>;
@@ -236,8 +237,9 @@ interface ScreenshotBounds {
236
237
  interface PluginHooks {
237
238
  onActivate?: () => void;
238
239
  onDeactivate?: () => void;
240
+ cancelPendingToolbarActions?: () => void;
239
241
  onElementHover?: (element: Element) => void;
240
- onElementSelect?: (element: Element) => void;
242
+ onElementSelect?: (element: Element) => boolean | void | Promise<boolean>;
241
243
  onDragStart?: (startX: number, startY: number) => void;
242
244
  onDragEnd?: (elements: Element[], bounds: DragRect) => void;
243
245
  onBeforeCopy?: (elements: Element[]) => void | Promise<void>;
@@ -264,10 +266,20 @@ interface PluginHooks {
264
266
  transformOpenFileUrl?: (url: string, filePath: string, lineNumber?: number) => string;
265
267
  transformSnippet?: (snippet: string, element: Element) => string | Promise<string>;
266
268
  }
269
+ interface ToolbarMenuAction {
270
+ id: string;
271
+ label: string;
272
+ shortcut?: string;
273
+ target: "toolbar";
274
+ enabled?: boolean | (() => boolean);
275
+ isActive?: () => boolean;
276
+ onAction: () => void | Promise<void>;
277
+ }
278
+ type PluginAction = ContextMenuAction | ToolbarMenuAction;
267
279
  interface PluginConfig {
268
280
  theme?: DeepPartial<Theme>;
269
281
  options?: SettableOptions;
270
- actions?: ContextMenuAction[];
282
+ actions?: PluginAction[];
271
283
  hooks?: PluginHooks;
272
284
  cleanup?: () => void;
273
285
  }
@@ -275,9 +287,9 @@ interface Plugin {
275
287
  name: string;
276
288
  theme?: DeepPartial<Theme>;
277
289
  options?: SettableOptions;
278
- actions?: ContextMenuAction[];
290
+ actions?: PluginAction[];
279
291
  hooks?: PluginHooks;
280
- setup?: (api: ReactGrabAPI) => PluginConfig | void;
292
+ setup?: (api: ReactGrabAPI, hooks: ActionContextHooks) => PluginConfig | void;
281
293
  }
282
294
  interface Options {
283
295
  enabled?: boolean;
@@ -318,6 +330,7 @@ interface ReactGrabAPI {
318
330
  activate: () => void;
319
331
  deactivate: () => void;
320
332
  toggle: () => void;
333
+ comment: () => void;
321
334
  isActive: () => boolean;
322
335
  isEnabled: () => boolean;
323
336
  setEnabled: (enabled: boolean) => void;
@@ -349,6 +362,7 @@ interface SelectionLabelInstance {
349
362
  boundsMultiple?: OverlayBounds[];
350
363
  tagName: string;
351
364
  componentName?: string;
365
+ elementsCount?: number;
352
366
  status: SelectionLabelStatus;
353
367
  statusText?: string;
354
368
  isPromptMode?: boolean;
@@ -368,6 +382,9 @@ interface HistoryItem {
368
382
  elementName: string;
369
383
  tagName: string;
370
384
  componentName?: string;
385
+ elementsCount?: number;
386
+ previewBounds?: OverlayBounds[];
387
+ elementSelectors?: string[];
371
388
  isComment: boolean;
372
389
  commentText?: string;
373
390
  timestamp: number;
@@ -428,9 +445,7 @@ interface ReactGrabRendererProps {
428
445
  theme?: Required<Theme>;
429
446
  toolbarVisible?: boolean;
430
447
  isActive?: boolean;
431
- isCommentMode?: boolean;
432
448
  onToggleActive?: () => void;
433
- onComment?: () => void;
434
449
  enabled?: boolean;
435
450
  onToggleEnabled?: () => void;
436
451
  shakeCount?: number;
@@ -447,16 +462,20 @@ interface ReactGrabRendererProps {
447
462
  contextMenuComponentName?: string;
448
463
  contextMenuHasFilePath?: boolean;
449
464
  actions?: ContextMenuAction[];
465
+ toolbarActions?: ToolbarMenuAction[];
450
466
  actionContext?: ActionContext;
451
467
  onContextMenuDismiss?: () => void;
452
468
  onContextMenuHide?: () => void;
453
469
  historyItems?: HistoryItem[];
454
470
  historyDisconnectedItemIds?: Set<string>;
455
471
  historyItemCount?: number;
472
+ clockFlashTrigger?: number;
456
473
  hasUnreadHistoryItems?: boolean;
457
474
  historyDropdownPosition?: DropdownAnchor | null;
458
475
  isHistoryPinned?: boolean;
459
476
  onToggleHistory?: () => void;
477
+ onCopyAll?: () => void;
478
+ onCopyAllHover?: (isHovered: boolean) => void;
460
479
  onHistoryButtonHover?: (isHovered: boolean) => void;
461
480
  onHistoryItemSelect?: (item: HistoryItem) => void;
462
481
  onHistoryItemRemove?: (item: HistoryItem) => void;
@@ -467,12 +486,18 @@ interface ReactGrabRendererProps {
467
486
  onHistoryClear?: () => void;
468
487
  onHistoryDismiss?: () => void;
469
488
  onHistoryDropdownHover?: (isHovered: boolean) => void;
489
+ toolbarMenuPosition?: DropdownAnchor | null;
490
+ onToggleMenu?: () => void;
491
+ onToolbarMenuDismiss?: () => void;
492
+ clearPromptPosition?: DropdownAnchor | null;
493
+ onClearHistoryConfirm?: () => void;
494
+ onClearHistoryCancel?: () => void;
470
495
  }
471
496
  interface GrabbedBox {
472
497
  id: string;
473
498
  bounds: OverlayBounds;
474
499
  createdAt: number;
475
- element: Element;
500
+ element?: Element;
476
501
  }
477
502
  interface Rect {
478
503
  left: number;
@@ -517,4 +542,4 @@ declare const copyContent: (content: string, options?: CopyContentOptions) => bo
517
542
 
518
543
  declare const init: (rawOptions?: Options) => ReactGrabAPI;
519
544
 
520
- export { type AgentContext as A, copyContent as B, type CrosshairContext as C, DEFAULT_THEME as D, type ElementLabelVariant as E, type GrabbedBox as G, type Options as O, type Plugin as P, type ReactGrabAPI as R, type SourceInfo as S, type Theme as T, getElementContext as a, generateSnippet as b, type ReactGrabState as c, type ToolbarState as d, type OverlayBounds as e, type DragRect as f, getStack as g, type Rect as h, init as i, type DeepPartial as j, type PromptModeContext as k, type ElementLabelContext as l, type AgentSession as m, type AgentProvider as n, type AgentSessionStorage as o, type AgentOptions as p, type AgentCompleteResult as q, type SettableOptions as r, type ActivationMode as s, type ContextMenuAction as t, type ContextMenuActionContext as u, type ActionContext as v, type ActionContextHooks as w, type PluginConfig as x, type PluginHooks as y, type ReactGrabRendererProps as z };
545
+ export { type AgentContext as A, type PluginHooks as B, type CrosshairContext as C, DEFAULT_THEME as D, type ElementLabelVariant as E, type ReactGrabRendererProps as F, type GrabbedBox as G, copyContent as H, type Options as O, type Plugin as P, type ReactGrabAPI as R, type SourceInfo as S, type Theme as T, getElementContext as a, generateSnippet as b, type ReactGrabState as c, type ToolbarState as d, type OverlayBounds as e, type DragRect as f, getStack as g, type Rect as h, init as i, type DeepPartial as j, type PromptModeContext as k, type ElementLabelContext as l, type AgentSession as m, type AgentProvider as n, type AgentSessionStorage as o, type AgentOptions as p, type AgentCompleteResult as q, type SettableOptions as r, type ActivationMode as s, type ContextMenuAction as t, type ContextMenuActionContext as u, type ToolbarMenuAction as v, type PluginAction as w, type ActionContext as x, type ActionContextHooks as y, type PluginConfig as z };
@@ -212,6 +212,7 @@ interface ContextMenuActionContext extends ActionContext {
212
212
  interface ContextMenuAction {
213
213
  id: string;
214
214
  label: string;
215
+ target?: "context-menu";
215
216
  shortcut?: string;
216
217
  enabled?: boolean | ((context: ActionContext) => boolean);
217
218
  onAction: (context: ContextMenuActionContext) => void | Promise<void>;
@@ -236,8 +237,9 @@ interface ScreenshotBounds {
236
237
  interface PluginHooks {
237
238
  onActivate?: () => void;
238
239
  onDeactivate?: () => void;
240
+ cancelPendingToolbarActions?: () => void;
239
241
  onElementHover?: (element: Element) => void;
240
- onElementSelect?: (element: Element) => void;
242
+ onElementSelect?: (element: Element) => boolean | void | Promise<boolean>;
241
243
  onDragStart?: (startX: number, startY: number) => void;
242
244
  onDragEnd?: (elements: Element[], bounds: DragRect) => void;
243
245
  onBeforeCopy?: (elements: Element[]) => void | Promise<void>;
@@ -264,10 +266,20 @@ interface PluginHooks {
264
266
  transformOpenFileUrl?: (url: string, filePath: string, lineNumber?: number) => string;
265
267
  transformSnippet?: (snippet: string, element: Element) => string | Promise<string>;
266
268
  }
269
+ interface ToolbarMenuAction {
270
+ id: string;
271
+ label: string;
272
+ shortcut?: string;
273
+ target: "toolbar";
274
+ enabled?: boolean | (() => boolean);
275
+ isActive?: () => boolean;
276
+ onAction: () => void | Promise<void>;
277
+ }
278
+ type PluginAction = ContextMenuAction | ToolbarMenuAction;
267
279
  interface PluginConfig {
268
280
  theme?: DeepPartial<Theme>;
269
281
  options?: SettableOptions;
270
- actions?: ContextMenuAction[];
282
+ actions?: PluginAction[];
271
283
  hooks?: PluginHooks;
272
284
  cleanup?: () => void;
273
285
  }
@@ -275,9 +287,9 @@ interface Plugin {
275
287
  name: string;
276
288
  theme?: DeepPartial<Theme>;
277
289
  options?: SettableOptions;
278
- actions?: ContextMenuAction[];
290
+ actions?: PluginAction[];
279
291
  hooks?: PluginHooks;
280
- setup?: (api: ReactGrabAPI) => PluginConfig | void;
292
+ setup?: (api: ReactGrabAPI, hooks: ActionContextHooks) => PluginConfig | void;
281
293
  }
282
294
  interface Options {
283
295
  enabled?: boolean;
@@ -318,6 +330,7 @@ interface ReactGrabAPI {
318
330
  activate: () => void;
319
331
  deactivate: () => void;
320
332
  toggle: () => void;
333
+ comment: () => void;
321
334
  isActive: () => boolean;
322
335
  isEnabled: () => boolean;
323
336
  setEnabled: (enabled: boolean) => void;
@@ -349,6 +362,7 @@ interface SelectionLabelInstance {
349
362
  boundsMultiple?: OverlayBounds[];
350
363
  tagName: string;
351
364
  componentName?: string;
365
+ elementsCount?: number;
352
366
  status: SelectionLabelStatus;
353
367
  statusText?: string;
354
368
  isPromptMode?: boolean;
@@ -368,6 +382,9 @@ interface HistoryItem {
368
382
  elementName: string;
369
383
  tagName: string;
370
384
  componentName?: string;
385
+ elementsCount?: number;
386
+ previewBounds?: OverlayBounds[];
387
+ elementSelectors?: string[];
371
388
  isComment: boolean;
372
389
  commentText?: string;
373
390
  timestamp: number;
@@ -428,9 +445,7 @@ interface ReactGrabRendererProps {
428
445
  theme?: Required<Theme>;
429
446
  toolbarVisible?: boolean;
430
447
  isActive?: boolean;
431
- isCommentMode?: boolean;
432
448
  onToggleActive?: () => void;
433
- onComment?: () => void;
434
449
  enabled?: boolean;
435
450
  onToggleEnabled?: () => void;
436
451
  shakeCount?: number;
@@ -447,16 +462,20 @@ interface ReactGrabRendererProps {
447
462
  contextMenuComponentName?: string;
448
463
  contextMenuHasFilePath?: boolean;
449
464
  actions?: ContextMenuAction[];
465
+ toolbarActions?: ToolbarMenuAction[];
450
466
  actionContext?: ActionContext;
451
467
  onContextMenuDismiss?: () => void;
452
468
  onContextMenuHide?: () => void;
453
469
  historyItems?: HistoryItem[];
454
470
  historyDisconnectedItemIds?: Set<string>;
455
471
  historyItemCount?: number;
472
+ clockFlashTrigger?: number;
456
473
  hasUnreadHistoryItems?: boolean;
457
474
  historyDropdownPosition?: DropdownAnchor | null;
458
475
  isHistoryPinned?: boolean;
459
476
  onToggleHistory?: () => void;
477
+ onCopyAll?: () => void;
478
+ onCopyAllHover?: (isHovered: boolean) => void;
460
479
  onHistoryButtonHover?: (isHovered: boolean) => void;
461
480
  onHistoryItemSelect?: (item: HistoryItem) => void;
462
481
  onHistoryItemRemove?: (item: HistoryItem) => void;
@@ -467,12 +486,18 @@ interface ReactGrabRendererProps {
467
486
  onHistoryClear?: () => void;
468
487
  onHistoryDismiss?: () => void;
469
488
  onHistoryDropdownHover?: (isHovered: boolean) => void;
489
+ toolbarMenuPosition?: DropdownAnchor | null;
490
+ onToggleMenu?: () => void;
491
+ onToolbarMenuDismiss?: () => void;
492
+ clearPromptPosition?: DropdownAnchor | null;
493
+ onClearHistoryConfirm?: () => void;
494
+ onClearHistoryCancel?: () => void;
470
495
  }
471
496
  interface GrabbedBox {
472
497
  id: string;
473
498
  bounds: OverlayBounds;
474
499
  createdAt: number;
475
- element: Element;
500
+ element?: Element;
476
501
  }
477
502
  interface Rect {
478
503
  left: number;
@@ -517,4 +542,4 @@ declare const copyContent: (content: string, options?: CopyContentOptions) => bo
517
542
 
518
543
  declare const init: (rawOptions?: Options) => ReactGrabAPI;
519
544
 
520
- export { type AgentContext as A, copyContent as B, type CrosshairContext as C, DEFAULT_THEME as D, type ElementLabelVariant as E, type GrabbedBox as G, type Options as O, type Plugin as P, type ReactGrabAPI as R, type SourceInfo as S, type Theme as T, getElementContext as a, generateSnippet as b, type ReactGrabState as c, type ToolbarState as d, type OverlayBounds as e, type DragRect as f, getStack as g, type Rect as h, init as i, type DeepPartial as j, type PromptModeContext as k, type ElementLabelContext as l, type AgentSession as m, type AgentProvider as n, type AgentSessionStorage as o, type AgentOptions as p, type AgentCompleteResult as q, type SettableOptions as r, type ActivationMode as s, type ContextMenuAction as t, type ContextMenuActionContext as u, type ActionContext as v, type ActionContextHooks as w, type PluginConfig as x, type PluginHooks as y, type ReactGrabRendererProps as z };
545
+ export { type AgentContext as A, type PluginHooks as B, type CrosshairContext as C, DEFAULT_THEME as D, type ElementLabelVariant as E, type ReactGrabRendererProps as F, type GrabbedBox as G, copyContent as H, type Options as O, type Plugin as P, type ReactGrabAPI as R, type SourceInfo as S, type Theme as T, getElementContext as a, generateSnippet as b, type ReactGrabState as c, type ToolbarState as d, type OverlayBounds as e, type DragRect as f, getStack as g, type Rect as h, init as i, type DeepPartial as j, type PromptModeContext as k, type ElementLabelContext as l, type AgentSession as m, type AgentProvider as n, type AgentSessionStorage as o, type AgentOptions as p, type AgentCompleteResult as q, type SettableOptions as r, type ActivationMode as s, type ContextMenuAction as t, type ContextMenuActionContext as u, type ToolbarMenuAction as v, type PluginAction as w, type ActionContext as x, type ActionContextHooks as y, type PluginConfig as z };
package/dist/index.cjs CHANGED
@@ -1,4 +1,4 @@
1
- 'use strict';var chunkEFUDUWZJ_cjs=require('./chunk-EFUDUWZJ.cjs');/**
1
+ 'use strict';var chunkILQ5JMGX_cjs=require('./chunk-ILQ5JMGX.cjs');/**
2
2
  * @license MIT
3
3
  *
4
4
  * Copyright (c) 2025 Aiden Bai
@@ -6,4 +6,4 @@
6
6
  * This source code is licensed under the MIT license found in the
7
7
  * LICENSE file in the root directory of this source tree.
8
8
  */
9
- var e=null,R=()=>typeof window>"u"?e:window.__REACT_GRAB__??e??null,g=t=>{e=t,typeof window<"u"&&(t?window.__REACT_GRAB__=t:delete window.__REACT_GRAB__);};typeof window<"u"&&(window.__REACT_GRAB__?e=window.__REACT_GRAB__:(e=chunkEFUDUWZJ_cjs.o(),window.__REACT_GRAB__=e),window.dispatchEvent(new CustomEvent("react-grab:init",{detail:e})));Object.defineProperty(exports,"DEFAULT_THEME",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.j}});Object.defineProperty(exports,"captureElementScreenshot",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.g}});Object.defineProperty(exports,"combineBounds",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.f}});Object.defineProperty(exports,"commentPlugin",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.n}});Object.defineProperty(exports,"copyHtmlPlugin",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.l}});Object.defineProperty(exports,"copyImageToClipboard",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.h}});Object.defineProperty(exports,"formatElementInfo",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.c}});Object.defineProperty(exports,"generateSnippet",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.e}});Object.defineProperty(exports,"getStack",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.b}});Object.defineProperty(exports,"init",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.o}});Object.defineProperty(exports,"isInstrumentationActive",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.a}});Object.defineProperty(exports,"isScreenshotSupported",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.i}});Object.defineProperty(exports,"openPlugin",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.m}});Object.defineProperty(exports,"screenshotPlugin",{enumerable:true,get:function(){return chunkEFUDUWZJ_cjs.k}});exports.getGlobalApi=R;exports.setGlobalApi=g;
9
+ var e=null,m=()=>typeof window>"u"?e:window.__REACT_GRAB__??e??null,f=t=>{e=t,typeof window<"u"&&(t?window.__REACT_GRAB__=t:delete window.__REACT_GRAB__);};typeof window<"u"&&(window.__REACT_GRAB__?e=window.__REACT_GRAB__:(e=chunkILQ5JMGX_cjs.m(),window.__REACT_GRAB__=e),window.dispatchEvent(new CustomEvent("react-grab:init",{detail:e})));Object.defineProperty(exports,"DEFAULT_THEME",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.j}});Object.defineProperty(exports,"captureElementScreenshot",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.g}});Object.defineProperty(exports,"combineBounds",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.f}});Object.defineProperty(exports,"commentPlugin",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.k}});Object.defineProperty(exports,"copyImageToClipboard",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.h}});Object.defineProperty(exports,"formatElementInfo",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.c}});Object.defineProperty(exports,"generateSnippet",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.e}});Object.defineProperty(exports,"getStack",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.b}});Object.defineProperty(exports,"init",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.m}});Object.defineProperty(exports,"isInstrumentationActive",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.a}});Object.defineProperty(exports,"isScreenshotSupported",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.i}});Object.defineProperty(exports,"openPlugin",{enumerable:true,get:function(){return chunkILQ5JMGX_cjs.l}});exports.getGlobalApi=m;exports.setGlobalApi=f;
package/dist/index.d.cts CHANGED
@@ -1,16 +1,12 @@
1
- import { P as Plugin, R as ReactGrabAPI } from './index-BR6gp9du.cjs';
2
- export { v as ActionContext, w as ActionContextHooks, s as ActivationMode, q as AgentCompleteResult, A as AgentContext, p as AgentOptions, n as AgentProvider, m as AgentSession, o as AgentSessionStorage, t as ContextMenuAction, u as ContextMenuActionContext, C as CrosshairContext, D as DEFAULT_THEME, j as DeepPartial, f as DragRect, l as ElementLabelContext, E as ElementLabelVariant, G as GrabbedBox, O as Options, e as OverlayBounds, x as PluginConfig, y as PluginHooks, k as PromptModeContext, c as ReactGrabState, h as Rect, r as SettableOptions, S as SourceInfo, T as Theme, d as ToolbarState, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './index-BR6gp9du.cjs';
1
+ import { P as Plugin, R as ReactGrabAPI } from './index-BCkTVQa8.cjs';
2
+ export { x as ActionContext, y as ActionContextHooks, s as ActivationMode, q as AgentCompleteResult, A as AgentContext, p as AgentOptions, n as AgentProvider, m as AgentSession, o as AgentSessionStorage, t as ContextMenuAction, u as ContextMenuActionContext, C as CrosshairContext, D as DEFAULT_THEME, j as DeepPartial, f as DragRect, l as ElementLabelContext, E as ElementLabelVariant, G as GrabbedBox, O as Options, e as OverlayBounds, w as PluginAction, z as PluginConfig, B as PluginHooks, k as PromptModeContext, c as ReactGrabState, h as Rect, r as SettableOptions, S as SourceInfo, T as Theme, v as ToolbarMenuAction, d as ToolbarState, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './index-BCkTVQa8.cjs';
3
3
  export { isInstrumentationActive } from 'bippy';
4
4
  import 'bippy/source';
5
5
 
6
- declare const screenshotPlugin: Plugin;
7
-
8
- declare const copyHtmlPlugin: Plugin;
6
+ declare const commentPlugin: Plugin;
9
7
 
10
8
  declare const openPlugin: Plugin;
11
9
 
12
- declare const commentPlugin: Plugin;
13
-
14
10
  interface ElementBounds {
15
11
  x: number;
16
12
  y: number;
@@ -31,4 +27,4 @@ declare global {
31
27
  declare const getGlobalApi: () => ReactGrabAPI | null;
32
28
  declare const setGlobalApi: (api: ReactGrabAPI | null) => void;
33
29
 
34
- export { type ElementBounds, Plugin, ReactGrabAPI, captureElementScreenshot, combineBounds, commentPlugin, copyHtmlPlugin, copyImageToClipboard, getGlobalApi, isScreenshotSupported, openPlugin, screenshotPlugin, setGlobalApi };
30
+ export { type ElementBounds, Plugin, ReactGrabAPI, captureElementScreenshot, combineBounds, commentPlugin, copyImageToClipboard, getGlobalApi, isScreenshotSupported, openPlugin, setGlobalApi };
package/dist/index.d.ts CHANGED
@@ -1,16 +1,12 @@
1
- import { P as Plugin, R as ReactGrabAPI } from './index-BR6gp9du.js';
2
- export { v as ActionContext, w as ActionContextHooks, s as ActivationMode, q as AgentCompleteResult, A as AgentContext, p as AgentOptions, n as AgentProvider, m as AgentSession, o as AgentSessionStorage, t as ContextMenuAction, u as ContextMenuActionContext, C as CrosshairContext, D as DEFAULT_THEME, j as DeepPartial, f as DragRect, l as ElementLabelContext, E as ElementLabelVariant, G as GrabbedBox, O as Options, e as OverlayBounds, x as PluginConfig, y as PluginHooks, k as PromptModeContext, c as ReactGrabState, h as Rect, r as SettableOptions, S as SourceInfo, T as Theme, d as ToolbarState, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './index-BR6gp9du.js';
1
+ import { P as Plugin, R as ReactGrabAPI } from './index-BCkTVQa8.js';
2
+ export { x as ActionContext, y as ActionContextHooks, s as ActivationMode, q as AgentCompleteResult, A as AgentContext, p as AgentOptions, n as AgentProvider, m as AgentSession, o as AgentSessionStorage, t as ContextMenuAction, u as ContextMenuActionContext, C as CrosshairContext, D as DEFAULT_THEME, j as DeepPartial, f as DragRect, l as ElementLabelContext, E as ElementLabelVariant, G as GrabbedBox, O as Options, e as OverlayBounds, w as PluginAction, z as PluginConfig, B as PluginHooks, k as PromptModeContext, c as ReactGrabState, h as Rect, r as SettableOptions, S as SourceInfo, T as Theme, v as ToolbarMenuAction, d as ToolbarState, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './index-BCkTVQa8.js';
3
3
  export { isInstrumentationActive } from 'bippy';
4
4
  import 'bippy/source';
5
5
 
6
- declare const screenshotPlugin: Plugin;
7
-
8
- declare const copyHtmlPlugin: Plugin;
6
+ declare const commentPlugin: Plugin;
9
7
 
10
8
  declare const openPlugin: Plugin;
11
9
 
12
- declare const commentPlugin: Plugin;
13
-
14
10
  interface ElementBounds {
15
11
  x: number;
16
12
  y: number;
@@ -31,4 +27,4 @@ declare global {
31
27
  declare const getGlobalApi: () => ReactGrabAPI | null;
32
28
  declare const setGlobalApi: (api: ReactGrabAPI | null) => void;
33
29
 
34
- export { type ElementBounds, Plugin, ReactGrabAPI, captureElementScreenshot, combineBounds, commentPlugin, copyHtmlPlugin, copyImageToClipboard, getGlobalApi, isScreenshotSupported, openPlugin, screenshotPlugin, setGlobalApi };
30
+ export { type ElementBounds, Plugin, ReactGrabAPI, captureElementScreenshot, combineBounds, commentPlugin, copyImageToClipboard, getGlobalApi, isScreenshotSupported, openPlugin, setGlobalApi };