react-grab 0.1.48-dev.ac9f548 → 0.1.48-dev.b18eff0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/copy-content-BX7Cfd2n.js +10 -0
- package/dist/{copy-content-3sDfOP1b.d.ts → copy-content-CDFe4uJW.d.ts} +3 -6
- package/dist/copy-content-Cf6xuUb1.cjs +10 -0
- package/dist/{copy-content-TZDC2S2A.d.cts → copy-content-hpjB511j.d.cts} +3 -6
- package/dist/core/index.cjs +1 -1
- package/dist/core/index.d.cts +2 -2
- package/dist/core/index.d.ts +2 -2
- package/dist/core/index.js +1 -1
- package/dist/core-Bhesyij7.cjs +14 -0
- package/dist/core-gGgxPEEO.js +14 -0
- package/dist/{errors-BEgowzRA.d.ts → errors-Bk7FIavr.d.cts} +2 -10
- package/dist/{errors-CTlIFDQs.d.cts → errors-Cy89H8tr.d.ts} +2 -10
- package/dist/execute-context-menu-action-5MMF1tSN.js +9 -0
- package/dist/{execute-context-menu-action-fTmac_ns.cjs → execute-context-menu-action-Cuu4EgLI.cjs} +1 -1
- package/dist/freeze-updates-CQNe1XqU.cjs +61 -0
- package/dist/freeze-updates-irDkdLIm.js +61 -0
- package/dist/{index-DDf5jObx.d.cts → index-D23mfsUe.d.cts} +1 -1
- package/dist/{index-DWvC_uKW.d.ts → index-qFak7ECs.d.ts} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +8 -10
- package/dist/index.d.ts +8 -10
- package/dist/index.global.js +17 -17
- package/dist/index.js +1 -1
- package/dist/primitives.cjs +2 -2
- package/dist/primitives.d.cts +3 -3
- package/dist/primitives.d.ts +3 -3
- package/dist/primitives.js +2 -2
- package/dist/renderer-5gTtKWyI.cjs +9 -0
- package/dist/renderer-B4dG3kky.js +9 -0
- package/package.json +2 -2
- package/dist/core-B0lTGjhs.cjs +0 -14
- package/dist/core-F4U8oWT_.js +0 -14
- package/dist/execute-context-menu-action-Cqp9WXtB.js +0 -9
- package/dist/freeze-updates-BVSfZssI.js +0 -51
- package/dist/freeze-updates-D2h3w4xO.cjs +0 -51
- package/dist/open-file-B_sRLFmL.js +0 -29
- package/dist/open-file-BrBrRUg0.cjs +0 -20
- package/dist/renderer-Czij1mfU.cjs +0 -9
- package/dist/renderer-DGTM0iNN.js +0 -9
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
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
|
+
import{$t as e,C as t,D as n,Dt as r,E as i,G as a,Ht as o,K as s,L as c,M as l,O as u,S as d,T as f,U as p,Ut as m,Vt as h,W as ee,Wt as te,X as ne,Xt as re,Yt as ie,Z as g,Zt as ae,b as oe,k as se,nt as ce,q as _,w as le,x as v}from"./freeze-updates-irDkdLIm.js";const ue=e=>e===void 0||!Number.isFinite(e)?3:Math.max(0,Math.floor(e)),y=e=>{try{return decodeURIComponent(e)}catch{return e}},de=/(?:^|[/\\])node_modules[/\\]/,fe=/[/\\]\.vite[/\\]deps[^/\\]*[/\\]/,pe=/\.[mc]?[jt]sx?$/i,me=/^chunk-[A-Za-z0-9_-]+$/,he=/[/\\]/,ge=/^(.+?)@v?\d/,b=e=>e.split(he).filter(Boolean),_e=e=>{let[t,n]=b(e);return!t||t.startsWith(`.`)?null:t.startsWith(`@`)?n?`${t}/${n}`:null:t},ve=e=>{let t=b(e)[0];if(!t)return null;let n=t.replace(pe,``);if(me.test(n))return null;if(!n.startsWith(`@`))return n;let r=n.indexOf(`_`);return r===-1?null:`${n.slice(0,r)}/${n.slice(r+1)}`},ye=(e,t,n)=>{let r=e.split(t);return r.length>1?n(r[r.length-1]):null},x=e=>e?.match(ge)?.[1]??null,be=e=>{let t;try{t=new URL(e)}catch{return null}if(!t.hostname)return null;let n=b(t.pathname).map(y);for(let[e,t]of n.entries()){if(t.startsWith(`@`)){let r=x(n[e+1]);if(r)return`${t}/${r}`;continue}let r=x(t);if(r)return r}return null},xe=e=>ye(e,fe,ve)??ye(e,de,_e),Se=e=>{if(!e)return null;let n=t(e);return n&&(xe(y(n))||be(e))||null},Ce=/^@[A-Za-z0-9][A-Za-z0-9._-]*$/,we=/^[A-Za-z0-9][A-Za-z0-9._-]*$/,Te=new Set([`app`,`web`,`website`,`frontend`,`client`,`src`]),Ee=new Set([`app`,`src`,`components`,`pages`,`features`,`modules`,`hooks`,`lib`,`utils`,`ui`,`shared`,`common`,`core`,`styles`,`assets`]),De=e=>{let t=e;for(;t.startsWith(`../`)||t.startsWith(`./`);)t=t.slice(t.startsWith(`../`)?3:2);return t},Oe=e=>{let n=De(y(t(e)));if(n.startsWith(`/`))return null;let[r,i,...a]=b(n);return!r||!i||a.length===0||!Ce.test(r)||Ee.has(r.slice(1))||!we.test(i)||pe.test(i)||Te.has(i)?null:`${r}/${i}`},ke=e=>e?Se(e)??Oe(e):null,S=e=>{if(!e)return{origin:`unknown`,packageName:null};let t=ke(e);return t?{origin:`package`,packageName:t}:n(e)?{origin:`app`,packageName:null}:{origin:`unknown`,packageName:null}},Ae=new Set([`role`,`name`,`aria-label`,`rel`,`href`]),C=e=>{if(!/^[a-z-]{3,}$/i.test(e))return!1;let t=e.split(/-|[A-Z]/);for(let e of t)if(e.length<=2||/[^aeiou]{4,}/i.test(e))return!1;return!0},je=(e,t)=>{let n=Ae.has(e)||e.startsWith(`data-`)&&C(e),r=C(t)&&t.length<100||t.startsWith(`#`)&&C(t.slice(1));return n&&r},w=e=>{let t=e[0].name;for(let n=1;n<e.length;n++)t=`${e[n].name} > ${t}`;return t},T=e=>{let t=0;for(let n of e)t+=n.penalty;return t},E=(e,t)=>T(e)-T(t),D=(e,t)=>{let n=e.parentNode;if(!n)return;let r=n.firstChild;if(!r)return;let i=0;for(;r&&(r instanceof Element&&(t===void 0||r.tagName.toLowerCase()===t)&&i++,r!==e);)r=r.nextSibling;return i},Me=(e,t)=>e===`html`?`html`:`${e}:nth-child(${t})`,O=(e,t)=>e===`html`?`html`:`${e}:nth-of-type(${t})`,Ne=(e,t)=>{let n=[],r=e.getAttribute(`id`),i=e.tagName.toLowerCase();r&&C(r)&&n.push({name:`#${CSS.escape(r)}`,penalty:0});for(let t of e.classList)C(t)&&n.push({name:`.${CSS.escape(t)}`,penalty:1});for(let r of e.attributes)t(r.name,r.value)&&n.push({name:`[${CSS.escape(r.name)}="${CSS.escape(r.value)}"]`,penalty:2});n.push({name:i,penalty:5});let a=D(e,i);a!==void 0&&n.push({name:O(i,a),penalty:10});let o=D(e);return o!==void 0&&n.push({name:Me(i,o),penalty:50}),n},k=(e,t=r,n=[])=>{if(t<=0)return[];if(e.length===0)return[n];let i=[];for(let r of e[0]){let a=t-i.length;if(a<=0)break;i.push(...k(e.slice(1),a,[...n,r]))}return i},Pe=(e,t)=>{let n=t.getRootNode?.();return n instanceof ShadowRoot?n:e instanceof Document?e:e.ownerDocument},A=(e,t)=>t.querySelectorAll(w(e)).length===1,Fe=(e,t)=>{let n=e,r=[];for(;n&&n!==t;){let e=n.tagName.toLowerCase(),t=D(n,e);if(t===void 0)return;r.push({name:O(e,t),penalty:10}),n=n.parentElement}return A(r,t)?r:void 0},Ie=(e,t,n,r)=>{if(e.nodeType!==Node.ELEMENT_NODE)throw new c;if(e.tagName.toLowerCase()===`html`)return`html`;let i=Pe(t,e),a=Date.now(),o=[],s=e,l=0,u;for(;s&&s!==i&&!u;)if(o.push(Ne(s,r)),s=s.parentElement,l++,l>=3){let t=k(o);t.sort(E);for(let r of t){if(Date.now()-a>n){let t=Fe(e,i);if(!t)throw new ee(n);return w(t)}if(A(r,i)){u=r;break}}}if(!u&&l<3){let e=k(o);e.sort(E);for(let t of e){if(Date.now()-a>n)break;if(A(t,i)){u=t;break}}}if(!u)throw new p;return w(u)},j=e=>e.ownerDocument.body??e.ownerDocument.documentElement,M=new Set([`data-testid`,`data-test-id`,`data-test`,`data-cy`,`data-qa`,`aria-label`,`href`,`src`,`role`,`name`,`title`,`alt`]),N=e=>e.length>0&&e.length<=120,P=(e,t)=>{try{let n=e.ownerDocument.querySelectorAll(t);return n.length===1&&n[0]===e}catch{return!1}},Le=e=>{if(e instanceof HTMLElement&&e.id){let t=`#${CSS.escape(e.id)}`;if(P(e,t))return t}for(let t of M){let n=e.getAttribute(t);if(!n||!N(n))continue;let r=`[${t}=${JSON.stringify(n)}]`;if(P(e,r))return r;let i=`${e.tagName.toLowerCase()}${r}`;if(P(e,i))return i}return null},Re=e=>{let t=[],n=j(e),r=e;for(;r;){if(r instanceof HTMLElement&&r.id){t.unshift(`#${CSS.escape(r.id)}`);break}let e=r.parentElement;if(!e){t.unshift(r.tagName.toLowerCase());break}let i=Array.from(e.children).indexOf(r)+1;if(t.unshift(`${r.tagName.toLowerCase()}:nth-child(${i})`),e===n){t.unshift(n.tagName.toLowerCase());break}r=e}return t.join(` > `)},F=e=>{let t=Le(e);if(t)return t;try{let t=Ie(e,j(e),200,(e,t)=>je(e,t)||M.has(e)&&N(t));if(t)return t}catch{}return Re(e)},ze=[`[id]`,`[data-testid]`,`[data-test-id]`,`[data-test]`,`[data-cy]`,`[data-qa]`,`[aria-label]`,`a[href]`,`button`,`input`,`select`,`textarea`,`[role="button"]`,`[role="link"]`,`[role="checkbox"]`,`[role="radio"]`,`[role="switch"]`,`[role="tab"]`,`[role="menuitem"]`,`[role="option"]`,`[role="textbox"]`,`[role="combobox"]`,`[role="slider"]`,`[role="spinbutton"]`].join(`,`),Be=e=>{let{body:t,documentElement:n}=e.ownerDocument;if(e===t||e===n)return!0;if(!t)return!1;let r=t.getElementsByTagName(`*`).length;return r===0?!1:e.getElementsByTagName(`*`).length/r>=ce},I=e=>{let t=e.closest(ze);return!t||Be(t)?e:t},Ve=[/\/assets\/[^/?#]+-[a-z0-9_-]{6,}\.(?:c|m)?js(?:[?#]|$)/,/\/_next\/static\/.*\.(?:c|m)?js(?:[?#]|$)/,/\/static\/chunks\/.*\.(?:c|m)?js(?:[?#]|$)/],L=e=>{if(!e)return!1;let t=`/${d(e)}`.toLowerCase();return Ve.some(e=>e.test(t))},He=e=>{if(!e)return!1;let t=`/${d(e)}/`.toLowerCase();return ie.some(e=>t.includes(e))},R=e=>e.map(e=>`\n in ${e}`).join(``),z=[`about://React/`,`rsc://React/`],Ue=e=>z.some(t=>e.startsWith(t)),We=e=>{for(let t of z){if(!e.startsWith(t))continue;let n=e.indexOf(`/`,t.length);if(n===-1)continue;let r=n+1,i=e.lastIndexOf(`?`);return y(i>r?e.slice(r,i):e.slice(r))}return e},Ge=e=>{if(typeof e!=`object`||!e||!(`status`in e)||e.status!==`fulfilled`||!(`value`in e)||typeof e.value!=`object`||e.value===null||!(`originalStackFrame`in e.value))return null;let t=e.value.originalStackFrame;return typeof t!=`object`||!t||!(`file`in t)||typeof t.file!=`string`||!t.file||`ignored`in t&&t.ignored?null:{file:t.file,line1:`line1`in t&&typeof t.line1==`number`?t.line1:null,column1:`column1`in t&&typeof t.column1==`number`?t.column1:null}},Ke=async(e,t)=>{let n=[],r=[];for(let t=0;t<e.length;t++){let i=e[t];!i.isServer||!i.fileName||(n.push(t),r.push({file:We(i.fileName),methodName:i.functionName??`<unknown>`,line1:i.lineNumber??null,column1:i.columnNumber??null,arguments:[]}))}if(r.length===0)return e;let i=new AbortController,a=setTimeout(()=>i.abort(),ae),o=()=>i.abort();t?.aborted&&i.abort(),t?.addEventListener(`abort`,o);try{let t=await fetch(`${oe()}/__nextjs_original-stack-frames`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({frames:r,isServer:!0,isEdgeServer:!1,isAppDirectory:!0}),priority:`high`,signal:i.signal});if(!t.ok)return e;let a=await t.json();if(!Array.isArray(a))return e;let o=[...e];for(let t=0;t<n.length;t++){let r=Ge(a[t]);if(!r)continue;let i=n[t];o[i]={...e[i],fileName:r.file,lineNumber:r.line1??void 0,columnNumber:r.column1??void 0,isSymbolicated:!0}}return o}catch{return e}finally{clearTimeout(a),t?.removeEventListener(`abort`,o)}},qe=e=>{let t=new Map;return ne(e,e=>{if(!f(e))return!1;let n=se(e._debugStack.stack);if(!n)return!1;for(let e of u(n))!e.functionName||!e.fileName||Ue(e.fileName)&&(t.has(e.functionName)||t.set(e.functionName,{...e,isServer:!0}));return!1},!0),t},Je=(e,t)=>{if(!t.some(e=>e.isServer&&!e.fileName&&e.functionName))return t;let n=qe(e);return n.size===0?t:t.map(e=>{if(!e.isServer||e.fileName||!e.functionName)return e;let t=n.get(e.functionName);return t?{...e,fileName:t.fileName,lineNumber:t.lineNumber,columnNumber:t.columnNumber}:e})};let B=0;const V=[],Ye=()=>B<3?(B+=1,Promise.resolve()):new Promise(e=>{V.push(e)}),Xe=()=>{let e=V.shift();if(e){e();return}--B},H=async(e,t,n=re)=>{await Ye();let r=new AbortController,i,a=new Promise(e=>{i=setTimeout(()=>{r.abort(),e(t)},n)});try{let t=e(r.signal);return t.catch(()=>{}),await Promise.race([t,a])}finally{clearTimeout(i),Xe()}},U=(e,t)=>e.length>t?`${e.slice(0,t)}...`:e,Ze=e=>e.startsWith(`data-react-grab-`),Qe=e=>e.replace(/\s+/g,` `).trim(),$e=e=>{let t=[];for(let n of e.childNodes){if(n.nodeType!==Node.TEXT_NODE)continue;let e=Qe(n.textContent??``);e&&t.push(e)}return t.join(` `)},et=e=>e.getAttribute(`aria-hidden`)===`true`||e.hasAttribute(`hidden`)?!0:te.has(e.tagName.toLowerCase()),tt=(e,t,n)=>{if(e.nodeType===Node.TEXT_NODE){let r=Qe(e.textContent??``);return r?(t.push(r),n-r.length):n}if(!(e instanceof Element)||et(e))return n;for(let r of e.childNodes)if(n=tt(r,t,n),n<=0)break;return n},nt=(e,t)=>{if(et(e))return``;let n=$e(e);if(!h.has(t)||n&&e.children.length===0)return n;let r=[];return tt(e,r,100),r.join(` `)},rt=e=>U(e,15),it=e=>{let t=[];for(let n of m){let r=e.getAttribute(n);r&&t.push(`${n}="${r}"`)}return t.length>0?` ${t.join(` `)}`:``},at=e=>e===`class`||e===`className`||e===`style`,ot=e=>{let t=[],n=[],r=``;for(let{name:i,value:a}of e.attributes)if(!Ze(i)){if(at(i)){i!==`style`&&a&&(r=` class="${rt(a)}"`);continue}o.has(i)?t.push(a?` ${i}="${a}"`:` ${i}`):a&&n.push(` ${i}="${rt(a)}"`)}return t.join(``)+n.join(``)+r},st=e=>e.length===0?``:e.length<=2?e.map(e=>`<${l(e)} ...>`).join(`
|
|
10
|
+
`):`(${e.length} elements)`,ct=e=>{let t=l(e);if(!(e instanceof HTMLElement))return`<${t}${it(e)} />`;let n=ot(e),r=U(nt(e,t),100);return r?`<${t}${n}>${r}</${t}>`:`<${t}${n} />`},lt=e=>{let t=l(e),n=ot(e),r=nt(e,t),i=[],a=[],o=!1;for(let t of e.childNodes)t.nodeType!==Node.COMMENT_NODE&&(t.nodeType===Node.TEXT_NODE?t.textContent&&t.textContent.trim().length>0&&(o=!0):t instanceof Element&&(o?a.push(t):i.push(t)));let s=r.length>0&&h.has(t),c=``,u=st(i);u&&!s&&(c+=`\n ${u}`),r&&(c+=`\n ${U(r,100)}`);let d=st(a);return d&&!s&&(c+=`\n ${d}`),c.length>0?`<${t}${n}>${c}\n</${t}>`:`<${t}${n} />`},ut=new Set([`_`,`$`,`motion.`,`styled.`,`chakra.`,`ark.`,`Primitive.`,`Slot.`]),dt=new Set(`AppRouter.AppRouterAnnouncer.AppDevOverlay.AppDevOverlayErrorBoundary.ClientPageRoot.ClientSegmentRoot.DevRootHTTPAccessFallbackBoundary.ErrorBoundary.ErrorBoundaryHandler.GracefulDegradeBoundary.HTTPAccessErrorFallback.HTTPAccessFallbackBoundary.HTTPAccessFallbackErrorBoundary.HandleRedirect.Head.HistoryUpdater.HotReload.InnerLayoutRouter.InnerScrollAndFocusHandler.InnerScrollAndFocusHandlerOld.InnerScrollAndMaybeFocusHandler.InnerScrollHandlerNew.LoadableComponent.LoadingBoundary.LoadingBoundaryProvider.NotAllowedRootHTTPFallbackError.OfflineProvider.OuterLayoutRouter.RedirectBoundary.RedirectErrorBoundary.RenderFromTemplateContext.RenderValidationBoundaryAtThisLevel.ReplaySsrOnlyErrors.RootErrorBoundary.RootLevelDevOverlayElement.Router.ScrollAndFocusHandler.ScrollAndMaybeFocusHandler.SegmentBoundaryTrigger.SegmentBoundaryTriggerNode.SegmentStateProvider.SegmentTrieNode.SegmentViewNode.SegmentViewStateNode.ServerRoot.body.html`.split(`.`)),ft=new Set([`<anonymous>`,`<unknown>`,`Anonymous`,`Unknown`]),pt=new Set([`Suspense`,`Fragment`,`StrictMode`,`Profiler`,`SuspenseList`]),mt=new Set([`MotionDOMComponent`,`Slot`,`SlotClone`]),ht=[`.Consumer`,`.Context`,`.Provider`,`.Slot`,`.SlotClone`,`.Slottable`,`ProviderProvider`],gt=e=>{if(ft.has(e)||dt.has(e)||pt.has(e)||mt.has(e))return!0;for(let t of ht)if(e.endsWith(t))return!0;for(let t of ut)if(e.startsWith(t))return!0;return!1},_t=e=>!(!e||gt(e)),vt=e=>!(e.length<=1||gt(e)||e[0]!==e[0].toUpperCase()),W=e=>e&&vt(e)?e:null,G=e=>!He(e)&&!L(e),K=e=>{if(!_())return e;let t=e;for(;t;){if(g(t))return t;t=t.parentElement}return e},yt=e=>{let t=e.return?.child??null;for(;t;){if(t!==e&&t.key!==null)return!0;t=t.sibling}return!1},bt=e=>{let t=e,n=0;for(;t;){if(t.key!==null&&yt(t))return String(t.key);if(a(t)&&(n+=1,n===2))break;t=t.return}return null},xt=e=>_()?bt(g(K(e))):null,q=new WeakMap,J=new WeakMap,St=e=>t=>fetch(t,{signal:e,priority:`high`}),Ct=e=>H(async t=>{try{let n=g(e);if(!n)return null;let r=await i(n,!0,St(t));return v()?await Ke(Je(n,r),t):r}catch{return null}},null),Y=e=>{if(!_())return Promise.resolve([]);let t=K(e),n=q.get(t);if(n)return n;let r=Ct(t).then(e=>(e===null&&q.delete(t),e));return q.set(t,r),r},wt=async e=>{if(!_())return null;let t=await Y(e);if(!t)return null;for(let e of t){let t=W(e.functionName);if(t)return t}return null},Tt=e=>e.find(e=>!!W(e.functionName))??e[0]??null,Et=e=>!e||!a(e)?null:W(s(e.type)),Dt=e=>H(async t=>{let n=g(K(e));if(!n)return null;try{let e=await le(n,!0,St(t));return e?.fileName?{filePath:d(e.fileName),lineNumber:e.lineNumber??null,columnNumber:e.columnNumber??null,componentName:W(e.functionName)??Et(n._debugOwner),origin:S(e.fileName).origin}:null}catch{return null}},null),Ot=e=>{let t=K(e),n=J.get(t);if(n)return n;let r=Dt(t).then(e=>(e||J.delete(t),e));return J.set(t,r),r},X=(e,t)=>{let n=(e,t)=>{let n=Tt(e);return n?.fileName?{filePath:d(n.fileName),lineNumber:n.lineNumber??null,columnNumber:n.columnNumber??null,componentName:W(n.functionName),origin:t}:null},r=t.filter(e=>S(e.fileName).origin===`app`),i=r.filter(e=>G(e.fileName));return e?.origin===`app`&&G(e.filePath)?e:n(i,`app`)||(e?.origin===`app`&&!L(e.filePath)?e:n(r,`app`)||(e?.origin===`app`||e?.origin===`package`?e:n(t.filter(e=>S(e.fileName).origin===`package`),`package`)))},kt=async e=>{let t=await Ot(e);return t?.origin===`app`&&G(t.filePath)?t:X(t,await Y(e)??[])},At=e=>Z(K(e),1)[0]??null,Z=(e,t,n=()=>!0)=>{if(!_())return[];let r=g(e);if(!r)return[];let i=[];return ne(r,e=>{if(i.length>=t)return!0;if(a(e)){let t=s(e.type);t&&_t(t)&&n(t)&&i.push(t)}return!1},!0),i},jt=[`/src/app/`,`/src/pages/`,`/app/`,`/pages/`],Mt=(e,t)=>{let n=d(e);if(!t||!n.startsWith(`/`))return n;for(let e of jt){let t=n.indexOf(e);if(t!==-1)return`/./${n.slice(t+1)}`}return n},Nt=(e,t)=>{let n=Mt(e.filePath,t),r=t&&e.lineNumber?`${n}:${e.lineNumber}${e.columnNumber?`:${e.columnNumber}`:``}`:n;return e.componentName?`\n in ${e.componentName} (at ${r})`:`\n in ${r}`},Q={isAppSource:!1,consumesBudget:!1},Pt=(e,t,n,r)=>{let i=t.packageName,a=t.origin===`app`?e.fileName:null;if(e.isServer&&!a&&(n||!e.functionName)){let e=i?`${i} at Server`:`at Server`;return{text:`\n in ${n??`<anonymous>`} (${e})`,...Q}}return!a&&n?{text:i?`\n in ${n} (${i})`:`\n in ${n}`,...Q}:i?{text:`\n in ${i}`,...Q}:a?{text:Nt({componentName:n,filePath:a,lineNumber:e.lineNumber??null,columnNumber:e.columnNumber??null},r),isAppSource:!0,consumesBudget:G(a)}:null},Ft=(e,t={},n=null)=>{let r=ue(t.maxLines),i=Math.max(r,20),a=v(),o=[],s=new Set,c=null,l=!1,u=!1,d=!1,f=0,p=e=>{e&&s.add(e)};if(n){let e=n.origin===`app`&&G(n.filePath);u=e,e&&(f+=1),p(n.componentName),o.push(Nt(n,a))}for(let t of e){if(f>=r||o.length>=i)break;let e=S(t.fileName),s=W(t.functionName),m=e.packageName?`${e.packageName}:${s??``}:${t.isServer?`server`:`client`}`:null;if(m&&m===c)continue;if(!l&&s&&s===n?.componentName){l=!0;continue}let h=Pt(t,e,s,a);h!==null&&h.text!==o[o.length-1]&&(h.isAppSource&&h.consumesBudget&&(u=!0),h.consumesBudget&&(f+=1,d=!0),p(s),o.push(h.text),c=m)}return{text:o.join(``),shouldAppendSelectorHint:!u,hasBudgetedStackFrame:d,renderedComponentNames:s}},It=(e,t)=>{let n=X(e,t);return n?.origin===`app`?n:null},Lt=(e,t,n)=>{let r=Z(K(e),n,e=>vt(e)&&!t.renderedComponentNames.has(e));return r.length===0?t:{...t,text:`${t.text}${R(r)}`}},$=async(e,t={})=>{let n=await Ot(e),r=await Y(e)??[],i=It(n,r),a=ue(t.maxLines),o=Ft(r,t,i);if(o.text)return o.hasBudgetedStackFrame?o:Lt(e,o,a);let s=Z(K(e),a);return{text:R(s),shouldAppendSelectorHint:!0,hasBudgetedStackFrame:!1,renderedComponentNames:new Set(s)}},Rt=async(e,t={})=>(await $(e,t)).text,zt=(e,t)=>{let n=xt(e),r=n===null?``:`\n key: "${n}"`,i=t.shouldAppendSelectorHint?`\n selector: ${F(I(e))}`:``;return`${t.text}${r}${i}`},Bt=async(e,t={})=>{let n=await $(e,t);return`${ct(e)}${zt(e,n).replace(/\n\s+/g,` `)}`},Vt=async(e,t={})=>{let n=K(e);return`${lt(n)}${zt(n,await $(n,t))}`},Ht=e=>e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`),Ut=(t,n)=>{let r=n?.componentName??`div`,i={version:e,content:t,entries:n?.entries??[{tagName:n?.tagName,componentName:r,content:t,commentText:n?.commentText}],timestamp:Date.now()},a=e=>{e.preventDefault(),e.clipboardData?.setData(`text/plain`,t),e.clipboardData?.setData(`text/html`,`<meta charset='utf-8'><pre><code>${Ht(t)}</code></pre>`),e.clipboardData?.setData(`application/x-react-grab`,JSON.stringify(i))};document.addEventListener(`copy`,a);let o=document.createElement(`textarea`);o.value=t,o.style.position=`fixed`,o.style.left=`-9999px`,o.ariaHidden=`true`,document.body.appendChild(o),o.select();try{return typeof document.execCommand==`function`?document.execCommand(`copy`):!1}finally{document.removeEventListener(`copy`,a),o.remove()}};export{wt as a,kt as c,F as d,Bt as i,lt as l,Vt as n,Y as o,At as r,Rt as s,Ut as t,I as u};
|
|
@@ -140,13 +140,11 @@ interface AgentContext<T = unknown> {
|
|
|
140
140
|
sessionId?: string;
|
|
141
141
|
}
|
|
142
142
|
type ActivationMode = "toggle" | "hold";
|
|
143
|
-
interface
|
|
143
|
+
interface ActionContextHooks {
|
|
144
|
+
transformHtmlContent: (html: string, elements: Element[]) => Promise<string>;
|
|
144
145
|
onOpenFile: (filePath: string, lineNumber?: number) => boolean | void;
|
|
145
146
|
transformOpenFileUrl: (url: string, filePath: string, lineNumber?: number) => string;
|
|
146
147
|
}
|
|
147
|
-
interface ActionContextHooks extends OpenFileActionHooks {
|
|
148
|
-
transformHtmlContent: (html: string, elements: Element[]) => Promise<string>;
|
|
149
|
-
}
|
|
150
148
|
interface ActionContext {
|
|
151
149
|
element: Element;
|
|
152
150
|
elements: Element[];
|
|
@@ -478,7 +476,6 @@ interface ReactGrabRendererProps {
|
|
|
478
476
|
onToggleExpand?: () => void;
|
|
479
477
|
selectionLabelShakeCount?: number;
|
|
480
478
|
onConfirmDismiss?: () => void;
|
|
481
|
-
onOpenSelectionFile?: () => void;
|
|
482
479
|
discardPrompt?: SelectionDiscardPrompt;
|
|
483
480
|
toolbarVisible?: boolean;
|
|
484
481
|
isActive?: boolean;
|
|
@@ -771,4 +768,4 @@ interface CopyContentOptions {
|
|
|
771
768
|
}
|
|
772
769
|
declare const copyContent: (content: string, options?: CopyContentOptions) => boolean;
|
|
773
770
|
//#endregion
|
|
774
|
-
export {
|
|
771
|
+
export { SourceInfo as A, PromptModeContext as C, Rect as D, ReactGrabState as E, ToolbarState as M, SelectedElementPayload as O, Position as S, ReactGrabRendererProps as T, Options as _, ActionContext as a, PluginConfig as b, AgentContext as c, DeepPartial as d, DragRect as f, GrabbedBox as g, ElementSelectedEventDetail as h, Fiber as i, Theme as j, SettableOptions as k, ContextMenuAction as l, ElementLabelVariant as m, isInstrumentationActive as n, ActionContextHooks as o, ElementLabelContext as p, StackFrame as r, ActivationMode as s, copyContent as t, ContextMenuActionContext as u, OverlayBounds as v, ReactGrabAPI as w, PluginHooks as x, Plugin as y };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
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
|
+
const e=require(`./freeze-updates-CQNe1XqU.cjs`),t=e=>e===void 0||!Number.isFinite(e)?3:Math.max(0,Math.floor(e)),n=e=>{try{return decodeURIComponent(e)}catch{return e}},r=/(?:^|[/\\])node_modules[/\\]/,i=/[/\\]\.vite[/\\]deps[^/\\]*[/\\]/,a=/\.[mc]?[jt]sx?$/i,o=/^chunk-[A-Za-z0-9_-]+$/,s=/[/\\]/,c=/^(.+?)@v?\d/,l=e=>e.split(s).filter(Boolean),u=e=>{let[t,n]=l(e);return!t||t.startsWith(`.`)?null:t.startsWith(`@`)?n?`${t}/${n}`:null:t},d=e=>{let t=l(e)[0];if(!t)return null;let n=t.replace(a,``);if(o.test(n))return null;if(!n.startsWith(`@`))return n;let r=n.indexOf(`_`);return r===-1?null:`${n.slice(0,r)}/${n.slice(r+1)}`},f=(e,t,n)=>{let r=e.split(t);return r.length>1?n(r[r.length-1]):null},p=e=>e?.match(c)?.[1]??null,m=e=>{let t;try{t=new URL(e)}catch{return null}if(!t.hostname)return null;let r=l(t.pathname).map(n);for(let[e,t]of r.entries()){if(t.startsWith(`@`)){let n=p(r[e+1]);if(n)return`${t}/${n}`;continue}let n=p(t);if(n)return n}return null},h=e=>f(e,i,d)??f(e,r,u),ee=t=>{if(!t)return null;let r=e.C(t);return r&&(h(n(r))||m(t))||null},te=/^@[A-Za-z0-9][A-Za-z0-9._-]*$/,ne=/^[A-Za-z0-9][A-Za-z0-9._-]*$/,re=new Set([`app`,`web`,`website`,`frontend`,`client`,`src`]),ie=new Set([`app`,`src`,`components`,`pages`,`features`,`modules`,`hooks`,`lib`,`utils`,`ui`,`shared`,`common`,`core`,`styles`,`assets`]),ae=e=>{let t=e;for(;t.startsWith(`../`)||t.startsWith(`./`);)t=t.slice(t.startsWith(`../`)?3:2);return t},oe=t=>{let r=ae(n(e.C(t)));if(r.startsWith(`/`))return null;let[i,o,...s]=l(r);return!i||!o||s.length===0||!te.test(i)||ie.has(i.slice(1))||!ne.test(o)||a.test(o)||re.has(o)?null:`${i}/${o}`},se=e=>e?ee(e)??oe(e):null,g=t=>{if(!t)return{origin:`unknown`,packageName:null};let n=se(t);return n?{origin:`package`,packageName:n}:e.D(t)?{origin:`app`,packageName:null}:{origin:`unknown`,packageName:null}},ce=new Set([`role`,`name`,`aria-label`,`rel`,`href`]),_=e=>{if(!/^[a-z-]{3,}$/i.test(e))return!1;let t=e.split(/-|[A-Z]/);for(let e of t)if(e.length<=2||/[^aeiou]{4,}/i.test(e))return!1;return!0},le=(e,t)=>{let n=ce.has(e)||e.startsWith(`data-`)&&_(e),r=_(t)&&t.length<100||t.startsWith(`#`)&&_(t.slice(1));return n&&r},v=e=>{let t=e[0].name;for(let n=1;n<e.length;n++)t=`${e[n].name} > ${t}`;return t},ue=e=>{let t=0;for(let n of e)t+=n.penalty;return t},de=(e,t)=>ue(e)-ue(t),y=(e,t)=>{let n=e.parentNode;if(!n)return;let r=n.firstChild;if(!r)return;let i=0;for(;r&&(r instanceof Element&&(t===void 0||r.tagName.toLowerCase()===t)&&i++,r!==e);)r=r.nextSibling;return i},fe=(e,t)=>e===`html`?`html`:`${e}:nth-child(${t})`,pe=(e,t)=>e===`html`?`html`:`${e}:nth-of-type(${t})`,me=(e,t)=>{let n=[],r=e.getAttribute(`id`),i=e.tagName.toLowerCase();r&&_(r)&&n.push({name:`#${CSS.escape(r)}`,penalty:0});for(let t of e.classList)_(t)&&n.push({name:`.${CSS.escape(t)}`,penalty:1});for(let r of e.attributes)t(r.name,r.value)&&n.push({name:`[${CSS.escape(r.name)}="${CSS.escape(r.value)}"]`,penalty:2});n.push({name:i,penalty:5});let a=y(e,i);a!==void 0&&n.push({name:pe(i,a),penalty:10});let o=y(e);return o!==void 0&&n.push({name:fe(i,o),penalty:50}),n},b=(t,n=e.Dt,r=[])=>{if(n<=0)return[];if(t.length===0)return[r];let i=[];for(let e of t[0]){let a=n-i.length;if(a<=0)break;i.push(...b(t.slice(1),a,[...r,e]))}return i},he=(e,t)=>{let n=t.getRootNode?.();return n instanceof ShadowRoot?n:e instanceof Document?e:e.ownerDocument},x=(e,t)=>t.querySelectorAll(v(e)).length===1,ge=(e,t)=>{let n=e,r=[];for(;n&&n!==t;){let e=n.tagName.toLowerCase(),t=y(n,e);if(t===void 0)return;r.push({name:pe(e,t),penalty:10}),n=n.parentElement}return x(r,t)?r:void 0},_e=(t,n,r,i)=>{if(t.nodeType!==Node.ELEMENT_NODE)throw new e.L;if(t.tagName.toLowerCase()===`html`)return`html`;let a=he(n,t),o=Date.now(),s=[],c=t,l=0,u;for(;c&&c!==a&&!u;)if(s.push(me(c,i)),c=c.parentElement,l++,l>=3){let n=b(s);n.sort(de);for(let i of n){if(Date.now()-o>r){let n=ge(t,a);if(!n)throw new e.W(r);return v(n)}if(x(i,a)){u=i;break}}}if(!u&&l<3){let e=b(s);e.sort(de);for(let t of e){if(Date.now()-o>r)break;if(x(t,a)){u=t;break}}}if(!u)throw new e.U;return v(u)},S=e=>e.ownerDocument.body??e.ownerDocument.documentElement,C=new Set([`data-testid`,`data-test-id`,`data-test`,`data-cy`,`data-qa`,`aria-label`,`href`,`src`,`role`,`name`,`title`,`alt`]),w=e=>e.length>0&&e.length<=120,T=(e,t)=>{try{let n=e.ownerDocument.querySelectorAll(t);return n.length===1&&n[0]===e}catch{return!1}},ve=e=>{if(e instanceof HTMLElement&&e.id){let t=`#${CSS.escape(e.id)}`;if(T(e,t))return t}for(let t of C){let n=e.getAttribute(t);if(!n||!w(n))continue;let r=`[${t}=${JSON.stringify(n)}]`;if(T(e,r))return r;let i=`${e.tagName.toLowerCase()}${r}`;if(T(e,i))return i}return null},ye=e=>{let t=[],n=S(e),r=e;for(;r;){if(r instanceof HTMLElement&&r.id){t.unshift(`#${CSS.escape(r.id)}`);break}let e=r.parentElement;if(!e){t.unshift(r.tagName.toLowerCase());break}let i=Array.from(e.children).indexOf(r)+1;if(t.unshift(`${r.tagName.toLowerCase()}:nth-child(${i})`),e===n){t.unshift(n.tagName.toLowerCase());break}r=e}return t.join(` > `)},E=e=>{let t=ve(e);if(t)return t;try{let t=_e(e,S(e),200,(e,t)=>le(e,t)||C.has(e)&&w(t));if(t)return t}catch{}return ye(e)},be=[`[id]`,`[data-testid]`,`[data-test-id]`,`[data-test]`,`[data-cy]`,`[data-qa]`,`[aria-label]`,`a[href]`,`button`,`input`,`select`,`textarea`,`[role="button"]`,`[role="link"]`,`[role="checkbox"]`,`[role="radio"]`,`[role="switch"]`,`[role="tab"]`,`[role="menuitem"]`,`[role="option"]`,`[role="textbox"]`,`[role="combobox"]`,`[role="slider"]`,`[role="spinbutton"]`].join(`,`),xe=t=>{let{body:n,documentElement:r}=t.ownerDocument;if(t===n||t===r)return!0;if(!n)return!1;let i=n.getElementsByTagName(`*`).length;return i===0?!1:t.getElementsByTagName(`*`).length/i>=e.nt},D=e=>{let t=e.closest(be);return!t||xe(t)?e:t},Se=[/\/assets\/[^/?#]+-[a-z0-9_-]{6,}\.(?:c|m)?js(?:[?#]|$)/,/\/_next\/static\/.*\.(?:c|m)?js(?:[?#]|$)/,/\/static\/chunks\/.*\.(?:c|m)?js(?:[?#]|$)/],O=t=>{if(!t)return!1;let n=`/${e.S(t)}`.toLowerCase();return Se.some(e=>e.test(n))},Ce=t=>{if(!t)return!1;let n=`/${e.S(t)}/`.toLowerCase();return e.Yt.some(e=>n.includes(e))},k=e=>e.map(e=>`\n in ${e}`).join(``),A=[`about://React/`,`rsc://React/`],we=e=>A.some(t=>e.startsWith(t)),Te=e=>{for(let t of A){if(!e.startsWith(t))continue;let r=e.indexOf(`/`,t.length);if(r===-1)continue;let i=r+1,a=e.lastIndexOf(`?`);return n(a>i?e.slice(i,a):e.slice(i))}return e},Ee=e=>{if(typeof e!=`object`||!e||!(`status`in e)||e.status!==`fulfilled`||!(`value`in e)||typeof e.value!=`object`||e.value===null||!(`originalStackFrame`in e.value))return null;let t=e.value.originalStackFrame;return typeof t!=`object`||!t||!(`file`in t)||typeof t.file!=`string`||!t.file||`ignored`in t&&t.ignored?null:{file:t.file,line1:`line1`in t&&typeof t.line1==`number`?t.line1:null,column1:`column1`in t&&typeof t.column1==`number`?t.column1:null}},De=async(t,n)=>{let r=[],i=[];for(let e=0;e<t.length;e++){let n=t[e];!n.isServer||!n.fileName||(r.push(e),i.push({file:Te(n.fileName),methodName:n.functionName??`<unknown>`,line1:n.lineNumber??null,column1:n.columnNumber??null,arguments:[]}))}if(i.length===0)return t;let a=new AbortController,o=setTimeout(()=>a.abort(),e.Zt),s=()=>a.abort();n?.aborted&&a.abort(),n?.addEventListener(`abort`,s);try{let n=await fetch(`${e.b()}/__nextjs_original-stack-frames`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({frames:i,isServer:!0,isEdgeServer:!1,isAppDirectory:!0}),priority:`high`,signal:a.signal});if(!n.ok)return t;let o=await n.json();if(!Array.isArray(o))return t;let s=[...t];for(let e=0;e<r.length;e++){let n=Ee(o[e]);if(!n)continue;let i=r[e];s[i]={...t[i],fileName:n.file,lineNumber:n.line1??void 0,columnNumber:n.column1??void 0,isSymbolicated:!0}}return s}catch{return t}finally{clearTimeout(o),n?.removeEventListener(`abort`,s)}},Oe=t=>{let n=new Map;return e.X(t,t=>{if(!e.T(t))return!1;let r=e.k(t._debugStack.stack);if(!r)return!1;for(let t of e.O(r))!t.functionName||!t.fileName||we(t.fileName)&&(n.has(t.functionName)||n.set(t.functionName,{...t,isServer:!0}));return!1},!0),n},ke=(e,t)=>{if(!t.some(e=>e.isServer&&!e.fileName&&e.functionName))return t;let n=Oe(e);return n.size===0?t:t.map(e=>{if(!e.isServer||e.fileName||!e.functionName)return e;let t=n.get(e.functionName);return t?{...e,fileName:t.fileName,lineNumber:t.lineNumber,columnNumber:t.columnNumber}:e})};let j=0;const M=[],Ae=()=>j<3?(j+=1,Promise.resolve()):new Promise(e=>{M.push(e)}),je=()=>{let e=M.shift();if(e){e();return}--j},N=async(t,n,r=e.Xt)=>{await Ae();let i=new AbortController,a,o=new Promise(e=>{a=setTimeout(()=>{i.abort(),e(n)},r)});try{let e=t(i.signal);return e.catch(()=>{}),await Promise.race([e,o])}finally{clearTimeout(a),je()}},P=(e,t)=>e.length>t?`${e.slice(0,t)}...`:e,Me=e=>e.startsWith(`data-react-grab-`),F=e=>e.replace(/\s+/g,` `).trim(),Ne=e=>{let t=[];for(let n of e.childNodes){if(n.nodeType!==Node.TEXT_NODE)continue;let e=F(n.textContent??``);e&&t.push(e)}return t.join(` `)},I=t=>t.getAttribute(`aria-hidden`)===`true`||t.hasAttribute(`hidden`)?!0:e.Wt.has(t.tagName.toLowerCase()),L=(e,t,n)=>{if(e.nodeType===Node.TEXT_NODE){let r=F(e.textContent??``);return r?(t.push(r),n-r.length):n}if(!(e instanceof Element)||I(e))return n;for(let r of e.childNodes)if(n=L(r,t,n),n<=0)break;return n},R=(t,n)=>{if(I(t))return``;let r=Ne(t);if(!e.Vt.has(n)||r&&t.children.length===0)return r;let i=[];return L(t,i,100),i.join(` `)},z=e=>P(e,15),Pe=t=>{let n=[];for(let r of e.Ut){let e=t.getAttribute(r);e&&n.push(`${r}="${e}"`)}return n.length>0?` ${n.join(` `)}`:``},Fe=e=>e===`class`||e===`className`||e===`style`,B=t=>{let n=[],r=[],i=``;for(let{name:a,value:o}of t.attributes)if(!Me(a)){if(Fe(a)){a!==`style`&&o&&(i=` class="${z(o)}"`);continue}e.Ht.has(a)?n.push(o?` ${a}="${o}"`:` ${a}`):o&&r.push(` ${a}="${z(o)}"`)}return n.join(``)+r.join(``)+i},V=t=>t.length===0?``:t.length<=2?t.map(t=>`<${e.M(t)} ...>`).join(`
|
|
10
|
+
`):`(${t.length} elements)`,Ie=t=>{let n=e.M(t);if(!(t instanceof HTMLElement))return`<${n}${Pe(t)} />`;let r=B(t),i=P(R(t,n),100);return i?`<${n}${r}>${i}</${n}>`:`<${n}${r} />`},Le=t=>{let n=e.M(t),r=B(t),i=R(t,n),a=[],o=[],s=!1;for(let e of t.childNodes)e.nodeType!==Node.COMMENT_NODE&&(e.nodeType===Node.TEXT_NODE?e.textContent&&e.textContent.trim().length>0&&(s=!0):e instanceof Element&&(s?o.push(e):a.push(e)));let c=i.length>0&&e.Vt.has(n),l=``,u=V(a);u&&!c&&(l+=`\n ${u}`),i&&(l+=`\n ${P(i,100)}`);let d=V(o);return d&&!c&&(l+=`\n ${d}`),l.length>0?`<${n}${r}>${l}\n</${n}>`:`<${n}${r} />`},Re=new Set([`_`,`$`,`motion.`,`styled.`,`chakra.`,`ark.`,`Primitive.`,`Slot.`]),ze=new Set(`AppRouter.AppRouterAnnouncer.AppDevOverlay.AppDevOverlayErrorBoundary.ClientPageRoot.ClientSegmentRoot.DevRootHTTPAccessFallbackBoundary.ErrorBoundary.ErrorBoundaryHandler.GracefulDegradeBoundary.HTTPAccessErrorFallback.HTTPAccessFallbackBoundary.HTTPAccessFallbackErrorBoundary.HandleRedirect.Head.HistoryUpdater.HotReload.InnerLayoutRouter.InnerScrollAndFocusHandler.InnerScrollAndFocusHandlerOld.InnerScrollAndMaybeFocusHandler.InnerScrollHandlerNew.LoadableComponent.LoadingBoundary.LoadingBoundaryProvider.NotAllowedRootHTTPFallbackError.OfflineProvider.OuterLayoutRouter.RedirectBoundary.RedirectErrorBoundary.RenderFromTemplateContext.RenderValidationBoundaryAtThisLevel.ReplaySsrOnlyErrors.RootErrorBoundary.RootLevelDevOverlayElement.Router.ScrollAndFocusHandler.ScrollAndMaybeFocusHandler.SegmentBoundaryTrigger.SegmentBoundaryTriggerNode.SegmentStateProvider.SegmentTrieNode.SegmentViewNode.SegmentViewStateNode.ServerRoot.body.html`.split(`.`)),Be=new Set([`<anonymous>`,`<unknown>`,`Anonymous`,`Unknown`]),Ve=new Set([`Suspense`,`Fragment`,`StrictMode`,`Profiler`,`SuspenseList`]),He=new Set([`MotionDOMComponent`,`Slot`,`SlotClone`]),Ue=[`.Consumer`,`.Context`,`.Provider`,`.Slot`,`.SlotClone`,`.Slottable`,`ProviderProvider`],H=e=>{if(Be.has(e)||ze.has(e)||Ve.has(e)||He.has(e))return!0;for(let t of Ue)if(e.endsWith(t))return!0;for(let t of Re)if(e.startsWith(t))return!0;return!1},We=e=>!(!e||H(e)),Ge=e=>!(e.length<=1||H(e)||e[0]!==e[0].toUpperCase()),U=e=>e&&Ge(e)?e:null,W=e=>!Ce(e)&&!O(e),G=t=>{if(!e.q())return t;let n=t;for(;n;){if(e.Z(n))return n;n=n.parentElement}return t},Ke=e=>{let t=e.return?.child??null;for(;t;){if(t!==e&&t.key!==null)return!0;t=t.sibling}return!1},qe=t=>{let n=t,r=0;for(;n;){if(n.key!==null&&Ke(n))return String(n.key);if(e.G(n)&&(r+=1,r===2))break;n=n.return}return null},Je=t=>e.q()?qe(e.Z(G(t))):null,K=new WeakMap,q=new WeakMap,Ye=e=>t=>fetch(t,{signal:e,priority:`high`}),Xe=t=>N(async n=>{try{let r=e.Z(t);if(!r)return null;let i=await e.E(r,!0,Ye(n));return e.x()?await De(ke(r,i),n):i}catch{return null}},null),J=t=>{if(!e.q())return Promise.resolve([]);let n=G(t),r=K.get(n);if(r)return r;let i=Xe(n).then(e=>(e===null&&K.delete(n),e));return K.set(n,i),i},Ze=async t=>{if(!e.q())return null;let n=await J(t);if(!n)return null;for(let e of n){let t=U(e.functionName);if(t)return t}return null},Qe=e=>e.find(e=>!!U(e.functionName))??e[0]??null,$e=t=>!t||!e.G(t)?null:U(e.K(t.type)),et=t=>N(async n=>{let r=e.Z(G(t));if(!r)return null;try{let t=await e.w(r,!0,Ye(n));return t?.fileName?{filePath:e.S(t.fileName),lineNumber:t.lineNumber??null,columnNumber:t.columnNumber??null,componentName:U(t.functionName)??$e(r._debugOwner),origin:g(t.fileName).origin}:null}catch{return null}},null),tt=e=>{let t=G(e),n=q.get(t);if(n)return n;let r=et(t).then(e=>(e||q.delete(t),e));return q.set(t,r),r},Y=(t,n)=>{let r=(t,n)=>{let r=Qe(t);return r?.fileName?{filePath:e.S(r.fileName),lineNumber:r.lineNumber??null,columnNumber:r.columnNumber??null,componentName:U(r.functionName),origin:n}:null},i=n.filter(e=>g(e.fileName).origin===`app`),a=i.filter(e=>W(e.fileName));return t?.origin===`app`&&W(t.filePath)?t:r(a,`app`)||(t?.origin===`app`&&!O(t.filePath)?t:r(i,`app`)||(t?.origin===`app`||t?.origin===`package`?t:r(n.filter(e=>g(e.fileName).origin===`package`),`package`)))},nt=async e=>{let t=await tt(e);return t?.origin===`app`&&W(t.filePath)?t:Y(t,await J(e)??[])},rt=e=>X(G(e),1)[0]??null,X=(t,n,r=()=>!0)=>{if(!e.q())return[];let i=e.Z(t);if(!i)return[];let a=[];return e.X(i,t=>{if(a.length>=n)return!0;if(e.G(t)){let n=e.K(t.type);n&&We(n)&&r(n)&&a.push(n)}return!1},!0),a},it=[`/src/app/`,`/src/pages/`,`/app/`,`/pages/`],at=(t,n)=>{let r=e.S(t);if(!n||!r.startsWith(`/`))return r;for(let e of it){let t=r.indexOf(e);if(t!==-1)return`/./${r.slice(t+1)}`}return r},ot=(e,t)=>{let n=at(e.filePath,t),r=t&&e.lineNumber?`${n}:${e.lineNumber}${e.columnNumber?`:${e.columnNumber}`:``}`:n;return e.componentName?`\n in ${e.componentName} (at ${r})`:`\n in ${r}`},Z={isAppSource:!1,consumesBudget:!1},st=(e,t,n,r)=>{let i=t.packageName,a=t.origin===`app`?e.fileName:null;if(e.isServer&&!a&&(n||!e.functionName)){let e=i?`${i} at Server`:`at Server`;return{text:`\n in ${n??`<anonymous>`} (${e})`,...Z}}return!a&&n?{text:i?`\n in ${n} (${i})`:`\n in ${n}`,...Z}:i?{text:`\n in ${i}`,...Z}:a?{text:ot({componentName:n,filePath:a,lineNumber:e.lineNumber??null,columnNumber:e.columnNumber??null},r),isAppSource:!0,consumesBudget:W(a)}:null},ct=(n,r={},i=null)=>{let a=t(r.maxLines),o=Math.max(a,20),s=e.x(),c=[],l=new Set,u=null,d=!1,f=!1,p=!1,m=0,h=e=>{e&&l.add(e)};if(i){let e=i.origin===`app`&&W(i.filePath);f=e,e&&(m+=1),h(i.componentName),c.push(ot(i,s))}for(let e of n){if(m>=a||c.length>=o)break;let t=g(e.fileName),n=U(e.functionName),r=t.packageName?`${t.packageName}:${n??``}:${e.isServer?`server`:`client`}`:null;if(r&&r===u)continue;if(!d&&n&&n===i?.componentName){d=!0;continue}let l=st(e,t,n,s);l!==null&&l.text!==c[c.length-1]&&(l.isAppSource&&l.consumesBudget&&(f=!0),l.consumesBudget&&(m+=1,p=!0),h(n),c.push(l.text),u=r)}return{text:c.join(``),shouldAppendSelectorHint:!f,hasBudgetedStackFrame:p,renderedComponentNames:l}},lt=(e,t)=>{let n=Y(e,t);return n?.origin===`app`?n:null},ut=(e,t,n)=>{let r=X(G(e),n,e=>Ge(e)&&!t.renderedComponentNames.has(e));return r.length===0?t:{...t,text:`${t.text}${k(r)}`}},Q=async(e,n={})=>{let r=await tt(e),i=await J(e)??[],a=lt(r,i),o=t(n.maxLines),s=ct(i,n,a);if(s.text)return s.hasBudgetedStackFrame?s:ut(e,s,o);let c=X(G(e),o);return{text:k(c),shouldAppendSelectorHint:!0,hasBudgetedStackFrame:!1,renderedComponentNames:new Set(c)}},dt=async(e,t={})=>(await Q(e,t)).text,$=(e,t)=>{let n=Je(e),r=n===null?``:`\n key: "${n}"`,i=t.shouldAppendSelectorHint?`\n selector: ${E(D(e))}`:``;return`${t.text}${r}${i}`},ft=async(e,t={})=>{let n=await Q(e,t);return`${Ie(e)}${$(e,n).replace(/\n\s+/g,` `)}`},pt=async(e,t={})=>{let n=G(e);return`${Le(n)}${$(n,await Q(n,t))}`},mt=e=>e.replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/"/g,`"`),ht=(t,n)=>{let r=n?.componentName??`div`,i={version:e.$t,content:t,entries:n?.entries??[{tagName:n?.tagName,componentName:r,content:t,commentText:n?.commentText}],timestamp:Date.now()},a=e=>{e.preventDefault(),e.clipboardData?.setData(`text/plain`,t),e.clipboardData?.setData(`text/html`,`<meta charset='utf-8'><pre><code>${mt(t)}</code></pre>`),e.clipboardData?.setData(`application/x-react-grab`,JSON.stringify(i))};document.addEventListener(`copy`,a);let o=document.createElement(`textarea`);o.value=t,o.style.position=`fixed`,o.style.left=`-9999px`,o.ariaHidden=`true`,document.body.appendChild(o),o.select();try{return typeof document.execCommand==`function`?document.execCommand(`copy`):!1}finally{document.removeEventListener(`copy`,a),o.remove()}};Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return Ze}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return nt}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return ft}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return Le}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return pt}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return rt}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return dt}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return ht}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return D}});
|
|
@@ -140,13 +140,11 @@ interface AgentContext<T = unknown> {
|
|
|
140
140
|
sessionId?: string;
|
|
141
141
|
}
|
|
142
142
|
type ActivationMode = "toggle" | "hold";
|
|
143
|
-
interface
|
|
143
|
+
interface ActionContextHooks {
|
|
144
|
+
transformHtmlContent: (html: string, elements: Element[]) => Promise<string>;
|
|
144
145
|
onOpenFile: (filePath: string, lineNumber?: number) => boolean | void;
|
|
145
146
|
transformOpenFileUrl: (url: string, filePath: string, lineNumber?: number) => string;
|
|
146
147
|
}
|
|
147
|
-
interface ActionContextHooks extends OpenFileActionHooks {
|
|
148
|
-
transformHtmlContent: (html: string, elements: Element[]) => Promise<string>;
|
|
149
|
-
}
|
|
150
148
|
interface ActionContext {
|
|
151
149
|
element: Element;
|
|
152
150
|
elements: Element[];
|
|
@@ -478,7 +476,6 @@ interface ReactGrabRendererProps {
|
|
|
478
476
|
onToggleExpand?: () => void;
|
|
479
477
|
selectionLabelShakeCount?: number;
|
|
480
478
|
onConfirmDismiss?: () => void;
|
|
481
|
-
onOpenSelectionFile?: () => void;
|
|
482
479
|
discardPrompt?: SelectionDiscardPrompt;
|
|
483
480
|
toolbarVisible?: boolean;
|
|
484
481
|
isActive?: boolean;
|
|
@@ -771,4 +768,4 @@ interface CopyContentOptions {
|
|
|
771
768
|
}
|
|
772
769
|
declare const copyContent: (content: string, options?: CopyContentOptions) => boolean;
|
|
773
770
|
//#endregion
|
|
774
|
-
export {
|
|
771
|
+
export { SourceInfo as A, PromptModeContext as C, Rect as D, ReactGrabState as E, ToolbarState as M, SelectedElementPayload as O, Position as S, ReactGrabRendererProps as T, Options as _, ActionContext as a, PluginConfig as b, AgentContext as c, DeepPartial as d, DragRect as f, GrabbedBox as g, ElementSelectedEventDetail as h, Fiber as i, Theme as j, SettableOptions as k, ContextMenuAction as l, ElementLabelVariant as m, isInstrumentationActive as n, ActionContextHooks as o, ElementLabelContext as p, StackFrame as r, ActivationMode as s, copyContent as t, ContextMenuActionContext as u, OverlayBounds as v, ReactGrabAPI as w, PluginHooks as x, Plugin as y };
|
package/dist/core/index.cjs
CHANGED
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
* This source code is licensed under the MIT license found in the
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*/
|
|
9
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../core-
|
|
9
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../core-Bhesyij7.cjs`),t=require(`../freeze-updates-CQNe1XqU.cjs`),n=require(`../copy-content-Cf6xuUb1.cjs`);exports.DEFAULT_THEME=e.a,exports.copyContent=n.t,exports.formatElementInfo=n.n,exports.generateSnippet=e.n,exports.getStack=n.o,exports.init=e.t,exports.isInstrumentationActive=t.q;
|
package/dist/core/index.d.cts
CHANGED
|
@@ -6,6 +6,6 @@
|
|
|
6
6
|
* This source code is licensed under the MIT license found in the
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*/
|
|
9
|
-
import { A as
|
|
10
|
-
import { a as getStack, i as formatElementInfo, n as generateSnippet, r as DEFAULT_THEME, t as init } from "../index-
|
|
9
|
+
import { A as SourceInfo, T as ReactGrabRendererProps, _ as Options, a as ActionContext, b as PluginConfig, c as AgentContext, k as SettableOptions, l as ContextMenuAction, n as isInstrumentationActive, t as copyContent, v as OverlayBounds, w as ReactGrabAPI, x as PluginHooks, y as Plugin } from "../copy-content-hpjB511j.cjs";
|
|
10
|
+
import { a as getStack, i as formatElementInfo, n as generateSnippet, r as DEFAULT_THEME, t as init } from "../index-D23mfsUe.cjs";
|
|
11
11
|
export { ActionContext, AgentContext, ContextMenuAction, DEFAULT_THEME, Options, OverlayBounds, Plugin, PluginConfig, PluginHooks, ReactGrabAPI, ReactGrabRendererProps, SettableOptions, SourceInfo, copyContent, formatElementInfo, generateSnippet, getStack, init, isInstrumentationActive };
|
package/dist/core/index.d.ts
CHANGED
|
@@ -6,6 +6,6 @@
|
|
|
6
6
|
* This source code is licensed under the MIT license found in the
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*/
|
|
9
|
-
import { A as
|
|
10
|
-
import { a as getStack, i as formatElementInfo, n as generateSnippet, r as DEFAULT_THEME, t as init } from "../index-
|
|
9
|
+
import { A as SourceInfo, T as ReactGrabRendererProps, _ as Options, a as ActionContext, b as PluginConfig, c as AgentContext, k as SettableOptions, l as ContextMenuAction, n as isInstrumentationActive, t as copyContent, v as OverlayBounds, w as ReactGrabAPI, x as PluginHooks, y as Plugin } from "../copy-content-CDFe4uJW.js";
|
|
10
|
+
import { a as getStack, i as formatElementInfo, n as generateSnippet, r as DEFAULT_THEME, t as init } from "../index-qFak7ECs.js";
|
|
11
11
|
export { ActionContext, AgentContext, ContextMenuAction, DEFAULT_THEME, Options, OverlayBounds, Plugin, PluginConfig, PluginHooks, ReactGrabAPI, ReactGrabRendererProps, SettableOptions, SourceInfo, copyContent, formatElementInfo, generateSnippet, getStack, init, isInstrumentationActive };
|
package/dist/core/index.js
CHANGED
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
* This source code is licensed under the MIT license found in the
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*/
|
|
9
|
-
import{a as e,n as t,t as n}from"../core-
|
|
9
|
+
import{a as e,n as t,t as n}from"../core-gGgxPEEO.js";import{q as r}from"../freeze-updates-irDkdLIm.js";import{n as i,o as a,t as o}from"../copy-content-BX7Cfd2n.js";export{e as DEFAULT_THEME,o as copyContent,i as formatElementInfo,t as generateSnippet,a as getStack,n as init,r as isInstrumentationActive};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
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
|
+
const e=require(`./execute-context-menu-action-Cuu4EgLI.cjs`),t=require(`./freeze-updates-CQNe1XqU.cjs`),n=require(`./copy-content-Cf6xuUb1.cjs`);var r=`/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
|
|
10
|
+
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-contain-size:initial;--tw-contain-layout:initial;--tw-contain-paint:initial;--tw-contain-style:initial}}}@layer theme{:root,:host{--font-sans:"Geist", ui-sans-serif, system-ui, sans-serif;--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-500:oklch(63.7% .237 25.331);--spacing:4px;--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--radius-sm:4px;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.a11y-hitbox{position:relative}.a11y-hitbox:before{content:"";pointer-events:auto;width:100%;min-width:24px;height:100%;min-height:24px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.top-1\\/2{top:50%}.top-\\[2px\\]{top:2px}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-full{right:100%}.bottom-\\[2px\\]{bottom:2px}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing) * 0)}.left-full{left:100%}.z-1{z-index:1}.z-10{z-index:10}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.-m-0\\.5{margin:calc(var(--spacing) * -.5)}.-m-4{margin:calc(var(--spacing) * -4)}.m-0{margin:calc(var(--spacing) * 0)}.-mx-2{margin-inline:calc(var(--spacing) * -2)}.-my-1\\.5{margin-block:calc(var(--spacing) * -1.5)}.-mt-\\[8px\\]{margin-top:-8px}.mt-2\\.5{margin-top:calc(var(--spacing) * 2.5)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-1\\.5{margin-right:calc(var(--spacing) * 1.5)}.mr-2\\.5{margin-right:calc(var(--spacing) * 2.5)}.mb-1\\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2\\.5{margin-bottom:calc(var(--spacing) * 2.5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2\\.5{margin-left:calc(var(--spacing) * 2.5)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.ml-px{margin-left:1px}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{width:0;height:0;display:none}.line-clamp-5{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.size-0{width:calc(var(--spacing) * 0);height:calc(var(--spacing) * 0)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-\\[12px\\]{width:12px;height:12px}.size-\\[16px\\]{width:16px;height:16px}.h-\\[8px\\]{height:8px}.h-\\[17px\\]{height:17px}.h-\\[20px\\]{height:20px}.h-\\[24px\\]{height:24px}.h-fit{height:fit-content}.max-h-\\[var\\(--rg-edit-list-max-h\\)\\]{max-height:var(--rg-edit-list-max-h)}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-4{min-height:calc(var(--spacing) * 4)}.min-h-\\[28px\\]{min-height:28px}.w-\\[2px\\]{width:2px}.w-\\[calc\\(100\\%\\+16px\\)\\]{width:calc(100% + 16px)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-\\[280px\\]{max-width:280px}.max-w-full{max-width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\\[36px\\]{min-width:36px}.min-w-\\[100px\\]{min-width:100px}.min-w-\\[150px\\]{min-width:150px}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.interactive-scale{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}@media (hover:hover) and (pointer:fine){.interactive-scale:hover{transform:scale(1.05)}}.interactive-scale:active{transition:transform 60ms cubic-bezier(0,0,.2,1);transform:scale(.96)}.press-scale{transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.press-scale:active{transition:transform 60ms cubic-bezier(0,0,.2,1);transform:scale(.97)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.resize{resize:both}.resize-none{resize:none}.grid-cols-\\[0fr\\]{grid-template-columns:0fr}.grid-cols-\\[1fr\\]{grid-template-columns:1fr}.grid-rows-\\[0fr\\]{grid-template-rows:0fr}.grid-rows-\\[1fr\\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:calc(var(--spacing) * 0)}.gap-0\\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-\\[5px\\]{gap:5px}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:4px}.rounded-\\[1px\\]{border-radius:1px}.rounded-\\[3px\\]{border-radius:3px}.rounded-\\[4px\\]{border-radius:4px}.rounded-\\[6px\\]{border-radius:6px}.rounded-\\[13px\\]{border-radius:13px}.rounded-\\[14px\\]{border-radius:14px}.rounded-full{border-radius:3.40282e38px}.rounded-sm{border-radius:var(--radius-sm)}.rounded-t{border-top-left-radius:4px;border-top-right-radius:4px}.rounded-t-\\[10px\\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.rounded-l{border-top-left-radius:4px;border-bottom-left-radius:4px}.rounded-l-\\[10px\\]{border-top-left-radius:10px;border-bottom-left-radius:10px}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-tl{border-top-left-radius:4px}.rounded-r{border-top-right-radius:4px;border-bottom-right-radius:4px}.rounded-r-\\[10px\\]{border-top-right-radius:10px;border-bottom-right-radius:10px}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-tr{border-top-right-radius:4px}.rounded-b{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.rounded-b-\\[6px\\]{border-bottom-right-radius:6px;border-bottom-left-radius:6px}.rounded-b-\\[10px\\]{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-br{border-bottom-right-radius:4px}.rounded-bl{border-bottom-left-radius:4px}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.\\[border-width\\:0\\.5px\\]{border-width:.5px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-4{border-top-style:var(--tw-border-style);border-top-width:4px}.\\[border-top-width\\:0\\.5px\\]{border-top-width:.5px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\\[var\\(--rg-border-button\\)\\]{border-color:var(--rg-border-button)}.border-t-\\[var\\(--rg-border-subtle\\)\\]{border-top-color:var(--rg-border-subtle)}.bg-\\[\\#f00\\]{background-color:red}.bg-\\[var\\(--rg-error-bg\\)\\]{background-color:var(--rg-error-bg)}.bg-\\[var\\(--rg-panel-bg\\)\\]{background-color:var(--rg-panel-bg)}.bg-\\[var\\(--rg-submit-bg\\)\\]{background-color:var(--rg-submit-bg)}.bg-\\[var\\(--rg-surface-active\\)\\]{background-color:var(--rg-surface-active)}.bg-\\[var\\(--rg-surface-hover\\)\\]{background-color:var(--rg-surface-hover)}.bg-\\[var\\(--rg-text-primary\\)\\]{background-color:var(--rg-text-primary)}.bg-\\[var\\(--rg-text-secondary\\)\\]{background-color:var(--rg-text-secondary)}.bg-red-500{background-color:var(--color-red-500)}.bg-transparent{background-color:#0000}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-6{padding:calc(var(--spacing) * 6)}.px-0{padding-inline:calc(var(--spacing) * 0)}.px-0\\.25{padding-inline:calc(var(--spacing) * .25)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-\\[3px\\]{padding-inline:3px}.py-0{padding-block:calc(var(--spacing) * 0)}.py-0\\.5{padding-block:calc(var(--spacing) * .5)}.py-0\\.25{padding-block:calc(var(--spacing) * .25)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-px{padding-block:1px}.pt-1\\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.text-center{text-align:center}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.font-serif{font-family:var(--font-serif)}.text-\\[9px\\]{font-size:9px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.text-\\[12px\\]{font-size:12px}.text-\\[13px\\]{font-size:13px}.leading-3\\.5{--tw-leading:calc(var(--spacing) * 3.5);line-height:calc(var(--spacing) * 3.5)}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-extralight{--tw-font-weight:var(--font-weight-extralight);font-weight:var(--font-weight-extralight)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.font-thin{--tw-font-weight:var(--font-weight-thin);font-weight:var(--font-weight-thin)}.break-normal{overflow-wrap:normal;word-break:normal}.break-words,.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-break-spaces{white-space:break-spaces}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\\[var\\(--rg-error-text\\)\\]{color:var(--rg-error-text)}.text-\\[var\\(--rg-submit-fg\\)\\]{color:var(--rg-submit-fg)}.text-\\[var\\(--rg-text-primary\\)\\]{color:var(--rg-text-primary)}.text-\\[var\\(--rg-text-primary-85\\)\\]{color:var(--rg-text-primary-85)}.text-\\[var\\(--rg-text-secondary\\)\\]{color:var(--rg-text-secondary)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.not-italic{font-style:normal}.lining-nums{--tw-numeric-figure:lining-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.oldstyle-nums{--tw-numeric-figure:oldstyle-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.proportional-nums{--tw-numeric-spacing:proportional-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.slashed-zero{--tw-slashed-zero:slashed-zero;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.\\[box-shadow\\:var\\(--rg-shadow\\)\\]{box-shadow:var(--rg-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.\\[filter\\:var\\(--rg-drop-shadow\\)\\]{filter:var(--rg-drop-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-columns\\]{transition-property:grid-template-columns;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[grid-template-rows\\]{transition-property:grid-template-rows;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[opacity\\,transform\\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[padding\\,border-radius\\,transform\\]{transition-property:padding,border-radius,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[top\\,left\\,width\\,height\\,opacity\\,border-radius\\]{transition-property:top,left,width,height,opacity,border-radius;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,color\\]{transition-property:transform,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\\[transform\\,opacity\\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-\\[80ms\\]{transition-delay:80ms}.duration-60{--tw-duration:60ms;transition-duration:60ms}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-120{--tw-duration:.12s;transition-duration:.12s}.duration-140{--tw-duration:.14s;transition-duration:.14s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-180{--tw-duration:.18s;transition-duration:.18s}.duration-220{--tw-duration:.22s;transition-duration:.22s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.ease-\\[cubic-bezier\\(0\\,0\\,0\\.2\\,1\\)\\]{--tw-ease:cubic-bezier(0,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.ease-drawer{--tw-ease:var(--ease-drawer);transition-timing-function:var(--ease-drawer)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.ease-spring{--tw-ease:var(--ease-spring);transition-timing-function:var(--ease-spring)}.will-change-\\[opacity\\,transform\\]{will-change:opacity,transform}.will-change-transform{will-change:transform}.contain-layout{--tw-contain-layout:layout;contain:var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\\[corner-shape\\:superellipse\\(1\\.25\\)\\]{corner-shape:superellipse(1.25)}.\\[font-synthesis\\:none\\]{font-synthesis:none}@media (hover:hover){.group-hover\\:text-\\[var\\(--rg-text-primary\\)\\]:is(:where(.group):hover *){color:var(--rg-text-primary)}.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}.hover\\:bg-\\[var\\(--rg-error-bg-hover\\)\\]:hover{background-color:var(--rg-error-bg-hover)}.hover\\:bg-\\[var\\(--rg-surface-active\\)\\]:hover{background-color:var(--rg-surface-active)}.hover\\:bg-\\[var\\(--rg-surface-hover\\)\\]:hover{background-color:var(--rg-surface-hover)}.hover\\:text-\\[var\\(--rg-text-primary\\)\\]:hover{color:var(--rg-text-primary)}}.disabled\\:cursor-default:disabled{cursor:default}.disabled\\:opacity-40:disabled{opacity:.4}}:host{all:initial;direction:ltr}:host,[data-rg-theme=dark]{--rg-panel-bg:#161616;--rg-text-primary:#fff;--rg-text-secondary:#a7a7a7;--rg-surface-hover:#ffffff1a;--rg-surface-active:#ffffff26;--rg-border-subtle:#ffffff1a;--rg-border-button:#fff3;--rg-submit-bg:#fff;--rg-submit-fg:#161616;--rg-error-text:#f87171;--rg-error-bg:#3d1515;--rg-error-bg-hover:#4d1f1f;--rg-shadow:0 2px 8px #00000014;--rg-drop-shadow:drop-shadow(0px 2px 8px #00000014);--rg-shimmer-from:#a1a1aa;--rg-shimmer-to:#d4d4d8;--rg-text-primary-85:#ffffffd9}@media (prefers-color-scheme:dark){:host:not([data-rg-theme]){--rg-panel-bg:#fff;--rg-text-primary:#171717;--rg-text-secondary:#737373;--rg-surface-hover:#0000000d;--rg-surface-active:#00000014;--rg-border-subtle:#00000014;--rg-border-button:#00000026;--rg-submit-bg:#171717;--rg-submit-fg:#fff;--rg-error-text:#dc2626;--rg-error-bg:#fee2e2;--rg-error-bg-hover:#fecaca;--rg-shadow:0 2px 12px #0000001a;--rg-drop-shadow:drop-shadow(0px 2px 12px #0000001a);--rg-shimmer-from:#71717a;--rg-shimmer-to:#a1a1aa;--rg-text-primary-85:#171717d9}}:host([data-rg-theme=light]),[data-rg-theme=light]{--rg-panel-bg:#fff;--rg-text-primary:#171717;--rg-text-secondary:#737373;--rg-surface-hover:#0000000d;--rg-surface-active:#00000014;--rg-border-subtle:#00000014;--rg-border-button:#00000026;--rg-submit-bg:#171717;--rg-submit-fg:#fff;--rg-error-text:#dc2626;--rg-error-bg:#fee2e2;--rg-error-bg-hover:#fecaca;--rg-shadow:0 2px 12px #0000001a;--rg-drop-shadow:drop-shadow(0px 2px 12px #0000001a);--rg-shimmer-from:#71717a;--rg-shimmer-to:#a1a1aa;--rg-text-primary-85:#171717d9}@keyframes rg-slot-enter-up{0%{filter:blur(2px);opacity:0;transform:translateY(.5em)scale(.5)}to{filter:blur();opacity:1;transform:translateY(0)scale(1)}}@keyframes rg-slot-exit-up{0%{filter:blur();opacity:1;transform:translateY(0)scale(1)}to{filter:blur(2px);opacity:0;transform:translateY(-.5em)scale(.5)}}@keyframes rg-slot-enter-down{0%{filter:blur(2px);opacity:0;transform:translateY(-.5em)scale(.5)}to{filter:blur();opacity:1;transform:translateY(0)scale(1)}}@keyframes rg-slot-exit-down{0%{filter:blur();opacity:1;transform:translateY(0)scale(1)}to{filter:blur(2px);opacity:0;transform:translateY(.5em)scale(.5)}}@keyframes rg-slot-enter-fade{0%{filter:blur(2px);opacity:0;transform:scale(.5)}to{filter:blur();opacity:1;transform:scale(1)}}@keyframes rg-slot-exit-fade{0%{filter:blur();opacity:1;transform:scale(1)}to{filter:blur(2px);opacity:0;transform:scale(.5)}}.rg-slot-column{vertical-align:top;display:inline-block;position:relative}.rg-slot-sizer{visibility:hidden;white-space:pre;display:inline-block}.rg-slot-cell{white-space:pre;will-change:transform, filter, opacity;animation-duration:var(--rg-slot-dur,.35s);animation-timing-function:var(--rg-slot-ease,cubic-bezier(.34, 1.56, .64, 1));animation-fill-mode:both;display:inline-block;position:absolute;top:0;left:0}.rg-slot-cell.rg-slot-enter[data-dir="1"]{animation-name:rg-slot-enter-up}.rg-slot-cell.rg-slot-enter[data-dir="-1"]{animation-name:rg-slot-enter-down}.rg-slot-cell.rg-slot-enter[data-dir="0"]{animation-name:rg-slot-enter-fade}.rg-slot-cell.rg-slot-exit[data-dir="1"]{animation-name:rg-slot-exit-up}.rg-slot-cell.rg-slot-exit[data-dir="-1"]{animation-name:rg-slot-exit-down}.rg-slot-cell.rg-slot-exit[data-dir="0"]{animation-name:rg-slot-exit-fade}@media (prefers-reduced-motion:reduce){:host,:host *,:host :before,:host :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:host :focus,:host :focus-visible{box-shadow:none!important;outline:none!important}@keyframes shake{0%,to{translate:0}15%,45%{translate:calc(-3px * var(--rg-shake-x,1)) calc(-3px * var(--rg-shake-y,0))}30%,60%{translate:calc(3px * var(--rg-shake-x,1)) calc(3px * var(--rg-shake-y,0))}75%{translate:calc(-2px * var(--rg-shake-x,1)) calc(-2px * var(--rg-shake-y,0))}90%{translate:calc(2px * var(--rg-shake-x,1)) calc(2px * var(--rg-shake-y,0))}}@keyframes icon-loader-spin{0%{opacity:1}50%{opacity:.5}to{opacity:.2}}.icon-loader-bar{animation:.5s linear infinite icon-loader-spin}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.shimmer-text{background:linear-gradient(90deg, var(--rg-shimmer-from) 0%, var(--rg-shimmer-to) 25%, var(--rg-shimmer-from) 50%, var(--rg-shimmer-to) 75%, var(--rg-shimmer-from) 100%);color:#0000;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:2.5s linear infinite shimmer}.animate-shake,.animate-shake-vertical{will-change:translate;animation:.3s ease-out shake}@keyframes tooltip-fade-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.animate-tooltip-fade-in{will-change:transform, opacity;animation:.1s ease-out tooltip-fade-in}.animate-shake-vertical{--rg-shake-x:0;--rg-shake-y:1}@supports (-webkit-touch-callout:none){textarea[data-react-grab-input]{font-size:16px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-contain-size{syntax:"*";inherits:false}@property --tw-contain-layout{syntax:"*";inherits:false}@property --tw-contain-paint{syntax:"*";inherits:false}@property --tw-contain-style{syntax:"*";inherits:false}`;function i(e){return typeof e==`object`&&!!e&&(Object.getPrototypeOf(e)===Object.prototype||Array.isArray(e))}function a(e,t,n,r){!r&&e[t]===n||(n===void 0?delete e[t]:e[t]=n)}function o(e,t,n){let r=Object.keys(t);for(let i=0;i<r.length;i+=1){let o=r[i];a(e,o,t[o],n)}}function s(e,t){if(typeof t==`function`&&(t=t(e)),Array.isArray(t)){if(e===t)return;let n=0,r=t.length;for(;n<r;n++){let r=t[n];e[n]!==r&&a(e,n,r)}a(e,`length`,r)}else o(e,t)}function c(e,t,n=[]){let r,s=e;if(t.length>1){r=t.shift();let i=typeof r,a=Array.isArray(e);if(Array.isArray(r)){for(let i=0;i<r.length;i++)c(e,[r[i]].concat(t),n);return}else if(a&&i===`function`){for(let i=0;i<e.length;i++)r(e[i],i)&&c(e,[i].concat(t),n);return}else if(a&&i===`object`){let{from:i=0,to:a=e.length-1,by:o=1}=r;for(let r=i;r<=a;r+=o)c(e,[r].concat(t),n);return}else if(t.length>1){c(e[r],t,[r].concat(n));return}s=e[r],n=[r].concat(n)}let l=t[0];typeof l==`function`&&(l=l(s,n),l===s)||r===void 0&&l==null||(r===void 0||i(s)&&i(l)&&!Array.isArray(l)?o(s,l):a(e,r,l))}function l(e){let t=Array.isArray(e);function n(...n){t&&n.length===1?s(e,n[0]):c(e,n)}return[e,n]}function u(e){return t=>(i(t)&&e(t),t)}let d=new WeakMap,f=new WeakMap;const p=()=>{d=new WeakMap,f=new WeakMap},m=(e,t,n)=>{let r=f.get(e);if(r&&n-r.timestamp<200)return r.borderRadius;let i=(t??window.getComputedStyle(e)).borderRadius||`0px`;return f.set(e,{borderRadius:i,timestamp:n}),i},h=e=>{let t=performance.now(),n=d.get(e);if(n&&t-n.timestamp<16)return n.bounds;let r=e.getBoundingClientRect(),i={borderRadius:m(e,null,t),height:r.height,width:r.width,x:r.left,y:r.top};return d.set(e,{bounds:i,timestamp:t}),i},g=e=>({x:e.x+e.width/2,y:e.y+e.height/2}),_=e=>{let t=0,n=e.previousElementSibling;for(;n;)t+=1,n=n.previousElementSibling;return t},v=new WeakMap,y=e=>{if(e.anchorElement.isConnected)return e.anchorElement;let n=e.anchorElement.tagName,r=t.Y(e.anchorParentFiber);if(t.Q(r)){let t=r.stateNode;if(!(t instanceof Element)||!t.isConnected)return null;let i=t.children[e.anchorIndexInParent];return i&&i.tagName===n?i:null}for(let e of t.J(r)){let t=e.stateNode;if(t instanceof Element&&t.isConnected&&t.tagName===n)return t}return null},b=(e,t)=>{let n=e;for(let e of t){let t=n.children[e];if(!t)return null;n=t}return n},x=e=>{let n=[],r=e,i=t.Z(r);for(;r&&!i;)n.unshift(_(r)),r=r.parentElement,i=t.Z(r);let a=i?.return;return!r||!a?null:{anchorElement:r,anchorParentFiber:a,anchorIndexInParent:_(r),domPath:n,targetTagName:e.tagName}},S=(e,t)=>e.anchorElement.isConnected&&e.anchorIndexInParent===_(e.anchorElement)&&b(e.anchorElement,e.domPath)===t,C=e=>{if(!e.isConnected)return;let t=v.get(e);if(t&&S(t,e))return;let n=x(e);n&&v.set(e,n)},ee=e=>{if(e.isConnected)return e;let t=v.get(e);if(!t)return null;let n=y(t);if(!n)return null;let r=b(n,t.domPath);return r&&r.isConnected&&r.tagName===t.targetTagName?r:null},w=e=>{let t=ee(e)??e;return C(t),t},T=e=>{for(let t=0;t<e.frozenElements.length;t+=1)e.frozenElements[t]=w(e.frozenElements[t]);e.frozenElement=e.frozenElement&&w(e.frozenElement),e.detectedElement=e.detectedElement&&w(e.detectedElement),e.contextMenuElement=e.contextMenuElement&&w(e.contextMenuElement);for(let t of e.labelInstances)if(t.element&&=w(t.element),t.elements)for(let e=0;e<t.elements.length;e+=1)t.elements[e]=w(t.elements[e]);for(let t of e.grabbedBoxes)t.element&&=w(t.element)},te=e=>({selectionInteractionLockDepth:0,wasActivatedByToggle:!1,pendingCommentMode:!1,keyHoldDuration:e.keyHoldDuration,dragStart:{x:t.Mt,y:t.Mt},copyStart:{x:t.Mt,y:t.Mt},copyOffsetFromCenterX:0,detectedElement:null,frozenElement:null,frozenElements:[],frozenDragRect:null,lastGrabbedElement:null,selectionFilePath:null,selectionLineNumber:null,inputText:``,grabbedBoxes:[],labelInstances:[],isTouchMode:!1,activationTimestamp:null,previouslyFocusedElement:null,contextMenuPosition:null,contextMenuElement:null,contextMenuClickOffset:null}),ne=n=>{let[r,i]=l(te(n)),[a,o]=e.yt({x:t.Mt,y:t.Mt}),[s,c]=e.yt(0),[d,f]=e.yt({state:`idle`}),p=e=>{i(u(t=>{e(t),t.frozenElement=t.frozenElements.length>0?t.frozenElements[0]:null,t.frozenDragRect=null;for(let e of t.frozenElements)C(e)}))},m=()=>{p(e=>{e.frozenElements=[]})},_=e=>{f(t=>t.state===`active`?{...t,phase:e}:t)},v={startHold:e=>{e!==void 0&&i(`keyHoldDuration`,e),f({state:`holding`,startedAt:Date.now()})},releaseHold:()=>{d().state===`holding`&&f({state:`idle`})},activate:()=>{e.dt(()=>{f({state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1}),i(`activationTimestamp`,Date.now()),i(`previouslyFocusedElement`,document.activeElement)})},deactivate:()=>{e.dt(()=>{f({state:`idle`}),i(u(e=>{e.wasActivatedByToggle=!1,e.pendingCommentMode=!1,e.inputText=``,e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null,e.activationTimestamp=null,e.previouslyFocusedElement=null,e.contextMenuPosition=null,e.contextMenuElement=null,e.contextMenuClickOffset=null,e.isTouchMode&&(e.detectedElement=null)}))})},toggle:()=>{r.activationTimestamp===null?(i(`wasActivatedByToggle`,!0),v.activate()):v.deactivate()},freeze:()=>{if(d().state===`active`){let e=r.frozenElement??r.detectedElement;e&&(C(e),i(`frozenElement`,e)),_(`frozen`)}},unfreeze:()=>{d().state===`active`&&e.dt(()=>{i(u(e=>{e.frozenElement=null,e.frozenElements=[],e.frozenDragRect=null})),_(`hovering`)})},startDrag:(t,n)=>{d().state===`active`&&e.dt(()=>{n||m(),i(`dragStart`,{x:t.x+window.scrollX,y:t.y+window.scrollY}),_(`dragging-select`)})},startDragReposition:()=>{let e=d();e.state===`active`&&e.phase===`dragging-select`&&_(`dragging-reposition`)},stopDragReposition:()=>{let e=d();e.state===`active`&&e.phase===`dragging-reposition`&&_(`dragging-select`)},shiftDragStart:e=>{let t=d();t.state===`active`&&t.phase===`dragging-reposition`&&i(`dragStart`,t=>({x:t.x+e.x,y:t.y+e.y}))},endDrag:()=>{let n=d();n.state===`active`&&(n.phase===`dragging-select`||n.phase===`dragging-reposition`)&&e.dt(()=>{i(`dragStart`,{x:t.Mt,y:t.Mt}),_(`justDragged`)})},cancelDrag:()=>{let n=d();n.state===`active`&&(n.phase===`dragging-select`||n.phase===`dragging-reposition`)&&e.dt(()=>{i(`dragStart`,{x:t.Mt,y:t.Mt}),_(`hovering`)})},finishJustDragged:()=>{let e=d();e.state===`active`&&e.phase===`justDragged`&&_(`hovering`)},startCopy:()=>{let e=d().state===`active`;f({state:`copying`,startedAt:Date.now(),wasActive:e})},completeCopy:()=>{let e=d(),t=e.state===`copying`?e.wasActive:!1;f({state:`justCopied`,copiedAt:Date.now(),wasActive:t})},finishJustCopied:()=>{let t=d();t.state===`justCopied`&&(t.wasActive&&!r.wasActivatedByToggle?e.dt(()=>{m(),f({state:`active`,phase:`hovering`,isPromptMode:!1,isPendingDismiss:!1})}):v.deactivate())},enterPromptMode:(t,n)=>{let{x:r}=g(h(n));C(n),e.dt(()=>{i(`copyStart`,t),i(`copyOffsetFromCenterX`,t.x-r),o(t),i(`frozenElement`,n),i(`wasActivatedByToggle`,!0),d().state===`active`?f(e=>e.state===`active`?{...e,isPromptMode:!0,phase:`frozen`}:e):(f({state:`active`,phase:`frozen`,isPromptMode:!0,isPendingDismiss:!1}),i(`activationTimestamp`,Date.now()),i(`previouslyFocusedElement`,document.activeElement))})},exitPromptMode:()=>{f(e=>e.state===`active`?{...e,isPromptMode:!1,isPendingDismiss:!1}:e)},setInputText:e=>{i(`inputText`,e)},clearInputText:()=>{i(`inputText`,``)},setPendingDismiss:e=>{f(t=>t.state===`active`?{...t,isPendingDismiss:e}:t)},setPointer:e=>{o(t=>t.x===e.x&&t.y===e.y?t:e)},setDetectedElement:e=>{e&&C(e),i(`detectedElement`,e)},setFrozenElement:e=>{p(t=>{t.frozenElements=[e]})},setFrozenElements:e=>{p(t=>{t.frozenElements=e})},toggleFrozenElement:e=>{p(t=>{let n=t.frozenElements.indexOf(e);n>=0?t.frozenElements.splice(n,1):t.frozenElements.push(e)})},addFrozenElements:e=>{p(t=>{for(let n of e)t.frozenElements.includes(n)||t.frozenElements.push(n)})},setFrozenDragRect:e=>{i(`frozenDragRect`,e)},relinkLiveElements:()=>{i(u(T))},setCopyStart:(e,t)=>{let{x:n}=g(h(t));i(`copyStart`,e),i(`copyOffsetFromCenterX`,e.x-n)},setLastGrabbed:e=>{i(`lastGrabbedElement`,e)},setWasActivatedByToggle:e=>{i(`wasActivatedByToggle`,e)},setPendingCommentMode:e=>{i(`pendingCommentMode`,e)},setTouchMode:e=>{i(`isTouchMode`,e)},incrementSelectionInteractionLockDepth:()=>{i(`selectionInteractionLockDepth`,e=>e+1)},decrementSelectionInteractionLockDepth:()=>{i(`selectionInteractionLockDepth`,e=>Math.max(0,e-1))},setSelectionSource:(t,n)=>{e.dt(()=>{i(`selectionFilePath`,t),i(`selectionLineNumber`,n)})},incrementViewportVersion:()=>{c(e=>e+1)},addGrabbedBox:e=>{e.element&&C(e.element),i(`grabbedBoxes`,t=>[...t,e])},removeGrabbedBox:e=>{i(`grabbedBoxes`,t=>t.filter(t=>t.id!==e))},clearGrabbedBoxes:()=>{i(`grabbedBoxes`,[])},addLabelInstance:e=>{e.element&&C(e.element);for(let t of e.elements??[])C(t);i(`labelInstances`,t=>[...t,e])},updateLabelInstance:(t,n,a)=>{let o=r.labelInstances.findIndex(e=>e.id===t);o!==-1&&e.dt(()=>{i(`labelInstances`,o,`status`,n),a===void 0?n!==`error`&&i(`labelInstances`,o,`errorMessage`,void 0):i(`labelInstances`,o,`errorMessage`,a)})},removeLabelInstance:e=>{i(`labelInstances`,t=>t.filter(t=>t.id!==e))},clearLabelInstances:()=>{i(`labelInstances`,[])},showContextMenu:(t,n)=>{let{x:r,y:a}=g(h(n));C(n),e.dt(()=>{i(`contextMenuPosition`,t),i(`contextMenuElement`,n),i(`contextMenuClickOffset`,{x:t.x-r,y:t.y-a})})},hideContextMenu:()=>{e.dt(()=>{i(`contextMenuPosition`,null),i(`contextMenuElement`,null),i(`contextMenuClickOffset`,null)})},updateContextMenuPosition:()=>{let t=r.contextMenuElement,n=r.contextMenuClickOffset;if(!t||!n||!e.K(t))return;let{x:a,y:o}=g(h(t));i(`contextMenuPosition`,{x:a+n.x,y:o+n.y})}};return{store:r,actions:v,pointer:a,viewportVersion:s,current:d}},E=e=>{if(!document.body)return;let n=document.querySelectorAll(`[${t.rn}]`);for(let t of n)t!==e&&t.parentNode!==e&&(t.shadowRoot||t.remove());document.body.appendChild(e)},re=e=>{if(document.body){E(e);return}let t=()=>{document.removeEventListener(`DOMContentLoaded`,t),E(e)};document.addEventListener(`DOMContentLoaded`,t,{once:!0})},ie=e=>{let n=document.querySelectorAll(`[${t.rn}]`);for(let e of n){let n=e.shadowRoot?.querySelector(`[${t.rn}]`);if(n instanceof HTMLDivElement)return{root:n,host:e};e.remove()}let r=document.createElement(`div`);r.setAttribute(t.rn,`true`),t.A(r),r.style.zIndex=String(t.tn),r.style.position=`fixed`,r.style.inset=`0`,r.style.pointerEvents=`none`,r.style.contain=`strict`;let i=r.attachShadow({mode:`open`}),a=document.createElement(`style`),o=t.j();o&&(a.nonce=o),a.textContent=`@import url("https://fonts.googleapis.com/css2?family=Geist:wght@500&display=swap");\n${e??``}`,i.appendChild(a);let s=document.createElement(`div`);return s.setAttribute(t.rn,`true`),i.appendChild(s),re(r),setTimeout(()=>{E(r)},t.At),{root:s,host:r}},ae=t=>{let[r,i]=e.yt(void 0),a=0;return e.mt(e.Ct(t,e=>{let t=++a;if(!e){i(void 0);return}let r=n.r(e)??void 0;i(r),n.a(e).then(e=>{a===t&&i(e??r)}).catch(()=>{a===t&&i(r)})})),[r,i]},oe=[`data-theme`,`data-mode`,`data-color-scheme`,`data-bs-theme`,`data-mui-color-scheme`,`data-mantine-color-scheme`],se=[{attribute:`data-dark`,theme:`dark`},{attribute:`data-light`,theme:`light`}],ce=(e,t,n)=>{let[r,i,a]=[e,t,n].map(e=>{let t=e/255;return t<=.03928?t/12.92:((t+.055)/1.055)**2.4});return .2126*r+.7152*i+.0722*a},le=(t,n=0)=>{let r=e.B(t),i=r?e.H(r):null;return!i||i.alpha<=n?null:ce(i.red,i.green,i.blue)},ue=e=>{let t=le(e);return t===null?null:t<.18?`dark`:`light`},D=e=>ue(getComputedStyle(e).backgroundColor),de=()=>{let e=le(getComputedStyle(document.documentElement).color,t.Pt);return e===null?null:e>.6?`dark`:null},fe=()=>{let e=document.createElement(`div`);e.style.cssText=`position:fixed;width:0;height:0;background-color:Canvas!important`,document.documentElement.appendChild(e);let t=ue(getComputedStyle(e).backgroundColor);return e.remove(),t},pe=e=>{let t=e.toLowerCase();return t===`dark`?`dark`:t===`light`?`light`:null},me=e=>{let t=e.style.colorScheme||getComputedStyle(e).colorScheme;return t?t.trim().toLowerCase().split(/\s+/):[]},he=e=>{let t=me(e),n=t.includes(`dark`);return n===t.includes(`light`)?null:n?`dark`:`light`},ge=e=>{if(e.classList.contains(`dark`))return`dark`;if(e.classList.contains(`light`))return`light`;for(let t of oe){let n=e.getAttribute(t);if(!n)continue;let r=pe(n);if(r)return r}for(let{attribute:t,theme:n}of se)if(e.hasAttribute(t))return n;return null},_e=(e,t)=>{for(let n of e){if(!n)continue;let e=t(n);if(e)return e}return null},ve=()=>{let e=[document.documentElement,document.body],t=[document.body,document.documentElement];return _e(e,ge)??_e(e,he)??_e(t,D)??de()??fe()??`light`},ye=e=>e===`dark`?`light`:`dark`,be=()=>{let e=[];for(let t of[document.documentElement,document.body]){if(!t)continue;e.push(t.className);for(let n of oe)e.push(t.getAttribute(n)??``);for(let{attribute:n}of se)e.push(t.hasAttribute(n)?`1`:``);let n=t.style;e.push(n.colorScheme,n.backgroundColor,n.color);for(let t=0;t<n.length;t++){let r=n[t];r.startsWith(`--`)&&e.push(`${r}:${n.getPropertyValue(r)}`)}}return e.join(`|`)},xe={attributes:!0,attributeFilter:[`class`,`style`,...oe,...se.map(({attribute:e})=>e)]},Se=(e,n)=>{let r=null,i=null,a=null,o=t=>{if(t===i&&r!==null)return getComputedStyle(document.body??document.documentElement).backgroundColor,r;i=t;let a=ye(ve());return a!==r&&(r=a,e.setAttribute(`data-rg-theme`,a),n?.(a)),a},s=()=>o(be()),c=()=>{a!==null&&(t._(a),a=null)},l=()=>{a===null&&(a=t.v(()=>{a=null,s()}))},u=s(),d=()=>{let e=be();if(e===i){l();return}c(),o(e)},f=new MutationObserver(d);f.observe(document.documentElement,xe);let p=null;document.body?f.observe(document.body,xe):(p=new MutationObserver((e,t)=>{document.body&&(t.disconnect(),p=null,f.observe(document.body,xe),d())}),p.observe(document.documentElement,{childList:!0}));let m=()=>{i=null,l()},h=window.matchMedia(`(prefers-color-scheme: dark)`);return h.addEventListener(`change`,m),{theme:u,cleanup:()=>{p?.disconnect(),f.disconnect(),h.removeEventListener(`change`,m),c()}}},O=()=>{},Ce=()=>({activate:O,deactivate:O,toggle:O,comment:O,isActive:()=>!1,isEnabled:()=>!1,setEnabled:O,getToolbarState:()=>null,setToolbarState:O,onToolbarStateChange:()=>O,reset:O,dispose:O,copyElement:()=>Promise.resolve(!1),getSource:()=>Promise.resolve(null),getStackContext:()=>Promise.resolve(``),getState:()=>({isActive:!1,isDragging:!1,isCopying:!1,isPromptMode:!1,isSelectionBoxVisible:!1,isDragBoxVisible:!1,targetElement:null,dragBounds:null,grabbedBoxes:[],labelInstances:[],selectionFilePath:null,toolbarState:null}),setOptions:O,registerPlugin:O,unregisterPlugin:O,getPlugins:()=>[],getDisplayName:()=>null}),we=()=>{let e=new AbortController;return{signal:e.signal,abort:()=>e.abort(),addWindowListener:(t,n,r={})=>{window.addEventListener(t,n,{...r,signal:e.signal})},addDocumentListener:(t,n,r={})=>{document.addEventListener(t,n,{...r,signal:e.signal})}}},Te=(e,t=`Unknown error`)=>e instanceof Error&&e.message?e.message:t,Ee=e=>e instanceof Error?e:Error(String(e)),De=Symbol(`aborted-promise-result`),Oe=async(e,t)=>{if(!t)return e;if(t.aborted)return De;let n=()=>{},r=new Promise(e=>{n=()=>e(De)});t.addEventListener(`abort`,n,{once:!0});try{return await Promise.race([e,r])}finally{t.removeEventListener(`abort`,n)}},ke={status:`cancelled`},Ae=e=>({functionName:e.functionName,fileName:e.fileName,lineNumber:e.lineNumber,columnNumber:e.columnNumber,isServer:e.isServer,isSymbolicated:e.isSymbolicated}),k=async(e,r)=>{let i={maxLines:r},[a,o,s,c]=await Promise.all([n.i(e,i),n.s(e,i),n.c(e),n.o(e)]);return{tagName:t.M(e),componentName:s?.componentName??void 0,content:`[${a}]`,source:s,stackContext:o,frames:(c??[]).map(Ae)}},A=async(e,t)=>{let n=await Promise.all(e.map(e=>k(e,t))),r=new Map;for(let e of n)r.has(e.content)||r.set(e.content,e);let i=[...r.values()];return i.length>0?{content:i.map(e=>e.content).join(`
|
|
11
|
+
`),entries:i}:null},je=(e,t,n)=>{if(e?.entries)return t===e.content?e.entries:e.entries.length===1?[{...e.entries[0],content:t,commentText:n}]:e.entries.map(e=>({...e,commentText:n}))},Me=async(e,t,r,i)=>{if(e.signal?.aborted||await Oe(t.onBeforeCopy(r),e.signal)===De)return ke;let a=!1,o=!1,s=``;try{let c=await Oe(e.getContent?Promise.resolve(e.getContent(r)).then(e=>({content:e})):A(r,e.maxContextLines),e.signal);if(c===De)return ke;let l=c?.content;if(l?.trim()){let u=await Oe(t.transformCopyContent(l,r),e.signal);if(u===De)return ke;s=i?`${i}\n${u}`:u,o=!0,a=n.t(s,{componentName:e.componentName,entries:je(c,s,i)})}}catch(n){if(!o&&e.signal?.aborted)return ke;t.onCopyError(Ee(n))}return!o&&e.signal?.aborted?ke:(a&&t.onCopySuccess(r,s),t.onAfterCopy(r,a),{status:a?`succeeded`:`failed`})},Ne=(e,t)=>{let n=Math.max(e.left,t.left),r=Math.max(e.top,t.top),i=Math.min(e.right,t.right),a=Math.min(e.bottom,t.bottom);return Math.max(0,i-n)*Math.max(0,a-r)},j=(e,t)=>e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top,M=e=>e.sort((e,t)=>{if(e===t)return 0;let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING?-1:n&Node.DOCUMENT_POSITION_PRECEDING?1:0}),Pe=t=>{if(t.width<=0||t.height<=0)return[];let n=window.innerWidth,r=window.innerHeight,i=t.x,a=t.y,o=t.x+t.width,s=t.y+t.height,c=i+t.width/2,l=a+t.height/2,u=e.z(Math.ceil(t.width/32),3,20),d=e.z(Math.ceil(t.height/32),3,20),f=u*d,p=f>100?Math.sqrt(100/f):1,m=e.z(Math.floor(u*p),3,20),h=e.z(Math.floor(d*p),3,20),g=new Set,_=[],v=(t,i)=>{let a=e.z(Math.round(t),0,n-1),o=e.z(Math.round(i),0,r-1),s=`${a}:${o}`;g.has(s)||(g.add(s),_.push({x:a,y:o}))};v(i+1,a+1),v(o-1,a+1),v(i+1,s-1),v(o-1,s-1),v(c,a+1),v(c,s-1),v(i+1,l),v(o-1,l),v(c,l);for(let e=0;e<m;e+=1){let n=i+(e+.5)/m*t.width;for(let e=0;e<h;e+=1)v(n,a+(e+.5)/h*t.height)}return _},Fe=(e,n,r)=>{let i={left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height},a=new Set,o=Pe(e);t.p();try{for(let e of o){let t=document.elementsFromPoint(e.x,e.y);for(let e of t)a.add(e)}}finally{t.f()}let s=[];for(let e of a)!r&&t.g(e)||t.on(e)&&n(e)&&s.push(e);let c=new Map;for(let e of s)c.set(e,e.getBoundingClientRect());let l=[];for(let e of s){let t=c.get(e);if(t.width<=0||t.height<=0)continue;let n={left:t.left,top:t.top,right:t.left+t.width,bottom:t.top+t.height};if(r){let r=Ne(i,n),a=t.width*t.height;a>0&&r/a>=.75&&l.push(e)}else j(n,i)&&l.push(e)}return M(l)},N=e=>{let t=new Set(e);return e.filter(e=>{for(let n=e.parentElement;n;n=n.parentElement)if(t.has(n))return!1;return!0})},Ie=(e,t,n=!0)=>N(Fe(e,t,n)),Le=(t,n)=>t.width<=0?0:e.z((n.x-t.x)/t.width,0,1),Re=()=>{p(),t.l()},ze=e=>({borderRadius:`0px`,height:e.height,width:e.width,x:e.pageX-window.scrollX,y:e.pageY-window.scrollY}),Be=e=>({pageX:e.x+window.scrollX,pageY:e.y+window.scrollY,width:e.width,height:e.height}),Ve=e=>({borderRadius:`0px`,height:e.height,width:e.width,x:e.x,y:e.y}),He=(e,t,n)=>{let r=(e,t,n,r)=>{let i=[],a=e,o=0;for(;a&&i.length<n&&o<100;)r(a)&&i.push(a),a=t(a),o+=1;return i},i=r(e.parentElement,e=>e.parentElement,6,t);i.reverse();let a=i.map((e,t)=>({element:e,depth:t,isLast:!0})),o=i.length,s=r(e.previousElementSibling,e=>e.previousElementSibling,7,n),c=r(e.nextElementSibling,e=>e.nextElementSibling,7,n),l=Math.min(s.length,Math.max(3,7-c.length)),u=Math.min(c.length,7-l),d=[...s.slice(0,l).reverse(),e,...c.slice(0,u)],f=r(e.firstElementChild,e=>e.nextElementSibling,6,t),p=d.length-1,m=f.length-1;return d.forEach((t,n)=>{a.push({element:t,depth:o,isLast:n===p}),t===e&&f.forEach((e,t)=>{a.push({element:e,depth:o+1,isLast:t===m})})}),a},Ue=e=>e instanceof SVGElement&&!(e instanceof SVGSVGElement),We=e=>{let t=e.getBoundingClientRect();return t.width>=16||t.height>=16},Ge=(e,t)=>t(e)&&!Ue(e)&&We(e),Ke=new Set([`c`,`C`,`с`,`С`,`ȼ`,`Ȼ`,`ↄ`,`Ↄ`,`ᴄ`,`ᶜ`,`ⱼ`,`ⅽ`,`Ⅽ`,`ç`,`Ç`,`ć`,`Ć`,`č`,`Č`,`ĉ`,`Ĉ`,`ċ`,`Ċ`]),qe=(e,t)=>t===`KeyC`?!0:!e||e.length!==1?!1:Ke.has(e),Je=(e,t)=>{if(!e||!t)return!1;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:!1},Ye={meta:`metaKey`,cmd:`metaKey`,command:`metaKey`,win:`metaKey`,windows:`metaKey`,ctrl:`ctrlKey`,control:`ctrlKey`,shift:`shiftKey`,alt:`altKey`,option:`altKey`,opt:`altKey`},Xe=e=>{let t=e.split(`+`).map(e=>e.trim().toLowerCase()),n={metaKey:!1,ctrlKey:!1,shiftKey:!1,altKey:!1,key:null};for(let e of t){let t=Ye[e];t?n[t]=!0:n.key=e}return n},Ze=e=>{if(typeof e==`function`)return e;let t=Xe(e),n=t.key;return e=>{if(n===null){let n=t.metaKey?e.metaKey||e.key===`Meta`:!0,r=t.ctrlKey?e.ctrlKey||e.key===`Control`:!0,i=t.shiftKey?e.shiftKey||e.key===`Shift`:!0,a=t.altKey?e.altKey||e.key===`Alt`:!0,o=n&&r&&i&&a,s=[t.metaKey,t.ctrlKey,t.shiftKey,t.altKey].filter(Boolean).length,c=[e.metaKey||e.key===`Meta`,e.ctrlKey||e.key===`Control`,e.shiftKey||e.key===`Shift`,e.altKey||e.key===`Alt`].filter(Boolean).length;return o&&c>=s}let r=e.key?.toLowerCase()===n||Je(n,e.code),i=t.metaKey||t.ctrlKey||t.shiftKey||t.altKey?(t.metaKey?e.metaKey:!0)&&(t.ctrlKey?e.ctrlKey:!0)&&(t.shiftKey?e.shiftKey:!0)&&(t.altKey?e.altKey:!0):!e.metaKey&&!e.ctrlKey&&!e.shiftKey&&!e.altKey;return r&&i}},Qe=t=>!t||typeof t==`function`?{metaKey:e.R(),ctrlKey:!e.R(),shiftKey:!1,altKey:!1,key:null}:Xe(t),$e=(t,n)=>{if(n.activationKey)return Ze(n.activationKey)(t);let r=(e.R()?t.metaKey:t.ctrlKey)&&!t.shiftKey&&!t.altKey;return!!(t.key&&r&&qe(t.key,t.code))},et=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,r=-1/0,i=-1/0;for(let a of e)t=Math.min(t,a.x),n=Math.min(n,a.y),r=Math.max(r,a.x+a.width),i=Math.max(i,a.y+a.height);return{x:t,y:n,width:r-t,height:i-n}},tt=t=>{let n=getComputedStyle(t),r={};for(let t of e.M)r[t]=n.getPropertyValue(t);return r},nt=t=>{let n={};for(let r of e.S)n[r]=t.getPropertyValue(r);return n},P=e=>{try{let t=e.parentElement;if(!t)return null;let n=e.namespaceURI,r=e.tagName.toLowerCase(),i=n&&n!==`http://www.w3.org/1999/xhtml`?e.ownerDocument.createElementNS(n,r):e.ownerDocument.createElement(r),a=`style`in i?i.style:null;a instanceof CSSStyleDeclaration&&a.setProperty(`display`,`none`,`important`),t.appendChild(i);try{return nt(getComputedStyle(i))}finally{i.remove()}}catch{return null}},F=new Set([`display`,`width`,`height`]),rt=(e,t,n)=>e.kind===`color`?!1:e.cssProperties.some(e=>F.has(e))?it(e):e.cssProperties.every(e=>{let r=t[e],i=n[e];return r===void 0||i===void 0?!1:r===i}),it=t=>{if(t.kind===`color`)return!1;if(t.kind===`enum`)return t.key===`font-weight`?t.original===`400`:t.options[0]?.value===t.original;let{key:n,original:r}=t;return n.startsWith(`padding`)||n.startsWith(`margin`)||n.includes(`gap`)||n===`border-width`||n.endsWith(`-radius`)||n===`border-radius`?r===0:n===`opacity`?r===100:n===`letter-spacing`||n===`z-index`?r===0:e.O.has(n)?!1:!!(n===`width`||n===`height`||n===`width,height`||n.startsWith(`max-`)||n.startsWith(`min-`)||n===`line-height`)},at=e=>{let t=e.trim();if(!t||t===`auto`||t===`normal`||t===`none`)return null;let n=Number.parseFloat(t);return Number.isFinite(n)?t.endsWith(`%`)?{value:n,unit:`%`}:t.endsWith(`rem`)||t.endsWith(`em`)?{value:n*16,unit:`px`}:t.endsWith(`px`)?{value:n,unit:`px`}:{value:n,unit:``}:null},ot=(n,r)=>{let i=at(n[r]);if(i)return i;if(r===`line-height`){let r=at(n[`font-size`]);return r?{value:e.y(r.value*t.St),unit:r.unit||`px`}:null}return e.T.has(r)?{value:0,unit:`px`}:null},st=(e,t)=>{let n=ot(e,t[0]);if(!n)return null;for(let r=1;r<t.length;r++){let i=ot(e,t[r]);if(!i||i.unit!==n.unit||Math.abs(i.value-n.value)>=.5)return null}return n},ct=(t,n)=>t===`opacity`?{value:Math.round(n.value*100),unit:`%`}:e.N.has(t)?{value:e.y(n.value),unit:``}:{value:e.y(n.value),unit:n.unit||`px`},I=e=>e!==null,L=(e,t)=>{let n=t.map(t=>{let n=t.longhands.length===1?ot(e,t.longhands[0]):st(e,t.longhands);return n?{definition:t,value:n}:null}).filter(I),r=new Map;for(let e of n)for(let t of e.definition.longhands){let n=r.get(t);(!n||e.definition.longhands.length>n.definition.longhands.length)&&r.set(t,e)}let i=new Set(r.values());return n.map(e=>({...e,isCanonical:i.has(e)}))},R=(t,n,r)=>t===`opacity`?{min:0,max:100}:t===`z-index`?{min:e.F,max:e.P}:t===`letter-spacing`?{min:-10,max:20}:t===`font-size`?{min:8,max:96}:t===`line-height`?{min:0,max:120}:t.includes(`radius`)?{min:0,max:96}:t===`width`||t===`height`||t===`width,height`||t.startsWith(`min-`)||t.startsWith(`max-`)?{min:0,max:Math.max(512,Math.ceil(n*2))}:e.O.has(t)?{min:e.k,max:512}:r===`%`?{min:0,max:100}:{min:t.startsWith(`margin`)?e.D:0,max:e.j},z=(t,n,r)=>{let i=ct(t.key,n),a=i.unit===`px`&&Math.abs(i.value)>1e7,o=R(t.key,a?0:i.value,i.unit),s=i.value<0?o.min:o.max,c=a?s:i.value;return{kind:`numeric`,key:t.key,label:t.label,cssProperties:t.longhands,min:o.min,max:o.max,value:c,original:c,unit:i.unit,tailwindAliases:e.l(t.key),isPrioritized:!1,isDefault:!1,isCanonical:r}},lt=(n,r,i,a=!1)=>{let o=e.B(i),s=o?e.H(o):null,c=s!==null&&s.alpha!==0;if(!c&&!a)return null;let l=c&&o?o:t.yt;return{kind:`color`,key:n,label:r,cssProperties:[n],value:l,original:l,tailwindAliases:e.l(n),isPrioritized:a,isDefault:!1,isCanonical:!0}},ut=(t,n,r)=>{let i=n.trim(),a=r??t.options;return!a||!a.some(e=>e.value===i)?null:{kind:`enum`,key:t.key,label:t.label,cssProperties:[t.key],value:i,original:i,options:a,tailwindAliases:e.l(t.key),isPrioritized:!1,isDefault:!1,isCanonical:!0}},dt=new Map(`background-color.color.padding.padding-left,padding-right.padding-top,padding-bottom.padding-top.padding-right.padding-bottom.padding-left.margin.margin-left,margin-right.margin-top,margin-bottom.margin-top.margin-right.margin-bottom.margin-left.font-family.font-size.font-weight.font-style.line-height.letter-spacing.text-transform.text-align.text-decoration-line.white-space.word-break.overflow-wrap.font-variant-numeric.border-radius.border-top-left-radius,border-top-right-radius.border-bottom-left-radius,border-bottom-right-radius.border-top-left-radius,border-bottom-left-radius.border-top-right-radius,border-bottom-right-radius.border-top-left-radius.border-top-right-radius.border-bottom-left-radius.border-bottom-right-radius.width,height.width.height.max-width.max-height.min-width.min-height.opacity.gap.row-gap.column-gap.border-width.border-top-width.border-right-width.border-bottom-width.border-left-width.border-color.align-items.justify-content.top,right,bottom,left.left,right.top,bottom.top.right.bottom.left.z-index`.split(`.`).map((e,t)=>[e,t])),B=e=>dt.get(e.key)??1/0,ft=e=>e.map((e,t)=>({property:e,index:t})).sort((e,t)=>{let n=B(e.property)-B(t.property);return n===0?e.index-t.index:n}).map(e=>e.property),pt=t=>{let n=tt(t),r=getComputedStyle(t),i=nt(r),a=P(t),o=[],s=new Set,c=e=>{s.has(e.key)||(o.push(e),s.add(e.key))};for(let t of e.b)for(let e of L(n,t))c(z(e.definition,e.value,e.isCanonical));for(let t of e.A){let e=ot(n,t.key);e&&c(z({key:t.key,label:t.label,longhands:[t.key]},e,!0))}for(let{key:t,label:n,alwaysShow:i}of e.C){let a=r.getPropertyValue(t);if(!i&&(!a||e.V(a)))continue;let o=lt(t,n,a,i);o&&c(o)}let l=r.getPropertyValue(e.E.key);if(l){let t=ut(e.E,l,e.I(l));t&&c(t)}for(let t of e.w){let e=r.getPropertyValue(t.key);if(!e)continue;let n=ut(t,e);n&&c(n)}return mt(o,e.c(t),i,a)},mt=(e,t,n,r)=>{let i=[],a=[];for(let o of e)if(o.isPrioritized||t.has(o.key))i.push({...o,isPrioritized:!0,isDefault:!1});else{let e=r?rt(o,n,r):it(o);a.push({...o,isDefault:e})}return[...ft(i),...ft(a)]},V=[{keyword:`letter`,family:`letter-spacing`},{keyword:`tracking`,family:`letter-spacing`},{keyword:`leading`,family:`line-height`},{keyword:`line-height`,family:`line-height`},{keyword:`lineheight`,family:`line-height`},{keyword:`radius`,family:`radius`},{keyword:`rounded`,family:`radius`},{keyword:`corner`,family:`radius`},{keyword:`font-size`,family:`font-size`},{keyword:`fontsize`,family:`font-size`},{keyword:`text`,family:`font-size`},{keyword:`stroke`,family:`border-width`},{keyword:`border-width`,family:`border-width`},{keyword:`borderwidth`,family:`border-width`},{keyword:`space`,family:`spacing`},{keyword:`gap`,family:`spacing`},{keyword:`gutter`,family:`spacing`},{keyword:`inset`,family:`spacing`},{keyword:`padding`,family:`spacing`},{keyword:`margin`,family:`spacing`},{keyword:`size`,family:`size`},{keyword:`width`,family:`size`},{keyword:`height`,family:`size`}],H=e=>{let t=e.toLowerCase();for(let{keyword:e,family:n}of V)if(t.includes(e))return n;return null},U=e=>e.includes(`radius`)?`radius`:e.endsWith(`-width`)&&e.includes(`border`)?`border-width`:e===`font-size`?`font-size`:e===`line-height`?`line-height`:e===`letter-spacing`?`letter-spacing`:e.startsWith(`padding`)||e.startsWith(`margin`)||e.endsWith(`gap`)||e===`top`||e===`right`||e===`bottom`||e===`left`||e.startsWith(`inset`)?`spacing`:e===`width`||e===`height`||e.startsWith(`min-`)||e.startsWith(`max-`)?`size`:null,ht=t=>{let n=at(t);return!n||n.unit!==`px`?null:e.y(n.value)},gt=(e,t)=>t===null?!0:e.length===t.length?e<t:e.length<t.length,_t=(e,t,n)=>{if(n===1){for(let n of e)if(n>t)return n;return null}for(let n=e.length-1;n>=0;n--)if(e[n]<t)return e[n];return null},vt=(e,t,n)=>{let r=(t===1?Math.floor(e/n)+1:Math.ceil(e/n)-1)*n;return r<0?null:r};let yt=null;const bt=(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]),xt=()=>{let e=Array.from(document.adoptedStyleSheets??[]),t=document.styleSheets.length;if(yt&&yt.documentSheetCount===t&&bt(yt.adoptedSheets,e))return yt.names;let n=new Set;for(let t of[...document.styleSheets,...e]){let e;try{e=t.cssRules}catch{continue}St(e,n)}return yt={documentSheetCount:t,adoptedSheets:e,names:n},n},St=(e,t)=>{for(let n of Array.from(e))if(n instanceof CSSStyleRule){let e=n.style;for(let n=0;n<e.length;n++){let r=e.item(n);r.startsWith(`--`)&&t.add(r)}}else n instanceof CSSGroupingRule&&St(n.cssRules,t)},Ct={hasTokens:!1,matchColor:()=>null,matchLength:()=>null,stepLength:()=>null},wt=t=>{if(typeof document>`u`)return Ct;let n=xt();if(n.size===0)return Ct;let r=getComputedStyle(t),i=new Map,a=new Map,o=new Map,s=null;for(let t of n){let n=r.getPropertyValue(t).trim();if(!n)continue;let c=ht(n);if(c!==null){t===`--spacing`&&c>0&&(s=c);let e=H(t);if(e!==null){let n=a.get(c);n?n.push({name:t,family:e}):a.set(c,[{name:t,family:e}]);let r=o.get(e);r?r.add(c):o.set(e,new Set([c]))}continue}let l=e.B(n);if(l){let e=l.toLowerCase();gt(t,i.get(e)??null)&&i.set(e,t)}}if(i.size===0&&a.size===0)return Ct;let c=new Map;for(let[e,t]of o)c.set(e,Array.from(t).sort((e,t)=>e-t));return{hasTokens:!0,matchColor:t=>{let n=e.B(t)?.toLowerCase();return n?i.get(n)??null:null},matchLength:(e,t)=>{let n=U(t);if(n===null)return null;let r=a.get(Math.round(e));if(!r)return null;let i=null;for(let e of r)e.family===n&>(e.name,i)&&(i=e.name);return i},stepLength:(e,t,n)=>{let r=U(n);if(r===null)return null;let i=Math.round(e),a=c.get(r);return a&&a.length>=2?_t(a,i,t):(r===`spacing`||r===`size`)&&s?vt(i,t,s):a?_t(a,i,t):null}}},W=t=>t.kind===`color`||t.kind===`enum`?t.value:t.key===`opacity`&&t.unit===`%`?e._(t.value/100):`${e._(t.value)}${t.unit}`,G=(e,t,n)=>{if(!n?.hasTokens)return null;let{edit:r}=t;return r.kind===`color`?n.matchColor(r.value):r.kind===`numeric`&&r.unit===`px`?n.matchLength(r.value,e):null},Tt=e=>{let t=new Map;for(let n of e.edits){let e=W(n);for(let r of n.cssProperties)t.set(r,{edit:n,cssValue:e})}let n=!1;return{lines:Array.from(t,([t,r])=>{let i=G(t,r,e.designTokens);i&&(n=!0);let a=i?` /* var(${i}) */`:``;return`${t}: ${r.cssValue};${a}`}),usesToken:n}},Et=e=>e.filePath?`${e.filePath}:${e.lineNumber}`:``,Dt=e=>["```css",...e,"```"].join(`
|
|
12
|
+
`),K=e=>{if(e.length===0)return``;let t=e.map(e=>{let{lines:t,usesToken:n}=Tt(e);return{header:Et(e),cssLines:t,usesToken:n}}),n=[`Apply these style changes canonically (CSS = visual intent; choose the source change that best expresses the underlying layout intent):`];if(t.some(e=>e.usesToken)&&n.push("Prefer the design token shown in each `/* var(--token) */` comment over the raw value when it matches the project's intent."),t.length===1){let[e]=t;return e.header&&n.push(`\n${e.header}`),n.push(Dt(e.cssLines)),n.join(`
|
|
13
|
+
`)}for(let e of t)n.push(e.header?`\n${e.header}`:``),n.push(Dt(e.cssLines));return n.join(`
|
|
14
|
+
`)},q=e=>`style`in e&&e.style instanceof CSSStyleDeclaration,Ot=e=>{let t=new Map,n=q(e)?e:null;return{apply:(e,r)=>{if(n)for(let i of e)t.has(i)||t.set(i,{value:n.style.getPropertyValue(i),priority:n.style.getPropertyPriority(i)}),n.style.setProperty(i,r)},restore:()=>{if(!n){t.clear();return}for(let[e,{value:r,priority:i}]of t)r?n.style.setProperty(e,r,i):n.style.removeProperty(e);t.clear()},hasAppliedStyles:()=>t.size>0}},kt=(e,t)=>{for(let n of t){let t=e.edits.findIndex(e=>e.key===n.key);t>=0?e.edits[t]=n:e.edits.push(n)}},At=(e,t)=>({element:e.element,preview:e.preview,filePath:e.filePath??``,lineNumber:e.lineNumber??0,edits:t,designTokens:e.designTokens}),jt=r=>{let[i,a]=e.yt(null),[o,s]=e.yt(!1),c=[],l=[],u=e=>{l=e},d=()=>{let e=i()!==null;a(null),s(!1),c=[],l=[],e&&r.onClose?.()},f=()=>{i()?.preview.restore();for(let e=c.length-1;e>=0;e--)c[e].preview.restore();d()},p=e=>{n.a(e).then(t=>{t&&a(n=>!n||n.element!==e||n.componentName?n:{...n,componentName:t})})},m=(e,n,o={})=>{if(i()!==null)return!1;let s=pt(e);if(s.length===0)return!1;let c=o.filePath??r.store.selectionFilePath??void 0,l=o.lineNumber??r.store.selectionLineNumber??void 0;return a({element:e,position:n,properties:s,preview:Ot(e),filePath:c,lineNumber:l,componentName:o.componentName,tagName:o.tagName??t.M(e),initialSearchQuery:o.initialSearchQuery,designTokens:wt(e)}),p(e),r.isActivated()||r.activateRenderer(),r.actions.setPointer(n),r.actions.setFrozenElement(e),r.actions.freeze(),r.onOpen?.(),!0},h=(e,o)=>{let s=i();if(!s||s.element===e)return!1;let u=pt(e);return u.length===0?!1:((l.length>0||s.preview.hasAppliedStyles())&&c.push(At(s,l)),l=[],a({element:e,position:o,properties:u,preview:Ot(e),tagName:t.M(e),hasSessionEdits:c.some(e=>e.edits.length>0),designTokens:wt(e)}),n.c(e).then(t=>{if(t){for(let n of c)n.element===e&&!n.filePath&&(n.filePath=t.filePath,n.lineNumber=t.lineNumber??0);a(n=>!n||n.element!==e||n.filePath?n:{...n,filePath:t.filePath,lineNumber:t.lineNumber??void 0})}}).catch(()=>void 0),p(e),r.actions.setPointer(o),r.actions.setFrozenElement(e),!0)},g=(e,t)=>[...c,At(e,t)],_=e=>{let t=new Map;for(let n of e){if(n.edits.length===0)continue;let e=t.get(n.element);if(e){!e.filePath&&n.filePath&&(e.filePath=n.filePath,e.lineNumber=n.lineNumber),kt(e,n.edits);continue}t.set(n.element,{filePath:n.filePath,lineNumber:n.lineNumber,edits:[...n.edits],designTokens:n.designTokens})}return Array.from(t.values())},v=e=>{let t=new Set;for(let n of e)n.edits.length>0&&t.add(n.element);for(let n=e.length-1;n>=0;n--){let r=e[n];r.edits.length===0&&!t.has(r.element)&&r.preview.restore()}};return{state:i,trigger:m,switchToElement:h,setPendingEdits:u,dismiss:()=>{i()!==null&&(f(),r.store.wasActivatedByToggle?r.deactivateRenderer():r.actions.unfreeze())},closePreservingRenderer:()=>{i()!==null&&(f(),r.actions.unfreeze())},submit:e=>{let t=i();if(!t)return;let n=t.element,a=g(t,e),o=K(_(a));v(a),d(),r.store.wasActivatedByToggle||r.actions.unfreeze(),r.performCopyWithLabel({element:n,cursorX:t.position.x,extraPrompt:o||void 0,shouldDeactivateAfter:r.store.wasActivatedByToggle})},resetWithDiscard:f,isOpen:()=>i()!==null,isInteracting:o,setInteracting:s}},Mt={enabled:!0,hue:0,selectionBox:{enabled:!0},dragBox:{enabled:!0},grabbedBoxes:{enabled:!0},elementLabel:{enabled:!0},toolbar:{enabled:!0}},Nt=(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},toolbar:{enabled:t.toolbar?.enabled??e.toolbar.enabled}}),Pt={activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,activationKey:void 0,getContent:void 0,maxContextLines:3,freezeReactUpdates:!0},Ft=(n={})=>{let r=new Map,i={},a=!1,[o,s]=l({theme:Mt,options:{...Pt,...n},actions:[]}),c=e=>{let t=Mt,r={...Pt,...n},i=[];for(let{config:n}of e)if(n.theme&&(t=Nt(t,n.theme)),n.options&&(r={...r,...n.options}),n.actions)for(let e of n.actions)i.push(e);return{theme:t,options:r,actions:i}},u=e=>{s(`theme`,e.theme),s(`options`,{...e.options,...i}),s(`actions`,e.actions)},d=()=>{u(c(r.values()))},f=(e,t)=>{i[e]=t,s(`options`,e,()=>t)},p=[`activationMode`,`keyHoldDuration`,`allowActivationInsideInput`,`activationKey`,`getContent`,`maxContextLines`,`freezeReactUpdates`],m=e=>{if(!a)for(let t of p)e[t]!==void 0&&f(t,e[t])},h=({plugin:e,config:n})=>{try{let r=n.cleanup?.();Promise.resolve(r).catch(n=>{new t.R(e.name,n)})}catch(n){new t.R(e.name,n)}},g=(e,n)=>{let r;try{r=e.setup?.(n,T)??{};let t=r.cleanup?.bind(r);return{...r,cleanup:t,theme:e.theme?r.theme?Nt(Nt(Mt,e.theme),r.theme):e.theme:r.theme,options:e.options?{...e.options,...r.options}:r.options,actions:e.actions?[...e.actions,...r.actions??[]]:r.actions,hooks:e.hooks?{...e.hooks,...r.hooks}:r.hooks}}catch(n){throw r&&h({plugin:e,config:r}),new t.B(e.name,n)}},_=(e,n)=>{if(a)return;let i={plugin:e,config:g(e,n)},o=r.get(e.name),s=new Map(r);s.set(e.name,i);let l;try{l=c(s.values())}catch(n){throw h(i),new t.B(e.name,n)}r.set(e.name,i),u(l),o&&h(o)},v=e=>{if(a)return;let t=r.get(e);t&&(r.delete(e),h(t),d())},y=()=>{if(a)return;a=!0;let e=Array.from(r.values());r.clear(),e.forEach(h),d()},b=()=>Array.from(r.keys()),x=(e,...n)=>{for(let{plugin:i,config:a}of r.values()){let r=a.hooks?.[e];if(r)try{let a=r(...n);a&&Promise.resolve(a).catch(n=>{new t.z(i.name,String(e),n)})}catch(n){new t.z(i.name,String(e),n)}}},S=(e,...n)=>{let i=!1;for(let{plugin:a,config:o}of r.values()){let r=o.hooks?.[e];if(r)try{r(...n)===!0&&(i=!0)}catch(n){new t.z(a.name,String(e),n)}}return i},C=async(e,...n)=>{for(let{plugin:i,config:a}of r.values()){let r=a.hooks?.[e];if(r)try{await r(...n)}catch(n){new t.z(i.name,String(e),n)}}},ee=async(e,n,...i)=>{let a=n;for(let{plugin:n,config:o}of r.values()){let r=o.hooks?.[e];if(r)try{a=await r(a,...i)}catch(r){new t.z(n.name,String(e),r)}}return a},w=(e,n,...i)=>{let a=n;for(let{plugin:n,config:o}of r.values()){let r=o.hooks?.[e];if(r)try{a=r(a,...i)}catch(r){new t.z(n.name,String(e),r)}}return a},T={onActivate:()=>x(`onActivate`),onDeactivate:()=>x(`onDeactivate`),onElementHover:e=>x(`onElementHover`,e),onElementSelect:e=>{let n=!1,i=[];for(let{plugin:a,config:o}of r.values()){let r=o.hooks?.onElementSelect;if(r)try{let o=r(e);if(o){if(n=!0,o===!0)continue;i.push(o.catch(e=>(new t.z(a.name,`onElementSelect`,e),!1)))}}catch(e){new t.z(a.name,`onElementSelect`,e)}}let a=i.length>0?Promise.all(i).then(e=>e.every(Boolean)):void 0;return{wasIntercepted:n,pendingResult:a}},onDragStart:(e,t)=>x(`onDragStart`,e,t),onDragEnd:(e,t)=>x(`onDragEnd`,e,t),onBeforeCopy:async e=>C(`onBeforeCopy`,e),transformCopyContent:async(e,t)=>ee(`transformCopyContent`,e,t),onAfterCopy:(e,t)=>x(`onAfterCopy`,e,t),onCopySuccess:(e,t)=>x(`onCopySuccess`,e,t),onCopyError:e=>x(`onCopyError`,e),onStateChange:e=>x(`onStateChange`,e),onPromptModeChange:(e,t)=>x(`onPromptModeChange`,e,t),onSelectionBox:(e,t,n)=>x(`onSelectionBox`,e,t,n),onDragBox:(e,t)=>x(`onDragBox`,e,t),onGrabbedBox:(e,t)=>x(`onGrabbedBox`,e,t),onElementLabel:(e,t,n)=>x(`onElementLabel`,e,t,n),onContextMenu:(e,t)=>x(`onContextMenu`,e,t),onOpenFile:(e,t)=>S(`onOpenFile`,e,t),transformHtmlContent:async(e,t)=>ee(`transformHtmlContent`,e,t),transformAgentContext:async(e,t)=>ee(`transformAgentContext`,e,t),transformActionContext:e=>w(`transformActionContext`,e),transformOpenFileUrl:(e,t,n)=>w(`transformOpenFileUrl`,e,t,n)};return e.bt()&&e.wt(y),{register:_,unregister:v,getPluginNames:b,setOptions:m,dispose:y,store:o,hooks:T}},It=e=>`${e}-${Date.now()}-${Math.random().toString(36).slice(2,9)}`,Lt=e=>{let t=e.bounds.x+e.bounds.width/2,n=e.bounds.width/2,r=e.mouseX===void 0?void 0:e.mouseX-t;return{id:It(`label`),bounds:e.bounds,boundsMultiple:e.boundsMultiple,tagName:e.tagName,componentName:e.componentName,status:e.status,createdAt:Date.now(),element:e.element,elements:e.elements,mouseX:e.mouseX,mouseXOffsetFromCenter:r,mouseXOffsetRatio:r!==void 0&&n>0?r/n:void 0,hideArrow:e.hideArrow}},Rt=(e,n,r)=>{let i=new Map,a=e=>{let t=i.get(e);t!==void 0&&(window.clearTimeout(t),i.delete(e))},o=()=>{for(let e of i.values())window.clearTimeout(e);i.clear()},s=()=>{o(),e.clearLabelInstances(),r?.()},c=n=>{a(n);let r=window.setTimeout(()=>{e.updateLabelInstance(n,`fading`);let t=window.setTimeout(()=>{i.delete(n),e.removeLabelInstance(n)},125);i.set(n,t)},t.xt);i.set(n,r)};return{createInstance:(t,n,r,i,a)=>{s();let o=Lt({bounds:t,tagName:n,componentName:r,status:i,element:a?.element,mouseX:a?.mouseX,elements:a?.elements,boundsMultiple:a?.boundsMultiple,hideArrow:a?.hideArrow});return e.addLabelInstance(o),o.id},createPerElementInstances:(t,n)=>{s();let r=[];for(let i of t){let t=Lt({bounds:h(i.element),tagName:i.tagName,componentName:i.componentName,status:n,element:i.element,mouseX:i.mouseX});e.addLabelInstance(t),r.push(t.id)}return r},updateAfterCopy:(t,n,r)=>{n?(e.updateLabelInstance(t,`copied`),c(t)):(a(t),e.updateLabelInstance(t,`error`,r||`Unknown error`))},markRetrying:t=>{a(t),e.updateLabelInstance(t,`copying`)},dismissInstance:t=>{a(t),e.removeLabelInstance(t)},cancelAllFades:o,clearAll:s,handleHoverChange:(e,t)=>{if(t){a(e);return}let r=n().find(t=>t.id===e);r&&(r.status===`copied`||r.status===`fading`)&&c(e)}}},zt=e=>{let t=window.innerWidth,n=window.innerHeight,r=Math.max(0,e.x),i=Math.min(t,e.x+e.width),a=Math.max(0,e.y),o=Math.min(n,e.y+e.height);return{x:(r+i)/2,y:(a+o)/2}},Bt=(n,r,i)=>{let a=[],o=(e,r)=>{let a=zt(i(e)),o=t.d(a.x,a.y).filter(n),s=o.indexOf(e);return s===-1?null:o[s+r]??null},s=e=>{let t=o(e,1);return t&&(a.push(e),a.length>50&&(a=a.slice(-50))),t},c=t=>{if(a.length>0){let t=a.pop();if(e.K(t))return t}return o(t,-1)},l=(e,t)=>{let n=e=>t?e.nextElementSibling:e.previousElementSibling,i=n(e);for(;i;){if(r(i))return a=[],i;i=n(i)}return null};return{findNext:(e,t)=>{switch(e){case`ArrowUp`:return s(t);case`ArrowDown`:return c(t);case`ArrowRight`:return l(t,!0);case`ArrowLeft`:return l(t,!1);default:return null}},clearHistory:()=>{a=[]}}},Vt=e=>{let{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}=Qe(e.activationKey);return{metaKey:t,ctrlKey:n,shiftKey:r,altKey:i}},Ht=()=>{let e=new WeakSet,t=Object.getOwnPropertyDescriptor(KeyboardEvent.prototype,`key`),n=!1;if(t?.get&&!t.get.__reactGrabPatched){n=!0;let r=t.get,i=function(){return e.has(this)?``:r.call(this)};i.__reactGrabPatched=!0,Object.defineProperty(KeyboardEvent.prototype,`key`,{get:i,configurable:!0})}return{claimedEvents:e,originalKeyDescriptor:t,restore:()=>{n&&t&&Object.defineProperty(KeyboardEvent.prototype,`key`,t)}}},Ut=(e,t)=>({top:t<25,bottom:t>window.innerHeight-25,left:e<25,right:e>window.innerWidth-25}),Wt=(e,n,r)=>{let i=null,a=()=>{if(!n()){o();return}let s=e(),c=Ut(s.x,s.y),l=0,u=0;if(c.top&&(u-=10),c.bottom&&(u+=10),c.left&&(l-=10),c.right&&(l+=10),l!==0||u!==0){let e=window.scrollX,t=window.scrollY;window.scrollBy(l,u);let n=window.scrollX-e,i=window.scrollY-t;(n!==0||i!==0)&&r?.({x:n,y:i})}i=c.top||c.bottom||c.left||c.right?t.v(a):null},o=()=>{i!==null&&(t._(i),i=null)};return{start:a,stop:o,isActive:()=>i!==null}},Gt=()=>{let e=globalThis;return!!(e.chrome?.runtime?.id||e.browser?.runtime?.id)},Kt=e=>{try{let t=`0.1.48-dev.b18eff0`,n=`data:image/svg+xml;base64,${btoa(`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 294 294"><path fill="#ff40e0" d="M145 47c25-20 50-27 67-17 16 9 23 30 20 60 0 2-1 5-1 7l-2 13h-1l-12-4c-8-3-17-5-25-6l-17-3c-10-1-20-1-29-1-10 0-20 0-29 1-6 8-11 16-16 24-5 9-9 17-13 26 4 9 8 18 13 26s10 16 16 24l11 14c5 7 11 13 18 19l10 8s-1 0 0 0l-11 9c-17 14-35 22-49 22-6 0-13-2-18-5-16-9-23-30-20-59 1-3 1-5 1-8-30-12-48-29-48-50 0-18 14-35 41-47 2-1 5-2 7-3 0-2 0-5-1-7-3-30 4-51 20-60 18-10 42-3 68 17M71 201c-1 2-1 4-1 5-2 24 3 41 13 47h1c11 7 30 1 51-15-10-9-18-18-26-29-13-1-26-4-38-8m9-38c-3 9-5 17-7 26 8 2 17 4 25 6-3-5-6-10-9-16-3-5-6-10-9-16m-19-53c-2 1-3 1-5 2-21 10-34 23-34 35 0 13 14 27 39 37 3-12 7-25 12-37-5-12-9-24-12-37m37-10c-8 1-17 3-25 6 2 8 4 16 7 25 3-5 6-11 9-16zm-3-61c-4-1-8 0-12 2-10 7-15 24-13 47 0 2 0 3 1 5 12-4 25-6 38-8 8-10 16-20 26-29-15-11-29-17-40-17m111 2c-4-2-8-3-12-2-11 0-25 5-40 17 10 9 19 19 26 29 13 2 26 4 39 8v-5c3-23-2-40-13-47m-61 23c-7 6-13 13-19 19h37c-6-6-12-13-18-19"/><mask id="a"><path fill="#fff" d="m235 85-133 27 28 133 133-27Z"/></mask><path fill="#ff40e0" d="m137 130 76 11c8 1 9 11 3 15l-28 16-4 32c-1 8-10 10-14 4l-41-66c-3-6 1-13 8-12" mask="url(#a)"/></svg>`)}`;console.log(`%cReact Grab${` v${t}`}%c\nhttps://react-grab.com`,`background: #330039; color: #ffffff; border: 1px solid #d75fcb; padding: 4px 4px 4px 24px; border-radius: 4px; background-image: url("${n}"); background-size: 16px 16px; background-repeat: no-repeat; background-position: 4px center; display: inline-block; margin-bottom: 4px;`,``),e&&navigator.onLine&&!Gt()&&fetch(`https://www.react-grab.com/api/version?source=browser&v=${t}&t=${Date.now()}`,{referrerPolicy:`origin`,keepalive:!0,priority:`low`,cache:`no-store`}).then(e=>e.text()).then(e=>{e&&e!==t&&console.warn(`[React Grab] v${t} is outdated (latest: v${e}). Run \`npx grab@latest upgrade\` to upgrade.`)}).catch(()=>null)}catch{}},qt=e=>typeof e==`object`&&!!e,Jt=e=>{if(!qt(e))return null;let t={};return typeof e.enabled==`boolean`&&(t.enabled=e.enabled),(e.activationMode===`toggle`||e.activationMode===`hold`)&&(t.activationMode=e.activationMode),typeof e.keyHoldDuration==`number`&&Number.isFinite(e.keyHoldDuration)&&(t.keyHoldDuration=e.keyHoldDuration),typeof e.allowActivationInsideInput==`boolean`&&(t.allowActivationInsideInput=e.allowActivationInsideInput),typeof e.activationKey==`string`&&(t.activationKey=e.activationKey),typeof e.maxContextLines==`number`&&Number.isFinite(e.maxContextLines)&&(t.maxContextLines=e.maxContextLines),typeof e.freezeReactUpdates==`boolean`&&(t.freezeReactUpdates=e.freezeReactUpdates),typeof e.telemetry==`boolean`&&(t.telemetry=e.telemetry),Object.keys(t).length===0?null:t},Yt=()=>{if(typeof window>`u`)return null;try{let e=(document.currentScript instanceof HTMLScriptElement?document.currentScript:null)?.getAttribute(`data-options`);return e?Jt(JSON.parse(e)):null}catch{return null}},Xt=e=>e===`Enter`||e===`NumpadEnter`,Zt=(e,t)=>e.x>=t.x&&e.x<=t.x+t.width&&e.y>=t.y&&e.y<=t.y+t.height,Qt=(e=>({name:e.name,setup:(t,n)=>({actions:[typeof e.contextMenuAction==`function`?e.contextMenuAction(t,n):e.contextMenuAction],cleanup:e.cleanup})}))({name:`copy`,contextMenuAction:{id:`copy`,label:`Copy`,shortcut:`C`,showInToolbarMenu:!0,onAction:e=>{e.copy?.()}}}),$t={name:`comment`,setup:()=>({actions:[{id:`comment`,label:`Comment`,shortcut:`Enter`,shortcutModifier:!1,showInToolbarMenu:!0,onAction:e=>{e.enterPromptMode?.()}}]})},J={name:`edit`,setup:()=>({actions:[{id:`edit`,label:`Style`,shortcut:`S`,shortcutModifier:!1,showInToolbarMenu:!0,onAction:e=>{e.enterEditMode?.()}}]})},en={name:`open`,actions:[{id:`open`,label:`Open`,shortcut:`O`,enabled:e=>!!e.filePath,onAction:e=>{e.filePath&&(e.hooks.onOpenFile(e.filePath,e.lineNumber)||t.c(e.filePath,e.lineNumber,e.hooks.transformOpenFileUrl),e.hideContextMenu(),e.cleanup())}}]},tn=e=>{let t=e.left+e.width/2,n=e.top+e.height/2,r=n,i=window.innerHeight-n,a=t,o=window.innerWidth-t,s=Math.min(r,i,a,o);return s===r?`top`:s===a?`left`:s===o?`right`:`bottom`},nn=()=>{let[t,n]=e.yt(!1),[r,i]=e.yt(null),a=e.r(),o=()=>{let t=r();return e.K(t)?t:null},s=()=>{i(null),a.clear(),n(!1)};return{selectedElement:o,isPendingDismiss:t,select:(e,t)=>{i(e),n(!1),t?.shouldPromptBeforeMouseHandoff?a.arm():a.clear()},clear:s,consumeMouseHandoff:()=>a.consume()&&o()!==null,showDismissPrompt:()=>o()?t()?!1:(n(!0),!0):(s(),!1),takeSelection:t=>{let n=o()??(e.K(t)?t:null);return s(),n}}},rn=e=>{new t.H(`Toolbar state change subscriber failed`,e)},an=(e,t)=>{for(let n of e)try{Promise.resolve(n(t)).catch(rn)}catch(e){rn(e)}},on=async(e,t={})=>(await Promise.allSettled(e.map(e=>n.n(e,t)))).map(e=>e.status===`fulfilled`?e.value:``),sn=[Qt,J,$t,en],cn={status:`cancelled`};let ln=!1;const un=new Set,dn=i=>{if(typeof window>`u`)return Ce();let a={enabled:!0,activationMode:`toggle`,keyHoldDuration:100,allowActivationInsideInput:!0,...Yt(),...i};if(a.enabled===!1||ln)return Ce();ln=!0,t.sn(a.container??null),Kt(a.telemetry!==!1);let{enabled:o,telemetry:s,container:c,...l}=a;return e.vt(i=>{let a=!1,o=new AbortController,s=null,c,u=Ft(l),{store:d,actions:f,pointer:p,viewportVersion:m,current:_}=ne({keyHoldDuration:u.store.options.keyHoldDuration??100}),v=e.ht(()=>_().state===`holding`),y=e.ht(()=>_().state===`active`),b=e.ht(()=>{let e=_();return e.state===`active`&&e.phase===`frozen`}),x=e.ht(()=>{let e=_();return e.state===`active`&&(e.phase===`dragging-select`||e.phase===`dragging-reposition`)}),S=e.ht(()=>{if(!x())return!1;let e=Math.abs(p().x+window.scrollX-d.dragStart.x),t=Math.abs(p().y+window.scrollY-d.dragStart.y);return e>2||t>2}),C=e.ht(()=>{let e=_();return e.state===`active`&&e.phase===`dragging-reposition`}),ee=e.ht(()=>{let e=_();return e.state===`active`&&e.phase===`justDragged`}),w=e.ht(()=>_().state===`copying`),T=e.ht(()=>d.selectionInteractionLockDepth>0),te=e.ht(()=>_().state===`justCopied`),E=e.ht(()=>{let e=_();return e.state===`active`&&!!e.isPromptMode}),re=e.ht(()=>d.pendingCommentMode||E()),oe=e.ht(()=>{let e=_();return e.state===`active`&&!!e.isPromptMode&&!!e.isPendingDismiss}),se=new Map,ce=(e,t)=>{se.has(e)||se.set(e,document.body.style[e]),document.body.style[e]=t},le=e=>{let t=se.get(e);t!==void 0&&(document.body.style[e]=t,se.delete(e))};e.mt(e.Ct(y,(e,n)=>{e&&!n?(t.r(p().x,p().y),ce(`touchAction`,`none`)):!e&&n&&(t.i(),le(`touchAction`))}));let ue=e.o(),[D,de]=e.yt(ue?!ue.collapsed:!0),[fe,pe]=e.yt(0),[me,he]=e.yt(0),[ge,_e]=e.yt(ue),[ve,ye]=e.yt(!1),be=e.a(e=>e.shiftKey),[xe,O]=e.yt(null),[Ce,Ee]=e.yt(null),[ke,Ae]=e.yt(null),k=jt({store:d,actions:f,isActivated:y,activateRenderer:()=>zn(),deactivateRenderer:()=>X(),performCopyWithLabel:e=>Qt(e),onOpen:()=>{xi(),M?.(),M=bi(yi,Ee)},onClose:()=>{M?.(),M=null,Ee(null)}}),A=e.ht(()=>d.contextMenuPosition!==null||k.isOpen()),je=e.ht(()=>A()||xe()!==null),Ne,j=null,M=null,Pe=!1,Fe=new WeakMap,N=nn(),Ue=()=>!D()||E()||T()||A()||N.isPendingDismiss(),We=()=>{Fe=new WeakMap},Ke=()=>{lt(!1),We()},Je=t=>{let n=ge()??e.o(),r={edge:n?.edge??`bottom`,ratio:n?.ratio??.5,collapsed:n?.collapsed??!1,enabled:n?.enabled??!0,defaultAction:n?.defaultAction??`copy`,...t};e.s(r),_e(r),an(un,r)},Ye=()=>{L.timerId!==null&&(clearTimeout(L.timerId),L.timerId=null)},Xe=()=>{L.copyWaiting=!1,L.holdTimerFired=!1,L.startTimestamp=null};e.mt(()=>{if(_().state!==`holding`){Ye();return}L.startTimestamp=Date.now(),L.timerId=window.setTimeout(()=>{if(L.timerId=null,L.copyWaiting){L.holdTimerFired=!0;return}f.activate()},d.keyHoldDuration),e.wt(Ye)}),e.mt(()=>{let n=_();if(n.state!==`active`||n.phase!==`justDragged`)return;let r=setTimeout(()=>{f.finishJustDragged()},t.xt);e.wt(()=>clearTimeout(r))}),e.mt(()=>{if(_().state!==`justCopied`)return;let n=setTimeout(()=>{f.finishJustCopied()},t.xt);e.wt(()=>clearTimeout(n))}),e.mt(e.Ct(v,(e,t=!1)=>{!t||e||!y()||(u.store.options.activationMode!==`hold`&&f.setWasActivatedByToggle(!0),u.hooks.onActivate())}));let Qe=(e,t,n)=>{nt(e,t,n),f.clearInputText()},tt=()=>{let e=d.frozenElement||J();e&&f.enterPromptMode({x:p().x,y:p().y},e)},nt=(e,t,n)=>{f.setCopyStart({x:t,y:n},e)},P={lastDetectionTimestamp:0,pendingDetectionScheduledAt:0,latestPointerX:0,latestPointerY:0},F=null,[rt,it]=e.yt(null),[at,ot]=e.yt(0),st=(e,t)=>{F!==null&&clearTimeout(F),it(null),F=window.setTimeout(()=>{it({x:e,y:t}),F=null},32)},ct=()=>{F!==null&&(clearTimeout(F),F=null),it(null),On()},I=null,L={timerId:null,startTimestamp:null,copyWaiting:!1,holdTimerFired:!1},R=null,[z,lt]=e.yt(!1),ut=0,dt=!1,B=null,ft=()=>{dt=!0,B!==null&&window.clearTimeout(B),B=window.setTimeout(()=>{dt=!1,B=null},t.xt)},pt=()=>{B!==null&&(window.clearTimeout(B),B=null),dt=!1},mt=0,V=null,H=null,[U,ht]=e.yt(!1),[gt,_t]=e.yt(null),[vt,yt]=e.yt(null),[bt,xt]=ae(vt),St=e.ht(()=>k.isOpen()?t.ut:re()?t.rt:U()?gt():y()?t.at:null),Ct=e=>Ge(e,t.h),wt=Bt(t.h,Ct,h),W=Wt(p,()=>x(),e=>{if(C()){if(f.shiftDragStart(e),R){R={x:R.x+e.x,y:R.y+e.y};return}let{pageX:t,pageY:n}=xn(p().x,p().y);R={x:t,y:n}}}),G=e.ht(()=>y()&&!w()),Tt=new Map,Et=(e,n)=>{let r=It(`grabbed`),i={id:r,bounds:e,createdAt:Date.now(),element:n};f.addGrabbedBox(i),u.hooks.onGrabbedBox(e,n);let a=window.setTimeout(()=>{Tt.delete(r),f.removeGrabbedBox(r)},t.xt+125);Tt.set(r,a)},Dt=async e=>{let r=await Promise.all(e.map(async e=>{let r=await n.c(e),i=r?.componentName??null,a=r?.filePath,o=r?.lineNumber??void 0,s=r?.columnNumber??void 0;i||=n.r(e);let c=e instanceof HTMLElement?e.innerText?.slice(0,100):void 0;return{tagName:t.M(e),id:e.id||void 0,className:e.getAttribute(`class`)||void 0,textContent:c,componentName:i??void 0,filePath:a,lineNumber:o,columnNumber:s}}));a||window.dispatchEvent(new CustomEvent(`react-grab:element-selected`,{detail:{elements:r}}))},K=new Map,q=Rt(f,()=>d.labelInstances,()=>K.clear()),Ot=e=>{for(let t of e)d.labelInstances.find(e=>e.id===t)?.status===`copying`&&(K.delete(t),q.dismissInstance(t))},kt=()=>{o.abort()},At=()=>(o.signal.aborted&&!a&&(o=new AbortController),o.signal),Mt=()=>(kt(),At()),Nt=()=>{kt(),s=null,Ot(d.labelInstances.filter(e=>e.status===`copying`).map(e=>e.id))},Pt=async(e,t,n)=>{let r,i;try{if(r=await e(n),r.status===`cancelled`)return r;r.status===`failed`&&(i=`Failed to copy`)}catch(e){if(n.aborted)return cn;r={status:`failed`},i=Te(e,`Action failed`)}if(t)for(let e of t)q.updateAfterCopy(e,r.status===`succeeded`,i);return r},Lt=(e,t,n,r)=>{if(e){for(let e of n)K.delete(e);return}let i={operation:t,siblingIds:new Set(n),shouldDeactivateAfter:r};for(let e of n)K.set(e,i)},zt=async(e,t,n,r=Mt())=>{if(r.aborted)return!1;pt(),_().state!==`copying`&&f.startCopy();let i=await Pt(e,t,r);if(i.status===`cancelled`)return!1;let a=i.status===`succeeded`;return t&&Lt(a,e,t,!!n),_().state===`copying`?(a&&f.completeCopy(),n?X():a?(f.activate(),ft()):(f.activate(),f.unfreeze()),!0):!0},Gt=e=>{let t=K.get(e);if(!t)return;let n=[...t.siblingIds];for(let e of n)q.markRetrying(e),K.delete(e);zt(t.operation,n,t.shouldDeactivateAfter).then(e=>{e||Ot(n)})},Kt=e=>{K.get(e)?.siblingIds.delete(e),K.delete(e),q.dismissInstance(e)},qt=(e,r,i,a)=>{let o=e[0],s=a??(o?n.r(o):null),c=o?t.M(o):null,l=s??c??void 0;return Me({getContent:u.store.options.getContent,componentName:l,maxContextLines:u.store.options.maxContextLines,signal:r},u.hooks,e,i)},Jt=async(e,n,r,i=At())=>{if(e.length===0||i.aborted)return cn;let a=[],o=[];for(let t of e){let{wasIntercepted:e,pendingResult:n}=u.hooks.onElementSelect(t);e||a.push(t),n&&o.push(n),u.store.theme.grabbedBoxes.enabled&&Et(h(t),t)}if(await t.y(),i.aborted)return cn;let s;if(a.length>0&&(s=await qt(a,i,n,r),s.status===`cancelled`))return s;if(o.length>0){let e=await Oe(Promise.all(o),i);if(e===De)return s?.status===`succeeded`?s:cn;if(!e.every(Boolean))throw new t.F}return i.aborted&&!s?cn:(Dt(e).catch(e=>{new t.H(`Element selection notification failed`,e)}),s??{status:`succeeded`})},Yt=e=>{let r=Mt(),i={},o=!1;s=i,n.a(e.primaryElement).then(async t=>{if(r.aborted||s!==i){Ot(e.labelInstanceIds);return}s=null,o=!0,await zt(n=>Jt(e.targetElements,e.extraPrompt,t??void 0,n),e.labelInstanceIds.length>0?e.labelInstanceIds:null,e.shouldDeactivateAfter,r)?e.onComplete?.():Ot(e.labelInstanceIds)}).catch(c=>{if(r.aborted){Ot(e.labelInstanceIds);return}if(a||!o&&s!==i)return;new t.H(`Copy operation failed`,c);let l=Te(c,`Action failed`);for(let t of e.labelInstanceIds)q.updateAfterCopy(t,!1,l);e.labelInstanceIds.length>0&&Lt(!1,t=>n.a(e.primaryElement).then(n=>t.aborted?cn:Jt(e.targetElements,e.extraPrompt,n??void 0,t)),e.labelInstanceIds,!!e.shouldDeactivateAfter),_().state===`copying`&&(e.shouldDeactivateAfter?X():(f.activate(),f.unfreeze()))}).finally(()=>{s===i&&(s=null)})},Qt=e=>{let{element:n,cursorX:r,selectedElements:i,extraPrompt:a,shouldDeactivateAfter:o,onComplete:s,dragRect:c}=e,l=i??[n],u=c??d.frozenDragRect,p=l.length>1,m=!p&&n===mn()?bn():void 0,g=u&&p?ze(u):m??h(n),_=p?g.x+g.width/2:r,v=t.M(n);pt(),f.startCopy();let y=v?q.createInstance(g,v,void 0,`copying`,{element:n,mouseX:_,elements:i}):null;Yt({primaryElement:n,targetElements:l,labelInstanceIds:y?[y]:[],extraPrompt:a,shouldDeactivateAfter:o,onComplete:s})},$t=e=>{let{elements:t,labelEntries:n,shouldDeactivateAfter:r,onComplete:i}=e,a=t[0];pt(),f.startCopy(),Yt({primaryElement:a,targetElements:t,labelInstanceIds:q.createPerElementInstances(n,`copying`),shouldDeactivateAfter:r,onComplete:i})},J=e.ht(()=>{if(m(),!G()||S()||T()||N.isPendingDismiss())return null;let t=d.detectedElement;return e.K(t)?t:null}),en=e.ht(()=>d.frozenElement||(b()?null:J())),rn=e.ht(()=>!y()||E()||z()||w()||je()||N.isPendingDismiss()?null:be()?b()?en():J()??d.frozenElement:N.selectedElement()),on=e.ht(()=>{let e=rn();return e?He(e,t.h,Ct):[]}),dn=e.ht(()=>{let e=rn();return e?Math.max(0,on().findIndex(t=>t.element===e)):0}),fn=e.ht(()=>rn()!==null);e.mt(()=>{if(!d.detectedElement)return;let t=setInterval(()=>{e.K(d.detectedElement)||f.relinkLiveElements(),e.K(d.detectedElement)||jr()},100);e.wt(()=>clearInterval(t))}),e.mt(e.Ct(en,e=>{if(V!==null&&(clearTimeout(V),V=null),!e){yt(null);return}V=window.setTimeout(()=>{V=null,yt(e)},100)})),e.wt(()=>{V!==null&&(clearTimeout(V),V=null)}),e.mt(()=>{let n=d.frozenElements;e.wt(t.o(n))}),e.mt(e.Ct(y,n=>{n&&u.store.options.freezeReactUpdates&&e.wt(t.t())}));let pn=()=>{if(d.isTouchMode&&x()){let n=d.detectedElement;return!e.K(n)||t.g(n)?void 0:n}let n=en();if(!(!n||t.g(n)))return n},mn=e.ht(()=>pn()),hn=()=>mn()?d.isTouchMode&&x()?G():G()&&!S():!1,gn=e.xt(()=>d.frozenElements,t=>e.ht(()=>(m(),h(t)))),_n=e.ht(()=>{let e=d.frozenElements;if(e.length===0)return[];let t=d.frozenDragRect;return t&&e.length>1?[ze(t)]:gn().map(e=>e())}),vn=e.ht(()=>{if(!z()||d.pendingCommentMode||U())return null;let n=d.detectedElement;return!e.K(n)||t.g(n)||d.frozenElements.includes(n)?null:n}),yn=e.ht(()=>{m();let e=vn();if(e)return h(e)}),bn=e.ht(()=>{m();let e=d.frozenElements;if(e.length>0){let t=_n();if(e.length===1){let e=t[0];if(e)return e}let n=d.frozenDragRect;return n?t[0]??ze(n):Ve(et(t))}let t=mn();if(t)return h(t)}),xn=(e,t)=>({pageX:e+window.scrollX,pageY:t+window.scrollY}),Sn=(e,t)=>{let{pageX:n,pageY:r}=xn(e,t);return{x:Math.abs(n-d.dragStart.x),y:Math.abs(r-d.dragStart.y)}},Cn=(e,t)=>{let{pageX:n,pageY:r}=xn(e,t),i=Math.min(d.dragStart.x,n),a=Math.min(d.dragStart.y,r),o=Math.abs(n-d.dragStart.x),s=Math.abs(r-d.dragStart.y);return{x:i-window.scrollX,y:a-window.scrollY,width:o,height:s}},wn=e=>e.code===`Space`||e.key===` `,Tn=()=>{if(!x())return;f.startDragReposition();let{pageX:e,pageY:t}=xn(p().x,p().y);R={x:e,y:t}},En=()=>{f.stopDragReposition(),R=null},Dn=e.ht(()=>{if(m(),S())return Ve(Cn(p().x,p().y))}),On=e.ht(()=>{if(at(),!S())return[];let e=rt();if(!e)return[];let n=Cn(e.x,e.y),r=Ie(n,t.h);return r.length>0?r:Ie(n,t.h,!1)}),kn=e.ht(()=>(m(),On().map(e=>h(e)))),An=e.ht(()=>{let e=kn();if(e.length>0)return e;let t=yn();return t?[..._n(),t]:_n()}),jn=e.xt(()=>d.frozenElements,r=>{let i=t.M(r)||`element`,a=n.r(r)??void 0;return{read:e.ht(()=>{if(m(),!e.K(r))return null;let t=h(r),n=Fe.get(r);return{tagName:i,componentName:a,bounds:t,mouseX:n===void 0?void 0:t.x+t.width*n}})}}),Mn=e.ht(()=>{if(E()||d.frozenElements.length<2)return[];let e=[];for(let t of jn())t.read()!==null&&e.push(t);return e}),Nn=e.ht(()=>{if(E())return null;let e=vn();return e?(m(),{tagName:t.M(e)||`element`,componentName:n.r(e)??void 0,bounds:h(e),mouseX:p().x}):null}),Pn=e.ht(()=>{if(w()||E()){m();let e=d.frozenElement||J();return e?{x:g(h(e)).x+d.copyOffsetFromCenterX,y:d.copyStart.y}:{x:d.copyStart.x,y:d.copyStart.y}}return{x:p().x,y:p().y}}),Fn=e.ht(()=>{if(!z()||d.frozenElements.length!==1)return;m();let t=d.frozenElements[0];if(!e.K(t))return;let n=Fe.get(t);if(n===void 0)return;let r=h(t);return r.x+r.width*n});e.mt(e.Ct(()=>[J(),d.lastGrabbedElement],([e,t])=>{t&&e&&t!==e&&f.setLastGrabbed(null),e&&u.hooks.onElementHover(e)})),e.mt(e.Ct(()=>J(),e=>{let t=++mt,r=()=>{mt===t&&f.setSelectionSource(null,null)};if(!e){r();return}n.c(e).then(e=>{if(mt===t){if(!e){r();return}f.setSelectionSource(e.filePath,e.lineNumber)}}).catch(()=>{mt===t&&f.setSelectionSource(null,null)})}));let In=e.ht(()=>d.grabbedBoxes.map(e=>({id:e.id,bounds:e.bounds,createdAt:e.createdAt}))),Ln=e.ht(()=>d.labelInstances.map(e=>({id:e.id,status:e.status,tagName:e.tagName,componentName:e.componentName,createdAt:e.createdAt})));e.mt(e.Ct(e.ht(()=>{let e=y(),t=x(),n=w(),r=E(),i=J(),a=Dn(),o=u.store.theme.enabled,s=u.store.theme.selectionBox.enabled,c=u.store.theme.dragBox.enabled,l=S(),f=en(),p=te();return{isActive:e,isDragging:t,isCopying:n,isPromptMode:r,isSelectionBoxVisible:!!(o&&s&&e&&!n&&!p&&!t&&f!=null),isDragBoxVisible:!!(o&&c&&e&&!n&&l),targetElement:i,dragBounds:a?{x:a.x,y:a.y,width:a.width,height:a.height}:null,grabbedBoxes:[...In()],labelInstances:[...Ln()],selectionFilePath:d.selectionFilePath,toolbarState:ge()}}),e=>{u.hooks.onStateChange(e)})),e.mt(e.Ct(()=>{let t=E();return{inputMode:t,position:t?p():e.Dt(p),target:t?J():e.Dt(J)}},({inputMode:e,position:t,target:n})=>{u.hooks.onPromptModeChange(e,{x:t.x,y:t.y,targetElement:n})})),e.mt(e.Ct(()=>[Jr(),bn(),J()],([e,t,n])=>{u.hooks.onSelectionBox(!!e,t??null,n)})),e.mt(e.Ct(()=>[ii(),Dn()],([e,t])=>{u.hooks.onDragBox(!!e,t??null)})),e.mt(e.Ct(()=>{let t=oi();return[t,ai(),t?Pn():e.Dt(Pn),t?J():e.Dt(J),d.selectionFilePath,d.selectionLineNumber]},([e,n,r,i,a,o])=>{u.hooks.onElementLabel(e,n,{x:r.x,y:r.y,content:``,element:i??void 0,tagName:i&&t.M(i)||void 0,filePath:a??void 0,lineNumber:o??void 0})}));let Y=null,Rn=e=>{if(e){if(!Y){Y=document.createElement(`style`),Y.setAttribute(`data-react-grab-cursor`,``);let e=t.j();e&&(Y.nonce=e),t.A(Y),document.head.appendChild(Y)}Y.textContent=`* { cursor: ${e} !important; }`}else Y&&=(Y.remove(),null)};e.mt(e.Ct(()=>[y(),w(),E()],([e,t,n])=>{Rn(t?`progress`:e&&!n?`crosshair`:null)}));let zn=()=>{let e=v();f.activate(),e||u.hooks.onActivate()},X=()=>{Nt();let t=x(),n=d.previouslyFocusedElement;En(),f.deactivate(),k.resetWithDiscard(),xi(),Ke(),$(),N.clear(),ht(!1),_t(null),t&&(le(`userSelect`),ct()),I&&window.clearTimeout(I),W.stop(),n instanceof HTMLElement&&n!==document.body&&n!==document.activeElement&&e.K(n)&&n.focus({preventScroll:!0}),u.hooks.onDeactivate()},Bn=()=>{v()&&f.releaseHold(),y()||w()?X():Nt(),pt()},Vn=()=>{f.setWasActivatedByToggle(!0),zn()},Hn=()=>{let e=[...d.frozenElements],t=d.frozenElement||J(),n=E()?d.inputText.trim():``;if(!t){X();return}let r=e.length>0?e:[t],i=r.map(e=>h(e))[0],{x:a,y:o}=g(i),s=a+d.copyOffsetFromCenterX;f.setPointer({x:a,y:o}),f.exitPromptMode(),f.clearInputText(),Qt({element:t,cursorX:s,selectedElements:r,extraPrompt:n||void 0,shouldDeactivateAfter:!0})},Un=()=>{if(E()){if(oe()){f.clearInputText(),X();return}f.setPendingDismiss(!0),he(e=>e+1)}},Wn=()=>{if(N.isPendingDismiss()){hr();return}f.clearInputText(),X()},Gn=()=>{f.setPendingDismiss(!1)},Kn=()=>{if(k.isOpen()){k.dismiss();return}let e=d.frozenElement||J();e&&k.trigger(e,{x:p().x,y:p().y})},qn=(e,n)=>{if(!k.isOpen()||d.contextMenuPosition!==null)return!1;let r=t.d(e,n).find(t.h);if(!r)return!1;let i=k.switchToElement(r,{x:e,y:n});return i&&t.a([r]),i},Jn=e=>({filePath:d.selectionFilePath??void 0,lineNumber:d.selectionLineNumber??void 0,componentName:bt(),tagName:t.M(e)||void 0}),Z=()=>{H=null,ht(!1),f.setPendingCommentMode(!1),_t(null)},Yn=n=>{let r=d.frozenElement||J();if(!r)return!1;let i={x:p().x,y:p().y},a=u.store.actions.find(e=>e.id===n);return a?n===`edit`?k.trigger(r,i,Jn(r))?(f.clearInputText(),f.exitPromptMode(),Z(),!0):!0:(f.clearInputText(),f.exitPromptMode(),Z(),e.t(a,xr(r,i))||$n(r,i),!0):(f.clearInputText(),f.exitPromptMode(),Z(),wi(t.at),$n(r,i),!0)},Xn=e=>{if(w()){X();return}if(y()){if(St()!==e&&E()&&Yn(e))return;if(St()!==e&&d.pendingCommentMode){f.setPendingCommentMode(!1),H=e,_t(e),ht(!0);return}if(St()!==e&&U()){H=e,_t(e);return}X();return}D()&&(H=e,_t(e),ht(!0),Vn())},Zn=()=>{Xn(ge()?.defaultAction??`copy`)},Qn=(e,t,n)=>{Z(),f.clearInputText(),f.enterPromptMode({x:t,y:n},e)},$n=(e,t)=>{Ke(),Si(),f.showContextMenu(t,e),$(),u.hooks.onContextMenu(e,t)},er=(n,r)=>{let i=H;if(H=null,_t(null),!i)return;if(i===`edit`){k.trigger(n,r,Jn(n));return}let a=u.store.actions.find(e=>e.id===i);if(!a){wi(t.at),$n(n,r);return}e.t(a,xr(n,r))||$n(n,r)},tr=()=>{if(D()){if(y()&&re()){X();return}f.setPendingCommentMode(!0),y()||Vn()}},nr=(e,n,r)=>{let i=r&&z()&&!x()&&!d.pendingCommentMode&&!U();if(Ue()||b()&&!i)return;if(f.setPointer({x:e,y:n}),P.latestPointerX=e,P.latestPointerY=n,i){let r=t.u(e,n);r!==d.detectedElement&&f.setDetectedElement(r);return}let a=performance.now(),o=P.pendingDetectionScheduledAt>0&&a-P.pendingDetectionScheduledAt<200;if(!S()&&a-P.lastDetectionTimestamp>=32&&!o&&(P.lastDetectionTimestamp=a,P.pendingDetectionScheduledAt=a,setTimeout(()=>{if(Ue()||S()){P.pendingDetectionScheduledAt=0;return}let e=t.u(P.latestPointerX,P.latestPointerY);e!==d.detectedElement&&f.setDetectedElement(e),P.pendingDetectionScheduledAt=0})),x()){if(C()){let{pageX:t,pageY:r}=xn(e,n);R&&f.shiftDragStart({x:t-R.x,y:r-R.y}),R={x:t,y:r}}st(e,n);let t=Ut(e,n),r=t.top||t.bottom||t.left||t.right;r&&!W.isActive()?W.start():!r&&W.isActive()&&W.stop()}},rr=(e,t,n)=>{if(!G()||T())return!1;!n&&z()&&Ke();let r=N.selectedElement()!==null;return f.startDrag({x:e,y:t},n||r),f.setPointer({x:e,y:t}),ce(`userSelect`,`none`),st(e,t),u.hooks.onDragStart(e+window.scrollX,t+window.scrollY),!0},ir=(e,r)=>{let i=d.frozenElements.includes(e),a=d.frozenElements.length===0;if(!i){let t=Le(h(e),r);Fe.set(e,t),a&&xt(n.r(e)??void 0)}f.toggleFrozenElement(e),t.l();let o=d.frozenElements.includes(e);if(o||Fe.delete(e),d.frozenElements.length===0){Ke(),f.unfreeze();return}t.a(d.frozenElements),lt(!0),f.setPointer(r),f.setLastGrabbed(o?e:d.frozenElements[d.frozenElements.length-1]),f.freeze(),$()},ar=()=>{let r=d.frozenElements.filter(e.K),i=r.map(e=>{let r=t.M(e)||`element`,i=n.r(e)??void 0,a=Fe.get(e),o=h(e);return{element:e,tagName:r,componentName:i,mouseX:a===void 0?o.x+o.width/2:o.x+o.width*a}});if(Ke(),r.length===0){f.unfreeze();return}if(r.length===1){Qt({element:r[0],cursorX:i[0].mouseX,selectedElements:r,shouldDeactivateAfter:d.wasActivatedByToggle});return}$t({elements:r,labelEntries:i,shouldDeactivateAfter:d.wasActivatedByToggle})},or=(e,n,r)=>{let i=Ie(e,t.h),a=i.length>0?i:Ie(e,t.h,!1);if(a.length===0)return;let o=r&&!d.pendingCommentMode&&!U();if(o&&f.addFrozenElements(a),t.a(o?d.frozenElements:a),u.hooks.onDragEnd(a,e),o){let e=a[a.length-1];lt(!0),t.l(),f.setPointer(g(h(e))),f.setLastGrabbed(e),f.freeze(),$();return}let s=a[0],c=g(h(s));f.setPointer(c),f.setFrozenElements(a);let l=Be(e);if(f.setFrozenDragRect(l),f.freeze(),f.setLastGrabbed(s),d.pendingCommentMode){Qn(s,c.x,c.y);return}if(U()){ht(!1),H?er(s,c):$n(s,c);return}let p=d.wasActivatedByToggle&&!n;Qt({element:s,cursorX:c.x,selectedElements:a,shouldDeactivateAfter:p,dragRect:l})},sr=t=>{for(let n of d.frozenElements)if(e.K(n)&&Zt(t,h(n)))return n;return null},cr=(n,r,i,a)=>{let o=e.K(d.frozenElement)?d.frozenElement:null,s=N.selectedElement(),c=()=>t.d(n,r).find(t.h)??null;if(a&&!d.pendingCommentMode&&!U()){let e=c();e!==null&&ir(e,{x:n,y:r});return}let l=c()??(e.K(d.detectedElement)?d.detectedElement:null),m=s??l??o;if(!m)return;let _,v,y=l===null&&o===m,b=s===m;if(y)_=p().x,v=p().y;else if(b){let e=g(h(m));_=e.x,v=e.y}else _=n,v=r;if(d.pendingCommentMode){Qn(m,_,v),N.clear();return}if(U()){ht(!1);let{wasIntercepted:e}=u.hooks.onElementSelect(m);if(e)return;N.clear(),t.a([m]),f.setFrozenElement(m);let n={x:_,y:v};f.setPointer(n),f.freeze(),H?er(m,n):$n(m,n);return}let x=d.wasActivatedByToggle&&!i;f.setLastGrabbed(m),Qt({element:m,cursorX:_,shouldDeactivateAfter:x}),N.clear()},lr=()=>{x()&&(En(),ct(),f.cancelDrag(),W.stop(),le(`userSelect`),jr())},ur=(e,t,n,r)=>{if(!x())return;ct();let i=Sn(e,t),a=i.x>2||i.y>2,o=a?Cn(e,t):null;a?f.endDrag():f.cancelDrag(),En(),W.stop(),le(`userSelect`),o?or(o,n,r):cr(e,t,n,r)},Q=we(),dr=Ht(),fr=t=>{let n;try{n=dr.originalKeyDescriptor?.get?dr.originalKeyDescriptor.get.call(t):t.key}catch{return!1}let r=n===`Enter`||Xt(t.code),i=y()||v();return r&&i&&!E()&&!N.isPendingDismiss()&&!d.wasActivatedByToggle?e.L(t,`data-react-grab-input`)?!1:(dr.claimedEvents.add(t),t.preventDefault(),t.stopImmediatePropagation(),!0):!1};Q.addDocumentListener(`keydown`,t.an(fr),{capture:!0}),Q.addDocumentListener(`keyup`,t.an(fr),{capture:!0}),Q.addDocumentListener(`keypress`,t.an(fr),{capture:!0});let $=()=>{wt.clearHistory(),N.clear()},pr=(e,t=!1)=>{f.setFrozenElement(e),f.freeze(),N.select(e,{shouldPromptBeforeMouseHandoff:t});let n=g(h(e));f.setPointer(n),d.contextMenuPosition!==null&&f.showContextMenu(n,e)},mr=()=>{N.showDismissPrompt()&&he(e=>e+1)},hr=()=>{N.clear(),f.unfreeze(),$()},gr=()=>{let e=N.takeSelection(d.frozenElement);if(!e){hr();return}let t=g(h(e));$(),f.setLastGrabbed(e),Qt({element:e,cursorX:t.x,shouldDeactivateAfter:d.wasActivatedByToggle})},_r=e=>t.$.has(e.key)?e.key:e.key===`Tab`?e.shiftKey?`ArrowLeft`:`ArrowRight`:null,vr=(e,n={})=>{if(!y()||E()||z()||N.isPendingDismiss()&&!n.allowPendingKeyboardSelection)return!1;let r=_r(e);if(!r||je())return!1;let i=en(),a=!i;if(!i){let e=t.in()?.getBoundingClientRect();i=e?t.u(e.left+e.width/2,e.top+e.height/2):t.u(window.innerWidth/2,window.innerHeight/2)}if(!i)return!1;let o=r===`ArrowUp`||r===`ArrowDown`,s=wt.findNext(r,i);if(!s&&!o&&!a)return!1;let c=s??i;return e.preventDefault(),e.stopPropagation(),pr(c,!0),!0},yr=t=>t.metaKey||t.ctrlKey||t.altKey||t.repeat||e.G(t)||!y()||w()||T()||je()?null:d.frozenElement||J(),br=t=>{let n=yr(t);if(!n)return null;let r=e.i(u.store.actions,t);return r?{element:n,action:r}:null},xr=(e,n)=>{let r=h(e);return hi({element:e,filePath:d.selectionFilePath??void 0,lineNumber:d.selectionLineNumber??void 0,tagName:t.M(e)||void 0,componentName:bt(),position:n,shouldDeferHideContextMenu:!1,performWithFeedbackOptions:{fallbackBounds:r,fallbackSelectionBounds:[r],position:n}})},Sr=/^[a-zA-Z0-9-]$/,Cr=e=>{if(!e.key||e.key.length!==1||!Sr.test(e.key))return!1;let t=yr(e);return!t||!k.trigger(t,{x:p().x,y:p().y},{initialSearchQuery:e.key})?!1:(Z(),e.preventDefault(),e.stopImmediatePropagation(),!0)},wr=t=>{let n=br(t);if(!n)return!1;let{element:r,action:i}=n;return E()?Yn(i.id)?(t.preventDefault(),t.stopImmediatePropagation(),!0):!1:e.t(i,xr(r,{x:p().x,y:p().y}))?(t.preventDefault(),t.stopImmediatePropagation(),!0):!1},Tr=e=>{if(e.key?.toLowerCase()!==`o`||!y()||!(e.metaKey||e.ctrlKey))return!1;let n=d.selectionFilePath,r=d.selectionLineNumber;return n?(e.preventDefault(),e.stopPropagation(),u.hooks.onOpenFile(n,r??void 0)||t.c(n,r??void 0,u.hooks.transformOpenFileUrl),!0):!1},Er=e=>{if(!y()||w()||d.contextMenuPosition!==null||k.isOpen())return!1;let n=e.key===`F10`&&e.shiftKey,r=e.key===`ContextMenu`;if(!n&&!r)return!1;let i=d.frozenElements,a=i.length>1,o=(a?i[0]:null)||d.frozenElement||J();if(!o)return!1;e.preventDefault(),e.stopPropagation();let s=g(h(o));return a?t.a(i):(t.a([o]),f.setFrozenElement(o)),f.setPointer(s),f.freeze(),$n(o,s),!0},Dr=e.ht(()=>on().map(e=>({tagName:t.M(e.element)||`element`,componentName:n.r(e.element)??void 0,depth:e.depth,isLast:e.isLast}))),Or=e.ht(()=>({items:Dr(),activeIndex:dn()})),kr=n=>{if(!(!u.store.options.allowActivationInsideInput&&e.G(n))&&!(!$e(n,u.store.options)&&((n.metaKey||n.ctrlKey)&&!t.kt.includes(n.key)&&!Xt(n.code)&&(y()&&!d.wasActivatedByToggle?X():v()&&(Ye(),Xe(),f.releaseHold())),!Xt(n.code)||!v()))){if((y()||v())&&!E()&&(n.preventDefault(),Xt(n.code)&&n.stopImmediatePropagation()),y()){if(d.wasActivatedByToggle&&u.store.options.activationMode!==`hold`||n.repeat)return;I!==null&&window.clearTimeout(I),I=window.setTimeout(()=>{X()},200);return}if(v()&&n.repeat){if(L.copyWaiting){let e=L.holdTimerFired;Xe(),e&&f.activate()}return}if(!(w()||te())&&!v()){let t=u.store.options.keyHoldDuration??100;e.G(n)?e.U(n)?t+=600:t+=400:e.W()&&(t+=600),Xe(),f.startHold(t)}}},Ar=e=>{if(!N.isPendingDismiss())return!1;if(Xt(e.code))return!0;let n=t.$.has(e.key),r=br(e)!==null;return!n&&!r?!1:n?vr(e,{allowPendingKeyboardSelection:!0}):wr(e)?($(),!0):!1};Q.addWindowListener(`keydown`,t.an(n=>{if(_r(n)&&e.G(n)||Ar(n))return;if(fr(n),!D()){$e(n,u.store.options)&&!n.repeat&&pe(e=>e+1);return}let r=Xt(n.code)&&v()&&!E(),i=e.L(n,t.Gt);if(E()&&$e(n,u.store.options)&&!n.repeat&&!i){n.preventDefault(),n.stopPropagation(),Un();return}if(n.key===`Escape`&&w()){X();return}if(n.key===`Escape`&&je()){xe()!==null&&xi();return}let a=e.L(n,`data-react-grab-ignore-events`)&&!r;if(E()||a)return E()&&!i&&wr(n)||(n.key===`Escape`&&(E()?Un():d.wasActivatedByToggle&&X()),a&&t.$.has(n.key)&&vr(n)),void 0;if(x()&&wn(n)){n.repeat||Tn(),n.preventDefault(),n.stopPropagation();return}if(n.key===`Escape`&&(v()||d.wasActivatedByToggle)){X();return}y()&&!t.kt.includes(n.key)&&n.preventDefault();let o=Date.now()-ut<200;vr(n)||Tr(n)||Er(n)||wr(n)||Cr(n)||o||kr(n)}),{capture:!0}),Q.addWindowListener(`keyup`,t.an(t=>{if(fr(t))return;if(wn(t)&&C()&&(En(),t.preventDefault(),t.stopPropagation()),t.key===`Shift`&&z()){x()&&lr(),ar();return}if(e.L(t,`data-react-grab-ignore-events`))return;let n=Vt(u.store.options),r=n.metaKey||n.ctrlKey?e.R()?!t.metaKey:!t.ctrlKey:n.shiftKey&&!t.shiftKey||n.altKey&&!t.altKey,i=u.store.options.activationKey?typeof u.store.options.activationKey==`function`?u.store.options.activationKey(t):Ze(u.store.options.activationKey)(t):qe(t.key,t.code);if(te()||dt){(i||r)&&(pt(),X());return}if(!v()&&!y()||E())return;let a=!!u.store.options.activationKey,o=u.store.options.activationMode===`hold`,s=x();if(y()){let e=A();if(r){if(d.wasActivatedByToggle&&u.store.options.activationMode!==`hold`||e)return;X()}else if(o&&i){if(I!==null&&(window.clearTimeout(I),I=null),e||s)return;X()}else !a&&i&&I!==null&&(window.clearTimeout(I),I=null);return}if(i||r){if(d.wasActivatedByToggle&&u.store.options.activationMode!==`hold`)return;if(v()||L.holdTimerFired&&r){Ye();let n=(L.startTimestamp?Date.now()-L.startTimestamp:0)>=200,r=L.holdTimerFired&&n&&(u.store.options.allowActivationInsideInput||!e.G(t));Xe(),r?f.activate():f.releaseHold()}else X()}}),{capture:!0}),Q.addDocumentListener(`copy`,()=>{v()&&(L.copyWaiting=!0)}),Q.addWindowListener(`keypress`,t.an(fr),{capture:!0}),Q.addWindowListener(`pointermove`,t.an(t=>{if(!t.isPrimary)return;let n=t.pointerType===`touch`;if(f.setTouchMode(n),!e.L(t,`data-react-grab-ignore-events`)&&!Ue()&&!(n&&!v()&&!y())){if((n?v():y())&&!E()&&b()&&!t.shiftKey&&!z()){if(N.consumeMouseHandoff()){mr();return}f.unfreeze(),$()}nr(t.clientX,t.clientY,t.shiftKey)}}),{passive:!0,capture:!0}),Q.addWindowListener(`pointerdown`,t.an(t=>{if(t.button===0&&t.isPrimary&&(f.setTouchMode(t.pointerType===`touch`),Pe=!1,!(!x()&&e.L(t,`data-react-grab-ignore-events`)))){if(A()){qn(t.clientX,t.clientY)&&(Pe=!0,t.preventDefault(),t.stopImmediatePropagation());return}if(E()){let e=bn();e&&t.clientX>=e.x&&t.clientX<=e.x+e.width&&t.clientY>=e.y&&t.clientY<=e.y+e.height?Hn():Un();return}if(N.isPendingDismiss()){t.preventDefault(),t.stopImmediatePropagation();return}if(T()){t.preventDefault(),t.stopImmediatePropagation();return}if(rr(t.clientX,t.clientY,t.shiftKey)){if(t.pointerId!==void 0)try{document.documentElement.setPointerCapture(t.pointerId)}catch{}t.preventDefault(),t.stopImmediatePropagation()}}}),{capture:!0}),Q.addWindowListener(`pointerup`,t.an(t=>{if(t.button!==0||!t.isPrimary||e.L(t,`data-react-grab-ignore-events`)||A())return;let n=G()||T()||x(),r=t.metaKey||t.ctrlKey;ur(t.clientX,t.clientY,r,t.shiftKey),n&&(t.preventDefault(),t.stopImmediatePropagation())}),{capture:!0}),Q.addWindowListener(`contextmenu`,t.an(n=>{if(!G()||w()||E()||k.isOpen())return;let r=e.L(n,`data-react-grab-ignore-events`),i={x:n.clientX,y:n.clientY},a=r&&d.frozenElements.length>1?sr(i):null,o=N.isPendingDismiss();if(r&&!a&&!o&&!fn())return;if(A()){n.preventDefault();return}n.preventDefault(),n.stopPropagation();let s=a??t.u(n.clientX,n.clientY);if(!s)return;let c=d.frozenElements;c.length>1&&c.includes(s)?t.a(c):(t.a([s]),f.setFrozenElement(s)),f.setPointer(i),f.freeze(),$n(s,i)}),{capture:!0}),Q.addWindowListener(`pointercancel`,t.an(e=>{e.isPrimary&&lr()}),{capture:!0}),Q.addWindowListener(`click`,t.an(t=>{if(!e.L(t,`data-react-grab-ignore-events`)){if(Pe){Pe=!1,t.preventDefault(),t.stopImmediatePropagation();return}A()||(G()||ee())&&(t.preventDefault(),t.stopImmediatePropagation(),d.wasActivatedByToggle&&!E()&&!t.shiftKey&&(v()?f.setWasActivatedByToggle(!1):X()))}}),{capture:!0}),Q.addDocumentListener(`visibilitychange`,()=>{if(document.hidden){f.clearGrabbedBoxes();let e=d.activationTimestamp;y()&&!E()&&e!==null&&Date.now()-e>500&&X()}}),Q.addWindowListener(`blur`,()=>{lr(),v()&&(Ye(),f.releaseHold(),Xe()),Ke()}),Q.addWindowListener(`focus`,()=>{ut=Date.now()}),Q.addWindowListener(`focusin`,n=>{e.L(n,t.rn)&&n.stopPropagation()},{capture:!0});let jr=()=>{if(!(d.isTouchMode&&!v()&&!y())&&!Ue()&&!b()&&!x()&&d.frozenElements.length===0){let e=t.u(p().x,p().y);f.setDetectedElement(e)}},Mr=null,Nr=null,Pr=()=>{Re(),jr(),ot(e=>e+1),f.incrementViewportVersion(),f.updateContextMenuPosition()},Fr=()=>{t.m(),Pr()};Q.addWindowListener(`scroll`,Pr,{capture:!0});let Ir=window.innerWidth,Lr=window.innerHeight;Q.addWindowListener(`resize`,()=>{let e=window.innerWidth,n=window.innerHeight;if(Ir>0&&Lr>0){let r=e/Ir,i=n/Lr,a=Math.abs(r-i)<t.en,o=Math.abs(r-1)>t.en;a&&o&&f.setPointer({x:p().x*r,y:p().y*i})}Ir=e,Lr=n,Fr()});let Rr=window.visualViewport;if(Rr){let{signal:e}=Q;Rr.addEventListener(`resize`,Fr,{signal:e}),Rr.addEventListener(`scroll`,Pr,{signal:e})}let zr=()=>{Nr===null&&(Nr=t.v(()=>{Nr=null,f.incrementViewportVersion()}))};e.mt(()=>{if(u.store.theme.enabled&&(y()||w()||d.labelInstances.length>0||d.grabbedBoxes.length>0)){if(Mr!==null)return;Mr=window.setInterval(()=>{f.relinkLiveElements(),zr()},100);return}Mr!==null&&(window.clearInterval(Mr),Mr=null),Nr!==null&&(t._(Nr),Nr=null)}),e.wt(()=>{Mr!==null&&window.clearInterval(Mr),Nr!==null&&t._(Nr)}),Q.addDocumentListener(`copy`,t.an(t=>{E()||e.L(t,`data-react-grab-ignore-events`)||G()&&t.preventDefault()}),{capture:!0}),e.wt(()=>{Q.abort(),F!==null&&window.clearTimeout(F),I&&window.clearTimeout(I),pt(),j?.(),j=null,M?.(),M=null,Tt.forEach(e=>window.clearTimeout(e)),Tt.clear(),q.cancelAllFades(),K.clear(),W.stop(),t.i(),le(`userSelect`),le(`touchAction`),Rn(null),dr.restore(),t.sn(null)});let{root:Br,host:Vr}=ie(r);e.wt(Se(Vr).cleanup);let Hr=e.ht(()=>u.store.theme.enabled),Ur=e.ht(()=>u.store.theme.selectionBox.enabled),Wr=e.ht(()=>u.store.theme.elementLabel.enabled),Gr=e.ht(()=>u.store.theme.dragBox.enabled),Kr=e.ht(()=>te()||ve()&&!b()||k.isInteracting()),qr=e.ht(()=>kn().length>0),Jr=e.ht(()=>!Hr()||!Ur()||Kr()?!1:qr()?!0:hn()),Yr=e.ht(()=>{let e=mn();if(e)return t.M(e)||void 0}),Xr=e.ht(()=>!Hr()||A()||!Wr()||Kr()?!1:hn()),Zr=new Map,Qr=t=>{let n=t.elements?.filter(e.K)??[],r=t.element,i=null;n.length>0?i=n.map(h):r&&e.K(r)&&(i=[h(r)]);let a=t.bounds,o=t.boundsMultiple;i&&(a=i.length>1?Ve(et(i)):i[0],t.boundsMultiple!==void 0&&(o=t.boundsMultiple.length>1&&t.boundsMultiple.length===t.elements?.length?i:[a]));let s=Zr.get(t.id),c=s?.boundsMultiple,l=c===o||c!==void 0&&o!==void 0&&c.length===o.length&&c.every((e,t)=>e.x===o[t].x&&e.y===o[t].y&&e.width===o[t].width&&e.height===o[t].height);if(s&&s.status===t.status&&s.errorMessage===t.errorMessage&&s.bounds.x===a.x&&s.bounds.y===a.y&&s.bounds.width===a.width&&s.bounds.height===a.height&&l)return s;let u=a.x+a.width/2,d=a.width/2,f;f=t.mouseXOffsetRatio!==void 0&&d>0?u+t.mouseXOffsetRatio*d:t.mouseXOffsetFromCenter===void 0?t.mouseX??u:u+t.mouseXOffsetFromCenter;let p={...t,bounds:a,boundsMultiple:o,mouseX:f};return Zr.set(t.id,p),p},$r=e.ht(()=>{if(!Hr()||!u.store.theme.grabbedBoxes.enabled)return[];m();let e=new Set(d.labelInstances.map(e=>e.id));for(let t of Zr.keys())e.has(t)||Zr.delete(t);return d.labelInstances.map(Qr)}),ei=e.ht(()=>new Map($r().map(e=>[e.id,e]))),ti=new Map,ni=e.ht(()=>{let e=$r(),t=new Set(e.map(e=>e.id));for(let e of ti.keys())t.has(e)||ti.delete(e);return e.map(e=>{let t=ti.get(e.id);if(t)return t;let n=e.id,r={read:()=>ei().get(n)??null};return ti.set(n,r),r})}),ri=e.ht(()=>!Hr()||!u.store.theme.grabbedBoxes.enabled?[]:(m(),d.grabbedBoxes.map(t=>e.K(t.element)?{...t,bounds:h(t.element)}:t))),ii=e.ht(()=>Hr()&&Gr()&&G()&&S()),ai=e.ht(()=>w()?`processing`:`hover`),oi=e.ht(()=>{if(!Hr())return!1;let e=Wr(),t=E(),n=w(),r=G(),i=x(),a=!!en(),o=ve(),s=b();return!e||t||o&&!s?!1:n?!0:r&&!i&&a}),si=e.ht(()=>{m();let e=d.contextMenuElement;return e?h(e):null}),ci=e.ht(()=>(m(),d.contextMenuPosition)),li=e.ht(()=>{let e=d.contextMenuElement;if(!e)return;let n=d.frozenElements.length;return n>1?`${n} elements`:t.M(e)||void 0}),[ui]=ae(()=>d.frozenElements.length>1?null:d.contextMenuElement),[di]=e._t(()=>d.contextMenuElement,async e=>e?n.c(e):null),fi=async e=>{f.incrementSelectionInteractionLockDepth();try{return await e()}finally{f.decrementSelectionInteractionLockDepth()}},pi=(e,n,r,i,a)=>async o=>{await fi(async()=>{let s=a?.fallbackBounds??null,c=a?.fallbackSelectionBounds??[],l=a?.position??d.contextMenuPosition??p(),u=_n(),m=si()??s,h=n.length>1,g=h?Ve(et(u)):m,_=d.wasActivatedByToggle,v;if(v=h?u:m?[m]:c,f.hideContextMenu(),g){let t=h?g.x+g.width/2:l.x,a=q.createInstance(g,r||`element`,i,`copying`,{element:e,mouseX:t,elements:h?n:void 0,boundsMultiple:v}),s=!1,c;try{s=await o(),s||(c=`Failed to copy`)}catch(e){c=Te(e,`Action failed`)}q.updateAfterCopy(a,s,c)}else try{await o()}catch(e){new t.H(`Action failed without feedback bounds`,e)}_?X():f.unfreeze()})},mi=()=>{setTimeout(()=>{f.hideContextMenu()},0)},hi=e=>{let{element:t,filePath:n,lineNumber:r,tagName:i,componentName:a,position:o,performWithFeedbackOptions:s,shouldDeferHideContextMenu:c,onBeforeCopy:l,onBeforePrompt:p,customEnterPromptMode:m}=e,h=d.frozenElements.length>0?d.frozenElements:[t],g=c?mi:f.hideContextMenu,_={element:t,elements:h,filePath:n,lineNumber:r,componentName:a,tagName:i,enterPromptMode:m??(()=>{q.clearAll(),Z(),p?.(),Qe(t,o.x,o.y),f.setPointer({x:o.x,y:o.y}),f.setFrozenElement(t),tt(),y()||zn(),g()}),enterEditMode:()=>{k.trigger(t,o,{filePath:n,lineNumber:r,componentName:a,tagName:i})&&Z(),g()},copy:()=>{Z(),l?.(),Qt({element:t,cursorX:o.x,selectedElements:h.length>1?h:void 0,shouldDeactivateAfter:d.wasActivatedByToggle}),g()},hooks:{transformHtmlContent:u.hooks.transformHtmlContent,onOpenFile:u.hooks.onOpenFile,transformOpenFileUrl:u.hooks.transformOpenFileUrl},performWithFeedback:pi(t,h,i,a,s),hideContextMenu:g,cleanup:()=>{d.wasActivatedByToggle?X():f.unfreeze()}},v=u.hooks.transformActionContext(_);return{..._,...v}},gi=e.ht(()=>{let e=d.contextMenuElement;if(!e)return;let t=di(),n=d.contextMenuPosition??p();return hi({element:e,filePath:t?.filePath,lineNumber:t?.lineNumber??void 0,tagName:li(),componentName:ui(),position:n,shouldDeferHideContextMenu:!0,onBeforeCopy:()=>{N.clear()},customEnterPromptMode:()=>{q.clearAll(),Z(),f.clearInputText(),f.enterPromptMode(n,e),mi()}})}),_i=()=>{setTimeout(()=>{f.hideContextMenu(),X()},0)},vi=()=>{if(!Ne)return null;let e=Ne.getBoundingClientRect(),t=tn(e);return t===`left`||t===`right`?{x:t===`left`?e.right:e.left,y:e.top+e.height/2,edge:t}:{x:e.left+e.width/2,y:t===`top`?e.bottom:e.top,edge:t}},yi=()=>{let e=vi();if(e)return e;let t=k.state();return t?{x:t.position.x,y:t.position.y,edge:`bottom`}:null},bi=(e,n)=>{let r=null,i=()=>{let a=e();a&&n(a),r=t.v(i)};return i(),()=>{r!==null&&(t._(r),r=null)}};e.mt(()=>{if(!fn())return;let t=bi(vi,Ae);e.wt(()=>{t(),Ae(null)})});let xi=()=>{j?.(),j=null,O(null)},Si=()=>{f.hideContextMenu(),xi(),k.dismiss()},Ci=()=>{xe()===null?(f.hideContextMenu(),k.isOpen()&&k.closePreservingRenderer(),j?.(),j=bi(vi,O)):xi()},wi=e=>{Je({defaultAction:e})},Ti=t=>{let n=d.labelInstances.find(e=>e.id===t);if(!n?.element||!e.K(n.element))return;let r=n.element,i=g(h(r)),a={x:n.mouseX??i.x,y:i.y},o=n.elements&&n.elements.length>0?n.elements.filter(t=>e.K(t)):[r];setTimeout(()=>{xi(),k.isOpen()&&k.closePreservingRenderer(),y()||(f.setWasActivatedByToggle(!0),zn()),f.setPointer(a),f.setFrozenElements(o),o.length>1&&n.bounds&&f.setFrozenDragRect(Be(n.bounds)),f.freeze(),f.showContextMenu(a,r)},0)};e.mt(()=>{let e=u.store.theme.hue;e===0?Br.style.filter=``:Br.style.filter=`hue-rotate(${e}deg)`}),u.store.theme.enabled&&Promise.resolve().then(()=>require(`./renderer-5gTtKWyI.cjs`)).then(({ReactGrabRenderer:t})=>{a||(c=e.$(()=>e.ft(t,{get selectionVisible(){return Jr()},get selectionBounds(){return bn()},get selectionBoundsMultiple(){return An()},get selectionShouldSnap(){return d.frozenElements.length>0||kn().length>0},get selectionElementsCount(){return d.frozenElements.length},get frozenLabelEntryAccessors(){return Mn()},get pendingShiftPreviewEntry(){return Nn()??void 0},get selectionFilePath(){return d.selectionFilePath??void 0},get selectionLineNumber(){return d.selectionLineNumber??void 0},get selectionTagName(){return Yr()},get selectionComponentName(){return bt()},get selectionLabelVisible(){return Xr()},selectionLabelStatus:`idle`,get hierarchyState(){return Or()},get hierarchyMenuPosition(){return ke()},get labelInstances(){return $r()},get labelInstanceAccessors(){return ni()},get dragVisible(){return ii()},get dragBounds(){return Dn()},get grabbedBoxes(){return ri()},get mouseX(){return e.Q(()=>d.frozenElements.length>1)()?void 0:Fn()??Pn().x},get isFrozen(){return b()||y()||ve()},get inputValue(){return d.inputText},get isPromptMode(){return E()},onShowContextMenuInstance:Ti,onRetryInstance:Gt,onAcknowledgeErrorInstance:Kt,get onLabelInstanceHoverChange(){return q.handleHoverChange},get onInputChange(){return f.setInputText},onInputSubmit:()=>void Hn(),onToggleExpand:Kn,get selectionLabelShakeCount(){return me()},onConfirmDismiss:Wn,get discardPrompt(){return e.Q(()=>!!N.isPendingDismiss())()?{isKeyboardSelection:!0,onConfirm:Wn,onCopy:gr}:oe()?{onConfirm:Wn,onCancel:Gn}:void 0},get toolbarVisible(){return u.store.theme.toolbar.enabled},get isActive(){return y()},onToggleActive:Zn,onActivateAction:Xn,get activeActionId(){return St()},get enabled(){return D()},get shakeCount(){return fe()},onToolbarStateChange:e=>{_e(e),e.enabled!==D()&&(de(e.enabled),e.enabled||(Bn(),Si())),an(un,e)},onSubscribeToToolbarStateChanges:e=>(un.add(e),()=>{un.delete(e)}),onToolbarSelectHoverChange:ye,onToolbarRef:e=>{Ne=e},get contextMenuPosition(){return ci()},get contextMenuBounds(){return si()},get contextMenuTagName(){return li()},get contextMenuComponentName(){return ui()},get contextMenuHasFilePath(){return!!di()?.filePath},get actions(){return u.store.actions},get actionContext(){return gi()},onContextMenuDismiss:_i,onContextMenuHide:mi,get toolbarMenuPosition(){return xe()},get toolbarMenuActions(){return u.store.actions.filter(e=>e.showInToolbarMenu===!0)},get defaultActionId(){return ge()?.defaultAction??`copy`},onSetDefaultAction:wi,onToggleToolbarMenu:Ci,onToolbarMenuDismiss:xi,get editPanelState(){return k.state()},get editPanelPosition(){return Ce()},get onEditPanelDismiss(){return k.dismiss},get onEditPanelSubmit(){return k.submit},get onEditPanelPendingEditsChange(){return k.setPendingEdits},get onEditPanelInteractingChange(){return k.setInteracting}}),Br))}).catch(e=>{console.warn(`[react-grab] Failed to load renderer:`,e)});let Ei={activate:()=>{f.setPendingCommentMode(!1),!y()&&D()&&Vn()},deactivate:()=>{y()||w()?X():Nt()},toggle:()=>{y()||w()?X():D()&&Vn()},comment:tr,isActive:()=>y(),isEnabled:()=>D(),setEnabled:e=>{e!==D()&&(de(e),Je({enabled:e,collapsed:!e}),e||(Bn(),Si()))},getToolbarState:()=>ge()??e.o(),setToolbarState:t=>{let n=ge()??e.o(),r=t.collapsed??n?.collapsed??!1,i={edge:t.edge??n?.edge??`bottom`,ratio:t.ratio??n?.ratio??.5,collapsed:r,enabled:t.enabled??!r,defaultAction:t.defaultAction??n?.defaultAction??`copy`};e.s(i),_e(i),i.enabled!==D()&&(de(i.enabled),i.enabled||(Bn(),Si())),an(un,i)},onToolbarStateChange:e=>(un.add(e),()=>{un.delete(e)}),reset:()=>{Bn(),Si(),f.clearGrabbedBoxes(),q.clearAll(),f.setSelectionSource(null,null)},dispose:()=>{a=!0,Nt(),q.clearAll(),ln=!1,c?.(),j?.(),j=null,M?.(),M=null,un.clear(),i()},copyElement:async e=>{let t=Array.isArray(e)?e:[e];return t.length===0?!1:(await qt(t,At())).status===`succeeded`},getSource:async e=>{let t=await n.c(e);return t?{filePath:t.filePath,lineNumber:t.lineNumber,componentName:t.componentName}:null},getStackContext:e=>n.s(e,{maxLines:u.store.options.maxContextLines}),getState:()=>({isActive:y(),isDragging:x(),isCopying:w(),isPromptMode:E(),isSelectionBoxVisible:!!Jr(),isDragBoxVisible:!!ii(),targetElement:J(),dragBounds:Dn()??null,grabbedBoxes:[...In()],labelInstances:[...Ln()],selectionFilePath:d.selectionFilePath,toolbarState:ge()}),setOptions:e=>{u.setOptions(e)},registerPlugin:e=>{u.register(e,Ei)},unregisterPlugin:e=>{u.unregister(e)},getPlugins:()=>u.getPluginNames(),getDisplayName:n.r};for(let e of sn)u.register(e,Ei);return setTimeout(()=>{t.x(!0)},t.jt),Ei})};Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return Mt}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return $t}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return on}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return en}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return dn}});
|