bippy 0.7.3-dev.a6ed02c → 0.7.3-dev.e2b879b

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/source.js CHANGED
@@ -6,19 +6,19 @@
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{i as e,n as t,u as n}from"./rdt-hook.js";import{C as r,E as i,O as a,S as o,T as s,b as c,d as l,i as u,u as d,w as f}from"./core.js";const p=/^[a-zA-Z][a-zA-Z\d+\-.]*:/,m=[`rsc://`,`file:///`,`webpack-internal://`,`webpack://`,`node:`,`turbopack://`,`metro://`,`/app-pages-browser/`,`/(app-pages-browser)/`],ee=[`rsc://`,`about://React/`],te=[`<anonymous>`,`eval`,``],ne=/\.(cjs|cts|js|jsx|mdx|mjs|mts|ts|tsx)$/,re=/(\.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,ie=/^\?[\w~.-]+(?:=[^&#]*)?(?:&[\w~.-]+(?:=[^&#]*)?)*$/,ae=/\[[^\]]+\]$/,h=[`react_stack_bottom_frame`,`react-stack-bottom-frame`],oe=Error,se=()=>oe.prepareStackTrace,g=e=>{oe.prepareStackTrace=e},ce=/(^|@)\S+:\d+/,le=/^\s*at .*(\S+:\d+|\(native\))/m,ue=/^(eval@)?(\[native code\])?$/,_=(e,t)=>{if(t?.includeInElement!==!1){let t=e.split(`
10
- `),n=[];for(let e of t)if(/^\s*at\s+/.test(e)){let t=fe(e)[0];t&&n.push(t)}else if(/^\s*in\s+/.test(e)){let t=e.replace(/^\s*in\s+/,``).replace(/\s*(?:\(at .*\)|\[[^\]]+\])$/,``);n.push({functionName:t,source:e})}else if(e.match(ce)){let t=pe(e)[0];t&&n.push(t)}return n}return e.match(le)?fe(e):pe(e)},de=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]},fe=e=>e.split(`
11
- `).filter(e=>!!e.match(le)).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=de(r?r[1]:n);return{functionName:r&&n||void 0,fileName:[`eval`,`<anonymous>`,`(native)`].includes(i[0])?void 0:i[0],lineNumber:i[1]?+i[1]:void 0,columnNumber:i[2]?+i[2]:void 0,source:t}}),pe=e=>e.split(`
12
- `).filter(e=>!e.match(ue)).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=de(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}}}),me=new WeakMap,he=e=>h.some(t=>e.includes(t)),ge=e=>{let t=e.getFunctionName?.()??``;if(t)return t;let n=e.getTypeName?.()??``,r=e.getMethodName?.()??``;return n&&r?`${n}.${r}`:r},_e=e=>{let t=[];for(let n=1;n<e.length;n++){let r=e[n],i=ge(r);if(he(i))return{frames:t,isTrusted:!0};if(r.isNative?.()){t.push({functionName:i||void 0});continue}let a=r.getScriptNameOrSourceURL?.()??``;!a&&r.isEval?.()&&(a=r.getEvalOrigin?.()??``),t.push({functionName:i&&i!==`<anonymous>`?i:void 0,fileName:a&&a!==`<anonymous>`?a:void 0,lineNumber:r.getLineNumber?.()??void 0,columnNumber:r.getColumnNumber?.()??void 0,enclosingLineNumber:r.getEnclosingLineNumber?.()??void 0,enclosingColumnNumber:r.getEnclosingColumnNumber?.()??void 0,source:` at ${r.toString()}`})}return{frames:t,isTrusted:!1}},ve=e=>{let t=-1;for(let n of h)if(t=e.indexOf(n),t!==-1)break;let n=t===-1?e:e.slice(0,e.lastIndexOf(`
13
- `,t));return{frames:_(n).slice(1),isTrusted:t!==-1}},v=e=>{let t=me.get(e);if(t)return t;let n=null,r=(e,t)=>{n=_e(t);let r=`${e.name||`Error`}: ${e.message||``}`;for(let e of t)r+=`\n at ${e.toString()}`;return r},i=se();g(r);let a;try{a=String(e.stack)}finally{g(i)}let o=n??ve(a);return me.set(e,o),o},ye=(r=globalThis)=>{let i=e(void 0,r),a=n(i.renderers)?i.renderers.values():[],o=r===globalThis?new Set([...t,...a]):new Set(a),s=[],c=new Set;for(let e of o){let t=e.currentDispatcherRef;!t||c.has(t)||(c.add(t),s.push(t))}return s},be=e=>`H`in e?e.H:e.current,y=(e,t)=>{`H`in e?e.H=t:e.current=t};var xe=44,Se=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,Ce=new Uint8Array(64),we=new Uint8Array(128);for(let e=0;e<Se.length;e++){let t=Se.charCodeAt(e);Ce[e]=t,we[t]=e}function b(e,t){let n=0,r=0,i=0;do i=we[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 Te(e,t){return e.pos>=t?!1:e.peek()!==xe}var Ee=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 De(e){let{length:t}=e,n=new Ee(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=b(n,i),i<u&&(l=!1),u=i,Te(n,e)?(a=b(n,a),o=b(n,o),s=b(n,s),Te(n,e)?(c=b(n,c),r=[i,a,o,s,c]):r=[i,a,o,s]):r=[i],t.push(r),n.pos++}l||Oe(t),r.push(t),n.pos=e+1}while(n.pos<=t);return r}function Oe(e){e.sort(ke)}function ke(e,t){return e[0]-t[0]}const x=/^data:application\/json(?:;[^,]*)?,/i,Ae=/(?:\/\/[@#][ \t]+sourceMappingURL=([^\s'"]+?)[ \t]*$)|(?:\/\*[@#][ \t]+sourceMappingURL=([^*]+?)[ \t]*(?:\*\/)[ \t]*$)/,je=new Map,Me=new WeakMap;var Ne=class extends Error{};const Pe=new Map,Fe=new WeakMap,Ie=new Set([`chrome-extension:`,`moz-extension:`,`safari-web-extension:`]),Le=new Set([`http:`,`https:`,...Ie]),Re=(e,t,n,r)=>{let[,i,a,o,s]=e;if(i===void 0||a===void 0||o===void 0)return null;let c=t[i];return c?{columnNumber:o,fileName:c,functionName:s===void 0?void 0:r?.[s]||void 0,isIgnoreListed:n?.has(i)??!1,lineNumber:a+1}:null},ze=(e,t,n,r,i,a)=>{if(n<0||n>=e.length)return null;let o=e[n];if(!o||o.length===0)return null;let s=null,c=0,l=o.length-1;for(;c<=l;){let e=c+l>>1;o[e][0]<=r?(s=o[e],c=e+1):l=e-1}return!s||s.length<4?null:Re(s,t,i,a)},S=(e,t,n)=>{if(e.sections){let r=t-1,i=null;for(let t of e.sections)if(r>t.offset.line||r===t.offset.line&&n>=t.offset.column)i=t;else break;if(!i)return null;let a=r-i.offset.line,o=r===i.offset.line?n-i.offset.column:n;return ze(i.map.mappings,i.map.sources,a,o,i.map.ignoredSourceIndices,i.map.names)}return ze(e.mappings,e.sources,t-1,n,e.ignoredSourceIndices,e.names)},Be=(e,t,n,r,i)=>{if(!n)return null;let a=n.indexOf(r);if(a===-1)return null;let o=null;for(let r of e)for(let e of r){if(e[4]!==a)continue;let r=Re(e,t,i,n);if(r){if(!r.isIgnoreListed)return r;o??=r}}return o},Ve=(e,t)=>{if(e.sections){let n=null;for(let r of e.sections){let e=Be(r.map.mappings,r.map.sources,r.map.names,t,r.map.ignoredSourceIndices);if(e){if(!e.isIgnoreListed)return e;n??=e}}return n}return Be(e.mappings,e.sources,e.names,t,e.ignoredSourceIndices)},He=(e,t,n)=>{if(!t)return null;let r=e.indexOf(n);return r===-1?null:t[r]??null},C=(e,t)=>{let n=He(e.sources,e.sourcesContent,t);if(n!==null)return n;if(!e.sections)return null;for(let n of e.sections){let e=He(n.map.sources,n.map.sourcesContent,t);if(e!==null)return e}return null},w=(e,t)=>{if(x.test(e))return e;try{return new URL(e,t).toString()}catch{try{return new URL(e).toString()}catch{try{let n=new URL(e,new URL(t,`https://bippy.invalid/`));return`${n.pathname}${n.search}${n.hash}`}catch{return null}}}},Ue=e=>{try{let t=new URL(e),n=t.pathname.lastIndexOf(`.bundle`);if(n===-1)return null;let r=t.pathname.slice(n+7);if(r&&!r.startsWith(`//&`))return null;if(t.pathname=`${t.pathname.slice(0,n)}.map`,r){let e=new URLSearchParams(r.slice(3));for(let[n,r]of e)t.searchParams.set(n,r)}return t.hash=``,t.toString()}catch{return null}},We=(e,t,n)=>{let r=n.headers.get(`sourcemap`)??n.headers.get(`x-sourcemap`);if(r)return w(r.trim(),e);let i,a=t.length;for(;a>0&&!i;){let e=t.lastIndexOf(`
14
- `,a-1)+1,n=t.slice(e,a).match(Ae);n&&(i=n[1]||n[2]),a=e-1}return i?w(i,e):Ue(e)},T=e=>{if(typeof e!=`object`||!e)return!1;let t=Reflect.get(e,`version`),n=Reflect.get(e,`mappings`),r=Reflect.get(e,`file`),i=Reflect.get(e,`names`),a=Reflect.get(e,`sourceRoot`),o=Reflect.get(e,`sources`),s=Reflect.get(e,`sourcesContent`),c=Reflect.get(e,`ignoreList`),l=Reflect.get(e,`x_google_ignoreList`);if(t!==3||typeof n!=`string`||r!==void 0&&typeof r!=`string`||i!==void 0&&(!Array.isArray(i)||i.some(e=>typeof e!=`string`))||a!==void 0&&typeof a!=`string`||s!==void 0&&(!Array.isArray(s)||s.some(e=>typeof e!=`string`&&e!==null))||c!==void 0&&(!Array.isArray(c)||c.some(e=>!Number.isInteger(e)||e<0))||l!==void 0&&(!Array.isArray(l)||l.some(e=>!Number.isInteger(e)||e<0))||!Array.isArray(o)||o.some(e=>typeof e!=`string`)||s&&s.length!==o.length)return!1;let u=o.length;return[...c??[],...l??[]].every(e=>e<u)},Ge=e=>{if(typeof e!=`object`||!e)return!1;let t=Reflect.get(e,`version`),n=Reflect.get(e,`sections`);return t!==3||!Array.isArray(n)?!1:n.every(e=>{if(typeof e!=`object`||!e)return!1;let t=Reflect.get(e,`map`),n=Reflect.get(e,`url`),r=Reflect.get(e,`offset`);if(typeof r!=`object`||!r)return!1;let i=Reflect.get(r,`column`),a=Reflect.get(r,`line`);return T(t)!==(typeof n==`string`&&n.length>0)&&typeof i==`number`&&Number.isInteger(i)&&i>=0&&typeof a==`number`&&Number.isInteger(a)&&a>=0})},Ke=e=>{let t=e.ignoreList??e.x_google_ignoreList;return t?.length?new Set(t):void 0},qe=(e,t,n)=>{if(!e||p.test(t)||t.startsWith(`/`))return t;let r=e.endsWith(`/`)?e:`${e}/`,i=t.replace(/^\.\//,``);try{let e=p.test(r)?r:new URL(r,n).toString();return new URL(i,e).toString()}catch{let e=`${r}${i}`.split(`/`),t=[];for(let n of e)n===`..`?t.pop():n!==`.`&&t.push(n);return t.join(`/`)}},Je=(e,t)=>e.sources.map(n=>qe(e.sourceRoot,n,t)),Ye=e=>x.test(e)?void 0:e,Xe=(e,t)=>{try{return{file:e.file,ignoredSourceIndices:Ke(e),mappings:De(e.mappings),names:e.names,sourceMapUrl:Ye(t),sourceRoot:e.sourceRoot,sources:Je(e,t),sourcesContent:e.sourcesContent,version:3}}catch{return null}},Ze=async(e,t,n)=>{let r=[],i=-1,a=-1;for(let o of e.sections){if(o.offset.line<i||o.offset.line===i&&o.offset.column<=a)return null;i=o.offset.line,a=o.offset.column;let e=o.url?w(o.url,t):null,s=o.map??(e?await n(e):null);if(!s)return null;let c=e??t;try{r.push({map:{...s,ignoredSourceIndices:Ke(s),mappings:De(s.mappings),sources:Je(s,c)},offset:o.offset})}catch{return null}}let o=new Set;for(let e of r)for(let t of e.map.sources)o.add(t);return{file:e.file,mappings:[],names:[],sections:r,sourceMapUrl:Ye(t),sourceRoot:void 0,sources:Array.from(o),sourcesContent:void 0,version:3}},Qe=(e,t=!1)=>{if(!e)return!1;let n=e.trim();if(!n)return!1;let r=n.match(p);if(!r)return!0;let i=r[0].toLowerCase();return t||Le.has(i)},$e=()=>typeof window>`u`&&typeof process<`u`&&typeof process.versions?.node==`string`,et=e=>{try{let t=new URL(e);return(t.protocol===`http:`||t.protocol===`https:`)&&!t.username&&!t.password}catch{return!1}},E=e=>{try{return new URL(e).protocol}catch{return null}},D=e=>{let t=E(e);return t!==null&&Ie.has(t)},tt=(e,t)=>{try{let n=new URL(e),r=new URL(t);return n.protocol===r.protocol&&n.host===r.host}catch{return!1}},nt=(e,t,n,r)=>{if(x.test(t))return!0;if(!Qe(t,r))return!1;let i=E(e),a=E(t),o=i!==null&&!Le.has(i)||a!==null&&!Le.has(a);return!(n||o||D(e)||D(t))||tt(e,t)},rt=e=>e===408||e===425||e===429||e>=500,it=e=>{if(e.ok)return!0;if(rt(e.status))throw new Ne;return!1},at=(e,t,n)=>!n||t.url.length===0||tt(e,t.url),ot=e=>{if(e.timeoutMs===void 0||e.timeoutMs<0)return{cleanup:()=>{},signal:e.signal};let t=new AbortController,n=()=>t.abort(e.signal?.reason);e.signal?.aborted?n():e.signal?.addEventListener(`abort`,n,{once:!0});let r=setTimeout(()=>t.abort(new s(`Source map request timed out`)),e.timeoutMs);return{cleanup:()=>{clearTimeout(r),e.signal?.removeEventListener(`abort`,n)},signal:t.signal}},st=async(e,t)=>{let n=Number(e.headers.get(`content-length`));if(Number.isFinite(n)&&n>t)return null;if(!e.body){let n=await e.text();return new TextEncoder().encode(n).byteLength>t?null:n}let r=e.body.getReader(),i=new TextDecoder,a=[],o=0;try{for(;;){let{done:e,value:n}=await r.read();if(e)break;if(o+=n.byteLength,o>t)return await r.cancel(),null;a.push(i.decode(n,{stream:!0}))}return a.push(i.decode()),a.join(``)}finally{r.releaseLock()}},ct=e=>{try{if(typeof globalThis.atob==`function`)return new TextDecoder().decode(Uint8Array.from(globalThis.atob(e),e=>e.charCodeAt(0)))}catch{return null}let t=e.replace(/\s/g,``).replace(/=+$/,``),n=[],r=0,i=0;for(let e of t){let t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`.indexOf(e);if(t===-1)return null;r=r*64+t,i+=6,i>=8&&(i-=8,n.push(Math.floor(r/2**i)&255),r%=2**i)}return new TextDecoder().decode(Uint8Array.from(n))},lt=(e,t)=>{let n=e.indexOf(`,`);if(n===-1)return null;let r=e.slice(0,n),i=e.slice(n+1);if(i.length>t*2)return null;try{let e=r.toLowerCase().includes(`;base64`)?ct(i):decodeURIComponent(i);return e===null||new TextEncoder().encode(e).byteLength>t?null:JSON.parse(e)}catch{return null}},ut=async(e,t,n,r,i)=>{if(x.test(e))return lt(e,r);let a=await t(e,{redirect:i?`error`:`follow`,signal:n});if(!it(a)||!at(e,a,i))return null;let o=await st(a,r);if(o===null)return null;try{return JSON.parse(o)}catch{return null}},dt=async(e,t,n={})=>{let r=t!==void 0;if(!Qe(e,r))return null;let i=$e(),a=(i||D(e))&&!n.allowCrossOriginSourceMap;if(i&&!t&&(!n.allowUnsafeServerFetch||!et(e)))return null;let o=t??(typeof globalThis.fetch==`function`?globalThis.fetch.bind(globalThis):void 0);if(!o)return null;let s=n.maxBundleSizeBytes??26214400,c=n.maxSourceMapSizeBytes??104857600;if(s<0||c<0)return null;let l=ot(n);try{let t=await o(e,{redirect:a?`error`:`follow`,signal:l.signal});if(!it(t)||!at(e,t,a))return null;let n=await st(t,s);if(n===null)return null;let i=We(e,n,t);if(!i||!nt(e,i,a,r))return null;let u=await ut(i,o,l.signal,c,a);return T(u)?Xe(u,i):Ge(u)?Ze(u,i,async t=>{if(!nt(e,t,a,r))return null;let n=await ut(t,o,l.signal,c,a);return T(n)?n:null}):null}finally{l.cleanup()}},ft=(e,t,n)=>{if(!n)return t;let r=e.get(n);return r||(r=new Map,e.set(n,r)),r},pt=e=>ft(Me,je,e),mt=e=>ft(Fe,Pe,e),ht=(e,t)=>t.allowCrossOriginSourceMap===void 0&&t.allowUnsafeServerFetch===void 0&&t.maxBundleSizeBytes===void 0&&t.maxSourceMapSizeBytes===void 0&&t.timeoutMs===void 0?e:`${e}\0${t.allowCrossOriginSourceMap??``}\0${t.allowUnsafeServerFetch??``}\0${t.maxBundleSizeBytes??``}\0${t.maxSourceMapSizeBytes??``}\0${t.timeoutMs??``}`,O=async(e,t=!0,n,r={})=>{let i=t&&r.signal===void 0,a=pt(n),o=mt(n),s=ht(e,r);if(i&&a.has(s))return a.get(s)??null;let c=i?o.get(s):void 0;if(c)return(await c).sourceMap;let l=dt(e,n,r).then(e=>({sourceMap:e,isTransientFailure:!1}),()=>({sourceMap:null,isTransientFailure:!0}));i&&o.set(s,l);let{sourceMap:u,isTransientFailure:d}=await l;return i&&(o.delete(s),d||a.set(s,u)),u},k=async(e,t=!0,n,r={})=>Promise.all(e.map(async e=>{if(!e.fileName)return e;let i=await O(e.fileName,t,n,r);if(!i||typeof e.lineNumber!=`number`||typeof e.columnNumber!=`number`)return e;let a=S(i,e.lineNumber,e.columnNumber);return a?{...e,source:a.fileName&&e.source?e.source.replace(e.fileName,a.fileName):e.source,fileName:a.fileName,functionName:a.functionName??e.functionName,lineNumber:a.lineNumber,columnNumber:a.columnNumber,isIgnoreListed:a.isIgnoreListed,isSymbolicated:!0}:e})),A=e=>e._debugStack instanceof Error&&typeof e._debugStack?.stack==`string`,gt=e=>`tag`in e&&typeof e.tag==`number`,j=e=>{let t=null;if(c(e,n=>{if(n===e)return!1;let r=n._debugOwner;return(r===e||e.alternate!==null&&r===e.alternate)&&n._debugStack instanceof Error&&(t=n._debugStack,!0)}),!t)return null;let{frames:n,isTrusted:r}=v(t);if(!r)return null;for(let e=n.length-1;e>=0;e--){let t=n[e];if(t.fileName)return{...t,lineNumber:t.enclosingLineNumber||t.lineNumber,columnNumber:t.enclosingColumnNumber||t.columnNumber}}return null},_t=()=>{let e=[];for(let t of ye())e.push({currentDispatcherRef:t,value:be(t)}),y(t,null);return e},vt=e=>{for(let{currentDispatcherRef:t,value:n}of e)y(t,n)},M=e=>`\n in ${e}`,yt=(e,t,n)=>{if(n){let t=St(n.stack??``),r=t.lastIndexOf(`
15
- `),i=r===-1?t:t.slice(r+1);if(i.includes(e))return`\n${i}`}return M(`${e}${t?` [${t}]`:``}`)};let N=!1;const P=new WeakMap,F=(e,t)=>{if(!e||N)return``;let n=P.get(e);if(n!==void 0)return n;let r=se();g(void 0),N=!0;let i=_t(),a=console.error,o=console.warn;console.error=()=>{},console.warn=()=>{};try{let n={DetermineComponentFrameRoot(){let n;try{if(t){let t=function(){throw Error()};Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}});try{Reflect.construct(t,[])}catch(e){n=e}Reflect.construct(e,[],t)}else{try{throw Error()}catch(e){n=e}let t=Function.prototype.apply.call(e,void 0,[]);typeof t==`object`&&t&&`catch`in t&&typeof t.catch==`function`&&t.catch(()=>void 0)}}catch(e){if(e instanceof Error&&n instanceof Error&&typeof e.stack==`string`)return[e.stack,n.stack]}return[null,null]}};Object.defineProperty(n.DetermineComponentFrameRoot,"displayName",{value:`DetermineComponentFrameRoot`}),Object.getOwnPropertyDescriptor(n.DetermineComponentFrameRoot,`name`)?.configurable&&Object.defineProperty(n.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});let[r,i]=n.DetermineComponentFrameRoot();if(r&&i){let t=r.split(`
9
+ import{i as e,n as t,u as n}from"./rdt-hook.js";import{C as r,E as i,O as a,S as o,T as s,b as c,d as l,i as u,u as d,w as ee}from"./core.js";const f=/^[a-zA-Z][a-zA-Z\d+\-.]*:/,p=[`rsc://`,`file:///`,`webpack-internal://`,`webpack://`,`node:`,`turbopack://`,`metro://`,`/app-pages-browser/`,`/(app-pages-browser)/`],te=[`rsc://`,`about://React/`],ne=[`<anonymous>`,`eval`,``],re=/\.(cjs|cts|js|jsx|mdx|mjs|mts|ts|tsx)$/,ie=/(\.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,ae=/^\?[\w~.-]+(?:=[^&#]*)?(?:&[\w~.-]+(?:=[^&#]*)?)*$/,oe=/\[[^\]]+\]$/,m=[`react_stack_bottom_frame`,`react-stack-bottom-frame`],se=Error,ce=()=>se.prepareStackTrace,h=e=>{se.prepareStackTrace=e},le=/(^|@)\S+:\d+/,ue=/^\s*at .*(\S+:\d+|\(native\))/m,de=/^(eval@)?(\[native code\])?$/,g=(e,t)=>{if(t?.includeInElement!==!1){let t=e.split(`
10
+ `),n=[];for(let e of t)if(/^\s*at\s+/.test(e)){let t=pe(e)[0];t&&n.push(t)}else if(/^\s*in\s+/.test(e)){let t=e.replace(/^\s*in\s+/,``).replace(/\s*(?:\(at .*\)|\[[^\]]+\])$/,``);n.push({functionName:t,source:e})}else if(e.match(le)){let t=me(e)[0];t&&n.push(t)}return n}return e.match(ue)?pe(e):me(e)},fe=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]},pe=e=>e.split(`
11
+ `).filter(e=>!!e.match(ue)).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=fe(r?r[1]:n);return{functionName:r&&n||void 0,fileName:[`eval`,`<anonymous>`,`(native)`].includes(i[0])?void 0:i[0],lineNumber:i[1]?+i[1]:void 0,columnNumber:i[2]?+i[2]:void 0,source:t}}),me=e=>e.split(`
12
+ `).filter(e=>!e.match(de)).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=fe(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}}}),he=new WeakMap,ge=e=>m.some(t=>e.includes(t)),_e=e=>{let t=e.getFunctionName?.()??``;if(t)return t;let n=e.getTypeName?.()??``,r=e.getMethodName?.()??``;return n&&r?`${n}.${r}`:r},ve=e=>{let t=[];for(let n=1;n<e.length;n++){let r=e[n],i=_e(r);if(ge(i))return{frames:t,isTrusted:!0};if(r.isNative?.()){t.push({functionName:i||void 0});continue}let a=r.getScriptNameOrSourceURL?.()??``;!a&&r.isEval?.()&&(a=r.getEvalOrigin?.()??``),t.push({functionName:i&&i!==`<anonymous>`?i:void 0,fileName:a&&a!==`<anonymous>`?a:void 0,lineNumber:r.getLineNumber?.()??void 0,columnNumber:r.getColumnNumber?.()??void 0,enclosingLineNumber:r.getEnclosingLineNumber?.()??void 0,enclosingColumnNumber:r.getEnclosingColumnNumber?.()??void 0,source:` at ${r.toString()}`})}return{frames:t,isTrusted:!1}},ye=e=>{let t=-1;for(let n of m)if(t=e.indexOf(n),t!==-1)break;let n=t===-1?e:e.slice(0,e.lastIndexOf(`
13
+ `,t));return{frames:g(n).slice(1),isTrusted:t!==-1}},_=e=>{let t=he.get(e);if(t)return t;let n=null,r=(e,t)=>{n=ve(t);let r=`${e.name||`Error`}: ${e.message||``}`;for(let e of t)r+=`\n at ${e.toString()}`;return r},i=ce();h(r);let a;try{a=String(e.stack)}finally{h(i)}let o=n??ye(a);return he.set(e,o),o},be=(r=globalThis)=>{let i=e(void 0,r),a=n(i.renderers)?i.renderers.values():[],o=r===globalThis?new Set([...t,...a]):new Set(a),s=[],c=new Set;for(let e of o){let t=e.currentDispatcherRef;!t||c.has(t)||(c.add(t),s.push(t))}return s},xe=e=>`H`in e?e.H:e.current,v=(e,t)=>{`H`in e?e.H=t:e.current=t};var Se=44,Ce=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,we=new Uint8Array(64),Te=new Uint8Array(128);for(let e=0;e<Ce.length;e++){let t=Ce.charCodeAt(e);we[e]=t,Te[t]=e}function y(e,t){let n=0,r=0,i=0;do i=Te[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 Ee(e,t){return e.pos>=t?!1:e.peek()!==Se}var De=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 Oe(e){let{length:t}=e,n=new De(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=y(n,i),i<u&&(l=!1),u=i,Ee(n,e)?(a=y(n,a),o=y(n,o),s=y(n,s),Ee(n,e)?(c=y(n,c),r=[i,a,o,s,c]):r=[i,a,o,s]):r=[i],t.push(r),n.pos++}l||ke(t),r.push(t),n.pos=e+1}while(n.pos<=t);return r}function ke(e){e.sort(Ae)}function Ae(e,t){return e[0]-t[0]}const b=/^data:application\/json(?:;[^,]*)?,/i,je=/(?:\/\/[@#][ \t]+sourceMappingURL=([^\s'"]+?)[ \t]*$)|(?:\/\*[@#][ \t]+sourceMappingURL=([^*]+?)[ \t]*(?:\*\/)[ \t]*$)/,Me=new Map,Ne=new WeakMap;var Pe=class extends Error{};const Fe=new Map,Ie=new WeakMap,Le=new Set([`chrome-extension:`,`moz-extension:`,`safari-web-extension:`]),x=new Set([`http:`,`https:`,...Le]),Re=(e,t,n,r)=>{let[,i,a,o,s]=e;if(i===void 0||a===void 0||o===void 0)return null;let c=t[i];return c?{columnNumber:o,fileName:c,functionName:s===void 0?void 0:r?.[s]||void 0,isIgnoreListed:n?.has(i)??!1,lineNumber:a+1}:null},ze=(e,t,n,r,i,a)=>{if(n<0||n>=e.length)return null;let o=e[n];if(!o||o.length===0)return null;let s=null,c=0,l=o.length-1;for(;c<=l;){let e=c+l>>1;o[e][0]<=r?(s=o[e],c=e+1):l=e-1}return!s||s.length<4?null:Re(s,t,i,a)},S=(e,t,n)=>{if(e.sections){let r=t-1,i=null;for(let t of e.sections)if(r>t.offset.line||r===t.offset.line&&n>=t.offset.column)i=t;else break;if(!i)return null;let a=r-i.offset.line,o=r===i.offset.line?n-i.offset.column:n;return ze(i.map.mappings,i.map.sources,a,o,i.map.ignoredSourceIndices,i.map.names)}return ze(e.mappings,e.sources,t-1,n,e.ignoredSourceIndices,e.names)},Be=(e,t,n,r,i)=>{if(!n)return null;let a=n.indexOf(r);if(a===-1)return null;let o=null;for(let r of e)for(let e of r){if(e[4]!==a)continue;let r=Re(e,t,i,n);if(r){if(!r.isIgnoreListed)return r;o??=r}}return o},Ve=(e,t)=>{if(e.sections){let n=null;for(let r of e.sections){let e=Be(r.map.mappings,r.map.sources,r.map.names,t,r.map.ignoredSourceIndices);if(e){if(!e.isIgnoreListed)return e;n??=e}}return n}return Be(e.mappings,e.sources,e.names,t,e.ignoredSourceIndices)},He=(e,t,n)=>{if(!t)return null;let r=e.indexOf(n);return r===-1?null:t[r]??null},C=(e,t)=>{let n=He(e.sources,e.sourcesContent,t);if(n!==null)return n;if(!e.sections)return null;for(let n of e.sections){let e=He(n.map.sources,n.map.sourcesContent,t);if(e!==null)return e}return null},w=(e,t)=>{if(b.test(e))return e;try{return new URL(e,t).toString()}catch{try{return new URL(e).toString()}catch{try{let n=new URL(e,new URL(t,`https://bippy.invalid/`));return`${n.pathname}${n.search}${n.hash}`}catch{return null}}}},Ue=e=>{try{let t=new URL(e),n=t.pathname.lastIndexOf(`.bundle`);if(n===-1)return null;let r=t.pathname.slice(n+7);if(r&&!r.startsWith(`//&`))return null;if(t.pathname=`${t.pathname.slice(0,n)}.map`,r){let e=new URLSearchParams(r.slice(3));for(let[n,r]of e)t.searchParams.set(n,r)}return t.hash=``,t.toString()}catch{return null}},We=(e,t,n)=>{let r=n.headers.get(`sourcemap`)??n.headers.get(`x-sourcemap`);if(r)return w(r.trim(),e);let i,a=t.length;for(;a>0&&!i;){let e=t.lastIndexOf(`
14
+ `,a-1)+1,n=t.slice(e,a).match(je);n&&(i=n[1]||n[2]),a=e-1}return i?w(i,e):Ue(e)},T=e=>{if(typeof e!=`object`||!e)return!1;let t=Reflect.get(e,`version`),n=Reflect.get(e,`mappings`),r=Reflect.get(e,`file`),i=Reflect.get(e,`names`),a=Reflect.get(e,`sourceRoot`),o=Reflect.get(e,`sources`),s=Reflect.get(e,`sourcesContent`),c=Reflect.get(e,`ignoreList`),l=Reflect.get(e,`x_google_ignoreList`);if(t!==3||typeof n!=`string`||r!==void 0&&typeof r!=`string`||i!==void 0&&(!Array.isArray(i)||i.some(e=>typeof e!=`string`))||a!==void 0&&typeof a!=`string`||s!==void 0&&(!Array.isArray(s)||s.some(e=>typeof e!=`string`&&e!==null))||c!==void 0&&(!Array.isArray(c)||c.some(e=>!Number.isInteger(e)||e<0))||l!==void 0&&(!Array.isArray(l)||l.some(e=>!Number.isInteger(e)||e<0))||!Array.isArray(o)||o.some(e=>typeof e!=`string`)||s&&s.length!==o.length)return!1;let u=o.length;return[...c??[],...l??[]].every(e=>e<u)},Ge=e=>{if(typeof e!=`object`||!e)return!1;let t=Reflect.get(e,`version`),n=Reflect.get(e,`sections`);return t!==3||!Array.isArray(n)?!1:n.every(e=>{if(typeof e!=`object`||!e)return!1;let t=Reflect.get(e,`map`),n=Reflect.get(e,`url`),r=Reflect.get(e,`offset`);if(typeof r!=`object`||!r)return!1;let i=Reflect.get(r,`column`),a=Reflect.get(r,`line`);return T(t)!==(typeof n==`string`&&n.length>0)&&typeof i==`number`&&Number.isInteger(i)&&i>=0&&typeof a==`number`&&Number.isInteger(a)&&a>=0})},Ke=e=>{let t=e.ignoreList??e.x_google_ignoreList;return t?.length?new Set(t):void 0},qe=(e,t,n)=>{if(!e||f.test(t)||t.startsWith(`/`))return t;let r=e.endsWith(`/`)?e:`${e}/`,i=t.replace(/^\.\//,``);try{let e=f.test(r)?r:new URL(r,n).toString();return new URL(i,e).toString()}catch{let e=`${r}${i}`.split(`/`),t=[];for(let n of e)n===`..`?t.pop():n!==`.`&&t.push(n);return t.join(`/`)}},Je=(e,t)=>e.sources.map(n=>qe(e.sourceRoot,n,t)),Ye=e=>b.test(e)?void 0:e,Xe=(e,t)=>{try{return{file:e.file,ignoredSourceIndices:Ke(e),mappings:Oe(e.mappings),names:e.names,sourceMapUrl:Ye(t),sourceRoot:e.sourceRoot,sources:Je(e,t),sourcesContent:e.sourcesContent,version:3}}catch{return null}},Ze=async(e,t,n)=>{let r=[],i=-1,a=-1;for(let o of e.sections){if(o.offset.line<i||o.offset.line===i&&o.offset.column<=a)return null;i=o.offset.line,a=o.offset.column;let e=o.url?w(o.url,t):null,s=o.map??(e?await n(e):null);if(!s)return null;let c=e??t;try{r.push({map:{...s,ignoredSourceIndices:Ke(s),mappings:Oe(s.mappings),sources:Je(s,c)},offset:o.offset})}catch{return null}}let o=new Set;for(let e of r)for(let t of e.map.sources)o.add(t);return{file:e.file,mappings:[],names:[],sections:r,sourceMapUrl:Ye(t),sourceRoot:void 0,sources:Array.from(o),sourcesContent:void 0,version:3}},Qe=(e,t=!1)=>{if(!e)return!1;let n=e.trim();if(!n)return!1;let r=n.match(f);if(!r)return!0;let i=r[0].toLowerCase();return t||x.has(i)},$e=()=>typeof window>`u`&&typeof process<`u`&&typeof process.versions?.node==`string`,et=e=>{try{let t=new URL(e);return(t.protocol===`http:`||t.protocol===`https:`)&&!t.username&&!t.password}catch{return!1}},E=e=>{try{return new URL(e).protocol}catch{return null}},D=e=>{let t=E(e);return t!==null&&Le.has(t)},tt=(e,t)=>{try{let n=new URL(e),r=new URL(t);return n.protocol===r.protocol&&n.host===r.host}catch{return!1}},nt=(e,t,n,r)=>{if(b.test(t))return!0;if(!Qe(t,r))return!1;let i=E(e),a=E(t),o=i!==null&&!x.has(i)||a!==null&&!x.has(a);return!(n||o||D(e)||D(t))||tt(e,t)},rt=e=>e===408||e===425||e===429||e>=500,it=e=>{if(e.ok)return!0;if(rt(e.status))throw new Pe;return!1},at=(e,t,n)=>!n||t.url.length===0||tt(e,t.url),ot=e=>{if(e.timeoutMs===void 0||e.timeoutMs<0)return{cleanup:()=>{},signal:e.signal};let t=new AbortController,n=()=>t.abort(e.signal?.reason);e.signal?.aborted?n():e.signal?.addEventListener(`abort`,n,{once:!0});let r=setTimeout(()=>t.abort(new s(`Source map request timed out`)),e.timeoutMs);return{cleanup:()=>{clearTimeout(r),e.signal?.removeEventListener(`abort`,n)},signal:t.signal}},st=async(e,t)=>{let n=Number(e.headers.get(`content-length`));if(Number.isFinite(n)&&n>t)return null;if(!e.body){let n=await e.text();return new TextEncoder().encode(n).byteLength>t?null:n}let r=e.body.getReader(),i=new TextDecoder,a=[],o=0;try{for(;;){let{done:e,value:n}=await r.read();if(e)break;if(o+=n.byteLength,o>t)return await r.cancel(),null;a.push(i.decode(n,{stream:!0}))}return a.push(i.decode()),a.join(``)}finally{r.releaseLock()}},ct=e=>{try{if(typeof globalThis.atob==`function`)return new TextDecoder().decode(Uint8Array.from(globalThis.atob(e),e=>e.charCodeAt(0)))}catch{return null}let t=e.replace(/\s/g,``).replace(/=+$/,``),n=[],r=0,i=0;for(let e of t){let t=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`.indexOf(e);if(t===-1)return null;r=r*64+t,i+=6,i>=8&&(i-=8,n.push(Math.floor(r/2**i)&255),r%=2**i)}return new TextDecoder().decode(Uint8Array.from(n))},lt=(e,t)=>{let n=e.indexOf(`,`);if(n===-1)return null;let r=e.slice(0,n),i=e.slice(n+1);if(i.length>t*2)return null;try{let e=r.toLowerCase().includes(`;base64`)?ct(i):decodeURIComponent(i);return e===null||new TextEncoder().encode(e).byteLength>t?null:JSON.parse(e)}catch{return null}},ut=async(e,t,n,r,i)=>{if(b.test(e))return lt(e,r);let a=await t(e,{redirect:i?`error`:`follow`,signal:n});if(!it(a)||!at(e,a,i))return null;let o=await st(a,r);if(o===null)return null;try{return JSON.parse(o)}catch{return null}},dt=async(e,t,n={})=>{let r=t!==void 0;if(!Qe(e,r))return null;let i=$e(),a=(i||D(e))&&!n.allowCrossOriginSourceMap;if(i&&!t&&(!n.allowUnsafeServerFetch||!et(e)))return null;let o=t??(typeof globalThis.fetch==`function`?globalThis.fetch.bind(globalThis):void 0);if(!o)return null;let s=n.maxBundleSizeBytes??26214400,c=n.maxSourceMapSizeBytes??104857600;if(s<0||c<0)return null;let l=ot(n);try{let t=await o(e,{redirect:a?`error`:`follow`,signal:l.signal});if(!it(t)||!at(e,t,a))return null;let n=await st(t,s);if(n===null)return null;let i=We(e,n,t);if(!i||!nt(e,i,a,r))return null;let u=await ut(i,o,l.signal,c,a);return T(u)?Xe(u,i):Ge(u)?Ze(u,i,async t=>{if(!nt(e,t,a,r))return null;let n=await ut(t,o,l.signal,c,a);return T(n)?n:null}):null}finally{l.cleanup()}},ft=(e,t,n)=>{if(!n)return t;let r=e.get(n);return r||(r=new Map,e.set(n,r)),r},pt=e=>ft(Ne,Me,e),mt=e=>ft(Ie,Fe,e),ht=(e,t)=>t.allowCrossOriginSourceMap===void 0&&t.allowUnsafeServerFetch===void 0&&t.maxBundleSizeBytes===void 0&&t.maxSourceMapSizeBytes===void 0&&t.timeoutMs===void 0?e:`${e}\0${t.allowCrossOriginSourceMap??``}\0${t.allowUnsafeServerFetch??``}\0${t.maxBundleSizeBytes??``}\0${t.maxSourceMapSizeBytes??``}\0${t.timeoutMs??``}`,O=async(e,t=!0,n,r={})=>{let i=t&&r.signal===void 0,a=pt(n),o=mt(n),s=ht(e,r);if(i&&a.has(s))return a.get(s)??null;let c=i?o.get(s):void 0;if(c)return(await c).sourceMap;let l=dt(e,n,r).then(e=>({sourceMap:e,isTransientFailure:!1}),()=>({sourceMap:null,isTransientFailure:!0}));i&&o.set(s,l);let{sourceMap:u,isTransientFailure:d}=await l;return i&&(o.delete(s),d||a.set(s,u)),u},k=async(e,t=!0,n,r={})=>Promise.all(e.map(async e=>{if(!e.fileName)return e;let i=await O(e.fileName,t,n,r);if(!i||typeof e.lineNumber!=`number`||typeof e.columnNumber!=`number`)return e;let a=S(i,e.lineNumber,e.columnNumber);return a?{...e,source:a.fileName&&e.source?e.source.replace(e.fileName,a.fileName):e.source,fileName:a.fileName,functionName:a.functionName??e.functionName,lineNumber:a.lineNumber,columnNumber:a.columnNumber,isIgnoreListed:a.isIgnoreListed,isSymbolicated:!0}:e})),A=e=>e._debugStack instanceof Error&&typeof e._debugStack?.stack==`string`,gt=e=>`tag`in e&&typeof e.tag==`number`,j=e=>{let t=null;if(c(e,n=>{if(n===e)return!1;let r=n._debugOwner;return(r===e||e.alternate!==null&&r===e.alternate)&&n._debugStack instanceof Error&&(t=n._debugStack,!0)}),!t)return null;let{frames:n,isTrusted:r}=_(t);if(!r)return null;for(let e=n.length-1;e>=0;e--){let t=n[e];if(t.fileName)return{...t,lineNumber:t.enclosingLineNumber||t.lineNumber,columnNumber:t.enclosingColumnNumber||t.columnNumber}}return null},_t=()=>{let e=[];for(let t of be())e.push({currentDispatcherRef:t,value:xe(t)}),v(t,null);return e},vt=e=>{for(let{currentDispatcherRef:t,value:n}of e)v(t,n)},M=e=>`\n in ${e}`,yt=(e,t,n)=>{if(n){let t=St(n.stack??``),r=t.lastIndexOf(`
15
+ `),i=r===-1?t:t.slice(r+1);if(i.includes(e))return`\n${i}`}return M(`${e}${t?` [${t}]`:``}`)};let N=!1;const P=new WeakMap,F=(e,t)=>{if(!e||N)return``;let n=P.get(e);if(n!==void 0)return n;let r=ce();h(void 0),N=!0;let i=_t(),a=console.error,o=console.warn;console.error=()=>{},console.warn=()=>{};try{let n={DetermineComponentFrameRoot(){let n;try{if(t){let t=function(){throw Error()};Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}});try{Reflect.construct(t,[])}catch(e){n=e}Reflect.construct(e,[],t)}else{try{throw Error()}catch(e){n=e}let t=Function.prototype.apply.call(e,void 0,[]);typeof t==`object`&&t&&`catch`in t&&typeof t.catch==`function`&&t.catch(()=>void 0)}}catch(e){if(e instanceof Error&&n instanceof Error&&typeof e.stack==`string`)return[e.stack,n.stack]}return[null,null]}};Object.defineProperty(n.DetermineComponentFrameRoot,"displayName",{value:`DetermineComponentFrameRoot`}),Object.getOwnPropertyDescriptor(n.DetermineComponentFrameRoot,`name`)?.configurable&&Object.defineProperty(n.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});let[r,i]=n.DetermineComponentFrameRoot();if(r&&i){let t=r.split(`
16
16
  `),n=i.split(`
17
- `),a=0,o=0;for(;a<t.length&&!t[a].includes(`DetermineComponentFrameRoot`);)a++;for(;o<n.length&&!n[o].includes(`DetermineComponentFrameRoot`);)o++;if(a===t.length||o===n.length)for(a=t.length-1,o=n.length-1;a>=1&&o>=0&&t[a]!==n[o];)o--;for(;a>=1&&o>=0;a--,o--)if(t[a]!==n[o]){if(a!==1||o!==1)do if(a--,o--,o<0||t[a]!==n[o]){let n=`\n${t[a].replace(` at new `,` at `)}`,[r]=_(n);if(!r?.fileName)break;let i=u(e);return i&&n.includes(`<anonymous>`)&&(n=n.replace(`<anonymous>`,i)),P.set(e,n),n}while(a>=1&&o>=0);break}}}finally{N=!1,g(r),vt(i),console.error=a,console.warn=o}let s=u(e),c=s?M(s):``;return P.set(e,c),c},bt=(e,t)=>{let n=``,r=a(e);switch(e.tag){case r.ActivityComponent:n=M(`Activity`);break;case r.ClassComponent:n=F(e.type,!0);break;case r.ForwardRef:n=F(l(e.type)??e.type,!1);break;case r.FunctionComponent:case r.SimpleMemoComponent:n=F(l(e.type)??e.type,!1);break;case r.HostComponent:case r.HostHoistable:case r.HostSingleton:typeof e.type==`string`&&(n=M(e.type));break;case r.LazyComponent:n=M(`Lazy`);break;case r.SuspenseComponent:n=e.child!==t&&t!==null?M(`Suspense Fallback`):M(`Suspense`);break;case r.SuspenseListComponent:n=M(`SuspenseList`);break;case r.ViewTransitionComponent:n=M(`ViewTransition`);break;default:return``}return n},xt=e=>{try{let t=``,n=e,r=null;do{t+=bt(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+=yt(r.name,r.env,r.debugLocation))}r=n,n=n.return}while(n);return t}catch(e){return e instanceof Error?`\nBippy couldn’t generate the stack: ${e.message}\n${e.stack}`:``}},St=e=>{let t=e;if(!t)return``;t.startsWith(`Error: react-stack-top-frame
17
+ `),a=0,o=0;for(;a<t.length&&!t[a].includes(`DetermineComponentFrameRoot`);)a++;for(;o<n.length&&!n[o].includes(`DetermineComponentFrameRoot`);)o++;if(a===t.length||o===n.length)for(a=t.length-1,o=n.length-1;a>=1&&o>=0&&t[a]!==n[o];)o--;for(;a>=1&&o>=0;a--,o--)if(t[a]!==n[o]){if(a!==1||o!==1)do if(a--,o--,o<0||t[a]!==n[o]){let n=`\n${t[a].replace(` at new `,` at `)}`,[r]=g(n);if(!r?.fileName)break;let i=u(e);return i&&n.includes(`<anonymous>`)&&(n=n.replace(`<anonymous>`,i)),P.set(e,n),n}while(a>=1&&o>=0);break}}}finally{N=!1,h(r),vt(i),console.error=a,console.warn=o}let s=u(e),c=s?M(s):``;return P.set(e,c),c},bt=(e,t)=>{let n=``,r=a(e);switch(e.tag){case r.ActivityComponent:n=M(`Activity`);break;case r.ClassComponent:n=F(e.type,!0);break;case r.ForwardRef:n=F(l(e.type)??e.type,!1);break;case r.FunctionComponent:case r.SimpleMemoComponent:n=F(l(e.type)??e.type,!1);break;case r.HostComponent:case r.HostHoistable:case r.HostSingleton:typeof e.type==`string`&&(n=M(e.type));break;case r.LazyComponent:n=M(`Lazy`);break;case r.SuspenseComponent:n=e.child!==t&&t!==null?M(`Suspense Fallback`):M(`Suspense`);break;case r.SuspenseListComponent:n=M(`SuspenseList`);break;case r.ViewTransitionComponent:n=M(`ViewTransition`);break;default:return``}return n},xt=e=>{try{let t=``,n=e,r=null;do{t+=bt(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+=yt(r.name,r.env,r.debugLocation))}r=n,n=n.return}while(n);return t}catch(e){return e instanceof Error?`\nBippy couldn’t generate the stack: ${e.message}\n${e.stack}`:``}},St=e=>{let t=e;if(!t)return``;t.startsWith(`Error: react-stack-top-frame
18
18
  `)&&(t=t.slice(29));let n=t.indexOf(`
19
- `);n!==-1&&(t=t.slice(n+1));let r=Math.max(...h.map(e=>t.indexOf(e)));if(r!==-1&&(r=t.lastIndexOf(`
20
- `,r)),r!==-1)t=t.slice(0,r);else return``;return t},Ct=e=>!!(e.functionName&&e.fileName&&Dt(e.fileName)),wt=(e,t)=>e.fileName===t.fileName&&e.lineNumber===t.lineNumber&&e.columnNumber===t.columnNumber,Tt=e=>{let t=new Map;for(let n of e){if(!Ct(n))continue;let e=n.functionName,r=t.get(e)??[];r.some(e=>wt(e,n))||(r.push(n),t.set(e,r))}return t},Et=(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(ae,`(${a.fileName}:${a.lineNumber}:${a.columnNumber})`)}},Dt=e=>ee.some(t=>e.startsWith(t)),Ot=e=>!e.isServer&&e.fileName&&Dt(e.fileName)?{...e,isServer:!0}:e,kt=e=>{let t=[],n=e;for(;n;)if(gt(n)){let e=n;if(n=e._debugOwner,n&&A(e)){let{frames:n,isTrusted:r}=v(e._debugStack);if(r)for(let e of n)t.push(Ot(e))}}else{let e=n;if(n=e.owner,n&&e.debugStack instanceof Error)for(let n of v(e.debugStack).frames)t.push({...n,isServer:!0})}return t},At=e=>{let t=[];return c(e,e=>{if(!A(e))return;let{frames:n,isTrusted:r}=v(e._debugStack);r&&t.push(...n)},!0),t},jt=e=>{let t=At(e),n=_(xt(e)),r=Tt(t),i=new Map;return n.map(e=>e.source!==void 0&&ae.test(e.source)?Et(e,r,i):e).filter((e,t,n)=>{if(t===0)return!0;let r=n[t-1];return e.functionName!==r.functionName})},I=async(e,t=!0,n,r={})=>k(jt(e),t,n,r),Mt=e=>!!e.fileName&&!e.isIgnoreListed,Nt=async(e,t=!0,n,r={})=>{let i=kt(e);if(i.length>0){let a=j(e)??{};a.functionName=u(e.type)??a.functionName;let o=await k([a,...i],t,n,r);if(o.some((e,t)=>t>0&&Mt(e)))return o}return I(e,t,n,r)},Pt=e=>{let t=e._debugSource;return t?typeof t==`object`&&typeof t.fileName==`string`&&t.fileName!==`(native)`&&typeof t.lineNumber==`number`:!1},L=e=>e.fileName?{fileName:e.fileName,lineNumber:e.lineNumber,columnNumber:e.columnNumber,functionName:e.functionName}:null,Ft=e=>{if(!A(e))return null;let{frames:t,isTrusted:n}=v(e._debugStack);if(!n)return null;for(let e of t)if(e.fileName)return e;return null},It=e=>{if(Pt(e))return e._debugSource;let t=Ft(e)??j(e);return t?L(t):null},Lt=async(e,t,n,r)=>{let i=u(e.type);if(!i)return null;let a=_(Error().stack??``),o=new Set;for(let e of a){let a=e.fileName;if(!a||o.has(a))continue;o.add(a);let s=await O(a,t,n,r);if(!s)continue;let c=Ve(s,i);if(c&&!c.isIgnoreListed)return L(c)}return null},Rt=async(e,t=!0,n,r={})=>{if(Pt(e))return e._debugSource;let i=It(e);if(i){let[e]=await k([{columnNumber:i.columnNumber,fileName:i.fileName,functionName:i.functionName,lineNumber:i.lineNumber}],t,n,r),a=L(e);if(a)return a}let a=await I(e,t,n,r);for(let e of a)if(e.fileName)return L(e);return Lt(e,t,n,r)},zt=e=>e.split(`/`).filter(Boolean).length,Bt=e=>{let t=e.indexOf(`/`,1);if(t===-1)return e;let n=e.slice(0,t);if(zt(n)!==1)return e;let r=e.slice(t);if(!ne.test(r))return e;let i=r.split(`/`).filter(Boolean);if(i.length<2)return e;let a=i[0];return a.startsWith(`@`)||a.length>4?e:r},Vt=e=>{if(!e||te.some(t=>t===e))return``;let t=e,n=/^[a-zA-Z]:[\\/]/.test(t);if(t.startsWith(`http://`)||t.startsWith(`https://`)){try{t=new URL(t).pathname}catch{}t=Bt(t)}if(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 r=!0;for(;r;){r=!1;for(let e of m)if(t.startsWith(e)){t=t.slice(e.length),e===`file:///`&&(t=`/${t.replace(/^\/+/,``)}`),r=!0;break}}if(!n){let e=t.match(p);e&&(t=t.slice(e[0].length))}if(t.startsWith(`//`)){let e=t.indexOf(`/`,2);t=e===-1?``:t.slice(e)}let i=t.indexOf(`?`);if(i!==-1){let e=t.slice(i);ie.test(e)&&(t=t.slice(0,i))}return t},Ht=e=>{let t=Vt(e);return!(!t||!ne.test(t)||re.test(t))},Ut=[/(?:^|export\s+)(?:const|let|var)\s+(\w+)\s*=/,/(?:^|export\s+)function\s+(\w+)/,/(?:^|export\s+)class\s+(\w+)/],Wt=e=>{for(let t of Ut){let n=e.match(t);if(n?.[1])return n[1]}return null},Gt=(e,t)=>{let n=e.split(`
21
- `),r=t-1;if(r<0||r>=n.length)return null;for(let e=0;e<=5;e++){let t=e===0?[r]:[r-e,r+e];for(let e of t){if(e<0||e>=n.length)continue;let t=Wt(n[e]);if(t)return t}}return null},Kt=async(e,t=!0,n,r={})=>{let i=j(e)??jt(e).find(e=>e.fileName);if(!i?.fileName)return u(e.type);let a=await O(i.fileName,t,n,r);if(!a)return u(e.type);let o=null;if(typeof i.lineNumber==`number`&&typeof i.columnNumber==`number`&&(o=S(a,i.lineNumber,i.columnNumber)),!o?.fileName||!o.lineNumber)return u(e.type);let s=C(a,o.fileName);return(s?Gt(s,o.lineNumber):null)||(o.functionName??u(e.type))},qt=Symbol.for(`react.context`),Jt=Symbol.for(`react.memo_cache_sentinel`),Yt=Symbol.for(`react.recoverable`);let R=[],z=null,B=null,V=null,H=null,U=0,W=null;const G=Error("Suspense interrupted this render. This error is an internal implementation detail of `use`."),K=e=>_(e.stack||``,{includeInElement:!1}),q=()=>{let e=V;return e!==null&&(V=e.next),e},J=e=>typeof e==`object`&&!!e&&`then`in e&&typeof e.then==`function`,Xt=e=>typeof e==`object`&&!!e&&`current`in e,Y=e=>typeof e==`object`&&!!e&&`_currentValue`in e,Zt=e=>typeof e==`object`&&!!e&&`context`in e&&`next`in e,Qt=e=>typeof e==`object`&&!!e&&`render`in e&&typeof e.render==`function`,X=e=>{if(B===null)return e._currentValue;if(H===null)throw new r(`Context reads don’t match context dependencies.`);if(Object.hasOwn(H,`memoizedValue`)){let e=H.memoizedValue;return H=H.next,e}return e._currentValue},Z=(e,t,n,r=null,i=null)=>{R.push({displayName:r,primitive:e,stackError:Error(),value:t,debugInfo:i,dispatcherHookName:n})},$t=e=>{if(typeof e==`object`&&e){if(J(e)){let t=W!==null&&U<W.length?W[U++]:e,n=J(t)?t:e;switch(n.status){case`fulfilled`:return Z(`Promise`,n.value,`Use`,null,n._debugInfo??null),n.value;case`rejected`:throw n.reason}throw Z(`Unresolved`,n,`Use`,null,n._debugInfo??null),G}if(`$$typeof`in e&&e.$$typeof===Yt){Z(`Recoverable`,void 0,`Use`);return}if(`$$typeof`in e&&e.$$typeof===qt&&Y(e)){let t={_currentValue:e._currentValue,displayName:typeof e.displayName==`string`?e.displayName:void 0},n=X(t);return Z(`Context (use)`,n,`Use`,t.displayName||`Context`),n}}throw new r(`use() received an unsupported value: `+String(e))},en=e=>{let t=X(e);return Z(`Context`,t,`Context`,e.displayName||null),t},tn=e=>{let t=q(),n=t===null?typeof e==`function`?e():e:t.memoizedState;return Z(`State`,n,`State`),[n,()=>{}]},nn=(e,t,n)=>{let r=q(),i=r===null?n===void 0?t:n(t):r.memoizedState;return Z(`Reducer`,i,`Reducer`),[i,()=>{}]},rn=e=>{let t=q(),n=Xt(t?.memoizedState)?t.memoizedState:{current:e};return Z(`Ref`,n.current,`Ref`),n},an=()=>{let e=q();return Z(`CacheRefresh`,e===null?()=>{}:e.memoizedState,`CacheRefresh`),()=>{}},on=e=>{q(),Z(`LayoutEffect`,e,`LayoutEffect`)},sn=e=>{q(),Z(`InsertionEffect`,e,`InsertionEffect`)},cn=e=>{q(),Z(`Effect`,e,`Effect`)},ln=e=>{q();let t=Xt(e)?e.current:void 0;Z(`ImperativeHandle`,t,`ImperativeHandle`)},un=(e,t)=>{Z(`DebugValue`,typeof t==`function`?t(e):e,`DebugValue`)},dn=e=>{let t=q();return Z(`Callback`,Array.isArray(t?.memoizedState)?t.memoizedState[0]:e,`Callback`),e},fn=e=>{let t=q(),n=Array.isArray(t?.memoizedState)?t.memoizedState[0]:e();return Z(`Memo`,n,`Memo`),n},pn=(e,t)=>{let n=q();q();let r=n===null?t():n.memoizedState;return Z(`SyncExternalStore`,r,`SyncExternalStore`),r},mn=()=>{let e=q();q();let t=e?.memoizedState===!0;return Z(`Transition`,t,`Transition`),[t,()=>{}]},hn=e=>{let t=q(),n=t===null?e:t.memoizedState;return Z(`DeferredValue`,n,`DeferredValue`),n},gn=()=>{let e=q(),t=typeof e?.memoizedState==`string`?e.memoizedState:``;return Z(`Id`,t,`Id`),t},_n=e=>{let t=B;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},()=>Jt)),n.index++,r},vn=e=>{let t=q(),n=t===null?e:t.memoizedState;return Z(`Optimistic`,n,`Optimistic`),[n,()=>{}]},yn=(e,t)=>{let n,r=null,i=null;if(e!==null){let t=e.memoizedState;if(J(t))switch(t.status){case`fulfilled`:n=t.value,r=t._debugInfo??null;break;case`rejected`:i=t.reason;break;default:i=G,n=t,r=t._debugInfo??null}else n=t}else n=t;return{value:n,debugInfo:r,error:i}},bn=e=>(t,n)=>{let r=q();q(),q();let{value:i,debugInfo:a,error:o}=yn(r,n);if(Z(e,i,e,null,a),o!==null)throw o;return[i,()=>{},!1]},xn=bn(`ActionState`),Q={readContext:X,use:$t,useCallback:dn,useContext:en,useEffect:cn,useImperativeHandle:ln,useLayoutEffect:on,useInsertionEffect:sn,useMemo:fn,useReducer:nn,useRef:rn,useState:tn,useDebugValue:un,useDeferredValue:hn,useTransition:mn,useSyncExternalStore:pn,useId:gn,useHostTransitionStatus:()=>{let e=X({_currentValue:null});return Z(`HostTransitionStatus`,e,`HostTransitionStatus`),e},useFormState:bn(`FormState`),useActionState:xn,useOptimistic:vn,useMemoCache:_n,useCacheRefresh:an,useEffectEvent:e=>(q(),Z(`EffectEvent`,e,`EffectEvent`),e)},Sn=new Proxy(Q,{get(e,t){if(Object.hasOwn(e,t))return Reflect.get(e,t);throw new i(`The React dispatcher is missing method `+t)}}),Cn=()=>{if(z!==null)return z;let e=new Map,t;try{Q.useContext({_currentValue:null}),Q.useState(null),Q.useReducer(e=>e,null),Q.useRef(null),Q.useCacheRefresh(),Q.useLayoutEffect(()=>{}),Q.useInsertionEffect(()=>{}),Q.useEffect(()=>{}),Q.useImperativeHandle(void 0),Q.useDebugValue(null),Q.useCallback(()=>{}),Q.useTransition(),Q.useSyncExternalStore(()=>()=>{},()=>null),Q.useDeferredValue(null),Q.useMemo(()=>null),Q.useOptimistic(null),Q.useFormState(e=>e,null),Q.useActionState(e=>e,null),Q.useHostTransitionStatus(),Q.use({$$typeof:qt,_currentValue:null}),Q.use({$$typeof:Yt});let e=Promise.resolve(null);Reflect.set(e,`status`,`fulfilled`),Reflect.set(e,`value`,null),Q.use(e);try{Q.use(new Promise(()=>{}))}catch{}Q.useId(),Q.useEffectEvent(()=>{})}finally{t=R,R=[]}for(let n of t)e.set(n.primitive,K(n.stackError));return z=e,z};let wn=0;const Tn=(e,t,n)=>{if(n>=t.length)return-1;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},En=(e,t)=>{let n=Tn(t,e,wn);if(n!==-1)return n;for(let r=0;r<e.length&&r<5;r++)if(n=Tn(t,e,r),n!==-1)return wn=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)},Dn=new Set([Z,...Object.values(Q)].map(e=>$(e.name))),On=e=>e!==``&&Dn.has(e),kn=(e,t)=>{let n=$(e);return t===`HostTransitionStatus`?n===t||n===`FormStatus`:n===t},An=(e,t)=>{let n=Cn().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&&kn(e[r].functionName,t.dispatcherHookName)&&r++,r<e.length-1&&kn(e[r].functionName,t.dispatcherHookName)&&r++,r;return-1},jn=(e,t)=>{let n=K(t.stackError),r=En(e,n),i=An(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)]},Mn=new Set([`Context`,`Context (use)`,`DebugValue`,`Promise`,`Unresolved`,`HostTransitionStatus`]),Nn=(e,t)=>{let n=[],r=null,i=n,a=0,o=[];for(let s of t){let[t,c]=jn(e,s),l=s.displayName;if(l===null&&t!==null){let e=$(t.functionName);l=On(e)?null:e||$(s.dispatcherHookName)}if(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,debugInfo:null,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=Mn.has(u)?null:a++,f=u===`Reducer`||u===`State`,p=l||u,m=c?.[0],ee={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:[],debugInfo:s.debugInfo,hookSource:ee})}return Fn(n,null),Pn(n,null),n},Pn=(e,t)=>{for(let n=0;n<e.length;n++){let r=e[n];On(r.name)?(t!==null&&r.value!==void 0&&(t.value=t.value===void 0?r.value:Array.isArray(t.value)?[...t.value,r.value]:[t.value,r.value]),e.splice(n,1,...r.subHooks),n--):Pn(r.subHooks,r)}},Fn=(e,t)=>{let n=[];for(let t=0;t<e.length;t++){let r=e[t];r.name===`DebugValue`?(e.splice(t,1,...r.subHooks),t--,r.value!==void 0&&n.push(r)):Fn(r.subHooks,r)}t!==null&&(n.length===1?t.value=n[0].value:n.length>1&&(t.value=n.map(({value:e})=>e)))},In=(e,t)=>{let n=t;for(;n;){if(n.tag===a(n).ContextProvider){let t=n.type,r=typeof t==`object`&&t&&`_context`in t?t._context:void 0,i=Y(r)?r:Y(t)?t:null;i&&!e.has(i)&&(e.set(i,i._currentValue),i._currentValue=n.memoizedProps.value)}n=n.return}},Ln=e=>{e.forEach((e,t)=>{t._currentValue=e})},Rn=e=>{if(e!==G)throw e instanceof i?e:new f(`Bippy couldn’t render the inspected component`,e)},zn=(e,t)=>{if(e!==null&&(typeof e==`object`||typeof e==`function`)&&`defaultProps`in e&&typeof e.defaultProps==`object`&&e.defaultProps!==null){let n={...t},r=e.defaultProps;for(let[e,t]of Object.entries(r))n[e]===void 0&&(n[e]=t);return n}return t},Bn=()=>{let e={};for(let t in console)try{e[t]=Reflect.get(console,t),Reflect.set(console,t,()=>{})}catch{}return e},Vn=e=>{for(let t in e)try{Reflect.set(console,t,e[t])}catch{}},Hn=(e,t,...n)=>{let r=be(e);y(e,Sn);let i=[],a;try{a=Error(),t(...n)}catch(e){Rn(e)}finally{i=R,R=[],y(e,r)}let o=a===void 0?[]:K(a);return Nn(o,i)},Un=(e,t=globalThis)=>{let n=(e?d(e,t)?.currentDispatcherRef:null)??ye(t)[0];if(!n)throw new r(`Bippy couldn’t find a React renderer. Load React and install Bippy’s hook.`);return n},Wn=e=>{let t=[`dependencies_old`,`dependencies_new`].find(t=>Object.hasOwn(e,t));if(Object.hasOwn(e,`dependencies`)){let t=e.dependencies;H=t===null?null:t.firstContext}else if(t){let n=Reflect.get(e,t),r=typeof n==`object`&&n&&`firstContext`in n?n.firstContext:null;H=Zt(r)?r:null}else if(Object.hasOwn(e,`contextDependencies`)){let t=Reflect.get(e,`contextDependencies`),n=typeof t==`object`&&t&&`first`in t?t.first:null;H=Zt(n)?n:null}else throw new r(`Bippy doesn’t support this React version.`)},Gn=e=>{let t=e=>{let n=e.subHooks.map(t);if(n.length===1){let t=n[0];if(e.name===`Context`&&t.id===null)return{...t,hookSource:e.hookSource};if(e.name===`FormStatus`&&t.name===`HostTransitionStatus`)return{...e,subHooks:[],value:t.value};if(e.name===`Use`){if(t.name===`Context`)return{...t,hookSource:e.hookSource};if(t.name===`Promise`||t.name===`Unresolved`)return{...e,debugInfo:t.debugInfo,subHooks:[],value:t.value}}if(e.id===null&&e.value===void 0&&(e.name===t.name||e.name===`<anonymous>`))return{...t,hookSource:e.hookSource}}return{...e,subHooks:n}};return e.map(t)},Kn=(e,t,n=globalThis)=>{let r=Un(void 0,n);Cn(),V=null,B=null,H=null,W=null,U=0;let i=Bn();try{return Gn(Hn(r,e,t))}finally{V=null,B=null,H=null,W=null,U=0,Vn(i)}},qn=e=>{let t=Un(e),n=a(e);if(e.tag!==n.FunctionComponent&&e.tag!==n.SimpleMemoComponent&&e.tag!==n.ForwardRef)throw new r(`Hook inspection requires a function component Fiber.`);Cn(),V=e.memoizedState,B=e;let i=e.dependencies?._debugThenableState,o=Array.isArray(i)?i:i?.thenables;W=Array.isArray(o)?o:null,U=0,Wn(e);let s=e.type,c=e.memoizedProps;s!==e.elementType&&(c=zn(s,c));let l=Bn(),u=new Map;try{if(H!==null&&!Object.hasOwn(H,`memoizedValue`)&&In(u,e),e.tag===n.ForwardRef){if(!Qt(s))throw new r(`ForwardRef fiber is missing its render function.`);let n=Gn(Hn(t,s.render,c,e.ref));for(let e of n)e.hookSource?.functionName===`Object.render`&&(e.hookSource.functionName=null);return n}if(typeof s!=`function`)throw new r(`Function component fiber is missing its component function.`);return Gn(Hn(t,s,c))}finally{B=null,V=null,H=null,W=null,U=0,Ln(u),Vn(l)}},Jn=new Set([`Effect`,`LayoutEffect`,`InsertionEffect`,`ImperativeHandle`,`DebugValue`]),Yn=/(?:const|let|var)\s+((?:\[[\s\S]*?\]|\w+))\s*=\s*(?:(?:[\w$]+|require\s*\([^)]*\))\.)*use[A-Z]\w*\s*(?:<[\s\S]*?>)?\s*\(/g,Xn=e=>`${e.fileName??``}:${e.lineNumber??0}:${e.columnNumber??0}`,Zn=e=>{let t=[],n=e=>{for(let r of e)Jn.has(r.name)||(t.push(r),r.subHooks.length>0&&n(r.subHooks))};return n(e),t},Qn=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},$n=(e,t,n)=>{let r=e.split(`
19
+ `);n!==-1&&(t=t.slice(n+1));let r=Math.max(...m.map(e=>t.indexOf(e)));if(r!==-1&&(r=t.lastIndexOf(`
20
+ `,r)),r!==-1)t=t.slice(0,r);else return``;return t},Ct=e=>!!(e.functionName&&e.fileName&&Dt(e.fileName)),wt=(e,t)=>e.fileName===t.fileName&&e.lineNumber===t.lineNumber&&e.columnNumber===t.columnNumber,Tt=e=>{let t=new Map;for(let n of e){if(!Ct(n))continue;let e=n.functionName,r=t.get(e)??[];r.some(e=>wt(e,n))||(r.push(n),t.set(e,r))}return t},Et=(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(oe,`(${a.fileName}:${a.lineNumber}:${a.columnNumber})`)}},Dt=e=>te.some(t=>e.startsWith(t)),Ot=e=>!e.isServer&&e.fileName&&Dt(e.fileName)?{...e,isServer:!0}:e,kt=e=>{let t=[],n=e;for(;n;)if(gt(n)){let e=n;if(n=e._debugOwner,n&&A(e)){let{frames:n,isTrusted:r}=_(e._debugStack);if(r)for(let e of n)t.push(Ot(e))}}else{let e=n;if(n=e.owner,n&&e.debugStack instanceof Error)for(let n of _(e.debugStack).frames)t.push({...n,isServer:!0})}return t},At=e=>{let t=[];return c(e,e=>{if(!A(e))return;let{frames:n,isTrusted:r}=_(e._debugStack);r&&t.push(...n)},!0),t},jt=e=>{let t=At(e),n=g(xt(e)),r=Tt(t),i=new Map;return n.map(e=>e.source!==void 0&&oe.test(e.source)?Et(e,r,i):e).filter((e,t,n)=>{if(t===0)return!0;let r=n[t-1];return e.functionName!==r.functionName})},I=async(e,t=!0,n,r={})=>k(jt(e),t,n,r),Mt=e=>!!e.fileName&&!e.isIgnoreListed,Nt=async(e,t=!0,n,r={})=>{let i=kt(e);if(i.length>0){let a=j(e)??{};a.functionName=u(e.type)??a.functionName;let o=await k([a,...i],t,n,r);if(o.some((e,t)=>t>0&&Mt(e)))return o}return I(e,t,n,r)},Pt=e=>{let t=e._debugSource;return t?typeof t==`object`&&typeof t.fileName==`string`&&t.fileName!==`(native)`&&typeof t.lineNumber==`number`:!1},L=e=>e.fileName?{fileName:e.fileName,lineNumber:e.lineNumber,columnNumber:e.columnNumber,functionName:e.functionName}:null,Ft=e=>{if(!A(e))return null;let{frames:t,isTrusted:n}=_(e._debugStack);if(!n)return null;for(let e of t)if(e.fileName)return e;return null},It=e=>{if(Pt(e))return e._debugSource;let t=Ft(e)??j(e);return t?L(t):null},Lt=async(e,t,n,r)=>{let i=u(e.type);if(!i)return null;let a=g(Error().stack??``),o=new Set;for(let e of a){let a=e.fileName;if(!a||o.has(a))continue;o.add(a);let s=await O(a,t,n,r);if(!s)continue;let c=Ve(s,i);if(c&&!c.isIgnoreListed)return L(c)}return null},Rt=async(e,t=!0,n,r={})=>{if(Pt(e))return e._debugSource;let i=It(e);if(i){let[e]=await k([{columnNumber:i.columnNumber,fileName:i.fileName,functionName:i.functionName,lineNumber:i.lineNumber}],t,n,r),a=L(e);if(a)return a}let a=await I(e,t,n,r);for(let e of a)if(e.fileName)return L(e);return Lt(e,t,n,r)},zt=e=>e.split(`/`).filter(Boolean).length,Bt=e=>{let t=e.indexOf(`/`,1);if(t===-1)return e;let n=e.slice(0,t);if(zt(n)!==1)return e;let r=e.slice(t);if(!re.test(r))return e;let i=r.split(`/`).filter(Boolean);if(i.length<2)return e;let a=i[0];return a.startsWith(`@`)||a.length>4?e:r},Vt=e=>{if(!e||ne.some(t=>t===e))return``;let t=e,n=/^[a-zA-Z]:[\\/]/.test(t);if(t.startsWith(`http://`)||t.startsWith(`https://`)){try{t=new URL(t).pathname}catch{}t=Bt(t)}if(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 r=!0;for(;r;){r=!1;for(let e of p)if(t.startsWith(e)){t=t.slice(e.length),e===`file:///`&&(t=`/${t.replace(/^\/+/,``)}`),r=!0;break}}if(!n){let e=t.match(f);e&&(t=t.slice(e[0].length))}if(t.startsWith(`//`)){let e=t.indexOf(`/`,2);t=e===-1?``:t.slice(e)}let i=t.indexOf(`?`);if(i!==-1){let e=t.slice(i);ae.test(e)&&(t=t.slice(0,i))}return t},Ht=e=>{let t=Vt(e);return!(!t||!re.test(t)||ie.test(t))},Ut=[/(?:^|export\s+)(?:const|let|var)\s+(\w+)\s*=/,/(?:^|export\s+)function\s+(\w+)/,/(?:^|export\s+)class\s+(\w+)/],Wt=e=>{for(let t of Ut){let n=e.match(t);if(n?.[1])return n[1]}return null},Gt=(e,t)=>{let n=e.split(`
21
+ `),r=t-1;if(r<0||r>=n.length)return null;for(let e=0;e<=5;e++){let t=e===0?[r]:[r-e,r+e];for(let e of t){if(e<0||e>=n.length)continue;let t=Wt(n[e]);if(t)return t}}return null},Kt=async(e,t=!0,n,r={})=>{let i=j(e)??jt(e).find(e=>e.fileName);if(!i?.fileName)return u(e.type);let a=await O(i.fileName,t,n,r);if(!a)return u(e.type);let o=null;if(typeof i.lineNumber==`number`&&typeof i.columnNumber==`number`&&(o=S(a,i.lineNumber,i.columnNumber)),!o?.fileName||!o.lineNumber)return u(e.type);let s=C(a,o.fileName);return(s?Gt(s,o.lineNumber):null)||(o.functionName??u(e.type))},qt=Symbol.for(`react.context`),Jt=Symbol.for(`react.memo_cache_sentinel`),Yt=Symbol.for(`react.recoverable`);let R=[],z=null,B=null,V=null,H=null,U=0,W=null,G=0,K=!1;const Xt=()=>{if(K)throw new r(`Hook inspection cannot be called during another inspection.`)},q=Error("Suspense interrupted this render. This error is an internal implementation detail of `use`."),J=e=>g(e.stack||``,{includeInElement:!1}),Y=()=>{let e=V;return e!==null&&(V=e.next),e},Zt=e=>typeof e==`object`&&!!e&&`then`in e&&typeof e.then==`function`,Qt=e=>typeof e==`object`&&!!e&&`current`in e,$t=e=>typeof e==`object`&&!!e&&`_currentValue`in e,en=e=>typeof e==`object`&&!!e&&`context`in e&&`next`in e,tn=e=>typeof e==`object`&&!!e&&`render`in e&&typeof e.render==`function`,X=e=>{if(B===null)return e._currentValue;if(H===null)throw new r(`Context reads don’t match context dependencies.`);if(Object.hasOwn(H,`memoizedValue`)){let e=H.memoizedValue;return H=H.next,e}return e._currentValue},Z=(e,t,n,r=null,i=null)=>{R.push({displayName:r,primitive:e,stackError:Error(),value:t,debugInfo:i,dispatcherHookName:n})},nn=e=>{if(typeof e==`object`&&e){if(Zt(e)){let t=W!==null&&U<W.length?W[U++]:e,n=Zt(t)?t:e;switch(n.status){case`fulfilled`:return Z(`Promise`,n.value,`Use`,null,n._debugInfo??null),n.value;case`rejected`:throw n.reason}throw Z(`Unresolved`,n,`Use`,null,n._debugInfo??null),q}if(`$$typeof`in e&&e.$$typeof===Yt){Z(`Recoverable`,void 0,`Use`);return}if(`$$typeof`in e&&e.$$typeof===qt&&$t(e)){let t={_currentValue:e._currentValue,displayName:typeof e.displayName==`string`?e.displayName:void 0},n=X(t);return Z(`Context (use)`,n,`Use`,t.displayName||`Context`),n}}throw new r(`use() received an unsupported value: `+String(e))},rn=e=>{let t=X(e);return Z(`Context`,t,`Context`,e.displayName||null),t},an=e=>{let t=Y(),n=t===null?typeof e==`function`?e():e:t.memoizedState;return Z(`State`,n,`State`),[n,()=>{}]},on=(e,t,n)=>{let r=Y(),i=r===null?n===void 0?t:n(t):r.memoizedState;return Z(`Reducer`,i,`Reducer`),[i,()=>{}]},sn=e=>{let t=Y(),n=Qt(t?.memoizedState)?t.memoizedState:{current:e};return Z(`Ref`,n.current,`Ref`),n},cn=()=>{let e=Y();return Z(`CacheRefresh`,e===null?()=>{}:e.memoizedState,`CacheRefresh`),()=>{}},ln=e=>{Y(),Z(`LayoutEffect`,e,`LayoutEffect`)},un=e=>{Y(),Z(`InsertionEffect`,e,`InsertionEffect`)},dn=e=>{Y(),Z(`Effect`,e,`Effect`)},fn=e=>{Y();let t=Qt(e)?e.current:void 0;Z(`ImperativeHandle`,t,`ImperativeHandle`)},pn=(e,t)=>{Z(`DebugValue`,typeof t==`function`?t(e):e,`DebugValue`)},mn=e=>{let t=Y();return Z(`Callback`,Array.isArray(t?.memoizedState)?t.memoizedState[0]:e,`Callback`),e},hn=e=>{let t=Y(),n=Array.isArray(t?.memoizedState)?t.memoizedState[0]:e();return Z(`Memo`,n,`Memo`),n},gn=(e,t)=>{let n=Y();Y();let r=n===null?t():n.memoizedState;return Z(`SyncExternalStore`,r,`SyncExternalStore`),r},_n=()=>{let e=Y();Y();let t=e?.memoizedState===!0;return Z(`Transition`,t,`Transition`),[t,()=>{}]},vn=e=>{let t=Y(),n=t===null?e:t.memoizedState;return Z(`DeferredValue`,n,`DeferredValue`),n},yn=()=>{let e=Y(),t=typeof e?.memoizedState==`string`?e.memoizedState:``;return Z(`Id`,t,`Id`),t},bn=e=>{let t=B;if(t===null)return[];let n=t.updateQueue?.memoCache;return n==null?[]:n.data[G++]?.slice()??Array.from({length:e},()=>Jt)},xn=e=>{let t=Y(),n=t===null?e:t.memoizedState;return Z(`Optimistic`,n,`Optimistic`),[n,()=>{}]},Sn=(e,t)=>{let n,r=null,i=null;if(e!==null){let t=e.memoizedState;if(Zt(t))switch(t.status){case`fulfilled`:n=t.value,r=t._debugInfo??null;break;case`rejected`:i=t.reason;break;default:i=q,n=t,r=t._debugInfo??null}else n=t}else n=t;return{value:n,debugInfo:r,error:i}},Cn=e=>(t,n)=>{let r=Y();Y(),Y();let{value:i,debugInfo:a,error:o}=Sn(r,n);if(Z(e,i,e,null,a),o!==null)throw o;return[i,()=>{},!1]},wn=Cn(`ActionState`),Q={readContext:X,use:nn,useCallback:mn,useContext:rn,useEffect:dn,useImperativeHandle:fn,useLayoutEffect:ln,useInsertionEffect:un,useMemo:hn,useReducer:on,useRef:sn,useState:an,useDebugValue:pn,useDeferredValue:vn,useTransition:_n,useSyncExternalStore:gn,useId:yn,useHostTransitionStatus:()=>{let e=X({_currentValue:null});return Z(`HostTransitionStatus`,e,`HostTransitionStatus`),e},useFormState:Cn(`FormState`),useActionState:wn,useOptimistic:xn,useMemoCache:bn,useCacheRefresh:cn,useEffectEvent:e=>(Y(),Z(`EffectEvent`,e,`EffectEvent`),e)},Tn=new Proxy(Q,{get(e,t){if(Object.hasOwn(e,t))return Reflect.get(e,t);throw new i(`The React dispatcher is missing method `+t)}}),En=()=>{if(z!==null)return z;let e=new Map,t;try{Q.useContext({_currentValue:null}),Q.useState(null),Q.useReducer(e=>e,null),Q.useRef(null),Q.useCacheRefresh(),Q.useLayoutEffect(()=>{}),Q.useInsertionEffect(()=>{}),Q.useEffect(()=>{}),Q.useImperativeHandle(void 0),Q.useDebugValue(null),Q.useCallback(()=>{}),Q.useTransition(),Q.useSyncExternalStore(()=>()=>{},()=>null),Q.useDeferredValue(null),Q.useMemo(()=>null),Q.useOptimistic(null),Q.useFormState(e=>e,null),Q.useActionState(e=>e,null),Q.useHostTransitionStatus(),Q.use({$$typeof:qt,_currentValue:null}),Q.use({$$typeof:Yt});let e=Promise.resolve(null);Reflect.set(e,`status`,`fulfilled`),Reflect.set(e,`value`,null),Q.use(e);try{Q.use(new Promise(()=>{}))}catch{}Q.useId(),Q.useEffectEvent(()=>{})}finally{t=R,R=[]}for(let n of t)e.set(n.primitive,J(n.stackError));return z=e,z};let Dn=0;const On=(e,t,n)=>{if(n>=t.length)return-1;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},kn=(e,t)=>{let n=On(t,e,Dn);if(n!==-1)return n;for(let r=0;r<e.length&&r<5;r++)if(n=On(t,e,r),n!==-1)return Dn=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)},An=new Set([Z,...Object.values(Q)].map(e=>$(e.name))),jn=e=>e!==``&&An.has(e),Mn=(e,t)=>{let n=$(e);return t===`HostTransitionStatus`?n===t||n===`FormStatus`:n===t},Nn=(e,t)=>{let n=En().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&&Mn(e[r].functionName,t.dispatcherHookName)&&r++,r<e.length-1&&Mn(e[r].functionName,t.dispatcherHookName)&&r++,r;return-1},Pn=(e,t)=>{let n=J(t.stackError),r=kn(e,n),i=Nn(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)]},Fn=new Set([`Context`,`Context (use)`,`DebugValue`,`Promise`,`Unresolved`,`HostTransitionStatus`]),In=(e,t)=>{let n=[],r=null,i=n,a=0,o=[];for(let s of t){let[t,c]=Pn(e,s),l=s.displayName;if(l===null&&t!==null){let e=$(t.functionName);l=jn(e)?null:e||$(s.dispatcherHookName)}if(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,debugInfo:null,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=Fn.has(u)?null:a++,ee=u===`Reducer`||u===`State`,f=l||u,p=c?.[0],te={lineNumber:p?.lineNumber??null,columnNumber:p?.columnNumber??null,functionName:p?.functionName??null,fileName:p?.fileName??null};i.push({id:d,isStateEditable:ee,name:f,value:s.value,subHooks:[],debugInfo:s.debugInfo,hookSource:te})}return Rn(n,null),Ln(n,null),n},Ln=(e,t)=>{for(let n=0;n<e.length;n++){let r=e[n];jn(r.name)?(t!==null&&r.value!==void 0&&(t.value=t.value===void 0?r.value:Array.isArray(t.value)?[...t.value,r.value]:[t.value,r.value]),e.splice(n,1,...r.subHooks),n--):Ln(r.subHooks,r)}},Rn=(e,t)=>{let n=[];for(let t=0;t<e.length;t++){let r=e[t];r.name===`DebugValue`?(e.splice(t,1,...r.subHooks),t--,r.value!==void 0&&n.push(r)):Rn(r.subHooks,r)}t!==null&&(n.length===1?t.value=n[0].value:n.length>1&&(t.value=n.map(({value:e})=>e)))},zn=(e,t)=>{let n=t;for(;n;){if(n.tag===a(n).ContextProvider){let t=n.type,r=typeof t==`object`&&t&&`_context`in t?t._context:void 0,i=$t(r)?r:$t(t)?t:null;i&&!e.has(i)&&(e.set(i,i._currentValue),i._currentValue=n.memoizedProps.value)}n=n.return}},Bn=e=>{e.forEach((e,t)=>{t._currentValue=e})},Vn=e=>{if(e!==q)throw e instanceof i?e:new ee(`Bippy couldn’t render the inspected component`,e)},Hn=(e,t)=>{if(e!==null&&(typeof e==`object`||typeof e==`function`)&&`defaultProps`in e&&typeof e.defaultProps==`object`&&e.defaultProps!==null){let n={...t},r=e.defaultProps;for(let[e,t]of Object.entries(r))n[e]===void 0&&(n[e]=t);return n}return t},Un=()=>{let e={};for(let t in console)try{e[t]=Reflect.get(console,t),Reflect.set(console,t,()=>{})}catch{}return e},Wn=e=>{for(let t in e)try{Reflect.set(console,t,e[t])}catch{}},Gn=(e,t,...n)=>{let r=xe(e);v(e,Tn),K=!0;let i=[],a;try{a=Error(),t(...n)}catch(e){Vn(e)}finally{i=R,R=[],K=!1,v(e,r)}let o=a===void 0?[]:J(a);return In(o,i)},Kn=(e,t=globalThis)=>{let n=(e?d(e,t)?.currentDispatcherRef:null)??be(t)[0];if(!n)throw new r(`Bippy couldn’t find a React renderer. Load React and install Bippy’s hook.`);return n},qn=e=>{let t=[`dependencies_old`,`dependencies_new`].find(t=>Object.hasOwn(e,t));if(Object.hasOwn(e,`dependencies`)){let t=e.dependencies;H=t===null?null:t.firstContext}else if(t){let n=Reflect.get(e,t),r=typeof n==`object`&&n&&`firstContext`in n?n.firstContext:null;H=en(r)?r:null}else if(Object.hasOwn(e,`contextDependencies`)){let t=Reflect.get(e,`contextDependencies`),n=typeof t==`object`&&t&&`first`in t?t.first:null;H=en(n)?n:null}else throw new r(`Bippy doesn’t support this React version.`)},Jn=e=>{let t=e=>{let n=e.subHooks.map(t);if(n.length===1){let t=n[0];if(e.name===`Context`&&t.id===null)return{...t,hookSource:e.hookSource};if(e.name===`FormStatus`&&t.name===`HostTransitionStatus`)return{...e,subHooks:[],value:t.value};if(e.name===`Use`){if(t.name===`Context`)return{...t,hookSource:e.hookSource};if(t.name===`Promise`||t.name===`Unresolved`)return{...e,debugInfo:t.debugInfo,subHooks:[],value:t.value}}if(e.id===null&&e.value===void 0&&(e.name===t.name||e.name===`<anonymous>`))return{...t,hookSource:e.hookSource}}return{...e,subHooks:n}};return e.map(t)},Yn=(e,t,n=globalThis)=>{Xt();let r=Kn(void 0,n);En(),V=null,B=null,H=null,W=null,U=0;let i=Un();try{return Jn(Gn(r,e,t))}finally{V=null,B=null,H=null,W=null,U=0,Wn(i)}},Xn=e=>{Xt();let t=Kn(e),n=a(e);if(e.tag!==n.FunctionComponent&&e.tag!==n.SimpleMemoComponent&&e.tag!==n.ForwardRef)throw new r(`Hook inspection requires a function component Fiber.`);En(),V=e.memoizedState,B=e,G=0;let i=e.dependencies?._debugThenableState,o=Array.isArray(i)?i:i?.thenables;W=Array.isArray(o)?o:null,U=0;let s=Un(),c=new Map;try{qn(e);let i=e.type,a=i===e.elementType?e.memoizedProps:Hn(i,e.memoizedProps);if(H!==null&&!Object.hasOwn(H,`memoizedValue`)&&zn(c,e),e.tag===n.ForwardRef){if(!tn(i))throw new r(`ForwardRef fiber is missing its render function.`);let n=Jn(Gn(t,i.render,a,e.ref));for(let e of n)e.hookSource?.functionName===`Object.render`&&(e.hookSource.functionName=null);return n}if(typeof i!=`function`)throw new r(`Function component fiber is missing its component function.`);return Jn(Gn(t,i,a))}finally{B=null,V=null,H=null,W=null,U=0,G=0,Bn(c),Wn(s)}},Zn=new Set([`Effect`,`LayoutEffect`,`InsertionEffect`,`ImperativeHandle`,`DebugValue`]),Qn=/(?:const|let|var)\s+((?:\[[\s\S]*?\]|\w+))\s*=\s*(?:(?:[\w$]+|require\s*\([^)]*\))\.)*use[A-Z]\w*\s*(?:<[\s\S]*?>)?\s*\(/g,$n=e=>`${e.fileName??``}:${e.lineNumber??0}:${e.columnNumber??0}`,er=e=>{let t=[],n=e=>{for(let r of e)Zn.has(r.name)||(t.push(r),r.subHooks.length>0&&n(r.subHooks))};return n(e),t},tr=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},nr=(e,t,n)=>{let r=e.split(`
22
22
  `),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(`
23
- `),s=[...o.matchAll(Yn)],c=o.lastIndexOf(`
24
- `)+1,l=c+n,u=s.filter(e=>e.index<=l).at(-1)??(n===0?s.find(e=>e.index>=c):void 0);return u?Qn(u[1]):null},er=async(e,t,n,r)=>{let{sourceContentCache:i,fetchFn:a,requestOptions:o}=r,s=await O(e,!0,a,o);if(s){let e=S(s,t,n);if(e?.fileName&&e.lineNumber!==void 0){let t=C(s,e.fileName);if(t)return{sourceCode:t,lineNumber:e.lineNumber,columnNumber:e.columnNumber??0}}}if(!i.has(e))try{let t=await(a??fetch)(e);i.set(e,t.ok?await t.text():null)}catch{i.set(e,null)}let c=i.get(e)??null;return c?{sourceCode:c,lineNumber:t,columnNumber:n}:null},tr=async(e,t,n)=>{let r=new Map,i=Zn(e);if(i.length===0)return r;let a={sourceContentCache:new Map,fetchFn:t,requestOptions:n};return await Promise.all(i.map(async e=>{let t=e.hookSource;if(!t||!t.fileName||t.lineNumber===null||t.columnNumber===null)return;let n=await er(t.fileName,t.lineNumber,t.columnNumber,a);if(!n)return;let i=$n(n.sourceCode,n.lineNumber,n.columnNumber);if(i){let e=Xn(t);r.set(e,i)}})),r};export{o as BippyError,r as BippyHookInspectionError,f as BippyHookRenderError,s as BippySourceMapError,i as BippyUnsupportedHookError,St as formatOwnerStack,j as getDefinitionFrameFromOwnedChild,Kt as getDisplayNameFromSource,xt as getFallbackParentStack,qn as getFiberHooks,Nt as getOwnerStack,I as getParentStack,kt as getRawOwnerStack,It as getRawSource,Rt as getSource,C as getSourceContentFromSourceMap,S as getSourceFromSourceMap,Ve as getSourceFromSourceMapByFunctionName,O as getSourceMap,A as hasDebugStack,Kn as inspectHooks,Ht as isSourceFile,Vt as normalizeFileName,tr as parseHookNames,_ as parseStack,k as symbolicateStack};
23
+ `),s=[...o.matchAll(Qn)],c=o.lastIndexOf(`
24
+ `)+1,l=c+n,u=s.filter(e=>e.index<=l).at(-1)??(n===0?s.find(e=>e.index>=c):void 0);return u?tr(u[1]):null},rr=async(e,t,n,r)=>{let{sourceContentCache:i,fetchFn:a,requestOptions:o}=r,s=await O(e,!0,a,o);if(s){let e=S(s,t,n);if(e?.fileName&&e.lineNumber!==void 0){let t=C(s,e.fileName);if(t)return{sourceCode:t,lineNumber:e.lineNumber,columnNumber:e.columnNumber??0}}}if(!i.has(e))try{let t=await(a??fetch)(e);i.set(e,t.ok?await t.text():null)}catch{i.set(e,null)}let c=i.get(e)??null;return c?{sourceCode:c,lineNumber:t,columnNumber:n}:null},ir=async(e,t,n)=>{let r=new Map,i=er(e);if(i.length===0)return r;let a={sourceContentCache:new Map,fetchFn:t,requestOptions:n};return await Promise.all(i.map(async e=>{let t=e.hookSource;if(!t||!t.fileName||t.lineNumber===null||t.columnNumber===null)return;let n=await rr(t.fileName,t.lineNumber,t.columnNumber,a);if(!n)return;let i=nr(n.sourceCode,n.lineNumber,n.columnNumber);if(i){let e=$n(t);r.set(e,i)}})),r};export{o as BippyError,r as BippyHookInspectionError,ee as BippyHookRenderError,s as BippySourceMapError,i as BippyUnsupportedHookError,St as formatOwnerStack,j as getDefinitionFrameFromOwnedChild,Kt as getDisplayNameFromSource,xt as getFallbackParentStack,Xn as getFiberHooks,Nt as getOwnerStack,I as getParentStack,kt as getRawOwnerStack,It as getRawSource,Rt as getSource,C as getSourceContentFromSourceMap,S as getSourceFromSourceMap,Ve as getSourceFromSourceMapByFunctionName,O as getSourceMap,A as hasDebugStack,Yn as inspectHooks,Ht as isSourceFile,Vt as normalizeFileName,ir as parseHookNames,g as parseStack,k as symbolicateStack};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bippy",
3
- "version": "0.7.3-dev.a6ed02c",
3
+ "version": "0.7.3-dev.e2b879b",
4
4
  "description": "hack into react internals",
5
5
  "keywords": [
6
6
  "bippy",
@@ -78,40 +78,12 @@
78
78
  "@types/react-reconciler": "^0.33.0"
79
79
  },
80
80
  "devDependencies": {
81
- "@babylonjs/core": "^9.20.0",
82
- "@babylonjs/gui": "^9.20.0",
83
81
  "@jridgewell/sourcemap-codec": "^1.5.0",
84
- "@opentui/core": "^0.5.1",
85
- "@opentui/react": "^0.5.1",
86
- "@pixi/react": "^8.0.5",
87
- "@react-pdf/renderer": "^4.5.1",
88
- "@react-three/fiber": "^9.6.1",
89
- "@react-three/test-renderer": "^9.1.0",
90
- "@testing-library/dom": "^10.4.0",
91
- "@testing-library/react": "^16.1.0",
92
82
  "@types/node": "^20",
93
83
  "@types/react": "^19.2.18",
94
- "@types/react-dom": "^19.2.4",
95
- "@vitest/coverage-istanbul": "4.1.10",
96
- "happy-dom": "^20.11.6",
97
- "ink": "^7.1.1",
98
- "ink-testing-library": "^4.0.0",
99
- "konva": "^10.3.0",
100
- "pixi.js": "^8.19.0",
101
84
  "publint": "^0.3.0",
102
85
  "react": "^19.2.4",
103
- "react-17": "npm:react@17.0.2",
104
- "react-18": "npm:react@18.3.1",
105
- "react-babylonjs": "^4.0.2",
106
86
  "react-devtools-core": "7.0.1",
107
- "react-devtools-inline": "^7.0.1",
108
- "react-dom": "^19.2.4",
109
- "react-dom-17": "npm:react-dom@17.0.2",
110
- "react-dom-18": "npm:react-dom@18.3.1",
111
- "react-konva": "^19.2.5",
112
- "react-nil": "^2.0.0",
113
- "remotion": "^4.0.496",
114
- "three": "^0.185.1",
115
87
  "tsx": "^4.21.0",
116
88
  "typescript": "^5.9.3",
117
89
  "vite-plus": "latest",
@@ -123,10 +95,10 @@
123
95
  "scripts": {
124
96
  "build": "NODE_ENV=production vp pack && tsx scripts/check-react-entry.ts",
125
97
  "check:react-internals": "tsx scripts/generate-react-internals.ts --check",
126
- "coverage": "vp test --coverage",
98
+ "coverage": "pnpm --filter conformance coverage",
127
99
  "dev": "NODE_ENV=development vp pack --watch",
128
100
  "generate:react-internals": "tsx scripts/generate-react-internals.ts",
129
101
  "publint": "publint",
130
- "test": "vp test"
102
+ "test": "pnpm --filter conformance test"
131
103
  }
132
104
  }
package/src/core.ts CHANGED
@@ -21,6 +21,7 @@ import {
21
21
  removeActiveListener,
22
22
  } from "./rdt-hook.js";
23
23
  import type { ReactDevToolsTarget, Unsubscribe } from "./rdt-hook.js";
24
+ import { getCurrentFiberFromRoot } from "./react-internals/current-fiber.js";
24
25
  import {
25
26
  getReactWorkTagsForFiber,
26
27
  ReactBuildType,
@@ -64,8 +65,8 @@ export const isValidElement = (element: unknown): element is React.ReactElement
64
65
  typeof element === "object" &&
65
66
  element !== null &&
66
67
  "$$typeof" in element &&
67
- (String(element.$$typeof) === ReactSymbols.LEGACY_ELEMENT_SYMBOL_STRING ||
68
- String(element.$$typeof) === ReactSymbols.ELEMENT_SYMBOL_STRING);
68
+ (element.$$typeof === Symbol.for("react.element") ||
69
+ element.$$typeof === Symbol.for("react.transitional.element"));
69
70
 
70
71
  /**
71
72
  * Returns `true` if object is a React Fiber.
@@ -78,7 +79,7 @@ export const isFiber = (fiber: unknown): fiber is Fiber =>
78
79
  "return" in fiber &&
79
80
  "child" in fiber &&
80
81
  "sibling" in fiber &&
81
- "flags" in fiber;
82
+ ("flags" in fiber || "effectTag" in fiber);
82
83
 
83
84
  const isFiberRoot = (fiberRoot: unknown): fiberRoot is FiberRoot =>
84
85
  typeof fiberRoot === "object" &&
@@ -128,7 +129,7 @@ export const isCompositeFiber = (fiber: Fiber): boolean => {
128
129
  */
129
130
  export const didFiberRender = (fiber: Fiber): boolean => {
130
131
  const nextProps = fiber.memoizedProps;
131
- const prevProps = fiber.alternate?.memoizedProps || {};
132
+ const prevProps = fiber.alternate?.memoizedProps;
132
133
  const flags = fiber.flags ?? fiber.effectTag ?? 0;
133
134
  const workTags = getReactWorkTagsForFiber(fiber);
134
135
 
@@ -200,41 +201,57 @@ const shouldFilterFiber = (fiber: Fiber): boolean => {
200
201
  }
201
202
  };
202
203
 
204
+ interface TraverseFiber {
205
+ (
206
+ fiber: Fiber | null,
207
+ selector: (node: Fiber) => boolean | void,
208
+ ascending?: boolean,
209
+ ): Fiber | null;
210
+ (
211
+ fiber: Fiber | null,
212
+ selector: (node: Fiber) => Promise<boolean | void>,
213
+ ascending?: boolean,
214
+ ): Promise<Fiber | null>;
215
+ (
216
+ fiber: Fiber | null,
217
+ selector: FiberSelector,
218
+ ascending?: boolean,
219
+ ): Fiber | null | Promise<Fiber | null>;
220
+ }
221
+
203
222
  /**
204
223
  * Traverses up or down a {@link Fiber}, return `true` to stop and select a node.
205
224
  */
206
- export function traverseFiber(
207
- fiber: Fiber | null,
208
- selector: (node: Fiber) => boolean | void,
209
- ascending?: boolean,
210
- ): Fiber | null;
211
- export function traverseFiber(
212
- fiber: Fiber | null,
213
- selector: (node: Fiber) => Promise<boolean | void>,
214
- ascending?: boolean,
215
- ): Promise<Fiber | null>;
216
- export function traverseFiber(
217
- fiber: Fiber | null,
218
- selector: FiberSelector,
219
- ascending?: boolean,
220
- ): Fiber | null | Promise<Fiber | null>;
221
- export function traverseFiber(
225
+ export const traverseFiber = ((
222
226
  fiber: Fiber | null,
223
227
  selector: FiberSelector,
224
228
  ascending = false,
225
- ): Fiber | null | Promise<Fiber | null> {
226
- if (!fiber) return null;
227
-
228
- const selection = selector(fiber);
229
- if (isPromiseLike<boolean | void>(selection)) {
230
- return Promise.resolve(selection).then((didSelectFiber) =>
231
- didSelectFiber === true ? fiber : traverseFiberChildren(fiber, selector, ascending),
232
- );
233
- }
234
- if (selection === true) return fiber;
235
-
236
- return traverseFiberChildren(fiber, selector, ascending);
237
- }
229
+ ): Fiber | null | Promise<Fiber | null> => {
230
+ const pendingSiblings: Fiber[] = [];
231
+ const getNextFiber = (currentFiber: Fiber): Fiber | null => {
232
+ if (ascending) return currentFiber.return;
233
+ if (currentFiber !== fiber && currentFiber.sibling) {
234
+ pendingSiblings.push(currentFiber.sibling);
235
+ }
236
+ return currentFiber.child ?? pendingSiblings.pop() ?? null;
237
+ };
238
+ const visit = (firstFiber: Fiber | null): Fiber | null | Promise<Fiber | null> => {
239
+ let currentFiber = firstFiber;
240
+ while (currentFiber) {
241
+ const selectedFiber = currentFiber;
242
+ const selection = selector(selectedFiber);
243
+ if (isPromiseLike<boolean | void>(selection)) {
244
+ return Promise.resolve(selection).then((didSelectFiber) =>
245
+ didSelectFiber === true ? selectedFiber : visit(getNextFiber(selectedFiber)),
246
+ );
247
+ }
248
+ if (selection === true) return selectedFiber;
249
+ currentFiber = getNextFiber(selectedFiber);
250
+ }
251
+ return null;
252
+ };
253
+ return visit(fiber);
254
+ }) as TraverseFiber;
238
255
 
239
256
  const isPromiseLike = <Result>(value: unknown): value is PromiseLike<Result> =>
240
257
  (typeof value === "object" || typeof value === "function") &&
@@ -242,32 +259,6 @@ const isPromiseLike = <Result>(value: unknown): value is PromiseLike<Result> =>
242
259
  "then" in value &&
243
260
  typeof value.then === "function";
244
261
 
245
- const traverseFiberChildren = (
246
- fiber: Fiber,
247
- selector: FiberSelector,
248
- ascending: boolean,
249
- ): Fiber | null | Promise<Fiber | null> => {
250
- const firstChild = ascending ? fiber.return : fiber.child;
251
- return traverseFiberSiblings(firstChild, selector, ascending);
252
- };
253
-
254
- const traverseFiberSiblings = (
255
- fiber: Fiber | null,
256
- selector: FiberSelector,
257
- ascending: boolean,
258
- ): Fiber | null | Promise<Fiber | null> => {
259
- if (!fiber) return null;
260
-
261
- const nextSibling = ascending ? null : fiber.sibling;
262
- const match = traverseFiber(fiber, selector, ascending);
263
- if (isPromiseLike<Fiber | null>(match)) {
264
- return Promise.resolve(match).then(
265
- (resolvedMatch) => resolvedMatch ?? traverseFiberSiblings(nextSibling, selector, ascending),
266
- );
267
- }
268
- return match ?? traverseFiberSiblings(nextSibling, selector, ascending);
269
- };
270
-
271
262
  /**
272
263
  * Returns `true` if the {@link Fiber} uses React Compiler's memo cache.
273
264
  */
@@ -281,7 +272,14 @@ export const hasMemoCache = (fiber: Fiber): boolean => {
281
272
  export const getType = (type: unknown): null | React.ComponentType<unknown> => {
282
273
  if (isComponentType(type)) return type;
283
274
  if (typeof type !== "object" || type === null) return null;
284
- return getType(Reflect.get(type, "type") ?? Reflect.get(type, "render"));
275
+ const visitedTypes = new Set<object>();
276
+ let currentType: unknown = type;
277
+ while (typeof currentType === "object" && currentType !== null) {
278
+ if (visitedTypes.has(currentType)) return null;
279
+ visitedTypes.add(currentType);
280
+ currentType = Reflect.get(currentType, "type") ?? Reflect.get(currentType, "render");
281
+ }
282
+ return isComponentType(currentType) ? currentType : null;
285
283
  };
286
284
 
287
285
  /**
@@ -331,6 +329,8 @@ const rootHooks = new WeakMap<FiberRoot, ReactDevToolsGlobalHook>();
331
329
  export const getLatestFiber = (fiber: Fiber): Fiber => {
332
330
  const alternate = fiber.alternate;
333
331
  if (!alternate) return fiber;
332
+ const currentFiber = getCurrentFiberFromRoot(fiber);
333
+ if (currentFiber) return currentFiber;
334
334
 
335
335
  let rootFiber = fiber;
336
336
  while (rootFiber.return) {
@@ -483,13 +483,13 @@ const mountFiberRecursively = (
483
483
  if (fallbackChildFragment) {
484
484
  const fallbackChild = fallbackChildFragment.child;
485
485
  if (fallbackChild !== null) {
486
- mountFiberRecursively(onRender, fallbackChild, false);
486
+ mountFiberRecursively(onRender, fallbackChild, true);
487
487
  }
488
488
  }
489
489
  } else {
490
490
  const primaryChild = fiber.child?.child ?? null;
491
491
  if (primaryChild !== null) {
492
- mountFiberRecursively(onRender, primaryChild, false);
492
+ mountFiberRecursively(onRender, primaryChild, true);
493
493
  }
494
494
  }
495
495
  } else if (fiber.child !== null) {
@@ -967,9 +967,11 @@ export const getFiber = <HostInstance>(
967
967
 
968
968
  for (const key of Object.keys(hostInstance)) {
969
969
  if (isFiberPropertyKey(key)) {
970
- knownFiberPropertyKeys.add(key);
971
970
  const fiber = Reflect.get(hostInstance, key);
972
- if (isFiber(fiber)) return fiber;
971
+ if (isFiber(fiber)) {
972
+ knownFiberPropertyKeys.add(key);
973
+ return fiber;
974
+ }
973
975
  }
974
976
  }
975
977
  }
package/src/rdt-hook.ts CHANGED
@@ -49,6 +49,8 @@ export const isFiberRootUnmounted = (fiberRoot: FiberRoot): boolean => {
49
49
  };
50
50
 
51
51
  const checkDCE = (functionToCheck: unknown): void => {
52
+ // HACK: Node loads React's unbundled entrypoints, where development guards are intentionally not eliminated.
53
+ if (typeof process !== "undefined" && process.versions?.node) return;
52
54
  try {
53
55
  const code = Function.prototype.toString.call(functionToCheck);
54
56
  if (code.indexOf("^_^") > -1) {
@@ -0,0 +1,84 @@
1
+ // Adapted from ReactFiberTreeReflection.js. Copyright (c) Meta Platforms, Inc. and affiliates. MIT licensed.
2
+ import type { Fiber } from "./types.js";
3
+ import { getReactWorkTagsForFiber } from "./index.js";
4
+
5
+ export const getCurrentFiberFromRoot = (fiber: Fiber): Fiber | null => {
6
+ const alternate = fiber.alternate;
7
+ if (!alternate) return null;
8
+ let firstBranch = fiber;
9
+ let secondBranch = alternate;
10
+
11
+ while (firstBranch.return) {
12
+ const firstParent = firstBranch.return;
13
+ const secondParent = firstParent.alternate;
14
+ if (!secondParent) {
15
+ const nextParent = firstParent.return;
16
+ if (!nextParent) return null;
17
+ firstBranch = secondBranch = nextParent;
18
+ continue;
19
+ }
20
+
21
+ if (firstParent.child === secondParent.child) {
22
+ let child = firstParent.child;
23
+ while (child) {
24
+ if (child === firstBranch || child === secondBranch) {
25
+ let root = firstParent;
26
+ while (root.return) root = root.return;
27
+ if (root.tag !== getReactWorkTagsForFiber(root).HostRoot) return null;
28
+ return child === firstBranch ? fiber : alternate;
29
+ }
30
+ child = child.sibling;
31
+ }
32
+ return null;
33
+ }
34
+
35
+ if (firstBranch.return !== secondBranch.return) {
36
+ firstBranch = firstParent;
37
+ secondBranch = secondParent;
38
+ } else {
39
+ let didFindChild = false;
40
+ let child = firstParent.child;
41
+ while (child) {
42
+ if (child === firstBranch) {
43
+ firstBranch = firstParent;
44
+ secondBranch = secondParent;
45
+ didFindChild = true;
46
+ break;
47
+ }
48
+ if (child === secondBranch) {
49
+ firstBranch = secondParent;
50
+ secondBranch = firstParent;
51
+ didFindChild = true;
52
+ break;
53
+ }
54
+ child = child.sibling;
55
+ }
56
+ if (!didFindChild) {
57
+ child = secondParent.child;
58
+ while (child) {
59
+ if (child === firstBranch) {
60
+ firstBranch = secondParent;
61
+ secondBranch = firstParent;
62
+ didFindChild = true;
63
+ break;
64
+ }
65
+ if (child === secondBranch) {
66
+ firstBranch = firstParent;
67
+ secondBranch = secondParent;
68
+ didFindChild = true;
69
+ break;
70
+ }
71
+ child = child.sibling;
72
+ }
73
+ if (!didFindChild) return null;
74
+ }
75
+ }
76
+ if (firstBranch.alternate !== secondBranch) return null;
77
+ }
78
+
79
+ if (firstBranch.tag !== getReactWorkTagsForFiber(firstBranch).HostRoot) return null;
80
+ const root = firstBranch.stateNode;
81
+ if (typeof root !== "object" || root === null || !("current" in root)) return null;
82
+ if (root.current === firstBranch) return fiber;
83
+ return root.current === secondBranch ? alternate : null;
84
+ };
@@ -49,11 +49,16 @@ export const getReactWorkTagsForFiber = (fiber: Fiber): Readonly<ReactWorkTagMap
49
49
 
50
50
  const traversedFibers: Fiber[] = [fiber];
51
51
  let rootFiber = fiber;
52
+ let workTags = defaultReactWorkTags;
52
53
  while (rootFiber.return) {
53
54
  rootFiber = rootFiber.return;
55
+ const ancestorWorkTags = fiberReactWorkTags.get(rootFiber);
56
+ if (ancestorWorkTags) {
57
+ workTags = ancestorWorkTags;
58
+ break;
59
+ }
54
60
  traversedFibers.push(rootFiber);
55
61
  }
56
- const workTags = fiberReactWorkTags.get(rootFiber) ?? defaultReactWorkTags;
57
62
  for (const traversedFiber of traversedFibers) {
58
63
  fiberReactWorkTags.set(traversedFiber, workTags);
59
64
  if (traversedFiber.alternate) {