UNPKG

bippy

Version:

hack into react internals

29 lines 26.7 kB
/** * @license bippy * * Copyright (c) Aiden Bai * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./rdt-hook.cjs`),t=require(`./core.cjs`),n=/^[a-zA-Z][a-zA-Z\d+\-.]*:/,r=[`rsc://`,`file:///`,`webpack-internal://`,`webpack://`,`node:`,`turbopack://`,`metro://`,`/app-pages-browser/`,`/(app-pages-browser)/`],i=[`<anonymous>`,`eval`,``],a=/\.(jsx|tsx|ts|js)$/,o=/(\.min|bundle|chunk|vendor|vendors|runtime|polyfill|polyfills)\.(js|mjs|cjs)$|(chunk|bundle|vendor|vendors|runtime|polyfill|polyfills|framework|app|main|index)[-_.][A-Za-z0-9_-]{4,}\.(js|mjs|cjs)$|[\da-f]{8,}\.(js|mjs|cjs)$|[-_.][\da-f]{20,}\.(js|mjs|cjs)$|\/dist\/|\/build\/|\/.next\/|\/out\/|\/node_modules\/|\.webpack\.|\.vite\.|\.turbopack\./i,s=/^\?[\w~.-]+(?:=[^&#]*)?(?:&[\w~.-]+(?:=[^&#]*)?)*$/,c=/\(at [^)]+\)$/,l=/(^|@)\S+:\d+/,u=/^\s*at .*(\S+:\d+|\(native\))/m,d=/^(eval@)?(\[native code\])?$/,f=e=>{if(e&&typeof e==`object`){let t=e.stacktrace;return typeof t==`string`?t:null}return null},p=(e,t)=>{if(t?.includeInElement!==!1){let n=e.split(` `),r=[];for(let e of n)if(/^\s*at\s+/.test(e)){let t=g(e,void 0)[0];t&&r.push(t)}else if(/^\s*in\s+/.test(e)){let t=e.replace(/^\s*in\s+/,``).replace(/\s*\(at .*\)$/,``);r.push({functionName:t,source:e})}else if(e.match(l)){let t=_(e,void 0)[0];t&&r.push(t)}return h(r,t)}return e.match(u)?g(e,t):_(e,t)},m=e=>{if(!e.includes(`:`))return[e,void 0,void 0];let t=e.startsWith(`(`)&&/:\d+\)$/.test(e)?e.slice(1,-1):e,n=/(.+?)(?::(\d+))?(?::(\d+))?$/.exec(t);return n?[n[1],n[2]||void 0,n[3]||void 0]:[t,void 0,void 0]},h=(e,t)=>t&&t.slice!=null?Array.isArray(t.slice)?e.slice(t.slice[0],t.slice[1]):e.slice(0,t.slice):e,ee=(e,t)=>g(e.stack,t),g=(e,t)=>h(e.split(` `).filter(e=>!!e.match(u)),t).map(e=>{let t=e;t.includes(`(eval `)&&(t=t.replace(/eval code/g,`eval`).replace(/(\(eval at [^()]*)|(,.*$)/g,``));let n=t.replace(/^\s+/,``).replace(/\(eval code/g,`(`).replace(/^.*?\s+/,``),r=n.match(/ (\(.+\)$)/);n=r?n.replace(r[0],``):n;let i=m(r?r[1]:n);return{functionName:r&&n||void 0,fileName:[`eval`,`<anonymous>`].includes(i[0])?void 0:i[0],lineNumber:i[1]?+i[1]:void 0,columnNumber:i[2]?+i[2]:void 0,source:t}}),te=(e,t)=>_(e.stack,t),_=(e,t)=>h(e.split(` `).filter(e=>!e.match(d)),t).map(e=>{let t=e;if(t.includes(` > eval`)&&(t=t.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,`:$1`)),!t.includes(`@`)&&!t.includes(`:`))return{functionName:t};{let e=/(([^\n\r"\u2028\u2029]*".[^\n\r"\u2028\u2029]*"[^\n\r@\u2028\u2029]*(?:@[^\n\r"\u2028\u2029]*"[^\n\r@\u2028\u2029]*)*(?:[\n\r\u2028\u2029][^@]*)?)?[^@]*)@/,n=t.match(e),r=n&&n[1]?n[1]:void 0,i=m(t.replace(e,``));return{functionName:r,fileName:i[0],lineNumber:i[1]?+i[1]:void 0,columnNumber:i[2]?+i[2]:void 0,source:t}}}),ne=(e,t)=>{let n=f(e);return!n||e.message.includes(` `)&&e.message.split(` `).length>n.split(` `).length?re(e,t):e.stack?y(e,t):v(e,t)},re=(e,t)=>{let n=/Line (\d+).*script (?:in )?(\S+)/i,r=e.message.split(` `),i=[];for(let e=2,t=r.length;e<t;e+=2){let t=n.exec(r[e]);t&&i.push({fileName:t[2],lineNumber:+t[1],source:r[e]})}return h(i,t)},v=(e,t)=>{let n=/Line (\d+).*script (?:in )?(\S+)(?:: In function (\S+))?$/i,r=(f(e)||``).split(` `),i=[];for(let e=0,t=r.length;e<t;e+=2){let t=n.exec(r[e]);t&&i.push({functionName:t[3]||void 0,fileName:t[2],lineNumber:t[1]?+t[1]:void 0,source:r[e]})}return h(i,t)},y=(e,t)=>h(e.stack.split(` `).filter(e=>!!e.match(l)&&!e.match(/^Error created at/)),t).map(e=>{let t=e.split(`@`),n=m(t.pop()),r=t.shift()||``,i=r.replace(/<anonymous function(: (\w+))?>/,`$2`).replace(/\([^)]*\)/g,``)||void 0,a;return r.match(/\(([^)]*)\)/)&&(a=r.replace(/^[^(]+\(([^)]*)\)$/,`$1`)),{functionName:i,args:a===void 0||a===`[arguments not available]`?void 0:a.split(`,`),fileName:n[0],lineNumber:n[1]?+n[1]:void 0,columnNumber:n[2]?+n[2]:void 0,source:e}});var ie=44,b=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,ae=new Uint8Array(64),oe=new Uint8Array(128);for(let e=0;e<b.length;e++){let t=b.charCodeAt(e);ae[e]=t,oe[t]=e}function x(e,t){let n=0,r=0,i=0;do i=oe[e.next()],n|=(i&31)<<r,r+=5;while(i&32);let a=n&1;return n>>>=1,a&&(n=-2147483648|-n),t+n}function S(e,t){return e.pos>=t?!1:e.peek()!==ie}var se=class{constructor(e){this.pos=0,this.buffer=e}next(){return this.buffer.charCodeAt(this.pos++)}peek(){return this.buffer.charCodeAt(this.pos)}indexOf(e){let{buffer:t,pos:n}=this,r=t.indexOf(e,n);return r===-1?t.length:r}};function C(e){let{length:t}=e,n=new se(e),r=[],i=0,a=0,o=0,s=0,c=0;do{let e=n.indexOf(`;`),t=[],l=!0,u=0;for(i=0;n.pos<e;){let r;i=x(n,i),i<u&&(l=!1),u=i,S(n,e)?(a=x(n,a),o=x(n,o),s=x(n,s),S(n,e)?(c=x(n,c),r=[i,a,o,s,c]):r=[i,a,o,s]):r=[i],t.push(r),n.pos++}l||ce(t),r.push(t),n.pos=e+1}while(n.pos<=t);return r}function ce(e){e.sort(le)}function le(e,t){return e[0]-t[0]}const w=/^[a-zA-Z][a-zA-Z\d+\-.]*:/,ue=/^data:application\/json[^,]+base64,/,de=/(?:\/\/[@#][ \t]+sourceMappingURL=([^\s'"]+?)[ \t]*$)|(?:\/\*[@#][ \t]+sourceMappingURL=([^*]+?)[ \t]*(?:\*\/)[ \t]*$)/,T=new Map,E=new Map,D=(e,t,n,r)=>{if(n<0||n>=e.length)return null;let i=e[n];if(!i||i.length===0)return null;let a=null;for(let e of i)if(e[0]<=r)a=e;else break;if(!a||a.length<4)return null;let[,o,s,c]=a;if(o===void 0||s===void 0||c===void 0)return null;let l=t[o];return l?{columnNumber:c,fileName:l,lineNumber:s+1}:null},O=(e,t,n)=>{if(e.sections){let r=null;for(let i of e.sections)if(t>i.offset.line||t===i.offset.line&&n>=i.offset.column)r=i;else break;if(!r)return null;let i=t-r.offset.line,a=t===r.offset.line?n-r.offset.column:n;return D(r.map.mappings,r.map.sources,i,a)}return D(e.mappings,e.sources,t-1,n)},fe=(e,t)=>{let n=t.split(` `),r;for(let e=n.length-1;e>=0&&!r;e--){let t=n[e].match(de);t&&(r=t[1]||t[2])}if(!r)return null;let i=w.test(r);if(!(ue.test(r)||i||r.startsWith(`/`))){let t=e.split(`/`);t[t.length-1]=r,r=t.join(`/`)}return r},pe=e=>({file:e.file,mappings:C(e.mappings),names:e.names,sourceRoot:e.sourceRoot,sources:e.sources,sourcesContent:e.sourcesContent,version:3}),me=e=>{let t=e.sections.map(({map:e,offset:t})=>({map:{...e,mappings:C(e.mappings)},offset:t})),n=new Set;for(let e of t)for(let t of e.map.sources)n.add(t);return{file:e.file,mappings:[],names:[],sections:t,sourceRoot:void 0,sources:Array.from(n),sourcesContent:void 0,version:3}},he=e=>{if(!e)return!1;let t=e.trim();if(!t)return!1;let n=t.match(w);if(!n)return!0;let r=n[0].toLowerCase();return r===`http:`||r===`https:`},ge=async(e,t=fetch)=>{if(!he(e))return null;let n;try{let r=await t(e);if(!r.ok)return null;n=await r.text()}catch{return null}if(!n)return null;let r=fe(e,n);if(!r||!he(r))return null;try{let e=await t(r);if(!e.ok)return null;let n=await e.json();return`sections`in n?me(n):pe(n)}catch{return null}},k=async(e,t=!0,n)=>{if(t&&T.has(e))return T.get(e)??null;if(t&&E.has(e))return E.get(e);let r=ge(e,n);t&&E.set(e,r);let i=await r;return t&&E.delete(e),t&&(i===null?T.set(e,null):T.set(e,i)),i},_e=async(e,t=!0,n)=>await Promise.all(e.map(async e=>{if(!e.fileName)return e;let r=await k(e.fileName,t,n);if(!r||typeof e.lineNumber!=`number`||typeof e.columnNumber!=`number`)return e;let i=O(r,e.lineNumber,e.columnNumber);return i?{...e,source:i.fileName&&e.source?e.source.replace(e.fileName,i.fileName):e.source,fileName:i.fileName,lineNumber:i.lineNumber,columnNumber:i.columnNumber,isSymbolicated:!0}:e})),ve=e=>e._debugStack instanceof Error&&typeof e._debugStack?.stack==`string`,ye=()=>{let t=e.r();for(let n of[...Array.from(e.n),...Array.from(t.renderers.values())]){let e=n.currentDispatcherRef;if(e&&typeof e==`object`)return`H`in e?e.H:e.current}return null},be=t=>{for(let n of e.n){let e=n.currentDispatcherRef;e&&typeof e==`object`&&(`H`in e?e.H=t:e.current=t)}},A=e=>`\n in ${e}`,j=(e,t)=>{let n=A(e);return t&&(n+=` (at ${t})`),n};let M=!1;const N=(e,n)=>{if(!e||M)return``;let r=Error.prepareStackTrace;Error.prepareStackTrace=void 0,M=!0;let i=ye();be(null);let a=console.error,o=console.warn;console.error=()=>{},console.warn=()=>{};try{let r={DetermineComponentFrameRoot(){let t;try{if(n){let n=function(){throw Error()};if(Object.defineProperty(n.prototype,`props`,{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){t=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){t=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){t=e}let n=e();n&&typeof n.catch==`function`&&n.catch(()=>{})}}catch(e){if(e instanceof Error&&t instanceof Error&&typeof e.stack==`string`)return[e.stack,t.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`,Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`)?.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,`name`,{value:`DetermineComponentFrameRoot`});let[i,a]=r.DetermineComponentFrameRoot();if(i&&a){let n=i.split(` `),r=a.split(` `),o=0,s=0;for(;o<n.length&&!n[o].includes(`DetermineComponentFrameRoot`);)o++;for(;s<r.length&&!r[s].includes(`DetermineComponentFrameRoot`);)s++;if(o===n.length||s===r.length)for(o=n.length-1,s=r.length-1;o>=1&&s>=0&&n[o]!==r[s];)s--;for(;o>=1&&s>=0;o--,s--)if(n[o]!==r[s]){if(o!==1||s!==1)do if(o--,s--,s<0||n[o]!==r[s]){let r=`\n${n[o].replace(` at new `,` at `)}`,i=t.getDisplayName(e);return i&&r.includes(`<anonymous>`)&&(r=r.replace(`<anonymous>`,i)),r}while(o>=1&&s>=0);break}}}finally{M=!1,Error.prepareStackTrace=r,be(i),console.error=a,console.warn=o}let s=e?t.getDisplayName(e):``;return s?A(s):``},xe=(e,t)=>{let n=e.tag,r=``;switch(n){case 28:r=A(`Activity`);break;case 1:r=N(e.type,!0);break;case 11:r=N(e.type.render,!1);break;case 0:case 15:r=N(e.type,!1);break;case 5:case 26:case 27:r=A(e.type);break;case 16:r=A(`Lazy`);break;case 13:r=e.child!==t&&t!==null?A(`Suspense Fallback`):A(`Suspense`);break;case 19:r=A(`SuspenseList`);break;case 30:r=A(`ViewTransition`);break;default:return``}return r},Se=e=>{try{let t=``,n=e,r=null;do{t+=xe(n,r);let e=n._debugInfo;if(e&&Array.isArray(e))for(let n=e.length-1;n>=0;n--){let r=e[n];typeof r.name==`string`&&(t+=j(r.name,r.env))}r=n,n=n.return}while(n);return t}catch(e){return e instanceof Error?`\nError generating stack: ${e.message}\n${e.stack}`:``}},P=e=>{let t=Error.prepareStackTrace;Error.prepareStackTrace=void 0;let n=e;if(!n)return``;Error.prepareStackTrace=t,n.startsWith(`Error: react-stack-top-frame `)&&(n=n.slice(29));let r=n.indexOf(` `);if(r!==-1&&(n=n.slice(r+1)),r=Math.max(n.indexOf(`react_stack_bottom_frame`),n.indexOf(`react-stack-bottom-frame`)),r!==-1&&(r=n.lastIndexOf(` `,r)),r!==-1)n=n.slice(0,r);else return``;return n},Ce=e=>!!(e.functionName&&e.fileName&&(e.fileName.startsWith(`rsc://`)||e.fileName.startsWith(`about://React/`))),we=(e,t)=>e.fileName===t.fileName&&e.lineNumber===t.lineNumber&&e.columnNumber===t.columnNumber,Te=e=>{let t=new Map;for(let n of e)for(let e of n.stackFrames){if(!Ce(e))continue;let n=e.functionName,r=t.get(n)??[];r.some(t=>we(t,e))||(r.push(e),t.set(n,r))}return t},Ee=(e,t,n)=>{if(!e.functionName)return{...e,isServer:!0};let r=t.get(e.functionName);if(!r||r.length===0)return{...e,isServer:!0};let i=n.get(e.functionName)??0,a=r[i%r.length];return n.set(e.functionName,i+1),{...e,isServer:!0,fileName:a.fileName,lineNumber:a.lineNumber,columnNumber:a.columnNumber,source:e.source?.replace(`(at Server)`,`(${a.fileName}:${a.lineNumber}:${a.columnNumber})`)}},De=e=>{let n=[];return t.traverseFiber(e,e=>{if(!ve(e))return;let r=typeof e.type==`string`?e.type:t.getDisplayName(e.type)||`<anonymous>`;n.push({componentName:r,stackFrames:p(P(e._debugStack?.stack))})},!0),n},F=async(e,t=!0,n)=>{let r=De(e),i=p(Se(e)),a=Te(r),o=new Map;return _e(i.map(e=>(e.source?.includes(`(at Server)`)??!1)||e.source!=null&&c.test(e.source)?Ee(e,a,o):e).filter((e,t,n)=>{if(t===0)return!0;let r=n[t-1];return e.functionName!==r.functionName}),t,n)},I=e=>{let t=e._debugSource;return t?typeof t==`object`&&!!t&&`fileName`in t&&typeof t.fileName==`string`&&`lineNumber`in t&&typeof t.lineNumber==`number`:!1},Oe=async(e,t=!0,n)=>{if(I(e))return e._debugSource||null;let r=await F(e,t,n);for(let e of r)if(e.fileName)return{fileName:e.fileName,lineNumber:e.lineNumber,columnNumber:e.columnNumber,functionName:e.functionName};return null},L=e=>e.split(`/`).filter(Boolean).length,ke=e=>e.split(`/`).filter(Boolean)[0]??null,Ae=e=>{let t=e.indexOf(`/`,1);if(t===-1||L(e.slice(0,t))!==1)return e;let n=e.slice(t);if(!a.test(n)||L(n)<2)return e;let r=ke(n);return!r||r.startsWith(`@`)||r.length>4?e:n},R=e=>{if(!e||i.some(t=>t===e))return``;let t=e,a=t.startsWith(`http://`)||t.startsWith(`https://`);if(a)try{t=new URL(t).pathname}catch{}if(a&&(t=Ae(t)),t.startsWith(`about://React/`)){let e=t.slice(14),n=e.indexOf(`/`),r=e.indexOf(`:`);t=n!==-1&&(r===-1||n<r)?e.slice(n+1):e}let o=!0;for(;o;){o=!1;for(let e of r)if(t.startsWith(e)){t=t.slice(e.length),e===`file:///`&&(t=`/${t.replace(/^\/+/,``)}`),o=!0;break}}if(n.test(t)){let e=t.match(n);e&&(t=t.slice(e[0].length))}if(t.startsWith(`//`)){let e=t.indexOf(`/`,2);t=e===-1?``:t.slice(e)}let c=t.indexOf(`?`);if(c!==-1){let e=t.slice(c);s.test(e)&&(t=t.slice(0,c))}return t},je=e=>{let t=R(e);return!(!t||!a.test(t)||o.test(t))},Me=(e,t)=>{let n=e.split(` `),r=t-1;if(r<0||r>=n.length)return null;let i=Math.max(0,r-5),a=Math.min(n.length,r+5),o=n.slice(i,a).join(` `),s=/(?:^|export\s+)(?:const|let|var)\s+(\w+)\s*=/m,c=/(?:^|export\s+)function\s+(\w+)/m,l=/(?:^|export\s+)class\s+(\w+)/m,u=o.match(s);if(u?.[1])return u[1];let d=o.match(c);if(d?.[1])return d[1];let f=o.match(l);return f?.[1]?f[1]:null},Ne=async(e,n=!0,r)=>{let i=(await F(e,n,r)).filter(e=>e.fileName)[0];if(!i?.fileName)return t.getDisplayName(e.type);let a=await k(i.fileName,n,r);if(!a)return t.getDisplayName(e.type);let o=null;if(typeof i.lineNumber==`number`&&typeof i.columnNumber==`number`&&(o=O(a,i.lineNumber,i.columnNumber)),!o?.fileName||!o.lineNumber||!a.sourcesContent)return t.getDisplayName(e.type);let s=a.sources.indexOf(o.fileName);if(s===-1||!a.sourcesContent[s])return t.getDisplayName(e.type);let c=a.sourcesContent[s];return Me(c,o.lineNumber)||t.getDisplayName(e.type)},z=Symbol.for(`react.context`),Pe=Symbol.for(`react.memo_cache_sentinel`);let B=[],V=null,H=null,U=null,W=null,G=0,K=null;const q=Error("Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render."),J=e=>p(e.stack||``,{includeInElement:!1}),Y=()=>{let e=U;return e!==null&&(U=e.next),e},X=e=>{if(H===null)return e._currentValue;if(W===null)throw Error(`Context reads do not line up with context dependencies.`);if(Object.prototype.hasOwnProperty.call(W,`memoizedValue`)){let e=W.memoizedValue;return W=W.next,e}return e._currentValue},Fe=()=>{let t=e.r(),n=[...e.n,...t.renderers.values()];for(let e of n){let t=e.currentDispatcherRef;if(t&&typeof t==`object`)return t}return null},Ie=e=>`H`in e?e.H:e.current,Le=(e,t)=>{`H`in e?e.H=t:e.current=t},Z=(e,t,n,r=null)=>{B.push({displayName:r,primitive:e,stackError:Error(),value:t,dispatcherHookName:n})},Re=e=>{if(typeof e==`object`&&e){let t=e;if(typeof t.then==`function`){let e=K!==null&&G<K.length?K[G++]:t;switch(e.status){case`fulfilled`:return Z(`Promise`,e.value,`Use`),e.value;case`rejected`:throw e.reason}throw Z(`Unresolved`,e,`Use`),q}if(t.$$typeof===z&&`_currentValue`in t){let e=t,n=X(e);return Z(`Context (use)`,n,`Use`,e.displayName||`Context`),n}}throw Error(`An unsupported type was passed to use(): `+String(e))},ze=e=>{let t=X(e);return Z(`Context`,t,`Context`,e.displayName||null),t},Be=e=>{let t=Y(),n=t===null?typeof e==`function`?e():e:t.memoizedState;return Z(`State`,n,`State`),[n,()=>{}]},Ve=(e,t,n)=>{let r=Y(),i=r===null?n===void 0?t:n(t):r.memoizedState;return Z(`Reducer`,i,`Reducer`),[i,()=>{}]},He=e=>{let t=Y(),n=t===null?{current:e}:t.memoizedState;return Z(`Ref`,n.current,`Ref`),n},Ue=()=>{let e=Y();return Z(`CacheRefresh`,e===null?()=>{}:e.memoizedState,`CacheRefresh`),()=>{}},We=e=>{Y(),Z(`LayoutEffect`,e,`LayoutEffect`)},Ge=e=>{Y(),Z(`InsertionEffect`,e,`InsertionEffect`)},Ke=e=>{Y(),Z(`Effect`,e,`Effect`)},qe=e=>{Y();let t;typeof e==`object`&&e&&`current`in e&&(t=e.current),Z(`ImperativeHandle`,t,`ImperativeHandle`)},Je=(e,t)=>{Z(`DebugValue`,typeof t==`function`?t(e):e,`DebugValue`)},Ye=e=>{let t=Y();return Z(`Callback`,t===null?e:t.memoizedState[0],`Callback`),e},Xe=e=>{let t=Y(),n=t===null?e():t.memoizedState[0];return Z(`Memo`,n,`Memo`),n},Ze=(e,t)=>{let n=Y();Y();let r=n===null?t():n.memoizedState;return Z(`SyncExternalStore`,r,`SyncExternalStore`),r},Qe=()=>{let e=Y();Y();let t=e===null?!1:e.memoizedState;return Z(`Transition`,t,`Transition`),[t,()=>{}]},$e=e=>{let t=Y(),n=t===null?e:t.memoizedState;return Z(`DeferredValue`,n,`DeferredValue`),n},et=()=>{let e=Y(),t=e===null?``:e.memoizedState;return Z(`Id`,t,`Id`),t},tt=e=>{let t=H;if(t==null)return[];let n=t.updateQueue?.memoCache;if(n==null)return[];let r=n.data[n.index];return r===void 0&&(r=n.data[n.index]=Array.from({length:e},()=>Pe)),n.index++,r},nt=e=>{let t=Y(),n=t===null?e:t.memoizedState;return Z(`Optimistic`,n,`Optimistic`),[n,()=>{}]},rt=(e,t)=>{let n,r=null;if(e!==null){let t=e.memoizedState;if(typeof t==`object`&&t&&`then`in t&&typeof t.then==`function`){let e=t;switch(e.status){case`fulfilled`:n=e.value;break;case`rejected`:r=e.reason;break;default:r=q,n=e}}else n=t}else n=t;return{value:n,error:r}},it=e=>(t,n)=>{let r=Y();Y(),Y();let i=Error(),{value:a,error:o}=rt(r,n);if(B.push({displayName:null,primitive:e,stackError:i,value:a,dispatcherHookName:e}),o!==null)throw o;return[a,()=>{},!1]},at=it(`ActionState`),Q={readContext:X,use:Re,useCallback:Ye,useContext:ze,useEffect:Ke,useImperativeHandle:qe,useLayoutEffect:We,useInsertionEffect:Ge,useMemo:Xe,useReducer:Ve,useRef:He,useState:Be,useDebugValue:Je,useDeferredValue:$e,useTransition:Qe,useSyncExternalStore:Ze,useId:et,useHostTransitionStatus:()=>{let e=X({_currentValue:null});return Z(`HostTransitionStatus`,e,`HostTransitionStatus`),e},useFormState:it(`FormState`),useActionState:at,useOptimistic:nt,useMemoCache:tt,useCacheRefresh:Ue,useEffectEvent:e=>(Y(),Z(`EffectEvent`,e,`EffectEvent`),e)},ot=typeof Proxy>`u`?Q:new Proxy(Q,{get(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return e[t];let n=Error(`Missing method in Dispatcher: `+t);throw n.name=`ReactDebugToolsUnsupportedHookError`,n}}),st=()=>{if(V!==null)return V;let e=new Map,t;try{if(Q.useContext({_currentValue:null}),Q.useState(null),Q.useReducer(e=>e,null),Q.useRef(null),typeof Q.useCacheRefresh==`function`&&Q.useCacheRefresh(),Q.useLayoutEffect(()=>{}),Q.useInsertionEffect(()=>{}),Q.useEffect(()=>{}),Q.useImperativeHandle(void 0,()=>null),Q.useDebugValue(null),Q.useCallback(()=>{}),Q.useTransition(),Q.useSyncExternalStore(()=>()=>{},()=>null,()=>null),Q.useDeferredValue(null),Q.useMemo(()=>null),Q.useOptimistic(null,e=>e),Q.useFormState(e=>e,null),Q.useActionState(e=>e,null),Q.useHostTransitionStatus(),typeof Q.useMemoCache==`function`&&Q.useMemoCache(0),typeof Q.use==`function`){Q.use({$$typeof:z,_currentValue:null}),Q.use({then(){},status:`fulfilled`,value:null});try{Q.use({then(){}})}catch{}}Q.useId(),typeof Q.useEffectEvent==`function`&&Q.useEffectEvent(()=>{})}finally{t=B,B=[]}for(let n of t)e.set(n.primitive,J(n.stackError));return V=e,V};let ct=0;const lt=(e,t,n)=>{let r=t[n].source;hookSearch:for(let i=0;i<e.length;i++)if(e[i].source===r){for(let r=n+1,a=i+1;r<t.length&&a<e.length;r++,a++)if(e[a].source!==t[r].source)continue hookSearch;return i}return-1},ut=(e,t)=>{let n=lt(t,e,ct);if(n!==-1)return n;for(let r=0;r<e.length&&r<5;r++)if(n=lt(t,e,r),n!==-1)return ct=r,n;return-1},$=e=>{if(!e)return``;let t=e.lastIndexOf(`[as `);if(t!==-1)return $(e.slice(t+4,-1));if(t=e.lastIndexOf(`.`),t=t===-1?0:t+1,e.slice(t).startsWith(`unstable_`)&&(t+=9),e.slice(t).startsWith(`experimental_`)&&(t+=13),e.slice(t,t+3)===`use`){if(e.length-t===3)return`Use`;t+=3}return e.slice(t)},dt=(e,t)=>{let n=$(e);return t===`HostTransitionStatus`?n===t||n===`FormStatus`:n===t},ft=(e,t)=>{let n=st().get(t.primitive);if(n===void 0)return-1;for(let r=0;r<n.length&&r<e.length;r++)if(n[r].source!==e[r].source)return r<e.length-1&&dt(e[r].functionName,t.dispatcherHookName)&&r++,r<e.length-1&&dt(e[r].functionName,t.dispatcherHookName)&&r++,r;return-1},pt=(e,t)=>{let n=J(t.stackError),r=ut(e,n),i=ft(n,t);return r===-1||i===-1||r-i<2?i===-1?[null,null]:[n[i-1]??null,null]:[n[i-1]??null,n.slice(i,r-1)]},mt=new Set([`Context`,`Context (use)`,`DebugValue`,`Promise`,`Unresolved`,`HostTransitionStatus`]),ht=(e,t)=>{let n=[],r=null,i=n,a=0,o=[];for(let s of t){let[t,c]=pt(e,s),l=s.displayName;if(l===null&&t!==null&&(l=$(t.functionName)||$(s.dispatcherHookName)),c!==null){let e=0;if(r!==null){for(;e<c.length&&e<r.length&&c[c.length-e-1].source===r[r.length-e-1].source;)e++;for(let t=r.length-1;t>e;t--)i=o.pop()??n}for(let t=c.length-e-1;t>=1;t--){let e=[],n=c[t],r={id:null,isStateEditable:!1,name:$(c[t-1].functionName),value:void 0,subHooks:e,hookSource:{lineNumber:n.lineNumber??null,columnNumber:n.columnNumber??null,functionName:n.functionName??null,fileName:n.fileName??null}};i.push(r),o.push(i),i=e}r=c}let{primitive:u}=s,d=mt.has(u)?null:a++,f=u===`Reducer`||u===`State`,p=l||u,m=c?.[0],h={lineNumber:m?.lineNumber??null,columnNumber:m?.columnNumber??null,functionName:m?.functionName??null,fileName:m?.fileName??null};i.push({id:d,isStateEditable:f,name:p,value:s.value,subHooks:[],hookSource:h})}return gt(n,null),n},gt=(e,t)=>{let n=[];for(let t=0;t<e.length;t++){let r=e[t];r.name===`DebugValue`&&r.subHooks.length===0?(e.splice(t,1),t--,n.push(r)):gt(r.subHooks,r)}t!==null&&(n.length===1?t.value=n[0].value:n.length>1&&(t.value=n.map(({value:e})=>e)))},_t=(e,t)=>{let n=t;for(;n;){if(n.tag===10){let t=n.type;`_context`in t&&t._context!==void 0&&(t=t._context),e.has(t)||(e.set(t,t._currentValue),t._currentValue=n.memoizedProps.value)}n=n.return}},vt=e=>{e.forEach((e,t)=>{t._currentValue=e})},yt=e=>{if(e===q)return;if(e instanceof Error&&e.name===`ReactDebugToolsUnsupportedHookError`)throw e;let t=Error(`Error rendering inspected component`,{cause:e});throw t.name=`ReactDebugToolsRenderError`,t.cause=e,t},bt=(e,t)=>{if(e&&typeof e==`object`&&`defaultProps`in e&&e.defaultProps){let n={...t},r=e.defaultProps;for(let e in r)n[e]===void 0&&(n[e]=r[e]);return n}return t},xt=()=>{let e={};for(let t in console)try{e[t]=console[t],console[t]=()=>{}}catch{}return e},St=e=>{for(let t in e)try{console[t]=e[t]}catch{}},Ct=(e,t)=>{let n=Ie(e);Le(e,ot);let r=[],i;try{i=Error(),t()}catch(e){yt(e)}finally{r=B,B=[],Le(e,n)}return ht(i===void 0?[]:J(i),r)},wt=()=>{let e=Fe();if(!e)throw Error(`No React renderer found. Make sure React is loaded and bippy's hook is installed.`);return e},Tt=e=>{if(Object.prototype.hasOwnProperty.call(e,`dependencies`)){let t=e.dependencies;W=t===null?null:t.firstContext}else if(Object.prototype.hasOwnProperty.call(e,`dependencies_old`)){let t=e.dependencies_old;W=t===null?null:t.firstContext}else if(Object.prototype.hasOwnProperty.call(e,`dependencies_new`)){let t=e.dependencies_new;W=t===null?null:t.firstContext}else if(Object.prototype.hasOwnProperty.call(e,`contextDependencies`)){let t=e.contextDependencies;W=t===null?null:t.first}else throw Error(`Unsupported React version.`)},Et=e=>{let t=wt();if(e.tag!==0&&e.tag!==15&&e.tag!==11)throw Error(`Unknown Fiber. Needs to be a function component to inspect hooks.`);st(),U=e.memoizedState,H=e;let n=e.dependencies&&e.dependencies._debugThenableState,r=n?n.thenables||n:null;K=Array.isArray(r)?r:null,G=0,Tt(e);let i=e.type,a=e.memoizedProps;i!==e.elementType&&(a=bt(i,a));let o=xt(),s=new Map;try{return W!==null&&!Object.prototype.hasOwnProperty.call(W,`memoizedValue`)&&_t(s,e),e.tag===11?Ct(t,()=>{i.render(a,e.ref)}):Ct(t,()=>{i(a)})}finally{H=null,U=null,W=null,K=null,G=0,vt(s),St(o)}},Dt=new Set([`Effect`,`LayoutEffect`,`InsertionEffect`,`ImperativeHandle`,`DebugValue`]),Ot=/(?:const|let|var)\s+((?:\[[\s\S]*?\]|\w+))\s*=\s*(?:[\w$.]+\.)*use[A-Z]\w*\s*(?:<[\s\S]*?>)?\s*\(/g,kt=e=>`${e.fileName??``}:${e.lineNumber??0}:${e.columnNumber??0}`,At=e=>{let t=[],n=e=>{for(let r of e)Dt.has(r.name)||(t.push(r),r.subHooks.length>0&&n(r.subHooks))};return n(e),t},jt=(e,t,n)=>{if(!t)return null;let r=e.indexOf(n);return r===-1?null:t[r]??null},Mt=(e,t)=>{let n=jt(e.sources,e.sourcesContent,t);if(n)return n;if(e.sections)for(let n of e.sections){let e=jt(n.map.sources,n.map.sourcesContent,t);if(e)return e}return null},Nt=e=>{let t=e.trim();if(t.startsWith(`[`)){let e=t.match(/\[\s*(\w+)/);return e?e[1]:null}return/^\w+$/.test(t)?t:null},Pt=(e,t,n)=>{let r=e.split(` `),i=t-1;if(i<0||i>=r.length)return null;let a=Math.max(0,i-10),o=r.slice(a,i+1).join(` `),s=[...o.matchAll(Ot)],c=o.lastIndexOf(` `)+1+n,l=s.filter(e=>e.index<=c).at(-1);return l?Nt(l[1]):null},Ft=async(e,t,n,r)=>{let{sourceMapsByFile:i,sourceContentCache:a,fetchFn:o}=r;i.has(e)||i.set(e,await k(e,!0,o));let s=i.get(e)??null;if(s){let r=O(s,t,n);if(r?.fileName&&r.lineNumber!==void 0){let t=`sourcemap:${e}:${r.fileName}`;a.has(t)||a.set(t,Mt(s,r.fileName));let n=a.get(t)??null;if(n)return{sourceCode:n,lineNumber:r.lineNumber,columnNumber:r.columnNumber??0}}}if(!a.has(e))try{let t=await(o??fetch)(e);a.set(e,t.ok?await t.text():null)}catch{a.set(e,null)}let c=a.get(e)??null;return c?{sourceCode:c,lineNumber:t,columnNumber:n}:null},It=async(e,t)=>{let n=new Map,r=At(e);if(r.length===0)return n;let i={sourceMapsByFile:new Map,sourceContentCache:new Map,fetchFn:t};return await Promise.all(r.map(async e=>{let t=e.hookSource;if(!t||!t.fileName||t.lineNumber===null||t.columnNumber===null)return;let r=await Ft(t.fileName,t.lineNumber,t.columnNumber,i);if(!r)return;let a=Pt(r.sourceCode,r.lineNumber,r.columnNumber);if(a){let e=kt(t);n.set(e,a)}})),n};exports.describeDebugInfoFrame=j,exports.describeFiber=xe,exports.extractHookVariableName=Pt,exports.extractLocation=m,exports.formatOwnerStack=P,exports.getDisplayNameFromSource=Ne,exports.getFallbackOwnerStack=Se,exports.getFiberHooks=Et,exports.getHookSourceLocationKey=kt,exports.getOwnerStack=F,exports.getSource=Oe,exports.getSourceFromSourceMap=O,exports.getSourceMap=k,exports.getSourceMapImpl=ge,exports.hasDebugSource=I,exports.hasDebugStack=ve,exports.isSourceFile=je,exports.normalizeFileName=R,exports.parseFFOrSafari=te,exports.parseFFOrSafariString=_,exports.parseHookNames=It,exports.parseOpera=ne,exports.parseOpera10=v,exports.parseOpera11=y,exports.parseOpera9=re,exports.parseStack=p,exports.parseV8OrIE=ee,exports.parseV8OrIeString=g,exports.sourceMapCache=T,exports.symbolicateStack=_e;