react-grab 0.0.91 → 0.0.92

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.
@@ -66,11 +66,11 @@ interface Theme {
66
66
  enabled?: boolean;
67
67
  };
68
68
  /**
69
- * The floating dock that allows toggling React Grab activation
69
+ * The floating toolbar that allows toggling React Grab activation
70
70
  */
71
- dock?: {
71
+ toolbar?: {
72
72
  /**
73
- * Whether to show the dock
73
+ * Whether to show the toolbar
74
74
  * @default true
75
75
  */
76
76
  enabled?: boolean;
@@ -107,7 +107,7 @@ interface ActivationKey {
107
107
  altKey?: boolean;
108
108
  }
109
109
  interface AgentContext<T = unknown> {
110
- content: string;
110
+ content: string[];
111
111
  prompt: string;
112
112
  options?: T;
113
113
  sessionId?: string;
@@ -123,7 +123,7 @@ interface AgentSession {
123
123
  x: number;
124
124
  y: number;
125
125
  };
126
- selectionBounds?: OverlayBounds;
126
+ selectionBounds: OverlayBounds[];
127
127
  tagName?: string;
128
128
  componentName?: string;
129
129
  error?: string;
@@ -138,6 +138,9 @@ interface AgentProvider<T = any> {
138
138
  checkConnection?: () => Promise<boolean>;
139
139
  getCompletionMessage?: () => string | undefined;
140
140
  undo?: () => Promise<void>;
141
+ canUndo?: () => boolean;
142
+ redo?: () => Promise<void>;
143
+ canRedo?: () => boolean;
141
144
  }
142
145
  interface AgentSessionStorage {
143
146
  getItem(key: string): string | null;
@@ -151,13 +154,14 @@ interface AgentOptions<T = any> {
151
154
  provider?: AgentProvider<T>;
152
155
  storage?: AgentSessionStorage | null;
153
156
  getOptions?: () => T;
154
- onStart?: (session: AgentSession, element: Element | undefined) => void;
157
+ onStart?: (session: AgentSession, elements: Element[]) => void;
155
158
  onStatus?: (status: string, session: AgentSession) => void;
156
- onComplete?: (session: AgentSession, element: Element | undefined) => AgentCompleteResult | void | Promise<AgentCompleteResult | void>;
159
+ onComplete?: (session: AgentSession, elements: Element[]) => AgentCompleteResult | void | Promise<AgentCompleteResult | void>;
157
160
  onError?: (error: Error, session: AgentSession) => void;
158
161
  onResume?: (session: AgentSession) => void;
159
- onAbort?: (session: AgentSession, element: Element | undefined) => void;
160
- onUndo?: (session: AgentSession, element: Element | undefined) => void;
162
+ onAbort?: (session: AgentSession, elements: Element[]) => void;
163
+ onUndo?: (session: AgentSession, elements: Element[]) => void;
164
+ onDismiss?: (session: AgentSession, elements: Element[]) => void;
161
165
  }
162
166
  type ActivationMode = "toggle" | "hold";
163
167
  interface Options {
@@ -190,26 +194,7 @@ interface Options {
190
194
  onOpenFile?: (filePath: string, lineNumber?: number) => void;
191
195
  agent?: AgentOptions;
192
196
  }
193
- interface UpdatableOptions {
194
- onActivate?: () => void;
195
- onDeactivate?: () => void;
196
- onElementHover?: (element: Element) => void;
197
- onElementSelect?: (element: Element) => void;
198
- onDragStart?: (startX: number, startY: number) => void;
199
- onDragEnd?: (elements: Element[], bounds: DragRect) => void;
200
- onBeforeCopy?: (elements: Element[]) => void | Promise<void>;
201
- onAfterCopy?: (elements: Element[], success: boolean) => void;
202
- onCopySuccess?: (elements: Element[], content: string) => void;
203
- onCopyError?: (error: Error) => void;
204
- onStateChange?: (state: ReactGrabState) => void;
205
- onInputModeChange?: (isInputMode: boolean, context: InputModeContext) => void;
206
- onSelectionBox?: (visible: boolean, bounds: OverlayBounds | null, element: Element | null) => void;
207
- onDragBox?: (visible: boolean, bounds: OverlayBounds | null) => void;
208
- onGrabbedBox?: (bounds: OverlayBounds, element: Element) => void;
209
- onElementLabel?: (visible: boolean, variant: ElementLabelVariant, context: ElementLabelContext) => void;
210
- onCrosshair?: (visible: boolean, context: CrosshairContext) => void;
211
- onOpenFile?: (filePath: string, lineNumber?: number) => void;
212
- }
197
+ type UpdatableOptions = Pick<Options, "onActivate" | "onDeactivate" | "onElementHover" | "onElementSelect" | "onDragStart" | "onDragEnd" | "onBeforeCopy" | "onAfterCopy" | "onCopySuccess" | "onCopyError" | "onStateChange" | "onInputModeChange" | "onSelectionBox" | "onDragBox" | "onGrabbedBox" | "onElementLabel" | "onCrosshair" | "onOpenFile">;
213
198
  interface ReactGrabAPI {
214
199
  activate: () => void;
215
200
  deactivate: () => void;
@@ -245,6 +230,8 @@ interface SelectionLabelInstance {
245
230
  interface ReactGrabRendererProps {
246
231
  selectionVisible?: boolean;
247
232
  selectionBounds?: OverlayBounds;
233
+ selectionBoundsMultiple?: OverlayBounds[];
234
+ selectionElementsCount?: number;
248
235
  selectionFilePath?: string;
249
236
  selectionLineNumber?: number;
250
237
  selectionTagName?: string;
@@ -264,7 +251,7 @@ interface ReactGrabRendererProps {
264
251
  mouseY?: number;
265
252
  crosshairVisible?: boolean;
266
253
  inputValue?: string;
267
- isInputExpanded?: boolean;
254
+ isInputMode?: boolean;
268
255
  replyToPrompt?: string;
269
256
  hasAgent?: boolean;
270
257
  isAgentConnected?: boolean;
@@ -275,7 +262,7 @@ interface ReactGrabRendererProps {
275
262
  onAbortSession?: (sessionId: string) => void;
276
263
  onDismissSession?: (sessionId: string) => void;
277
264
  onUndoSession?: (sessionId: string) => void;
278
- onReplySession?: (sessionId: string) => void;
265
+ onFollowUpSubmitSession?: (sessionId: string, prompt: string) => void;
279
266
  onAcknowledgeSessionError?: (sessionId: string) => void;
280
267
  onRetrySession?: (sessionId: string) => void;
281
268
  onInputChange?: (value: string) => void;
@@ -297,7 +284,7 @@ interface ReactGrabRendererProps {
297
284
  onNativeSelectionCopy?: () => void;
298
285
  onNativeSelectionEnter?: () => void;
299
286
  theme?: Required<Theme>;
300
- dockVisible?: boolean;
287
+ toolbarVisible?: boolean;
301
288
  isActive?: boolean;
302
289
  onToggleActive?: () => void;
303
290
  }
@@ -331,7 +318,7 @@ declare const DEFAULT_THEME: Required<Theme>;
331
318
  interface GenerateSnippetOptions {
332
319
  maxLines?: number;
333
320
  }
334
- declare const generateSnippet: (elements: Element[], options?: GenerateSnippetOptions) => Promise<string>;
321
+ declare const generateSnippet: (elements: Element[], options?: GenerateSnippetOptions) => Promise<string[]>;
335
322
 
336
323
  interface CopyContentOptions {
337
324
  onSuccess?: () => void;
@@ -66,11 +66,11 @@ interface Theme {
66
66
  enabled?: boolean;
67
67
  };
68
68
  /**
69
- * The floating dock that allows toggling React Grab activation
69
+ * The floating toolbar that allows toggling React Grab activation
70
70
  */
71
- dock?: {
71
+ toolbar?: {
72
72
  /**
73
- * Whether to show the dock
73
+ * Whether to show the toolbar
74
74
  * @default true
75
75
  */
76
76
  enabled?: boolean;
@@ -107,7 +107,7 @@ interface ActivationKey {
107
107
  altKey?: boolean;
108
108
  }
109
109
  interface AgentContext<T = unknown> {
110
- content: string;
110
+ content: string[];
111
111
  prompt: string;
112
112
  options?: T;
113
113
  sessionId?: string;
@@ -123,7 +123,7 @@ interface AgentSession {
123
123
  x: number;
124
124
  y: number;
125
125
  };
126
- selectionBounds?: OverlayBounds;
126
+ selectionBounds: OverlayBounds[];
127
127
  tagName?: string;
128
128
  componentName?: string;
129
129
  error?: string;
@@ -138,6 +138,9 @@ interface AgentProvider<T = any> {
138
138
  checkConnection?: () => Promise<boolean>;
139
139
  getCompletionMessage?: () => string | undefined;
140
140
  undo?: () => Promise<void>;
141
+ canUndo?: () => boolean;
142
+ redo?: () => Promise<void>;
143
+ canRedo?: () => boolean;
141
144
  }
142
145
  interface AgentSessionStorage {
143
146
  getItem(key: string): string | null;
@@ -151,13 +154,14 @@ interface AgentOptions<T = any> {
151
154
  provider?: AgentProvider<T>;
152
155
  storage?: AgentSessionStorage | null;
153
156
  getOptions?: () => T;
154
- onStart?: (session: AgentSession, element: Element | undefined) => void;
157
+ onStart?: (session: AgentSession, elements: Element[]) => void;
155
158
  onStatus?: (status: string, session: AgentSession) => void;
156
- onComplete?: (session: AgentSession, element: Element | undefined) => AgentCompleteResult | void | Promise<AgentCompleteResult | void>;
159
+ onComplete?: (session: AgentSession, elements: Element[]) => AgentCompleteResult | void | Promise<AgentCompleteResult | void>;
157
160
  onError?: (error: Error, session: AgentSession) => void;
158
161
  onResume?: (session: AgentSession) => void;
159
- onAbort?: (session: AgentSession, element: Element | undefined) => void;
160
- onUndo?: (session: AgentSession, element: Element | undefined) => void;
162
+ onAbort?: (session: AgentSession, elements: Element[]) => void;
163
+ onUndo?: (session: AgentSession, elements: Element[]) => void;
164
+ onDismiss?: (session: AgentSession, elements: Element[]) => void;
161
165
  }
162
166
  type ActivationMode = "toggle" | "hold";
163
167
  interface Options {
@@ -190,26 +194,7 @@ interface Options {
190
194
  onOpenFile?: (filePath: string, lineNumber?: number) => void;
191
195
  agent?: AgentOptions;
192
196
  }
193
- interface UpdatableOptions {
194
- onActivate?: () => void;
195
- onDeactivate?: () => void;
196
- onElementHover?: (element: Element) => void;
197
- onElementSelect?: (element: Element) => void;
198
- onDragStart?: (startX: number, startY: number) => void;
199
- onDragEnd?: (elements: Element[], bounds: DragRect) => void;
200
- onBeforeCopy?: (elements: Element[]) => void | Promise<void>;
201
- onAfterCopy?: (elements: Element[], success: boolean) => void;
202
- onCopySuccess?: (elements: Element[], content: string) => void;
203
- onCopyError?: (error: Error) => void;
204
- onStateChange?: (state: ReactGrabState) => void;
205
- onInputModeChange?: (isInputMode: boolean, context: InputModeContext) => void;
206
- onSelectionBox?: (visible: boolean, bounds: OverlayBounds | null, element: Element | null) => void;
207
- onDragBox?: (visible: boolean, bounds: OverlayBounds | null) => void;
208
- onGrabbedBox?: (bounds: OverlayBounds, element: Element) => void;
209
- onElementLabel?: (visible: boolean, variant: ElementLabelVariant, context: ElementLabelContext) => void;
210
- onCrosshair?: (visible: boolean, context: CrosshairContext) => void;
211
- onOpenFile?: (filePath: string, lineNumber?: number) => void;
212
- }
197
+ type UpdatableOptions = Pick<Options, "onActivate" | "onDeactivate" | "onElementHover" | "onElementSelect" | "onDragStart" | "onDragEnd" | "onBeforeCopy" | "onAfterCopy" | "onCopySuccess" | "onCopyError" | "onStateChange" | "onInputModeChange" | "onSelectionBox" | "onDragBox" | "onGrabbedBox" | "onElementLabel" | "onCrosshair" | "onOpenFile">;
213
198
  interface ReactGrabAPI {
214
199
  activate: () => void;
215
200
  deactivate: () => void;
@@ -245,6 +230,8 @@ interface SelectionLabelInstance {
245
230
  interface ReactGrabRendererProps {
246
231
  selectionVisible?: boolean;
247
232
  selectionBounds?: OverlayBounds;
233
+ selectionBoundsMultiple?: OverlayBounds[];
234
+ selectionElementsCount?: number;
248
235
  selectionFilePath?: string;
249
236
  selectionLineNumber?: number;
250
237
  selectionTagName?: string;
@@ -264,7 +251,7 @@ interface ReactGrabRendererProps {
264
251
  mouseY?: number;
265
252
  crosshairVisible?: boolean;
266
253
  inputValue?: string;
267
- isInputExpanded?: boolean;
254
+ isInputMode?: boolean;
268
255
  replyToPrompt?: string;
269
256
  hasAgent?: boolean;
270
257
  isAgentConnected?: boolean;
@@ -275,7 +262,7 @@ interface ReactGrabRendererProps {
275
262
  onAbortSession?: (sessionId: string) => void;
276
263
  onDismissSession?: (sessionId: string) => void;
277
264
  onUndoSession?: (sessionId: string) => void;
278
- onReplySession?: (sessionId: string) => void;
265
+ onFollowUpSubmitSession?: (sessionId: string, prompt: string) => void;
279
266
  onAcknowledgeSessionError?: (sessionId: string) => void;
280
267
  onRetrySession?: (sessionId: string) => void;
281
268
  onInputChange?: (value: string) => void;
@@ -297,7 +284,7 @@ interface ReactGrabRendererProps {
297
284
  onNativeSelectionCopy?: () => void;
298
285
  onNativeSelectionEnter?: () => void;
299
286
  theme?: Required<Theme>;
300
- dockVisible?: boolean;
287
+ toolbarVisible?: boolean;
301
288
  isActive?: boolean;
302
289
  onToggleActive?: () => void;
303
290
  }
@@ -331,7 +318,7 @@ declare const DEFAULT_THEME: Required<Theme>;
331
318
  interface GenerateSnippetOptions {
332
319
  maxLines?: number;
333
320
  }
334
- declare const generateSnippet: (elements: Element[], options?: GenerateSnippetOptions) => Promise<string>;
321
+ declare const generateSnippet: (elements: Element[], options?: GenerateSnippetOptions) => Promise<string[]>;
335
322
 
336
323
  interface CopyContentOptions {
337
324
  onSuccess?: () => void;
package/dist/core.cjs CHANGED
@@ -1 +1 @@
1
- 'use strict';var chunkW6BS7R5W_cjs=require('./chunk-W6BS7R5W.cjs');Object.defineProperty(exports,"DEFAULT_THEME",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.f}});Object.defineProperty(exports,"copyContent",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.d}});Object.defineProperty(exports,"formatElementInfo",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.c}});Object.defineProperty(exports,"generateSnippet",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.e}});Object.defineProperty(exports,"getStack",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.b}});Object.defineProperty(exports,"init",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.g}});Object.defineProperty(exports,"isInstrumentationActive",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.a}});
1
+ 'use strict';var chunkW3GL3PYN_cjs=require('./chunk-W3GL3PYN.cjs');Object.defineProperty(exports,"DEFAULT_THEME",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.f}});Object.defineProperty(exports,"copyContent",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.d}});Object.defineProperty(exports,"formatElementInfo",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.c}});Object.defineProperty(exports,"generateSnippet",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.e}});Object.defineProperty(exports,"getStack",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.b}});Object.defineProperty(exports,"init",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.g}});Object.defineProperty(exports,"isInstrumentationActive",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.a}});
package/dist/core.d.cts CHANGED
@@ -1,3 +1,3 @@
1
- export { o as AgentCompleteResult, A as AgentContext, n as AgentOptions, l as AgentProvider, k as AgentSession, m as AgentSessionStorage, D as DEFAULT_THEME, O as Options, d as OverlayBounds, R as ReactGrabAPI, q as ReactGrabRendererProps, U as UpdatableOptions, r as copyContent, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './core-DLrSA8VT.cjs';
1
+ export { o as AgentCompleteResult, A as AgentContext, n as AgentOptions, l as AgentProvider, k as AgentSession, m as AgentSessionStorage, D as DEFAULT_THEME, O as Options, d as OverlayBounds, R as ReactGrabAPI, q as ReactGrabRendererProps, U as UpdatableOptions, r as copyContent, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './core-DOGyzncb.cjs';
2
2
  export { isInstrumentationActive } from 'bippy';
3
3
  import 'bippy/source';
package/dist/core.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { o as AgentCompleteResult, A as AgentContext, n as AgentOptions, l as AgentProvider, k as AgentSession, m as AgentSessionStorage, D as DEFAULT_THEME, O as Options, d as OverlayBounds, R as ReactGrabAPI, q as ReactGrabRendererProps, U as UpdatableOptions, r as copyContent, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './core-DLrSA8VT.js';
1
+ export { o as AgentCompleteResult, A as AgentContext, n as AgentOptions, l as AgentProvider, k as AgentSession, m as AgentSessionStorage, D as DEFAULT_THEME, O as Options, d as OverlayBounds, R as ReactGrabAPI, q as ReactGrabRendererProps, U as UpdatableOptions, r as copyContent, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './core-DOGyzncb.js';
2
2
  export { isInstrumentationActive } from 'bippy';
3
3
  import 'bippy/source';
package/dist/core.js CHANGED
@@ -1 +1 @@
1
- export{f as DEFAULT_THEME,d as copyContent,c as formatElementInfo,e as generateSnippet,b as getStack,g as init,a as isInstrumentationActive}from'./chunk-DN7NT3CO.js';
1
+ export{f as DEFAULT_THEME,d as copyContent,c as formatElementInfo,e as generateSnippet,b as getStack,g as init,a as isInstrumentationActive}from'./chunk-B6KU57UC.js';
package/dist/index.cjs CHANGED
@@ -1,4 +1,4 @@
1
- 'use strict';var chunkW6BS7R5W_cjs=require('./chunk-W6BS7R5W.cjs');/**
1
+ 'use strict';var chunkW3GL3PYN_cjs=require('./chunk-W3GL3PYN.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,A=()=>typeof window>"u"?e:window.__REACT_GRAB__??e??null,d=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=chunkW6BS7R5W_cjs.g(),window.__REACT_GRAB__=e,window.dispatchEvent(new CustomEvent("react-grab:init",{detail:e}))));Object.defineProperty(exports,"DEFAULT_THEME",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.f}});Object.defineProperty(exports,"formatElementInfo",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.c}});Object.defineProperty(exports,"generateSnippet",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.e}});Object.defineProperty(exports,"getStack",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.b}});Object.defineProperty(exports,"init",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.g}});Object.defineProperty(exports,"isInstrumentationActive",{enumerable:true,get:function(){return chunkW6BS7R5W_cjs.a}});exports.getGlobalApi=A;exports.setGlobalApi=d;
9
+ var e=null,A=()=>typeof window>"u"?e:window.__REACT_GRAB__??e??null,d=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=chunkW3GL3PYN_cjs.g(),window.__REACT_GRAB__=e,window.dispatchEvent(new CustomEvent("react-grab:init",{detail:e}))));Object.defineProperty(exports,"DEFAULT_THEME",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.f}});Object.defineProperty(exports,"formatElementInfo",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.c}});Object.defineProperty(exports,"generateSnippet",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.e}});Object.defineProperty(exports,"getStack",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.b}});Object.defineProperty(exports,"init",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.g}});Object.defineProperty(exports,"isInstrumentationActive",{enumerable:true,get:function(){return chunkW3GL3PYN_cjs.a}});exports.getGlobalApi=A;exports.setGlobalApi=d;
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { R as ReactGrabAPI } from './core-DLrSA8VT.cjs';
2
- export { p as ActivationMode, o as AgentCompleteResult, A as AgentContext, n as AgentOptions, l as AgentProvider, k as AgentSession, m as AgentSessionStorage, C as CrosshairContext, D as DEFAULT_THEME, h as DeepPartial, e as DragRect, j as ElementLabelContext, E as ElementLabelVariant, G as GrabbedBox, I as InputModeContext, O as Options, d as OverlayBounds, c as ReactGrabState, f as Rect, T as Theme, U as UpdatableOptions, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './core-DLrSA8VT.cjs';
1
+ import { R as ReactGrabAPI } from './core-DOGyzncb.cjs';
2
+ export { p as ActivationMode, o as AgentCompleteResult, A as AgentContext, n as AgentOptions, l as AgentProvider, k as AgentSession, m as AgentSessionStorage, C as CrosshairContext, D as DEFAULT_THEME, h as DeepPartial, e as DragRect, j as ElementLabelContext, E as ElementLabelVariant, G as GrabbedBox, I as InputModeContext, O as Options, d as OverlayBounds, c as ReactGrabState, f as Rect, T as Theme, U as UpdatableOptions, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './core-DOGyzncb.cjs';
3
3
  export { isInstrumentationActive } from 'bippy';
4
4
  import 'bippy/source';
5
5
 
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { R as ReactGrabAPI } from './core-DLrSA8VT.js';
2
- export { p as ActivationMode, o as AgentCompleteResult, A as AgentContext, n as AgentOptions, l as AgentProvider, k as AgentSession, m as AgentSessionStorage, C as CrosshairContext, D as DEFAULT_THEME, h as DeepPartial, e as DragRect, j as ElementLabelContext, E as ElementLabelVariant, G as GrabbedBox, I as InputModeContext, O as Options, d as OverlayBounds, c as ReactGrabState, f as Rect, T as Theme, U as UpdatableOptions, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './core-DLrSA8VT.js';
1
+ import { R as ReactGrabAPI } from './core-DOGyzncb.js';
2
+ export { p as ActivationMode, o as AgentCompleteResult, A as AgentContext, n as AgentOptions, l as AgentProvider, k as AgentSession, m as AgentSessionStorage, C as CrosshairContext, D as DEFAULT_THEME, h as DeepPartial, e as DragRect, j as ElementLabelContext, E as ElementLabelVariant, G as GrabbedBox, I as InputModeContext, O as Options, d as OverlayBounds, c as ReactGrabState, f as Rect, T as Theme, U as UpdatableOptions, a as formatElementInfo, b as generateSnippet, g as getStack, i as init } from './core-DOGyzncb.js';
3
3
  export { isInstrumentationActive } from 'bippy';
4
4
  import 'bippy/source';
5
5