react-grab 0.1.0-beta.11 → 0.1.0-beta.12

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/README.md CHANGED
@@ -136,57 +136,6 @@ if (process.env.NODE_ENV === "development") {
136
136
  }
137
137
  ```
138
138
 
139
- ## MCP Server
140
-
141
- React Grab includes an MCP (Model Context Protocol) server that gives AI coding agents direct access to your browser. This enables agents to navigate, click, fill forms, and take screenshots.
142
-
143
- ### Setup
144
-
145
- Run during project init:
146
-
147
- ```bash
148
- npx -y grab@latest init
149
- # When prompted, choose to add the MCP server
150
- ```
151
-
152
- Or add it separately:
153
-
154
- ```bash
155
- npx -y grab@latest add mcp --client cursor
156
- ```
157
-
158
- Supported clients: `cursor`, `claude-code`, `vscode`, `opencode`, `codex`, `gemini-cli`, `windsurf`, `zed`, `droid`
159
-
160
- Or add it manually to your `mcp.json` file:
161
-
162
- ```json
163
- {
164
- "mcpServers": {
165
- "react-grab-browser": {
166
- "command": "npx",
167
- "args": ["-y", "grab", "browser", "mcp"]
168
- }
169
- }
170
- }
171
- ```
172
-
173
- ### MCP Tools
174
-
175
- Once configured, your agent has access to:
176
-
177
- - `browser_snapshot` - Get ARIA accessibility tree with element refs (e1, e2...)
178
- - `browser_execute` - Run Playwright code with helpers like `ref('e1').click()`
179
-
180
- ## Skill
181
-
182
- For agents that support skills (like Codex), install the `react-grab` skill:
183
-
184
- ```bash
185
- npx -y grab@latest add skill
186
- # or
187
- npx -y add-skill aidenybai/react-grab
188
- ```
189
-
190
139
  ## Extending React Grab
191
140
 
192
141
  React Grab uses a plugin system to extend functionality. Check out the [type definitions](https://github.com/aidenybai/react-grab/blob/main/packages/react-grab/src/types.ts) to see all available options.
@@ -0,0 +1,101 @@
1
+ import {t,u,D,L,c,g,f,j,d,l,da as da$1,h,s,n,r,N,M,ia as ia$1,O,ea as ea$1,fa as fa$1,J,ca as ca$1,P,C,p,q,ha as ha$1,ja as ja$1,k,e,z,R,S,x,B,ka as ka$1,ga as ga$1,la as la$1,w,a,i,Z,T,U,W,X,b,m,$,_,Q,aa as aa$1,V,A,ba as ba$1,Y,K,E,H,I,F,G}from'./chunk-77NP5QEW.js';/**
2
+ * @license MIT
3
+ *
4
+ * Copyright (c) 2025 Aiden Bai
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ var cn=Symbol("store-raw"),ht=Symbol("store-node"),Le=Symbol("store-has"),wr=Symbol("store-self");function xr(e){let t=e[a];if(!t&&(Object.defineProperty(e,a,{value:t=new Proxy(e,Mi)}),!Array.isArray(e))){let n=Object.keys(e),s=Object.getOwnPropertyDescriptors(e);for(let i=0,l=n.length;i<l;i++){let o=n[i];s[o].get&&Object.defineProperty(e,o,{enumerable:s[o].enumerable,get:s[o].get.bind(t)});}}return t}function bt(e){let t;return e!=null&&typeof e=="object"&&(e[a]||!(t=Object.getPrototypeOf(e))||t===Object.prototype||Array.isArray(e))}function yt(e,t=new Set){let n,s,i,l;if(n=e!=null&&e[cn])return n;if(!bt(e)||t.has(e))return e;if(Array.isArray(e)){Object.isFrozen(e)?e=e.slice(0):t.add(e);for(let o=0,a=e.length;o<a;o++)i=e[o],(s=yt(i,t))!==i&&(e[o]=s);}else {Object.isFrozen(e)?e=Object.assign({},e):t.add(e);let o=Object.keys(e),a=Object.getOwnPropertyDescriptors(e);for(let d=0,m=o.length;d<m;d++)l=o[d],!a[l].get&&(i=e[l],(s=yt(i,t))!==i&&(e[l]=s));}return e}function un(e,t){let n=e[t];return n||Object.defineProperty(e,t,{value:n=Object.create(null)}),n}function It(e,t,n){if(e[t])return e[t];let[s,i]=d(n,{equals:false,internal:true});return s.$=i,e[t]=s}function Ai(e,t){let n=Reflect.getOwnPropertyDescriptor(e,t);return !n||n.get||!n.configurable||t===a||t===ht||(delete n.value,delete n.writable,n.get=()=>e[a][t]),n}function vr(e){m()&&It(un(e,ht),wr)();}function Ti(e){return vr(e),Reflect.ownKeys(e)}var Mi={get(e,t,n){if(t===cn)return e;if(t===a)return n;if(t===b)return vr(e),n;let s=un(e,ht),i=s[t],l=i?i():e[t];if(t===ht||t===Le||t==="__proto__")return l;if(!i){let o=Object.getOwnPropertyDescriptor(e,t);m()&&(typeof l!="function"||e.hasOwnProperty(t))&&!(o&&o.get)&&(l=It(s,t,l)());}return bt(l)?xr(l):l},has(e,t){return t===cn||t===a||t===b||t===ht||t===Le||t==="__proto__"?true:(m()&&It(un(e,Le),t)(),t in e)},set(){return true},deleteProperty(){return true},ownKeys:Ti,getOwnPropertyDescriptor:Ai};function St(e,t,n,s=false){if(!s&&e[t]===n)return;let i=e[t],l=e.length;n===void 0?(delete e[t],e[Le]&&e[Le][t]&&i!==void 0&&e[Le][t].$()):(e[t]=n,e[Le]&&e[Le][t]&&i===void 0&&e[Le][t].$());let o=un(e,ht),a;if((a=It(o,t,i))&&a.$(()=>n),Array.isArray(e)&&e.length!==l){for(let d=e.length;d<l;d++)(a=o[d])&&a.$();(a=It(o,"length",l))&&a.$(e.length);}(a=o[wr])&&a.$();}function Cr(e,t){let n=Object.keys(t);for(let s=0;s<n.length;s+=1){let i=n[s];St(e,i,t[i]);}}function Pi(e,t){if(typeof t=="function"&&(t=t(e)),t=yt(t),Array.isArray(t)){if(e===t)return;let n=0,s=t.length;for(;n<s;n++){let i=t[n];e[n]!==i&&St(e,n,i);}St(e,"length",s);}else Cr(e,t);}function Dt(e,t,n=[]){let s,i=e;if(t.length>1){s=t.shift();let o=typeof s,a=Array.isArray(e);if(Array.isArray(s)){for(let d=0;d<s.length;d++)Dt(e,[s[d]].concat(t),n);return}else if(a&&o==="function"){for(let d=0;d<e.length;d++)s(e[d],d)&&Dt(e,[d].concat(t),n);return}else if(a&&o==="object"){let{from:d=0,to:m=e.length-1,by:S=1}=s;for(let N=d;N<=m;N+=S)Dt(e,[N].concat(t),n);return}else if(t.length>1){Dt(e[s],t,[s].concat(n));return}i=e[s],n=[s].concat(n);}let l=t[0];typeof l=="function"&&(l=l(i,n),l===i)||s===void 0&&l==null||(l=yt(l),s===void 0||bt(i)&&bt(l)&&!Array.isArray(l)?Cr(i,l):St(e,s,l));}function fn(...[e,t]){let n=yt(e||{}),s=Array.isArray(n),i$1=xr(n);function l(...o){i(()=>{s&&o.length===1?Pi(n,o[0]):Dt(n,o);});}return [i$1,l]}var dn=new WeakMap,Ar={get(e,t){if(t===cn)return e;let n=e[t],s;return bt(n)?dn.get(n)||(dn.set(n,s=new Proxy(n,Ar)),s):n},set(e,t,n){return St(e,t,yt(n)),true},deleteProperty(e,t){return St(e,t,void 0,true),true}};function De(e){return t=>{if(bt(t)){let n;(n=dn.get(t))||dn.set(t,n=new Proxy(t,Ar)),e(n);}return t}}var Oi=e=>typeof e=="number"&&!Number.isNaN(e)&&Number.isFinite(e),Ri=e=>{let t=e.trim();if(!t)return null;let n=parseFloat(t);return Oi(n)?n:null},Tr=(e,t)=>{let n=e.split(",");if(n.length!==t)return null;let s=[];for(let i of n){let l=Ri(i);if(l===null)return null;s.push(l);}return s},Mr=(e,t,n,s)=>e===1&&t===0&&n===0&&s===1,Ni=e=>e[0]===1&&e[1]===0&&e[2]===0&&e[3]===0&&e[4]===0&&e[5]===1&&e[6]===0&&e[7]===0&&e[8]===0&&e[9]===0&&e[10]===1&&e[11]===0&&e[15]===1,Pr=e=>{if(!e||e==="none")return "none";if(e.charCodeAt(0)===109)if(e.charCodeAt(6)===51){let n=e.length-1,s=Tr(e.slice(9,n),16);if(s)return s[12]=0,s[13]=0,s[14]=0,Ni(s)?"none":`matrix3d(${s[0]}, ${s[1]}, ${s[2]}, ${s[3]}, ${s[4]}, ${s[5]}, ${s[6]}, ${s[7]}, ${s[8]}, ${s[9]}, ${s[10]}, ${s[11]}, 0, 0, 0, ${s[15]})`}else {let n=e.length-1,s=Tr(e.slice(7,n),6);if(s){let i=s[0],l=s[1],o=s[2],a=s[3];return Mr(i,l,o,a)?"none":`matrix(${i}, ${l}, ${o}, ${a}, 0, 0)`}}return "none"},Or=e=>e.isIdentity?"none":e.is2D?Mr(e.a,e.b,e.c,e.d)?"none":`matrix(${e.a}, ${e.b}, ${e.c}, ${e.d}, 0, 0)`:e.m11===1&&e.m12===0&&e.m13===0&&e.m14===0&&e.m21===0&&e.m22===1&&e.m23===0&&e.m24===0&&e.m31===0&&e.m32===0&&e.m33===1&&e.m34===0&&e.m44===1?"none":`matrix3d(${e.m11}, ${e.m12}, ${e.m13}, ${e.m14}, ${e.m21}, ${e.m22}, ${e.m23}, ${e.m24}, ${e.m31}, ${e.m32}, ${e.m33}, ${e.m34}, 0, 0, 0, ${e.m44})`;var Di=6,Ii=3,_i=(e,t)=>{let n=t&&t!=="none",s=null,i=e.parentElement,l=0;for(;i&&i!==document.documentElement&&l<Di;){let o=window.getComputedStyle(i).transform;if(o&&o!=="none")s=s?new DOMMatrix(o).multiply(s):new DOMMatrix(o);else if(!n&&!s&&l>=Ii)return "none";i=i.parentElement,l++;}return s?(n&&(s=s.multiply(new DOMMatrix(t))),Or(s)):n?Pr(t):"none"},ee=e=>{let t=e.getBoundingClientRect(),n=window.getComputedStyle(e),s=_i(e,n.transform);if(s!=="none"&&e instanceof HTMLElement){let i=e.offsetWidth,l=e.offsetHeight;if(i>0&&l>0){let o=t.left+t.width*.5,a=t.top+t.height*.5;return {borderRadius:n.borderRadius||"0px",height:l,transform:s,width:i,x:o-i*.5,y:a-l*.5}}}return {borderRadius:n.borderRadius||"0px",height:t.height,transform:s,width:t.width,x:t.left,y:t.top}};var Fi=e=>({current:{state:"idle"},wasActivatedByToggle:false,hasAgentProvider:e.hasAgentProvider,keyHoldDuration:e.keyHoldDuration,pointer:{x:-1e3,y:-1e3},dragStart:{x:-1e3,y:-1e3},copyStart:{x:-1e3,y:-1e3},copyOffsetFromCenterX:0,detectedElement:null,frozenElement:null,frozenElements:[],frozenDragRect:null,lastGrabbedElement:null,lastCopiedElement:null,selectionFilePath:null,selectionLineNumber:null,inputText:"",pendingClickData:null,replySessionId:null,viewportVersion:0,grabbedBoxes:[],labelInstances:[],agentSessions:new Map,sessionElements:new Map,isTouchMode:false,theme:e.theme,activationTimestamp:null,previouslyFocusedElement:null,canUndo:false,canRedo:false,isAgentConnected:false,supportsUndo:false,supportsFollowUp:false,dismissButtonText:void 0,pendingAbortSessionId:null,contextMenuPosition:null,contextMenuElement:null,contextMenuClickOffset:null,selectedAgent:null}),Rr=e=>{let[t,n]=fn(Fi(e)),s=()=>t.current.state==="active",i=()=>t.current.state==="holding",l={startHold:o=>{o!==void 0&&n("keyHoldDuration",o),n("current",{state:"holding",startedAt:Date.now()});},release:()=>{t.current.state==="holding"&&n("current",{state:"idle"});},activate:()=>{n("current",{state:"active",phase:"hovering",isPromptMode:false,isPendingDismiss:false}),n("activationTimestamp",Date.now()),n("previouslyFocusedElement",document.activeElement);},deactivate:()=>{n("current",{state:"idle"}),n("wasActivatedByToggle",false),n("inputText",""),n("frozenElement",null),n("frozenElements",[]),n("frozenDragRect",null),n("pendingClickData",null),n("replySessionId",null),n("pendingAbortSessionId",null),n("activationTimestamp",null),n("previouslyFocusedElement",null),n("contextMenuPosition",null),n("contextMenuElement",null),n("contextMenuClickOffset",null),n("selectedAgent",null);},toggle:()=>{t.activationTimestamp!==null?l.deactivate():(n("wasActivatedByToggle",true),l.activate());},freeze:()=>{if(t.current.state==="active"){let o=t.frozenElement??t.detectedElement;o&&n("frozenElement",o),n("current",De(a=>{a.state==="active"&&(a.phase="frozen");}));}},unfreeze:()=>{t.current.state==="active"&&(n("frozenElement",null),n("frozenElements",[]),n("frozenDragRect",null),n("current",De(o=>{o.state==="active"&&(o.phase="hovering");})));},startDrag:o=>{t.current.state==="active"&&(l.clearFrozenElement(),n("dragStart",{x:o.x+window.scrollX,y:o.y+window.scrollY}),n("current",De(a=>{a.state==="active"&&(a.phase="dragging");})));},endDrag:()=>{t.current.state==="active"&&t.current.phase==="dragging"&&(n("dragStart",{x:-1e3,y:-1e3}),n("current",De(o=>{o.state==="active"&&(o.phase="justDragged");})));},cancelDrag:()=>{t.current.state==="active"&&t.current.phase==="dragging"&&(n("dragStart",{x:-1e3,y:-1e3}),n("current",De(o=>{o.state==="active"&&(o.phase="hovering");})));},finishJustDragged:()=>{t.current.state==="active"&&t.current.phase==="justDragged"&&n("current",De(o=>{o.state==="active"&&(o.phase="hovering");}));},startCopy:()=>{let o=t.current.state==="active";n("current",{state:"copying",startedAt:Date.now(),wasActive:o});},completeCopy:o=>{n("pendingClickData",null),o&&n("lastCopiedElement",o);let a=t.current.state==="copying"?t.current.wasActive:false;n("current",{state:"justCopied",copiedAt:Date.now(),wasActive:a});},finishJustCopied:()=>{t.current.state==="justCopied"&&(t.current.wasActive&&!t.wasActivatedByToggle?n("current",{state:"active",phase:"hovering",isPromptMode:false,isPendingDismiss:false}):l.deactivate());},enterPromptMode:(o,a)=>{let d=ee(a),m=d.x+d.width/2;n("copyStart",o),n("copyOffsetFromCenterX",o.x-m),n("pointer",o),n("frozenElement",a),n("wasActivatedByToggle",true),t.current.state!=="active"?(n("current",{state:"active",phase:"frozen",isPromptMode:true,isPendingDismiss:false}),n("activationTimestamp",Date.now()),n("previouslyFocusedElement",document.activeElement)):n("current",De(S=>{S.state==="active"&&(S.isPromptMode=true,S.phase="frozen");}));},exitPromptMode:()=>{t.current.state==="active"&&n("current",De(o=>{o.state==="active"&&(o.isPromptMode=false,o.isPendingDismiss=false);}));},setInputText:o=>{n("inputText",o);},clearInputText:()=>{n("inputText","");},setPendingDismiss:o=>{t.current.state==="active"&&n("current",De(a=>{a.state==="active"&&(a.isPendingDismiss=o);}));},setPointer:o=>{n("pointer",o);},setDetectedElement:o=>{n("detectedElement",o);},setFrozenElement:o=>{n("frozenElement",o),n("frozenElements",[o]),n("frozenDragRect",null);},setFrozenElements:o=>{n("frozenElements",o),n("frozenElement",o.length>0?o[0]:null),n("frozenDragRect",null);},setFrozenDragRect:o=>{n("frozenDragRect",o);},clearFrozenElement:()=>{n("frozenElement",null),n("frozenElements",[]),n("frozenDragRect",null);},setCopyStart:(o,a)=>{let d=ee(a),m=d.x+d.width/2;n("copyStart",o),n("copyOffsetFromCenterX",o.x-m);},setLastGrabbed:o=>{n("lastGrabbedElement",o);},setLastCopied:o=>{n("lastCopiedElement",o);},clearLastCopied:()=>{n("lastCopiedElement",null);},setWasActivatedByToggle:o=>{n("wasActivatedByToggle",o);},setTouchMode:o=>{n("isTouchMode",o);},setSelectionSource:(o,a)=>{n("selectionFilePath",o),n("selectionLineNumber",a);},clearSelectionSource:()=>{n("selectionFilePath",null),n("selectionLineNumber",null);},setPendingClickData:o=>{n("pendingClickData",o);},clearPendingClickData:()=>{n("pendingClickData",null);},setReplySessionId:o=>{n("replySessionId",o);},clearReplySessionId:()=>{n("replySessionId",null);},incrementViewportVersion:()=>{n("viewportVersion",o=>o+1);},addGrabbedBox:o=>{n("grabbedBoxes",a=>[...a,o]);},removeGrabbedBox:o=>{n("grabbedBoxes",a=>a.filter(d=>d.id!==o));},clearGrabbedBoxes:()=>{n("grabbedBoxes",[]);},addLabelInstance:o=>{n("labelInstances",a=>[...a,o]);},updateLabelInstance:(o,a,d)=>{let m=t.labelInstances.findIndex(S=>S.id===o);m!==-1&&n("labelInstances",m,De(S=>{S.status=a,d!==void 0&&(S.errorMessage=d);}));},removeLabelInstance:o=>{n("labelInstances",a=>a.filter(d=>d.id!==o));},removeLabelsForElement:o=>{n("labelInstances",a=>a.filter(d=>d.element!==o));},clearLabelInstances:()=>{n("labelInstances",[]);},setHasAgentProvider:o=>{n("hasAgentProvider",o);},setUndoRedoState:(o,a)=>{n("canUndo",o),n("canRedo",a);},setAgentCapabilities:o=>{n("supportsUndo",o.supportsUndo),n("supportsFollowUp",o.supportsFollowUp),n("dismissButtonText",o.dismissButtonText),n("isAgentConnected",o.isAgentConnected);},setPendingAbortSessionId:o=>{n("pendingAbortSessionId",o);},updateSessionBounds:()=>{let o=t.agentSessions;if(o.size===0)return;let a=new Map(o),d=false;for(let[m,S]of o){let N=t.sessionElements.get(m);if(N&&document.contains(N)){let B=ee(N),v=S.selectionBounds[0],p=S.position;if(v){let y=v.x+v.width/2,_=v.width/2,$=S.position.x-y,U=_>0?$/_:0,oe=B.x+B.width/2,ue=B.width/2;p={...S.position,x:oe+U*ue};}a.set(m,{...S,selectionBounds:[B],position:p}),d=true;}}d&&n("agentSessions",a);},addAgentSession:(o,a,d)=>{let m=new Map(t.agentSessions);m.set(o,a),n("agentSessions",m);let S=new Map(t.sessionElements);S.set(o,d),n("sessionElements",S);},updateAgentSessionStatus:(o,a)=>{let d=t.agentSessions.get(o);if(!d)return;let m=new Map(t.agentSessions);m.set(o,{...d,lastStatus:a}),n("agentSessions",m);},completeAgentSession:(o,a)=>{let d=t.agentSessions.get(o);if(!d)return;let m=new Map(t.agentSessions);m.set(o,{...d,isStreaming:false,lastStatus:a??d.lastStatus}),n("agentSessions",m);},setAgentSessionError:(o,a)=>{let d=t.agentSessions.get(o);if(!d)return;let m=new Map(t.agentSessions);m.set(o,{...d,isStreaming:false,error:a}),n("agentSessions",m);},removeAgentSession:o=>{let a=new Map(t.agentSessions);a.delete(o),n("agentSessions",a);let d=new Map(t.sessionElements);d.delete(o),n("sessionElements",d);},showContextMenu:(o,a)=>{let d=ee(a),m=d.x+d.width/2,S=d.y+d.height/2;n("contextMenuPosition",o),n("contextMenuElement",a),n("contextMenuClickOffset",{x:o.x-m,y:o.y-S});},hideContextMenu:()=>{n("contextMenuPosition",null),n("contextMenuElement",null),n("contextMenuClickOffset",null);},updateContextMenuPosition:()=>{let o=t.contextMenuElement,a=t.contextMenuClickOffset;if(!o||!a||!document.contains(o))return;let d=ee(o),m=d.x+d.width/2,S=d.y+d.height/2;n("contextMenuPosition",{x:m+a.x,y:S+a.y});},setSelectedAgent:o=>{n("selectedAgent",o);},clearSelectedAgent:()=>{n("selectedAgent",null);}};return {store:t,setStore:n,actions:l,isActive:s,isHolding:i}};var Et="data-react-grab",Nr="react-grab-fonts",Bi="https://fonts.googleapis.com/css2?family=Geist+Mono:wght@500&family=Geist:wght@500&display=swap",Li=()=>{if(document.getElementById(Nr)||!document.head)return;let e=document.createElement("link");e.id=Nr,e.rel="stylesheet",e.href=Bi,document.head.appendChild(e);},Dr=e=>{Li();let t=document.querySelector(`[${Et}]`);if(t){let o=t.shadowRoot?.querySelector(`[${Et}]`);if(o instanceof HTMLDivElement&&t.shadowRoot)return o}let n=document.createElement("div");n.setAttribute(Et,"true"),n.style.zIndex="2147483646",n.style.position="fixed",n.style.top="0",n.style.left="0";let s=n.attachShadow({mode:"open"});if(e){let o=document.createElement("style");o.textContent=e,s.appendChild(o);}let i=document.createElement("div");i.setAttribute(Et,"true"),s.appendChild(i);let l=document.body??document.documentElement;return l.appendChild(n),setTimeout(()=>{l.contains(n)||l.appendChild(n);},1e3),i};var ki="https://react-grab.com",_t=(e,t)=>{let n=t?`&line=${t}`:"";return `${ki}/open-file?url=${encodeURIComponent(e)}${n}`};var Ve=(e,t,n)=>e+(t-e)*n;var zi=t("<canvas data-react-grab-overlay-canvas style=position:fixed;top:0;left:0;pointer-events:none>"),Ge={drag:{borderColor:F,fillColor:G,lerpFactor:.7},selection:{borderColor:H,fillColor:I,lerpFactor:.95},grabbed:{borderColor:H,fillColor:I,lerpFactor:.95},processing:{borderColor:H,fillColor:I,lerpFactor:.95}},Br=e$1=>{let t,n=null,s=0,i=0,l$1=1,o=null,a={crosshair:{canvas:null,context:null},drag:{canvas:null,context:null},selection:{canvas:null,context:null},grabbed:{canvas:null,context:null},processing:{canvas:null,context:null}},d={x:0,y:0},m={x:0,y:0},S=false,N=[],B=null,v=[],p=[],y=(u,g,h)=>{let b=new OffscreenCanvas(u*h,g*h),E=b.getContext("2d");return E&&E.scale(h,h),{canvas:b,context:E}},_=()=>{if(t){l$1=Math.max(window.devicePixelRatio||1,2),s=window.innerWidth,i=window.innerHeight,t.width=s*l$1,t.height=i*l$1,t.style.width=`${s}px`,t.style.height=`${i}px`,n=t.getContext("2d"),n&&n.scale(l$1,l$1);for(let u of Object.keys(a))a[u]=y(s,i,l$1);}},$=u=>{if(!u)return 0;let g=u.match(/^(\d+(?:\.\d+)?)/);return g?parseFloat(g[1]):0},U=(u,g,h)=>({id:u,current:{x:g.x,y:g.y,width:g.width,height:g.height},target:{x:g.x,y:g.y,width:g.width,height:g.height},borderRadius:$(g.borderRadius),opacity:h?.opacity??1,targetOpacity:h?.targetOpacity??h?.opacity??1,createdAt:h?.createdAt,isInitialized:true}),oe=(u,g,h)=>{u.target={x:g.x,y:g.y,width:g.width,height:g.height},u.borderRadius=$(g.borderRadius),h!==void 0&&(u.targetOpacity=h);},ue=u=>u.boundsMultiple??[u.bounds],re=(u,g,h,b,E,x,R,O,A=1)=>{if(b<=0||E<=0)return;let L=Math.min(b/2,E/2),K=Math.min(x,L);u.globalAlpha=A,u.beginPath(),K>0?u.roundRect(g,h,b,E,K):u.rect(g,h,b,E),u.fillStyle=R,u.fill(),u.strokeStyle=O,u.lineWidth=1,u.stroke(),u.globalAlpha=1;},Se=()=>{let u=a.crosshair;if(!u.context)return;let g=u.context;g.clearRect(0,0,s,i),e$1.crosshairVisible&&(g.strokeStyle=E,g.lineWidth=1,g.beginPath(),g.moveTo(d.x,0),g.lineTo(d.x,i),g.moveTo(0,d.y),g.lineTo(s,d.y),g.stroke());},Ee=()=>{let u=a.drag;if(!u.context)return;let g=u.context;if(g.clearRect(0,0,s,i),!e$1.dragVisible||!B)return;let h=Ge.drag;re(g,B.current.x,B.current.y,B.current.width,B.current.height,B.borderRadius,h.fillColor,h.borderColor);},Ie=()=>{let u=a.selection;if(!u.context)return;let g=u.context;if(g.clearRect(0,0,s,i),!e$1.selectionVisible)return;let h=Ge.selection;for(let b of N){let E=e$1.selectionIsFading?0:b.opacity;re(g,b.current.x,b.current.y,b.current.width,b.current.height,b.borderRadius,h.fillColor,h.borderColor,E);}},xe=()=>{let u=a.grabbed;if(!u.context)return;let g=u.context;g.clearRect(0,0,s,i);let h=Ge.grabbed;for(let b of v)re(g,b.current.x,b.current.y,b.current.width,b.current.height,b.borderRadius,h.fillColor,h.borderColor,b.opacity);},Te=()=>{let u=a.processing;if(!u.context)return;let g=u.context;g.clearRect(0,0,s,i);let h=Ge.processing;for(let b of p)re(g,b.current.x,b.current.y,b.current.width,b.current.height,b.borderRadius,h.fillColor,h.borderColor,b.opacity);},I=()=>{if(!n||!t)return;n.setTransform(1,0,0,1,0,0),n.clearRect(0,0,t.width,t.height),n.setTransform(l$1,0,0,l$1,0,0),Se(),Ee(),Ie(),xe(),Te();let u=["crosshair","drag","selection","grabbed","processing"];for(let g of u){let h=a[g];h.canvas&&n.drawImage(h.canvas,0,0,s,i);}},P=(u,g,h)=>{let b=Ve(u.current.x,u.target.x,g),E=Ve(u.current.y,u.target.y,g),x=Ve(u.current.width,u.target.width,g),R=Ve(u.current.height,u.target.height,g),O=Math.abs(b-u.target.x)<.5&&Math.abs(E-u.target.y)<.5&&Math.abs(x-u.target.width)<.5&&Math.abs(R-u.target.height)<.5;u.current.x=O?u.target.x:b,u.current.y=O?u.target.y:E,u.current.width=O?u.target.width:x,u.current.height=O?u.target.height:R;let A=true;if(h?.interpolateOpacity){let L=Ve(u.opacity,u.targetOpacity,g);A=Math.abs(L-u.targetOpacity)<.01,u.opacity=A?u.targetOpacity:L;}return !O||!A},w=()=>{let u=false;if(e$1.crosshairVisible){let h=Ve(d.x,m.x,.3),b=Ve(d.y,m.y,.3),E=Math.abs(h-m.x)<.5,x=Math.abs(b-m.y)<.5;d.x=E?m.x:h,d.y=x?m.y:b,(!E||!x)&&(u=true);}B?.isInitialized&&P(B,Ge.drag.lerpFactor)&&(u=true);for(let h of N)h.isInitialized&&P(h,Ge.selection.lerpFactor)&&(u=true);let g=Date.now();v=v.filter(h=>{let b=h.id.startsWith("label-");if(h.isInitialized&&P(h,Ge.grabbed.lerpFactor,{interpolateOpacity:b})&&(u=true),h.createdAt){let E=g-h.createdAt,x=1600;if(E>=x)return false;if(E>1500){let R=(E-1500)/100;h.opacity=1-R,u=true;}return true}return b?!(Math.abs(h.opacity-h.targetOpacity)<.01&&h.targetOpacity===0):h.opacity>0});for(let h of p)h.isInitialized&&P(h,Ge.processing.lerpFactor)&&(u=true);I(),u?o=requestAnimationFrame(w):o=null;},M=()=>{o===null&&(o=requestAnimationFrame(w));},F=()=>{_(),M();};return f(j(()=>[e$1.mouseX,e$1.mouseY],([u,g])=>{let h=u??0,b=g??0;S||(d.x=h,d.y=b,S=true),m.x=h,m.y=b,M();})),f(j(()=>e$1.crosshairVisible,u=>{u?(d.x=m.x,d.y=m.y,S=true):S=false,M();})),f(j(()=>[e$1.selectionVisible,e$1.selectionBounds,e$1.selectionBoundsMultiple,e$1.selectionIsFading,e$1.selectionShouldSnap],([u,g,h,,b])=>{if(!u||!g&&(!h||h.length===0)){N=[],M();return}N=(h&&h.length>0?h:g?[g]:[]).map((x,R)=>{let O=`selection-${R}`,A=N.find(L=>L.id===O);return A?(oe(A,x),b&&(A.current={...A.target}),A):U(O,x)}),M();})),f(j(()=>[e$1.dragVisible,e$1.dragBounds],([u,g])=>{if(!u||!g){B=null,M();return}B?oe(B,g):B=U("drag",g),M();})),f(j(()=>e$1.grabbedBoxes,u=>{let g=u??[],h=new Set(g.map(E=>E.id)),b=new Set(v.map(E=>E.id));for(let E of g)b.has(E.id)||v.push(U(E.id,E.bounds,{createdAt:E.createdAt}));for(let E of v){let x=g.find(R=>R.id===E.id);x&&oe(E,x.bounds);}v=v.filter(E=>E.id.startsWith("label-")?true:h.has(E.id)),M();})),f(j(()=>e$1.agentSessions,u=>{if(!u||u.size===0){p=[],M();return}let g=[];for(let[h,b]of u)for(let E=0;E<b.selectionBounds.length;E++){let x=b.selectionBounds[E],R=`processing-${h}-${E}`,O=p.find(A=>A.id===R);O?(oe(O,x),g.push(O)):g.push(U(R,x));}p=g,M();})),f(j(()=>e$1.labelInstances,u=>{let g=u??[];for(let b of g){let E=ue(b),x=b.status==="fading"?0:1;for(let R=0;R<E.length;R++){let O=E[R],A=`label-${b.id}-${R}`,L=v.find(K=>K.id===A);L?oe(L,O,x):v.push(U(A,O,{opacity:1,targetOpacity:x}));}}let h=new Set;for(let b of g){let E=ue(b);for(let x=0;x<E.length;x++)h.add(`label-${b.id}-${x}`);}v=v.filter(b=>b.id.startsWith("label-")?h.has(b.id):true),M();})),k(()=>{_(),M(),window.addEventListener("resize",F);let u=null,g=()=>{Math.max(window.devicePixelRatio||1,2)!==l$1&&(F(),h());},h=()=>{u&&u.removeEventListener("change",g),u=window.matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`),u.addEventListener("change",g);};h(),l(()=>{window.removeEventListener("resize",F),u&&u.removeEventListener("change",g),o!==null&&cancelAnimationFrame(o);});}),(()=>{var u=zi(),g=t;return typeof g=="function"?A(g,u):t=u,e(h=>z(u,"z-index",String(2147483645))),u})()};var Lr="react-grab-toolbar-state",Ft=()=>{try{let e=localStorage.getItem(Lr);if(!e)return null;let t=JSON.parse(e);return {edge:t.edge??"bottom",ratio:t.ratio??.5,collapsed:t.collapsed??!1,enabled:t.enabled??!0}}catch{}return null},xt=e=>{try{localStorage.setItem(Lr,JSON.stringify(e));}catch{}};var Ki=t('<div data-react-grab-ignore-events data-react-grab-toolbar style=z-index:2147483647><div><div><button data-react-grab-ignore-events data-react-grab-toolbar-toggle class="contain-layout shrink-0 flex items-center justify-center cursor-pointer transition-all hover:scale-105"></button><button data-react-grab-ignore-events data-react-grab-toolbar-enabled class="contain-layout shrink-0 flex items-center justify-center cursor-pointer transition-all hover:scale-105 outline-none mx-0.5"><div><div></div></div></button></div><button data-react-grab-ignore-events data-react-grab-toolbar-collapse class="contain-layout shrink-0 flex items-center justify-center cursor-pointer transition-all hover:scale-105">'),kr=e$1=>{let t,[n$1,s]=d(window.innerWidth<R),[i,l$1]=d(false),[o,a]=d(false),[d$1,m]=d(false),[S$1,N]=d(false),[B$1,v]=d(false),[p,y]=d("bottom"),[_,$]=d(.5),[U$1,oe]=d({x:0,y:0}),[ue,re]=d({x:0,y:0}),[Se,Ee]=d({x:0,y:0}),[Ie,xe]=d(false),Te={x:0,y:0,time:0},I={x:0,y:0},P=(D,k,V,j)=>{let G=window.innerWidth,fe=window.innerHeight,be=Q,pe=Math.max(Q,G-V-Q),we=Q,te=Math.max(Q,fe-j-Q);if(D==="top"||D==="bottom"){let Ne=Math.max(0,G-V-Q*2);return {x:Math.min(pe,Math.max(be,Q+Ne*k)),y:D==="top"?we:te}}let Me=Math.max(0,fe-j-Q*2),_e=Math.min(te,Math.max(we,Q+Me*k));return {x:D==="left"?be:pe,y:_e}},w$1=(D,k,V,j,G)=>{let fe=window.innerWidth,be=window.innerHeight;if(D==="top"||D==="bottom"){let we=fe-j-Q*2;return we<=0?.5:Math.max(0,Math.min(1,(k-Q)/we))}let pe=be-G-Q*2;return pe<=0?.5:Math.max(0,Math.min(1,(V-Q)/pe))},M=()=>{let D=t?.getBoundingClientRect();if(!D)return;let k=P(p(),_(),D.width,D.height);oe(k);},F=false,u=D=>k=>{if(k.stopPropagation(),k.stopImmediatePropagation(),F){F=false;return}D();},g=u(()=>e$1.onToggle?.()),h=u(()=>{a(D=>{let k=!D;return xt({edge:p(),ratio:_(),collapsed:k,enabled:e$1.enabled??true}),k});}),b=u(()=>e$1.onToggleEnabled?.()),E=(D,k,V$1,j,G,fe)=>{let be=window.innerWidth,pe=window.innerHeight,we=D+G*V,te=k+fe*V,Me=te+j/2,_e=pe-te-j/2,Re=we+V$1/2,Ne=be-we-V$1/2,Be=Math.min(Me,_e,Re,Ne);return Be===Me?{edge:"top",x:Math.max(Q,Math.min(we,be-V$1-Q)),y:Q}:Be===Re?{edge:"left",x:Q,y:Math.max(Q,Math.min(te,pe-j-Q))}:Be===Ne?{edge:"right",x:be-V$1-Q,y:Math.max(Q,Math.min(te,pe-j-Q))}:{edge:"bottom",x:Math.max(Q,Math.min(we,be-V$1-Q)),y:pe-j-Q}},x$1=D=>{if(o())return;let k=t?.getBoundingClientRect();k&&(I={x:D.clientX,y:D.clientY},re({x:D.clientX-k.left,y:D.clientY-k.top}),m(true),xe(false),Ee({x:0,y:0}),Te={x:D.clientX,y:D.clientY,time:performance.now()},D.target.setPointerCapture(D.pointerId));},R$1=D=>{if(!d$1()||(Math.sqrt(Math.pow(D.clientX-I.x,2)+Math.pow(D.clientY-I.y,2))>U&&xe(true),!Ie()))return;let V=performance.now(),j=V-Te.time;if(j>0){let be=(D.clientX-Te.x)/j,pe=(D.clientY-Te.y)/j;Ee({x:be,y:pe});}Te={x:D.clientX,y:D.clientY,time:V};let G=D.clientX-ue().x,fe=D.clientY-ue().y;oe({x:G,y:fe});},O=()=>{if(!d$1())return;let D=Ie();if(m(false),!D)return;F=true;let k=t?.getBoundingClientRect();if(!k)return;let V=Se(),j=E(U$1().x,U$1().y,k.width,k.height,V.x,V.y),G=w$1(j.edge,j.x,j.y,k.width,k.height);y(j.edge),$(G),N(true),requestAnimationFrame(()=>{requestAnimationFrame(()=>{oe({x:j.x,y:j.y}),xt({edge:j.edge,ratio:G,collapsed:o(),enabled:e$1.enabled??true}),setTimeout(()=>{N(false);},T);});});},A$1=()=>{let D=p(),k=U$1();switch(D){case "top":return {x:k.x,y:0};case "bottom":return {x:k.x,y:window.innerHeight-X};case "left":return {x:0,y:k.y};case "right":return {x:window.innerWidth-W,y:k.y};default:return k}},L=()=>{let D=p(),k=o();switch(D){case "top":return k?"rotate-180":"rotate-0";case "bottom":return k?"rotate-0":"rotate-180";case "left":return k?"rotate-90":"-rotate-90";case "right":return k?"-rotate-90":"rotate-90";default:return "rotate-0"}},K,ce=()=>{s(window.innerWidth<R),!d$1()&&(v(true),l$1(false),M(),K&&clearTimeout(K),K=setTimeout(()=>{l$1(true),v(false);},S));};k(()=>{let D=Ft(),k=t?.getBoundingClientRect();if(D&&k){y(D.edge),$(D.ratio),a(D.collapsed);let j=P(D.edge,D.ratio,k.width,k.height);oe(j);}else k&&(oe({x:(window.innerWidth-k.width)/2,y:window.innerHeight-k.height-Q}),$(.5));window.addEventListener("resize",ce),window.visualViewport?.addEventListener("resize",ce);let V=setTimeout(()=>{l$1(true);},S);l(()=>{clearTimeout(V);});}),l(()=>{window.removeEventListener("resize",ce),window.visualViewport?.removeEventListener("resize",ce),K&&clearTimeout(K);});let de=()=>o()?A$1():U$1(),q$1=()=>o()?"cursor-pointer":d$1()?"cursor-grabbing":"cursor-grab",se=()=>B$1()?"":S$1()?"transition-[transform,opacity] duration-300 ease-out":"transition-opacity duration-300 ease-out";return n(q,{get when(){return !n$1()},get children(){var D=Ki(),k=D.firstChild,V=k.firstChild,j=V.firstChild,G=j.nextSibling,fe=G.firstChild,be=fe.firstChild,pe=V.nextSibling;D.$$pointerup=O,D.$$pointermove=R$1,D.$$pointerdown=x$1;var we=t;return typeof we=="function"?A(we,D):t=D,k.$$click=te=>{o()&&(te.stopPropagation(),a(false),xt({edge:p(),ratio:_(),collapsed:false,enabled:e$1.enabled??true}));},x(j,"click",g,true),B(j,n(ka$1,{size:14,get class(){return ga$1("transition-colors",e$1.isActive?"text-black":"text-black/70")}})),x(G,"click",b,true),x(pe,"click",h,true),B(pe,n(la$1,{get class(){return ga$1("text-[#B3B3B3] transition-transform duration-100",L())}})),e(te=>{var Me=ga$1("fixed left-0 top-0 font-sans text-[13px] antialiased filter-[drop-shadow(0px_0px_4px_#51515180)] select-none",q$1(),se(),i()?"opacity-100":"opacity-0 pointer-events-none"),_e=`translate(${de().x}px, ${de().y}px)`,Re=ga$1("[font-synthesis:none] contain-layout flex items-center justify-center rounded-sm bg-white antialiased transition-all duration-100 ease-out",o()?"":"gap-1.5 px-2 py-1.5",o()&&p()==="top"&&"rounded-t-none",o()&&p()==="bottom"&&"rounded-b-none",o()&&p()==="left"&&"rounded-l-none",o()&&p()==="right"&&"rounded-r-none",o()&&(p()==="top"||p()==="bottom")&&"px-2 py-0.25",o()&&(p()==="left"||p()==="right")&&"px-0.25 py-2"),Ne=ga$1("flex items-center gap-1.5 transition-all duration-100 ease-out overflow-hidden",o()?"max-w-0 opacity-0":"max-w-[200px] opacity-100"),Be=ga$1("relative w-5 h-3 rounded-full transition-colors",e$1.enabled?"bg-black":"bg-black/25"),Ze=ga$1("absolute top-0.5 w-2 h-2 rounded-full bg-white transition-transform",e$1.enabled?"left-2.5":"left-0.5");return Me!==te.e&&w(D,te.e=Me),_e!==te.t&&z(D,"transform",te.t=_e),Re!==te.a&&w(k,te.a=Re),Ne!==te.o&&w(V,te.o=Ne),Be!==te.i&&w(fe,te.i=Be),Ze!==te.n&&w(be,te.n=Ze),te},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0,n:void 0}),D}})};u(["pointerdown","pointermove","pointerup","click"]);var Hr=e=>[n(Br,{get crosshairVisible(){return e.crosshairVisible},get mouseX(){return e.mouseX},get mouseY(){return e.mouseY},get selectionVisible(){return e.selectionVisible},get selectionBounds(){return e.selectionBounds},get selectionBoundsMultiple(){return e.selectionBoundsMultiple},get selectionShouldSnap(){return e.selectionShouldSnap},get selectionIsFading(){return e.selectionLabelStatus==="fading"},get dragVisible(){return e.dragVisible},get dragBounds(){return e.dragBounds},get grabbedBoxes(){return e.grabbedBoxes},get agentSessions(){return e.agentSessions},get labelInstances(){return e.labelInstances}}),n(p,{get each(){return r(()=>!!e.agentSessions)()?Array.from(e.agentSessions.values()):[]},children:t=>n(q,{get when(){return t().selectionBounds.length>0},get children(){return n(ha$1,{get tagName(){return t().tagName},get componentName(){return t().componentName},get selectionBounds(){return t().selectionBounds[0]},get mouseX(){return t().position.x},visible:true,hasAgent:true,isAgentConnected:true,get status(){return t().isFading?"fading":t().isStreaming?"copying":"copied"},get statusText(){return t().lastStatus||"Thinking\u2026"},get inputValue(){return t().context.prompt},get previousPrompt(){return t().context.prompt},get supportsUndo(){return e.supportsUndo},get supportsFollowUp(){return e.supportsFollowUp},get dismissButtonText(){return e.dismissButtonText},onAbort:()=>e.onRequestAbortSession?.(t().id),get onDismiss(){return t().isStreaming?void 0:()=>e.onDismissSession?.(t().id)},get onUndo(){return t().isStreaming?void 0:()=>e.onUndoSession?.(t().id)},get onFollowUpSubmit(){return t().isStreaming?void 0:n=>e.onFollowUpSubmitSession?.(t().id,n)},get error(){return t().error},onAcknowledgeError:()=>e.onAcknowledgeSessionError?.(t().id),onRetry:()=>e.onRetrySession?.(t().id),get isPendingAbort(){return r(()=>!!t().isStreaming)()&&e.pendingAbortSessionId===t().id},onConfirmAbort:()=>e.onAbortSession?.(t().id,true),onCancelAbort:()=>e.onAbortSession?.(t().id,false),onShowContextMenu:void 0})}})}),n(q,{get when(){return r(()=>!!e.selectionLabelVisible)()&&e.selectionBounds},get children(){return n(ha$1,{get tagName(){return e.selectionTagName},get componentName(){return e.selectionComponentName},get elementsCount(){return e.selectionElementsCount},get selectionBounds(){return e.selectionBounds},get mouseX(){return e.mouseX},get visible(){return e.selectionLabelVisible},get isPromptMode(){return e.isPromptMode},get inputValue(){return e.inputValue},get replyToPrompt(){return e.replyToPrompt},get hasAgent(){return e.hasAgent},get isAgentConnected(){return e.isAgentConnected},get status(){return e.selectionLabelStatus},get filePath(){return e.selectionFilePath},get lineNumber(){return e.selectionLineNumber},get onInputChange(){return e.onInputChange},get onSubmit(){return e.onInputSubmit},get onCancel(){return e.onInputCancel},get onToggleExpand(){return e.onToggleExpand},get isPendingDismiss(){return e.isPendingDismiss},get onConfirmDismiss(){return e.onConfirmDismiss},get onCancelDismiss(){return e.onCancelDismiss},onOpen:()=>{if(e.selectionFilePath){let t=_t(e.selectionFilePath,e.selectionLineNumber);window.open(t,"_blank");}},get isContextMenuOpen(){return e.contextMenuPosition!==null}})}}),n(p,{get each(){return e.labelInstances??[]},children:t=>n(ha$1,{get tagName(){return t().tagName},get componentName(){return t().componentName},get selectionBounds(){return t().bounds},get mouseX(){return t().mouseX},visible:true,get status(){return t().status},get error(){return t().errorMessage},get onShowContextMenu(){return (t().status==="copied"||t().status==="fading")&&t().element&&(document.body??document.documentElement).contains(t().element)?()=>e.onShowContextMenuInstance?.(t().id):void 0}})}),n(q,{get when(){return e.toolbarVisible!==false},get children(){return n(kr,{get isActive(){return e.isActive},get onToggle(){return e.onToggleActive},get enabled(){return e.enabled},get onToggleEnabled(){return e.onToggleEnabled}})}}),n(ja$1,{get position(){return e.contextMenuPosition??null},get selectionBounds(){return e.contextMenuBounds??null},get tagName(){return e.contextMenuTagName},get componentName(){return e.contextMenuComponentName},get hasFilePath(){return e.contextMenuHasFilePath??false},get actions(){return e.actions},get actionContext(){return e.actionContext},get onCopy(){return e.onContextMenuCopy??(()=>{})},get onCopyScreenshot(){return e.onContextMenuCopyScreenshot??(()=>{})},get onCopyHtml(){return e.onContextMenuCopyHtml??(()=>{})},get onOpen(){return e.onContextMenuOpen??(()=>{})},get onDismiss(){return e.onContextMenuDismiss??(()=>{})},get onHide(){return e.onContextMenuHide??(()=>{})}})];var Kr="0.5.28",pn=`bippy-${Kr}`,$r=Object.defineProperty,ji=Object.prototype.hasOwnProperty,Bt=()=>{},jr=e=>{try{Function.prototype.toString.call(e).indexOf("^_^")>-1&&setTimeout(()=>{throw Error("React is running in production mode, but dead code elimination has not been applied. Read how to correctly configure React for production: https://reactjs.org/link/perf-use-production-build")});}catch{}},hn=(e=ke())=>"getFiberRoots"in e,Ur=false,zr,Lt=(e=ke())=>Ur?true:(typeof e.inject=="function"&&(zr=e.inject.toString()),!!zr?.includes("(injected)")),mn=new Set,ot=new Set,Vr=e=>{let t=new Map,n=0,s={_instrumentationIsActive:false,_instrumentationSource:pn,checkDCE:jr,hasUnsupportedRendererAttached:false,inject(i){let l=++n;return t.set(l,i),ot.add(i),s._instrumentationIsActive||(s._instrumentationIsActive=true,mn.forEach(o=>o())),l},on:Bt,onCommitFiberRoot:Bt,onCommitFiberUnmount:Bt,onPostCommitFiberRoot:Bt,renderers:t,supportsFiber:true,supportsFlight:true};try{$r(globalThis,"__REACT_DEVTOOLS_GLOBAL_HOOK__",{configurable:!0,enumerable:!0,get(){return s},set(o){if(o&&typeof o=="object"){let a=s.renderers;s=o,a.size>0&&(a.forEach((d,m)=>{ot.add(d),o.renderers.set(m,d);}),gn(e));}}});let i=window.hasOwnProperty,l=!1;$r(window,"hasOwnProperty",{configurable:!0,value:function(...o){try{if(!l&&o[0]==="__REACT_DEVTOOLS_GLOBAL_HOOK__")return globalThis.__REACT_DEVTOOLS_GLOBAL_HOOK__=void 0,l=!0,-0}catch{}return i.apply(this,o)},writable:!0});}catch{gn(e);}return s},gn=e=>{try{let t=globalThis.__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!t)return;if(!t._instrumentationSource){t.checkDCE=jr,t.supportsFiber=!0,t.supportsFlight=!0,t.hasUnsupportedRendererAttached=!1,t._instrumentationSource=pn,t._instrumentationIsActive=!1;let n=hn(t);if(n||(t.on=Bt),t.renderers.size){t._instrumentationIsActive=!0,mn.forEach(l=>l());return}let s=t.inject,i=Lt(t);i&&!n&&(Ur=!0,t.inject({scheduleRefresh(){}})&&(t._instrumentationIsActive=!0)),t.inject=l=>{let o=s(l);return ot.add(l),i&&t.renderers.set(o,l),t._instrumentationIsActive=!0,mn.forEach(a=>a()),o};}(t.renderers.size||t._instrumentationIsActive||Lt())&&e?.();}catch{}},ao=()=>ji.call(globalThis,"__REACT_DEVTOOLS_GLOBAL_HOOK__"),ke=e=>ao()?(gn(e),globalThis.__REACT_DEVTOOLS_GLOBAL_HOOK__):Vr(e),Gr=()=>!!(typeof window<"u"&&(window.document?.createElement||window.navigator?.product==="ReactNative")),lo=()=>{try{Gr()&&ke();}catch{}};var bn=0,yn=1;var co=5;var Sn=11,uo=13,Xr=14,En=15,fo=16;var mo=19;var go=26,po=27,ho=28,bo=30;var wn=e=>{switch(e.tag){case yn:case Sn:case bn:case Xr:case En:return true;default:return false}};function kt(e,t,n=false){if(!e)return null;let s=t(e);if(s instanceof Promise)return (async()=>{if(await s===true)return e;let l=n?e.return:e.child;for(;l;){let o=await So(l,t,n);if(o)return o;l=n?null:l.sibling;}return null})();if(s===true)return e;let i=n?e.return:e.child;for(;i;){let l=yo(i,t,n);if(l)return l;i=n?null:i.sibling;}return null}var yo=(e,t,n=false)=>{if(!e)return null;if(t(e)===true)return e;let s=n?e.return:e.child;for(;s;){let i=yo(s,t,n);if(i)return i;s=n?null:s.sibling;}return null},So=async(e,t,n=false)=>{if(!e)return null;if(await t(e)===true)return e;let s=n?e.return:e.child;for(;s;){let i=await So(s,t,n);if(i)return i;s=n?null:s.sibling;}return null};var Eo=e=>{let t=e;return typeof t=="function"?t:typeof t=="object"&&t?Eo(t.type||t.render):null},Xe=e=>{let t=e;if(typeof t=="string")return t;if(typeof t!="function"&&!(typeof t=="object"&&t))return null;let n=t.displayName||t.name||null;if(n)return n;let s=Eo(t);return s&&(s.displayName||s.name)||null};var rt=()=>!!ke()._instrumentationIsActive||hn()||Lt();var Ht=e=>{let t=ke();for(let n of t.renderers.values())try{let s=n.findFiberByHostInstance?.(e);if(s)return s}catch{}if(typeof e=="object"&&e){if("_reactRootContainer"in e)return e._reactRootContainer?._internalRoot?.current?.child;for(let n in e)if(n.startsWith("__reactContainer$")||n.startsWith("__reactInternalInstance$")||n.startsWith("__reactFiber"))return e[n]||null}return null};var Zi=Object.create,ts=Object.defineProperty,Qi=Object.getOwnPropertyDescriptor,ea=Object.getOwnPropertyNames,ta=Object.getPrototypeOf,na=Object.prototype.hasOwnProperty,oa=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ra=(e,t,n,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(var i=ea(t),l=0,o=i.length,a;l<o;l++)a=i[l],!na.call(e,a)&&a!==n&&ts(e,a,{get:(d=>t[d]).bind(null,a),enumerable:!(s=Qi(t,a))||s.enumerable});return e},sa=(e,t,n)=>(n=e==null?{}:Zi(ta(e)),ra(ts(n,"default",{value:e,enumerable:true}),e)),Yr=/^[a-zA-Z][a-zA-Z\d+\-.]*:/,ia=["rsc://","file:///","webpack://","webpack-internal://","node:","turbopack://","metro://","/app-pages-browser/"],Wr="about://React/",aa=["<anonymous>","eval",""],la=/\.(jsx|tsx|ts|js)$/,ca=/(\.min|bundle|chunk|vendor|vendors|runtime|polyfill|polyfills)\.(js|mjs|cjs)$|(chunk|bundle|vendor|vendors|runtime|polyfill|polyfills|framework|app|main|index)[-_.][A-Za-z0-9_-]{4,}\.(js|mjs|cjs)$|[\da-f]{8,}\.(js|mjs|cjs)$|[-_.][\da-f]{20,}\.(js|mjs|cjs)$|\/dist\/|\/build\/|\/.next\/|\/out\/|\/node_modules\/|\.webpack\.|\.vite\.|\.turbopack\./i,ua=/^\?[\w~.\-]+(?:=[^&#]*)?(?:&[\w~.\-]+(?:=[^&#]*)?)*$/,ns="(at Server)",da=/(^|@)\S+:\d+/,os=/^\s*at .*(\S+:\d+|\(native\))/m,fa=/^(eval@)?(\[native code\])?$/;var rs=(e,t)=>{{let n=e.split(`
10
+ `),s=[];for(let i of n)if(/^\s*at\s+/.test(i)){let l=qr(i,void 0)[0];l&&s.push(l);}else if(/^\s*in\s+/.test(i)){let l=i.replace(/^\s*in\s+/,"").replace(/\s*\(at .*\)$/,"");s.push({functionName:l,source:i});}else if(i.match(da)){let l=Jr(i,void 0)[0];l&&s.push(l);}return vo(s,t)}},ss=e=>{if(!e.includes(":"))return [e,void 0,void 0];let t=e.startsWith("(")&&/:\d+\)$/.test(e),n=t?e.slice(1,-1):e,s=/(.+?)(?::(\d+))?(?::(\d+))?$/,i=s.exec(n);return i?[i[1],i[2]||void 0,i[3]||void 0]:[n,void 0,void 0]},vo=(e,t)=>t&&t.slice!=null?Array.isArray(t.slice)?e.slice(t.slice[0],t.slice[1]):e.slice(0,t.slice):e;var qr=(e,t)=>vo(e.split(`
11
+ `).filter(s=>!!s.match(os)),t).map(s=>{let i=s;i.includes("(eval ")&&(i=i.replace(/eval code/g,"eval").replace(/(\(eval at [^()]*)|(,.*$)/g,""));let l=i.replace(/^\s+/,"").replace(/\(eval code/g,"(").replace(/^.*?\s+/,""),o=l.match(/ (\(.+\)$)/);l=o?l.replace(o[0],""):l;let a=ss(o?o[1]:l),d=o&&l||void 0,m=["eval","<anonymous>"].includes(a[0])?void 0:a[0];return {functionName:d,fileName:m,lineNumber:a[1]?+a[1]:void 0,columnNumber:a[2]?+a[2]:void 0,source:i}});var Jr=(e,t)=>vo(e.split(`
12
+ `).filter(s=>!s.match(fa)),t).map(s=>{let i=s;if(i.includes(" > eval")&&(i=i.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,":$1")),!i.includes("@")&&!i.includes(":"))return {functionName:i};{let l=/(([^\n\r"\u2028\u2029]*".[^\n\r"\u2028\u2029]*"[^\n\r@\u2028\u2029]*(?:@[^\n\r"\u2028\u2029]*"[^\n\r@\u2028\u2029]*)*(?:[\n\r\u2028\u2029][^@]*)?)?[^@]*)@/,o=i.match(l),a=o&&o[1]?o[1]:void 0,d=ss(i.replace(l,""));return {functionName:a,fileName:d[0],lineNumber:d[1]?+d[1]:void 0,columnNumber:d[2]?+d[2]:void 0,source:i}}});var ma=oa((e,t)=>{(function(n,s){typeof e=="object"&&t!==void 0?s(e):typeof define=="function"&&define.amd?define(["exports"],s):(n=typeof globalThis<"u"?globalThis:n||self,s(n.sourcemapCodec={}));})(void 0,function(n){let s=44,i=59,l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=new Uint8Array(64),a=new Uint8Array(128);for(let I=0;I<l.length;I++){let P=l.charCodeAt(I);o[I]=P,a[P]=I;}function d(I,P){let w=0,M=0,F=0;do{let g=I.next();F=a[g],w|=(F&31)<<M,M+=5;}while(F&32);let u=w&1;return w>>>=1,u&&(w=-2147483648|-w),P+w}function m(I,P,w){let M=P-w;M=M<0?-M<<1|1:M<<1;do{let F=M&31;M>>>=5,M>0&&(F|=32),I.write(o[F]);}while(M>0);return P}function S(I,P){return I.pos>=P?false:I.peek()!==s}let N=1024*16,B=typeof TextDecoder<"u"?new TextDecoder:typeof Buffer<"u"?{decode(I){return Buffer.from(I.buffer,I.byteOffset,I.byteLength).toString()}}:{decode(I){let P="";for(let w=0;w<I.length;w++)P+=String.fromCharCode(I[w]);return P}};class v{constructor(){this.pos=0,this.out="",this.buffer=new Uint8Array(N);}write(P){let{buffer:w}=this;w[this.pos++]=P,this.pos===N&&(this.out+=B.decode(w),this.pos=0);}flush(){let{buffer:P,out:w,pos:M}=this;return M>0?w+B.decode(P.subarray(0,M)):w}}class p{constructor(P){this.pos=0,this.buffer=P;}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(P){let{buffer:w,pos:M}=this,F=w.indexOf(P,M);return F===-1?w.length:F}}let y=[];function _(I){let{length:P}=I,w=new p(I),M=[],F=[],u=0;for(;w.pos<P;w.pos++){u=d(w,u);let g=d(w,0);if(!S(w,P)){let O=F.pop();O[2]=u,O[3]=g;continue}let h=d(w,0),b=d(w,0),E=b&1,x=E?[u,g,0,0,h,d(w,0)]:[u,g,0,0,h],R=y;if(S(w,P)){R=[];do{let O=d(w,0);R.push(O);}while(S(w,P))}x.vars=R,M.push(x),F.push(x);}return M}function $(I){let P=new v;for(let w=0;w<I.length;)w=U(I,w,P,[0]);return P.flush()}function U(I,P,w,M){let F=I[P],{0:u,1:g,2:h,3:b,4:E,vars:x}=F;P>0&&w.write(s),M[0]=m(w,u,M[0]),m(w,g,0),m(w,E,0);let R=F.length===6?1:0;m(w,R,0),F.length===6&&m(w,F[5],0);for(let O of x)m(w,O,0);for(P++;P<I.length;){let O=I[P],{0:A,1:L}=O;if(A>h||A===h&&L>=b)break;P=U(I,P,w,M);}return w.write(s),M[0]=m(w,h,M[0]),m(w,b,0),P}function oe(I){let{length:P}=I,w=new p(I),M=[],F=[],u=0,g=0,h=0,b=0,E=0,x=0,R=0,O=0;do{let A=w.indexOf(";"),L=0;for(;w.pos<A;w.pos++){if(L=d(w,L),!S(w,A)){let V=F.pop();V[2]=u,V[3]=L;continue}let K=d(w,0),ce=K&1,de=K&2,q=K&4,se=null,D=y,k;if(ce){let V=d(w,g);h=d(w,g===V?h:0),g=V,k=[u,L,0,0,V,h];}else k=[u,L,0,0];if(k.isScope=!!q,de){let V=b,j=E;b=d(w,b);let G=V===b;E=d(w,G?E:0),x=d(w,G&&j===E?x:0),se=[b,E,x];}if(k.callsite=se,S(w,A)){D=[];do{R=u,O=L;let V=d(w,0),j;if(V<-1){j=[[d(w,0)]];for(let G=-1;G>V;G--){let fe=R;R=d(w,R),O=d(w,R===fe?O:0);let be=d(w,0);j.push([be,R,O]);}}else j=[[V]];D.push(j);}while(S(w,A))}k.bindings=D,M.push(k),F.push(k);}u++,w.pos=A+1;}while(w.pos<P);return M}function ue(I){if(I.length===0)return "";let P=new v;for(let w=0;w<I.length;)w=re(I,w,P,[0,0,0,0,0,0,0]);return P.flush()}function re(I,P,w,M){let F=I[P],{0:u,1:g,2:h,3:b,isScope:E,callsite:x,bindings:R}=F;M[0]<u?(Se(w,M[0],u),M[0]=u,M[1]=0):P>0&&w.write(s),M[1]=m(w,F[1],M[1]);let O=(F.length===6?1:0)|(x?2:0)|(E?4:0);if(m(w,O,0),F.length===6){let{4:A,5:L}=F;A!==M[2]&&(M[3]=0),M[2]=m(w,A,M[2]),M[3]=m(w,L,M[3]);}if(x){let{0:A,1:L,2:K}=F.callsite;A===M[4]?L!==M[5]&&(M[6]=0):(M[5]=0,M[6]=0),M[4]=m(w,A,M[4]),M[5]=m(w,L,M[5]),M[6]=m(w,K,M[6]);}if(R)for(let A of R){A.length>1&&m(w,-A.length,0);let L=A[0][0];m(w,L,0);let K=u,ce=g;for(let de=1;de<A.length;de++){let q=A[de];K=m(w,q[1],K),ce=m(w,q[2],ce),m(w,q[0],0);}}for(P++;P<I.length;){let A=I[P],{0:L,1:K}=A;if(L>h||L===h&&K>=b)break;P=re(I,P,w,M);}return M[0]<h?(Se(w,M[0],h),M[0]=h,M[1]=0):w.write(s),M[1]=m(w,b,M[1]),P}function Se(I,P,w){do I.write(i);while(++P<w)}function Ee(I){let{length:P}=I,w=new p(I),M=[],F=0,u=0,g=0,h=0,b=0;do{let E=w.indexOf(";"),x=[],R=true,O=0;for(F=0;w.pos<E;){let A;F=d(w,F),F<O&&(R=false),O=F,S(w,E)?(u=d(w,u),g=d(w,g),h=d(w,h),S(w,E)?(b=d(w,b),A=[F,u,g,h,b]):A=[F,u,g,h]):A=[F],x.push(A),w.pos++;}R||Ie(x),M.push(x),w.pos=E+1;}while(w.pos<=P);return M}function Ie(I){I.sort(xe);}function xe(I,P){return I[0]-P[0]}function Te(I){let P=new v,w=0,M=0,F=0,u=0;for(let g=0;g<I.length;g++){let h=I[g];if(g>0&&P.write(i),h.length===0)continue;let b=0;for(let E=0;E<h.length;E++){let x=h[E];E>0&&P.write(s),b=m(P,x[0],b),x.length!==1&&(w=m(P,x[1],w),M=m(P,x[2],M),F=m(P,x[3],F),x.length!==4&&(u=m(P,x[4],u)));}}return P.flush()}n.decode=Ee,n.decodeGeneratedRanges=oe,n.decodeOriginalScopes=_,n.encode=Te,n.encodeGeneratedRanges=ue,n.encodeOriginalScopes=$,Object.defineProperty(n,"__esModule",{value:true});});}),is=sa(ma()),as=/^[a-zA-Z][a-zA-Z\d+\-.]*:/,ga=/^data:application\/json[^,]+base64,/,pa=/(?:\/\/[@#][ \t]+sourceMappingURL=([^\s'"]+?)[ \t]*$)|(?:\/\*[@#][ \t]+sourceMappingURL=([^*]+?)[ \t]*(?:\*\/)[ \t]*$)/,ls=typeof WeakRef<"u",$t=new Map,xn=new Map,ha=e=>ls&&e instanceof WeakRef,Zr=(e,t,n,s)=>{if(n<0||n>=e.length)return null;let i=e[n];if(!i||i.length===0)return null;let l=null;for(let S of i)if(S[0]<=s)l=S;else break;if(!l||l.length<4)return null;let[,o,a,d]=l;if(o===void 0||a===void 0||d===void 0)return null;let m=t[o];return m?{columnNumber:d,fileName:m,lineNumber:a+1}:null},ba=(e,t,n)=>{if(e.sections){let s=null;for(let o of e.sections)if(t>o.offset.line||t===o.offset.line&&n>=o.offset.column)s=o;else break;if(!s)return null;let i=t-s.offset.line,l=t===s.offset.line?n-s.offset.column:n;return Zr(s.map.mappings,s.map.sources,i,l)}return Zr(e.mappings,e.sources,t-1,n)},ya=(e,t)=>{let n=t.split(`
13
+ `),s;for(let l=n.length-1;l>=0&&!s;l--){let o=n[l].match(pa);o&&(s=o[1]||o[2]);}if(!s)return null;let i=as.test(s);if(!(ga.test(s)||i||s.startsWith("/"))){let l=e.split("/");l[l.length-1]=s,s=l.join("/");}return s},Sa=e=>({file:e.file,mappings:(0, is.decode)(e.mappings),names:e.names,sourceRoot:e.sourceRoot,sources:e.sources,sourcesContent:e.sourcesContent,version:3}),Ea=e=>{let t=e.sections.map(({map:s,offset:i})=>({map:{...s,mappings:(0, is.decode)(s.mappings)},offset:i})),n=new Set;for(let s of t)for(let i of s.map.sources)n.add(i);return {file:e.file,mappings:[],names:[],sections:t,sourceRoot:void 0,sources:Array.from(n),sourcesContent:void 0,version:3}},Qr=e=>{if(!e)return false;let t=e.trim();if(!t)return false;let n=t.match(as);if(!n)return true;let s=n[0].toLowerCase();return s==="http:"||s==="https:"},wa=async(e,t=fetch)=>{if(!Qr(e))return null;let n;try{let i=await t(e);if(!i.ok)return null;n=await i.text();}catch{return null}if(!n)return null;let s=ya(e,n);if(!s||!Qr(s))return null;try{let i=await t(s);if(!i.ok)return null;let l=await i.json();return "sections"in l?Ea(l):Sa(l)}catch{return null}},xa=async(e,t=true,n)=>{if(t&&$t.has(e)){let l=$t.get(e);if(l==null)return null;if(ha(l)){let o=l.deref();if(o)return o;$t.delete(e);}else return l}if(t&&xn.has(e))return xn.get(e);let s=wa(e,n);t&&xn.set(e,s);let i=await s;return t&&xn.delete(e),t&&(i===null?$t.set(e,null):$t.set(e,ls?new WeakRef(i):i)),i},va=async(e,t=true,n)=>await Promise.all(e.map(async s=>{if(!s.fileName)return s;let i=await xa(s.fileName,t,n);if(!i||typeof s.lineNumber!="number"||typeof s.columnNumber!="number")return s;let l=ba(i,s.lineNumber,s.columnNumber);return l?{...s,source:l.fileName&&s.source?s.source.replace(s.fileName,l.fileName):s.source,fileName:l.fileName,lineNumber:l.lineNumber,columnNumber:l.columnNumber,isSymbolicated:true}:s})),Ca=e=>e._debugStack instanceof Error&&typeof e._debugStack?.stack=="string",Aa=()=>{let e=ke();for(let t of [...Array.from(ot),...Array.from(e.renderers.values())]){let n=t.currentDispatcherRef;if(n&&typeof n=="object")return "H"in n?n.H:n.current}return null},es=e=>{for(let t of ot){let n=t.currentDispatcherRef;n&&typeof n=="object"&&("H"in n?n.H=e:n.current=e);}},He=e=>`
14
+ in ${e}`,Ta=(e,t)=>{let n=He(e);return t&&(n+=` (at ${t})`),n},wo=false,xo=(e,t)=>{if(!e||wo)return "";let n=Error.prepareStackTrace;Error.prepareStackTrace=void 0,wo=true;let s=Aa();es(null);let i=console.error,l=console.warn;console.error=()=>{},console.warn=()=>{};try{let d={DetermineComponentFrameRoot(){let B;try{if(t){let v=function(){throw Error()};if(Object.defineProperty(v.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(v,[]);}catch(p){B=p;}Reflect.construct(e,[],v);}else {try{v.call();}catch(p){B=p;}e.call(v.prototype);}}else {try{throw Error()}catch(p){B=p;}let v=e();v&&typeof v.catch=="function"&&v.catch(()=>{});}}catch(v){if(v instanceof Error&&B instanceof Error&&typeof v.stack=="string")return [v.stack,B.stack]}return [null,null]}};d.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot",Object.getOwnPropertyDescriptor(d.DetermineComponentFrameRoot,"name")?.configurable&&Object.defineProperty(d.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});let[S,N]=d.DetermineComponentFrameRoot();if(S&&N){let B=S.split(`
15
+ `),v=N.split(`
16
+ `),p=0,y=0;for(;p<B.length&&!B[p].includes("DetermineComponentFrameRoot");)p++;for(;y<v.length&&!v[y].includes("DetermineComponentFrameRoot");)y++;if(p===B.length||y===v.length)for(p=B.length-1,y=v.length-1;p>=1&&y>=0&&B[p]!==v[y];)y--;for(;p>=1&&y>=0;p--,y--)if(B[p]!==v[y]){if(p!==1||y!==1)do if(p--,y--,y<0||B[p]!==v[y]){let _=`
17
+ ${B[p].replace(" at new "," at ")}`,$=Xe(e);return $&&_.includes("<anonymous>")&&(_=_.replace("<anonymous>",$)),_}while(p>=1&&y>=0);break}}}finally{wo=false,Error.prepareStackTrace=n,es(s),console.error=i,console.warn=l;}let o=e?Xe(e):"";return o?He(o):""},Ma=(e,t)=>{let n=e.tag,s="";switch(n){case ho:s=He("Activity");break;case yn:s=xo(e.type,true);break;case Sn:s=xo(e.type.render,false);break;case bn:case En:s=xo(e.type,false);break;case co:case go:case po:s=He(e.type);break;case fo:s=He("Lazy");break;case uo:s=e.child!==t&&t!==null?He("Suspense Fallback"):He("Suspense");break;case mo:s=He("SuspenseList");break;case bo:s=He("ViewTransition");break;default:return ""}return s},Pa=e=>{try{let t="",n=e,s=null;do{t+=Ma(n,s);let i=n._debugInfo;if(i&&Array.isArray(i))for(let l=i.length-1;l>=0;l--){let o=i[l];typeof o.name=="string"&&(t+=Ta(o.name,o.env));}s=n,n=n.return;}while(n);return t}catch(t){return t instanceof Error?`
18
+ Error generating stack: ${t.message}
19
+ ${t.stack}`:""}},Oa=e=>{let t=Error.prepareStackTrace;Error.prepareStackTrace=void 0;let n=e;if(!n)return "";Error.prepareStackTrace=t,n.startsWith(`Error: react-stack-top-frame
20
+ `)&&(n=n.slice(29));let s=n.indexOf(`
21
+ `);if(s!==-1&&(n=n.slice(s+1)),s=Math.max(n.indexOf("react_stack_bottom_frame"),n.indexOf("react-stack-bottom-frame")),s!==-1&&(s=n.lastIndexOf(`
22
+ `,s)),s!==-1)n=n.slice(0,s);else return "";return n},Ra=e=>!!(e.fileName?.startsWith("rsc://")&&e.functionName),Na=(e,t)=>e.fileName===t.fileName&&e.lineNumber===t.lineNumber&&e.columnNumber===t.columnNumber,Da=e=>{let t=new Map;for(let n of e)for(let s of n.stackFrames){if(!Ra(s))continue;let i=s.functionName,l=t.get(i)??[];l.some(a=>Na(a,s))||(l.push(s),t.set(i,l));}return t},Ia=(e,t,n)=>{if(!e.functionName)return {...e,isServer:true};let s=t.get(e.functionName);if(!s||s.length===0)return {...e,isServer:true};let i=n.get(e.functionName)??0,l=s[i%s.length];return n.set(e.functionName,i+1),{...e,isServer:true,fileName:l.fileName,lineNumber:l.lineNumber,columnNumber:l.columnNumber,source:e.source?.replace(ns,`(${l.fileName}:${l.lineNumber}:${l.columnNumber})`)}},_a=e=>{let t=[];return kt(e,n=>{if(!Ca(n))return;let s=typeof n.type=="string"?n.type:Xe(n.type)||"<anonymous>";t.push({componentName:s,stackFrames:rs(Oa(n._debugStack?.stack))});},true),t},cs=async(e,t=true,n)=>{let s=_a(e),i=rs(Pa(e)),l=Da(s),o=new Map,a=i.map(m=>m.source?.includes(ns)??false?Ia(m,l,o):m),d=a.filter((m,S,N)=>{if(S===0)return true;let B=N[S-1];return m.functionName!==B.functionName});return va(d,t,n)};var Ye=e=>{if(!e||aa.some(i=>i===e))return "";let t=e;if(t.startsWith("http://")||t.startsWith("https://"))try{t=new URL(t).pathname;}catch{}if(t.startsWith(Wr)){let i=t.slice(Wr.length),l=i.indexOf("/"),o=i.indexOf(":");t=l!==-1&&(o===-1||l<o)?i.slice(l+1):i;}let n=true;for(;n;){n=false;for(let i of ia)if(t.startsWith(i)){t=t.slice(i.length),i==="file:///"&&(t=`/${t.replace(/^\/+/,"")}`),n=true;break}}if(Yr.test(t)){let i=t.match(Yr);i&&(t=t.slice(i[0].length));}if(t.startsWith("//")){let i=t.indexOf("/",2);t=i===-1?"":t.slice(i);}let s=t.indexOf("?");if(s!==-1){let i=t.slice(s);ua.test(i)&&(t=t.slice(0,s));}return t},We=e=>{let t=Ye(e);return !(!t||!la.test(t)||ca.test(t))};var us=e=>e.length>0&&/^[A-Z]/.test(e);lo();var Fa=new Set(["InnerLayoutRouter","RedirectErrorBoundary","RedirectBoundary","HTTPAccessFallbackErrorBoundary","HTTPAccessFallbackBoundary","LoadingBoundary","ErrorBoundary","InnerScrollAndFocusHandler","ScrollAndFocusHandler","RenderFromTemplateContext","OuterLayoutRouter","body","html","DevRootHTTPAccessFallbackBoundary","AppDevOverlayErrorBoundary","AppDevOverlay","HotReload","Router","ErrorBoundaryHandler","AppRouter","ServerRoot","SegmentStateProvider","RootErrorBoundary","LoadableComponent","MotionDOMComponent"]),Ba=new Set(["Suspense","Fragment","StrictMode","Profiler","SuspenseList"]),La=()=>typeof document>"u"?false:!!(document.getElementById("__NEXT_DATA__")||document.querySelector("nextjs-portal")),ds=e=>!!(e.startsWith("_")||Fa.has(e)||Ba.has(e)),vt=e=>!(e.length<=1||ds(e)||!us(e)||e.startsWith("Primitive.")||e.includes("Provider")&&e.includes("Context")),qe=async e=>{if(!rt())return [];try{let t=Ht(e);return t?await cs(t):null}catch{return null}},Ct=async e=>{if(!rt())return null;let t=await qe(e);if(!t)return null;for(let n of t)if(n.functionName&&vt(n.functionName))return n.functionName;return null},fs=e=>!(!e||ds(e)||e.startsWith("Primitive.")||e==="SlotClone"||e==="Slot"),Co=e=>{if(!rt())return null;let t=Ht(e);if(!t)return null;let n=t.return;for(;n;){if(wn(n)){let s=Xe(n.type);if(s&&fs(s))return s}n=n.return;}return null},ka=e=>e?e.some(t=>t.isServer||t.fileName&&We(t.fileName)):false,Ha=(e,t)=>{if(!rt())return [];let n=Ht(e);if(!n)return [];let s=[];return kt(n,i=>{if(s.length>=t)return true;if(wn(i)){let l=Xe(i.type);l&&fs(l)&&s.push(l);}return false},true),s},$a=e=>{let t=e.outerHTML;return t.length<=J?t:`${t.slice(0,J)}...`},Ao=async(e,t={})=>{let{maxLines:n=3}=t,s=await qe(e),i=za(e);if(ka(s)){let o=La(),a=[];if(s)for(let d of s){if(a.length>=n)break;if(d.isServer&&(!d.functionName||vt(d.functionName))){a.push(`
23
+ in ${d.functionName||"<anonymous>"} (at Server)`);continue}if(d.fileName&&We(d.fileName)){let m=`
24
+ in `,S=d.functionName&&vt(d.functionName);S&&(m+=`${d.functionName} (at `),m+=Ye(d.fileName),o&&d.lineNumber&&d.columnNumber&&(m+=`:${d.lineNumber}:${d.columnNumber}`),S&&(m+=")"),a.push(m);}}return `${i}${a.join("")}`}let l=Ha(e,n);if(l.length>0){let o=l.map(a=>`
25
+ in ${a}`).join("");return `${i}${o}`}return $a(e)},za=e=>{let t=e.tagName.toLowerCase();if(!(e instanceof HTMLElement))return `<${t} />`;let n=e.innerText?.trim()??e.textContent?.trim()??"",s="",i=Array.from(e.attributes);for(let v of i){let p=v.name,y=v.value;y.length>20&&(y=`${y.slice(0,20)}...`),s+=` ${p}="${y}"`;}let l=[],o=[],a=false,d=Array.from(e.childNodes);for(let v of d)v.nodeType!==Node.COMMENT_NODE&&(v.nodeType===Node.TEXT_NODE?v.textContent&&v.textContent.trim().length>0&&(a=true):v instanceof Element&&(a?o.push(v):l.push(v)));let m=v=>v.length===0?"":v.length<=2?v.map(p=>`<${p.tagName.toLowerCase()} ...>`).join(`
26
+ `):`(${v.length} elements)`,S="",N=m(l);if(N&&(S+=`
27
+ ${N}`),n.length>0){let v=n.length>100?`${n.slice(0,100)}...`:n;S+=`
28
+ ${v}`;}let B=m(o);return B&&(S+=`
29
+ ${B}`),S.length>0?`<${t}${s}>${S}
30
+ </${t}>`:`<${t}${s} />`};var To=()=>({activate:()=>{},deactivate:()=>{},toggle:()=>{},isActive:()=>false,dispose:()=>{},copyElement:()=>Promise.resolve(false),getSource:()=>Promise.resolve(null),getState:()=>({isActive:false,isDragging:false,isCopying:false,isPromptMode:false,isCrosshairVisible:false,isSelectionBoxVisible:false,isDragBoxVisible:false,targetElement:null,dragBounds:null,grabbedBoxes:[],selectionFilePath:null}),setOptions:()=>{},registerPlugin:()=>{},unregisterPlugin:()=>{},getPlugins:()=>[],getDisplayName:()=>null});var ms=()=>{let e=new AbortController,t=(s,i,l={})=>{window.addEventListener(s,i,{...l,signal:e.signal});},n=(s,i,l={})=>{document.addEventListener(s,i,{...l,signal:e.signal});};return {signal:e.signal,abort:()=>e.abort(),addWindowListener:t,addDocumentListener:n}};var Ka="application/x-react-grab",vn=(e,t)=>{let n=JSON.stringify({version:D,content:e,timestamp:Date.now(),...t?.prompt&&{prompt:t.prompt}}),s=l=>{l.preventDefault(),l.clipboardData?.setData("text/plain",e),l.clipboardData?.setData(Ka,n);};document.addEventListener("copy",s);let i=document.createElement("textarea");i.value=e,i.style.position="fixed",i.style.left="-9999px",i.ariaHidden="true",document.body.appendChild(i),i.select();try{let l=document.execCommand("copy");return l&&t?.onSuccess?.(),l}finally{document.removeEventListener("copy",s),i.remove();}};var zt=async(e,t={})=>(await Promise.allSettled(e.map(i=>Ao(i,t)))).map(i=>i.status==="fulfilled"?i.value:"").filter(i=>i.trim());var gs=async(e,t,n,s)=>{let i=false,l="";await t.onBeforeCopy(n);try{if(e.getContent){let o=await e.getContent(n);if(o.trim()){let a=s?`${s}
31
+
32
+ ${o}`:o;l=a,i=vn(a,{prompt:s});}}else {let a=(await zt(n,{maxLines:e.maxContextLines})).join(`
33
+
34
+ `);if(a.trim()){let d=s?`${s}
35
+
36
+ ${a}`:a;l=d,i=vn(d,{prompt:s});}}}catch(o){let a=o instanceof Error?o:new Error(String(o));t.onCopyError(a);}return i&&t.onCopySuccess(n,l),t.onAfterCopy(n,i),i};var ps=(e,t=window.getComputedStyle(e))=>t.display!=="none"&&t.visibility!=="hidden"&&t.opacity!=="0";var Je=e=>{if(e.closest(`[${Et}]`))return false;let t=window.getComputedStyle(e);return !!ps(e,t)};var hs=2,ja=16,st=null,Ua=(e,t,n,s)=>{let i=Math.abs(e-n),l=Math.abs(t-s);return i<=hs&&l<=hs},Mo=(e,t)=>document.elementsFromPoint(e,t);var Cn=(e,t)=>{let n=performance.now();if(st){let l=Ua(e,t,st.clientX,st.clientY),o=n-st.timestamp<ja;if(l||o)return st.element}let s=Mo(e,t),i=null;for(let l of s)if(Je(l)){i=l;break}return st={clientX:e,clientY:t,element:i,timestamp:n},i},bs=()=>{st=null;};var it=null,An=()=>{it||(it=document.createElement("style"),it.setAttribute("data-react-grab-pointer-override",""),it.textContent="* { pointer-events: auto !important; }",document.head.appendChild(it));},Tn=()=>{it?.remove(),it=null;};var Va=(e,t)=>{let n=Math.max(e.left,t.left),s=Math.max(e.top,t.top),i=Math.min(e.right,t.right),l=Math.min(e.bottom,t.bottom),o=Math.max(0,i-n),a=Math.max(0,l-s);return o*a},Ga=(e,t)=>e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top,At=(e,t,n)=>Math.min(n,Math.max(t,e)),Xa=e=>e.sort((t,n)=>{if(t===n)return 0;let s=t.compareDocumentPosition(n);return s&Node.DOCUMENT_POSITION_FOLLOWING?-1:s&Node.DOCUMENT_POSITION_PRECEDING?1:0}),Ya=e=>{if(e.width<=0||e.height<=0)return [];let t=window.innerWidth,n=window.innerHeight,s=e.x,i=e.y,l=e.x+e.width,o=e.y+e.height,a=s+e.width/2,d=i+e.height/2,m=At(Math.ceil(e.width/Z),_,$),S=At(Math.ceil(e.height/Z),_,$),N=m*S,B=N>aa$1?Math.sqrt(aa$1/N):1,v=At(Math.floor(m*B),_,$),p=At(Math.floor(S*B),_,$),y=new Set,_$1=[],$$1=(U,oe)=>{let ue=At(Math.round(U),0,t-1),re=At(Math.round(oe),0,n-1),Se=`${ue}:${re}`;y.has(Se)||(y.add(Se),_$1.push({x:ue,y:re}));};$$1(s+ba$1,i+ba$1),$$1(l-ba$1,i+ba$1),$$1(s+ba$1,o-ba$1),$$1(l-ba$1,o-ba$1),$$1(a,i+ba$1),$$1(a,o-ba$1),$$1(s+ba$1,d),$$1(l-ba$1,d),$$1(a,d);for(let U=0;U<v;U+=1){let oe=s+(U+.5)/v*e.width;for(let ue=0;ue<p;ue+=1){let re=i+(ue+.5)/p*e.height;$$1(oe,re);}}return _$1},Wa=(e,t,n)=>{let s={left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height},i=new Set,l=Ya(e);An();try{for(let a of l){let d=document.elementsFromPoint(a.x,a.y);for(let m of d)i.add(m);}}finally{Tn();}let o=[];for(let a of i){if(!n){let S=(a.tagName||"").toUpperCase();if(S==="HTML"||S==="BODY")continue}if(!t(a))continue;let d=a.getBoundingClientRect();if(d.width<=0||d.height<=0)continue;let m={left:d.left,top:d.top,right:d.left+d.width,bottom:d.top+d.height};if(n){let S=Va(s,m),N=d.width*d.height;N>0&&S/N>=Y&&o.push(a);}else Ga(m,s)&&o.push(a);}return Xa(o)},qa=e=>e.filter(t=>!e.some(n=>n!==t&&n.contains(t))),Kt=(e,t,n=true)=>{let s=Wa(e,t,n);return qa(s)};var Mn=e=>({x:e.pageX-window.scrollX,y:e.pageY-window.scrollY,width:e.width,height:e.height,borderRadius:"0px",transform:"none"}),Tt=e=>({...e,borderRadius:"0px",transform:"none"});var $e=e=>(e.tagName||"").toLowerCase();var jt=e=>({x:e.x+e.width/2,y:e.y+e.height/2});var Ja=new Set(["c","C","\u0441","\u0421","\u023C","\u023B","\u2184","\u2183","\u1D04","\u1D9C","\u2C7C","\u217D","\u216D","\xE7","\xC7","\u0107","\u0106","\u010D","\u010C","\u0109","\u0108","\u010B","\u010A"]),Pn=(e,t)=>t==="KeyC"?true:!e||e.length!==1?false:Ja.has(e);var ys=(e,t)=>{let n=e.toLowerCase();return t==="Space"?n==="space"||n===" ":t.startsWith("Key")?t.slice(3).toLowerCase()===n:t.startsWith("Digit")?t.slice(5)===n:false};var Za={meta:"metaKey",cmd:"metaKey",command:"metaKey",win:"metaKey",windows:"metaKey",ctrl:"ctrlKey",control:"ctrlKey",shift:"shiftKey",alt:"altKey",option:"altKey",opt:"altKey"},Ss=e=>{let t=e.split("+").map(s=>s.trim().toLowerCase()),n={metaKey:false,ctrlKey:false,shiftKey:false,altKey:false,key:null};for(let s of t){let i=Za[s];i?n[i]=true:n.key=s;}return n},On=e=>{if(typeof e=="function")return e;let t=Ss(e),n=t.key;return s=>{if(n===null){let a=t.metaKey?s.metaKey||s.key==="Meta":true,d=t.ctrlKey?s.ctrlKey||s.key==="Control":true,m=t.shiftKey?s.shiftKey||s.key==="Shift":true,S=t.altKey?s.altKey||s.key==="Alt":true,N=a&&d&&m&&S,B=[t.metaKey,t.ctrlKey,t.shiftKey,t.altKey].filter(Boolean).length,v=[s.metaKey||s.key==="Meta",s.ctrlKey||s.key==="Control",s.shiftKey||s.key==="Shift",s.altKey||s.key==="Alt"].filter(Boolean).length;return N&&v>=B}let i=s.key?.toLowerCase()===n||ys(n,s.code),o=t.metaKey||t.ctrlKey||t.shiftKey||t.altKey?(t.metaKey?s.metaKey:true)&&(t.ctrlKey?s.ctrlKey:true)&&(t.shiftKey?s.shiftKey:true)&&(t.altKey?s.altKey:true):!s.metaKey&&!s.ctrlKey&&!s.shiftKey&&!s.altKey;return i&&o}},Es=e=>!e||typeof e=="function"?{metaKey:true,ctrlKey:true,shiftKey:false,altKey:false,key:null}:Ss(e);var Po=(e,t)=>{if(t.activationKey)return On(t.activationKey)(e);let n=(e.metaKey||e.ctrlKey)&&!e.shiftKey&&!e.altKey;return !!(e.key&&n&&Pn(e.key,e.code))};var Oe=(e,t)=>{try{return e.composedPath().some(n=>n instanceof HTMLElement&&n.hasAttribute(t))}catch{return false}};var Ut=e=>{if(e.length===0)return {x:0,y:0,width:0,height:0};if(e.length===1)return e[0];let t=1/0,n=1/0,s=-1/0,i=-1/0;for(let l of e)t=Math.min(t,l.x),n=Math.min(n,l.y),s=Math.max(s,l.x+l.width),i=Math.max(i,l.y+l.height);return {x:t,y:n,width:s-t,height:i-n}},Qa=(e,t)=>new Promise((n,s)=>{let i=document.createElement("canvas"),l=i.getContext("2d");if(!l){s(new Error("Failed to get canvas context"));return}let o=e.videoWidth/window.innerWidth,a=e.videoHeight/window.innerHeight,d={x:t.x*o,y:t.y*a,width:t.width*o,height:t.height*a};i.width=d.width,i.height=d.height,l.drawImage(e,d.x,d.y,d.width,d.height,0,0,d.width,d.height),i.toBlob(m=>{m?n(m):s(new Error("Failed to create image blob"));},"image/png",1);}),Oo=async e=>{let t=await navigator.mediaDevices.getDisplayMedia({video:{displaySurface:"browser"},preferCurrentTab:true}),n=document.createElement("video");n.srcObject=t,n.autoplay=true,n.playsInline=true,await new Promise((s,i)=>{let l=setTimeout(()=>{i(new Error("Video metadata loading timed out"));},L);n.onerror=()=>{clearTimeout(l),i(new Error("Video failed to load"));},n.onloadedmetadata=()=>{clearTimeout(l),n.play(),s();};}),await new Promise((s,i)=>{let l=Date.now(),o=()=>{if(n.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA){s();return}if(Date.now()-l>=N){i(new Error("Video frame not ready within timeout"));return}setTimeout(o,M);};o();});try{return await Qa(n,e)}finally{t.getTracks().forEach(s=>s.stop()),n.srcObject=null;}},Ro=async e=>{try{return await navigator.clipboard.write([new ClipboardItem({[e.type]:e})]),!0}catch{return false}};var No=e=>new Promise(t=>setTimeout(t,e));var at={enabled:true,hue:0,selectionBox:{enabled:true},dragBox:{enabled:true},grabbedBoxes:{enabled:true},elementLabel:{enabled:true},crosshair:{enabled:true},toolbar:{enabled:true}},el=(e,t)=>({enabled:t.enabled??e.enabled,hue:t.hue??e.hue,selectionBox:{enabled:t.selectionBox?.enabled??e.selectionBox.enabled},dragBox:{enabled:t.dragBox?.enabled??e.dragBox.enabled},grabbedBoxes:{enabled:t.grabbedBoxes?.enabled??e.grabbedBoxes.enabled},elementLabel:{enabled:t.elementLabel?.enabled??e.elementLabel.enabled},crosshair:{enabled:t.crosshair?.enabled??e.crosshair.enabled},toolbar:{enabled:t.toolbar?.enabled??e.toolbar.enabled}});var Rn=el;var ws={activationMode:"toggle",keyHoldDuration:75,allowActivationInsideInput:true,maxContextLines:3,activationKey:void 0,getContent:void 0},xs=(e={})=>{let t=new Map,n={},[s,i]=fn({theme:at,options:{...ws,...e},actions:[]}),l=()=>{let p=at,y={...ws,...e},_=[];for(let{config:$}of t.values())$.theme&&(p=Rn(p,$.theme)),$.options&&(y={...y,...$.options}),$.actions&&_.push(...$.actions);y={...y,...n},i("theme",p),i("options",y),i("actions",_);},o=p=>{for(let[y,_]of Object.entries(p))_!==void 0&&(n[y]=_,i("options",y,_));},a=(p,y)=>{t.has(p.name)&&d(p.name);let _;return p.setup?_=p.setup(y)??{}:_={},p.theme&&(_.theme=_.theme?Rn(Rn(at,p.theme),_.theme):p.theme),p.actions&&(_.actions=[...p.actions,..._.actions??[]]),p.hooks&&(_.hooks=_.hooks?{...p.hooks,..._.hooks}:p.hooks),p.options&&(_.options=_.options?{...p.options,..._.options}:p.options),t.set(p.name,{plugin:p,config:_}),l(),_},d=p=>{let y=t.get(p);y&&(y.config.cleanup&&y.config.cleanup(),t.delete(p),l());},m=()=>Array.from(t.keys()),S=(p,...y)=>{for(let{config:_}of t.values()){let $=_.hooks?.[p];$&&$(...y);}},N=(p,...y)=>{let _=false;for(let{config:$}of t.values()){let U=$.hooks?.[p];U&&U(...y)===true&&(_=true);}return _},B=async(p,...y)=>{for(let{config:_}of t.values()){let $=_.hooks?.[p];$&&await $(...y);}};return {register:a,unregister:d,getPluginNames:m,setOptions:o,store:s,hooks:{onActivate:()=>S("onActivate"),onDeactivate:()=>S("onDeactivate"),onElementHover:p=>S("onElementHover",p),onElementSelect:p=>S("onElementSelect",p),onDragStart:(p,y)=>S("onDragStart",p,y),onDragEnd:(p,y)=>S("onDragEnd",p,y),onBeforeCopy:async p=>B("onBeforeCopy",p),onAfterCopy:(p,y)=>S("onAfterCopy",p,y),onCopySuccess:(p,y)=>S("onCopySuccess",p,y),onCopyError:p=>S("onCopyError",p),onStateChange:p=>S("onStateChange",p),onPromptModeChange:(p,y)=>S("onPromptModeChange",p,y),onSelectionBox:(p,y,_)=>S("onSelectionBox",p,y,_),onDragBox:(p,y)=>S("onDragBox",p,y),onGrabbedBox:(p,y)=>S("onGrabbedBox",p,y),onElementLabel:(p,y,_)=>S("onElementLabel",p,y,_),onCrosshair:(p,y)=>S("onCrosshair",p,y),onContextMenu:(p,y)=>S("onContextMenu",p,y),onOpenFile:(p,y)=>N("onOpenFile",p,y)}}};var Do="react-grab:agent-sessions",tl=()=>`session-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,vs=(e,t,n,s,i)=>{let l=Date.now();return {id:tl(),context:e,lastStatus:"",isStreaming:true,createdAt:l,lastUpdatedAt:l,position:t,selectionBounds:n,tagName:s,componentName:i}},lt=new Map,Nn=(e,t)=>{if(!t){lt.clear(),e.forEach((n,s)=>lt.set(s,n));return}try{let n=Object.fromEntries(e);t.setItem(Do,JSON.stringify(n));}catch{lt.clear(),e.forEach((n,s)=>lt.set(s,n));}},Dn=(e,t)=>{let n=In(t);n.set(e.id,e),Nn(n,t);},In=e=>{if(!e)return new Map(lt);try{let t=e.getItem(Do);if(!t)return new Map;let n=JSON.parse(t);return new Map(Object.entries(n))}catch{return new Map}},_n=e=>{if(!e){lt.clear();return}try{e.removeItem(Do);}catch{lt.clear();}},Io=(e,t)=>{let n=In(t);n.delete(e),Nn(n,t);},ct=(e,t,n)=>{let s={...e,...t,lastUpdatedAt:Date.now()};return Dn(s,n),s};var _o=e=>{let[t,n]=d(new Map),[s,i]=d(false),[l,o]=d(false),a=new Map,d$1=new Map,m=[],S=[],N=e,B=u=>d$1.get(u)?.agent??N,v=u=>d$1.get(u)?.elements??[],p=u=>{let g=u??N,h=g?.provider?.canUndo?.()??false,b=g?.provider?.canRedo?.()??false;i(h),o(b);},y=u=>{N=u,p();},_=()=>N,$=()=>Array.from(t().values()).some(u=>u.isStreaming),U=async(u,g,h)=>{let b=h??N,E=b?.storage,x=false;try{for await(let A of g){let K=t().get(u.id);if(!K)break;let ce=ct(K,{lastStatus:A},E);n(de=>new Map(de).set(u.id,ce)),b?.onStatus?.(A,ce);}let O=t().get(u.id);if(O){let A=b?.provider?.getCompletionMessage?.(),L=ct(O,{isStreaming:!1,...A?{lastStatus:A}:{}},E);n(q=>new Map(q).set(u.id,L));let K=v(u.id),ce=await b?.onComplete?.(L,K),de=S.findIndex(q=>q.session.id===u.id);if(de!==-1&&S.splice(de,1),S.push({session:L,elements:K,agent:b}),p(b),m.length=0,ce?.error){let q=ct(L,{error:ce.error},E);n(se=>new Map(se).set(u.id,q));}}}catch(R){let A=t().get(u.id);if(R instanceof Error&&R.name==="AbortError"){if(x=true,A){let L=v(u.id);b?.onAbort?.(A,L);}}else {let L=R instanceof Error?R.message:"Unknown error";if(A){let K=ct(A,{error:L,isStreaming:false},E);n(ce=>new Map(ce).set(u.id,K)),R instanceof Error&&b?.onError?.(R,K);}}}finally{a.delete(u.id),x&&(d$1.delete(u.id),Io(u.id,E),n(R=>{let O=new Map(R);return O.delete(u.id),O}));}},oe=u=>{let{selectionBounds:g,tagName:h}=u,b=g[0];if(!b)return;let E=b.x+b.width/2,x=b.y+b.height/2,R=document.elementFromPoint(E,x);if(!(!R||h&&!h.includes(" ")&&R.tagName.toLowerCase()!==h))return R},ue=()=>{let u=N?.storage;if(!u)return;let g=In(u);if(g.size===0)return;let h=Date.now(),b=Array.from(g.values()).filter(x=>{if(x.isStreaming)return true;let R=x.lastUpdatedAt??x.createdAt;return h-R<1e4&&!!x.error});if(b.length===0){_n(u);return}if(!N?.provider?.supportsResume||!N.provider.resume){_n(u);return}let E=new Map(b.map(x=>[x.id,x]));n(E),Nn(E,u);for(let x of b){let R=oe(x);R&&N&&d$1.set(x.id,{elements:[R],agent:N});let O={...x,isStreaming:true,error:void 0,lastStatus:x.lastStatus||"Resuming...",position:x.position??{x:window.innerWidth/2,y:window.innerHeight/2}};n(K=>new Map(K).set(x.id,O)),N?.onResume?.(O);let A=new AbortController;a.set(x.id,A);let L=N.provider.resume(x.id,A.signal,u);U(x,L);}},re=async u=>{let{elements:g,prompt:h,position:b,selectionBounds:E,sessionId:x,agent:R}=u,O=R??(x?B(x):N),A=O?.storage;if(!O?.provider||g.length===0)return;let L=g[0],K=x?t().get(x):void 0,ce=!!x,q={content:K?K.context.content:await zt(g,{maxLines:1/0}),prompt:h,options:O?.getOptions?.(),sessionId:ce?x:void 0},se;if(K)se=ct(K,{context:q,isStreaming:true,lastStatus:"Thinking\u2026"},A);else {let j=g.length>1?`${g.length} elements`:(L.tagName||"").toLowerCase()||void 0,G=g.length>1?void 0:await Ct(L)||void 0;se=vs(q,b,E,j,G),se.lastStatus="Thinking\u2026";}d$1.set(se.id,{elements:g,agent:O}),n(j=>new Map(j).set(se.id,se)),Dn(se,A),O.onStart?.(se,g);let D=new AbortController;a.set(se.id,D);let k={...q,sessionId:x??se.id},V=O.provider.send(k,D.signal);U(se,V,O);},Se=u=>{if(u){let g=a.get(u);g&&g.abort();}else a.forEach(g=>g.abort()),a.clear(),d$1.clear(),S.length=0,m.length=0,n(new Map),_n(N?.storage),p();},Ee=(u,g,h)=>{let E=t().get(u),x=g??B(u),R=h??v(u);E?.isFading||(E&&R.length>0&&x?.onDismiss?.(E,R),n(O=>{let A=new Map(O),L=A.get(u);return L&&A.set(u,{...L,isFading:true}),A}),setTimeout(()=>{let O=x?.storage;d$1.delete(u),Io(u,O),n(A=>{let L=new Map(A);return L.delete(u),L});},150));};return {sessions:t,isProcessing:$,canUndo:s,canRedo:l,session:{start:re,abort:Se,dismiss:Ee,retry:u=>{let h=t().get(u),b=B(u);if(!h||!b?.provider)return;let E=b.storage,x=v(u),R=ct(h,{error:void 0,isStreaming:true,lastStatus:"Retrying\u2026"},E);n(K=>new Map(K).set(u,R)),Dn(R,E),x.length>0&&b.onStart?.(R,x);let O=new AbortController;a.set(u,O);let A={...R.context,sessionId:u},L=b.provider.send(A,O.signal);U(R,L,b);},undo:u=>{let h=t().get(u),b=B(u),E=v(u);if(h){m.push({session:h,elements:E,agent:b});let x=S.findIndex(R=>R.session.id===u);x!==-1&&S.splice(x,1),b?.onUndo?.(h,E),b?.provider?.undo?.();}Ee(u,b,E),p(b);},getElement:u=>v(u)[0],getElements:u=>v(u),tryResume:ue,acknowledgeError:u=>{let b=t().get(u)?.context.prompt;return Ee(u),b}},history:{undo:()=>{let u=S.pop();if(!u)return;let{session:g,elements:h,agent:b}=u,E=b??N;m.push(u),E?.onUndo?.(g,h),E?.provider?.undo?.(),Ee(g.id,E,h),p(E);},redo:()=>{let u=m.pop();if(!u)return;let g=u.agent??N,{session:h,elements:b}=u;g?.provider?.redo?.();let E=b.filter(x=>document.contains(x));if(E.length===0){let x=oe(h);x&&(E=[x]);}if(E.length>0&&g){S.push(u);let x=E.map(O=>ee(O)),R={...h,selectionBounds:x};d$1.set(h.id,{elements:E,agent:g}),n(O=>new Map(O).set(h.id,R));}p(g);}},_internal:{updateBoundsOnViewportChange:()=>{let u=t();if(u.size===0)return;let g=new Map(u),h=false;for(let[b,E]of u){let x=v(b),R=x[0];if(R&&document.contains(R)){let O=x.filter(A=>document.contains(A)).map(A=>ee(A));if(O.length>0){let A=E.selectionBounds[0],L=O[0],K=E.position;if(A&&L){let ce=A.x+A.width/2,de=A.width/2,q=E.position.x-ce,se=de>0?q/de:0,D=L.x+L.width/2,k=L.width/2;K={...E.position,x:D+se*k};}g.set(b,{...E,selectionBounds:O,position:K}),h=true;}}}h&&n(g);},setOptions:y,getOptions:_}}};var Cs=(e,t)=>{let n=[],s=(m,S)=>{let N=t(m),B=Mo(N.x+N.width/2,N.y+N.height/2).filter(e),v=B.indexOf(m);return v===-1?null:B[v+S]??null},i=m=>{let S=s(m,1);return S&&n.push(m),S},l=m=>{if(n.length>0){let S=n.pop();if(document.contains(S))return S}return s(m,-1)},o=(m,S)=>{let N=p=>{let y=Array.from(p.children),_=S?y:y.reverse();for(let $ of _)if(S){if(e($))return $;let U=N($);if(U)return U}else {let U=N($);if(U)return U;if(e($))return $}return null},B=p=>S?p.nextElementSibling:p.previousElementSibling,v=null;if(S&&(v=N(m)),!v){let p=m;for(;p;){let y=B(p);for(;y;){let $=N(y);if($){v=$;break}if(e(y)){v=y;break}y=B(y);}if(v)break;let _=p.parentElement;if(!S&&_&&e(_)){v=_;break}p=_;}}return v};return {findNext:(m,S)=>{switch(m){case "ArrowUp":return i(S);case "ArrowDown":return l(S);case "ArrowRight":return o(S,true);case "ArrowLeft":return o(S,false);default:return null}},clearHistory:()=>{n=[];}}};var As=e=>{let t=Es(e.activationKey);return {metaKey:t.metaKey,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey}},Ts=()=>{let e=new WeakSet,t=Object.getOwnPropertyDescriptor(KeyboardEvent.prototype,"key"),n=false;if(t?.get&&!t.get.__reactGrabPatched){n=true;let i=t.get,l=function(){return e.has(this)?"":i.call(this)};l.__reactGrabPatched=true,Object.defineProperty(KeyboardEvent.prototype,"key",{get:l,configurable:true});}return {claimedEvents:e,originalKeyDescriptor:t,didPatch:n,restore:()=>{n&&t&&Object.defineProperty(KeyboardEvent.prototype,"key",t);}}};var Fo=(e,t)=>({top:t<25,bottom:t>window.innerHeight-25,left:e<25,right:e>window.innerWidth-25}),Ms=(e,t)=>{let n=null,s=()=>{if(!t()){l();return}let a=e(),d=Fo(a.x,a.y);d.top&&window.scrollBy(0,-10),d.bottom&&window.scrollBy(0,10),d.left&&window.scrollBy(-10,0),d.right&&window.scrollBy(10,0),d.top||d.bottom||d.left||d.right?n=requestAnimationFrame(s):n=null;},i=()=>{s();},l=()=>{n!==null&&(cancelAnimationFrame(n),n=null);};return {start:i,stop:l,isActive:()=>n!==null}};var Ps=()=>{try{let e="0.1.0-beta.12",t=`data:image/svg+xml;base64,${btoa(ca$1)}`;console.log(`%cReact Grab${e?` v${e}`:""}%c
37
+ https://react-grab.com`,`background: #330039; color: #ffffff; border: 1px solid #d75fcb; padding: 4px 4px 4px 24px; border-radius: 4px; background-image: url("${t}"); background-size: 16px 16px; background-repeat: no-repeat; background-position: 4px center; display: inline-block; margin-bottom: 4px;`,""),navigator.onLine&&e&&fetch(`https://www.react-grab.com/api/version?source=browser&t=${Date.now()}`,{referrerPolicy:"origin",keepalive:!0,priority:"low",cache:"no-store"}).then(n=>n.text()).then(n=>{n&&n!==e&&console.warn(`[React Grab] v${e} is outdated (latest: v${n})`);}).catch(()=>null);}catch{}};var Os=e=>"scheduler"in globalThis?globalThis.scheduler.postTask(e,{priority:"background"}):typeof window<"u"&&"requestIdleCallback"in window?requestIdleCallback(e):setTimeout(e,0);var Rs=()=>{if(typeof window>"u")return null;try{let e=document.currentScript?.getAttribute("data-options");return e?JSON.parse(e):null}catch{return null}};var ut=e=>e==="Enter"||e==="NumpadEnter";var sl=`
38
+ [${P}],
39
+ [${P}] * {
40
+ animation-play-state: paused !important;
41
+ transition: none !important;
42
+ }
43
+ `,il=`
44
+ *, *::before, *::after {
45
+ animation-play-state: paused !important;
46
+ transition: none !important;
47
+ }
48
+ `,al="* { pointer-events: none !important; }",Ds=["mouseenter","mouseleave","mouseover","mouseout","pointerenter","pointerleave","pointerover","pointerout"],ll=["background-color","color","border-color","box-shadow","transform","opacity","outline","filter","scale","visibility"],Ns=null,Gt=[],Bo=[],Lo=new Map,Ln=null,kn=null,ko=[],Is=e=>{e.stopPropagation(),e.stopImmediatePropagation();},$o=(e,t)=>{let n=document.createElement("style");return n.setAttribute(e,""),n.textContent=t,document.head.appendChild(n),n},cl=()=>{Ns||(Ns=$o("data-react-grab-frozen-styles",sl));},ul=(e,t)=>e.length===t.length&&e.every((n,s)=>n===t[s]),Xt=e=>{if(e.length!==0&&!ul(e,Bo)){Bo=[...e],Ho(),cl(),Gt=e;for(let t of Gt)t.setAttribute(P,"");}},Ho=()=>{if(Gt.length!==0){for(let e of Gt)e.removeAttribute(P);Gt=[],Bo=[];}},_s=e=>e.length===0?(Ho(),()=>{}):(Xt(e),Ho),Fs=()=>{if(Ln)return;for(let t of Ds)document.addEventListener(t,Is,true);let e=[];for(let t of document.querySelectorAll(":hover")){if(!(t instanceof HTMLElement))continue;let n=t.style.cssText,s=getComputedStyle(t),i=n;for(let l of ll){let o=s.getPropertyValue(l);o&&(i+=`${l}: ${o} !important; `);}e.push({element:t,originalCssText:n,frozenStyles:i});}for(let{element:t,originalCssText:n,frozenStyles:s}of e)Lo.set(t,n),t.style.cssText=s;Ln=$o("data-react-grab-frozen-pseudo",al),An();},Bs=()=>{Tn(),bs();for(let e of Ds)document.removeEventListener(e,Is,true);for(let[e,t]of Lo)e.style.cssText=t;Lo.clear(),Ln?.remove(),Ln=null;},Ls=()=>{kn||(kn=$o("data-react-grab-global-freeze",il),ko=document.getAnimations().filter(e=>e.playState==="running"));},ks=()=>{kn?.remove(),kn=null;for(let e of ko)e.play();ko=[];};var zo=false,Ef=e=>{if(typeof window>"u")return To();let t=Rs(),n$1={enabled:true,activationMode:"toggle",keyHoldDuration:75,allowActivationInsideInput:true,maxContextLines:3,...t,...e};return n$1.enabled===false||zo?To():(zo=true,Ps(),c(s$1=>{let i=xs(n$1),l$1=()=>{for(let r of i.store.actions)if(r.agent?.provider)return r.agent},{store:o,actions:a}=Rr({theme:at,hasAgentProvider:!!l$1()?.provider,keyHoldDuration:i.store.options.keyHoldDuration??75}),d$1=g(()=>o.current.state==="holding"),m=g(()=>o.current.state==="active");f(j(m,(r,c)=>{r&&!c?(Fs(),Ls()):!r&&c&&(Bs(),ks());}));let S=g(()=>o.current.state==="active"&&o.current.phase==="frozen"),N=g(()=>o.current.state==="active"&&o.current.phase==="dragging"),B=g(()=>o.current.state==="active"&&o.current.phase==="justDragged"),v=g(()=>o.current.state==="copying"),p=g(()=>o.current.state==="justCopied"),y=g(()=>o.current.state==="active"&&o.current.isPromptMode),_=g(()=>o.current.state==="active"&&o.current.isPromptMode&&o.current.isPendingDismiss),$=Ft(),[U,oe]=d($?.enabled??true),ue=g(()=>o.pendingAbortSessionId),re=g(()=>o.hasAgentProvider),Se=()=>{u!==null&&(clearTimeout(u),u=null);},Ee=()=>{g$1=false,h$1=false;};f(()=>{if(o.current.state!=="holding"){Se();return}u=window.setTimeout(()=>{if(u=null,g$1){h$1=true;return}a.activate();},o.keyHoldDuration),l(Se);}),f(()=>{if(o.current.state!=="active"||o.current.phase!=="justDragged")return;let r=setTimeout(()=>{a.finishJustDragged();},1500);l(()=>clearTimeout(r));}),f(()=>{if(o.current.state!=="justCopied")return;let r=setTimeout(()=>{a.finishJustCopied();},1500);l(()=>clearTimeout(r));});let Ie=false;f(()=>{let r=d$1(),c=m();Ie&&!r&&c&&(i.store.options.activationMode!=="hold"&&a.setWasActivatedByToggle(true),i.hooks.onActivate()),Ie=r;});let xe=new WeakMap,Te=r=>{let c=xe.get(r);c&&a.setInputText(c);},I=(r,c,f)=>{w(r,c,f),Te(r);},P=()=>{let r=o.frozenElement||G();r&&a.enterPromptMode({x:o.pointer.x,y:o.pointer.y},r);},w=(r,c,f)=>(a.setCopyStart({x:c,y:f},r),ee(r)),M=0,F=null,u=null,g$1=false,h$1=false,b=false,E=false,x=null,R=Cs(Je,ee),O$1=Ms(()=>o.pointer,()=>N()),A=g(()=>m()&&!v()),L=g(()=>i.store.theme.enabled&&i.store.theme.crosshair.enabled&&A()&&!N()&&!o.isTouchMode&&!S()&&!y()&&o.contextMenuPosition===null),K$1=(r,c)=>{let f=`grabbed-${Date.now()}-${Math.random()}`,C=Date.now(),T={id:f,bounds:r,createdAt:C,element:c};a.addGrabbedBox(T),i.hooks.onGrabbedBox(r,c),setTimeout(()=>{a.removeGrabbedBox(f);},1500);},ce=async r=>{let c=await Promise.all(r.map(async f=>{let C=await qe(f),T=null,H,z,J;if(C&&C.length>0)for(let X of C){let ne=X.functionName&&vt(X.functionName),le=X.fileName&&We(X.fileName);if(ne&&!T&&(T=X.functionName),le&&!H&&(H=Ye(X.fileName),z=X.lineNumber||void 0,J=X.columnNumber||void 0),T&&H)break}T||(T=Co(f));let W=f instanceof HTMLElement?f.innerText?.slice(0,100):void 0;return {tagName:$e(f),id:f.id||void 0,className:f.getAttribute("class")||void 0,textContent:W,componentName:T??void 0,filePath:H,lineNumber:z,columnNumber:J}}));window.dispatchEvent(new CustomEvent("react-grab:element-selected",{detail:{elements:c}}));},de=(r,c,f,C,T,H,z,J)=>{a.clearLabelInstances();let W=`label-${Date.now()}-${Math.random().toString(36).slice(2)}`,X=r.x+r.width/2,ne=r.width/2,le=H!==void 0?H-X:void 0,ve={id:W,bounds:r,boundsMultiple:J,tagName:c,componentName:f,status:C,createdAt:Date.now(),element:T,elements:z,mouseX:H,mouseXOffsetFromCenter:le,mouseXOffsetRatio:le!==void 0&&ne>0?le/ne:void 0};return a.addLabelInstance(ve),W},q=(r,c,f)=>{a.updateLabelInstance(r,c,f);},se=r=>{a.removeLabelInstance(r);},D=async(r,c,f,C,T,H,z,J,W)=>{E=false,a.startCopy();let X=C&&T?de(C,T,H,"copying",z,r,W):null;await f().finally(()=>{a.completeCopy(z),X&&(q(X,"copied"),setTimeout(()=>{q(X,"fading"),setTimeout(()=>{se(X);},150);},1500)),J?ae():(a.activate(),E=true,x!==null&&window.clearTimeout(x),x=window.setTimeout(()=>{E=false,x=null;},1500));});},k=(r,c)=>gs({maxContextLines:i.store.options.maxContextLines,getContent:i.store.options.getContent},{onBeforeCopy:i.hooks.onBeforeCopy,onAfterCopy:i.hooks.onAfterCopy,onCopySuccess:i.hooks.onCopySuccess,onCopyError:i.hooks.onCopyError},r,c),V=async(r,c)=>{if(r.length!==0){for(let f of r)i.hooks.onElementSelect(f),i.store.theme.grabbedBoxes.enabled&&K$1(ee(f),f);await new Promise(f=>requestAnimationFrame(f)),await k(r,c),ce(r);}},j$1=({element:r,positionX:c,positionY:f,elements:C,extraPrompt:T,shouldDeactivateAfter:H,onComplete:z,dragRect:J})=>{let W=C??[r],X=J??o.frozenDragRect,ne;X&&W.length>1?ne=Mn(X):ne=Tt(ee(r));let le=$e(r);Ct(r).then(ve=>{D(c,f,()=>V(W,T),ne,le,ve??void 0,r,H,C).then(()=>{z?.();});});},G=g(()=>{if(!A()||N())return null;let r=o.detectedElement;return r&&!document.contains(r)?null:r}),fe=g(()=>o.frozenElement||(S()?null:G()));f(()=>{let r=o.detectedElement;if(!r)return;let c=setInterval(()=>{document.contains(r)||a.setDetectedElement(null);},100);l(()=>clearInterval(c));}),f(()=>{let r=o.frozenElements,c=_s(r);l(c);});let be=g(()=>{o.viewportVersion;let r=o.frozenElements;if(r.length>0){if(r.length===1)return ee(r[0]);let f=o.frozenDragRect;if(f)return Mn(f);let C=r.map(T=>ee(T));return Tt(Ut(C))}let c=fe();if(c)return ee(c)}),pe=g(()=>{o.viewportVersion;let r=o.frozenElements;if(r.length===0)return [];let c=o.frozenDragRect;return c&&r.length>1?[Mn(c)]:r.map(f=>ee(f))}),we=g(()=>o.frozenElements.length),te=(r,c)=>{let f=r+window.scrollX,C=c+window.scrollY;return {x:Math.abs(f-o.dragStart.x),y:Math.abs(C-o.dragStart.y)}},Me=g(()=>{if(!N())return false;let r=te(o.pointer.x,o.pointer.y);return r.x>2||r.y>2}),_e=(r,c)=>{let f=r+window.scrollX,C=c+window.scrollY,T=Math.min(o.dragStart.x,f),H=Math.min(o.dragStart.y,C),z=Math.abs(f-o.dragStart.x),J=Math.abs(C-o.dragStart.y);return {x:T-window.scrollX,y:H-window.scrollY,width:z,height:J}},Re=g(()=>{if(o.viewportVersion,!Me())return;let r=_e(o.pointer.x,o.pointer.y);return {borderRadius:"0px",height:r.height,transform:"none",width:r.width,x:r.x,y:r.y}}),Ne=g(()=>{if(o.viewportVersion,!Me())return [];let r=_e(o.pointer.x,o.pointer.y),c=Kt(r,Je);return (c.length>0?c:Kt(r,Je,false)).map(C=>ee(C))}),Be=g(()=>{let r=Ne();return r.length>0?r:pe()}),Ze=g(()=>{if(v()||y()){o.viewportVersion;let r=o.frozenElement||G();if(r){let c=ee(r);return {x:jt(c).x+o.copyOffsetFromCenterX,y:o.copyStart.y}}return {x:o.copyStart.x,y:o.copyStart.y}}return {x:o.pointer.x,y:o.pointer.y}});f(j(()=>[G(),o.lastGrabbedElement],([r,c])=>{c&&r&&c!==r&&a.setLastGrabbed(null),r&&i.hooks.onElementHover(r);})),f(j(()=>G(),r=>{let c=()=>{a.setSelectionSource(null,null);};if(!r){c();return}qe(r).then(f=>{if(f){for(let C of f)if(C.fileName&&We(C.fileName)){a.setSelectionSource(Ye(C.fileName),C.lineNumber??null);return}c();}}).catch(c);})),f(j(()=>o.viewportVersion,()=>ie._internal.updateBoundsOnViewportChange())),f(j(()=>[m(),N(),v(),y(),L(),G(),Re(),o.grabbedBoxes,i.store.theme.enabled,i.store.theme.selectionBox.enabled,i.store.theme.dragBox.enabled,Me(),fe(),p()],([r,c,f,C,T,H,z,J,W,X,ne,le,ve,Mt])=>{let ft=!!(W&&X&&r&&!f&&!Mt&&!c&&ve!=null),Ci=!!(W&&ne&&r&&!f&&le);i.hooks.onStateChange({isActive:r,isDragging:c,isCopying:f,isPromptMode:C,isCrosshairVisible:T??false,isSelectionBoxVisible:ft,isDragBoxVisible:Ci,targetElement:H,dragBounds:z?{x:z.x,y:z.y,width:z.width,height:z.height}:null,grabbedBoxes:J.map(Wn=>({id:Wn.id,bounds:Wn.bounds,createdAt:Wn.createdAt})),selectionFilePath:o.selectionFilePath});})),f(j(()=>[y(),o.pointer.x,o.pointer.y,G()],([r,c,f,C])=>{i.hooks.onPromptModeChange(r,{x:c,y:f,targetElement:C});})),f(j(()=>[Un(),be(),G()],([r,c,f])=>{i.hooks.onSelectionBox(!!r,c??null,f);})),f(j(()=>[Vn(),Re()],([r,c])=>{i.hooks.onDragBox(!!r,c??null);})),f(j(()=>[L(),o.pointer.x,o.pointer.y],([r,c,f])=>{i.hooks.onCrosshair(!!r,{x:c,y:f});})),f(j(()=>[fi(),di(),Ze(),G(),o.selectionFilePath,o.selectionLineNumber],([r,c,f,C,T,H])=>{i.hooks.onElementLabel(!!r,c,{x:f.x,y:f.y,content:"",element:C??void 0,tagName:C&&$e(C)||void 0,filePath:T??void 0,lineNumber:H??void 0});}));let ze=null,Qe=r=>{r?(ze||(ze=document.createElement("style"),ze.setAttribute("data-react-grab-cursor",""),document.head.appendChild(ze)),ze.textContent=`* { cursor: ${r} !important; }`):ze&&(ze.remove(),ze=null);};f(j(()=>[m(),v(),N(),y(),G()],([r,c,f,C,T])=>{Qe(c?"progress":C?null:r&&f||r&&T||r?"crosshair":null);}));let et=()=>{let r=d$1();a.activate(),r||i.hooks.onActivate();},ae=()=>{let r=N(),c=o.previouslyFocusedElement;a.deactivate(),R.clearHistory(),r&&(document.body.style.userSelect=""),F&&window.clearTimeout(F),O$1.stop(),c instanceof HTMLElement&&document.contains(c)&&c.focus(),i.hooks.onDeactivate();},zn=()=>{a.setWasActivatedByToggle(true),et();},Ko=(r,c,f)=>{let C=c[0];if(C&&document.contains(C)){let T=C.getBoundingClientRect(),H=T.top+T.height/2;a.setPointer({x:r.position.x,y:H}),a.setFrozenElements(c),a.setInputText(r.context.prompt),a.setWasActivatedByToggle(true),f&&a.setSelectedAgent(f),m()||et();}},jo=r=>({...r,onAbort:(c,f)=>{r.onAbort?.(c,f),Ko(c,f,r);},onUndo:(c,f)=>{r.onUndo?.(c,f),Ko(c,f,r);}}),Kn=()=>{let r=l$1();if(r)return jo(r)},ie=_o(Kn()),zs=r=>{a.setInputText(r);},Ks=()=>{a.setLastCopied(null);let r=[...o.frozenElements],c=o.frozenElement||G(),f=y()?o.inputText.trim():"";if(!c){ae();return}let C=r.length>0?r:c?[c]:[],T=C.map(X=>ee(X)),H=T[0],z=o.pointer.x,J=H.x+H.width/2,W=H.y+H.height/2;if((o.selectedAgent||re())&&f){xe.delete(c);let X=o.replySessionId,ne=o.selectedAgent;ae(),a.setReplySessionId(null),a.clearSelectedAgent(),ie.session.start({elements:C,prompt:f,position:{x:z,y:W},selectionBounds:T,sessionId:X??void 0,agent:ne?jo(ne):void 0});return}a.setPointer({x:J,y:W}),a.exitPromptMode(),a.clearInputText(),a.clearReplySessionId(),f?xe.set(c,f):xe.delete(c),j$1({element:c,positionX:J,positionY:W,elements:C,extraPrompt:f||void 0,onComplete:ae});},Yt=()=>{if(a.setLastCopied(null),!y())return;let r=o.inputText.trim();if(r&&!_()){a.setPendingDismiss(true);return}let c=o.frozenElement||G();c&&r&&xe.set(c,r),a.clearInputText(),a.clearReplySessionId(),ae();},js=()=>{a.clearInputText(),a.clearReplySessionId(),ae();},Us=()=>{a.setPendingDismiss(false);},Vs=(r,c)=>{a.setPendingAbortSessionId(null),c&&ie.session.abort(r);},Gs=()=>{if(!re())return;let r=o.frozenElement||G();r&&I(r,o.pointer.x,o.pointer.y),P();},Xs=(r,c)=>{let f=ie.sessions().get(r),C=ie.session.getElements(r),T=f?.selectionBounds??[],H=T[0];if(f&&C.length>0&&H){let z=f.position.x,J=f.context.sessionId??r;ie.session.dismiss(r),ie.session.start({elements:C,prompt:c,position:{x:z,y:H.y+H.height/2},selectionBounds:T,sessionId:J});}},Ys=r=>{let c=ie.session.acknowledgeError(r);c&&a.setInputText(c);},Ws=()=>{m()?ae():U()&&zn();},qs=()=>{let r=!U();oe(r);let c=Ft();xt({edge:c?.edge??"bottom",ratio:c?.ratio??.5,collapsed:c?.collapsed??false,enabled:r}),r||(d$1()&&a.release(),m()&&ae(),x!==null&&(window.clearTimeout(x),x=null),E=false);},Uo=(r,c)=>{if(!U()||y()||S()||o.contextMenuPosition!==null)return;a.setPointer({x:r,y:c});let f=performance.now();if(f-M>=32&&(M=f,Os(()=>{let C=Cn(r,c);a.setDetectedElement(C);})),N()){let C=Fo(r,c),T=C.top||C.bottom||C.left||C.right;T&&!O$1.isActive()?O$1.start():!T&&O$1.isActive()&&O$1.stop();}},Vo=(r,c)=>!A()||v()?false:(a.startDrag({x:r,y:c}),document.body.style.userSelect="none",i.hooks.onDragStart(r+window.scrollX,c+window.scrollY),true),Js=r=>{let c=Kt(r,Je),f=c.length>0?c:Kt(r,Je,false);if(f.length===0)return;Xt(f),i.hooks.onDragEnd(f,r);let C=f[0],T=jt(ee(C));re()?(a.setPointer(T),a.setFrozenElements(f),a.setFrozenDragRect({pageX:r.x+window.scrollX,pageY:r.y+window.scrollY,width:r.width,height:r.height}),a.freeze(),a.showContextMenu(T,C),m()||et()):j$1({element:C,positionX:T.x,positionY:T.y,elements:f,shouldDeactivateAfter:true,dragRect:{pageX:r.x+window.scrollX,pageY:r.y+window.scrollY,width:r.width,height:r.height}});},Zs=(r,c,f)=>{let C=Cn(r,c);if(!C)return;let T=o.wasActivatedByToggle&&!f;a.setLastGrabbed(C),j$1({element:C,positionX:r,positionY:c,shouldDeactivateAfter:T});},jn=(r,c,f=false)=>{if(!N())return;let C=te(r,c),T=C.x>2||C.y>2,H=T?_e(r,c):null;T?a.endDrag():a.cancelDrag(),O$1.stop(),document.body.style.userSelect="",H?Js(H):Zs(r,c,f);},me=ms(),Wt=Ts(),dt=r=>{let c;try{c=Wt.originalKeyDescriptor?.get?Wt.originalKeyDescriptor.get.call(r):r.key;}catch{return false}let f=c==="Enter"||ut(r.code),C=m()||d$1();return f&&C&&!y()&&!o.wasActivatedByToggle?(Wt.claimedEvents.add(r),r.preventDefault(),r.stopPropagation(),r.stopImmediatePropagation(),true):false};me.addDocumentListener("keydown",dt,{capture:true}),me.addDocumentListener("keyup",dt,{capture:true}),me.addDocumentListener("keypress",dt,{capture:true});let Qs=r=>{if(!(r.code==="KeyZ"&&(r.metaKey||r.ctrlKey))||Array.from(ie.sessions().values()).some(T=>!T.isStreaming&&!T.error))return false;let C=r.shiftKey;return C&&ie.canRedo()?(r.preventDefault(),r.stopPropagation(),ie.history.redo(),true):!C&&ie.canUndo()?(r.preventDefault(),r.stopPropagation(),ie.history.undo(),true):false},ei=r=>{if(!m()||y())return false;let c=fe();if(!c)return false;let f=R.findNext(r.key,c);if(!f)return false;r.preventDefault(),r.stopPropagation(),a.setFrozenElement(f),a.freeze();let C=ee(f),T=jt(C);return a.setPointer(T),o.contextMenuPosition!==null&&a.showContextMenu(T,f),true},ti=r=>{if(!ut(r.code))return false;let c=o.lastCopiedElement;if(!d$1()&&!y()&&!m()&&c&&document.contains(c)&&re()&&!o.labelInstances.some(T=>T.status==="copied"||T.status==="fading")&&c){r.preventDefault(),r.stopPropagation(),r.stopImmediatePropagation();let T=jt(ee(c));return a.setPointer(T),I(c,T.x,T.y),a.setFrozenElement(c),a.setLastCopied(null),P(),m()||et(),true}if(d$1()&&!y()&&re()){r.preventDefault(),r.stopPropagation(),r.stopImmediatePropagation();let T=o.frozenElement||G(),H=o.pointer.x,z=o.pointer.y;return T&&I(T,H,z),a.setPointer({x:H,y:z}),T&&a.setFrozenElement(T),P(),F!==null&&(window.clearTimeout(F),F=null),m()||et(),true}return false},ni=r=>{if(r.key?.toLowerCase()!=="o"||y()||!m()||!(r.metaKey||r.ctrlKey))return false;let c=o.selectionFilePath,f=o.selectionLineNumber;if(!c)return false;if(r.preventDefault(),r.stopPropagation(),!i.hooks.onOpenFile(c,f??void 0)){let T=_t(c,f??void 0);window.open(T,"_blank","noopener,noreferrer");}return true},oi=r=>{if(!ia$1()||o.contextMenuPosition!==null||r.key?.toLowerCase()!=="s"||y()||!m()||!(r.metaKey||r.ctrlKey))return false;let c=pe(),f=be(),C=o.frozenElement||G(),T=c.length>1?Ut(c):f;if(!T)return false;r.preventDefault(),r.stopPropagation();let H=C&&$e(C)||"element",z=o.wasActivatedByToggle,J=Tt(T),W=c.length>1?c:f?[f]:[],X=de(J,H,void 0,"copying",C??void 0,T.x+T.width/2,void 0,W);return b=true,nt.style.visibility="hidden",(async()=>{await No(K);let ne=false,le;try{let ve=await Oo(T);ne=await Ro(ve),ne||(le="Failed to copy");}catch(ve){le=ve instanceof Error&&ve.message?ve.message:"Screenshot failed";}b=false,nt.style.visibility="",q(X,ne?"copied":"error",ne?void 0:le||"Unknown error"),setTimeout(()=>{q(X,"fading"),setTimeout(()=>{se(X);},150);},1500),z?ae():a.unfreeze();})(),true},ri=r=>{if(!(!i.store.options.allowActivationInsideInput&&da$1(r))&&!(!Po(r,i.store.options)&&(m()&&!o.wasActivatedByToggle&&(r.metaKey||r.ctrlKey)&&!O.includes(r.key)&&!ut(r.code)&&ae(),!ut(r.code)||!d$1()))){if((m()||d$1())&&!y()&&(r.preventDefault(),ut(r.code)&&(r.stopPropagation(),r.stopImmediatePropagation())),m()){if(o.wasActivatedByToggle&&i.store.options.activationMode!=="hold"||r.repeat)return;F!==null&&window.clearTimeout(F),F=window.setTimeout(()=>{ae();},200);return}if(d$1()&&r.repeat){if(g$1){let c=h$1;Ee(),c&&a.activate();}return}if(!(v()||p())&&!d$1()){let f=i.store.options.keyHoldDuration??75;da$1(r)?ea$1(r)?f+=300:f+=150:fa$1()&&(f+=300),Ee(),a.startHold(f);}}};me.addWindowListener("keydown",r=>{if(dt(r),!U()||Qs(r))return;let c=ut(r.code)&&d$1()&&!y();if(y()&&Po(r,i.store.options)&&!r.repeat){r.preventDefault(),r.stopPropagation(),Yt();return}if(y()||Oe(r,"data-react-grab-ignore-events")&&!c){r.key==="Escape"&&(ue()?(r.preventDefault(),r.stopPropagation(),a.setPendingAbortSessionId(null)):o.wasActivatedByToggle&&!y()&&ae());return}if(r.key==="Escape"){if(ue()){r.preventDefault(),r.stopPropagation(),a.setPendingAbortSessionId(null);return}if(ie.isProcessing())return;if(d$1()||o.wasActivatedByToggle){ae();return}}ei(r)||ti(r)||ni(r)||oi(r)||ri(r);},{capture:true}),me.addWindowListener("keyup",r=>{if(dt(r))return;let c=As(i.store.options),f=c.metaKey||c.ctrlKey?!r.metaKey&&!r.ctrlKey:c.shiftKey&&!r.shiftKey||c.altKey&&!r.altKey,C=i.store.options.activationKey?typeof i.store.options.activationKey=="function"?i.store.options.activationKey(r):On(i.store.options.activationKey)(r):Pn(r.key,r.code);if(p()||E){(C||f)&&(E=false,ae());return}if(!d$1()&&!m()||y())return;let T=!!i.store.options.activationKey,H=i.store.options.activationMode==="hold";if(m()){let z=o.contextMenuPosition!==null;if(f){if(o.wasActivatedByToggle&&i.store.options.activationMode!=="hold"||z)return;ae();}else if(H&&C){if(F!==null&&(window.clearTimeout(F),F=null),z)return;ae();}else !T&&C&&F!==null&&(window.clearTimeout(F),F=null);return}if(C||f){if(o.wasActivatedByToggle&&i.store.options.activationMode!=="hold")return;if(d$1()||h$1&&f){Se();let J=h$1&&(i.store.options.allowActivationInsideInput||!da$1(r));Ee(),J?a.activate():a.release();}else ae();}},{capture:true}),me.addDocumentListener("copy",()=>{d$1()&&(g$1=true);}),me.addWindowListener("keypress",dt,{capture:true}),me.addWindowListener("mousemove",r=>{a.setTouchMode(false),!Oe(r,"data-react-grab-ignore-events")&&o.contextMenuPosition===null&&(m()&&!y()&&S()&&(a.unfreeze(),R.clearHistory()),Uo(r.clientX,r.clientY));}),me.addWindowListener("mousedown",r=>{if(r.button!==0||Oe(r,"data-react-grab-ignore-events")||o.contextMenuPosition!==null)return;if(y()){Yt();return}Vo(r.clientX,r.clientY)&&(r.preventDefault(),r.stopPropagation(),r.stopImmediatePropagation());},{capture:true}),me.addWindowListener("pointerdown",r=>{r.button===0&&(Oe(r,"data-react-grab-ignore-events")||o.contextMenuPosition===null&&(!A()||v()||y()||(r.stopPropagation(),r.stopImmediatePropagation())));},{capture:true}),me.addWindowListener("pointerup",r=>{r.button===0&&(Oe(r,"data-react-grab-ignore-events")||o.contextMenuPosition===null&&jn(r.clientX,r.clientY,r.metaKey||r.ctrlKey));},{capture:true}),me.addWindowListener("mouseup",r=>{r.button===0&&(Oe(r,"data-react-grab-ignore-events")||o.contextMenuPosition===null&&jn(r.clientX,r.clientY,r.metaKey||r.ctrlKey));},{capture:true}),me.addWindowListener("contextmenu",r=>{if(!A()||v()||y()||Oe(r,"data-react-grab-ignore-events"))return;if(o.contextMenuPosition!==null){r.preventDefault();return}r.preventDefault(),r.stopPropagation();let c=Cn(r.clientX,r.clientY);if(!c)return;let f=o.frozenElements;f.length>1&&f.includes(c)?Xt(f):(Xt([c]),a.setFrozenElement(c));let T={x:r.clientX,y:r.clientY};a.setPointer(T),a.freeze(),a.showContextMenu(T,c),i.hooks.onContextMenu(c,T);},{capture:true}),me.addWindowListener("touchmove",r=>{r.touches.length!==0&&(a.setTouchMode(true),!Oe(r,"data-react-grab-ignore-events")&&(d$1()&&!y()&&S()&&a.unfreeze(),Uo(r.touches[0].clientX,r.touches[0].clientY)));},{passive:true}),me.addWindowListener("touchstart",r=>{if(r.touches.length===0||(a.setTouchMode(true),Oe(r,"data-react-grab-ignore-events")))return;if(y()){Yt();return}Vo(r.touches[0].clientX,r.touches[0].clientY)&&(r.preventDefault(),r.stopPropagation(),r.stopImmediatePropagation());},{passive:false}),me.addWindowListener("touchend",r=>{r.changedTouches.length!==0&&jn(r.changedTouches[0].clientX,r.changedTouches[0].clientY);}),me.addWindowListener("click",r=>{Oe(r,"data-react-grab-ignore-events")||o.contextMenuPosition===null&&(A()||v()||B())&&(r.preventDefault(),r.stopPropagation(),r.stopImmediatePropagation(),o.wasActivatedByToggle&&!v()&&!y()&&(d$1()?a.setWasActivatedByToggle(false):ae()));},{capture:true}),me.addDocumentListener("visibilitychange",()=>{if(document.hidden){a.clearGrabbedBoxes();let r=o.activationTimestamp;m()&&!y()&&!b&&r!==null&&Date.now()-r>500&&ae();}}),me.addWindowListener("scroll",()=>{a.incrementViewportVersion(),a.updateSessionBounds(),a.updateContextMenuPosition();},{capture:true}),me.addWindowListener("resize",()=>{a.incrementViewportVersion(),a.updateSessionBounds(),a.updateContextMenuPosition();});let tt=null,Ke=null,si=()=>{let r=i.store.theme.enabled&&(m()||v()||o.labelInstances.length>0||o.grabbedBoxes.length>0||ie.sessions().size>0);r&&tt===null?tt=window.setInterval(()=>{Ke===null&&(Ke=requestAnimationFrame(()=>{Ke=null,a.incrementViewportVersion(),a.updateSessionBounds();}));},100):!r&&tt!==null&&(window.clearInterval(tt),tt=null,Ke!==null&&(cancelAnimationFrame(Ke),Ke=null));};f(()=>{i.store.theme.enabled,m(),v(),o.labelInstances.length,o.grabbedBoxes.length,ie.sessions().size,si();}),l(()=>{tt!==null&&window.clearInterval(tt),Ke!==null&&cancelAnimationFrame(Ke);}),me.addDocumentListener("copy",r=>{y()||Oe(r,"data-react-grab-ignore-events")||(A()||v())&&r.preventDefault();},{capture:true}),l(()=>{me.abort(),F&&window.clearTimeout(F),x&&window.clearTimeout(x),O$1.stop(),document.body.style.userSelect="",Qe(null),Wt.restore();});let nt=Dr(C),Un=g(()=>!i.store.theme.enabled||!i.store.theme.selectionBox.enabled||p()?false:Ne().length>0?true:A()&&!N()&&!!fe()),ii=g(()=>{let r=fe();if(r)return $e(r)||void 0}),[ai]=h(()=>fe(),async r=>r?await Ct(r)??void 0:void 0),li=g(()=>o.contextMenuPosition!==null||!i.store.theme.elementLabel.enabled||p()?false:A()&&!N()&&!!fe()),qt=new Map,ci=g(()=>{if(!i.store.theme.enabled)return [];if(!i.store.theme.grabbedBoxes.enabled)return [];o.viewportVersion;let r=new Set(o.labelInstances.map(c=>c.id));for(let c of qt.keys())r.has(c)||qt.delete(c);return o.labelInstances.map(c=>{let f=c.elements&&c.elements.length>1,C=c.element,H=!f&&C&&document.body.contains(C)?ee(C):c.bounds,z=qt.get(c.id),J=z&&z.bounds.x===H.x&&z.bounds.y===H.y&&z.bounds.width===H.width&&z.bounds.height===H.height;if(z&&z.status===c.status&&z.errorMessage===c.errorMessage&&J)return z;let W=H.x+H.width/2,X=H.width/2,ne=c.mouseXOffsetRatio!==void 0&&X>0?W+c.mouseXOffsetRatio*X:c.mouseXOffsetFromCenter!==void 0?W+c.mouseXOffsetFromCenter:c.mouseX,le={...c,bounds:H,mouseX:ne};return qt.set(c.id,le),le})}),ui=g(()=>i.store.theme.enabled?i.store.theme.grabbedBoxes.enabled?(o.viewportVersion,o.grabbedBoxes.map(r=>!r.element||!document.body.contains(r.element)?r:{...r,bounds:ee(r.element)})):[]:[]),Vn=g(()=>i.store.theme.enabled&&i.store.theme.dragBox.enabled&&A()&&Me()),di=g(()=>v()?"processing":"hover"),fi=g(()=>{if(!i.store.theme.enabled)return false;let r=i.store.theme.elementLabel.enabled,c=y(),f=v(),C=A(),T=N(),H=!!fe();return !r||c?false:f?true:C&&!T&&H}),Gn=g(()=>{o.viewportVersion;let r=o.contextMenuElement;return r?ee(r):null}),mi=g(()=>(o.viewportVersion,o.contextMenuPosition)),Go=g(()=>{let r=o.contextMenuElement;if(!r)return;let c=o.frozenElements.length;return c>1?`${c} elements`:$e(r)||void 0}),[Xn]=h(()=>({element:o.contextMenuElement,frozenCount:o.frozenElements.length}),async({element:r,frozenCount:c})=>!r||c>1?void 0:await Ct(r)??void 0),[Yn]=h(()=>o.contextMenuElement,async r=>{if(!r)return null;let c=await qe(r);if(!c||c.length===0)return null;for(let f of c)if(f.fileName&&We(f.fileName))return {filePath:Ye(f.fileName),lineNumber:f.lineNumber};return null}),gi=g(()=>{let r=o.contextMenuElement;if(!r)return;let c=Yn();return {element:r,elements:o.frozenElements.length>0?o.frozenElements:[r],filePath:c?.filePath,lineNumber:c?.lineNumber,componentName:Xn(),tagName:Go(),enterPromptMode:yi}}),Xo=()=>{let r=o.contextMenuElement;if(!r)return;let c=o.contextMenuPosition??o.pointer,f=[...o.frozenElements];j$1({element:r,positionX:c.x,positionY:c.y,elements:f.length>1?f:void 0,shouldDeactivateAfter:o.wasActivatedByToggle}),setTimeout(()=>{a.hideContextMenu();},0);},pi=async()=>{let r=pe(),c=Gn(),f=o.contextMenuElement,C=o.frozenElements.length>1?Ut(r):c;if(!C)return;let T=f&&$e(f)||"element",H=o.wasActivatedByToggle,z=Tt(C),J=o.frozenElements.length>1?r:c?[c]:[];a.hideContextMenu();let W=de(z,T,void 0,"copying",f??void 0,C.x+C.width/2,void 0,J);b=true,nt.style.visibility="hidden",await No(K);let X=false,ne;try{let le=await Oo(C);X=await Ro(le),X||(ne="Failed to copy");}catch(le){ne=le instanceof Error&&le.message?le.message:"Screenshot failed";}b=false,nt.style.visibility="",q(W,X?"copied":"error",X?void 0:ne||"Unknown error"),setTimeout(()=>{q(W,"fading"),setTimeout(()=>{se(W);},150);},1500),H?ae():a.unfreeze();},hi=async()=>{let r=o.contextMenuElement;if(!r)return;let c=[...o.frozenElements],C=(c.length>0?c:[r]).map(Mt=>Mt.outerHTML).join(`
49
+
50
+ `),T=o.contextMenuPosition??o.pointer,H=pe(),z=Gn(),J=o.frozenElements.length>1?Ut(H):null,W=J?Tt(J):z,X=$e(r)||"element",ne=Xn(),le=o.wasActivatedByToggle,ve=o.frozenElements.length>1?H:z?[z]:[];if(a.hideContextMenu(),W){let Mt=H.length>1?W.x+W.width/2:T.x,ft=de(W,X,ne,"copying",r,Mt,c.length>1?c:void 0,ve);try{await navigator.clipboard.writeText(C),q(ft,"copied");}catch{q(ft,"error","Failed to copy");}setTimeout(()=>{q(ft,"fading"),setTimeout(()=>{se(ft);},150);},1500);}else try{await navigator.clipboard.writeText(C);}catch{}le?ae():a.unfreeze();},bi=()=>{let r=Yn();if(r&&!i.hooks.onOpenFile(r.filePath,r.lineNumber??void 0)){let f=_t(r.filePath,r.lineNumber);window.open(f,"_blank","noopener,noreferrer");}setTimeout(()=>{a.hideContextMenu(),a.unfreeze();},0);},yi=r=>{let c=o.contextMenuElement,f=o.contextMenuPosition;if(!(!c||!f)){if(!re()&&!r){Xo();return}r&&a.setSelectedAgent(r),I(c,f.x,f.y),a.setPointer({x:f.x,y:f.y}),o.frozenElements.length===0&&a.setFrozenElement(c),P(),setTimeout(()=>{a.hideContextMenu();},0);}},Si=()=>{setTimeout(()=>{a.hideContextMenu(),ae();},0);},Ei=()=>{setTimeout(()=>{a.hideContextMenu();},0);},wi=r=>{let c=ie.sessions().get(r);if(!c)return;let f=ie.session.getElement(r);f&&document.contains(f)&&setTimeout(()=>{m()||(a.setWasActivatedByToggle(true),et()),a.setPointer(c.position),a.setFrozenElement(f),a.freeze(),a.showContextMenu(c.position,f);},0);},xi=r=>{let c=o.labelInstances.find(H=>H.id===r);if(!c?.element||!document.contains(c.element))return;let f=ee(c.element),C={x:c.mouseX??f.x+f.width/2,y:f.y+f.height/2},T=c.elements&&c.elements.length>0?c.elements.filter(H=>document.contains(H)):[c.element];setTimeout(()=>{m()||(a.setWasActivatedByToggle(true),et()),a.setPointer(C),a.setFrozenElements(T),a.freeze(),a.showContextMenu(C,c.element);},0);};f(()=>{let r=i.store.theme.hue;r!==0?nt.style.filter=`hue-rotate(${r}deg)`:nt.style.filter="";}),i.store.theme.enabled&&s(()=>n(Hr,{get selectionVisible(){return Un()},get selectionBounds(){return be()},get selectionBoundsMultiple(){return Be()},get selectionShouldSnap(){return o.frozenElements.length>0||Ne().length>0},get selectionElementsCount(){return we()},get selectionFilePath(){return o.selectionFilePath??void 0},get selectionLineNumber(){return o.selectionLineNumber??void 0},get selectionTagName(){return ii()},get selectionComponentName(){return ai()},get selectionLabelVisible(){return li()},selectionLabelStatus:"idle",get labelInstances(){return ci()},get dragVisible(){return Vn()},get dragBounds(){return Re()},get grabbedBoxes(){return ui()},labelZIndex:2147483647,get mouseX(){return r(()=>o.frozenElements.length>0)()?void 0:Ze().x},get mouseY(){return Ze().y},get crosshairVisible(){return L()},get inputValue(){return o.inputText},get isPromptMode(){return y()},get hasAgent(){return re()},get isAgentConnected(){return o.isAgentConnected},get agentSessions(){return ie.sessions()},get supportsUndo(){return o.supportsUndo},get supportsFollowUp(){return o.supportsFollowUp},get dismissButtonText(){return o.dismissButtonText},get onDismissSession(){return ie.session.dismiss},get onUndoSession(){return ie.session.undo},onFollowUpSubmitSession:Xs,onAcknowledgeSessionError:Ys,get onRetrySession(){return ie.session.retry},onShowContextMenuSession:wi,onShowContextMenuInstance:xi,onInputChange:zs,onInputSubmit:()=>void Ks(),onInputCancel:Yt,onToggleExpand:Gs,get isPendingDismiss(){return _()},onConfirmDismiss:js,onCancelDismiss:Us,get pendingAbortSessionId(){return ue()},onRequestAbortSession:r=>a.setPendingAbortSessionId(r),onAbortSession:Vs,get theme(){return i.store.theme},get toolbarVisible(){return i.store.theme.toolbar.enabled},get isActive(){return m()},onToggleActive:Ws,get enabled(){return U()},onToggleEnabled:qs,get contextMenuPosition(){return mi()},get contextMenuBounds(){return Gn()},get contextMenuTagName(){return Go()},get contextMenuComponentName(){return Xn()},get contextMenuHasFilePath(){return !!Yn()?.filePath},get actions(){return i.store.actions},get actionContext(){return gi()},onContextMenuCopy:Xo,onContextMenuCopyScreenshot:()=>void pi(),onContextMenuCopyHtml:()=>void hi(),onContextMenuOpen:bi,onContextMenuDismiss:Si,onContextMenuHide:Ei}),nt),re()&&ie.session.tryResume();let vi=async r=>{let c=Array.isArray(r)?r:[r];return c.length===0?false:await k(c)},Yo=()=>{let r=Kn();r&&ie._internal.setOptions(r);let c=!!r?.provider;if(a.setHasAgentProvider(c),c&&r?.provider){let f=r.provider;a.setAgentCapabilities({supportsUndo:!!f.undo,supportsFollowUp:!!f.supportsFollowUp,dismissButtonText:f.dismissButtonText,isAgentConnected:false}),f.checkConnection&&f.checkConnection().then(C=>{Kn()?.provider===f&&a.setAgentCapabilities({supportsUndo:!!f.undo,supportsFollowUp:!!f.supportsFollowUp,dismissButtonText:f.dismissButtonText,isAgentConnected:C});}).catch(()=>{}),ie.session.tryResume();}else a.setAgentCapabilities({supportsUndo:false,supportsFollowUp:false,dismissButtonText:void 0,isAgentConnected:false});},Wo={activate:()=>{!m()&&U()&&zn();},deactivate:()=>{m()&&ae();},toggle:()=>{m()?ae():U()&&zn();},isActive:()=>m(),dispose:()=>{zo=false,s$1();},copyElement:vi,getSource:async r=>{let c=await qe(r);if(!c)return null;for(let f of c)if(f.fileName&&We(f.fileName))return {filePath:Ye(f.fileName),lineNumber:f.lineNumber??null,componentName:f.functionName&&vt(f.functionName)?f.functionName:null};return null},getState:()=>({isActive:m(),isDragging:N(),isCopying:v(),isPromptMode:y(),isCrosshairVisible:L()??false,isSelectionBoxVisible:Un()??false,isDragBoxVisible:Vn()??false,targetElement:G(),dragBounds:Re()??null,grabbedBoxes:o.grabbedBoxes.map(r=>({id:r.id,bounds:r.bounds,createdAt:r.createdAt})),selectionFilePath:o.selectionFilePath}),setOptions:r=>{i.setOptions(r);},registerPlugin:r=>{i.register(r,Wo),Yo();},unregisterPlugin:r=>{i.unregister(r),Yo();},getPlugins:()=>i.getPluginNames(),getDisplayName:Co};return Wo}))};/*! Bundled license information:
51
+
52
+ bippy/dist/rdt-hook-5L_ky0r0.js:
53
+ (**
54
+ * @license bippy
55
+ *
56
+ * Copyright (c) Aiden Bai
57
+ *
58
+ * This source code is licensed under the MIT license found in the
59
+ * LICENSE file in the root directory of this source tree.
60
+ *)
61
+
62
+ bippy/dist/core-U1d648PH.js:
63
+ (**
64
+ * @license bippy
65
+ *
66
+ * Copyright (c) Aiden Bai
67
+ *
68
+ * This source code is licensed under the MIT license found in the
69
+ * LICENSE file in the root directory of this source tree.
70
+ *)
71
+
72
+ bippy/dist/source.js:
73
+ (**
74
+ * @license bippy
75
+ *
76
+ * Copyright (c) Aiden Bai
77
+ *
78
+ * This source code is licensed under the MIT license found in the
79
+ * LICENSE file in the root directory of this source tree.
80
+ *)
81
+
82
+ bippy/dist/install-hook-only-CgvoC7AQ.js:
83
+ (**
84
+ * @license bippy
85
+ *
86
+ * Copyright (c) Aiden Bai
87
+ *
88
+ * This source code is licensed under the MIT license found in the
89
+ * LICENSE file in the root directory of this source tree.
90
+ *)
91
+
92
+ bippy/dist/index.js:
93
+ (**
94
+ * @license bippy
95
+ *
96
+ * Copyright (c) Aiden Bai
97
+ *
98
+ * This source code is licensed under the MIT license found in the
99
+ * LICENSE file in the root directory of this source tree.
100
+ *)
101
+ */export{rt as a,qe as b,Ao as c,vn as d,zt as e,Ut as f,Oo as g,Ro as h,at as i,Ef as j};