react-grab 0.1.48-dev.d6dcf42 → 0.1.48-dev.d7722e3
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-Ca2txV90.d.cts → copy-content-CDFe4uJW.d.ts} +24 -17
- package/dist/{copy-content-D6YIoJK4.d.ts → copy-content-hpjB511j.d.cts} +24 -17
- package/dist/copy-content-uSwrBRH9.js +10 -0
- package/dist/copy-content-xuvAzUOL.cjs +10 -0
- 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-BxdRmt3A.js +14 -0
- package/dist/core-DuawaKU0.cjs +14 -0
- package/dist/errors-DPKmYSjT.d.ts +24 -0
- package/dist/errors-ffnD3Ljm.d.cts +24 -0
- package/dist/execute-context-menu-action-DdvTzTQo.js +9 -0
- package/dist/execute-context-menu-action-k6Yvw7t7.cjs +9 -0
- package/dist/freeze-updates-D75LeqK0.cjs +61 -0
- package/dist/freeze-updates-D7awzvZs.js +61 -0
- package/dist/{index-CgWlIagV.d.cts → index-D23mfsUe.d.cts} +1 -1
- package/dist/{index-C_tGQJlm.d.ts → index-qFak7ECs.d.ts} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +10 -7
- package/dist/index.d.ts +10 -7
- package/dist/index.global.js +19 -19
- package/dist/index.js +1 -1
- package/dist/primitives.cjs +2 -2
- package/dist/primitives.d.cts +3 -2
- package/dist/primitives.d.ts +3 -2
- package/dist/primitives.js +2 -2
- package/dist/renderer-BVwqdRnQ.js +9 -0
- package/dist/renderer-DEzkpks6.cjs +9 -0
- package/package.json +2 -2
- package/dist/copy-content-Ci11ZDmL.js +0 -10
- package/dist/copy-content-Cy1-mFou.cjs +0 -10
- package/dist/core-CVkxG54a.js +0 -14
- package/dist/core-D5576q4e.cjs +0 -14
- package/dist/create-pointer-move-prompt-handoff-CEWLUwin.cjs +0 -9
- package/dist/create-pointer-move-prompt-handoff-DJjqbzpF.js +0 -9
- package/dist/freeze-updates-BnJiwOU7.js +0 -52
- package/dist/freeze-updates-DTs9wKO_.cjs +0 -52
- package/dist/renderer-0YwjBMES.js +0 -9
- package/dist/renderer-lnch1XY_.cjs +0 -9
|
@@ -260,24 +260,24 @@ interface HierarchyState {
|
|
|
260
260
|
activeIndex: number;
|
|
261
261
|
}
|
|
262
262
|
interface PluginHooks {
|
|
263
|
-
onActivate?: () => void
|
|
264
|
-
onDeactivate?: () => void
|
|
265
|
-
onElementHover?: (element: Element) => void
|
|
263
|
+
onActivate?: () => void | Promise<void>;
|
|
264
|
+
onDeactivate?: () => void | Promise<void>;
|
|
265
|
+
onElementHover?: (element: Element) => void | Promise<void>;
|
|
266
266
|
onElementSelect?: (element: Element) => boolean | void | Promise<boolean>;
|
|
267
|
-
onDragStart?: (startX: number, startY: number) => void
|
|
268
|
-
onDragEnd?: (elements: Element[], bounds: DragRect) => void
|
|
267
|
+
onDragStart?: (startX: number, startY: number) => void | Promise<void>;
|
|
268
|
+
onDragEnd?: (elements: Element[], bounds: DragRect) => void | Promise<void>;
|
|
269
269
|
onBeforeCopy?: (elements: Element[]) => void | Promise<void>;
|
|
270
270
|
transformCopyContent?: (content: string, elements: Element[]) => string | Promise<string>;
|
|
271
|
-
onAfterCopy?: (elements: Element[], success: boolean) => void
|
|
272
|
-
onCopySuccess?: (elements: Element[], content: string) => void
|
|
273
|
-
onCopyError?: (error: Error) => void
|
|
274
|
-
onStateChange?: (state: ReactGrabState) => void
|
|
275
|
-
onPromptModeChange?: (isPromptMode: boolean, context: PromptModeContext) => void
|
|
276
|
-
onSelectionBox?: (visible: boolean, bounds: OverlayBounds | null, element: Element | null) => void
|
|
277
|
-
onDragBox?: (visible: boolean, bounds: OverlayBounds | null) => void
|
|
278
|
-
onGrabbedBox?: (bounds: OverlayBounds, element: Element) => void
|
|
279
|
-
onElementLabel?: (visible: boolean, variant: ElementLabelVariant, context: ElementLabelContext) => void
|
|
280
|
-
onContextMenu?: (element: Element, position: Position) => void
|
|
271
|
+
onAfterCopy?: (elements: Element[], success: boolean) => void | Promise<void>;
|
|
272
|
+
onCopySuccess?: (elements: Element[], content: string) => void | Promise<void>;
|
|
273
|
+
onCopyError?: (error: Error) => void | Promise<void>;
|
|
274
|
+
onStateChange?: (state: ReactGrabState) => void | Promise<void>;
|
|
275
|
+
onPromptModeChange?: (isPromptMode: boolean, context: PromptModeContext) => void | Promise<void>;
|
|
276
|
+
onSelectionBox?: (visible: boolean, bounds: OverlayBounds | null, element: Element | null) => void | Promise<void>;
|
|
277
|
+
onDragBox?: (visible: boolean, bounds: OverlayBounds | null) => void | Promise<void>;
|
|
278
|
+
onGrabbedBox?: (bounds: OverlayBounds, element: Element) => void | Promise<void>;
|
|
279
|
+
onElementLabel?: (visible: boolean, variant: ElementLabelVariant, context: ElementLabelContext) => void | Promise<void>;
|
|
280
|
+
onContextMenu?: (element: Element, position: Position) => void | Promise<void>;
|
|
281
281
|
onOpenFile?: (filePath: string, lineNumber?: number) => boolean | void;
|
|
282
282
|
transformHtmlContent?: (html: string, elements: Element[]) => string | Promise<string>;
|
|
283
283
|
transformAgentContext?: (context: AgentContext, elements: Element[]) => AgentContext | Promise<AgentContext>;
|
|
@@ -289,7 +289,7 @@ interface PluginConfig {
|
|
|
289
289
|
options?: SettableOptions;
|
|
290
290
|
actions?: ContextMenuAction[];
|
|
291
291
|
hooks?: PluginHooks;
|
|
292
|
-
cleanup?: () =>
|
|
292
|
+
cleanup?: () => undefined;
|
|
293
293
|
}
|
|
294
294
|
interface Plugin {
|
|
295
295
|
name: string;
|
|
@@ -432,13 +432,19 @@ interface FrozenLabelEntry {
|
|
|
432
432
|
bounds: OverlayBounds;
|
|
433
433
|
mouseX?: number;
|
|
434
434
|
}
|
|
435
|
+
interface FrozenLabelEntryAccessor {
|
|
436
|
+
read: () => FrozenLabelEntry | null;
|
|
437
|
+
}
|
|
438
|
+
interface SelectionLabelInstanceAccessor {
|
|
439
|
+
read: () => SelectionLabelInstance | null;
|
|
440
|
+
}
|
|
435
441
|
interface ReactGrabRendererProps {
|
|
436
442
|
selectionVisible?: boolean;
|
|
437
443
|
selectionBounds?: OverlayBounds;
|
|
438
444
|
selectionBoundsMultiple?: OverlayBounds[];
|
|
439
445
|
selectionShouldSnap?: boolean;
|
|
440
446
|
selectionElementsCount?: number;
|
|
441
|
-
|
|
447
|
+
frozenLabelEntryAccessors?: FrozenLabelEntryAccessor[];
|
|
442
448
|
pendingShiftPreviewEntry?: FrozenLabelEntry;
|
|
443
449
|
selectionFilePath?: string;
|
|
444
450
|
selectionLineNumber?: number;
|
|
@@ -449,6 +455,7 @@ interface ReactGrabRendererProps {
|
|
|
449
455
|
hierarchyState?: HierarchyState;
|
|
450
456
|
hierarchyMenuPosition?: DropdownAnchor | null;
|
|
451
457
|
labelInstances?: SelectionLabelInstance[];
|
|
458
|
+
labelInstanceAccessors?: SelectionLabelInstanceAccessor[];
|
|
452
459
|
dragVisible?: boolean;
|
|
453
460
|
dragBounds?: OverlayBounds;
|
|
454
461
|
grabbedBoxes?: Array<{
|
|
@@ -260,24 +260,24 @@ interface HierarchyState {
|
|
|
260
260
|
activeIndex: number;
|
|
261
261
|
}
|
|
262
262
|
interface PluginHooks {
|
|
263
|
-
onActivate?: () => void
|
|
264
|
-
onDeactivate?: () => void
|
|
265
|
-
onElementHover?: (element: Element) => void
|
|
263
|
+
onActivate?: () => void | Promise<void>;
|
|
264
|
+
onDeactivate?: () => void | Promise<void>;
|
|
265
|
+
onElementHover?: (element: Element) => void | Promise<void>;
|
|
266
266
|
onElementSelect?: (element: Element) => boolean | void | Promise<boolean>;
|
|
267
|
-
onDragStart?: (startX: number, startY: number) => void
|
|
268
|
-
onDragEnd?: (elements: Element[], bounds: DragRect) => void
|
|
267
|
+
onDragStart?: (startX: number, startY: number) => void | Promise<void>;
|
|
268
|
+
onDragEnd?: (elements: Element[], bounds: DragRect) => void | Promise<void>;
|
|
269
269
|
onBeforeCopy?: (elements: Element[]) => void | Promise<void>;
|
|
270
270
|
transformCopyContent?: (content: string, elements: Element[]) => string | Promise<string>;
|
|
271
|
-
onAfterCopy?: (elements: Element[], success: boolean) => void
|
|
272
|
-
onCopySuccess?: (elements: Element[], content: string) => void
|
|
273
|
-
onCopyError?: (error: Error) => void
|
|
274
|
-
onStateChange?: (state: ReactGrabState) => void
|
|
275
|
-
onPromptModeChange?: (isPromptMode: boolean, context: PromptModeContext) => void
|
|
276
|
-
onSelectionBox?: (visible: boolean, bounds: OverlayBounds | null, element: Element | null) => void
|
|
277
|
-
onDragBox?: (visible: boolean, bounds: OverlayBounds | null) => void
|
|
278
|
-
onGrabbedBox?: (bounds: OverlayBounds, element: Element) => void
|
|
279
|
-
onElementLabel?: (visible: boolean, variant: ElementLabelVariant, context: ElementLabelContext) => void
|
|
280
|
-
onContextMenu?: (element: Element, position: Position) => void
|
|
271
|
+
onAfterCopy?: (elements: Element[], success: boolean) => void | Promise<void>;
|
|
272
|
+
onCopySuccess?: (elements: Element[], content: string) => void | Promise<void>;
|
|
273
|
+
onCopyError?: (error: Error) => void | Promise<void>;
|
|
274
|
+
onStateChange?: (state: ReactGrabState) => void | Promise<void>;
|
|
275
|
+
onPromptModeChange?: (isPromptMode: boolean, context: PromptModeContext) => void | Promise<void>;
|
|
276
|
+
onSelectionBox?: (visible: boolean, bounds: OverlayBounds | null, element: Element | null) => void | Promise<void>;
|
|
277
|
+
onDragBox?: (visible: boolean, bounds: OverlayBounds | null) => void | Promise<void>;
|
|
278
|
+
onGrabbedBox?: (bounds: OverlayBounds, element: Element) => void | Promise<void>;
|
|
279
|
+
onElementLabel?: (visible: boolean, variant: ElementLabelVariant, context: ElementLabelContext) => void | Promise<void>;
|
|
280
|
+
onContextMenu?: (element: Element, position: Position) => void | Promise<void>;
|
|
281
281
|
onOpenFile?: (filePath: string, lineNumber?: number) => boolean | void;
|
|
282
282
|
transformHtmlContent?: (html: string, elements: Element[]) => string | Promise<string>;
|
|
283
283
|
transformAgentContext?: (context: AgentContext, elements: Element[]) => AgentContext | Promise<AgentContext>;
|
|
@@ -289,7 +289,7 @@ interface PluginConfig {
|
|
|
289
289
|
options?: SettableOptions;
|
|
290
290
|
actions?: ContextMenuAction[];
|
|
291
291
|
hooks?: PluginHooks;
|
|
292
|
-
cleanup?: () =>
|
|
292
|
+
cleanup?: () => undefined;
|
|
293
293
|
}
|
|
294
294
|
interface Plugin {
|
|
295
295
|
name: string;
|
|
@@ -432,13 +432,19 @@ interface FrozenLabelEntry {
|
|
|
432
432
|
bounds: OverlayBounds;
|
|
433
433
|
mouseX?: number;
|
|
434
434
|
}
|
|
435
|
+
interface FrozenLabelEntryAccessor {
|
|
436
|
+
read: () => FrozenLabelEntry | null;
|
|
437
|
+
}
|
|
438
|
+
interface SelectionLabelInstanceAccessor {
|
|
439
|
+
read: () => SelectionLabelInstance | null;
|
|
440
|
+
}
|
|
435
441
|
interface ReactGrabRendererProps {
|
|
436
442
|
selectionVisible?: boolean;
|
|
437
443
|
selectionBounds?: OverlayBounds;
|
|
438
444
|
selectionBoundsMultiple?: OverlayBounds[];
|
|
439
445
|
selectionShouldSnap?: boolean;
|
|
440
446
|
selectionElementsCount?: number;
|
|
441
|
-
|
|
447
|
+
frozenLabelEntryAccessors?: FrozenLabelEntryAccessor[];
|
|
442
448
|
pendingShiftPreviewEntry?: FrozenLabelEntry;
|
|
443
449
|
selectionFilePath?: string;
|
|
444
450
|
selectionLineNumber?: number;
|
|
@@ -449,6 +455,7 @@ interface ReactGrabRendererProps {
|
|
|
449
455
|
hierarchyState?: HierarchyState;
|
|
450
456
|
hierarchyMenuPosition?: DropdownAnchor | null;
|
|
451
457
|
labelInstances?: SelectionLabelInstance[];
|
|
458
|
+
labelInstanceAccessors?: SelectionLabelInstanceAccessor[];
|
|
452
459
|
dragVisible?: boolean;
|
|
453
460
|
dragBounds?: OverlayBounds;
|
|
454
461
|
grabbedBoxes?: Array<{
|
|
@@ -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-D7awzvZs.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};
|
|
@@ -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-D75LeqK0.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}});
|
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-DuawaKU0.cjs`),t=require(`../freeze-updates-D75LeqK0.cjs`),n=require(`../copy-content-xuvAzUOL.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 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-
|
|
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 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-
|
|
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-BxdRmt3A.js";import{q as r}from"../freeze-updates-D7awzvZs.js";import{n as i,o as a,t as o}from"../copy-content-uSwrBRH9.js";export{e as DEFAULT_THEME,o as copyContent,i as formatElementInfo,t as generateSnippet,a as getStack,n as init,r as isInstrumentationActive};
|