@gjsify/cli 0.5.1 → 0.5.2
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/cli.gjs.mjs +4 -4
- package/lib/bundler-pick.d.ts +14 -0
- package/lib/bundler-pick.js +64 -2
- package/package.json +17 -17
package/dist/cli.gjs.mjs
CHANGED
|
@@ -3,10 +3,10 @@ if(globalThis.__gjsifyBundleUrl??=import.meta.url,globalThis.process===void 0){l
|
|
|
3
3
|
`)}else if(we){let S=` `.repeat(this._groupDepth*this._groupIndentation)+_formatArgs(...a);n===`stderr`?printerr(S):print(S)}else{let S=globalThis.console;n===`stderr`?S.error(...a):S.log(...a)}}log(...n){this._write(`stdout`,...n)}info(...n){this._write(`stdout`,...n)}debug(...n){this._write(`stdout`,...n)}warn(...n){this._write(`stderr`,...n)}error(...n){this._write(`stderr`,...n)}dir(n,a){this._write(`stdout`,n)}dirxml(...n){this.log(...n)}assert(n,...a){n||this.error(`Assertion failed:`,...a)}clear(){this._stdout?this._stdout.write(`\x1Bc`):we?print(`\x1Bc`):globalThis.console.clear()}count(n=`default`){let a=(this._counters.get(n)||0)+1;this._counters.set(n,a),this.log(`${n}: ${a}`)}countReset(n=`default`){this._counters.delete(n)}group(...n){n.length>0&&this.log(...n),this._groupDepth++}groupCollapsed(...n){this.group(...n)}groupEnd(){this._groupDepth>0&&this._groupDepth--}table(n,a){this._stdout?this._write(`stdout`,n):we?print(JSON.stringify(n,null,2)):globalThis.console.table(n,a)}time(n=`default`){this._timers.set(n,Date.now())}timeEnd(n=`default`){let a=this._timers.get(n);a===void 0?this.warn(`Warning: No such label '${n}' for console.timeEnd()`):(this.log(`${n}: ${Date.now()-a}ms`),this._timers.delete(n))}timeLog(n=`default`,...a){let S=this._timers.get(n);S===void 0?this.warn(`Warning: No such label '${n}' for console.timeLog()`):this.log(`${n}: ${Date.now()-S}ms`,...a)}trace(...n){let a=Error().stack?.split(`
|
|
4
4
|
`).slice(1).join(`
|
|
5
5
|
`)||``;this._write(`stderr`,`Trace:`,...n,`
|
|
6
|
-
`+a)}profile(n){}profileEnd(n){}timeStamp(n){}},Te=new Console,log=(...n)=>Te.log(...n),info=(...n)=>Te.info(...n),Ee=__name$1((...n)=>Te.debug(...n),`debug`),warn=(...n)=>Te.warn(...n),error=(...n)=>Te.error(...n),dir=(n,a)=>Te.dir(n,a),dirxml=(...n)=>Te.dirxml(...n),table=(n,a)=>Te.table(n,a),clear=()=>Te.clear(),assert=(n,...a)=>Te.assert(n,...a),trace=(...n)=>Te.trace(...n),time=n=>Te.time(n),timeEnd=n=>Te.timeEnd(n),timeLog=(n,...a)=>Te.timeLog(n,...a),De=__name$1(n=>Te.count(n),`count`),countReset=n=>Te.countReset(n),group=(...n)=>Te.group(...n),groupCollapsed=(...n)=>Te.groupCollapsed(...n),groupEnd=()=>Te.groupEnd(),profile=n=>{},profileEnd=n=>{},timeStamp=n=>{}}),ke,Ae=__esmMin(()=>{Oe(),ke={log,info,debug:Ee,warn,error,dir,dirxml,table,time,timeEnd,timeLog,trace,assert,clear,count:De,countReset,group,groupCollapsed,groupEnd,profile,profileEnd,timeStamp}}),je=__esmMin(()=>{Ae()}),Me,Fe=__esmMin(()=>{Me=__name$1(n=>{Promise.resolve().then(n)},`queueMicrotask`)});function drainOnce(n){let a=Math.min(64,Ie.length);for(let S=0;S<a;S++){let a=Ie.shift();try{a()}catch(a){try{n.log_default_handler(`gjsify-nextTick`,n.LogLevelFlags.LEVEL_WARNING,String(a?.stack||a),null)}catch{}}}Ie.length>0?n.timeout_add(n.PRIORITY_DEFAULT,1,()=>(drainOnce(n),!1)):Le=!1}function tryGLibTimeout(n){let a=globalThis.imports?.gi?.GLib;return a?.timeout_add?(Ie.push(n),Le||(Le=!0,a.timeout_add(a.PRIORITY_DEFAULT,0,()=>(drainOnce(a),!1))),!0):!1}var Ie,Le,nextTick,Re=__esmMin(()=>{Ie=[],Le=!1,nextTick=(n,...a)=>{let S=a.length>0?()=>n(...a):n;if(!tryGLibTimeout(S)){if(typeof globalThis.process?.nextTick==`function`){globalThis.process.nextTick(n,...a);return}if(typeof queueMicrotask==`function`){queueMicrotask(S);return}Promise.resolve().then(S)}}}),ze,Be,getPathSeparator,Ve=__esmMin(()=>{se(),he(),{File:ze}=me,Be=__name$1((n,...a)=>{let S=ze.new_for_path(n);for(let n of a)S=S.resolve_relative_path(n);return S},`resolve`),getPathSeparator=()=>Z.get_current_dir().startsWith(`/`)?`/`:`\\`});function classOf(n){return He.call(n).slice(8,-1)}function throwDataCloneError(n){let a=globalThis.DOMException;if(typeof a==`function`)throw new a(n,`DataCloneError`);let S=Error(n);throw S.name=`DataCloneError`,S}function internalClone(n,a,S){if(n==null)return n;let C=typeof n;if(C===`boolean`||C===`number`||C===`string`||C===`bigint`)return n;C===`symbol`&&throwDataCloneError(`Symbol cannot be cloned`),C===`function`&&throwDataCloneError(`Function cannot be cloned`);let N=n;if(a.has(N))return a.get(N);let F=classOf(N);if(F===`Date`)return new Date(N.getTime());if(F===`RegExp`)return new RegExp(N.source,N.flags);if(F===`Boolean`||F===`Number`||F===`String`)return Object(N.valueOf());if(F===`BigInt`)return Object(BigInt.prototype.valueOf.call(N));if(N instanceof Error){let n=N,C=n.constructor?.name,F=new(C&&Ue[C]||Ue[n.name]||Error)(n.message);return F.name=n.name,`cause`in n&&Object.defineProperty(F,"cause",{value:internalClone(n.cause,a,S),writable:!0,enumerable:!1,configurable:!0}),F}if(F===`DOMException`){let n=globalThis.DOMException;if(typeof n==`function`){let a=N;return new n(a.message,a.name)}}if(F===`ArrayBuffer`){let n=N;if(S&&S.transferred.has(n)){let C=S.transferred.get(n);return a.set(N,C),C}(n.detached===!0||n.byteLength===0&&n.detached)&&throwDataCloneError(`ArrayBuffer is detached and cannot be cloned`);let C=n.slice(0);return a.set(N,C),C}if(F===`SharedArrayBuffer`||N&&typeof N==`object`&&N.constructor?.name===`SharedBuffer`)return N;if(F===`DataView`){let n=N,C=S?.viewSnapshots.get(N),F=internalClone(n.buffer,a,S),I=C?C.byteOffset:n.byteOffset,H=C?C.byteLength:n.byteLength,W=new DataView(F,I,H);return a.set(N,W),W}if(Ge.has(F)){let n=N,C=S?.viewSnapshots.get(N),F=internalClone(n.buffer,a,S),I=n.constructor,H=new I(F,C?C.byteOffset:n.byteOffset,C?C.length:n.length);return a.set(N,H),H}if(F===`Map`){let n=new Map;a.set(N,n);for(let[C,F]of N)n.set(internalClone(C,a,S),internalClone(F,a,S));return n}if(F===`Set`){let n=new Set;a.set(N,n);for(let C of N)n.add(internalClone(C,a,S));return n}{let n=globalThis,a=n.Blob,S=n.File;if(typeof S==`function`&&N instanceof S){let n=N;return new S([N],n.name,{type:n.type,lastModified:n.lastModified})}if(typeof a==`function`&&N instanceof a)return new a([N],{type:N.type})}if(N instanceof WeakMap&&throwDataCloneError(`WeakMap cannot be cloned`),N instanceof WeakSet&&throwDataCloneError(`WeakSet cannot be cloned`),N instanceof WeakRef&&throwDataCloneError(`WeakRef cannot be cloned`),typeof globalThis.Promise==`function`&&N instanceof Promise&&throwDataCloneError(`Promise cannot be cloned`),F===`Array`){let n=N,C=[];a.set(N,C);for(let N=0;N<n.length;N++)N in n&&(C[N]=internalClone(n[N],a,S));return C}if(F===`Object`||typeof N==`object`){let n={};a.set(N,n);for(let C of Object.keys(N))n[C]=internalClone(N[C],a,S);return n}throwDataCloneError(`${F} cannot be cloned`)}function structuredClone$1(n,a){let S=a?.transfer;if(!S||S.length===0)return internalClone(n,new Map);let C=new Set;for(let n of S)if(classOf(n)===`ArrayBuffer`){let a=n;a.detached===!0&&throwDataCloneError(`ArrayBuffer in transfer list is detached`),C.add(a)}let N=new Map;C.size>0&&snapshotViewsBackedByTransferredBuffers(n,C,N,new Set);let F=new Map;for(let n of C){let a=n;typeof a.transfer!=`function`&&throwDataCloneError(`ArrayBuffer.prototype.transfer() not available — runtime is not SM140+`),F.set(n,a.transfer())}return internalClone(n,new Map,{transferred:F,viewSnapshots:N})}function snapshotViewsBackedByTransferredBuffers(n,a,S,C){if(typeof n!=`object`||!n)return;let N=n;if(C.has(N))return;C.add(N);let F=classOf(N);if(F===`DataView`){let n=N;a.has(n.buffer)&&S.set(N,{byteOffset:n.byteOffset,length:0,byteLength:n.byteLength});return}if(Ge.has(F)){let n=N;a.has(n.buffer)&&S.set(N,{byteOffset:n.byteOffset,length:n.length,byteLength:n.byteLength});return}if(Array.isArray(N)){for(let n=0;n<N.length;n++)n in N&&snapshotViewsBackedByTransferredBuffers(N[n],a,S,C);return}if(F===`Map`){for(let[n,F]of N)snapshotViewsBackedByTransferredBuffers(n,a,S,C),snapshotViewsBackedByTransferredBuffers(F,a,S,C);return}if(F===`Set`){for(let n of N)snapshotViewsBackedByTransferredBuffers(n,a,S,C);return}if(F===`Object`)for(let n of Object.keys(N))snapshotViewsBackedByTransferredBuffers(N[n],a,S,C)}var He,Ue,Ge,Ke=__esmMin(()=>{({toString:He}=Object.prototype),Ue={Error,EvalError,RangeError,ReferenceError,SyntaxError,TypeError,URIError},Ge=new Set([`Int8Array`,`Uint8Array`,`Uint8ClampedArray`,`Int16Array`,`Uint16Array`,`Int32Array`,`Uint32Array`,`Float32Array`,`Float64Array`,`BigInt64Array`,`BigUint64Array`]),__name$1(structuredClone$1,`structuredClone`)});function ensureMainLoop(){let n=globalThis.imports;if(!n)return;if(qe)return Je;let a=n.gi?.GLib;if(a){if(Je=new a.MainLoop(null,!1),qe=!0,a.main_depth()===0)try{Je.runAsync()}catch{}return Je}}function quitMainLoop(){Je&&=(Je.quit(),qe=!1,null)}var qe,Je,Ye=__esmMin(()=>{qe=!1,Je=null}),Xe=__esmMin(()=>{re(),ie(),ce(),le(),ue(),de(),ve(),xe(),Se(),Ce(),je(),Fe(),Re(),Ve(),Ke(),Ye()});ne(),Xe(),registerGlobal(`Blob`,X),registerGlobal(`File`,te);function atobPolyfill(n){if(typeof globalThis.atob==`function`)return globalThis.atob(n);let a=n.replace(/[=\s]/g,``),S=``,C=0,N=0;for(let n=0;n<a.length;n++)C=C<<6|Qe[a.charCodeAt(n)],N+=6,N>=8&&(N-=8,S+=String.fromCharCode(C>>N&255));return S}function btoaPolyfill(n){if(typeof globalThis.btoa==`function`)return globalThis.btoa(n);let a=``,S=0;for(;S+2<n.length;S+=3){let C=n.charCodeAt(S)<<16|n.charCodeAt(S+1)<<8|n.charCodeAt(S+2);a+=Ze[C>>18&63]+Ze[C>>12&63]+Ze[C>>6&63]+Ze[C&63]}if(S+1===n.length){let C=n.charCodeAt(S)<<16;a+=Ze[C>>18&63]+Ze[C>>12&63]+`==`}else if(S+2===n.length){let C=n.charCodeAt(S)<<16|n.charCodeAt(S+1)<<8;a+=Ze[C>>18&63]+Ze[C>>12&63]+Ze[C>>6&63]+`=`}return a}function base64Decode$1(n){let a=n.replace(/[=\s]/g,``),S=new Uint8Array(a.length*3>>2),C=0,N=0,F=0;for(let n=0;n<a.length;n++)C=C<<6|Qe[a.charCodeAt(n)],N+=6,N>=8&&(N-=8,S[F++]=C>>N&255);return S.subarray(0,F)}function base64Encode$1(n){let a=``,S=n.length;for(let C=0;C<S;C+=3){let N=n[C],F=C+1<S?n[C+1]:0,I=C+2<S?n[C+2]:0;a+=Ze[N>>2],a+=Ze[(N&3)<<4|F>>4],a+=C+1<S?Ze[(F&15)<<2|I>>6]:`=`,a+=C+2<S?Ze[I&63]:`=`}return a}var Ze,Qe,$e=__esmMin(()=>{Ze=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,Qe=new Uint8Array(256);for(let n=0;n<64;n++)Qe[Ze.charCodeAt(n)]=n;__name$1(base64Decode$1,`base64Decode`),__name$1(base64Encode$1,`base64Encode`)});function normalizeEncoding(n){if(!n||n===`utf8`||n===`utf-8`)return`utf8`;switch((``+n).toLowerCase().replace(/-/g,``)){case`utf8`:return`utf8`;case`ascii`:return`ascii`;case`latin1`:case`binary`:return`latin1`;case`base64`:return`base64`;case`base64url`:return`base64url`;case`hex`:return`hex`;case`ucs2`:case`utf16le`:return`utf16le`;default:return`utf8`}}function checkEncoding(n){let a=(``+n).toLowerCase().replace(/-/g,``);if(!et.includes(a))throw TypeError(`Unknown encoding: ${n}`)}var et,tt=__esmMin(()=>{et=[`utf8`,`ascii`,`latin1`,`binary`,`base64`,`base64url`,`hex`,`ucs2`,`utf16le`]});function encodeString(n,a){switch(a){case`utf8`:return it().encode(n);case`ascii`:{let a=new Uint8Array(n.length);for(let S=0;S<n.length;S++)a[S]=n.charCodeAt(S)&127;return a}case`latin1`:{let a=new Uint8Array(n.length);for(let S=0;S<n.length;S++)a[S]=n.charCodeAt(S)&255;return a}case`base64`:return base64Decode$1(n.replace(/-/g,`+`).replace(/_/g,`/`));case`base64url`:return encodeString(n.replace(/-/g,`+`).replace(/_/g,`/`),`base64`);case`hex`:{let a=n.length>>>1,S=new Uint8Array(a);for(let C=0;C<a;C++){let a=parseInt(n[C*2],16),N=parseInt(n[C*2+1],16);if(Number.isNaN(a)||Number.isNaN(N))break;S[C]=a<<4|N}return S}case`utf16le`:{let a=new Uint8Array(n.length*2);for(let S=0;S<n.length;S++){let C=n.charCodeAt(S);a[S*2]=C&255,a[S*2+1]=C>>8&255}return a}default:return it().encode(n)}}function decodeString(n,a,S,C){let N=S!==void 0||C!==void 0?n.subarray(S??0,C??n.length):n;switch(a){case`utf8`:return ot().decode(N);case`ascii`:{let n=``;for(let a=0;a<N.length;a++)n+=String.fromCharCode(N[a]&127);return n}case`latin1`:{let n=``;for(let a=0;a<N.length;a++)n+=String.fromCharCode(N[a]);return n}case`base64`:{let n=``;for(let a=0;a<N.length;a++)n+=String.fromCharCode(N[a]);return btoaPolyfill(n)}case`base64url`:return decodeString(N,`base64`).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/,``);case`hex`:{let n=``;for(let a=0;a<N.length;a++)n+=N[a].toString(16).padStart(2,`0`);return n}case`utf16le`:{let n=``;for(let a=0;a+1<N.length;a+=2)n+=String.fromCharCode(N[a]|N[a+1]<<8);return n}default:return ot().decode(N)}}function checkOffset(n,a,S){if(n+a>S)throw RangeError(`Attempt to access memory outside buffer bounds`)}var nt,rt,it,ot,st=__esmMin(()=>{$e(),it=__name$1(()=>nt??=new TextEncoder,`textEncoder`),ot=__name$1(()=>rt??=new TextDecoder,`textDecoder`)}),ct,lt,ut,dt,ft,SlowBuffer,pt=__esmMin(()=>{st(),tt(),ct=typeof SharedArrayBuffer<`u`,lt=class Buffer extends Uint8Array{static _isBuffer=!0;static alloc(n,a,S){if(typeof n!=`number`)throw TypeError(`The "size" argument must be of type number. Received type ${typeof n}`);if(n<0)throw RangeError(`The value "${n}" is invalid for option "size"`);let C=new Buffer(n);return a!==void 0&&a!==0&&C.fill(a,0,n,S),C}static allocUnsafe(n){if(typeof n!=`number`)throw TypeError(`The "size" argument must be of type number. Received type ${typeof n}`);return new Buffer(n)}static allocUnsafeSlow(n){return Buffer.allocUnsafe(n)}static from(n,a,S){if(typeof n==`string`){let S=normalizeEncoding(a);if(a&&typeof a==`string`){let n=(``+a).toLowerCase().replace(/-/g,``);[`utf8`,`ascii`,`latin1`,`binary`,`base64`,`base64url`,`hex`,`ucs2`,`utf16le`,``].includes(n)||checkEncoding(a)}let C=encodeString(n,S);return new Buffer(C.buffer,C.byteOffset,C.byteLength)}if(ArrayBuffer.isView(n)){let a=new Buffer(n.buffer,n.byteOffset,n.byteLength),S=new Buffer(a.length);return S.set(a),S}if(n instanceof ArrayBuffer){let C=a||0;return new Buffer(n,C,S===void 0?n.byteLength-C:S)}if(ct&&n instanceof SharedArrayBuffer){let C=a||0,N=S===void 0?n.byteLength-C:S;return new Buffer(new Uint8Array(n,C,N))}if(typeof n==`object`&&n&&typeof n.viewBytes==`function`&&typeof n.byteLength==`number`&&n.constructor?.name===`SharedBuffer`){let C=n,N=a||0,F=S===void 0?C.byteLength-N:S,I=C.viewBytes(N,F);return new Buffer(I.buffer,I.byteOffset,I.byteLength)}if(Array.isArray(n)){let a=new Buffer(n.length);for(let S=0;S<n.length;S++)a[S]=n[S]&255;return a}throw TypeError(`The first argument must be of type string or an instance of Buffer, ArrayBuffer, or Array`)}static isBuffer(n){return n instanceof Buffer}static isEncoding(n){if(typeof n!=`string`)return!1;let a=n.toLowerCase().replace(/-/g,``);return[`utf8`,`ascii`,`latin1`,`binary`,`base64`,`base64url`,`hex`,`ucs2`,`utf16le`].includes(a)}static byteLength(n,a){if(typeof n!=`string`){if(ArrayBuffer.isView(n)||n instanceof ArrayBuffer||ct&&n instanceof SharedArrayBuffer)return n.byteLength;throw TypeError(`The "string" argument must be one of type string, Buffer, or ArrayBuffer`)}switch(normalizeEncoding(a)){case`utf8`:return new TextEncoder().encode(n).byteLength;case`ascii`:case`latin1`:return n.length;case`base64`:case`base64url`:{let a=n.length;for(;a>0&&(n[a-1]===`=`||n[a-1]===` `);)a--;return a*3>>>2}case`hex`:return n.length>>>1;case`utf16le`:return n.length*2;default:return new TextEncoder().encode(n).byteLength}}static compare(n,a){if(!(n instanceof Uint8Array)||!(a instanceof Uint8Array))throw TypeError(`Arguments must be Buffers or Uint8Arrays`);let S=Math.min(n.length,a.length);for(let C=0;C<S;C++){if(n[C]<a[C])return-1;if(n[C]>a[C])return 1}return n.length<a.length?-1:+(n.length>a.length)}static concat(n,a){if(n.length===0)return Buffer.alloc(0);if(a===void 0){a=0;for(let S=0;S<n.length;S++)a+=n[S].length}let S=Buffer.alloc(a),C=0;for(let N=0;N<n.length;N++){let F=n[N],I=Math.min(F.length,a-C);I<=0||(S.set(F.subarray(0,I),C),C+=I)}return S}static poolSize=8192;toString(n,a,S){let C=normalizeEncoding(n);return decodeString(this,C,a,S)}toJSON(){return{type:`Buffer`,data:Array.from(this)}}equals(n){if(!(n instanceof Uint8Array))throw TypeError(`Argument must be a Buffer or Uint8Array`);if(this.length!==n.length)return!1;for(let a=0;a<this.length;a++)if(this[a]!==n[a])return!1;return!0}compare(n,a,S,C,N){if(!(n instanceof Uint8Array))throw TypeError(`Argument must be a Buffer or Uint8Array`);let F=C!==void 0||N!==void 0?this.subarray(C??0,N??this.length):this,I=a!==void 0||S!==void 0?n.subarray(a??0,S??n.length):n;return Buffer.compare(F,I)}copy(n,a=0,S=0,C){let N=C??this.length,F=Math.min(N-S,n.length-a);return F<=0?0:(n.set(this.subarray(S,S+F),a),F)}slice(n,a){let S=n??0,C=a??this.length,N=super.subarray(S,C);return new Buffer(N.buffer,N.byteOffset,N.byteLength)}subarray(n,a){let S=super.subarray(n,a);return new Buffer(S.buffer,S.byteOffset,S.byteLength)}write(n,a,S,C){a??=0;let N=encodeString(n,normalizeEncoding(C||(typeof S==`string`?S:void 0))),F=S!==void 0&&typeof S==`number`?Math.min(S,this.length-a):this.length-a,I=Math.min(N.length,F);return this.set(N.subarray(0,I),a),I}fill(n,a,S,C){let N=a??0,F=S??this.length;if(typeof n==`number`)super.fill(n&255,N,F);else if(typeof n==`string`){let a=encodeString(n,normalizeEncoding(C));if(a.length===0)super.fill(0,N,F);else if(a.length===1)super.fill(a[0],N,F);else for(let n=N;n<F;n++)this[n]=a[(n-N)%a.length]}else if(n instanceof Uint8Array)if(n.length===0)super.fill(0,N,F);else for(let a=N;a<F;a++)this[a]=n[(a-N)%n.length];return this}indexOf(n,a,S){if(typeof n==`number`)return super.indexOf(n&255,a);let C=typeof n==`string`?encodeString(n,normalizeEncoding(S)):n,N=a??0;outer:for(let n=N;n<=this.length-C.length;n++){for(let a=0;a<C.length;a++)if(this[n+a]!==C[a])continue outer;return n}return-1}lastIndexOf(n,a,S){if(typeof n==`number`)return a===void 0?super.lastIndexOf(n&255):super.lastIndexOf(n&255,a);let C=typeof n==`string`?encodeString(n,normalizeEncoding(S)):n,N=a===void 0?this.length-C.length:Math.min(a,this.length-C.length);outer:for(let n=N;n>=0;n--){for(let a=0;a<C.length;a++)if(this[n+a]!==C[a])continue outer;return n}return-1}includes(n,a,S){return this.indexOf(n,a,S)!==-1}readUInt8(n=0){return checkOffset(n,1,this.length),this[n]}readUInt16BE(n=0){return checkOffset(n,2,this.length),this[n]<<8|this[n+1]}readUInt16LE(n=0){return checkOffset(n,2,this.length),this[n]|this[n+1]<<8}readUInt32BE(n=0){return checkOffset(n,4,this.length),this[n]*16777216+(this[n+1]<<16|this[n+2]<<8|this[n+3])}readUInt32LE(n=0){return checkOffset(n,4,this.length),this[n+3]*16777216+(this[n+2]<<16|this[n+1]<<8|this[n])>>>0}readInt8(n=0){return checkOffset(n,1,this.length),this[n]|(this[n]&128?4294967040:0)}readInt16BE(n=0){checkOffset(n,2,this.length);let a=this[n]<<8|this[n+1];return a&32768?a|4294901760:a}readInt16LE(n=0){checkOffset(n,2,this.length);let a=this[n]|this[n+1]<<8;return a&32768?a|4294901760:a}readInt32BE(n=0){return checkOffset(n,4,this.length),this[n]<<24|this[n+1]<<16|this[n+2]<<8|this[n+3]}readInt32LE(n=0){return checkOffset(n,4,this.length),this[n]|this[n+1]<<8|this[n+2]<<16|this[n+3]<<24}readFloatBE(n=0){return checkOffset(n,4,this.length),new DataView(this.buffer,this.byteOffset+n,4).getFloat32(0,!1)}readFloatLE(n=0){return checkOffset(n,4,this.length),new DataView(this.buffer,this.byteOffset+n,4).getFloat32(0,!0)}readDoubleBE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getFloat64(0,!1)}readDoubleLE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getFloat64(0,!0)}readBigInt64BE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getBigInt64(0,!1)}readBigInt64LE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getBigInt64(0,!0)}readBigUInt64BE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getBigUint64(0,!1)}readBigUInt64LE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getBigUint64(0,!0)}readUIntBE(n,a){checkOffset(n,a,this.length);let S=0;for(let C=0;C<a;C++)S=S*256+this[n+C];return S}readUIntLE(n,a){checkOffset(n,a,this.length);let S=0,C=1;for(let N=0;N<a;N++)S+=this[n+N]*C,C*=256;return S}readIntBE(n,a){checkOffset(n,a,this.length);let S=0;for(let C=0;C<a;C++)S=S*256+this[n+C];return S>=2**(8*a-1)&&(S-=2**(8*a)),S}readIntLE(n,a){checkOffset(n,a,this.length);let S=0,C=1;for(let N=0;N<a;N++)S+=this[n+N]*C,C*=256;return S>=2**(8*a-1)&&(S-=2**(8*a)),S}writeUInt8(n,a=0){return checkOffset(a,1,this.length),this[a]=n&255,a+1}writeUInt16BE(n,a=0){return checkOffset(a,2,this.length),this[a]=n>>>8&255,this[a+1]=n&255,a+2}writeUInt16LE(n,a=0){return checkOffset(a,2,this.length),this[a]=n&255,this[a+1]=n>>>8&255,a+2}writeUInt32BE(n,a=0){return checkOffset(a,4,this.length),this[a]=n>>>24&255,this[a+1]=n>>>16&255,this[a+2]=n>>>8&255,this[a+3]=n&255,a+4}writeUInt32LE(n,a=0){return checkOffset(a,4,this.length),this[a]=n&255,this[a+1]=n>>>8&255,this[a+2]=n>>>16&255,this[a+3]=n>>>24&255,a+4}writeInt8(n,a=0){return checkOffset(a,1,this.length),n<0&&(n=255+n+1),this[a]=n&255,a+1}writeInt16BE(n,a=0){return checkOffset(a,2,this.length),this[a]=n>>>8&255,this[a+1]=n&255,a+2}writeInt16LE(n,a=0){return checkOffset(a,2,this.length),this[a]=n&255,this[a+1]=n>>>8&255,a+2}writeInt32BE(n,a=0){return checkOffset(a,4,this.length),this[a]=n>>>24&255,this[a+1]=n>>>16&255,this[a+2]=n>>>8&255,this[a+3]=n&255,a+4}writeInt32LE(n,a=0){return checkOffset(a,4,this.length),this[a]=n&255,this[a+1]=n>>>8&255,this[a+2]=n>>>16&255,this[a+3]=n>>>24&255,a+4}writeFloatBE(n,a=0){return checkOffset(a,4,this.length),new DataView(this.buffer,this.byteOffset+a,4).setFloat32(0,n,!1),a+4}writeFloatLE(n,a=0){return checkOffset(a,4,this.length),new DataView(this.buffer,this.byteOffset+a,4).setFloat32(0,n,!0),a+4}writeDoubleBE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setFloat64(0,n,!1),a+8}writeDoubleLE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setFloat64(0,n,!0),a+8}writeBigInt64BE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setBigInt64(0,n,!1),a+8}writeBigInt64LE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setBigInt64(0,n,!0),a+8}writeBigUInt64BE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setBigUint64(0,n,!1),a+8}writeBigUInt64LE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setBigUint64(0,n,!0),a+8}swap16(){let n=this.length;if(n%2!=0)throw RangeError(`Buffer size must be a multiple of 16-bits`);for(let a=0;a<n;a+=2){let n=this[a];this[a]=this[a+1],this[a+1]=n}return this}swap32(){let n=this.length;if(n%4!=0)throw RangeError(`Buffer size must be a multiple of 32-bits`);for(let a=0;a<n;a+=4){let n=this[a],S=this[a+1];this[a]=this[a+3],this[a+1]=this[a+2],this[a+2]=S,this[a+3]=n}return this}swap64(){let n=this.length;if(n%8!=0)throw RangeError(`Buffer size must be a multiple of 64-bits`);for(let a=0;a<n;a+=8){let n=this[a],S=this[a+1],C=this[a+2],N=this[a+3];this[a]=this[a+7],this[a+1]=this[a+6],this[a+2]=this[a+5],this[a+3]=this[a+4],this[a+4]=N,this[a+5]=C,this[a+6]=S,this[a+7]=n}return this}},ut=2**31-1,dt=2**28-16,ft={MAX_LENGTH:ut,MAX_STRING_LENGTH:dt},SlowBuffer=class extends lt{constructor(n){super(n)}}}),mt=__exportAll$3({Blob:()=>X,Buffer:()=>lt,File:()=>te,INSPECT_MAX_BYTES:()=>50,SlowBuffer:()=>SlowBuffer,atob:()=>ht,atobPolyfill:()=>atobPolyfill,base64Decode:()=>base64Decode$1,base64Encode:()=>base64Encode$1,btoa:()=>gt,btoaPolyfill:()=>btoaPolyfill,checkEncoding:()=>checkEncoding,constants:()=>ft,default:()=>_t,kMaxLength:()=>ut,kStringMaxLength:()=>dt,normalizeEncoding:()=>normalizeEncoding}),ht,gt,_t,vt=__esmMin(()=>{$e(),ne(),tt(),pt(),ht=globalThis.atob,gt=globalThis.btoa,_t={Buffer:lt,SlowBuffer,Blob:X,File:te,atob:ht,btoa:gt,kMaxLength:ut,kStringMaxLength:dt,constants:ft,INSPECT_MAX_BYTES:50}});vt(),`Buffer`in globalThis||Object.defineProperty(globalThis,"Buffer",{value:lt,enumerable:!1,writable:!0,configurable:!0}),se(),typeof globalThis.btoa!=`function`&&Object.defineProperty(globalThis,"btoa",{value:function btoa(n){let a=new Uint8Array(n.length);for(let S=0;S<n.length;S++)a[S]=n.charCodeAt(S)&255;return Z.base64_encode(a)},enumerable:!0,writable:!0,configurable:!0}),typeof globalThis.atob!=`function`&&Object.defineProperty(globalThis,"atob",{value:function atob(n){let a=Z.base64_decode(n),S=``;for(let n=0;n<a.length;n++)S+=String.fromCharCode(a[n]);return S},enumerable:!0,writable:!0,configurable:!0}),Xe(),typeof queueMicrotask!=`function`&&Object.defineProperty(globalThis,"queueMicrotask",{value:Me,enumerable:!0,writable:!0,configurable:!0});function getGjsGlobal(){return globalThis}function getGioNamespace(){let n=getGjsGlobal().imports?.gi;if(!n)return null;let a=null;try{a=n.GioUnix??null}catch{}if(!a)try{a=n.Gio??null}catch{}return a}var yt=__esmMin(()=>{});function getMonotonicTime(){try{let n=getGjsGlobal().imports?.gi?.GLib;if(n?.get_monotonic_time)return BigInt(n.get_monotonic_time())*1000n}catch{}return typeof performance?.now==`function`?BigInt(Math.round(performance.now()*1e6)):BigInt(Date.now())*1000000n}function hrtime(n){let a=getMonotonicTime()-bt,S=Number(a/1000000000n),C=Number(a%1000000000n);if(n){let a=S-n[0],N=C-n[1];return N<0&&(a--,N+=1e9),[a,N]}return[S,C]}function hrtimeBigint(){return getMonotonicTime()-bt}var bt,xt=__esmMin(()=>{yt(),bt=getMonotonicTime()});function detectGjsVersion(){try{let n=getGjsGlobal().imports?.system;if(n?.version!==void 0){let a=Number(n.version);return`${Math.floor(a/1e4)}.${Math.floor(a%1e4/100)}.${a%100}`}}catch{}}function detectNodeVersion(){if(typeof globalThis.process?.versions?.node==`string`)return globalThis.process.versions.node}function detectVersionInfo(){if(detectNodeVersion())return{version:globalThis.process.version,versions:{...globalThis.process.versions},title:globalThis.process?.title||`node`};let n=detectGjsVersion(),a={node:`20.0.0`};return n&&(a.gjs=n),{version:`v20.0.0`,versions:a,title:`gjs`}}function detectPpid(){if(typeof globalThis.process?.ppid==`number`)return globalThis.process.ppid;try{let n=getGjsGlobal().imports?.gi?.GLib;if(n){let[,a]=n.file_get_contents(`/proc/self/status`);if(a){let n=new TextDecoder().decode(a).match(/PPid:\s+(\d+)/);if(n)return parseInt(n[1],10)}}}catch{}return 0}function detectPlatform(){try{let n=getGjsGlobal().imports?.gi?.GLib;if(n&&n.get_os_info(`ID`))return`linux`}catch{}return getGjsGlobal().imports?.system===void 0&&typeof globalThis.process?.platform==`string`?globalThis.process.platform:`linux`}function detectArch(){return typeof globalThis.process?.arch==`string`?globalThis.process.arch:`x64`}function getPid$1(){if(typeof globalThis.process?.pid==`number`)return globalThis.process.pid;try{let n=getGjsGlobal().imports?.gi?.GLib;if(n){let[,a]=n.file_get_contents(`/proc/self/stat`);if(a){let n=new TextDecoder().decode(a),S=parseInt(n,10);if(!isNaN(S))return S}}}catch{}return 0}var St=__esmMin(()=>{yt(),__name$1(getPid$1,`getPid`)});function getEnvProxy(){if(typeof globalThis.process?.env==`object`)return globalThis.process.env;try{let n=getGjsGlobal().imports?.gi?.GLib;if(n)return new Proxy({},{get(a,S){if(typeof S==`string`)return n.getenv(S)??void 0},set(a,S,C){return typeof S==`string`?(n.setenv(S,String(C),!0),!0):!1},deleteProperty(a,S){return typeof S==`string`?(n.unsetenv(S),!0):!1},has(a,S){return typeof S==`string`?n.getenv(S)!==null:!1},ownKeys(a){return n.listenv()},getOwnPropertyDescriptor(a,S){if(typeof S!=`string`)return;let C=n.getenv(S);if(C!==null)return{configurable:!0,enumerable:!0,writable:!0,value:C}}})}catch{}return{}}function getArgv(){if(globalThis.process?.argv!==void 0)return globalThis.process.argv;try{let n=getGjsGlobal().imports?.system;if(n?.programArgs)return[`gjs`,n.programInvocationName||``,...n.programArgs]}catch{}return[`gjs`]}function getExecPath(){if(typeof globalThis.process?.execPath==`string`)return globalThis.process.execPath;try{let n=getGjsGlobal().imports?.system;if(n?.programInvocationName)return n.programInvocationName}catch{}return`/usr/bin/gjs`}function getCwd(){try{let n=getGjsGlobal().imports?.gi?.GLib;if(n?.get_current_dir)return n.get_current_dir()}catch{}return`/`}function chdir(n){let a=getGjsGlobal().imports?.gi?.GLib;try{if(a?.chdir){if(!a.file_test(n,16)){let a=Error(`ENOENT: no such file or directory, chdir '${n}'`);throw a.code=`ENOENT`,a.syscall=`chdir`,a.path=n,a}a.chdir(n);return}}catch(n){if(n&&typeof n==`object`&&n.code===`ENOENT`)throw n}if(!a){let a=globalThis.process;if(a&&typeof a.chdir==`function`){a.chdir(n);return}}throw Error(`process.chdir() is not supported in this environment`)}var Ct=__esmMin(()=>{yt()});function exitProcess(n){let a=getGjsGlobal().imports,S=a?.gi?.GLib,C=a?.system,N=S?.idle_add,F=S?.SOURCE_REMOVE,I=S?.PRIORITY_DEFAULT;if(C?.exit&&N&&typeof I==`number`&&typeof F==`boolean`)return ensureMainLoop(),N(I,()=>(quitMainLoop(),C.exit(n),F)),new Promise(()=>{});try{C?.exit&&C.exit(n)}catch{}let H=globalThis.process;throw H&&typeof H.exit==`function`&&H.exit(n),Error(`process.exit(${n})`)}var wt=__esmMin(()=>{yt(),Xe()});function isGjs(){return getGjsGlobal().imports?.gi?.GLib!==void 0}function killPid(n,a){try{let S=getGjsGlobal().imports?.gi?.GLib;if(S){let C=typeof a==`number`?String(a):a||`SIGTERM`,N=C.startsWith(`SIG`)?`-${C.slice(3)}`:`-${C}`;return S.spawn_command_line_sync(`kill ${N} ${n}`),!0}}catch{}if(!isGjs()){let S=globalThis.process;if(S&&typeof S.kill==`function`)return S.kill(n,a)}throw Error(`process.kill() is not supported in this environment`)}function memoryUsage(){try{let n=getGjsGlobal().imports?.gi?.GLib;if(n){let[,a]=n.file_get_contents(`/proc/self/status`);if(a){let n=new TextDecoder().decode(a).match(/VmRSS:\s+(\d+)/),S=n?parseInt(n[1],10)*1024:0;return{rss:S,heapTotal:S,heapUsed:S,external:0,arrayBuffers:0}}}}catch{}if(!isGjs()){let n=globalThis.process;if(n&&typeof n.memoryUsage==`function`)return n.memoryUsage()}return{rss:0,heapTotal:0,heapUsed:0,external:0,arrayBuffers:0}}function cpuUsage(n){if(!isGjs()){let a=globalThis.process;if(a&&typeof a.cpuUsage==`function`)return a.cpuUsage(n)}return{user:0,system:0}}var Tt=__esmMin(()=>{yt()}),Et,Dt,Ot,kt=__esmMin(()=>{if(Et=null,Dt=globalThis.imports?.gi,Dt)try{Et=Dt.GjsifyTerminal}catch{}Ot=Et});function onceWrapper(){let{target:n,type:a,listener:S}=this;return this.wrapperFn&&n.removeListener(a,this.wrapperFn),S.apply(n,Array.from(arguments))}function _onceWrap(n,a,S){let C={target:n,type:a,listener:S,wrapperFn:void 0},N=onceWrapper.bind(C);return C.wrapperFn=N,N.listener=S,N}function arrayClone(n){switch(n.length){case 0:return[];case 1:return[n[0]];case 2:return[n[0],n[1]];case 3:return[n[0],n[1],n[2]];default:return n.slice()}}function checkListener(n){if(typeof n!=`function`)throw TypeError(`The "listener" argument must be of type Function. Received type `+typeof n)}function validateNumber(n,a){if(typeof n!=`number`||n!==n)throw TypeError(`The "${a}" argument must be of type number. Received type ${typeof n}`)}function spliceOne(n,a){for(;a+1<n.length;a++)n[a]=n[a+1];n.pop()}function unwrapListeners(n){let a=Array.from({length:n.length});for(let S=0;S<a.length;++S)a[S]=n[S].listener??n[S];return a}function createAbortError$1(n){let a=Error(`The operation was aborted`);return a.name=`AbortError`,a.code=`ABORT_ERR`,n?.reason&&(a.cause=n.reason),a}var At,jt,Mt,Nt=__esmMin(()=>{Ae(),At=Symbol(`kCapture`),jt=Symbol.for(`nodejs.rejection`),Mt=class EventEmitter{static defaultMaxListeners=10;static errorMonitor=Symbol(`events.errorMonitor`);static captureRejectionSymbol=jt;static _captureRejections=!1;static get captureRejections(){return EventEmitter._captureRejections}static set captureRejections(n){if(typeof n!=`boolean`)throw TypeError(`The "captureRejections" argument must be of type boolean.`);EventEmitter._captureRejections=n}_events;_eventsCount;_maxListeners;[At];constructor(n){this._events=Object.create(null),this._eventsCount=0,this._maxListeners=void 0,this[At]=n?.captureRejections??EventEmitter._captureRejections}setMaxListeners(n){if(validateNumber(n,`n`),n<0)throw RangeError(`The value of "n" is out of range. It must be a non-negative number. Received `+n);return this._maxListeners=n,this}getMaxListeners(){return this._maxListeners??EventEmitter.defaultMaxListeners}emit(n,...a){let S=this._events,C=n===`error`;if(S!==void 0)C&&S[EventEmitter.errorMonitor]!==void 0&&this.emit(EventEmitter.errorMonitor,...a),C&&=S.error===void 0;else if(!C)return!1;if(C){let n;if(n=a.length>0?a[0]:Error(`Unhandled error.`),n instanceof Error)throw n;let S=Error(`Unhandled error. (`+n+`)`);throw S.context=n,S}let N=S[n];if(N===void 0)return!1;if(typeof N==`function`){let S=N.apply(this,a);S!=null&&this[At]&&this._addCatch(S,n,a)}else{let S=arrayClone(N),C=S.length;for(let N=0;N<C;++N){let C=S[N].apply(this,a);C!=null&&this[At]&&this._addCatch(C,n,a)}}return!0}_addCatch(n,a,S){typeof n?.then==`function`&&n.then(void 0,n=>{let C=this[jt];if(typeof C==`function`)C.call(this,n,a,...S);else{let a=this[At];try{this[At]=!1,this.emit(`error`,n)}finally{this[At]=a}}})}addListener(n,a){return this._addListener(n,a,!1)}on(n,a){return this._addListener(n,a,!1)}prependListener(n,a){return this._addListener(n,a,!0)}_addListener(n,a,S){checkListener(a);let C=this._events;C===void 0?(C=this._events=Object.create(null),this._eventsCount=0):C.newListener!==void 0&&(this.emit(`newListener`,n,a.listener??a),C=this._events);let N=C[n];N===void 0?(C[n]=a,++this._eventsCount):typeof N==`function`?C[n]=S?[a,N]:[N,a]:S?N.unshift(a):N.push(a);let F=this.getMaxListeners();if(F>0){let a=typeof C[n]==`function`?1:C[n].length;if(a>F&&!C[n].warned){typeof C[n]!=`function`&&(C[n].warned=!0);let S=Error(`Possible EventEmitter memory leak detected. ${a} ${String(n)} listeners added to [${this.constructor.name}]. Use emitter.setMaxListeners() to increase limit`);S.name=`MaxListenersExceededWarning`,ke.warn(S.message)}}return this}once(n,a){return checkListener(a),this.on(n,_onceWrap(this,n,a)),this}prependOnceListener(n,a){return checkListener(a),this.prependListener(n,_onceWrap(this,n,a)),this}removeListener(n,a){checkListener(a);let S=this._events;if(S===void 0)return this;let C=S[n];if(C===void 0)return this;if(C===a||C.listener===a)--this._eventsCount===0?this._events=Object.create(null):(delete S[n],S.removeListener&&this.emit(`removeListener`,n,C.listener??a));else if(typeof C!=`function`){let N=-1;for(let n=C.length-1;n>=0;n--)if(C[n]===a||C[n].listener===a){N=n;break}if(N<0)return this;N===0?C.shift():spliceOne(C,N),C.length===1&&(S[n]=C[0]),S.removeListener!==void 0&&this.emit(`removeListener`,n,a.listener??a)}return this}off(n,a){return this.removeListener(n,a)}removeAllListeners(n){let a=this._events;if(a===void 0)return this;if(a.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):a[n]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete a[n]),this;if(arguments.length===0){let n=Object.keys(a);for(let a=0;a<n.length;++a){let S=n[a];S!==`removeListener`&&this.removeAllListeners(S)}return this.removeAllListeners(`removeListener`),this._events=Object.create(null),this._eventsCount=0,this}let S=a[n];if(typeof S==`function`)this.removeListener(n,S);else if(S!==void 0)for(let a=S.length-1;a>=0;a--)this.removeListener(n,S[a]);return this}listeners(n){let a=this._events;if(a===void 0)return[];let S=a[n];return S===void 0?[]:typeof S==`function`?[S.listener??S]:unwrapListeners(S)}rawListeners(n){let a=this._events;if(a===void 0)return[];let S=a[n];return S===void 0?[]:typeof S==`function`?[S]:arrayClone(S)}listenerCount(n){let a=this._events;if(a===void 0)return 0;let S=a[n];return S===void 0?0:typeof S==`function`?1:S.length}eventNames(){return(this._eventsCount??0)>0?Reflect.ownKeys(this._events):[]}static once(n,a,S){return new Promise((C,N)=>{let F=S?.signal;if(F?.aborted){N(createAbortError$1(F));return}if(typeof n.addEventListener==`function`){let S=n,handler=(...n)=>{F&&F.removeEventListener(`abort`,abortHandler),C(n)},errorHandler=n=>{F&&F.removeEventListener(`abort`,abortHandler),S.removeEventListener(`error`,errorHandler),N(n)},abortHandler=()=>{S.removeEventListener(a,handler),S.removeEventListener(`error`,errorHandler),N(createAbortError$1(F))};S.addEventListener(a,handler,{once:!0}),a!==`error`&&S.addEventListener(`error`,errorHandler,{once:!0}),F&&F.addEventListener(`abort`,abortHandler,{once:!0});return}let I=n,eventHandler=(...n)=>{F&&F.removeEventListener(`abort`,abortHandler),errorHandler!==void 0&&I.removeListener(`error`,errorHandler),C(n)},errorHandler;a!==`error`&&(errorHandler=n=>{I.removeListener(a,eventHandler),F&&F.removeEventListener(`abort`,abortHandler),N(n)},I.once(`error`,errorHandler)),I.once(a,eventHandler);let abortHandler=()=>{I.removeListener(a,eventHandler),errorHandler&&I.removeListener(`error`,errorHandler),N(createAbortError$1(F))};F&&F.addEventListener(`abort`,abortHandler,{once:!0})})}static on(n,a,S){let C=S?.signal;if(C?.aborted)throw createAbortError$1(C);let N=S?.highWaterMark??2**53-1,F=S?.lowWaterMark??1;validateNumber(N,`highWaterMark`),validateNumber(F,`lowWaterMark`);let I=[],H=[],W=null,K=!1,q=!1,eventHandler=(...a)=>{if(H.length>0){let{resolve:n}=H.shift();n({value:a,done:!1})}else I.push(a),I.length>=N&&!q&&(q=!0,typeof n.pause==`function`&&n.pause())},errorHandler=n=>{if(W=n,H.length>0){let{reject:a}=H.shift();a(n)}Y.return()},abortHandler=()=>{errorHandler(createAbortError$1(C))};n.on(a,eventHandler),a!==`error`&&n.on(`error`,errorHandler),C&&C.addEventListener(`abort`,abortHandler,{once:!0});let cleanup=()=>{n.removeListener(a,eventHandler),n.removeListener(`error`,errorHandler),C&&C.removeEventListener(`abort`,abortHandler),K=!0;for(let{resolve:n}of H)n({value:void 0,done:!0});H.length=0,I.length=0},Y={next(){if(I.length>0){let a=I.shift();return q&&I.length<F&&(q=!1,typeof n.resume==`function`&&n.resume()),Promise.resolve({value:a,done:!1})}if(W){let n=Promise.reject(W);return W=null,n}return K?Promise.resolve({value:void 0,done:!0}):new Promise((n,a)=>{H.push({resolve:n,reject:a})})},return(){return cleanup(),Promise.resolve({value:void 0,done:!0})},throw(n){return K||(W=n,cleanup()),Promise.reject(n)},[Symbol.asyncIterator](){return this}};return Y}static listenerCount(n,a){return n.listenerCount(a)}static getEventListeners(n,a){return typeof n.listeners==`function`?n.listeners(a):[]}static setMaxListeners(n,...a){if(validateNumber(n,`n`),n<0)throw RangeError(`The value of "n" is out of range.`);if(a.length===0)EventEmitter.defaultMaxListeners=n;else for(let S of a)typeof S.setMaxListeners==`function`&&S.setMaxListeners(n)}static getMaxListeners(n){return typeof n.getMaxListeners==`function`?n.getMaxListeners():EventEmitter.defaultMaxListeners}static addAbortListener(n,a){n.aborted&&Promise.resolve().then(()=>a());let handler=()=>a();return n.addEventListener(`abort`,handler,{once:!0}),{[Symbol.dispose](){n.removeEventListener(`abort`,handler)}}}},Mt.EventEmitter=Mt;for(let n of[`setMaxListeners`,`getMaxListeners`,`emit`,`addListener`,`on`,`prependListener`,`once`,`prependOnceListener`,`removeListener`,`off`,`removeAllListeners`,`listeners`,`rawListeners`,`listenerCount`,`eventNames`]){let a=Mt.prototype[n];typeof a==`function`&&Object.defineProperty(Mt.prototype,n,{enumerable:!0,configurable:!0,writable:!0,value:a})}Object.defineProperty(Mt.prototype,"_events",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(Mt.prototype,"_eventsCount",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(Mt.prototype,"_maxListeners",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),__name$1(createAbortError$1,`createAbortError`)}),Pt=__exportAll$3({EventEmitter:()=>Ft,addAbortListener:()=>Gt,captureRejectionSymbol:()=>It,default:()=>Ft,defaultMaxListeners:()=>Rt,errorMonitor:()=>Lt,getEventListeners:()=>Ut,getMaxListeners:()=>Bt,listenerCount:()=>Wt,on:()=>Ht,once:()=>Vt,setMaxListeners:()=>zt}),Ft,It,Lt,Rt,zt,Bt,Vt,Ht,Ut,Wt,Gt,Kt=__esmMin(()=>{Nt(),Xe(),Ft=makeCallable(Mt),Ft.EventEmitter=Ft,It=Ft.captureRejectionSymbol,Lt=Ft.errorMonitor,Rt=Ft.defaultMaxListeners,zt=Ft.setMaxListeners,Bt=Ft.getMaxListeners,Vt=Ft.once,Ht=Ft.on,Ut=Ft.getEventListeners,Wt=Ft.listenerCount,Gt=Ft.addAbortListener}),qt,ProcessWriteStream,ProcessReadStream,Jt=__esmMin(()=>{Ae(),yt(),kt(),Kt(),Xe(),qt=new TextEncoder,ProcessWriteStream=class extends Ft{fd;writable=!0;_outGio=null;constructor(n){super(),this.fd=n;let a=getGioNamespace();if(a){let n=a.UnixOutputStream??a.OutputStream;if(n)try{this._outGio=n.new(this.fd,!1)}catch{}}}write(n){if(this._outGio)try{let a=typeof n==`string`?qt.encode(n):n;return this._outGio.write_all(a,null),!0}catch{}return this.fd===2?ke.error(n):ke.log(n),!0}get isTTY(){if(Ot)return Ot.Terminal.is_tty(this.fd);try{let n=getGjsGlobal().imports?.gi?.GLib;if(n)return!!n.log_writer_supports_color(this.fd)}catch{}return!1}get columns(){if(Ot){let[n,,a]=Ot.Terminal.get_size(this.fd);if(n&&a>0)return a}try{let n=getGjsGlobal().imports?.gi?.GLib;if(n){let a=parseInt(n.getenv(`COLUMNS`)??`0`,10);if(a>0)return a}}catch{}return 80}end(){}destroy(){}get rows(){if(Ot){let[n,a]=Ot.Terminal.get_size(this.fd);if(n&&a>0)return a}try{let n=getGjsGlobal().imports?.gi?.GLib;if(n){let a=parseInt(n.getenv(`LINES`)??`0`,10);if(a>0)return a}}catch{}return 24}},ProcessReadStream=class extends Ft{fd;isRaw=!1;_gio=null;_stdinGio=null;_reading=!1;_flowing=!1;_sttyCleanupRegistered=!1;_mainLoopHeld=!1;_pendingRead=!1;constructor(n){super(),this.fd=n,this._gio=getGioNamespace()}get isTTY(){return Ot?Ot.Terminal.is_tty(this.fd):!1}setRawMode(n){return Ot&&Ot.Terminal.set_raw_mode(this.fd,n)?(this.isRaw=n,this):(this._setRawModeViaStty(n),this.isRaw=n,this)}_setRawModeViaStty(n){try{let a=globalThis.imports?.gi,S=a?.Gio??a?.Gio;if(!S)return;let C=S.SubprocessFlags?.STDIN_INHERIT??2,N=n?[`stty`,`-icanon`,`-echo`,`-icrnl`,`min`,`1`,`time`,`0`]:[`stty`,`icanon`,`echo`,`icrnl`];if(new S.SubprocessLauncher({flags:C}).spawnv(N).wait(null),n&&!this._sttyCleanupRegistered){this._sttyCleanupRegistered=!0;let n=globalThis.process;n?.once&&typeof n.once==`function`&&n.once(`exit`,()=>this._setRawModeViaStty(!1))}}catch{}}setEncoding(n){return this}on(n,a){let S=n===`data`&&this.listenerCount(`data`)===0;return super.on(n,a),S&&n===`data`&&this.resume(),this}addListener(n,a){return this.on(n,a)}once(n,a){return super.once(n,a),this}removeListener(n,a){return super.removeListener(n,a),n===`data`&&this.listenerCount(`data`)===0&&this.pause(),this}off(n,a){return this.removeListener(n,a)}removeAllListeners(n){let a=n===void 0||n===`data`?this.listenerCount(`data`)>0:!1;return super.removeAllListeners(n),a&&this.listenerCount(`data`)===0&&this.pause(),this}resume(){return this._flowing=!0,this._gio&&this.fd===0&&!this._reading&&this._startReading(),this}pause(){if(this._flowing=!1,this._reading=!1,this._mainLoopHeld){this._mainLoopHeld=!1;let n=globalThis.imports?.gi,a=n?.GLib??n?.GLib;a?.idle_add?a.idle_add(300,()=>(this._mainLoopHeld||quitMainLoop(),!1)):quitMainLoop()}return this}read(){return null}_startReading(){if(!this._gio||this._reading)return;if(this._pendingRead){this._reading=!0,this._mainLoopHeld||(this._mainLoopHeld=!0,ensureMainLoop());return}if(this._reading=!0,this._mainLoopHeld||(this._mainLoopHeld=!0,ensureMainLoop()),!this._stdinGio){let n=this._gio.UnixInputStream??this._gio.InputStream;if(!n){this._reading=!1;return}try{this._stdinGio=n.new(this.fd,!1)}catch{this._reading=!1;return}}let loop=()=>{if(!this._reading){this._pendingRead=!1;return}this._pendingRead=!0,this._stdinGio.read_bytes_async(4096,0,null,(n,a)=>{this._pendingRead=!1;try{let S=n.read_bytes_finish(a)?.get_data?.()??null;if(S&&S.byteLength>0)this.emit(`data`,Buffer.from(S));else if(S!==null&&S.byteLength===0){this._reading=!1,this.emit(`end`);return}}catch{this._reading=!1;return}this._reading&&loop()})};loop()}}}),Yt,Process,Xt=__esmMin(()=>{Ae(),St(),Ct(),wt(),xt(),Tt(),Jt(),Kt(),Yt=Date.now(),Process=class extends Ft{platform;arch;env;argv;argv0;execPath;pid;ppid;version;versions;title;execArgv;config;exitCode;constructor(){super(),this.platform=detectPlatform(),this.arch=detectArch(),this.env=getEnvProxy(),this.argv=getArgv(),this.argv0=this.argv[0]||`gjs`,this.execPath=getExecPath(),this.execArgv=globalThis.process?.execArgv??[],this.config=globalThis.process?.config??{target_defaults:{},variables:{}},this.pid=getPid$1(),this.ppid=detectPpid();let n=detectVersionInfo();this.version=n.version,this.versions=n.versions,this.title=n.title}cwd(){return getCwd()}chdir(n){chdir(n)}kill(n,a){return killPid(n,a)}exit(n){return this.exitCode=n??this.exitCode??0,this.emit(`exit`,this.exitCode),exitProcess(this.exitCode)}nextTick(n,...a){typeof queueMicrotask==`function`?queueMicrotask(()=>n(...a)):Promise.resolve().then(()=>n(...a))}hrtime(n){return hrtime(n)}uptime(){return(Date.now()-Yt)/1e3}memoryUsage(){return memoryUsage()}cpuUsage(n){return cpuUsage(n)}stdout=new ProcessWriteStream(1);stderr=new ProcessWriteStream(2);stdin=new ProcessReadStream(0);abort(){this.exit(1)}umask(n){return 18}emitWarning(n,a){ke.warn(typeof n==`string`?`(${a||`Warning`}): ${n}`:n.message)}},Process.prototype.hrtime.bigint=function(){return hrtimeBigint()}}),Zt,Qt,$t,en,tn,nn,rn,an=__esmMin(()=>{if(xt(),Xt(),kt(),Zt=new Process,Ot)try{let n=new Ot.ResizeWatcher;n.connect(`resized`,(n,a,S)=>{Zt.stdout.emit(`resize`),Zt.stderr.emit(`resize`)}),n.start()}catch{}Qt=Zt.platform,Zt.arch,Zt.env,Zt.argv,Zt.argv0,$t=Zt.execPath,Zt.pid,Zt.ppid,Zt.version,Zt.versions,Zt.cwd.bind(Zt),Zt.chdir.bind(Zt),Zt.exit.bind(Zt),Zt.nextTick.bind(Zt),en=Object.assign(Zt.hrtime.bind(Zt),{bigint:hrtimeBigint}),Zt.uptime.bind(Zt),Zt.memoryUsage.bind(Zt),Zt.cpuUsage.bind(Zt),Zt.kill.bind(Zt),Zt.abort.bind(Zt),Zt.umask.bind(Zt),Zt.emitWarning.bind(Zt),tn=Zt.execArgv,Zt.config,nn=Zt.stdout,Zt.stderr,rn=Zt.stdin});Xe(),an(),typeof Promise.withResolvers!=`function`&&(Promise.withResolvers=function(){let n,a;return{promise:new Promise((S,C)=>{n=S,a=C}),resolve:n,reject:a}}),initErrorV8Methods(Error),`global`in globalThis||Object.defineProperty(globalThis,"global",{value:globalThis,writable:!1,enumerable:!1,configurable:!0}),Object.defineProperty(globalThis,"process",{value:Zt,enumerable:!1,writable:!0,configurable:!0}),Xe(),typeof globalThis.structuredClone!=`function`&&Object.defineProperty(globalThis,"structuredClone",{value:structuredClone$1,enumerable:!0,writable:!0,configurable:!0});function getGLib(){return globalThis.imports?.gi?.GLib}const on=getGLib()!==void 0;var GjsifyTimeout=class{_id=null;_refed=!0;_callback;_delay;_args;_repeat;constructor(n,a,S,C){this._callback=n,this._delay=a,this._args=S,this._repeat=C,this._schedule()}_schedule(){let n=getGLib();if(!n)return;let a=n.timeout_add.bind(n);this._id=a(n.PRIORITY_DEFAULT,this._delay,()=>{try{this._callback.apply(globalThis,this._args)}catch(n){setTimeout(()=>{throw n},0)}return this._repeat?n.SOURCE_CONTINUE:(this._id=null,n.SOURCE_REMOVE)})}ref(){return this._refed=!0,this}unref(){return this._refed=!1,this}hasRef(){return this._refed}refresh(){return this._cancel(),this._schedule(),this}_cancel(){if(this._id!==null){try{getGLib()?.Source.remove(this._id)}catch{}this._id=null}}[Symbol.toPrimitive](){return this._id}[Symbol.dispose](){this._cancel()}};function removeById(n){if(n instanceof GjsifyTimeout)n._cancel();else if(typeof n==`number`)try{getGLib()?.Source.remove(n)}catch{}}if(on){let setT=(n,a=0,...S)=>new GjsifyTimeout(n,Math.max(0,a|0),S,!1),setI=(n,a=0,...S)=>new GjsifyTimeout(n,Math.max(0,a|0),S,!0),n=globalThis;n.setTimeout=setT,n.clearTimeout=removeById,n.setInterval=setI,n.clearInterval=removeById}function setImmediate$2(n,...a){return setTimeout(n,0,...a)}__name$1(setImmediate$2,`setImmediate`);function clearImmediate(n){clearTimeout(n)}`setImmediate`in globalThis||Object.defineProperty(globalThis,"setImmediate",{value:setImmediate$2,enumerable:!0,writable:!0,configurable:!0}),`clearImmediate`in globalThis||Object.defineProperty(globalThis,"clearImmediate",{value:clearImmediate,enumerable:!0,writable:!0,configurable:!0});var sn=__exportAll$3({URL:()=>un,URLSearchParams:()=>ln,default:()=>dn,domainToASCII:()=>domainToASCII,domainToUnicode:()=>domainToUnicode,fileURLToPath:()=>fileURLToPath,format:()=>format$4,parse:()=>parse$4,pathToFileURL:()=>pathToFileURL,resolve:()=>resolve$3});function decodeComponent(n){try{return decodeURIComponent(n.replace(/\+/g,` `))}catch{return n}}function encodeComponent(n){return encodeURIComponent(n).replace(/%20/g,`+`)}function parse$4(n,a,S){if(typeof n!=`string`)throw TypeError(`The "url" argument must be of type string. Received type `+typeof n);let C={protocol:null,slashes:null,auth:null,host:null,port:null,hostname:null,hash:null,search:null,query:null,pathname:null,path:null,href:n},N=n.trim(),F=N.indexOf(`#`);F!==-1&&(C.hash=N.slice(F),N=N.slice(0,F));let I=N.indexOf(`?`);I!==-1&&(C.search=N.slice(I),C.query=a?Object.fromEntries(new ln(N.slice(I+1))):N.slice(I+1),N=N.slice(0,I));let H=/^([a-z][a-z0-9.+-]*:)/i.exec(N);if(H&&(C.protocol=H[1].toLowerCase(),N=N.slice(C.protocol.length)),(S||C.protocol)&&N.startsWith(`//`)&&(C.slashes=!0,N=N.slice(2)),C.slashes||C.protocol&&![`javascript:`,`data:`,`mailto:`].includes(C.protocol)){let n=-1;for(let a=0;a<N.length;a++){let S=N[a];if(S===`/`||S===`\\`){n=a;break}}let a=n===-1?N:N.slice(0,n);N=n===-1?``:N.slice(n);let S=a.lastIndexOf(`@`);S===-1?parseHostPort(a,C):(C.auth=decodeURIComponent(a.slice(0,S)),parseHostPort(a.slice(S+1),C))}return C.pathname=N||(C.slashes?`/`:null),(C.pathname!==null||C.search!==null)&&(C.path=(C.pathname||``)+(C.search||``)),C.href=format$4(C),C}function parseHostPort(n,a){if(!n)return;let S=n.indexOf(`[`);if(S!==-1){let C=n.indexOf(`]`,S);if(C!==-1){let N=n.slice(C+1);N.startsWith(`:`)&&(a.port=N.slice(1)),a.hostname=n.slice(S,C+1),a.host=a.hostname+(a.port?`:`+a.port:``);return}}let C=n.lastIndexOf(`:`);if(C!==-1){let S=n.slice(C+1);/^\d*$/.test(S)?(a.port=S||null,a.hostname=n.slice(0,C).toLowerCase()):a.hostname=n.toLowerCase()}else a.hostname=n.toLowerCase();a.host=a.hostname+(a.port?`:`+a.port:``)}function format$4(n){if(typeof n==`string`)return n;if(n instanceof un)return n.href;let a=n,S=``;if(a.protocol&&(S+=a.protocol),(a.slashes||a.protocol&&![`javascript:`,`data:`,`mailto:`].includes(a.protocol||``))&&(S+=`//`),a.auth&&(S+=encodeURIComponent(a.auth)+`@`),a.host?S+=a.host:(a.hostname&&(S+=a.hostname),a.port&&(S+=`:`+a.port)),a.pathname&&(S+=a.pathname),a.search)S+=a.search;else if(a.query&&typeof a.query==`object`){let n=new ln(a.query).toString();n&&(S+=`?`+n)}return a.hash&&(S+=a.hash),S}function resolve$3(n,a){return new un(a,new un(n,`resolve://`)).href.replace(/^resolve:\/\//,``)}function fileURLToPath(n){if(typeof n==`string`&&(n=new un(n)),!(n instanceof un))throw TypeError(`The "url" argument must be of type string or URL. Received type `+typeof n);if(n.protocol!==`file:`)throw TypeError(`The URL must be of scheme file`);if(n.hostname!==``&&n.hostname!==`localhost`)throw TypeError(`File URL host must be "localhost" or empty on linux`);let a=n.pathname;for(let n=0;n<a.length;n++)if(a[n]===`%`){let S=a.codePointAt(n+2)|32;if(a[n+1]===`2`&&S===102)throw TypeError(`File URL path must not include encoded / characters`)}return decodeURIComponent(a)}function pathToFileURL(n){let a=n;if(n[0]!==`/`)if(typeof globalThis.process?.cwd==`function`)a=globalThis.process.cwd()+`/`+n;else try{Z?.get_current_dir&&(a=Z.get_current_dir()+`/`+n)}catch{}return new un(`file://`+encodePathForURL(a))}function encodePathForURL(n){let a=``;for(let S=0;S<n.length;S++){let C=n[S];C>=`a`&&C<=`z`||C>=`A`&&C<=`Z`||C>=`0`&&C<=`9`||C===`/`||C===`-`||C===`_`||C===`.`||C===`~`||C===`:`||C===`@`||C===`!`?a+=C:a+=encodeURIComponent(C)}return a}function domainToASCII(n){try{return new un(`http://${n}`).hostname}catch{return``}}function domainToUnicode(n){try{return new un(`http://${n}`).hostname}catch{return``}}var cn,ln,un,dn,fn=__esmMin(()=>{se(),cn=Z.UriFlags.HAS_PASSWORD|Z.UriFlags.ENCODED|Z.UriFlags.SCHEME_NORMALIZE,ln=class URLSearchParams{_entries=[];constructor(n){if(n)if(typeof n==`string`){let a=n.startsWith(`?`)?n.slice(1):n;if(a)for(let n of a.split(`&`)){let a=n.indexOf(`=`);a===-1?this._entries.push([decodeComponent(n),``]):this._entries.push([decodeComponent(n.slice(0,a)),decodeComponent(n.slice(a+1))])}}else if(Array.isArray(n))for(let[a,S]of n)this._entries.push([String(a),String(S)]);else if(n instanceof URLSearchParams)this._entries=n._entries.map(([n,a])=>[n,a]);else for(let a of Object.keys(n))this._entries.push([a,String(n[a])])}get(n){for(let[a,S]of this._entries)if(a===n)return S;return null}getAll(n){return this._entries.filter(([a])=>a===n).map(([,n])=>n)}set(n,a){let S=!1;if(this._entries=this._entries.filter(([a])=>a===n?S?!1:(S=!0,!0):!0),S){for(let S=0;S<this._entries.length;S++)if(this._entries[S][0]===n){this._entries[S][1]=a;break}}else this._entries.push([n,a])}has(n){return this._entries.some(([a])=>a===n)}delete(n){this._entries=this._entries.filter(([a])=>a!==n)}append(n,a){this._entries.push([n,a])}sort(){this._entries.sort((n,a)=>n[0]<a[0]?-1:+(n[0]>a[0]))}toString(){return this._entries.map(([n,a])=>encodeComponent(n)+`=`+encodeComponent(a)).join(`&`)}forEach(n){for(let[a,S]of this._entries)n(S,a,this)}*entries(){yield*this._entries}*keys(){for(let[n]of this._entries)yield n}*values(){for(let[,n]of this._entries)yield n}[Symbol.iterator](){return this.entries()}get size(){return this._entries.length}},un=class URL{#e;#t;constructor(n,a){let S=n instanceof URL?n.href:String(n);try{if(a!==void 0){let n=a instanceof URL?a.href:String(a),C=Z.Uri.parse(n,cn);this.#e=C.parse_relative(S,cn)}else this.#e=Z.Uri.parse(S,cn)}catch{throw TypeError(`Invalid URL: ${S}`)}if(!this.#e)throw TypeError(`Invalid URL: ${S}`);this.#t=new ln(this.#e.get_query()||``)}get protocol(){return this.#e.get_scheme()+`:`}get hostname(){return(this.#e.get_host()||``).toLowerCase()}get port(){let n=this.#e.get_port();if(n===-1)return``;let a=this.#e.get_scheme();return(a===`http`||a===`ws`)&&n===80||(a===`https`||a===`wss`)&&n===443||a===`ftp`&&n===21?``:String(n)}get host(){let n=this.hostname,a=this.port;return a?`${n}:${a}`:n}get pathname(){return this.#e.get_path()||`/`}get search(){let n=this.#e.get_query();return n?`?`+n:``}get hash(){let n=this.#e.get_fragment();return n?`#`+n:``}get origin(){let n=this.protocol;return n===`http:`||n===`https:`||n===`ftp:`?`${n}//${this.host}`:`null`}get username(){return this.#e.get_user()||``}get password(){return this.#e.get_password()||``}get href(){let n=this.protocol,a=this.#e.get_scheme();(a===`http`||a===`https`||a===`ftp`||a===`file`||a===`ws`||a===`wss`||this.hostname)&&(n+=`//`);let S=this.username,C=this.password;S&&(n+=S,C&&(n+=`:`+C),n+=`@`),n+=this.hostname,this.port&&(n+=`:`+this.port);let N=this.pathname;return n+=N,n+=this.search,n+=this.hash,n}get searchParams(){return this.#t}toString(){return this.href}toJSON(){return this.href}static _objectURLPaths=new Map;static _objectURLCounter=0;static createObjectURL(n){let a=n?._tmpPath;if(typeof a==`string`&&a.length>0){let n=`file://${a}`;return URL._objectURLPaths.set(n,a),n}return`file:///dev/null`}static revokeObjectURL(n){let a=URL._objectURLPaths.get(n);if(a){try{Z.unlink(a)}catch{}URL._objectURLPaths.delete(n)}}},__name$1(parse$4,`parse`),__name$1(format$4,`format`),__name$1(resolve$3,`resolve`),dn={URL:un,URLSearchParams:ln,parse:parse$4,format:format$4,resolve:resolve$3,fileURLToPath,pathToFileURL,domainToASCII,domainToUnicode}});fn(),typeof globalThis.URL!=`function`&&Object.defineProperty(globalThis,"URL",{value:un,enumerable:!1,writable:!0,configurable:!0}),typeof globalThis.URLSearchParams!=`function`&&Object.defineProperty(globalThis,"URLSearchParams",{value:ln,enumerable:!1,writable:!0,configurable:!0});var pn=__exportAll$3({PerformanceEntry:()=>_n,PerformanceMark:()=>yn,PerformanceMeasure:()=>bn,PerformanceObserver:()=>gn,PerformanceObserverEntryList:()=>vn,default:()=>xn,eventLoopUtilization:()=>eventLoopUtilization,monitorEventLoopDelay:()=>monitorEventLoopDelay,performance:()=>mn,timerify:()=>timerify});function eventLoopUtilization(n,a){return{idle:0,active:0,utilization:0}}function timerify(n){let wrapped=function(...a){let S=mn.now(),C=n.apply(this,a);return mn.now()-S,C};return Object.defineProperty(wrapped,"name",{value:n.name}),wrapped}function monitorEventLoopDelay(n){let a=new Map;return{enable(){},disable(){},reset(){},percentile(n){return 0},get min(){return 0},get max(){return 0},get mean(){return 0},get stddev(){return 0},get percentiles(){return a}}}var mn,PerformanceObserverStub,PerformanceEntryStub,PerformanceObserverEntryListStub,hn,gn,_n,vn,yn,bn,xn,Sn=__esmMin(()=>{if(globalThis.performance)mn=globalThis.performance;else{let n,_now;try{let a=globalThis.imports?.gi?.GLib;if(!a)throw Error(`GJS imports.gi.GLib not available`);n=a.get_monotonic_time(),_now=()=>(a.get_monotonic_time()-n)/1e3}catch{let a=Date.now();n=0,_now=()=>Date.now()-a}let a=[],S=Date.now()-_now();mn={timeOrigin:S,now:_now,mark(n){let S={name:n,entryType:`mark`,startTime:_now(),duration:0};return a.push(S),S},measure(n,S,C){let N=0,F=_now();if(S){let n=a.find(n=>n.entryType===`mark`&&n.name===S);n&&(N=n.startTime)}if(C){let n=a.find(n=>n.entryType===`mark`&&n.name===C);n&&(F=n.startTime)}let I={name:n,entryType:`measure`,startTime:N,duration:F-N};return a.push(I),I},getEntries(){return[...a]},getEntriesByName(n){return a.filter(a=>a.name===n)},getEntriesByType(n){return a.filter(a=>a.entryType===n)},clearMarks(n){for(let S=a.length-1;S>=0;S--)a[S].entryType===`mark`&&(!n||a[S].name===n)&&a.splice(S,1)},clearMeasures(n){for(let S=a.length-1;S>=0;S--)a[S].entryType===`measure`&&(!n||a[S].name===n)&&a.splice(S,1)},clearResourceTimings(){},setResourceTimingBufferSize(){},toJSON(){return{timeOrigin:S}}}}PerformanceObserverStub=class{_callback;constructor(n){this._callback=n}observe(n){}disconnect(){}takeRecords(){return[]}},PerformanceEntryStub=class{name=``;entryType=``;startTime=0;duration=0;toJSON(){return{name:this.name,entryType:this.entryType,startTime:this.startTime,duration:this.duration}}},PerformanceObserverEntryListStub=class{getEntries(){return[]}getEntriesByName(n){return[]}getEntriesByType(n){return[]}},hn=globalThis,gn=hn.PerformanceObserver||PerformanceObserverStub,_n=hn.PerformanceEntry||PerformanceEntryStub,vn=hn.PerformanceObserverEntryList||PerformanceObserverEntryListStub,yn=hn.PerformanceMark||class PerformanceMark extends PerformanceEntryStub{},bn=hn.PerformanceMeasure||class PerformanceMeasure extends PerformanceEntryStub{},xn={performance:mn,PerformanceObserver:gn,PerformanceEntry:_n,PerformanceObserverEntryList:vn,PerformanceMark:yn,PerformanceMeasure:bn,eventLoopUtilization,timerify,monitorEventLoopDelay}});Sn();const Cn=globalThis;globalThis.performance===void 0&&(Cn.performance=mn),typeof Cn.PerformanceObserver!=`function`&&(Cn.PerformanceObserver=gn);const wn={IndexSizeError:1,HierarchyRequestError:3,WrongDocumentError:4,InvalidCharacterError:5,NoModificationAllowedError:7,NotFoundError:8,NotSupportedError:9,InUseAttributeError:10,InvalidStateError:11,SyntaxError:12,InvalidModificationError:13,NamespaceError:14,InvalidAccessError:15,TypeMismatchError:17,SecurityError:18,NetworkError:19,AbortError:20,URLMismatchError:21,QuotaExceededError:22,TimeoutError:23,InvalidNodeTypeError:24,DataCloneError:25};var _DOMExceptionPolyfill=class extends Error{code;constructor(n,a){super(n),this.name=a||`Error`,this.code=Object.hasOwn(wn,this.name)?wn[this.name]:0}};const Tn=globalThis.DOMException===void 0?_DOMExceptionPolyfill:globalThis.DOMException;Ae();const En=Symbol(`type`),Q=Symbol(`bubbles`),Dn=Symbol(`cancelable`),On=Symbol(`composed`),kn=Symbol(`target`),An=Symbol(`currentTarget`),jn=Symbol(`eventPhase`),Mn=Symbol(`defaultPrevented`),Nn=Symbol(`isTrusted`),Pn=Symbol(`timeStamp`),Fn=Symbol(`stop`),In=Symbol(`immediateStop`),Ln=Symbol(`dispatching`),Rn=Symbol(`inPassiveListener`);var Event=class{[En];[Q];[Dn];[On];[kn]=null;[An]=null;[jn]=0;[Mn]=!1;[Nn]=!1;[Pn];[Fn]=!1;[In]=!1;[Ln]=!1;[Rn]=!1;get type(){return this[En]}get bubbles(){return this[Q]}get cancelable(){return this[Dn]}get composed(){return this[On]}get target(){return this[kn]}get currentTarget(){return this[An]}get eventPhase(){return this[jn]}get defaultPrevented(){return this[Mn]}get timeStamp(){return this[Pn]}get cancelBubble(){return this[Fn]}set cancelBubble(n){n&&this.stopPropagation()}get returnValue(){return!this[Mn]}set returnValue(n){n||this.preventDefault()}get srcElement(){return this[kn]}static NONE=0;static CAPTURING_PHASE=1;static AT_TARGET=2;static BUBBLING_PHASE=3;get[Symbol.toStringTag](){return`Event`}constructor(n,a){this[En]=n,this[Q]=a?.bubbles??!1,this[Dn]=a?.cancelable??!1,this[On]=a?.composed??!1,this[Pn]=Date.now(),Object.defineProperty(this,"isTrusted",{get:()=>this[Nn],enumerable:!0,configurable:!1})}composedPath(){return this[An]?[this[An]]:[]}preventDefault(){this[Dn]&&!this[Rn]&&(this[Mn]=!0)}stopPropagation(){this[Fn]=!0}stopImmediatePropagation(){this[Fn]=!0,this[In]=!0}},EventTarget=class{_listeners=new Map;get[Symbol.toStringTag](){return`EventTarget`}addEventListener(n,a,S){if(a===null)return;let C=typeof S==`boolean`?S:S?.capture??!1,N=typeof S==`object`?S?.once??!1:!1,F=typeof S==`object`?S?.passive??!1:!1,I=this._listeners.get(n);I||(I=[],this._listeners.set(n,I));for(let n of I)if(n.listener===a&&n.capture===C)return;let H={listener:a,capture:C,once:N,passive:F,removed:!1};I.push(H),typeof S==`object`&&S?.signal&&S.signal.addEventListener(`abort`,()=>{this.removeEventListener(n,a,{capture:C})},{once:!0})}removeEventListener(n,a,S){if(a===null)return;let C=typeof S==`boolean`?S:S?.capture??!1,N=this._listeners.get(n);if(!N)return;let F=N.findIndex(n=>n.listener===a&&n.capture===C);F!==-1&&(N[F].removed=!0,N.splice(F,1),N.length===0&&this._listeners.delete(n))}dispatchEvent(n){let a=n;if(a[Ln])throw new Tn(`The event is already being dispatched.`,`InvalidStateError`);a[Ln]=!0,a[kn]=this,a[An]=this,a[jn]=Event.AT_TARGET;let S=this._listeners.get(n.type);if(S){let C=[...S];for(let S of C)if(!S.removed){if(a[In]||a[Fn])break;S.once&&this.removeEventListener(n.type,S.listener,{capture:S.capture});try{S.passive&&(a[Rn]=!0),typeof S.listener==`function`?S.listener.call(this,n):typeof S.listener.handleEvent==`function`&&S.listener.handleEvent.call(S.listener,n)}catch(n){let a=globalThis;if(typeof a.reportError==`function`)try{a.reportError(n)}catch{}else if(n instanceof Error){let a=`${n.name}: ${n.message}`;ke.error(n.stack?`${a}\n${n.stack}`:a)}else ke.error(String(n))}finally{a[Rn]=!1}}}return a[jn]=Event.NONE,a[An]=null,a[Ln]=!1,!n.defaultPrevented}};for(let[n,a]of[[`NONE`,0],[`CAPTURING_PHASE`,1],[`AT_TARGET`,2],[`BUBBLING_PHASE`,3]])Object.defineProperty(Event.prototype,n,{value:a,writable:!1,enumerable:!0,configurable:!1}),Object.defineProperty(Event,n,{value:a,writable:!1,enumerable:!0,configurable:!1});const zn=Symbol(`abort`),Bn=Symbol(`internal`);var Vn=class AbortSignal extends EventTarget{#e=!1;reason=void 0;onabort=null;constructor(n){if(super(),n!==Bn)throw TypeError(`Illegal constructor.`)}get aborted(){if(!(this instanceof AbortSignal))throw TypeError(`'get aborted' called on an object that is not a valid instance of AbortSignal.`);return this.#e}get[Symbol.toStringTag](){return`AbortSignal`}throwIfAborted(){if(this.#e)throw this.reason}[zn](n){if(this.#e)return;this.#e=!0,this.reason=n??new Tn(`The operation was aborted.`,`AbortError`);let a=new Event(`abort`);typeof this.onabort==`function`&&this.onabort.call(this,a),this.dispatchEvent(a)}static abort(n){let a=new AbortSignal(Bn);return a[zn](n),a}static timeout(n){let a=new AbortSignal(Bn);return setTimeout(()=>{a[zn](new Tn(`The operation timed out.`,`TimeoutError`))},n),a}static any(n){let a=new AbortSignal(Bn);for(let S of n)if(S.aborted)return a[zn](S.reason),a;let onAbort=()=>{if(!a.aborted){let S=n.find(n=>n.aborted);a[zn](S?.reason)}};for(let a of n)a.addEventListener(`abort`,onAbort,{once:!0});return a}},Hn=class AbortController{signal;constructor(){this.signal=new Vn(Bn)}abort(n){if(!(this instanceof AbortController))throw TypeError(`'abort' called on an object that is not a valid instance of AbortController.`);this.signal[zn](n)}};const Un=globalThis;globalThis.AbortController===void 0&&(Un.AbortController=Hn),globalThis.AbortSignal===void 0&&(Un.AbortSignal=Vn);const Wn=Symbol(`kState`),Gn=Symbol(`kType`);function isBrandCheck(n){return a=>typeof a==`object`&&!!a&&a[Wn]!==void 0&&a[Gn]===n}function dequeueValue(n){let a=n[Wn].queue.shift();if(a===void 0)throw Error(`dequeueValue called on an empty queue`);let{value:S,size:C}=a;return n[Wn].queueTotalSize=Math.max(0,n[Wn].queueTotalSize-C),S}function resetQueue(n){n[Wn].queue=[],n[Wn].queueTotalSize=0}function peekQueueValue(n){return n[Wn].queue[0].value}function enqueueValueWithSize(n,a,S){if(S=+S,typeof S!=`number`||S<0||Number.isNaN(S)||S===1/0)throw RangeError(`Invalid size: ${S}`);n[Wn].queue.push({value:a,size:S}),n[Wn].queueTotalSize+=S}function extractHighWaterMark(n,a){if(n===void 0)return a;if(n=+n,typeof n!=`number`||Number.isNaN(n)||n<0)throw RangeError(`Invalid highWaterMark: ${n}`);return n}function extractSizeAlgorithm(n){if(n===void 0)return()=>1;if(typeof n!=`function`)throw TypeError(`strategy.size must be a function`);return n}function transferArrayBuffer(n){return typeof ArrayBuffer.prototype.transfer==`function`?n.transfer():n.slice(0)}function isDetachedBuffer(n){if(typeof SharedArrayBuffer<`u`&&n instanceof SharedArrayBuffer||n.byteLength!==0)return!1;try{return n.slice(0,0),!1}catch{return!0}}function typedArrayConstructorByTag(n){switch(n){case`Int8Array`:return Int8Array;case`Uint8Array`:return Uint8Array;case`Uint8ClampedArray`:return Uint8ClampedArray;case`Int16Array`:return Int16Array;case`Uint16Array`:return Uint16Array;case`Int32Array`:return Int32Array;case`Uint32Array`:return Uint32Array;case`Float32Array`:return Float32Array;case`Float64Array`:return Float64Array;case`BigInt64Array`:return typeof BigInt64Array<`u`?BigInt64Array:void 0;case`BigUint64Array`:return typeof BigUint64Array<`u`?BigUint64Array:void 0;default:return}}function elementSizeByTag(n){switch(n){case`Int8Array`:case`Uint8Array`:case`Uint8ClampedArray`:return 1;case`Int16Array`:case`Uint16Array`:return 2;case`Int32Array`:case`Uint32Array`:case`Float32Array`:return 4;case`Float64Array`:case`BigInt64Array`:case`BigUint64Array`:return 8;default:return 1}}function setPromiseHandled(n){n.then(()=>{},()=>{})}function createPromiseCallback(n,a,S){if(typeof a!=`function`)throw TypeError(`${n} must be a function`);return async(...n)=>a.call(S,...n)}async function nonOpFlush(){}function nonOpStart(){}async function nonOpPull(){}async function nonOpCancel(){}async function nonOpWrite(){}const Kn={__proto__:Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype),next:void 0,return:void 0};function createAsyncFromSyncIterator(n){let a={[Symbol.iterator]:()=>n.iterator},S=(async function*(){return yield*a})();return{iterator:S,nextMethod:S.next,done:!1}}function getIterator(n,a=`sync`,S){if(S===void 0)if(a===`async`){if(S=n[Symbol.asyncIterator],S==null){let a=n[Symbol.iterator];if(a===void 0)throw TypeError(`Object is not iterable`);return createAsyncFromSyncIterator(getIterator(n,`sync`,a))}}else S=n[Symbol.iterator];if(S===void 0)throw TypeError(`Object is not iterable`);let C=S.call(n);if(typeof C!=`object`||!C)throw TypeError(`The iterator method must return an object`);return{iterator:C,nextMethod:C.next,done:!1}}function iteratorNext(n,a){let S;if(S=a===void 0?n.nextMethod.call(n.iterator):n.nextMethod.call(n.iterator,a),typeof S!=`object`||!S)throw TypeError(`The iterator.next() method must return an object`);return S}const qn=typeof globalThis.AbortController==`function`?globalThis.AbortController:class AbortControllerShim{signal={aborted:!1,reason:void 0,addEventListener(){},removeEventListener(){}};abort(n){this.signal.aborted=!0,this.signal.reason=n}},Jn=Symbol(`kAbort`),Yn=Symbol(`kCloseSentinel`),Xn=Symbol(`kError`),Zn=Symbol(`kSkipThrow`);var WritableStream=class{[Gn]=`WritableStream`;[Wn];constructor(n={},a={}){if(n!=null&&typeof n!=`object`)throw TypeError(`sink must be an object`);if(a!=null&&typeof a!=`object`)throw TypeError(`strategy must be an object`);let S=n?.type;if(S!==void 0)throw RangeError(`Invalid type: ${S}`);this[Wn]=createWritableStreamState();let C=extractSizeAlgorithm(a?.size),N=extractHighWaterMark(a?.highWaterMark,1);setupWritableStreamDefaultControllerFromSink(this,n,N,C)}get locked(){if(!Qn(this))throw TypeError(`Invalid this`);return isWritableStreamLocked(this)}abort(n){return Qn(this)?isWritableStreamLocked(this)?Promise.reject(TypeError(`WritableStream is locked`)):writableStreamAbort(this,n):Promise.reject(TypeError(`Invalid this`))}close(){return Qn(this)?isWritableStreamLocked(this)?Promise.reject(TypeError(`WritableStream is locked`)):writableStreamCloseQueuedOrInFlight(this)?Promise.reject(TypeError(`Failure closing WritableStream`)):writableStreamClose(this):Promise.reject(TypeError(`Invalid this`))}getWriter(){if(!Qn(this))throw TypeError(`Invalid this`);return new WritableStreamDefaultWriter(this)}get[Symbol.toStringTag](){return`WritableStream`}},WritableStreamDefaultWriter=class{[Gn]=`WritableStreamDefaultWriter`;[Wn];constructor(n){if(!Qn(n))throw TypeError(`Expected a WritableStream`);this[Wn]={stream:void 0,close:{promise:void 0,resolve:void 0,reject:void 0},ready:{promise:void 0,resolve:void 0,reject:void 0}},setupWritableStreamDefaultWriter(this,n)}get closed(){return $n(this)?this[Wn].close.promise:Promise.reject(TypeError(`Invalid this`))}get desiredSize(){if(!$n(this))throw TypeError(`Invalid this`);if(this[Wn].stream===void 0)throw TypeError(`Writer is not bound to a WritableStream`);return writableStreamDefaultWriterGetDesiredSize(this)}get ready(){return $n(this)?this[Wn].ready.promise:Promise.reject(TypeError(`Invalid this`))}abort(n){return $n(this)?this[Wn].stream===void 0?Promise.reject(TypeError(`Writer is not bound to a WritableStream`)):writableStreamDefaultWriterAbort(this,n):Promise.reject(TypeError(`Invalid this`))}close(){if(!$n(this))return Promise.reject(TypeError(`Invalid this`));let{stream:n}=this[Wn];return n===void 0?Promise.reject(TypeError(`Writer is not bound to a WritableStream`)):writableStreamCloseQueuedOrInFlight(n)?Promise.reject(TypeError(`Failure to close WritableStream`)):writableStreamDefaultWriterClose(this)}releaseLock(){if(!$n(this))throw TypeError(`Invalid this`);let{stream:n}=this[Wn];n!==void 0&&writableStreamDefaultWriterRelease(this)}write(n){return $n(this)?this[Wn].stream===void 0?Promise.reject(TypeError(`Writer is not bound to a WritableStream`)):writableStreamDefaultWriterWrite(this,n):Promise.reject(TypeError(`Invalid this`))}get[Symbol.toStringTag](){return`WritableStreamDefaultWriter`}},WritableStreamDefaultController=class{[Gn]=`WritableStreamDefaultController`;[Wn];constructor(n){if(n!==Zn)throw TypeError(`Illegal constructor`)}[Jn](n){let a=this[Wn].abortAlgorithm(n);return writableStreamDefaultControllerClearAlgorithms(this),a}[Xn](){resetQueue(this)}get signal(){if(!er(this))throw TypeError(`Invalid this`);return this[Wn].abortController.signal}error(n){if(!er(this))throw TypeError(`Invalid this`);this[Wn].stream[Wn].state===`writable`&&writableStreamDefaultControllerError(this,n)}get[Symbol.toStringTag](){return`WritableStreamDefaultController`}};const Qn=isBrandCheck(`WritableStream`),$n=isBrandCheck(`WritableStreamDefaultWriter`),er=isBrandCheck(`WritableStreamDefaultController`);function createEmptyPromiseRecord(){return{promise:void 0,resolve:void 0,reject:void 0}}function createWritableStreamState(){return{close:Promise.withResolvers(),closeRequest:createEmptyPromiseRecord(),inFlightWriteRequest:createEmptyPromiseRecord(),inFlightCloseRequest:createEmptyPromiseRecord(),pendingAbortRequest:{abort:createEmptyPromiseRecord(),reason:void 0,wasAlreadyErroring:!1},backpressure:!1,controller:void 0,state:`writable`,storedError:void 0,writeRequests:[],writer:void 0}}function isWritableStreamLocked(n){return n[Wn].writer!==void 0}function setupWritableStreamDefaultWriter(n,a){if(isWritableStreamLocked(a))throw TypeError(`WritableStream is locked`);switch(n[Wn].stream=a,a[Wn].writer=n,a[Wn].state){case`writable`:!writableStreamCloseQueuedOrInFlight(a)&&a[Wn].backpressure?n[Wn].ready=Promise.withResolvers():n[Wn].ready={promise:Promise.resolve(),resolve:void 0,reject:void 0},n[Wn].close=Promise.withResolvers();break;case`erroring`:n[Wn].ready={promise:Promise.reject(a[Wn].storedError),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].ready.promise),n[Wn].close=Promise.withResolvers();break;case`closed`:n[Wn].ready={promise:Promise.resolve(),resolve:void 0,reject:void 0},n[Wn].close={promise:Promise.resolve(),resolve:void 0,reject:void 0};break;default:n[Wn].ready={promise:Promise.reject(a[Wn].storedError),resolve:void 0,reject:void 0},n[Wn].close={promise:Promise.reject(a[Wn].storedError),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].ready.promise),setPromiseHandled(n[Wn].close.promise)}}function writableStreamAbort(n,a){let{state:S,controller:C}=n[Wn];if(S===`closed`||S===`errored`)return Promise.resolve();if(C[Wn].abortController.abort(a),n[Wn].pendingAbortRequest.abort.promise!==void 0)return n[Wn].pendingAbortRequest.abort.promise;let N=!1;S===`erroring`&&(N=!0,a=void 0);let F=Promise.withResolvers();return n[Wn].pendingAbortRequest={abort:F,reason:a,wasAlreadyErroring:N},N||writableStreamStartErroring(n,a),F.promise}function writableStreamClose(n){let{state:a,writer:S,backpressure:C,controller:N}=n[Wn];if(a===`closed`||a===`errored`)return Promise.reject(TypeError(`WritableStream is closed`));n[Wn].closeRequest=Promise.withResolvers();let{promise:F}=n[Wn].closeRequest;return S!==void 0&&C&&a===`writable`&&S[Wn].ready.resolve?.(),writableStreamDefaultControllerClose(N),F}function writableStreamUpdateBackpressure(n,a){let{writer:S}=n[Wn];S!==void 0&&n[Wn].backpressure!==a&&(a?S[Wn].ready=Promise.withResolvers():S[Wn].ready.resolve?.()),n[Wn].backpressure=a}function writableStreamStartErroring(n,a){let{controller:S,writer:C}=n[Wn];n[Wn].state=`erroring`,n[Wn].storedError=a,C!==void 0&&writableStreamDefaultWriterEnsureReadyPromiseRejected(C,a),!writableStreamHasOperationMarkedInFlight(n)&&S[Wn].started&&writableStreamFinishErroring(n)}function writableStreamRejectCloseAndClosedPromiseIfNeeded(n){n[Wn].closeRequest.promise!==void 0&&(n[Wn].closeRequest.reject?.(n[Wn].storedError),n[Wn].closeRequest={promise:void 0,resolve:void 0,reject:void 0}),setPromiseHandled(n[Wn].close.promise),n[Wn].close.reject?.(n[Wn].storedError);let{writer:a}=n[Wn];a!==void 0&&(setPromiseHandled(a[Wn].close.promise),a[Wn].close.reject?.(n[Wn].storedError))}function writableStreamMarkFirstWriteRequestInFlight(n){let a=n[Wn].writeRequests.shift();n[Wn].inFlightWriteRequest=a}function writableStreamMarkCloseRequestInFlight(n){n[Wn].inFlightCloseRequest=n[Wn].closeRequest,n[Wn].closeRequest={promise:void 0,resolve:void 0,reject:void 0}}function writableStreamHasOperationMarkedInFlight(n){return n[Wn].inFlightWriteRequest.promise!==void 0||n[Wn].inFlightCloseRequest.promise!==void 0}function writableStreamFinishInFlightWriteWithError(n,a){n[Wn].inFlightWriteRequest.reject?.(a),n[Wn].inFlightWriteRequest={promise:void 0,resolve:void 0,reject:void 0},writableStreamDealWithRejection(n,a)}function writableStreamFinishInFlightWrite(n){n[Wn].inFlightWriteRequest.resolve?.(),n[Wn].inFlightWriteRequest={promise:void 0,resolve:void 0,reject:void 0}}function writableStreamFinishInFlightCloseWithError(n,a){n[Wn].inFlightCloseRequest.reject?.(a),n[Wn].inFlightCloseRequest={promise:void 0,resolve:void 0,reject:void 0},n[Wn].pendingAbortRequest.abort.promise!==void 0&&(n[Wn].pendingAbortRequest.abort.reject?.(a),n[Wn].pendingAbortRequest={abort:{promise:void 0,resolve:void 0,reject:void 0},reason:void 0,wasAlreadyErroring:!1}),writableStreamDealWithRejection(n,a)}function writableStreamFinishInFlightClose(n){n[Wn].inFlightCloseRequest.resolve?.(),n[Wn].inFlightCloseRequest={promise:void 0,resolve:void 0,reject:void 0},n[Wn].state===`erroring`&&(n[Wn].storedError=void 0,n[Wn].pendingAbortRequest.abort.promise!==void 0&&(n[Wn].pendingAbortRequest.abort.resolve?.(),n[Wn].pendingAbortRequest={abort:{promise:void 0,resolve:void 0,reject:void 0},reason:void 0,wasAlreadyErroring:!1})),n[Wn].state=`closed`,n[Wn].writer!==void 0&&n[Wn].writer[Wn].close.resolve?.(),n[Wn].close.resolve?.()}function writableStreamFinishErroring(n){n[Wn].state=`errored`,n[Wn].controller[Xn]();let a=n[Wn].storedError;for(let S of n[Wn].writeRequests)S.reject?.(a);if(n[Wn].writeRequests=[],n[Wn].pendingAbortRequest.abort.promise===void 0){writableStreamRejectCloseAndClosedPromiseIfNeeded(n);return}let S=n[Wn].pendingAbortRequest;if(n[Wn].pendingAbortRequest={abort:{promise:void 0,resolve:void 0,reject:void 0},reason:void 0,wasAlreadyErroring:!1},S.wasAlreadyErroring){S.abort.reject?.(a),writableStreamRejectCloseAndClosedPromiseIfNeeded(n);return}n[Wn].controller[Jn](S.reason).then(()=>{S.abort.resolve?.(),writableStreamRejectCloseAndClosedPromiseIfNeeded(n)},a=>{S.abort.reject?.(a),writableStreamRejectCloseAndClosedPromiseIfNeeded(n)})}function writableStreamDealWithRejection(n,a){if(n[Wn].state===`writable`){writableStreamStartErroring(n,a);return}writableStreamFinishErroring(n)}function writableStreamCloseQueuedOrInFlight(n){return n[Wn].closeRequest.promise!==void 0||n[Wn].inFlightCloseRequest.promise!==void 0}function writableStreamAddWriteRequest(n){let{promise:a,resolve:S,reject:C}=Promise.withResolvers();return n[Wn].writeRequests.push({promise:a,resolve:S,reject:C}),a}function writableStreamDefaultWriterWrite(n,a){let{stream:S}=n[Wn],{controller:C}=S[Wn],N=writableStreamDefaultControllerGetChunkSize(C,a);if(S!==n[Wn].stream)return Promise.reject(TypeError(`Mismatched WritableStreams`));let{state:F}=S[Wn];if(F===`errored`)return Promise.reject(S[Wn].storedError);if(writableStreamCloseQueuedOrInFlight(S)||F===`closed`)return Promise.reject(TypeError(`WritableStream is closed`));if(F===`erroring`)return Promise.reject(S[Wn].storedError);let I=writableStreamAddWriteRequest(S);return writableStreamDefaultControllerWrite(C,a,N),I}function writableStreamDefaultWriterRelease(n){let{stream:a}=n[Wn],S=TypeError(`Writer has been released`);writableStreamDefaultWriterEnsureReadyPromiseRejected(n,S),writableStreamDefaultWriterEnsureClosedPromiseRejected(n,S),a[Wn].writer=void 0,n[Wn].stream=void 0}function writableStreamDefaultWriterGetDesiredSize(n){let{stream:a}=n[Wn];switch(a[Wn].state){case`errored`:case`erroring`:return null;case`closed`:return 0}return writableStreamDefaultControllerGetDesiredSize(a[Wn].controller)}function writableStreamDefaultWriterEnsureReadyPromiseRejected(n,a){n[Wn].ready.reject?(n[Wn].ready.reject(a),n[Wn].ready.resolve=void 0,n[Wn].ready.reject=void 0):n[Wn].ready={promise:Promise.reject(a),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].ready.promise)}function writableStreamDefaultWriterEnsureClosedPromiseRejected(n,a){n[Wn].close.reject?(n[Wn].close.reject(a),n[Wn].close.resolve=void 0,n[Wn].close.reject=void 0):n[Wn].close={promise:Promise.reject(a),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].close.promise)}function writableStreamDefaultWriterCloseWithErrorPropagation(n){let{stream:a}=n[Wn],{state:S}=a[Wn];return writableStreamCloseQueuedOrInFlight(a)||S===`closed`?Promise.resolve():S===`errored`?Promise.reject(a[Wn].storedError):writableStreamDefaultWriterClose(n)}function writableStreamDefaultWriterClose(n){return writableStreamClose(n[Wn].stream)}function writableStreamDefaultWriterAbort(n,a){return writableStreamAbort(n[Wn].stream,a)}function writableStreamDefaultControllerWrite(n,a,S){try{enqueueValueWithSize(n,a,S)}catch(a){writableStreamDefaultControllerErrorIfNeeded(n,a);return}let{stream:C}=n[Wn];!writableStreamCloseQueuedOrInFlight(C)&&C[Wn].state===`writable`&&writableStreamUpdateBackpressure(C,writableStreamDefaultControllerGetBackpressure(n)),writableStreamDefaultControllerAdvanceQueueIfNeeded(n)}function writableStreamDefaultControllerProcessWrite(n,a){let{stream:S,writeAlgorithm:C}=n[Wn];writableStreamMarkFirstWriteRequestInFlight(S),C(a,n).then(()=>{writableStreamFinishInFlightWrite(S);let{state:a}=S[Wn];dequeueValue(n),!writableStreamCloseQueuedOrInFlight(S)&&a===`writable`&&writableStreamUpdateBackpressure(S,writableStreamDefaultControllerGetBackpressure(n)),writableStreamDefaultControllerAdvanceQueueIfNeeded(n)},a=>{S[Wn].state===`writable`&&writableStreamDefaultControllerClearAlgorithms(n),writableStreamFinishInFlightWriteWithError(S,a)})}function writableStreamDefaultControllerProcessClose(n){let{closeAlgorithm:a,stream:S}=n[Wn];writableStreamMarkCloseRequestInFlight(S),dequeueValue(n);let C=a();writableStreamDefaultControllerClearAlgorithms(n),C.then(()=>writableStreamFinishInFlightClose(S),n=>writableStreamFinishInFlightCloseWithError(S,n))}function writableStreamDefaultControllerGetDesiredSize(n){return n[Wn].highWaterMark-n[Wn].queueTotalSize}function writableStreamDefaultControllerGetChunkSize(n,a){let{sizeAlgorithm:S}=n[Wn];if(S===void 0)return 1;try{return S(a)}catch(a){return writableStreamDefaultControllerErrorIfNeeded(n,a),1}}function writableStreamDefaultControllerErrorIfNeeded(n,a){n[Wn].stream[Wn].state===`writable`&&writableStreamDefaultControllerError(n,a)}function writableStreamDefaultControllerError(n,a){writableStreamDefaultControllerClearAlgorithms(n),writableStreamStartErroring(n[Wn].stream,a)}function writableStreamDefaultControllerClose(n){enqueueValueWithSize(n,Yn,0),writableStreamDefaultControllerAdvanceQueueIfNeeded(n)}function writableStreamDefaultControllerClearAlgorithms(n){n[Wn].writeAlgorithm=void 0,n[Wn].closeAlgorithm=void 0,n[Wn].abortAlgorithm=void 0,n[Wn].sizeAlgorithm=void 0}function writableStreamDefaultControllerGetBackpressure(n){return writableStreamDefaultControllerGetDesiredSize(n)<=0}function writableStreamDefaultControllerAdvanceQueueIfNeeded(n){let{queue:a,started:S,stream:C}=n[Wn];if(!S||C[Wn].inFlightWriteRequest.promise!==void 0)return;if(C[Wn].state===`erroring`){writableStreamFinishErroring(C);return}if(!a.length)return;let N=peekQueueValue(n);N===Yn?writableStreamDefaultControllerProcessClose(n):writableStreamDefaultControllerProcessWrite(n,N)}function setupWritableStreamDefaultControllerFromSink(n,a,S,C){let N=new WritableStreamDefaultController(Zn),F=a?.start,I=a?.write,H=a?.close,W=a?.abort;setupWritableStreamDefaultController(n,N,F?F.bind(a,N):nonOpStart,I?createPromiseCallback(`sink.write`,I,a):nonOpWrite,H?createPromiseCallback(`sink.close`,H,a):nonOpCancel,W?createPromiseCallback(`sink.abort`,W,a):nonOpCancel,S,C)}function setupWritableStreamDefaultController(n,a,S,C,N,F,I,H){a[Wn]={abortAlgorithm:F,closeAlgorithm:N,highWaterMark:I,queue:[],queueTotalSize:0,abortController:new qn,sizeAlgorithm:H,started:!1,stream:n,writeAlgorithm:C},n[Wn].controller=a,writableStreamUpdateBackpressure(n,writableStreamDefaultControllerGetBackpressure(a));let W=S();new Promise(n=>n(W)).then(()=>{a[Wn].started=!0,writableStreamDefaultControllerAdvanceQueueIfNeeded(a)},S=>{a[Wn].started=!0,writableStreamDealWithRejection(n,S)})}function createWritableStream(n,a,S,C,N=1,F=()=>1){let I=Object.create(WritableStream.prototype);return I[Gn]=`WritableStream`,I[Wn]=createWritableStreamState(),setupWritableStreamDefaultController(I,new WritableStreamDefaultController(Zn),n,a,S,C,N,F),I}Xe();const tr=Symbol(`kCancel`),nr=Symbol(`kClose`),rr=Symbol(`kChunk`),ir=Symbol(`kError`),ar=Symbol(`kPull`),sr=Symbol(`kRelease`),cr=Symbol(`kSkipThrow`);let lr,ur;function lazyReadableReleasedError(){return lr||(lr=TypeError(`Reader released`),lr)}function lazyReadableReleasingError(){return ur||(ur=TypeError(`Releasing reader`),ur)}function createAbortError(){if(typeof globalThis.DOMException==`function`)return new DOMException(`The operation was aborted`,`AbortError`);let n=Error(`The operation was aborted`);return n.name=`AbortError`,n}function createReadableStreamState(){return{disturbed:!1,reader:void 0,state:`readable`,storedError:void 0,controller:void 0,closedPromise:Promise.withResolvers()}}var ReadableStream$1=class{static{__name$1(this,`ReadableStream`)}[Gn]=`ReadableStream`;[Wn];constructor(n={},a={}){if(n!=null&&typeof n!=`object`)throw TypeError(`source must be an object`);if(a!=null&&typeof a!=`object`)throw TypeError(`strategy must be an object`);this[Wn]=createReadableStreamState();let S=a?.size,C=a?.highWaterMark,N=n?.type;if(N!==void 0){if(`${N}`==`bytes`){if(S!==void 0)throw RangeError(`strategy.size must not be set for a byte stream`);setupReadableByteStreamControllerFromSource(this,n,extractHighWaterMark(C,0));return}throw RangeError(`Invalid type: ${N}`)}setupReadableStreamDefaultControllerFromSource(this,n,extractHighWaterMark(C,1),extractSizeAlgorithm(S))}get locked(){if(!dr(this))throw TypeError(`Invalid this`);return isReadableStreamLocked(this)}static from(n){return readableStreamFromIterable(n)}cancel(n=void 0){return dr(this)?isReadableStreamLocked(this)?Promise.reject(TypeError(`ReadableStream is locked`)):readableStreamCancel(this,n):Promise.reject(TypeError(`Invalid this`))}getReader(n={}){if(!dr(this))throw TypeError(`Invalid this`);if(n!=null&&typeof n!=`object`)throw TypeError(`options must be an object`);let a=n?.mode;if(a===void 0)return new ReadableStreamDefaultReader(this);if(`${a}`==`byob`)return new ReadableStreamBYOBReader(this);throw RangeError(`Invalid mode: ${a}`)}pipeThrough(n,a={}){if(!dr(this))throw TypeError(`Invalid this`);let S=n?.readable;if(!dr(S))throw TypeError(`transform.readable must be a ReadableStream`);let C=n?.writable;if(!Qn(C))throw TypeError(`transform.writable must be a WritableStream`);if(a!=null&&typeof a!=`object`)throw TypeError(`options must be an object`);let N=a?.preventAbort,F=a?.preventCancel,I=a?.preventClose,H=a?.signal;if(H!==void 0&&!(H instanceof Object&&`aborted`in H))throw TypeError(`options.signal must be an AbortSignal`);if(isReadableStreamLocked(this))throw TypeError(`The ReadableStream is locked`);if(isWritableStreamLocked(C))throw TypeError(`The WritableStream is locked`);return setPromiseHandled(readableStreamPipeTo(this,C,!!I,!!N,!!F,H)),S}pipeTo(n,a={}){try{if(!dr(this))throw TypeError(`Invalid this`);if(!Qn(n))throw TypeError(`destination must be a WritableStream`);if(a!=null&&typeof a!=`object`)throw TypeError(`options must be an object`);let S=a?.preventAbort,C=a?.preventCancel,N=a?.preventClose,F=a?.signal;if(F!==void 0&&!(F instanceof Object&&`aborted`in F))throw TypeError(`options.signal must be an AbortSignal`);if(isReadableStreamLocked(this))throw TypeError(`The ReadableStream is locked`);if(isWritableStreamLocked(n))throw TypeError(`The WritableStream is locked`);return readableStreamPipeTo(this,n,!!N,!!S,!!C,F)}catch(n){return Promise.reject(n)}}tee(){if(!dr(this))throw TypeError(`Invalid this`);let n=this[Wn].controller;return mr(n)?readableByteStreamTee(this):readableStreamDefaultTee(this,!1)}values(n={}){if(!dr(this))throw TypeError(`Invalid this`);if(n!=null&&typeof n!=`object`)throw TypeError(`options must be an object`);let a=!!n?.preventCancel,S=new ReadableStreamDefaultReader(this),C={done:!1,current:void 0},N=!1;function nextSteps(){if(C.done)return Promise.resolve({done:!0,value:void 0});if(S[Wn].stream===void 0)return Promise.reject(TypeError(`The reader is not bound to a ReadableStream`));let{promise:n,resolve:a,reject:N}=Promise.withResolvers();return readableStreamDefaultReaderRead(S,{[rr](n){C.current=void 0,a({value:n,done:!1})},[nr](){C.current=void 0,C.done=!0,readableStreamReaderGenericRelease(S),a({done:!0,value:void 0})},[ir](n){C.current=void 0,C.done=!0,readableStreamReaderGenericRelease(S),N(n)}}),n}async function returnSteps(n){if(C.done)return{done:!0,value:n};if(C.done=!0,S[Wn].stream===void 0)throw TypeError(`The reader is not bound to a ReadableStream`);if(!a){let a=readableStreamReaderGenericCancel(S,n);return readableStreamReaderGenericRelease(S),await a,{done:!0,value:n}}return readableStreamReaderGenericRelease(S),{done:!0,value:n}}return Object.setPrototypeOf({next(){return N||=(C.current=Promise.resolve(),!0),C.current=C.current===void 0?nextSteps():C.current.then(nextSteps,nextSteps),C.current},return(n){return N=!0,C.current=C.current===void 0?returnSteps(n):C.current.then(()=>returnSteps(n),()=>returnSteps(n)),C.current},[Symbol.asyncIterator](){return this}},Kn)}[Symbol.asyncIterator](){return this.values()}get[Symbol.toStringTag](){return`ReadableStream`}},DefaultReadRequest=class{[Wn];constructor(){this[Wn]=Promise.withResolvers()}[rr](n){this[Wn].resolve?.({value:n,done:!1})}[nr](){this[Wn].resolve?.({value:void 0,done:!0})}[ir](n){this[Wn].reject?.(n)}get promise(){return this[Wn].promise}},ReadableStreamDefaultReader=class{[Gn]=`ReadableStreamDefaultReader`;[Wn];constructor(n){if(!dr(n))throw TypeError(`Expected a ReadableStream`);this[Wn]={readRequests:[],readIntoRequests:[],stream:void 0,close:{promise:void 0,resolve:void 0,reject:void 0}},setupReadableStreamDefaultReader(this,n)}read(){if(!pr(this))return Promise.reject(TypeError(`Invalid this`));if(this[Wn].stream===void 0)return Promise.reject(TypeError(`The reader is not attached to a stream`));let n=this[Wn].stream,a=n[Wn].controller;if(n[Wn].state===`readable`&&fr(a)&&a[Wn].queue.length>0){n[Wn].disturbed=!0;let S=dequeueValue(a);return a[Wn].closeRequested&&!a[Wn].queue.length?(readableStreamDefaultControllerClearAlgorithms(a),readableStreamClose(n)):readableStreamDefaultControllerCallPullIfNeeded(a),Promise.resolve({value:S,done:!1})}let S=new DefaultReadRequest;return readableStreamDefaultReaderRead(this,S),S.promise}releaseLock(){if(!pr(this))throw TypeError(`Invalid this`);this[Wn].stream!==void 0&&readableStreamDefaultReaderRelease(this)}get closed(){return pr(this)?this[Wn].close.promise:Promise.reject(TypeError(`Invalid this`))}cancel(n=void 0){return pr(this)?this[Wn].stream===void 0?Promise.reject(TypeError(`The reader is not attached to a stream`)):readableStreamReaderGenericCancel(this,n):Promise.reject(TypeError(`Invalid this`))}get[Symbol.toStringTag](){return`ReadableStreamDefaultReader`}},ReadableStreamDefaultController=class{[Gn]=`ReadableStreamDefaultController`;[Wn];constructor(n){if(n!==cr)throw TypeError(`Illegal constructor`)}get desiredSize(){return readableStreamDefaultControllerGetDesiredSize(this)}close(){if(!readableStreamDefaultControllerCanCloseOrEnqueue(this))throw TypeError(`Controller is already closed`);readableStreamDefaultControllerClose(this)}enqueue(n=void 0){if(!readableStreamDefaultControllerCanCloseOrEnqueue(this))throw TypeError(`Controller is already closed`);readableStreamDefaultControllerEnqueue(this,n)}error(n=void 0){readableStreamDefaultControllerError(this,n)}[tr](n){return readableStreamDefaultControllerCancelSteps(this,n)}[ar](n){readableStreamDefaultControllerPullSteps(this,n)}[sr](){}get[Symbol.toStringTag](){return`ReadableStreamDefaultController`}};const dr=isBrandCheck(`ReadableStream`),fr=isBrandCheck(`ReadableStreamDefaultController`),pr=isBrandCheck(`ReadableStreamDefaultReader`);function isReadableStreamLocked(n){return n[Wn].reader!==void 0}function readableStreamCancel(n,a){switch(n[Wn].disturbed=!0,n[Wn].state){case`closed`:return Promise.resolve();case`errored`:return Promise.reject(n[Wn].storedError)}readableStreamClose(n);let S=n[Wn].reader;if(S!==void 0&&readableStreamHasBYOBReader(n)){let n=S[Wn].readIntoRequests;S[Wn].readIntoRequests=[];for(let a=0;a<n.length;a++)n[a][nr](void 0)}return n[Wn].controller[tr](a).then(()=>{})}function readableStreamClose(n){n[Wn].state=`closed`,n[Wn].closedPromise.resolve();let{reader:a}=n[Wn];if(a!==void 0&&(a[Wn].close.resolve?.(),readableStreamHasDefaultReader(n))){for(let n=0;n<a[Wn].readRequests.length;n++)a[Wn].readRequests[n][nr]();a[Wn].readRequests=[]}}function readableStreamError(n,a){n[Wn].state=`errored`,n[Wn].storedError=a,setPromiseHandled(n[Wn].closedPromise.promise),n[Wn].closedPromise.reject(a);let{reader:S}=n[Wn];if(S!==void 0){if(setPromiseHandled(S[Wn].close.promise),S[Wn].close.reject?.(a),readableStreamHasDefaultReader(n)){for(let n=0;n<S[Wn].readRequests.length;n++)S[Wn].readRequests[n][ir](a);S[Wn].readRequests=[]}else if(readableStreamHasBYOBReader(n)){for(let n=0;n<S[Wn].readIntoRequests.length;n++)S[Wn].readIntoRequests[n][ir](a);S[Wn].readIntoRequests=[]}}}function readableStreamHasDefaultReader(n){let{reader:a}=n[Wn];return a===void 0?!1:a[Wn]!==void 0&&a[Gn]===`ReadableStreamDefaultReader`}function readableStreamGetNumReadRequests(n){return n[Wn].reader[Wn].readRequests.length}function readableStreamFulfillReadRequest(n,a,S){let{reader:C}=n[Wn],N=C[Wn].readRequests.shift();S?N[nr]():N[rr](a)}function readableStreamAddReadRequest(n,a){n[Wn].reader[Wn].readRequests.push(a)}function readableStreamReaderGenericCancel(n,a){let{stream:S}=n[Wn];return readableStreamCancel(S,a)}function readableStreamReaderGenericInitialize(n,a){switch(n[Wn].stream=a,a[Wn].reader=n,a[Wn].state){case`readable`:n[Wn].close=Promise.withResolvers();break;case`closed`:n[Wn].close={promise:Promise.resolve(),resolve:void 0,reject:void 0};break;case`errored`:n[Wn].close={promise:Promise.reject(a[Wn].storedError),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].close.promise);break}}function readableStreamReaderGenericRelease(n){let{stream:a}=n[Wn],S=lazyReadableReleasedError();a[Wn].state===`readable`?n[Wn].close.reject?.(S):n[Wn].close={promise:Promise.reject(S),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].close.promise),a[Wn].controller[sr](),a[Wn].reader=void 0,n[Wn].stream=void 0}function readableStreamDefaultReaderRelease(n){readableStreamReaderGenericRelease(n),readableStreamDefaultReaderErrorReadRequests(n,lazyReadableReleasingError())}function readableStreamDefaultReaderErrorReadRequests(n,a){for(let S=0;S<n[Wn].readRequests.length;++S)n[Wn].readRequests[S][ir](a);n[Wn].readRequests=[]}function readableStreamDefaultReaderRead(n,a){let{stream:S}=n[Wn];switch(S[Wn].disturbed=!0,S[Wn].state){case`closed`:a[nr]();break;case`errored`:a[ir](S[Wn].storedError);break;case`readable`:S[Wn].controller[ar](a);break}}function setupReadableStreamDefaultReader(n,a){if(isReadableStreamLocked(a))throw TypeError(`ReadableStream is locked`);readableStreamReaderGenericInitialize(n,a),n[Wn].readRequests=[]}function readableStreamDefaultControllerClose(n){readableStreamDefaultControllerCanCloseOrEnqueue(n)&&(n[Wn].closeRequested=!0,n[Wn].queue.length||(readableStreamDefaultControllerClearAlgorithms(n),readableStreamClose(n[Wn].stream)))}function readableStreamDefaultControllerEnqueue(n,a){if(!readableStreamDefaultControllerCanCloseOrEnqueue(n))return;let{stream:S}=n[Wn];if(isReadableStreamLocked(S)&&readableStreamGetNumReadRequests(S))readableStreamFulfillReadRequest(S,a,!1);else try{enqueueValueWithSize(n,a,n[Wn].sizeAlgorithm(a))}catch(a){throw readableStreamDefaultControllerError(n,a),a}readableStreamDefaultControllerCallPullIfNeeded(n)}function readableStreamDefaultControllerCanCloseOrEnqueue(n){let{stream:a}=n[Wn];return!n[Wn].closeRequested&&a[Wn].state===`readable`}function readableStreamDefaultControllerGetDesiredSize(n){let{stream:a,highWaterMark:S,queueTotalSize:C}=n[Wn];switch(a[Wn].state){case`errored`:return null;case`closed`:return 0;default:return S-C}}function readableStreamDefaultControllerHasBackpressure(n){return!readableStreamDefaultControllerShouldCallPull(n)}function readableStreamDefaultControllerShouldCallPull(n){let{stream:a}=n[Wn];if(!readableStreamDefaultControllerCanCloseOrEnqueue(n)||!n[Wn].started)return!1;if(isReadableStreamLocked(a)&&readableStreamGetNumReadRequests(a))return!0;let S=readableStreamDefaultControllerGetDesiredSize(n);return S!==null&&S>0}function readableStreamDefaultControllerCallPullIfNeeded(n){if(readableStreamDefaultControllerShouldCallPull(n)){if(n[Wn].pulling){n[Wn].pullAgain=!0;return}n[Wn].pulling=!0,n[Wn].pullAlgorithm(n).then(()=>{n[Wn].pulling=!1,n[Wn].pullAgain&&(n[Wn].pullAgain=!1,readableStreamDefaultControllerCallPullIfNeeded(n))},a=>readableStreamDefaultControllerError(n,a))}}function readableStreamDefaultControllerClearAlgorithms(n){n[Wn].pullAlgorithm=void 0,n[Wn].cancelAlgorithm=void 0,n[Wn].sizeAlgorithm=void 0}function readableStreamDefaultControllerError(n,a){let{stream:S}=n[Wn];S[Wn].state===`readable`&&(resetQueue(n),readableStreamDefaultControllerClearAlgorithms(n),readableStreamError(S,a))}function readableStreamDefaultControllerCancelSteps(n,a){resetQueue(n);let S=n[Wn].cancelAlgorithm?.(a)??Promise.resolve();return readableStreamDefaultControllerClearAlgorithms(n),S}function readableStreamDefaultControllerPullSteps(n,a){let{stream:S,queue:C}=n[Wn];if(C.length){let N=dequeueValue(n);n[Wn].closeRequested&&!C.length?(readableStreamDefaultControllerClearAlgorithms(n),readableStreamClose(S)):readableStreamDefaultControllerCallPullIfNeeded(n),a[rr](N);return}readableStreamAddReadRequest(S,a),readableStreamDefaultControllerCallPullIfNeeded(n)}function setupReadableStreamDefaultController(n,a,S,C,N,F,I){a[Wn]={cancelAlgorithm:N,closeRequested:!1,highWaterMark:F,pullAgain:!1,pullAlgorithm:C,pulling:!1,queue:[],queueTotalSize:0,started:!1,sizeAlgorithm:I,stream:n},n[Wn].controller=a;let H=S();new Promise(n=>n(H)).then(()=>{a[Wn].started=!0,readableStreamDefaultControllerCallPullIfNeeded(a)},n=>readableStreamDefaultControllerError(a,n))}function setupReadableStreamDefaultControllerFromSource(n,a,S,C){let N=new ReadableStreamDefaultController(cr),F=a?.start,I=a?.pull,H=a?.cancel;setupReadableStreamDefaultController(n,N,F?F.bind(a,N):nonOpStart,I?createPromiseCallback(`source.pull`,I,a):nonOpPull,H?createPromiseCallback(`source.cancel`,H,a):nonOpCancel,S,C)}function createReadableStream(n,a,S,C=1,N=()=>1){let F=Object.create(ReadableStream$1.prototype);return F[Gn]=`ReadableStream`,F[Wn]=createReadableStreamState(),setupReadableStreamDefaultController(F,new ReadableStreamDefaultController(cr),n,a,S,C,N),F}function readableStreamFromIterable(n){let a,S=getIterator(n,`async`),C=nonOpStart;async function pullAlgorithm(){let n=iteratorNext(S);return Promise.resolve(n).then(n=>{if(typeof n!=`object`||!n)throw TypeError(`The promise returned by the iterator.next() method must fulfill with an object`);n.done?readableStreamDefaultControllerClose(a[Wn].controller):readableStreamDefaultControllerEnqueue(a[Wn].controller,n.value)})}async function cancelAlgorithm(n){let a=S.iterator,C=a.return;if(C===void 0)return Promise.resolve();let N=C.call(a,n);return Promise.resolve(N).then(n=>{if(typeof n!=`object`||!n)throw TypeError(`The promise returned by the iterator.return() method must fulfill with an object`)})}return a=createReadableStream(C,pullAlgorithm,cancelAlgorithm,0),a}function readableStreamPipeTo(n,a,S,C,N,F){let I,H;try{I=new ReadableStreamDefaultReader(n),H=new WritableStreamDefaultWriter(a)}catch(n){return Promise.reject(n)}n[Wn].disturbed=!0;let W=!1,{promise:K,resolve:q,reject:Y}=Promise.withResolvers(),X={currentWrite:Promise.resolve()},te;function finalize(n,a){writableStreamDefaultWriterRelease(H),readableStreamReaderGenericRelease(I),F!==void 0&&te&&(F.removeEventListener(`abort`,te),te=void 0),n?Y(a):q()}async function waitForCurrentWrite(){let n=X.currentWrite;await n,n!==X.currentWrite&&await waitForCurrentWrite()}function shutdownWithAnAction(n,S,C){if(W)return;if(W=!0,a[Wn].state===`writable`&&!writableStreamCloseQueuedOrInFlight(a)){waitForCurrentWrite().then(complete,n=>finalize(!0,n));return}complete();function complete(){n().then(()=>finalize(!!S,C),n=>finalize(!0,n))}}function shutdown(n,S){if(!W){if(W=!0,a[Wn].state===`writable`&&!writableStreamCloseQueuedOrInFlight(a)){waitForCurrentWrite().then(()=>finalize(!!n,S),n=>finalize(!0,n));return}finalize(!!n,S)}}function abortAlgorithm(){let S;S=F.reason&&F.reason.name===`AbortError`?createAbortError():F.reason;let I=[];C||I.push(()=>a[Wn].state===`writable`?writableStreamAbort(a,S):Promise.resolve()),N||I.push(()=>n[Wn].state===`readable`?readableStreamCancel(n,S):Promise.resolve()),shutdownWithAnAction(()=>Promise.all(I.map(n=>n())).then(()=>void 0),!0,S)}function watchErrored(n,a,S){n[Wn].state===`errored`?S(n[Wn].storedError):a.then(void 0,S)}function watchClosed(n,a,S){n[Wn].state===`closed`?S():a.then(S,()=>{})}class PipeToReadRequest{[rr](n){Me(()=>{X.currentWrite=writableStreamDefaultWriterWrite(H,n),setPromiseHandled(X.currentWrite),ne.resolve(!1)})}[nr](){ne.resolve(!0)}[ir](n){ne.reject(n)}}let ne={resolve:null,reject:null};async function step(){if(W||a[Wn].backpressure&&(await H[Wn].ready.promise,W))return!0;let S=n[Wn].controller;if(n[Wn].state===`readable`&&fr(S)&&S[Wn].queue.length>0){for(;S[Wn].queue.length>0;){if(W)return!0;let C=dequeueValue(S);if(S[Wn].closeRequested&&!S[Wn].queue.length&&(readableStreamDefaultControllerClearAlgorithms(S),readableStreamClose(n)),X.currentWrite=writableStreamDefaultWriterWrite(H,C),setPromiseHandled(X.currentWrite),a[Wn].backpressure||a[Wn].state!==`writable`||writableStreamCloseQueuedOrInFlight(a))break}return readableStreamDefaultControllerCallPullIfNeeded(S),n[Wn].state===`closed`}let{promise:C,resolve:N,reject:F}=Promise.withResolvers();return ne={resolve:N,reject:F},readableStreamDefaultReaderRead(I,new PipeToReadRequest),C}async function run(){for(;!await step(););}if(F!==void 0){if(F.aborted)return abortAlgorithm(),K;te=abortAlgorithm,F.addEventListener(`abort`,te,{once:!0})}if(setPromiseHandled(run()),watchErrored(n,I[Wn].close.promise,n=>{if(!C)return shutdownWithAnAction(()=>writableStreamAbort(a,n),!0,n);shutdown(!0,n)}),watchErrored(a,H[Wn].close.promise,a=>{if(!N)return shutdownWithAnAction(()=>readableStreamCancel(n,a),!0,a);shutdown(!0,a)}),watchClosed(n,I[Wn].close.promise,()=>{if(!S)return shutdownWithAnAction(()=>writableStreamDefaultWriterCloseWithErrorPropagation(H));shutdown()}),writableStreamCloseQueuedOrInFlight(a)||a[Wn].state===`closed`){let a=TypeError(`Destination WritableStream is closed`);N?shutdown(!0,a):shutdownWithAnAction(()=>readableStreamCancel(n,a),!0,a)}return K}function readableStreamDefaultTee(n,a){let S=new ReadableStreamDefaultReader(n),C=!1,N=!1,F=!1,I,H,W,K,q=Promise.withResolvers();async function pullAlgorithm(){C||(C=!0,readableStreamDefaultReaderRead(S,{[rr](n){Me(()=>{C=!1;let S=n,I=n;if(!F&&a)try{I=structuredClone(I)}catch{}N||readableStreamDefaultControllerEnqueue(W[Wn].controller,S),F||readableStreamDefaultControllerEnqueue(K[Wn].controller,I)})},[nr](){Me(()=>{C=!1,N||readableStreamDefaultControllerClose(W[Wn].controller),F||readableStreamDefaultControllerClose(K[Wn].controller),(!N||!F)&&q.resolve(void 0)})},[ir](){C=!1}}))}function cancel1Algorithm(a){if(N=!0,I=a,F){let a=[I,H];q.resolve(readableStreamCancel(n,a))}return q.promise}function cancel2Algorithm(a){if(F=!0,H=a,N){let a=[I,H];q.resolve(readableStreamCancel(n,a))}return q.promise}return W=createReadableStream(nonOpStart,pullAlgorithm,cancel1Algorithm),K=createReadableStream(nonOpStart,pullAlgorithm,cancel2Algorithm),S[Wn].close.promise.then(void 0,n=>{readableStreamDefaultControllerError(W[Wn].controller,n),readableStreamDefaultControllerError(K[Wn].controller,n),(!N||!F)&&q.resolve(void 0)}),[W,K]}var BYOBReadIntoRequest=class{[Wn];constructor(){this[Wn]=Promise.withResolvers()}[rr](n){this[Wn].resolve?.({value:n,done:!1})}[nr](n){this[Wn].resolve?.({value:n,done:!0})}[ir](n){this[Wn].reject?.(n)}get promise(){return this[Wn].promise}},ReadableStreamBYOBReader=class{[Gn]=`ReadableStreamBYOBReader`;[Wn];constructor(n){if(!dr(n))throw TypeError(`Expected a ReadableStream`);this[Wn]={readRequests:[],readIntoRequests:[],stream:void 0,close:{promise:void 0,resolve:void 0,reject:void 0}},setupReadableStreamBYOBReader(this,n)}read(n,a={}){if(!hr(this))return Promise.reject(TypeError(`Invalid this`));if(typeof n!=`object`||!n||!ArrayBuffer.isView(n))return Promise.reject(TypeError(`view must be an ArrayBufferView`));let S=n.buffer,C=n.byteLength;if(C===0)return Promise.reject(TypeError(`view must have non-zero byteLength`));if(S.byteLength===0)return isDetachedBuffer(S)?Promise.reject(TypeError(`view's buffer has been detached`)):Promise.reject(TypeError(`view's buffer must have non-zero byteLength`));let N=a?.min??1;if(typeof N!=`number`||N<1||!Number.isInteger(N)||Number.isNaN(N))return Promise.reject(TypeError(`options.min must be a positive integer`));let F=n[Symbol.toStringTag];if(F!==void 0&&F!==`DataView`){if(N>n.length)return Promise.reject(RangeError(`options.min must be smaller or equal to view size`))}else if(N>C)return Promise.reject(RangeError(`options.min must be smaller or equal to view size`));if(this[Wn].stream===void 0)return Promise.reject(TypeError(`Reader has no associated stream`));let I=new BYOBReadIntoRequest;return readableStreamBYOBReaderRead(this,n,N,I),I.promise}releaseLock(){if(!hr(this))throw TypeError(`Invalid this`);this[Wn].stream!==void 0&&readableStreamBYOBReaderRelease(this)}get closed(){return hr(this)?this[Wn].close.promise:Promise.reject(TypeError(`Invalid this`))}cancel(n=void 0){return hr(this)?this[Wn].stream===void 0?Promise.reject(TypeError(`Reader has no associated stream`)):readableStreamReaderGenericCancel(this,n):Promise.reject(TypeError(`Invalid this`))}get[Symbol.toStringTag](){return`ReadableStreamBYOBReader`}},ReadableStreamBYOBRequest=class{[Gn]=`ReadableStreamBYOBRequest`;[Wn];constructor(n){if(n!==cr)throw TypeError(`Illegal constructor`)}get view(){if(!gr(this))throw TypeError(`Invalid this`);return this[Wn].view}respond(n){if(!gr(this))throw TypeError(`Invalid this`);if(this[Wn].controller===void 0)throw TypeError(`BYOB request has been invalidated`);if(n=+n,!Number.isInteger(n)||n<0||!Number.isFinite(n))throw RangeError(`bytesWritten must be a non-negative integer`);let a=this[Wn].view;if(isDetachedBuffer(a.buffer))throw TypeError(`The BYOB request's buffer has been detached`);readableByteStreamControllerRespond(this[Wn].controller,n)}respondWithNewView(n){if(!gr(this))throw TypeError(`Invalid this`);if(this[Wn].controller===void 0)throw TypeError(`BYOB request has been invalidated`);if(typeof n!=`object`||!n||!ArrayBuffer.isView(n))throw TypeError(`view must be an ArrayBufferView`);if(isDetachedBuffer(n.buffer))throw TypeError(`The given view's buffer has been detached`);readableByteStreamControllerRespondWithNewView(this[Wn].controller,n)}get[Symbol.toStringTag](){return`ReadableStreamBYOBRequest`}},ReadableByteStreamController=class{[Gn]=`ReadableByteStreamController`;[Wn];constructor(n){if(n!==cr)throw TypeError(`Illegal constructor`)}get byobRequest(){if(!mr(this))throw TypeError(`Invalid this`);return readableByteStreamControllerGetBYOBRequest(this)}get desiredSize(){if(!mr(this))throw TypeError(`Invalid this`);return readableByteStreamControllerGetDesiredSize(this)}close(){if(!mr(this))throw TypeError(`Invalid this`);if(this[Wn].closeRequested)throw TypeError(`Close already requested`);if(this[Wn].stream[Wn].state!==`readable`)throw TypeError(`Stream is not in a readable state`);readableByteStreamControllerClose(this)}enqueue(n){if(!mr(this))throw TypeError(`Invalid this`);if(typeof n!=`object`||!n||!ArrayBuffer.isView(n))throw TypeError(`chunk must be an ArrayBufferView`);if(n.byteLength===0)throw TypeError(`chunk length must be non-zero`);if(n.buffer.byteLength===0)throw TypeError(`chunk's buffer length must be non-zero`);if(this[Wn].closeRequested)throw TypeError(`Cannot enqueue after close has been requested`);if(this[Wn].stream[Wn].state!==`readable`)throw TypeError(`Stream is not in a readable state`);readableByteStreamControllerEnqueue(this,n)}error(n=void 0){if(!mr(this))throw TypeError(`Invalid this`);readableByteStreamControllerError(this,n)}[tr](n){return readableByteStreamControllerCancelSteps(this,n)}[ar](n){readableByteStreamControllerPullSteps(this,n)}[sr](){if(this[Wn].pendingPullIntos.length>0){let n=this[Wn].pendingPullIntos[0];n.readerType=`none`,this[Wn].pendingPullIntos=[n]}}get[Symbol.toStringTag](){return`ReadableByteStreamController`}};const mr=isBrandCheck(`ReadableByteStreamController`),hr=isBrandCheck(`ReadableStreamBYOBReader`),gr=isBrandCheck(`ReadableStreamBYOBRequest`);function readableStreamHasBYOBReader(n){let{reader:a}=n[Wn];return a===void 0?!1:a[Wn]!==void 0&&a[Gn]===`ReadableStreamBYOBReader`}function readableStreamGetNumReadIntoRequests(n){return n[Wn].reader[Wn].readIntoRequests.length}function readableStreamAddReadIntoRequest(n,a){n[Wn].reader[Wn].readIntoRequests.push(a)}function readableStreamFulfillReadIntoRequest(n,a,S){let{reader:C}=n[Wn],N=C[Wn].readIntoRequests.shift();S?N[nr](a):N[rr](a)}function setupReadableStreamBYOBReader(n,a){if(isReadableStreamLocked(a))throw TypeError(`ReadableStream is locked`);if(!mr(a[Wn].controller))throw TypeError(`Cannot use a BYOB reader with a non-byte stream`);readableStreamReaderGenericInitialize(n,a),n[Wn].readIntoRequests=[]}function readableStreamBYOBReaderRead(n,a,S,C){let{stream:N}=n[Wn];N[Wn].disturbed=!0,N[Wn].state===`errored`?C[ir](N[Wn].storedError):readableByteStreamControllerPullInto(N[Wn].controller,a,S,C)}function readableStreamBYOBReaderRelease(n){readableStreamReaderGenericRelease(n);let a=TypeError(`Reader was released`);for(let S=0;S<n[Wn].readIntoRequests.length;S++)n[Wn].readIntoRequests[S][ir](a);n[Wn].readIntoRequests=[]}function readableByteStreamControllerClearAlgorithms(n){n[Wn].pullAlgorithm=void 0,n[Wn].cancelAlgorithm=void 0}function readableByteStreamControllerClearPendingPullIntos(n){readableByteStreamControllerInvalidateBYOBRequest(n),n[Wn].pendingPullIntos=[]}function readableByteStreamControllerInvalidateBYOBRequest(n){let a=n[Wn].byobRequest;a!=null&&(a[Wn].controller=void 0,a[Wn].view=null,n[Wn].byobRequest=null)}function readableByteStreamControllerError(n,a){let{stream:S}=n[Wn];S[Wn].state===`readable`&&(readableByteStreamControllerClearPendingPullIntos(n),resetQueue(n),readableByteStreamControllerClearAlgorithms(n),readableStreamError(S,a))}function readableByteStreamControllerGetDesiredSize(n){let a=n[Wn].stream[Wn].state;return a===`errored`?null:a===`closed`?0:n[Wn].highWaterMark-n[Wn].queueTotalSize}function readableByteStreamControllerShouldCallPull(n){let{stream:a}=n[Wn];if(a[Wn].state!==`readable`||n[Wn].closeRequested||!n[Wn].started)return!1;if(readableStreamHasDefaultReader(a)&&readableStreamGetNumReadRequests(a)>0||readableStreamHasBYOBReader(a)&&readableStreamGetNumReadIntoRequests(a)>0)return!0;let S=readableByteStreamControllerGetDesiredSize(n);return S!==null&&S>0}function readableByteStreamControllerCallPullIfNeeded(n){if(readableByteStreamControllerShouldCallPull(n)){if(n[Wn].pulling){n[Wn].pullAgain=!0;return}n[Wn].pulling=!0,n[Wn].pullAlgorithm(n).then(()=>{n[Wn].pulling=!1,n[Wn].pullAgain&&(n[Wn].pullAgain=!1,readableByteStreamControllerCallPullIfNeeded(n))},a=>readableByteStreamControllerError(n,a))}}function readableByteStreamControllerHandleQueueDrain(n){n[Wn].queueTotalSize===0&&n[Wn].closeRequested?(readableByteStreamControllerClearAlgorithms(n),readableStreamClose(n[Wn].stream)):readableByteStreamControllerCallPullIfNeeded(n)}function readableByteStreamControllerEnqueueChunkToQueue(n,a,S,C){n[Wn].queue.push({buffer:a,byteOffset:S,byteLength:C}),n[Wn].queueTotalSize+=C}function readableByteStreamControllerEnqueueClonedChunkToQueue(n,a,S,C){let N;try{N=a.slice(S,S+C)}catch(a){readableByteStreamControllerError(n,a);return}readableByteStreamControllerEnqueueChunkToQueue(n,N,0,C)}function readableByteStreamControllerEnqueueDetachedPullIntoToQueue(n,a){a.bytesFilled>0&&readableByteStreamControllerEnqueueClonedChunkToQueue(n,a.buffer,a.byteOffset,a.bytesFilled),readableByteStreamControllerShiftPendingPullInto(n)}function readableByteStreamControllerShiftPendingPullInto(n){return n[Wn].pendingPullIntos.shift()}function readableByteStreamControllerFillHeadPullIntoDescriptor(n,a,S){S.bytesFilled+=a}function readableByteStreamControllerConvertPullIntoDescriptor(n){let a=n.bytesFilled,S=n.elementSize,C=transferArrayBuffer(n.buffer);return n.buffer=C,new n.viewConstructor(C,n.byteOffset,a/S)}function readableByteStreamControllerCommitPullIntoDescriptor(n,a){let S=!1;n[Wn].state===`closed`&&(S=!0);let C=readableByteStreamControllerConvertPullIntoDescriptor(a);a.readerType==="default"?readableStreamFulfillReadRequest(n,C,S):readableStreamFulfillReadIntoRequest(n,C,S)}function readableByteStreamControllerFillPullIntoDescriptorFromQueue(n,a){let S=Math.min(n[Wn].queueTotalSize,a.byteLength-a.bytesFilled),C=a.bytesFilled+S,N=S,F=!1,I=C-C%a.elementSize;I>=a.minimumFill&&(N=I-a.bytesFilled,F=!0);let H=n[Wn].queue;for(;N>0;){let S=H[0],C=Math.min(N,S.byteLength),F=a.byteOffset+a.bytesFilled,I=new Uint8Array(a.buffer,F,C),W=new Uint8Array(S.buffer,S.byteOffset,C);I.set(W),S.byteLength===C?H.shift():(S.byteOffset+=C,S.byteLength-=C),n[Wn].queueTotalSize-=C,readableByteStreamControllerFillHeadPullIntoDescriptor(n,C,a),N-=C}return F}function readableByteStreamControllerFillReadRequestFromQueue(n,a){let S=n[Wn].queue.shift();n[Wn].queueTotalSize-=S.byteLength,readableByteStreamControllerHandleQueueDrain(n);let C=new Uint8Array(S.buffer,S.byteOffset,S.byteLength);a[rr](C)}function readableByteStreamControllerProcessReadRequestsUsingQueue(n){let a=n[Wn].stream[Wn].reader;for(;a[Wn].readRequests.length!==0;){if(n[Wn].queueTotalSize===0)return;readableByteStreamControllerFillReadRequestFromQueue(n,a[Wn].readRequests.shift())}}function readableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(n){for(;n[Wn].pendingPullIntos.length!==0;){if(n[Wn].queueTotalSize===0)return;let a=n[Wn].pendingPullIntos[0];readableByteStreamControllerFillPullIntoDescriptorFromQueue(n,a)&&(readableByteStreamControllerShiftPendingPullInto(n),readableByteStreamControllerCommitPullIntoDescriptor(n[Wn].stream,a))}}function readableByteStreamControllerGetBYOBRequest(n){if(n[Wn].byobRequest===null&&n[Wn].pendingPullIntos.length!==0){let a=n[Wn].pendingPullIntos[0],S=new Uint8Array(a.buffer,a.byteOffset+a.bytesFilled,a.byteLength-a.bytesFilled),C=new ReadableStreamBYOBRequest(cr);C[Wn]={controller:n,view:S},n[Wn].byobRequest=C}return n[Wn].byobRequest}function readableByteStreamControllerEnqueue(n,a){let{stream:S}=n[Wn];if(n[Wn].closeRequested||S[Wn].state!==`readable`)return;let C=a.buffer,N=a.byteLength,F=a.byteOffset;if(isDetachedBuffer(C))throw TypeError(`chunk's buffer is detached`);let I=transferArrayBuffer(C);if(n[Wn].pendingPullIntos.length!==0){let a=n[Wn].pendingPullIntos[0];if(isDetachedBuffer(a.buffer))throw TypeError(`BYOB request's buffer has been detached`);readableByteStreamControllerInvalidateBYOBRequest(n),a.buffer=transferArrayBuffer(a.buffer),a.readerType===`none`&&readableByteStreamControllerEnqueueDetachedPullIntoToQueue(n,a)}readableStreamHasDefaultReader(S)?(readableByteStreamControllerProcessReadRequestsUsingQueue(n),readableStreamGetNumReadRequests(S)===0?readableByteStreamControllerEnqueueChunkToQueue(n,I,F,N):(n[Wn].pendingPullIntos.length!==0&&readableByteStreamControllerShiftPendingPullInto(n),readableStreamFulfillReadRequest(S,new Uint8Array(I,F,N),!1))):readableStreamHasBYOBReader(S)?(readableByteStreamControllerEnqueueChunkToQueue(n,I,F,N),readableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(n)):readableByteStreamControllerEnqueueChunkToQueue(n,I,F,N),readableByteStreamControllerCallPullIfNeeded(n)}function readableByteStreamControllerClose(n){let{stream:a}=n[Wn];if(!(n[Wn].closeRequested||a[Wn].state!==`readable`)){if(n[Wn].queueTotalSize>0){n[Wn].closeRequested=!0;return}if(n[Wn].pendingPullIntos.length!==0){let a=n[Wn].pendingPullIntos[0];if(a.bytesFilled%a.elementSize!==0){let a=TypeError(`Insufficient bytes to fill elements in the given buffer`);throw readableByteStreamControllerError(n,a),a}}readableByteStreamControllerClearAlgorithms(n),readableStreamClose(a)}}function readableByteStreamControllerPullInto(n,a,S,C){let N=n[Wn].stream,F=a[Symbol.toStringTag],I,H;if(F===void 0||F===`DataView`)I=DataView,H=1;else{let n=typedArrayConstructorByTag(F);if(!n){C[ir](TypeError(`Unsupported typed array: ${F}`));return}I=n,H=elementSizeByTag(F)}let W=a.buffer,K=a.byteLength,q=a.byteOffset,Y=S*H,X;try{X=transferArrayBuffer(W)}catch(n){C[ir](n);return}let te={buffer:X,bufferByteLength:X.byteLength,byteOffset:q,byteLength:K,bytesFilled:0,minimumFill:Y,elementSize:H,viewConstructor:I,readerType:`byob`};if(n[Wn].pendingPullIntos.length!==0){n[Wn].pendingPullIntos.push(te),readableStreamAddReadIntoRequest(N,C);return}if(N[Wn].state===`closed`){let n=new I(te.buffer,te.byteOffset,0);C[nr](n);return}if(n[Wn].queueTotalSize>0){if(readableByteStreamControllerFillPullIntoDescriptorFromQueue(n,te)){let a=readableByteStreamControllerConvertPullIntoDescriptor(te);readableByteStreamControllerHandleQueueDrain(n),C[rr](a);return}if(n[Wn].closeRequested){let a=TypeError(`Insufficient bytes to fill elements in the given buffer`);readableByteStreamControllerError(n,a),C[ir](a);return}}n[Wn].pendingPullIntos.push(te),readableStreamAddReadIntoRequest(N,C),readableByteStreamControllerCallPullIfNeeded(n)}function readableByteStreamControllerRespond(n,a){let S=n[Wn].pendingPullIntos[0];if(n[Wn].stream[Wn].state===`closed`){if(a!==0)throw TypeError(`bytesWritten must be 0 when calling respond() on a closed stream`)}else{if(a===0)throw TypeError(`bytesWritten must be greater than 0 when calling respond() on a readable stream`);if(S.bytesFilled+a>S.byteLength)throw RangeError(`bytesWritten out of range`)}S.buffer=transferArrayBuffer(S.buffer),readableByteStreamControllerRespondInternal(n,a)}function readableByteStreamControllerRespondWithNewView(n,a){let S=n[Wn].pendingPullIntos[0],C=n[Wn].stream[Wn].state,N=a.byteLength,F=a.byteOffset,I=a.buffer;if(C===`closed`){if(N!==0)throw TypeError(`view's length must be 0 when calling respondWithNewView() on a closed stream`)}else if(N===0)throw TypeError(`view's length must be greater than 0 when calling respondWithNewView() on a readable stream`);if(S.byteOffset+S.bytesFilled!==F)throw RangeError(`The region specified by view does not match byobRequest`);if(S.bufferByteLength!==I.byteLength)throw RangeError(`The buffer of view has different capacity than byobRequest`);if(S.bytesFilled+N>S.byteLength)throw RangeError(`The region specified by view is larger than byobRequest`);S.buffer=transferArrayBuffer(I),readableByteStreamControllerRespondInternal(n,N)}function readableByteStreamControllerRespondInternal(n,a){let S=n[Wn].pendingPullIntos[0];readableByteStreamControllerInvalidateBYOBRequest(n),n[Wn].stream[Wn].state===`closed`?readableByteStreamControllerRespondInClosedState(n,S):readableByteStreamControllerRespondInReadableState(n,a,S),readableByteStreamControllerCallPullIfNeeded(n)}function readableByteStreamControllerRespondInClosedState(n,a){a.readerType===`none`&&readableByteStreamControllerShiftPendingPullInto(n);let S=n[Wn].stream;if(readableStreamHasBYOBReader(S))for(;readableStreamGetNumReadIntoRequests(S)>0;)readableByteStreamControllerCommitPullIntoDescriptor(S,readableByteStreamControllerShiftPendingPullInto(n))}function readableByteStreamControllerRespondInReadableState(n,a,S){if(readableByteStreamControllerFillHeadPullIntoDescriptor(n,a,S),S.readerType===`none`){readableByteStreamControllerEnqueueDetachedPullIntoToQueue(n,S),readableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(n);return}if(S.bytesFilled<S.minimumFill)return;readableByteStreamControllerShiftPendingPullInto(n);let C=S.bytesFilled%S.elementSize;if(C>0){let a=S.byteOffset+S.bytesFilled;readableByteStreamControllerEnqueueClonedChunkToQueue(n,S.buffer,a-C,C)}S.bytesFilled-=C,readableByteStreamControllerCommitPullIntoDescriptor(n[Wn].stream,S),readableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(n)}function readableByteStreamControllerCancelSteps(n,a){readableByteStreamControllerClearPendingPullIntos(n),resetQueue(n);let S=n[Wn].cancelAlgorithm?.(a)??Promise.resolve();return readableByteStreamControllerClearAlgorithms(n),S}function readableByteStreamControllerPullSteps(n,a){let S=n[Wn].stream;if(n[Wn].queueTotalSize>0){readableByteStreamControllerFillReadRequestFromQueue(n,a);return}let C=n[Wn].autoAllocateChunkSize;if(C!==void 0){let S;try{S=new ArrayBuffer(C)}catch(n){a[ir](n);return}let N={buffer:S,bufferByteLength:C,byteOffset:0,byteLength:C,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:`default`};n[Wn].pendingPullIntos.push(N)}readableStreamAddReadRequest(S,a),readableByteStreamControllerCallPullIfNeeded(n)}function setupReadableByteStreamController(n,a,S,C,N,F,I){a[Wn]={cancelAlgorithm:N,closeRequested:!1,highWaterMark:F,pullAgain:!1,pullAlgorithm:C,pulling:!1,queue:[],queueTotalSize:0,started:!1,stream:n,byobRequest:null,pendingPullIntos:[],autoAllocateChunkSize:I},n[Wn].controller=a;let H=S();new Promise(n=>n(H)).then(()=>{a[Wn].started=!0,readableByteStreamControllerCallPullIfNeeded(a)},n=>readableByteStreamControllerError(a,n))}function setupReadableByteStreamControllerFromSource(n,a,S){let C=new ReadableByteStreamController(cr),N=a?.start,F=a?.pull,I=a?.cancel,H=a?.autoAllocateChunkSize;if(H!==void 0&&(H===0||!Number.isInteger(H)||H<0))throw TypeError(`autoAllocateChunkSize must be a positive integer`);setupReadableByteStreamController(n,C,N?N.bind(a,C):nonOpStart,F?createPromiseCallback(`source.pull`,F,a):nonOpPull,I?createPromiseCallback(`source.cancel`,I,a):nonOpCancel,S,H)}function readableByteStreamTee(n){let a=new ReadableStreamDefaultReader(n),S=!1,C=!1,N=!1,F,I,H=Promise.withResolvers(),W,K,q,Y;function pullAlgorithm(){return S?Promise.resolve():(S=!0,a.read().then(n=>{if(S=!1,n.done){C||q.close(),N||Y.close();return}let a=n.value,F=new Uint8Array(a.buffer.slice(a.byteOffset,a.byteOffset+a.byteLength));C||q.enqueue(F),N||Y.enqueue(new Uint8Array(F))},()=>{}),Promise.resolve())}return W=new ReadableStream$1({type:`bytes`,pull:pullAlgorithm,cancel(a){if(C=!0,F=a,N){let a=readableStreamCancel(n,[F,I]);return H.resolve(),a}return H.promise}}),K=new ReadableStream$1({type:`bytes`,pull:pullAlgorithm,cancel(a){if(N=!0,I=a,C){let a=readableStreamCancel(n,[F,I]);return H.resolve(),a}return H.promise}}),q=W[Wn].controller,Y=K[Wn].controller,a.closed.catch(n=>{q.error(n),Y.error(n),(!C||!N)&&H.resolve()}),[W,K]}const _r=Symbol(`kSkipThrow`);var TransformStream=class{[Gn]=`TransformStream`;[Wn];constructor(n={},a={},S={}){if(n!=null&&typeof n!=`object`)throw TypeError(`transformer must be an object`);if(a!=null&&typeof a!=`object`)throw TypeError(`writableStrategy must be an object`);if(S!=null&&typeof S!=`object`)throw TypeError(`readableStrategy must be an object`);let C=n?.readableType,N=n?.writableType,F=n?.start;if(C!==void 0)throw RangeError(`Invalid readableType: ${C}`);if(N!==void 0)throw RangeError(`Invalid writableType: ${N}`);let I=extractHighWaterMark(S?.highWaterMark,0),H=extractSizeAlgorithm(S?.size),W=extractHighWaterMark(a?.highWaterMark,1),K=extractSizeAlgorithm(a?.size),q=Promise.withResolvers();initializeTransformStream(this,q,W,K,I,H),setupTransformStreamDefaultControllerFromTransformer(this,n),F===void 0?q.resolve():q.resolve(F.call(n,this[Wn].controller))}get readable(){if(!vr(this))throw TypeError(`Invalid this`);return this[Wn].readable}get writable(){if(!vr(this))throw TypeError(`Invalid this`);return this[Wn].writable}get[Symbol.toStringTag](){return`TransformStream`}},TransformStreamDefaultController=class{[Gn]=`TransformStreamDefaultController`;[Wn];constructor(n){if(n!==_r)throw TypeError(`Illegal constructor`)}get desiredSize(){if(!yr(this))throw TypeError(`Invalid this`);let{stream:n}=this[Wn],{readable:a}=n[Wn],S=a[Wn].controller;return readableStreamDefaultControllerGetDesiredSize(S)}enqueue(n){if(!yr(this))throw TypeError(`Invalid this`);transformStreamDefaultControllerEnqueue(this,n)}error(n){if(!yr(this))throw TypeError(`Invalid this`);transformStreamDefaultControllerError(this,n)}terminate(){if(!yr(this))throw TypeError(`Invalid this`);transformStreamDefaultControllerTerminate(this)}get[Symbol.toStringTag](){return`TransformStreamDefaultController`}};const vr=isBrandCheck(`TransformStream`),yr=isBrandCheck(`TransformStreamDefaultController`);async function defaultTransformAlgorithm(n,a){transformStreamDefaultControllerEnqueue(a,n)}function initializeTransformStream(n,a,S,C,N,F){let startAlgorithm=()=>a.promise,I=createWritableStream(startAlgorithm,a=>transformStreamDefaultSinkWriteAlgorithm(n,a),()=>transformStreamDefaultSinkCloseAlgorithm(n),a=>transformStreamDefaultSinkAbortAlgorithm(n,a),S,C);n[Wn]={readable:createReadableStream(startAlgorithm,()=>transformStreamDefaultSourcePullAlgorithm(n),a=>transformStreamDefaultSourceCancelAlgorithm(n,a),N,F),writable:I,controller:void 0,backpressure:void 0,backpressureChange:{promise:void 0,resolve:void 0,reject:void 0}},transformStreamSetBackpressure(n,!0)}function transformStreamError(n,a){let{readable:S}=n[Wn];readableStreamDefaultControllerError(S[Wn].controller,a),transformStreamErrorWritableAndUnblockWrite(n,a)}function transformStreamErrorWritableAndUnblockWrite(n,a){let{controller:S,writable:C}=n[Wn];transformStreamDefaultControllerClearAlgorithms(S),writableStreamDefaultControllerErrorIfNeeded(C[Wn].controller,a),transformStreamUnblockWrite(n)}function transformStreamUnblockWrite(n){n[Wn].backpressure&&transformStreamSetBackpressure(n,!1)}function transformStreamSetBackpressure(n,a){n[Wn].backpressureChange.promise!==void 0&&n[Wn].backpressureChange.resolve?.(),n[Wn].backpressureChange=Promise.withResolvers(),n[Wn].backpressure=a}function setupTransformStreamDefaultController(n,a,S,C,N){a[Wn]={stream:n,transformAlgorithm:S,flushAlgorithm:C,cancelAlgorithm:N,finishPromise:void 0},n[Wn].controller=a}function setupTransformStreamDefaultControllerFromTransformer(n,a){let S=new TransformStreamDefaultController(_r),C=a?.transform,N=a?.flush,F=a?.cancel;setupTransformStreamDefaultController(n,S,C?createPromiseCallback(`transformer.transform`,C,a):defaultTransformAlgorithm,N?createPromiseCallback(`transformer.flush`,N,a):nonOpFlush,F?createPromiseCallback(`transformer.cancel`,F,a):nonOpCancel)}function transformStreamDefaultControllerClearAlgorithms(n){n[Wn].transformAlgorithm=void 0,n[Wn].flushAlgorithm=void 0,n[Wn].cancelAlgorithm=void 0}function transformStreamDefaultControllerEnqueue(n,a){let{stream:S}=n[Wn],{readable:C}=S[Wn],N=C[Wn].controller;if(!readableStreamDefaultControllerCanCloseOrEnqueue(N))throw TypeError(`Unable to enqueue`);try{readableStreamDefaultControllerEnqueue(N,a)}catch(n){throw transformStreamErrorWritableAndUnblockWrite(S,n),C[Wn].storedError}readableStreamDefaultControllerHasBackpressure(N)!==S[Wn].backpressure&&transformStreamSetBackpressure(S,!0)}function transformStreamDefaultControllerError(n,a){transformStreamError(n[Wn].stream,a)}async function transformStreamDefaultControllerPerformTransform(n,a){try{let S=n[Wn].transformAlgorithm;if(S===void 0)return;await S(a,n)}catch(a){throw transformStreamError(n[Wn].stream,a),a}}function transformStreamDefaultControllerTerminate(n){let{stream:a}=n[Wn],{readable:S}=a[Wn];readableStreamDefaultControllerClose(S[Wn].controller),transformStreamErrorWritableAndUnblockWrite(a,TypeError(`TransformStream has been terminated`))}function transformStreamDefaultSinkWriteAlgorithm(n,a){let{controller:S}=n[Wn];return n[Wn].backpressure?n[Wn].backpressureChange.promise.then(()=>{let{writable:C}=n[Wn];if(C[Wn].state===`erroring`)throw C[Wn].storedError;return transformStreamDefaultControllerPerformTransform(S,a)}):transformStreamDefaultControllerPerformTransform(S,a)}async function transformStreamDefaultSinkAbortAlgorithm(n,a){let{controller:S,readable:C}=n[Wn];if(S[Wn].finishPromise!==void 0)return S[Wn].finishPromise;let{promise:N,resolve:F,reject:I}=Promise.withResolvers();S[Wn].finishPromise=N;let H=S[Wn].cancelAlgorithm(a);return transformStreamDefaultControllerClearAlgorithms(S),H.then(()=>{C[Wn].state===`errored`?I(C[Wn].storedError):(readableStreamDefaultControllerError(C[Wn].controller,a),F())},n=>{readableStreamDefaultControllerError(C[Wn].controller,n),I(n)}),S[Wn].finishPromise}function transformStreamDefaultSinkCloseAlgorithm(n){let{readable:a,controller:S}=n[Wn];if(S[Wn].finishPromise!==void 0)return S[Wn].finishPromise;let{promise:C,resolve:N,reject:F}=Promise.withResolvers();S[Wn].finishPromise=C;let I=S[Wn].flushAlgorithm(S);return transformStreamDefaultControllerClearAlgorithms(S),I.then(()=>{a[Wn].state===`errored`?F(a[Wn].storedError):(readableStreamDefaultControllerClose(a[Wn].controller),N())},n=>{readableStreamDefaultControllerError(a[Wn].controller,n),F(n)}),S[Wn].finishPromise}function transformStreamDefaultSourcePullAlgorithm(n){return transformStreamSetBackpressure(n,!1),n[Wn].backpressureChange.promise}function transformStreamDefaultSourceCancelAlgorithm(n,a){let{controller:S,writable:C}=n[Wn];if(S[Wn].finishPromise!==void 0)return S[Wn].finishPromise;let{promise:N,resolve:F,reject:I}=Promise.withResolvers();S[Wn].finishPromise=N;let H=S[Wn].cancelAlgorithm(a);return transformStreamDefaultControllerClearAlgorithms(S),H.then(()=>{C[Wn].state===`errored`?I(C[Wn].storedError):(writableStreamDefaultControllerErrorIfNeeded(C[Wn].controller,a),transformStreamUnblockWrite(n),F())},a=>{writableStreamDefaultControllerErrorIfNeeded(C[Wn].controller,a),transformStreamUnblockWrite(n),I(a)}),S[Wn].finishPromise}const br=Object.defineProperty(n=>n.byteLength,"name",{value:`size`}),Sr=Object.defineProperty(()=>1,"name",{value:`size`});var ByteLengthQueuingStrategy=class{#e;constructor(n){if(typeof n!=`object`||!n)throw TypeError(`init must be an object`);if(n.highWaterMark===void 0)throw TypeError(`init.highWaterMark is required`);this.#e=+n.highWaterMark}get highWaterMark(){return this.#e}get size(){return br}get[Symbol.toStringTag](){return`ByteLengthQueuingStrategy`}},CountQueuingStrategy=class{#e;constructor(n){if(typeof n!=`object`||!n)throw TypeError(`init must be an object`);if(n.highWaterMark===void 0)throw TypeError(`init.highWaterMark is required`);this.#e=+n.highWaterMark}get highWaterMark(){return this.#e}get size(){return Sr}get[Symbol.toStringTag](){return`CountQueuingStrategy`}},TextEncoderStream=class{#e=null;#t=new TextEncoder;#n;constructor(){this.#n=new TransformStream({transform:(n,a)=>{if(n=String(n),n===``)return;this.#e!==null&&(n=this.#e+n);let S=n.charCodeAt(n.length-1);55296<=S&&S<=56319?(this.#e=n.slice(-1),n=n.slice(0,-1)):this.#e=null,n&&a.enqueue(this.#t.encode(n))},flush:n=>{this.#e!==null&&n.enqueue(new Uint8Array([239,191,189]))}})}get encoding(){return`utf-8`}get readable(){return this.#n.readable}get writable(){return this.#n.writable}};function hasStreamingSupport(){try{return new TextDecoder().decode(new Uint8Array([195]),{stream:!0}),!0}catch{return!1}}const Cr=hasStreamingSupport();function incompleteUtf8Tail$1(n){let a=n.length;if(a===0)return 0;for(let S=1;S<=Math.min(3,a);S++){let C=n[a-S];if(!(C&128))return 0;if((C&192)!=128){let n;if((C&224)==192)n=2;else if((C&240)==224)n=3;else if((C&248)==240)n=4;else return 0;return S<n?S:0}}return 0}__name$1(incompleteUtf8Tail$1,`incompleteUtf8Tail`);var TextDecoderStream=class{#e;#t;constructor(n,a){if(this.#e=new TextDecoder(n,a),Cr)this.#t=new TransformStream({transform:(n,a)=>{let S=toUint8Array$3(n),C=this.#e.decode(S,{stream:!0});C&&a.enqueue(C)},flush:n=>{let a=this.#e.decode();a&&n.enqueue(a)},cancel:()=>{this.#e.decode()}});else{let n=new Uint8Array;this.#t=new TransformStream({transform:(a,S)=>{let C=toUint8Array$3(a),N;n.length>0?(N=new Uint8Array(n.length+C.length),N.set(n,0),N.set(C,n.length)):N=C;let F=incompleteUtf8Tail$1(N),I;if(F>0?(I=N.slice(0,N.length-F),n=N.slice(N.length-F)):(I=N,n=new Uint8Array),I.length>0){let n=this.#e.decode(I);n&&S.enqueue(n)}},flush:a=>{if(n.length>0){let S=this.#e.decode(n);S&&a.enqueue(S),n=new Uint8Array}},cancel:()=>{n=new Uint8Array}})}}get encoding(){return this.#e.encoding}get fatal(){return this.#e.fatal}get ignoreBOM(){return this.#e.ignoreBOM}get readable(){return this.#t.readable}get writable(){return this.#t.writable}};function toUint8Array$3(n){if(n instanceof Uint8Array)return n;if(n instanceof ArrayBuffer)return new Uint8Array(n);if(ArrayBuffer.isView(n))return new Uint8Array(n.buffer,n.byteOffset,n.byteLength);throw TypeError(`chunk must be a BufferSource`)}__name$1(toUint8Array$3,`toUint8Array`);function isNativeStreamUsable$3(n,a){try{return typeof n==`function`?typeof n.prototype?.[a]==`function`:!1}catch{return!1}}__name$1(isNativeStreamUsable$3,`isNativeStreamUsable`);const wr=isNativeStreamUsable$3(globalThis.ReadableStream,`getReader`)?globalThis.ReadableStream:ReadableStream$1,Tr=isNativeStreamUsable$3(globalThis.WritableStream,`getWriter`)?globalThis.WritableStream:WritableStream,Er=isNativeStreamUsable$3(globalThis.TransformStream,`readable`)?globalThis.TransformStream:TransformStream,Dr=typeof globalThis.ByteLengthQueuingStrategy==`function`?globalThis.ByteLengthQueuingStrategy:ByteLengthQueuingStrategy,Or=typeof globalThis.CountQueuingStrategy==`function`?globalThis.CountQueuingStrategy:CountQueuingStrategy,kr=typeof globalThis.TextEncoderStream==`function`?globalThis.TextEncoderStream:TextEncoderStream,Ar=typeof globalThis.TextDecoderStream==`function`?globalThis.TextDecoderStream:TextDecoderStream;var jr=__esmMin(()=>{Xe()});function _setPipeImpl(n){Mr=n}var Mr,Stream_,Nr=__esmMin(()=>{Kt(),Stream_=class extends Ft{constructor(n){super(n)}pipe(n,a){return Mr(this,n,a)}}});function getDefaultHighWaterMark(n){return n?Fr:Pr}function setDefaultHighWaterMark(n,a){if(typeof a!=`number`||a<0||Number.isNaN(a))throw TypeError(`Invalid highWaterMark: ${a}`);n?Fr=a:Pr=a}function validateHighWaterMark(n,a){if(a!==void 0&&(typeof a!=`number`||Number.isNaN(a))){let S=TypeError(`The value of "${n}" is invalid. Received ${a}`);throw S.code=`ERR_INVALID_ARG_VALUE`,S}}var Pr,Fr,Ir=__esmMin(()=>{Pr=16384,Fr=16});function chunkLength(n){if(n==null)return 1;let a=n.length;return typeof a==`number`?a:1}function sliceChunk(n,a,S){if(typeof n==`string`)return S===void 0?n.slice(a):n.slice(a,S);let C=n.slice;return typeof C==`function`?C.call(n,a,S):n}var Lr,Rr=__esmMin(()=>{Nr(),Ir(),Xe(),Lr=class Readable_ extends Stream_{readable=!0;readableFlowing=null;readableLength=0;readableHighWaterMark;readableEncoding;readableObjectMode;readableEnded=!1;readableAborted=!1;destroyed=!1;_pipeDests=[];_buffer=[];_readableState={ended:!1,endEmitted:!1,reading:!1,constructed:!0,highWaterMark:0,objectMode:!1,pipes:[]};_err;_readablePending=!1;_readImpl;_destroyImpl;_constructImpl;constructor(n){super(n),this.readableHighWaterMark=n?.highWaterMark??getDefaultHighWaterMark(n?.objectMode??!1),this.readableEncoding=n?.encoding??null,this.readableObjectMode=n?.objectMode??!1,this._readableState.highWaterMark=this.readableHighWaterMark,this._readableState.objectMode=this.readableObjectMode,n?.read&&(this._readImpl=n.read),n?.destroy&&(this._destroyImpl=n.destroy),n?.construct&&(this._constructImpl=n.construct),(this._constructImpl||this._construct!==Readable_.prototype._construct)&&(this._readableState.constructed=!1,nextTick(()=>{this._construct(n=>{this._readableState.constructed=!0,n?this.destroy(n):this.readableFlowing===!0&&this._flow()})}))}_construct(n){this._constructImpl?this._constructImpl.call(this,n):n()}_read(n){this._readImpl&&this._readImpl.call(this,n)}read(n){if(!this._readableState.constructed)return null;if(this._buffer.length===0){if(this._readableState.ended)return null;this._readableState.reading=!0,this._read(n??this.readableHighWaterMark),this._readableState.reading=!1}if(this._buffer.length===0||n===0)return null;if(this.readableObjectMode){if(n===void 0){let n=this._buffer.shift();return--this.readableLength,this._readableState.ended&&this._buffer.length===0&&!this._readableState.endEmitted&&this._emitEnd(),n}if(n>this.readableLength)return null;let a=this._buffer.shift();return--this.readableLength,a}if(n!=null)return n>this.readableLength?null:this._readBytes(n);let a=this._buffer.splice(0);if(this.readableLength=0,this._readableState.ended&&this._buffer.length===0&&!this._readableState.endEmitted&&this._emitEnd(),a.length===1)return a[0];if(a.length===0)return null;if(typeof a[0]==`string`)return a.join(``);let S=globalThis.Buffer;return S?.concat?S.concat(a):a}_readBytes(n){let a=0,S=[];for(;a<n&&this._buffer.length>0;){let C=this._buffer[0],N=chunkLength(C);if(a+N<=n)S.push(this._buffer.shift()),a+=N,this.readableLength-=N;else{let N=n-a;S.push(sliceChunk(C,0,N)),this._buffer[0]=sliceChunk(C,N),this.readableLength-=N,a+=N}}if(S.length===1)return S[0];let C=globalThis.Buffer;return C?.concat?C.concat(S):S}push(n,a){if(n===null)return this._readableState.ended=!0,this.readableEnded=!0,this._buffer.length===0&&!this._readableState.endEmitted&&nextTick(()=>this._emitEnd()),this._scheduleReadable(),!1;if(!this.readableObjectMode&&!(typeof n==`string`||ArrayBuffer.isView(n))){let a=Object.assign(TypeError(`Invalid non-string/buffer chunk type: ${typeof n}`),{code:`ERR_INVALID_ARG_TYPE`});return nextTick(()=>this.emit(`error`,a)),!1}return this._buffer.push(n),this.readableLength+=this.readableObjectMode?1:chunkLength(n),this.readableFlowing&&!this._flowing&&nextTick(()=>this._flow()),this.readableFlowing!==!0&&this._scheduleReadable(),this.readableLength<this.readableHighWaterMark}_emitEnd(){this._readableState.endEmitted||(this._readableState.endEmitted=!0,this.emit(`end`),nextTick(()=>this._autoClose()))}_autoClose(){this.emit(`close`)}_scheduleReadable(){this._readablePending||this.listenerCount(`readable`)===0||(this._readablePending=!0,nextTick(()=>{this._readablePending=!1,this.destroyed||this.emit(`readable`)}))}on(n,a){return super.on(n,a),n===`data`&&this.readableFlowing!==!1&&this.resume(),n===`readable`&&(this._buffer.length>0||this._readableState.ended)&&this._scheduleReadable(),this}unshift(n){this._buffer.unshift(n),this.readableLength+=this.readableObjectMode?1:chunkLength(n)}setEncoding(n){return this.readableEncoding=n,this}pause(){return this.readableFlowing=!1,this.emit(`pause`),this}resume(){return this.readableFlowing!==!0&&(this.readableFlowing=!0,this.emit(`resume`),this._readableState.constructed&&this._flow()),this}_flowing=!1;_flow(){if(!(this.readableFlowing!==!0||this._flowing||this.destroyed)&&this._readableState.constructed){this._flowing=!0;try{for(;this._buffer.length>0&&this.readableFlowing&&!this.destroyed;){let n=this._buffer.shift();if(this.readableLength-=this.readableObjectMode?1:chunkLength(n),this.readableEncoding&&typeof n!=`string`){let a=globalThis.Buffer;a?.isBuffer&&a.isBuffer(n)?n=n.toString(this.readableEncoding):n instanceof Uint8Array&&(n=new TextDecoder(this.readableEncoding).decode(n))}this.emit(`data`,n)}if(this.destroyed)return;if(this._readableState.ended&&this._buffer.length===0&&!this._readableState.endEmitted){nextTick(()=>this._emitEnd());return}!this._readableState.ended&&!this._readableState.reading&&!this.destroyed&&(this._readableState.reading=!0,this._read(this.readableHighWaterMark),this._readableState.reading=!1)}finally{this._flowing=!1}this._buffer.length>0&&this.readableFlowing&&!this.destroyed&&nextTick(()=>this._flow())}}isPaused(){return this.readableFlowing===!1}unpipe(n){if(n){let a=this._pipeDests.findIndex(a=>a.dest===n);if(a!==-1){this._pipeDests[a].cleanup(),this._pipeDests.splice(a,1);let S=this._readableState.pipes.indexOf(n);S!==-1&&this._readableState.pipes.splice(S,1),n.emit(`unpipe`,this),this._pipeDests.length===0&&(this.readableFlowing=!1)}}else{for(let n of this._pipeDests)n.cleanup(),n.dest.emit(`unpipe`,this);this._pipeDests=[],this._readableState.pipes=[],this.readableFlowing=!1}return this}_destroy(n,a){this._destroyImpl?this._destroyImpl.call(this,n,a):a(n??void 0)}destroy(n){if(this.destroyed)return this;this.destroyed=!0,this.readable=!1,this.readableAborted=!this.readableEnded,n&&(this._err=n);let cb=n=>{n&&nextTick(()=>this.emit(`error`,n)),nextTick(()=>this.emit(`close`))};return Object.prototype.hasOwnProperty.call(this,`_destroy`)?this._destroy(n??null,cb):this._destroyImpl?this._destroyImpl.call(this,n??null,cb):cb(n),this}static toWeb(n){return new ReadableStream({start(a){n.on(`data`,n=>{typeof n==`string`?a.enqueue(new TextEncoder().encode(n)):n instanceof Uint8Array?a.enqueue(n):n&&typeof n.length==`number`&&a.enqueue(new Uint8Array(n))}),n.on(`end`,()=>{a.close()}),n.on(`error`,n=>{a.error(n)})},cancel(){n.destroy()}})}static fromWeb(n,a){let S=n.getReader();return new Readable_({...a,read(){S.read().then(({done:n,value:a})=>{n?this.push(null):this.push(a)},n=>{this.destroy(n)})},destroy(n,a){S.cancel(n?.message).then(()=>a(null),a)}})}[Symbol.asyncIterator](){let n=this,a=[],S=!1,C=null,N=null,F=null;return n.on(`data`,n=>{if(N){let a=N;N=null,F=null,a({value:n,done:!1})}else a.push(n)}),n.on(`end`,()=>{if(S=!0,N){let n=N;N=null,F=null,n({value:void 0,done:!0})}}),n.on(`error`,n=>{if(C=n,S=!0,F){let a=F;N=null,F=null,a(n)}}),{next(){return C?Promise.reject(C):a.length>0?Promise.resolve({value:a.shift(),done:!1}):S?Promise.resolve({value:void 0,done:!0}):new Promise((n,a)=>{N=n,F=a})},return(){return n.destroy(),Promise.resolve({value:void 0,done:!0})},[Symbol.asyncIterator](){return this}}}static from(n,a){let S=new Readable_({objectMode:!0,...a,read(){}});return typeof n==`string`||ArrayBuffer.isView(n)?(S.push(n),S.push(null),S):((async()=>{try{for await(let a of n)S.push(a)||await new Promise(n=>S.once(`drain`,n));S.push(null)}catch(n){S.destroy(n)}})(),S)}}});function chunkLen$1(n){if(n==null)return 1;let a=n.length;return typeof a==`number`?a:1}var Duplex_,zr=__esmMin(()=>{Ir(),Rr(),Xe(),Duplex_=class extends Lr{writable=!0;writableHighWaterMark;writableLength=0;writableObjectMode;writableEnded=!1;writableFinished=!1;writableCorked=0;writableNeedDrain=!1;allowHalfOpen;_decodeStrings;_writableState={highWaterMark:0,objectMode:!1};_duplexCorkedBuffer=[];_duplexWriting=!1;_duplexWriteQueue=[];_writeImpl;_finalImpl;_defaultEncoding=`utf8`;_pendingWrites=0;_pendingEndCb=null;constructor(n){super(n),validateHighWaterMark(`writableHighWaterMark`,n?.writableHighWaterMark),validateHighWaterMark(`readableHighWaterMark`,n?.readableHighWaterMark),this.writableObjectMode=n?.writableObjectMode??n?.objectMode??!1,this.writableHighWaterMark=n?.highWaterMark??n?.writableHighWaterMark??getDefaultHighWaterMark(this.writableObjectMode),this._writableState.highWaterMark=this.writableHighWaterMark,this._writableState.objectMode=this.writableObjectMode,n?.highWaterMark===void 0&&n?.readableHighWaterMark!==void 0&&(this.readableHighWaterMark=n.readableHighWaterMark,this._readableState.highWaterMark=n.readableHighWaterMark),n?.readableObjectMode!==void 0&&(this.readableObjectMode=n.readableObjectMode,this._readableState.objectMode=n.readableObjectMode,n?.readableHighWaterMark===void 0&&n?.highWaterMark===void 0&&(this.readableHighWaterMark=getDefaultHighWaterMark(n.readableObjectMode),this._readableState.highWaterMark=this.readableHighWaterMark)),this.allowHalfOpen=n?.allowHalfOpen!==!1,this._decodeStrings=n?.decodeStrings!==!1,n?.write&&(this._writeImpl=n.write),n?.final&&(this._finalImpl=n.final),this.allowHalfOpen||this.once(`end`,()=>{this.writableEnded||nextTick(()=>this.end())})}_write(n,a,S){this._writeImpl?this._writeImpl.call(this,n,a,S):S()}_final(n){this._finalImpl?this._finalImpl.call(this,n):n()}destroy(n){return this.destroyed?this:(this.writable=!1,super.destroy(n))}write(n,a,S){let C,N;if(typeof a==`function`?(C=a,N=this._defaultEncoding):(N=a??this._defaultEncoding,C=S??(()=>{})),this._decodeStrings&&!this.writableObjectMode&&typeof n==`string`){let a=globalThis.Buffer;a&&(n=a.from(n,N),N=`buffer`)}if(typeof n!=`string`&&!this.writableObjectMode){let a=globalThis.Buffer;(a&&a.isBuffer(n)||n instanceof Uint8Array)&&(N=`buffer`)}if(this.writableEnded){let n=Error(`write after end`);return nextTick(()=>{C(n),this.emit(`error`,n)}),!1}if(this.writableLength+=this.writableObjectMode?1:chunkLen$1(n),this.writableCorked>0)return this._duplexCorkedBuffer.push({chunk:n,encoding:N,callback:C}),this.writableLength<this.writableHighWaterMark;let F=this.writableLength<this.writableHighWaterMark;return F||(this.writableNeedDrain=!0),this._duplexDoWrite(n,N,C),F}_duplexDoWrite(n,a,S){if(this._duplexWriting){this._duplexWriteQueue.push({chunk:n,encoding:a,callback:S});return}this._duplexWriting=!0,this._duplexStartWrite(n,a,S)}_duplexStartWrite(n,a,S){this._pendingWrites++,this._write(n,a,a=>{this._pendingWrites--,this.writableLength-=this.writableObjectMode?1:chunkLen$1(n),nextTick(a?()=>{if(S(a),this._duplexWriting=!1,this.emit(`error`,a),this._duplexWriteQueue.length>0){let n=this._duplexWriteQueue.shift();this._duplexWriting=!0,this._duplexStartWrite(n.chunk,n.encoding,n.callback)}}:()=>{if(S(),this._duplexWriteQueue.length>0){let n=this._duplexWriteQueue.shift();this._duplexStartWrite(n.chunk,n.encoding,n.callback);return}if(this._duplexWriting=!1,this.writableNeedDrain&&this.writableLength<=this.writableHighWaterMark&&(this.writableNeedDrain=!1,this.emit(`drain`)),this._pendingWrites===0&&this._pendingEndCb){let n=this._pendingEndCb;this._pendingEndCb=null,n()}})})}end(n,a,S){typeof n==`function`&&(S=n,n=void 0),typeof a==`function`&&(S=a,a=void 0),n!=null&&this.write(n,a),this.writableEnded=!0;let doFinal=()=>{this._final(n=>{this.writableFinished=!0,this._doPrefinishHooks(()=>{nextTick(()=>{n&&this.emit(`error`,n),this.emit(`finish`),nextTick(()=>this.emit(`close`)),S&&S()})})})};return this._pendingWrites>0||this._duplexWriting||this._duplexWriteQueue.length>0?this._pendingEndCb=doFinal:doFinal(),this}_doPrefinishHooks(n){n()}cork(){this.writableCorked++}uncork(){if(this.writableCorked>0&&(this.writableCorked--,this.writableCorked===0&&this._duplexCorkedBuffer.length>0)){let n=this._duplexCorkedBuffer.splice(0);for(let{chunk:a,encoding:S,callback:C}of n)this._write(a,S,n=>{this.writableLength-=this.writableObjectMode?1:chunkLen$1(a),n?(C(n),this.emit(`error`,n)):C()});this.writableNeedDrain&&this.writableLength<=this.writableHighWaterMark&&(this.writableNeedDrain=!1,nextTick(()=>this.emit(`drain`)))}}setDefaultEncoding(n){return this._defaultEncoding=n,this}},__name$1(chunkLen$1,`chunkLen`)});function pipe(n,a,S){let C=n,N=S?.end!==!1,F=!1,ondrain=()=>{F=!1,a.removeListener(`drain`,ondrain);let n=C;typeof n.resume==`function`&&n.resume()},ondata=n=>{if(a.writable){let S=C;a.write(n)===!1&&typeof S.pause==`function`&&(S.pause(),F||(F=!0,a.on(`drain`,ondrain)))}};C.on(`data`,ondata);let I=!1,onend=()=>{I||(I=!0,N&&a.end())},onclose=()=>{if(!I&&(I=!0,N&&!(C instanceof Lr))){let n=a;typeof n.destroy==`function`&&n.destroy()}};N&&(C.on(`end`,onend),C.on(`close`,onclose));let cleanup=()=>{C.removeListener(`data`,ondata),F&&a.removeListener(`drain`,ondrain),C.removeListener(`end`,onend),C.removeListener(`close`,onclose),C.removeListener(`end`,cleanup),C.removeListener(`close`,cleanup),a.removeListener(`close`,cleanup)};return C.on(`end`,cleanup),C.on(`close`,cleanup),a.on(`close`,cleanup),C instanceof Lr&&(C._pipeDests.push({dest:a,cleanup}),C._readableState.pipes.push(a)),a.emit(`pipe`,C),a}var Br=__esmMin(()=>{Nr(),Rr(),_setPipeImpl(pipe)});function chunkLen(n){if(n==null)return 1;let a=n.length;return typeof a==`number`?a:1}var Vr,Hr=__esmMin(()=>{Nr(),Ir(),Xe(),Vr=class Writable_ extends Stream_{static[Symbol.hasInstance](n){let a=this;return a.prototype!==void 0&&Object.prototype.isPrototypeOf.call(a.prototype,n)?!0:a.prototype!==Writable_.prototype||n==null?!1:typeof n.writableHighWaterMark==`number`}writable=!0;writableHighWaterMark;writableLength=0;writableObjectMode;writableEnded=!1;writableFinished=!1;writableCorked=0;writableNeedDrain=!1;destroyed=!1;_err;_writableState={ended:!1,finished:!1,constructed:!0,writing:!1};_corkedBuffer=[];_writeBuffer=[];_pendingConstruct=[];_ending=!1;_endCallback;_pendingEnd=null;_writeImpl;_writev;_finalImpl;_destroyImpl;_constructImpl;_decodeStrings;_defaultEncoding=`utf8`;constructor(n){super(n),this.writableHighWaterMark=n?.highWaterMark??getDefaultHighWaterMark(n?.objectMode??!1),this.writableObjectMode=n?.objectMode??!1,this._decodeStrings=n?.decodeStrings!==!1,n?.write&&(this._writeImpl=n.write),n?.writev&&(this._writev=n.writev),n?.final&&(this._finalImpl=n.final),n?.destroy&&(this._destroyImpl=n.destroy),n?.construct&&(this._constructImpl=n.construct),(this._constructImpl||this._construct!==Writable_.prototype._construct)&&(this._writableState.constructed=!1,nextTick(()=>{this._construct(n=>{this._writableState.constructed=!0,n?this.destroy(n):this._maybeFlush()})}))}_construct(n){this._constructImpl?this._constructImpl.call(this,n):n()}_write(n,a,S){this._writeImpl?this._writeImpl.call(this,n,a,S):S()}_final(n){this._finalImpl?this._finalImpl.call(this,n):n()}_destroy(n,a){this._destroyImpl?this._destroyImpl.call(this,n,a):a(n)}_maybeFlush(){let n=this._pendingConstruct.splice(0);if(n.length>0){let[a,...S]=n;this._writeBuffer.push(...S),this._doWrite(a.chunk,a.encoding,a.callback)}if(this._pendingEnd){let{chunk:n,encoding:a,callback:S}=this._pendingEnd;this._pendingEnd=null,this._doEnd(n,a,S)}}_doWrite(n,a,S){this._writableState.writing=!0;let C=!0;this._write(n,a,a=>{if(this.writableLength-=this.writableObjectMode?1:chunkLen(n),C){nextTick(()=>{if(a){S(a),this.emit(`error`,a);return}S(),this.writableNeedDrain&&this.writableLength<=this.writableHighWaterMark&&(this.writableNeedDrain=!1,this.emit(`drain`))}),a||this._drainWriteBuffer();return}nextTick(a?()=>{S(a),this.emit(`error`,a),this._drainWriteBuffer()}:()=>{S(),this.writableNeedDrain&&this.writableLength<=this.writableHighWaterMark&&(this.writableNeedDrain=!1,this.emit(`drain`)),this._drainWriteBuffer()})}),C=!1}_drainWriteBuffer(){if(this._writeBuffer.length>0){let n=this._writeBuffer.shift();this._doWrite(n.chunk,n.encoding,n.callback)}else this._writableState.writing=!1,this._maybeFinish()}_maybeFinish(){!this._ending||this._writableState.finished||this._writableState.writing||this._writeBuffer.length>0||(this._ending=!1,this._final(n=>{this.writableFinished=!0,this._writableState.finished=!0,nextTick(()=>{n&&this.emit(`error`,n),this.emit(`finish`),nextTick(()=>this.emit(`close`)),this._endCallback&&this._endCallback()})}))}write(n,a,S){let C,N;if(typeof a==`function`?(C=a,N=this._defaultEncoding):(N=a??this._defaultEncoding,C=S??(()=>{})),this._decodeStrings&&!this.writableObjectMode&&typeof n==`string`){let a=globalThis.Buffer;a&&(n=a.from(n,N),N=`buffer`)}if(typeof n!=`string`&&!this.writableObjectMode){let a=globalThis.Buffer;(a&&a.isBuffer(n)||n instanceof Uint8Array)&&(N=`buffer`)}if(this.writableEnded){let n=Error(`write after end`);return nextTick(()=>{C(n),this.emit(`error`,n)}),!1}if(this.writableLength+=this.writableObjectMode?1:chunkLen(n),this.writableCorked>0)return this._corkedBuffer.push({chunk:n,encoding:N,callback:C}),this.writableLength<this.writableHighWaterMark;if(!this._writableState.constructed)return this._pendingConstruct.push({chunk:n,encoding:N,callback:C}),this.writableLength<this.writableHighWaterMark;let F=this.writableLength<this.writableHighWaterMark;return F||(this.writableNeedDrain=!0),this._writableState.writing?this._writeBuffer.push({chunk:n,encoding:N,callback:C}):this._doWrite(n,N,C),F}_doEnd(n,a,S){n!=null&&this.write(n,a),this.writableEnded=!0,this._writableState.ended=!0,this._ending=!0,this._endCallback=S,this._maybeFinish()}end(n,a,S){return typeof n==`function`&&(S=n,n=void 0),typeof a==`function`&&(S=a,a=void 0),this.writableEnded?(S&&nextTick(S),this):this._writableState.constructed?(this._doEnd(n,a,S),this):(this._pendingEnd={chunk:n,encoding:a,callback:S},this)}cork(){this.writableCorked++}uncork(){this.writableCorked>0&&(this.writableCorked--,this.writableCorked===0&&this._corkedBuffer.length>0&&this._flushCorkedBuffer())}_flushCorkedBuffer(){if(this._writev&&this._corkedBuffer.length>1){let n=this._corkedBuffer.splice(0),a=n.map(n=>({chunk:n.chunk,encoding:n.encoding}));this._writev.call(this,a,a=>{for(let a of n)this.writableLength-=this.writableObjectMode?1:chunkLen(a.chunk);if(a){for(let S of n)S.callback(a);this.emit(`error`,a)}else{for(let a of n)a.callback();this.writableNeedDrain&&this.writableLength<=this.writableHighWaterMark&&(this.writableNeedDrain=!1,this.emit(`drain`))}})}else{let n=this._corkedBuffer.splice(0);if(n.length>0){let[a,...S]=n;this._writeBuffer.push(...S),this._doWrite(a.chunk,a.encoding,a.callback)}}}setDefaultEncoding(n){return this._defaultEncoding=n,this}destroy(n){if(this.destroyed)return this;this.destroyed=!0,this.writable=!1,n&&(this._err=n);let cb=n=>{n&&nextTick(()=>this.emit(`error`,n)),nextTick(()=>this.emit(`close`))};return this._destroy(n??null,cb),this}}}),Ur,Wr=__esmMin(()=>{zr(),Xe(),Ur=class Transform_ extends Duplex_{constructor(n){super({...n,write:void 0,final:void 0});let a=this;n?.transform&&(a._transform=n.transform),n?.flush&&(a._flush=n.flush),n?.final&&(a._final=n.final)}_transform(n,a,S){throw Object.assign(Error(`The _transform() method is not implemented`),{code:`ERR_METHOD_NOT_IMPLEMENTED`})}_flush(n){n()}_write(n,a,S){let C=!1;try{this._transform(n,a,(n,a)=>{if(C){let n=Object.assign(Error(`Callback called multiple times`),{code:`ERR_MULTIPLE_CALLBACK`});nextTick(()=>this.emit(`error`,n));return}if(C=!0,n){S(n);return}a!=null&&this.push(a),S()})}catch(n){if(n?.code===`ERR_METHOD_NOT_IMPLEMENTED`)throw n;S(n)}}_final(n){this._flush((a,S)=>{if(a){n(a);return}S!=null&&this.push(S),this.push(null),n()})}_doPrefinishHooks(n){let a=Transform_.prototype._final;this._final===a?n():a.call(this,n)}}}),PassThrough_,Gr=__esmMin(()=>{Wr(),PassThrough_=class extends Ur{constructor(n){super({...n,transform(n,a,S){S(null,n)}})}}});function pipeline(...n){let a=n,S=typeof a[a.length-1]==`function`?a.pop():void 0,C=a;if(C.length<2)throw Error(`pipeline requires at least 2 streams`);let N=null;function onError(n){if(!N){N=n;for(let n of C)typeof n.destroy==`function`&&n.destroy();S&&S(n)}}let F=C[0];for(let n=1;n<C.length;n++){let a=C[n];F.pipe(a),F.on(`error`,onError),F=a}let I=C[C.length-1];return I.on(`error`,onError),I.on(`finish`,()=>{S&&!N&&S(null)}),I}var Kr=__esmMin(()=>{});function finished$1(n,a,S){let C;C=typeof a==`function`?a:S;let N=!1;function done(n){N||(N=!0,C(n))}let onFinish=()=>done(),onEnd=()=>done(),onError=n=>done(n),onClose=()=>{let a=n,S=n;!a.writableFinished&&!S.readableEnded&&done(Error(`premature close`))};n.on(`finish`,onFinish),n.on(`end`,onEnd),n.on(`error`,onError),n.on(`close`,onClose);let F=n,I=typeof n.write==`function`,H=typeof n.read==`function`,W=F.writableFinished===!0,K=F.readableEnded===!0;if(F.destroyed===!0){let n=F._err;Me(n?()=>done(n):I&&W||H&&K?()=>done():()=>done(Error(`premature close`)))}else (I&&!H&&W||!I&&H&&K||I&&H&&W&&K)&&Me(()=>done());return function cleanup(){n.removeListener(`finish`,onFinish),n.removeListener(`end`,onEnd),n.removeListener(`error`,onError),n.removeListener(`close`,onClose)}}function addAbortSignal(n,a){if(!(n instanceof AbortSignal))throw TypeError(`The first argument must be an AbortSignal`);if(!(a instanceof Stream_))throw TypeError(`The second argument must be a Stream`);let S=a;if(n.aborted)S.destroy(Error(`The operation was aborted`));else{let onAbort=()=>{S.destroy(Error(`The operation was aborted`))};n.addEventListener(`abort`,onAbort,{once:!0}),a.once(`close`,()=>{n.removeEventListener(`abort`,onAbort)})}return a}function isReadable(n){if(n==null)return!1;let a=n;return typeof a.readable!=`boolean`||typeof a.read!=`function`||a.destroyed===!0||a.readableEnded===!0?!1:a.readable===!0}function isWritable(n){if(n==null)return!1;let a=n;return typeof a.writable!=`boolean`||typeof a.write!=`function`||a.destroyed===!0||a.writableEnded===!0?!1:a.writable===!0}function isDestroyed(n){return n==null?!1:n.destroyed===!0}function isDisturbed(n){if(n==null)return!1;let a=n;return a.readableDidRead===!0||a.readableFlowing!==null&&a.readableFlowing!==void 0}function isErrored(n){if(n==null)return!1;let a=n;return a.destroyed===!0&&typeof a.readable==`boolean`&&a.readable===!1||a.destroyed===!0&&typeof a.writable==`boolean`&&a.writable===!1}var qr=__esmMin(()=>{Nr(),Xe(),__name$1(finished$1,`finished`)}),Jr=__exportAll$3({Duplex:()=>Qr,PassThrough:()=>ei,Readable:()=>Xr,Stream:()=>Yr,Transform:()=>$r,Writable:()=>Zr,addAbortSignal:()=>addAbortSignal,default:()=>ti,finished:()=>finished$1,getDefaultHighWaterMark:()=>getDefaultHighWaterMark,isDestroyed:()=>isDestroyed,isDisturbed:()=>isDisturbed,isErrored:()=>isErrored,isReadable:()=>isReadable,isWritable:()=>isWritable,pipeline:()=>pipeline,setDefaultHighWaterMark:()=>setDefaultHighWaterMark}),Yr,Xr,Zr,Qr,$r,ei,ti,ni=__esmMin(()=>{jr(),Nr(),Ir(),Rr(),zr(),Br(),Hr(),Wr(),Gr(),Kr(),qr(),Yr=makeCallable(Stream_),Xr=makeCallable(Lr),Zr=makeCallable(Vr),Qr=makeCallable(Duplex_),$r=makeCallable(Ur),ei=makeCallable(PassThrough_),ti=Object.assign(Yr,{Stream:Yr,Readable:Xr,Writable:Zr,Duplex:Qr,Transform:$r,PassThrough:ei,pipeline,finished:finished$1,addAbortSignal,isReadable,isWritable,isDestroyed,isDisturbed,isErrored,getDefaultHighWaterMark,setDefaultHighWaterMark})});function getGioCompressorFormat(n){switch(n){case`gzip`:return me.ZlibCompressorFormat.GZIP;case`deflate`:return me.ZlibCompressorFormat.ZLIB;case`deflate-raw`:return me.ZlibCompressorFormat.RAW}}function toUint8Array$2(n){return typeof n==`string`?new TextEncoder().encode(n):new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}function concat(n){let a=n.reduce((n,a)=>n+a.length,0),S=new Uint8Array(a),C=0;for(let a of n)S.set(a,C),C+=a.length;return S}function compressWithGio$1(n,a){let S=new me.ZlibCompressor({format:getGioCompressorFormat(a)}),C=new me.ConverterOutputStream({base_stream:me.MemoryOutputStream.new_resizable(),converter:S});C.write_bytes(new Z.Bytes(n),null),C.close(null);let N=C.get_base_stream().steal_as_bytes();return new Uint8Array(N.get_data()??[])}function decompressMemberWithGio(n,a){let S=new me.ZlibDecompressor({format:getGioCompressorFormat(a)}),C=me.MemoryInputStream.new_from_bytes(new Z.Bytes(n)),N=new me.ConverterInputStream({base_stream:C,converter:S}),F=[];for(;;){let n=N.read_bytes(4096,null);if(n.get_size()===0)break;F.push(new Uint8Array(n.get_data()))}return N.close(null),concat(F)}function findGzipMemberEnd$1(n){let a=new me.ZlibDecompressor({format:me.ZlibCompressorFormat.GZIP}),S=new Uint8Array(65536),C=0,N=!1;for(;!N;){let F=n.subarray(C);try{let[n,I]=a.convert(F,S,me.ConverterFlags.NONE);C+=I,n===me.ConverterResult.FINISHED&&(N=!0)}catch{N=!0}}return C}function gunzipWithGio(n){let a=[],S=0;for(;S<n.length&&!(n.length-S<2||n[S]!==31||n[S+1]!==139);){let C=n.subarray(S),N=findGzipMemberEnd$1(C);if(N<=0)break;a.push(decompressMemberWithGio(C.subarray(0,N),`gzip`)),S+=N}return a.length===0?decompressMemberWithGio(n,`gzip`):concat(a)}function createGzip(n){return new Gzip(n)}function createGunzip(n){return new Gunzip(n)}function createDeflate(n){return new Deflate(n)}function createInflate(n){return new Inflate(n)}function createDeflateRaw(n){return new DeflateRaw(n)}function createInflateRaw(n){return new InflateRaw(n)}function createUnzip(n){return new Unzip(n)}function createBrotliCompress(n){throw Error(`createBrotliCompress is not supported on GJS (no Brotli in GLib)`)}function createBrotliDecompress(n){throw Error(`createBrotliDecompress is not supported on GJS (no Brotli in GLib)`)}function createZstdCompress(n){let a=Error(`createZstdCompress is not supported on GJS (no Zstd in GLib)`);throw a.code=`ERR_UNSUPPORTED_OPERATION`,a}function createZstdDecompress(n){let a=Error(`createZstdDecompress is not supported on GJS (no Zstd in GLib)`);throw a.code=`ERR_UNSUPPORTED_OPERATION`,a}var ZlibBase,Gzip,Gunzip,Deflate,Inflate,DeflateRaw,InflateRaw,Unzip,BrotliCompress,BrotliDecompress,ZstdCompress,ZstdDecompress,ri=__esmMin(()=>{he(),se(),ni(),__name$1(toUint8Array$2,`toUint8Array`),__name$1(compressWithGio$1,`compressWithGio`),__name$1(findGzipMemberEnd$1,`findGzipMemberEnd`),ZlibBase=class extends $r{_mode;_chunks=[];constructor(n,a){super(a),this._mode=n}_transform(n,a,S){this._chunks.push(toUint8Array$2(n)),S()}_flush(n){let a=concat(this._chunks);this._chunks=[];try{this.push(Buffer.from(this._run(a))),n()}catch(a){n(a instanceof Error?a:Error(String(a)))}}_run(n){let a=this._mode;switch(a.kind){case`compress`:return compressWithGio$1(n,a.format);case`decompress`:return decompressMemberWithGio(n,a.format);case`gunzip`:return gunzipWithGio(n);case`unzip`:return n.length>=2&&n[0]===31&&n[1]===139?gunzipWithGio(n):decompressMemberWithGio(n,`deflate`)}}},Gzip=class extends ZlibBase{constructor(n){super({kind:`compress`,format:`gzip`},n)}},Gunzip=class extends ZlibBase{constructor(n){super({kind:`gunzip`},n)}},Deflate=class extends ZlibBase{constructor(n){super({kind:`compress`,format:`deflate`},n)}},Inflate=class extends ZlibBase{constructor(n){super({kind:`decompress`,format:`deflate`},n)}},DeflateRaw=class extends ZlibBase{constructor(n){super({kind:`compress`,format:`deflate-raw`},n)}},InflateRaw=class extends ZlibBase{constructor(n){super({kind:`decompress`,format:`deflate-raw`},n)}},Unzip=class extends ZlibBase{constructor(n){super({kind:`unzip`},n)}},BrotliCompress=class extends $r{constructor(){throw super(),Error(`BrotliCompress is not supported on GJS (no Brotli in GLib)`)}},BrotliDecompress=class extends $r{constructor(){throw super(),Error(`BrotliDecompress is not supported on GJS (no Brotli in GLib)`)}},ZstdCompress=class extends $r{constructor(){super();let n=Error(`ZstdCompress is not supported on GJS (no Zstd in GLib)`);throw n.code=`ERR_UNSUPPORTED_OPERATION`,n}},ZstdDecompress=class extends $r{constructor(){super();let n=Error(`ZstdDecompress is not supported on GJS (no Zstd in GLib)`);throw n.code=`ERR_UNSUPPORTED_OPERATION`,n}}}),ii=__exportAll$3({BrotliCompress:()=>BrotliCompress,BrotliDecompress:()=>BrotliDecompress,Deflate:()=>Deflate,DeflateRaw:()=>DeflateRaw,Gunzip:()=>Gunzip,Gzip:()=>Gzip,Inflate:()=>Inflate,InflateRaw:()=>InflateRaw,Unzip:()=>Unzip,ZlibTransform:()=>ZlibBase,ZstdCompress:()=>ZstdCompress,ZstdDecompress:()=>ZstdDecompress,brotliCompress:()=>brotliCompress,brotliCompressSync:()=>brotliCompressSync,brotliDecompress:()=>brotliDecompress,brotliDecompressSync:()=>brotliDecompressSync,constants:()=>si,createBrotliCompress:()=>createBrotliCompress,createBrotliDecompress:()=>createBrotliDecompress,createDeflate:()=>createDeflate,createDeflateRaw:()=>createDeflateRaw,createGunzip:()=>createGunzip,createGzip:()=>createGzip,createInflate:()=>createInflate,createInflateRaw:()=>createInflateRaw,createUnzip:()=>createUnzip,createZstdCompress:()=>createZstdCompress,createZstdDecompress:()=>createZstdDecompress,default:()=>ci,deflate:()=>deflate,deflateRaw:()=>deflateRaw,deflateRawSync:()=>deflateRawSync,deflateSync:()=>deflateSync,gunzip:()=>gunzip$2,gunzipSync:()=>gunzipSync,gzip:()=>gzip$1,gzipSync:()=>gzipSync,inflate:()=>inflate,inflateRaw:()=>inflateRaw,inflateRawSync:()=>inflateRawSync,inflateSync:()=>inflateSync,zstdCompress:()=>zstdCompress,zstdCompressSync:()=>zstdCompressSync,zstdDecompress:()=>zstdDecompress,zstdDecompressSync:()=>zstdDecompressSync});function getGioFormat(n){switch(n){case`gzip`:return me.ZlibCompressorFormat.GZIP;case`deflate`:return me.ZlibCompressorFormat.ZLIB;case`deflate-raw`:return me.ZlibCompressorFormat.RAW}}function compressWithGio(n,a){let S=new me.ZlibCompressor({format:getGioFormat(a)}),C=new me.ConverterOutputStream({base_stream:me.MemoryOutputStream.new_resizable(),converter:S});C.write_bytes(new Z.Bytes(n),null),C.close(null);let N=C.get_base_stream().steal_as_bytes();return new Uint8Array(N.get_data()??[])}function decompressStreamWithGio(n,a){let S=new me.ZlibDecompressor({format:getGioFormat(a)}),C=me.MemoryInputStream.new_from_bytes(new Z.Bytes(n)),N=new me.ConverterInputStream({base_stream:C,converter:S}),F=[];for(;;){let n=N.read_bytes(4096,null);if(n.get_size()===0)break;F.push(new Uint8Array(n.get_data()))}N.close(null);let I=F.reduce((n,a)=>n+a.length,0),H=new Uint8Array(I),W=0;for(let n of F)H.set(n,W),W+=n.length;return H}function findGzipMemberEnd(n){let a=new me.ZlibDecompressor({format:me.ZlibCompressorFormat.GZIP}),S=new Uint8Array(65536),C=0,N=!1;for(;!N;){let F=n.subarray(C);try{let[n,I]=a.convert(F,S,me.ConverterFlags.NONE);C+=I,n===me.ConverterResult.FINISHED&&(N=!0)}catch{N=!0}}return C}function decompressWithGio(n,a){if(a!==`gzip`)return decompressStreamWithGio(n,a);let S=[],C=0;for(;C<n.length&&!(n.length-C<2||n[C]!==31||n[C+1]!==139);){let a=n.subarray(C),N=findGzipMemberEnd(a);if(N<=0)break;let F=decompressStreamWithGio(a.subarray(0,N),`gzip`);S.push(F),C+=N}if(S.length===0)return decompressStreamWithGio(n,`gzip`);let N=S.reduce((n,a)=>n+a.length,0),F=new Uint8Array(N),I=0;for(let n of S)F.set(n,I),I+=n.length;return F}async function runWebTransform(n,a){let S=new ReadableStream({start(a){a.enqueue(new Uint8Array(n.buffer,n.byteOffset,n.byteLength)),a.close()}}),C=[],N=S.pipeThrough(a).getReader();for(;;){let{done:n,value:a}=await N.read();if(n)break;C.push(a)}let F=C.reduce((n,a)=>n+a.length,0),I=new Uint8Array(F),H=0;for(let n of C)I.set(n,H),H+=n.length;return I}async function compressWithWeb(n,a){return runWebTransform(n,new CompressionStream(a))}async function decompressWithWeb(n,a){return runWebTransform(n,new DecompressionStream(a))}async function compress(n,a){return ai?compressWithWeb(n,a):compressWithGio(n,a)}async function decompress(n,a){return ai?decompressWithWeb(n,a):decompressWithGio(n,a)}function toUint8Array$1(n){return typeof n==`string`?new TextEncoder().encode(n):n instanceof ArrayBuffer?new Uint8Array(n):n}function gzip$1(n,a,S){let C=typeof a==`function`?a:S;compress(toUint8Array$1(n),`gzip`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function gunzip$2(n,a,S){let C=typeof a==`function`?a:S;decompress(toUint8Array$1(n),`gzip`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function deflate(n,a,S){let C=typeof a==`function`?a:S;compress(toUint8Array$1(n),`deflate`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function inflate(n,a,S){let C=typeof a==`function`?a:S;decompress(toUint8Array$1(n),`deflate`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function deflateRaw(n,a,S){let C=typeof a==`function`?a:S;compress(toUint8Array$1(n),`deflate-raw`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function inflateRaw(n,a,S){let C=typeof a==`function`?a:S;decompress(toUint8Array$1(n),`deflate-raw`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function gzipSync(n,a){return compressWithGio(toUint8Array$1(n),`gzip`)}function gunzipSync(n,a){return decompressWithGio(toUint8Array$1(n),`gzip`)}function deflateSync(n,a){return compressWithGio(toUint8Array$1(n),`deflate`)}function inflateSync(n,a){return decompressWithGio(toUint8Array$1(n),`deflate`)}function deflateRawSync(n,a){return compressWithGio(toUint8Array$1(n),`deflate-raw`)}function inflateRawSync(n,a){return decompressWithGio(toUint8Array$1(n),`deflate-raw`)}function brotliCompress(n,a,S){(typeof a==`function`?a:S)(Error(`brotliCompress: Brotli is not supported in this environment`),oi)}function brotliDecompress(n,a,S){(typeof a==`function`?a:S)(Error(`brotliDecompress: Brotli is not supported in this environment`),oi)}function brotliCompressSync(n,a){throw Error(`brotliCompressSync: Brotli is not supported in this environment`)}function brotliDecompressSync(n,a){throw Error(`brotliDecompressSync: Brotli is not supported in this environment`)}function zstdCompress(n,a,S){let C=typeof a==`function`?a:S,N=Error(`zstdCompress: Zstd is not supported in this environment`);N.code=`ERR_UNSUPPORTED_OPERATION`,C(N,oi)}function zstdDecompress(n,a,S){let C=typeof a==`function`?a:S,N=Error(`zstdDecompress: Zstd is not supported in this environment`);N.code=`ERR_UNSUPPORTED_OPERATION`,C(N,oi)}function zstdCompressSync(n,a){let S=Error(`zstdCompressSync: Zstd is not supported in this environment`);throw S.code=`ERR_UNSUPPORTED_OPERATION`,S}function zstdDecompressSync(n,a){let S=Error(`zstdDecompressSync: Zstd is not supported in this environment`);throw S.code=`ERR_UNSUPPORTED_OPERATION`,S}var ai,oi,si,ci,li=__esmMin(()=>{ri(),he(),se(),ai=globalThis.CompressionStream!==void 0,__name$1(toUint8Array$1,`toUint8Array`),__name$1(gzip$1,`gzip`),__name$1(gunzip$2,`gunzip`),oi=new Uint8Array,si={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_DEFLATED:8},ci={gzip:gzip$1,gunzip:gunzip$2,deflate,inflate,deflateRaw,inflateRaw,gzipSync,gunzipSync,deflateSync,inflateSync,deflateRawSync,inflateRawSync,brotliCompress,brotliDecompress,brotliCompressSync,brotliDecompressSync,zstdCompress,zstdDecompress,zstdCompressSync,zstdDecompressSync,Gzip,Gunzip,Deflate,Inflate,DeflateRaw,InflateRaw,Unzip,BrotliCompress,BrotliDecompress,ZstdCompress,ZstdDecompress,createGzip,createGunzip,createDeflate,createInflate,createDeflateRaw,createInflateRaw,createUnzip,createBrotliCompress,createBrotliDecompress,createZstdCompress,createZstdDecompress,constants:si}});const di=new Set([`gzip`,`deflate`,`deflate-raw`]);function validateFormat(n){if(!di.has(n))throw TypeError(`Unsupported compression format: '${n}'. Supported formats: 'gzip', 'deflate', 'deflate-raw'.`);return n}const fi=typeof globalThis.CompressionStream==`function`&&typeof globalThis.DecompressionStream==`function`;let pi=!1,mi,hi,gi,_i,vi,yi;async function loadZlib(){if(pi)return;let n=await Promise.resolve().then(()=>(li(),ii));mi=n.gzipSync,hi=n.gunzipSync,gi=n.deflateSync,_i=n.inflateSync,vi=n.deflateRawSync,yi=n.inflateRawSync,pi=!0}function getCompressFn(n){switch(n){case`gzip`:return n=>mi(n);case`deflate`:return n=>gi(n);case`deflate-raw`:return n=>vi(n)}}function getDecompressFn(n){switch(n){case`gzip`:return n=>hi(n);case`deflate`:return n=>_i(n);case`deflate-raw`:return n=>yi(n)}}function concatChunks$1(n){if(n.length===1)return n[0];let a=0;for(let S of n)a+=S.length;let S=new Uint8Array(a),C=0;for(let a of n)S.set(a,C),C+=a.length;return S}__name$1(concatChunks$1,`concatChunks`);let bi,xi;if(fi)bi=globalThis.CompressionStream,xi=globalThis.DecompressionStream;else{let n=loadZlib();bi=class CompressionStream{readable;writable;constructor(a){let S=validateFormat(a),C=[],N=new Er({transform(n){C.push(n)},async flush(a){try{await n;let N=getCompressFn(S)(concatChunks$1(C));N.length>0&&a.enqueue(N)}catch(n){a.error(n)}}});this.readable=N.readable,this.writable=N.writable}},xi=class DecompressionStream{readable;writable;constructor(a){let S=validateFormat(a),C=[],N=new Er({transform(n){C.push(n)},async flush(a){try{await n;let N=getDecompressFn(S)(concatChunks$1(C));N.length>0&&a.enqueue(N)}catch(n){a.error(n)}}});this.readable=N.readable,this.writable=N.writable}}}const Si=globalThis;globalThis.CompressionStream===void 0&&(Si.CompressionStream=bi),globalThis.DecompressionStream===void 0&&(Si.DecompressionStream=xi);const Ci=globalThis;globalThis.DOMException===void 0&&(Ci.DOMException=Tn);var wi,__name,Ti=__esmMin(()=>{wi=Object.defineProperty,__name=(n,a)=>wi(n,`name`,{value:a,configurable:!0})}),Ei=S;function validateHeaderName(n){if(typeof n!=`string`||!/^[\^`\-\w!#$%&'*+.|~]+$/.test(n)){let a=TypeError(`Header name must be a valid HTTP token ["${n}"]`);throw Object.defineProperty(a,"code",{value:`ERR_INVALID_HTTP_TOKEN`}),a}}function validateHeaderValue(n,a){if(a===void 0){let a=TypeError(`Header "${n}" value must not be undefined`);throw Object.defineProperty(a,"code",{value:`ERR_HTTP_INVALID_HEADER_VALUE`}),a}if(typeof a==`string`&&/[^\t -~-ÿ]/.test(a)){let a=TypeError(`Invalid character in header content ["${n}"]`);throw Object.defineProperty(a,"code",{value:`ERR_INVALID_CHAR`}),a}}const Di=Symbol(`Headers.headers`);function isBoxedPrimitive$2(n){return n instanceof String||n instanceof Number||n instanceof Boolean||typeof Symbol<`u`&&n instanceof Symbol||typeof BigInt<`u`&&n instanceof BigInt}__name$1(isBoxedPrimitive$2,`isBoxedPrimitive`);var Oi=class Headers{[Di];constructor(n){if(this[Di]=new Map,n!=null){if(n instanceof Headers){for(let[a,S]of n[Di])this[Di].set(a,[...S]);return}if(typeof n==`object`&&!isBoxedPrimitive$2(n)){let a=n[Symbol.iterator];if(a==null)for(let[a,S]of Object.entries(n))validateHeaderName(a),validateHeaderValue(a,String(S)),this.append(a,String(S));else{if(typeof a!=`function`)throw TypeError(`Header pairs must be iterable`);for(let a of n){if(typeof a!=`object`||isBoxedPrimitive$2(a))throw TypeError(`Each header pair must be an iterable object`);let n=[...a];if(n.length!==2)throw TypeError(`Each header pair must be a name/value tuple`);validateHeaderName(n[0]),validateHeaderValue(n[0],String(n[1])),this.append(n[0],String(n[1]))}}}else throw TypeError(`Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)'`)}}append(n,a){validateHeaderName(n),validateHeaderValue(n,a);let S=String(n).toLowerCase(),C=String(a),N=this[Di].get(S);N?N.push(C):this[Di].set(S,[C])}set(n,a){validateHeaderName(n),validateHeaderValue(n,a);let S=String(n).toLowerCase();this[Di].set(S,[String(a)])}delete(n){this[Di].delete(String(n).toLowerCase())}has(n){return this[Di].has(String(n).toLowerCase())}get(n){let a=this[Di].get(String(n).toLowerCase());if(!a||a.length===0)return null;let S=a.join(`, `);return/^content-encoding$/i.test(n)&&(S=S.toLowerCase()),S}getAll(n){return this[Di].get(String(n).toLowerCase())??[]}getSetCookie(){return this[Di].get(`set-cookie`)??[]}forEach(n,a){for(let S of this.keys())Reflect.apply(n,a,[this.get(S),S,this])}*keys(){let n=[...this[Di].keys()].sort(),a=new Set;for(let S of n)a.has(S)||(a.add(S),yield S)}*values(){for(let n of this.keys())yield this.get(n)}*entries(){for(let n of this.keys())yield[n,this.get(n)]}[Symbol.iterator](){return this.entries()}get[Symbol.toStringTag](){return`Headers`}toString(){return Object.prototype.toString.call(this)}raw(){let n={};for(let a of this.keys())n[a]=this.getAll(a);return n}_appendToSoupMessage(n,a=Ei.MessageHeadersType.REQUEST){let S=n?n.get_request_headers():new Ei.MessageHeaders(a);for(let[n,a]of this.entries())S.append(n,a);return S}static _newFromSoupMessage(n,a=Ei.MessageHeadersType.RESPONSE){let S=new Headers,C;return C=a===Ei.MessageHeadersType.RESPONSE?n.get_response_headers():n.get_request_headers(),C.foreach((n,a)=>{S.append(n,a)}),S}[Symbol.for(`nodejs.util.inspect.custom`)](){let n={};for(let a of this.keys()){let S=this.getAll(a);a===`host`?n[a]=S[0]:n[a]=S.length>1?S:S[0]}return n}};Object.defineProperties(Oi.prototype,[`get`,`entries`,`forEach`,`values`].reduce((n,a)=>(n[a]={enumerable:!0},n),{}));var ki=__esmMin(()=>{vt()});ki();var FetchBaseError=class extends Error{type;constructor(n,a){super(n),typeof Error.captureStackTrace==`function`&&Error.captureStackTrace(this,this.constructor),this.type=a}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}},FetchError=class extends FetchBaseError{code;errno;erroredSysCall;constructor(n,a,S){super(n,a),S&&(this.code=this.errno=S.code,this.erroredSysCall=S.syscall)}};fn();const Ai=Symbol.toStringTag,isURLSearchParameters=n=>typeof n==`object`&&typeof n.append==`function`&&typeof n.delete==`function`&&typeof n.get==`function`&&typeof n.getAll==`function`&&typeof n.has==`function`&&typeof n.set==`function`&&typeof n.sort==`function`&&n[Ai]===`URLSearchParams`,isBlob=n=>{if(!n||typeof n!=`object`)return!1;let a=n;return typeof a.arrayBuffer==`function`&&typeof a.type==`string`&&typeof a.stream==`function`&&typeof a.constructor==`function`&&/^(Blob|File)$/.test(a[Ai])},isAbortSignal=n=>{if(typeof n!=`object`||!n)return!1;let a=n;return a[Ai]===`AbortSignal`||a[Ai]===`EventTarget`},isDomainOrSubdomain=(n,a)=>{let S=new un(a).hostname,C=new un(n).hostname;return S===C||S.endsWith(`.${C}`)},isSameProtocol=(n,a)=>new un(a).protocol===new un(n).protocol;var ji,Mi,File,Ni=__esmMin(()=>{ji=Symbol(`File.name`),Mi=Symbol(`File.lastModified`),File=class extends Blob{[ji];[Mi];webkitRelativePath=``;constructor(n,a,S){super(n,S),this[ji]=String(a),this[Mi]=S?.lastModified??Date.now()}get name(){return this[ji]}get lastModified(){return this[Mi]}get[Symbol.toStringTag](){return`File`}}});function generateBoundary(){let n=`----formdata-`;for(let a=0;a<24;a++)n+=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789`.charAt(Math.floor(Math.random()*62));return n}function escape(n){return n.replace(/\n/g,`%0A`).replace(/\r/g,`%0D`).replace(/"/g,`%22`)}function formDataToBlob(n,a){a??=generateBoundary();let S=[],C=`--${a}\r\nContent-Disposition: form-data; name="`;for(let[a,N]of n.entries())if(typeof N==`string`)S.push(`${C}${escape(a)}"\r\n\r\n${N.replace(/\r(?!\n)|(?<!\r)\n/g,`\r
|
|
6
|
+
`+a)}profile(n){}profileEnd(n){}timeStamp(n){}},Te=new Console,log=(...n)=>Te.log(...n),info=(...n)=>Te.info(...n),Ee=__name$1((...n)=>Te.debug(...n),`debug`),warn=(...n)=>Te.warn(...n),error=(...n)=>Te.error(...n),dir=(n,a)=>Te.dir(n,a),dirxml=(...n)=>Te.dirxml(...n),table=(n,a)=>Te.table(n,a),clear=()=>Te.clear(),assert=(n,...a)=>Te.assert(n,...a),trace=(...n)=>Te.trace(...n),time=n=>Te.time(n),timeEnd=n=>Te.timeEnd(n),timeLog=(n,...a)=>Te.timeLog(n,...a),De=__name$1(n=>Te.count(n),`count`),countReset=n=>Te.countReset(n),group=(...n)=>Te.group(...n),groupCollapsed=(...n)=>Te.groupCollapsed(...n),groupEnd=()=>Te.groupEnd(),profile=n=>{},profileEnd=n=>{},timeStamp=n=>{}}),ke,Ae=__esmMin(()=>{Oe(),ke={log,info,debug:Ee,warn,error,dir,dirxml,table,time,timeEnd,timeLog,trace,assert,clear,count:De,countReset,group,groupCollapsed,groupEnd,profile,profileEnd,timeStamp}}),je=__esmMin(()=>{Ae()}),Me,Fe=__esmMin(()=>{Me=__name$1(n=>{Promise.resolve().then(n)},`queueMicrotask`)});function drainOnce(n){let a=Math.min(64,Ie.length);for(let S=0;S<a;S++){let a=Ie.shift();try{a()}catch(a){try{n.log_default_handler(`gjsify-nextTick`,n.LogLevelFlags.LEVEL_WARNING,String(a?.stack||a),null)}catch{}}}Ie.length>0?n.timeout_add(n.PRIORITY_DEFAULT,1,()=>(drainOnce(n),!1)):Le=!1}function tryGLibTimeout(n){let a=globalThis.imports?.gi?.GLib;return a?.timeout_add?(Ie.push(n),Le||(Le=!0,a.timeout_add(a.PRIORITY_DEFAULT,0,()=>(drainOnce(a),!1))),!0):!1}var Ie,Le,nextTick,Re=__esmMin(()=>{Ie=[],Le=!1,nextTick=(n,...a)=>{let S=a.length>0?()=>n(...a):n;if(!tryGLibTimeout(S)){if(typeof globalThis.process?.nextTick==`function`){globalThis.process.nextTick(n,...a);return}if(typeof queueMicrotask==`function`){queueMicrotask(S);return}Promise.resolve().then(S)}}}),ze,Be,getPathSeparator,Ve=__esmMin(()=>{se(),he(),{File:ze}=me,Be=__name$1((n,...a)=>{let S=ze.new_for_path(n);for(let n of a)S=S.resolve_relative_path(n);return S},`resolve`),getPathSeparator=()=>Z.get_current_dir().startsWith(`/`)?`/`:`\\`});function classOf(n){return He.call(n).slice(8,-1)}function throwDataCloneError(n){let a=globalThis.DOMException;if(typeof a==`function`)throw new a(n,`DataCloneError`);let S=Error(n);throw S.name=`DataCloneError`,S}function internalClone(n,a,S){if(n==null)return n;let C=typeof n;if(C===`boolean`||C===`number`||C===`string`||C===`bigint`)return n;C===`symbol`&&throwDataCloneError(`Symbol cannot be cloned`),C===`function`&&throwDataCloneError(`Function cannot be cloned`);let N=n;if(a.has(N))return a.get(N);let F=classOf(N);if(F===`Date`)return new Date(N.getTime());if(F===`RegExp`)return new RegExp(N.source,N.flags);if(F===`Boolean`||F===`Number`||F===`String`)return Object(N.valueOf());if(F===`BigInt`)return Object(BigInt.prototype.valueOf.call(N));if(N instanceof Error){let n=N,C=n.constructor?.name,F=new(C&&Ue[C]||Ue[n.name]||Error)(n.message);return F.name=n.name,`cause`in n&&Object.defineProperty(F,"cause",{value:internalClone(n.cause,a,S),writable:!0,enumerable:!1,configurable:!0}),F}if(F===`DOMException`){let n=globalThis.DOMException;if(typeof n==`function`){let a=N;return new n(a.message,a.name)}}if(F===`ArrayBuffer`){let n=N;if(S&&S.transferred.has(n)){let C=S.transferred.get(n);return a.set(N,C),C}(n.detached===!0||n.byteLength===0&&n.detached)&&throwDataCloneError(`ArrayBuffer is detached and cannot be cloned`);let C=n.slice(0);return a.set(N,C),C}if(F===`SharedArrayBuffer`||N&&typeof N==`object`&&N.constructor?.name===`SharedBuffer`)return N;if(F===`DataView`){let n=N,C=S?.viewSnapshots.get(N),F=internalClone(n.buffer,a,S),I=C?C.byteOffset:n.byteOffset,H=C?C.byteLength:n.byteLength,W=new DataView(F,I,H);return a.set(N,W),W}if(Ge.has(F)){let n=N,C=S?.viewSnapshots.get(N),F=internalClone(n.buffer,a,S),I=n.constructor,H=new I(F,C?C.byteOffset:n.byteOffset,C?C.length:n.length);return a.set(N,H),H}if(F===`Map`){let n=new Map;a.set(N,n);for(let[C,F]of N)n.set(internalClone(C,a,S),internalClone(F,a,S));return n}if(F===`Set`){let n=new Set;a.set(N,n);for(let C of N)n.add(internalClone(C,a,S));return n}{let n=globalThis,a=n.Blob,S=n.File;if(typeof S==`function`&&N instanceof S){let n=N;return new S([N],n.name,{type:n.type,lastModified:n.lastModified})}if(typeof a==`function`&&N instanceof a)return new a([N],{type:N.type})}if(N instanceof WeakMap&&throwDataCloneError(`WeakMap cannot be cloned`),N instanceof WeakSet&&throwDataCloneError(`WeakSet cannot be cloned`),N instanceof WeakRef&&throwDataCloneError(`WeakRef cannot be cloned`),typeof globalThis.Promise==`function`&&N instanceof Promise&&throwDataCloneError(`Promise cannot be cloned`),F===`Array`){let n=N,C=[];a.set(N,C);for(let N=0;N<n.length;N++)N in n&&(C[N]=internalClone(n[N],a,S));return C}if(F===`Object`||typeof N==`object`){let n={};a.set(N,n);for(let C of Object.keys(N))n[C]=internalClone(N[C],a,S);return n}throwDataCloneError(`${F} cannot be cloned`)}function structuredClone$1(n,a){let S=a?.transfer;if(!S||S.length===0)return internalClone(n,new Map);let C=new Set;for(let n of S)if(classOf(n)===`ArrayBuffer`){let a=n;a.detached===!0&&throwDataCloneError(`ArrayBuffer in transfer list is detached`),C.add(a)}let N=new Map;C.size>0&&snapshotViewsBackedByTransferredBuffers(n,C,N,new Set);let F=new Map;for(let n of C){let a=n;typeof a.transfer!=`function`&&throwDataCloneError(`ArrayBuffer.prototype.transfer() not available — runtime is not SM140+`),F.set(n,a.transfer())}return internalClone(n,new Map,{transferred:F,viewSnapshots:N})}function snapshotViewsBackedByTransferredBuffers(n,a,S,C){if(typeof n!=`object`||!n)return;let N=n;if(C.has(N))return;C.add(N);let F=classOf(N);if(F===`DataView`){let n=N;a.has(n.buffer)&&S.set(N,{byteOffset:n.byteOffset,length:0,byteLength:n.byteLength});return}if(Ge.has(F)){let n=N;a.has(n.buffer)&&S.set(N,{byteOffset:n.byteOffset,length:n.length,byteLength:n.byteLength});return}if(Array.isArray(N)){for(let n=0;n<N.length;n++)n in N&&snapshotViewsBackedByTransferredBuffers(N[n],a,S,C);return}if(F===`Map`){for(let[n,F]of N)snapshotViewsBackedByTransferredBuffers(n,a,S,C),snapshotViewsBackedByTransferredBuffers(F,a,S,C);return}if(F===`Set`){for(let n of N)snapshotViewsBackedByTransferredBuffers(n,a,S,C);return}if(F===`Object`)for(let n of Object.keys(N))snapshotViewsBackedByTransferredBuffers(N[n],a,S,C)}var He,Ue,Ge,Ke=__esmMin(()=>{({toString:He}=Object.prototype),Ue={Error,EvalError,RangeError,ReferenceError,SyntaxError,TypeError,URIError},Ge=new Set([`Int8Array`,`Uint8Array`,`Uint8ClampedArray`,`Int16Array`,`Uint16Array`,`Int32Array`,`Uint32Array`,`Float32Array`,`Float64Array`,`BigInt64Array`,`BigUint64Array`]),__name$1(structuredClone$1,`structuredClone`)});function ensureMainLoop(){let n=globalThis.imports;if(!n)return;if(qe)return Je;let a=n.gi?.GLib;if(a){if(Je=new a.MainLoop(null,!1),qe=!0,a.main_depth()===0)try{Je.runAsync()}catch{}return Je}}function quitMainLoop(){Je&&=(Je.quit(),qe=!1,null)}var qe,Je,Ye=__esmMin(()=>{qe=!1,Je=null}),Xe=__esmMin(()=>{re(),ie(),ce(),le(),ue(),de(),ve(),xe(),Se(),Ce(),je(),Fe(),Re(),Ve(),Ke(),Ye()});ne(),Xe(),registerGlobal(`Blob`,X),registerGlobal(`File`,te);function atobPolyfill(n){if(typeof globalThis.atob==`function`)return globalThis.atob(n);let a=n.replace(/[=\s]/g,``),S=``,C=0,N=0;for(let n=0;n<a.length;n++)C=C<<6|Qe[a.charCodeAt(n)],N+=6,N>=8&&(N-=8,S+=String.fromCharCode(C>>N&255));return S}function btoaPolyfill(n){if(typeof globalThis.btoa==`function`)return globalThis.btoa(n);let a=``,S=0;for(;S+2<n.length;S+=3){let C=n.charCodeAt(S)<<16|n.charCodeAt(S+1)<<8|n.charCodeAt(S+2);a+=Ze[C>>18&63]+Ze[C>>12&63]+Ze[C>>6&63]+Ze[C&63]}if(S+1===n.length){let C=n.charCodeAt(S)<<16;a+=Ze[C>>18&63]+Ze[C>>12&63]+`==`}else if(S+2===n.length){let C=n.charCodeAt(S)<<16|n.charCodeAt(S+1)<<8;a+=Ze[C>>18&63]+Ze[C>>12&63]+Ze[C>>6&63]+`=`}return a}function base64Decode$1(n){let a=n.replace(/[=\s]/g,``),S=new Uint8Array(a.length*3>>2),C=0,N=0,F=0;for(let n=0;n<a.length;n++)C=C<<6|Qe[a.charCodeAt(n)],N+=6,N>=8&&(N-=8,S[F++]=C>>N&255);return S.subarray(0,F)}function base64Encode$1(n){let a=``,S=n.length;for(let C=0;C<S;C+=3){let N=n[C],F=C+1<S?n[C+1]:0,I=C+2<S?n[C+2]:0;a+=Ze[N>>2],a+=Ze[(N&3)<<4|F>>4],a+=C+1<S?Ze[(F&15)<<2|I>>6]:`=`,a+=C+2<S?Ze[I&63]:`=`}return a}var Ze,Qe,$e=__esmMin(()=>{Ze=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,Qe=new Uint8Array(256);for(let n=0;n<64;n++)Qe[Ze.charCodeAt(n)]=n;__name$1(base64Decode$1,`base64Decode`),__name$1(base64Encode$1,`base64Encode`)});function normalizeEncoding(n){if(!n||n===`utf8`||n===`utf-8`)return`utf8`;switch((``+n).toLowerCase().replace(/-/g,``)){case`utf8`:return`utf8`;case`ascii`:return`ascii`;case`latin1`:case`binary`:return`latin1`;case`base64`:return`base64`;case`base64url`:return`base64url`;case`hex`:return`hex`;case`ucs2`:case`utf16le`:return`utf16le`;default:return`utf8`}}function checkEncoding(n){let a=(``+n).toLowerCase().replace(/-/g,``);if(!et.includes(a))throw TypeError(`Unknown encoding: ${n}`)}var et,tt=__esmMin(()=>{et=[`utf8`,`ascii`,`latin1`,`binary`,`base64`,`base64url`,`hex`,`ucs2`,`utf16le`]});function encodeString(n,a){switch(a){case`utf8`:return it().encode(n);case`ascii`:{let a=new Uint8Array(n.length);for(let S=0;S<n.length;S++)a[S]=n.charCodeAt(S)&127;return a}case`latin1`:{let a=new Uint8Array(n.length);for(let S=0;S<n.length;S++)a[S]=n.charCodeAt(S)&255;return a}case`base64`:return base64Decode$1(n.replace(/-/g,`+`).replace(/_/g,`/`));case`base64url`:return encodeString(n.replace(/-/g,`+`).replace(/_/g,`/`),`base64`);case`hex`:{let a=n.length>>>1,S=new Uint8Array(a);for(let C=0;C<a;C++){let a=parseInt(n[C*2],16),N=parseInt(n[C*2+1],16);if(Number.isNaN(a)||Number.isNaN(N))break;S[C]=a<<4|N}return S}case`utf16le`:{let a=new Uint8Array(n.length*2);for(let S=0;S<n.length;S++){let C=n.charCodeAt(S);a[S*2]=C&255,a[S*2+1]=C>>8&255}return a}default:return it().encode(n)}}function decodeString(n,a,S,C){let N=S!==void 0||C!==void 0?n.subarray(S??0,C??n.length):n;switch(a){case`utf8`:return ot().decode(N);case`ascii`:{let n=``;for(let a=0;a<N.length;a++)n+=String.fromCharCode(N[a]&127);return n}case`latin1`:{let n=``;for(let a=0;a<N.length;a++)n+=String.fromCharCode(N[a]);return n}case`base64`:{let n=``;for(let a=0;a<N.length;a++)n+=String.fromCharCode(N[a]);return btoaPolyfill(n)}case`base64url`:return decodeString(N,`base64`).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/,``);case`hex`:{let n=``;for(let a=0;a<N.length;a++)n+=N[a].toString(16).padStart(2,`0`);return n}case`utf16le`:{let n=``;for(let a=0;a+1<N.length;a+=2)n+=String.fromCharCode(N[a]|N[a+1]<<8);return n}default:return ot().decode(N)}}function checkOffset(n,a,S){if(n+a>S)throw RangeError(`Attempt to access memory outside buffer bounds`)}var nt,rt,it,ot,st=__esmMin(()=>{$e(),it=__name$1(()=>nt??=new TextEncoder,`textEncoder`),ot=__name$1(()=>rt??=new TextDecoder,`textDecoder`)}),ct,lt,ut,dt,ft,SlowBuffer,pt=__esmMin(()=>{st(),tt(),ct=typeof SharedArrayBuffer<`u`,lt=class Buffer extends Uint8Array{static _isBuffer=!0;static alloc(n,a,S){if(typeof n!=`number`)throw TypeError(`The "size" argument must be of type number. Received type ${typeof n}`);if(n<0)throw RangeError(`The value "${n}" is invalid for option "size"`);let C=new Buffer(n);return a!==void 0&&a!==0&&C.fill(a,0,n,S),C}static allocUnsafe(n){if(typeof n!=`number`)throw TypeError(`The "size" argument must be of type number. Received type ${typeof n}`);return new Buffer(n)}static allocUnsafeSlow(n){return Buffer.allocUnsafe(n)}static from(n,a,S){if(typeof n==`string`){let S=normalizeEncoding(a);if(a&&typeof a==`string`){let n=(``+a).toLowerCase().replace(/-/g,``);[`utf8`,`ascii`,`latin1`,`binary`,`base64`,`base64url`,`hex`,`ucs2`,`utf16le`,``].includes(n)||checkEncoding(a)}let C=encodeString(n,S);return new Buffer(C.buffer,C.byteOffset,C.byteLength)}if(ArrayBuffer.isView(n)){let a=new Buffer(n.buffer,n.byteOffset,n.byteLength),S=new Buffer(a.length);return S.set(a),S}if(n instanceof ArrayBuffer){let C=a||0;return new Buffer(n,C,S===void 0?n.byteLength-C:S)}if(ct&&n instanceof SharedArrayBuffer){let C=a||0,N=S===void 0?n.byteLength-C:S;return new Buffer(new Uint8Array(n,C,N))}if(typeof n==`object`&&n&&typeof n.viewBytes==`function`&&typeof n.byteLength==`number`&&n.constructor?.name===`SharedBuffer`){let C=n,N=a||0,F=S===void 0?C.byteLength-N:S,I=C.viewBytes(N,F);return new Buffer(I.buffer,I.byteOffset,I.byteLength)}if(Array.isArray(n)){let a=new Buffer(n.length);for(let S=0;S<n.length;S++)a[S]=n[S]&255;return a}throw TypeError(`The first argument must be of type string or an instance of Buffer, ArrayBuffer, or Array`)}static isBuffer(n){return n instanceof Buffer}static isEncoding(n){if(typeof n!=`string`)return!1;let a=n.toLowerCase().replace(/-/g,``);return[`utf8`,`ascii`,`latin1`,`binary`,`base64`,`base64url`,`hex`,`ucs2`,`utf16le`].includes(a)}static byteLength(n,a){if(typeof n!=`string`){if(ArrayBuffer.isView(n)||n instanceof ArrayBuffer||ct&&n instanceof SharedArrayBuffer)return n.byteLength;throw TypeError(`The "string" argument must be one of type string, Buffer, or ArrayBuffer`)}switch(normalizeEncoding(a)){case`utf8`:return new TextEncoder().encode(n).byteLength;case`ascii`:case`latin1`:return n.length;case`base64`:case`base64url`:{let a=n.length;for(;a>0&&(n[a-1]===`=`||n[a-1]===` `);)a--;return a*3>>>2}case`hex`:return n.length>>>1;case`utf16le`:return n.length*2;default:return new TextEncoder().encode(n).byteLength}}static compare(n,a){if(!(n instanceof Uint8Array)||!(a instanceof Uint8Array))throw TypeError(`Arguments must be Buffers or Uint8Arrays`);let S=Math.min(n.length,a.length);for(let C=0;C<S;C++){if(n[C]<a[C])return-1;if(n[C]>a[C])return 1}return n.length<a.length?-1:+(n.length>a.length)}static concat(n,a){if(n.length===0)return Buffer.alloc(0);if(a===void 0){a=0;for(let S=0;S<n.length;S++)a+=n[S].length}let S=Buffer.alloc(a),C=0;for(let N=0;N<n.length;N++){let F=n[N],I=Math.min(F.length,a-C);I<=0||(S.set(F.subarray(0,I),C),C+=I)}return S}static poolSize=8192;toString(n,a,S){let C=normalizeEncoding(n);return decodeString(this,C,a,S)}toJSON(){return{type:`Buffer`,data:Array.from(this)}}equals(n){if(!(n instanceof Uint8Array))throw TypeError(`Argument must be a Buffer or Uint8Array`);if(this.length!==n.length)return!1;for(let a=0;a<this.length;a++)if(this[a]!==n[a])return!1;return!0}compare(n,a,S,C,N){if(!(n instanceof Uint8Array))throw TypeError(`Argument must be a Buffer or Uint8Array`);let F=C!==void 0||N!==void 0?this.subarray(C??0,N??this.length):this,I=a!==void 0||S!==void 0?n.subarray(a??0,S??n.length):n;return Buffer.compare(F,I)}copy(n,a=0,S=0,C){let N=C??this.length,F=Math.min(N-S,n.length-a);return F<=0?0:(n.set(this.subarray(S,S+F),a),F)}slice(n,a){let S=n??0,C=a??this.length,N=super.subarray(S,C);return new Buffer(N.buffer,N.byteOffset,N.byteLength)}subarray(n,a){let S=super.subarray(n,a);return new Buffer(S.buffer,S.byteOffset,S.byteLength)}write(n,a,S,C){a??=0;let N=encodeString(n,normalizeEncoding(C||(typeof S==`string`?S:void 0))),F=S!==void 0&&typeof S==`number`?Math.min(S,this.length-a):this.length-a,I=Math.min(N.length,F);return this.set(N.subarray(0,I),a),I}fill(n,a,S,C){let N=a??0,F=S??this.length;if(typeof n==`number`)super.fill(n&255,N,F);else if(typeof n==`string`){let a=encodeString(n,normalizeEncoding(C));if(a.length===0)super.fill(0,N,F);else if(a.length===1)super.fill(a[0],N,F);else for(let n=N;n<F;n++)this[n]=a[(n-N)%a.length]}else if(n instanceof Uint8Array)if(n.length===0)super.fill(0,N,F);else for(let a=N;a<F;a++)this[a]=n[(a-N)%n.length];return this}indexOf(n,a,S){if(typeof n==`number`)return super.indexOf(n&255,a);let C=typeof n==`string`?encodeString(n,normalizeEncoding(S)):n,N=a??0;outer:for(let n=N;n<=this.length-C.length;n++){for(let a=0;a<C.length;a++)if(this[n+a]!==C[a])continue outer;return n}return-1}lastIndexOf(n,a,S){if(typeof n==`number`)return a===void 0?super.lastIndexOf(n&255):super.lastIndexOf(n&255,a);let C=typeof n==`string`?encodeString(n,normalizeEncoding(S)):n,N=a===void 0?this.length-C.length:Math.min(a,this.length-C.length);outer:for(let n=N;n>=0;n--){for(let a=0;a<C.length;a++)if(this[n+a]!==C[a])continue outer;return n}return-1}includes(n,a,S){return this.indexOf(n,a,S)!==-1}readUInt8(n=0){return checkOffset(n,1,this.length),this[n]}readUInt16BE(n=0){return checkOffset(n,2,this.length),this[n]<<8|this[n+1]}readUInt16LE(n=0){return checkOffset(n,2,this.length),this[n]|this[n+1]<<8}readUInt32BE(n=0){return checkOffset(n,4,this.length),this[n]*16777216+(this[n+1]<<16|this[n+2]<<8|this[n+3])}readUInt32LE(n=0){return checkOffset(n,4,this.length),this[n+3]*16777216+(this[n+2]<<16|this[n+1]<<8|this[n])>>>0}readInt8(n=0){return checkOffset(n,1,this.length),this[n]|(this[n]&128?4294967040:0)}readInt16BE(n=0){checkOffset(n,2,this.length);let a=this[n]<<8|this[n+1];return a&32768?a|4294901760:a}readInt16LE(n=0){checkOffset(n,2,this.length);let a=this[n]|this[n+1]<<8;return a&32768?a|4294901760:a}readInt32BE(n=0){return checkOffset(n,4,this.length),this[n]<<24|this[n+1]<<16|this[n+2]<<8|this[n+3]}readInt32LE(n=0){return checkOffset(n,4,this.length),this[n]|this[n+1]<<8|this[n+2]<<16|this[n+3]<<24}readFloatBE(n=0){return checkOffset(n,4,this.length),new DataView(this.buffer,this.byteOffset+n,4).getFloat32(0,!1)}readFloatLE(n=0){return checkOffset(n,4,this.length),new DataView(this.buffer,this.byteOffset+n,4).getFloat32(0,!0)}readDoubleBE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getFloat64(0,!1)}readDoubleLE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getFloat64(0,!0)}readBigInt64BE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getBigInt64(0,!1)}readBigInt64LE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getBigInt64(0,!0)}readBigUInt64BE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getBigUint64(0,!1)}readBigUInt64LE(n=0){return checkOffset(n,8,this.length),new DataView(this.buffer,this.byteOffset+n,8).getBigUint64(0,!0)}readUIntBE(n,a){checkOffset(n,a,this.length);let S=0;for(let C=0;C<a;C++)S=S*256+this[n+C];return S}readUIntLE(n,a){checkOffset(n,a,this.length);let S=0,C=1;for(let N=0;N<a;N++)S+=this[n+N]*C,C*=256;return S}readIntBE(n,a){checkOffset(n,a,this.length);let S=0;for(let C=0;C<a;C++)S=S*256+this[n+C];return S>=2**(8*a-1)&&(S-=2**(8*a)),S}readIntLE(n,a){checkOffset(n,a,this.length);let S=0,C=1;for(let N=0;N<a;N++)S+=this[n+N]*C,C*=256;return S>=2**(8*a-1)&&(S-=2**(8*a)),S}writeUInt8(n,a=0){return checkOffset(a,1,this.length),this[a]=n&255,a+1}writeUInt16BE(n,a=0){return checkOffset(a,2,this.length),this[a]=n>>>8&255,this[a+1]=n&255,a+2}writeUInt16LE(n,a=0){return checkOffset(a,2,this.length),this[a]=n&255,this[a+1]=n>>>8&255,a+2}writeUInt32BE(n,a=0){return checkOffset(a,4,this.length),this[a]=n>>>24&255,this[a+1]=n>>>16&255,this[a+2]=n>>>8&255,this[a+3]=n&255,a+4}writeUInt32LE(n,a=0){return checkOffset(a,4,this.length),this[a]=n&255,this[a+1]=n>>>8&255,this[a+2]=n>>>16&255,this[a+3]=n>>>24&255,a+4}writeInt8(n,a=0){return checkOffset(a,1,this.length),n<0&&(n=255+n+1),this[a]=n&255,a+1}writeInt16BE(n,a=0){return checkOffset(a,2,this.length),this[a]=n>>>8&255,this[a+1]=n&255,a+2}writeInt16LE(n,a=0){return checkOffset(a,2,this.length),this[a]=n&255,this[a+1]=n>>>8&255,a+2}writeInt32BE(n,a=0){return checkOffset(a,4,this.length),this[a]=n>>>24&255,this[a+1]=n>>>16&255,this[a+2]=n>>>8&255,this[a+3]=n&255,a+4}writeInt32LE(n,a=0){return checkOffset(a,4,this.length),this[a]=n&255,this[a+1]=n>>>8&255,this[a+2]=n>>>16&255,this[a+3]=n>>>24&255,a+4}writeFloatBE(n,a=0){return checkOffset(a,4,this.length),new DataView(this.buffer,this.byteOffset+a,4).setFloat32(0,n,!1),a+4}writeFloatLE(n,a=0){return checkOffset(a,4,this.length),new DataView(this.buffer,this.byteOffset+a,4).setFloat32(0,n,!0),a+4}writeDoubleBE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setFloat64(0,n,!1),a+8}writeDoubleLE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setFloat64(0,n,!0),a+8}writeBigInt64BE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setBigInt64(0,n,!1),a+8}writeBigInt64LE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setBigInt64(0,n,!0),a+8}writeBigUInt64BE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setBigUint64(0,n,!1),a+8}writeBigUInt64LE(n,a=0){return checkOffset(a,8,this.length),new DataView(this.buffer,this.byteOffset+a,8).setBigUint64(0,n,!0),a+8}swap16(){let n=this.length;if(n%2!=0)throw RangeError(`Buffer size must be a multiple of 16-bits`);for(let a=0;a<n;a+=2){let n=this[a];this[a]=this[a+1],this[a+1]=n}return this}swap32(){let n=this.length;if(n%4!=0)throw RangeError(`Buffer size must be a multiple of 32-bits`);for(let a=0;a<n;a+=4){let n=this[a],S=this[a+1];this[a]=this[a+3],this[a+1]=this[a+2],this[a+2]=S,this[a+3]=n}return this}swap64(){let n=this.length;if(n%8!=0)throw RangeError(`Buffer size must be a multiple of 64-bits`);for(let a=0;a<n;a+=8){let n=this[a],S=this[a+1],C=this[a+2],N=this[a+3];this[a]=this[a+7],this[a+1]=this[a+6],this[a+2]=this[a+5],this[a+3]=this[a+4],this[a+4]=N,this[a+5]=C,this[a+6]=S,this[a+7]=n}return this}},ut=2**31-1,dt=2**28-16,ft={MAX_LENGTH:ut,MAX_STRING_LENGTH:dt},SlowBuffer=class extends lt{constructor(n){super(n)}}}),mt=__exportAll$3({Blob:()=>X,Buffer:()=>lt,File:()=>te,INSPECT_MAX_BYTES:()=>50,SlowBuffer:()=>SlowBuffer,atob:()=>ht,atobPolyfill:()=>atobPolyfill,base64Decode:()=>base64Decode$1,base64Encode:()=>base64Encode$1,btoa:()=>gt,btoaPolyfill:()=>btoaPolyfill,checkEncoding:()=>checkEncoding,constants:()=>ft,default:()=>_t,kMaxLength:()=>ut,kStringMaxLength:()=>dt,normalizeEncoding:()=>normalizeEncoding}),ht,gt,_t,vt=__esmMin(()=>{$e(),ne(),tt(),pt(),ht=globalThis.atob,gt=globalThis.btoa,_t={Buffer:lt,SlowBuffer,Blob:X,File:te,atob:ht,btoa:gt,kMaxLength:ut,kStringMaxLength:dt,constants:ft,INSPECT_MAX_BYTES:50}});vt(),`Buffer`in globalThis||Object.defineProperty(globalThis,"Buffer",{value:lt,enumerable:!1,writable:!0,configurable:!0}),se(),typeof globalThis.btoa!=`function`&&Object.defineProperty(globalThis,"btoa",{value:function btoa(n){let a=new Uint8Array(n.length);for(let S=0;S<n.length;S++)a[S]=n.charCodeAt(S)&255;return Z.base64_encode(a)},enumerable:!0,writable:!0,configurable:!0}),typeof globalThis.atob!=`function`&&Object.defineProperty(globalThis,"atob",{value:function atob(n){let a=Z.base64_decode(n),S=``;for(let n=0;n<a.length;n++)S+=String.fromCharCode(a[n]);return S},enumerable:!0,writable:!0,configurable:!0}),Xe(),typeof queueMicrotask!=`function`&&Object.defineProperty(globalThis,"queueMicrotask",{value:Me,enumerable:!0,writable:!0,configurable:!0});function getGjsGlobal(){return globalThis}function getGioNamespace(){let n=getGjsGlobal().imports?.gi;if(!n)return null;let a=null;try{a=n.GioUnix??null}catch{}if(!a)try{a=n.Gio??null}catch{}return a}var yt=__esmMin(()=>{});function getMonotonicTime(){try{let n=getGjsGlobal().imports?.gi?.GLib;if(n?.get_monotonic_time)return BigInt(n.get_monotonic_time())*1000n}catch{}return typeof performance?.now==`function`?BigInt(Math.round(performance.now()*1e6)):BigInt(Date.now())*1000000n}function hrtime(n){let a=getMonotonicTime()-bt,S=Number(a/1000000000n),C=Number(a%1000000000n);if(n){let a=S-n[0],N=C-n[1];return N<0&&(a--,N+=1e9),[a,N]}return[S,C]}function hrtimeBigint(){return getMonotonicTime()-bt}var bt,xt=__esmMin(()=>{yt(),bt=getMonotonicTime()});function detectGjsVersion(){try{let n=getGjsGlobal().imports?.system;if(n?.version!==void 0){let a=Number(n.version);return`${Math.floor(a/1e4)}.${Math.floor(a%1e4/100)}.${a%100}`}}catch{}}function detectNodeVersion(){if(typeof globalThis.process?.versions?.node==`string`)return globalThis.process.versions.node}function detectVersionInfo(){if(detectNodeVersion())return{version:globalThis.process.version,versions:{...globalThis.process.versions},title:globalThis.process?.title||`node`};let n=detectGjsVersion(),a={node:`20.0.0`};return n&&(a.gjs=n),{version:`v20.0.0`,versions:a,title:`gjs`}}function detectPpid(){if(typeof globalThis.process?.ppid==`number`)return globalThis.process.ppid;try{let n=getGjsGlobal().imports?.gi?.GLib;if(n){let[,a]=n.file_get_contents(`/proc/self/status`);if(a){let n=new TextDecoder().decode(a).match(/PPid:\s+(\d+)/);if(n)return parseInt(n[1],10)}}}catch{}return 0}function detectPlatform(){try{let n=getGjsGlobal().imports?.gi?.GLib;if(n&&n.get_os_info(`ID`))return`linux`}catch{}return getGjsGlobal().imports?.system===void 0&&typeof globalThis.process?.platform==`string`?globalThis.process.platform:`linux`}function detectArch(){return typeof globalThis.process?.arch==`string`?globalThis.process.arch:`x64`}function getPid$1(){if(typeof globalThis.process?.pid==`number`)return globalThis.process.pid;try{let n=getGjsGlobal().imports?.gi?.GLib;if(n){let[,a]=n.file_get_contents(`/proc/self/stat`);if(a){let n=new TextDecoder().decode(a),S=parseInt(n,10);if(!isNaN(S))return S}}}catch{}return 0}var St=__esmMin(()=>{yt(),__name$1(getPid$1,`getPid`)});function getEnvProxy(){if(typeof globalThis.process?.env==`object`)return globalThis.process.env;try{let n=getGjsGlobal().imports?.gi?.GLib;if(n)return new Proxy({},{get(a,S){if(typeof S==`string`)return n.getenv(S)??void 0},set(a,S,C){return typeof S==`string`?(n.setenv(S,String(C),!0),!0):!1},deleteProperty(a,S){return typeof S==`string`?(n.unsetenv(S),!0):!1},has(a,S){return typeof S==`string`?n.getenv(S)!==null:!1},ownKeys(a){return n.listenv()},getOwnPropertyDescriptor(a,S){if(typeof S!=`string`)return;let C=n.getenv(S);if(C!==null)return{configurable:!0,enumerable:!0,writable:!0,value:C}}})}catch{}return{}}function getArgv(){if(globalThis.process?.argv!==void 0)return globalThis.process.argv;try{let n=getGjsGlobal().imports?.system;if(n?.programArgs)return[`gjs`,n.programInvocationName||``,...n.programArgs]}catch{}return[`gjs`]}function getExecPath(){if(typeof globalThis.process?.execPath==`string`)return globalThis.process.execPath;try{let n=getGjsGlobal().imports?.system;if(n?.programInvocationName)return n.programInvocationName}catch{}return`/usr/bin/gjs`}function getCwd(){try{let n=getGjsGlobal().imports?.gi?.GLib;if(n?.get_current_dir)return n.get_current_dir()}catch{}return`/`}function chdir(n){let a=getGjsGlobal().imports?.gi?.GLib;try{if(a?.chdir){if(!a.file_test(n,16)){let a=Error(`ENOENT: no such file or directory, chdir '${n}'`);throw a.code=`ENOENT`,a.syscall=`chdir`,a.path=n,a}a.chdir(n);return}}catch(n){if(n&&typeof n==`object`&&n.code===`ENOENT`)throw n}if(!a){let a=globalThis.process;if(a&&typeof a.chdir==`function`){a.chdir(n);return}}throw Error(`process.chdir() is not supported in this environment`)}var Ct=__esmMin(()=>{yt()});function exitProcess(n){let a=getGjsGlobal().imports,S=a?.gi?.GLib,C=a?.system,N=S?.idle_add,F=S?.SOURCE_REMOVE,I=S?.PRIORITY_DEFAULT;if(C?.exit&&N&&typeof I==`number`&&typeof F==`boolean`)return ensureMainLoop(),N(I,()=>(quitMainLoop(),C.exit(n),F)),new Promise(()=>{});try{C?.exit&&C.exit(n)}catch{}let H=globalThis.process;throw H&&typeof H.exit==`function`&&H.exit(n),Error(`process.exit(${n})`)}var wt=__esmMin(()=>{yt(),Xe()});function isGjs(){return getGjsGlobal().imports?.gi?.GLib!==void 0}function killPid(n,a){try{let S=getGjsGlobal().imports?.gi?.GLib;if(S){let C=typeof a==`number`?String(a):a||`SIGTERM`,N=C.startsWith(`SIG`)?`-${C.slice(3)}`:`-${C}`;return S.spawn_command_line_sync(`kill ${N} ${n}`),!0}}catch{}if(!isGjs()){let S=globalThis.process;if(S&&typeof S.kill==`function`)return S.kill(n,a)}throw Error(`process.kill() is not supported in this environment`)}function memoryUsage(){try{let n=getGjsGlobal().imports?.gi?.GLib;if(n){let[,a]=n.file_get_contents(`/proc/self/status`);if(a){let n=new TextDecoder().decode(a).match(/VmRSS:\s+(\d+)/),S=n?parseInt(n[1],10)*1024:0;return{rss:S,heapTotal:S,heapUsed:S,external:0,arrayBuffers:0}}}}catch{}if(!isGjs()){let n=globalThis.process;if(n&&typeof n.memoryUsage==`function`)return n.memoryUsage()}return{rss:0,heapTotal:0,heapUsed:0,external:0,arrayBuffers:0}}function cpuUsage(n){if(!isGjs()){let a=globalThis.process;if(a&&typeof a.cpuUsage==`function`)return a.cpuUsage(n)}return{user:0,system:0}}var Tt=__esmMin(()=>{yt()}),Et,Dt,Ot,kt=__esmMin(()=>{if(Et=null,Dt=globalThis.imports?.gi,Dt)try{Et=Dt.GjsifyTerminal}catch{}Ot=Et});function onceWrapper(){let{target:n,type:a,listener:S}=this;return this.wrapperFn&&n.removeListener(a,this.wrapperFn),S.apply(n,Array.from(arguments))}function _onceWrap(n,a,S){let C={target:n,type:a,listener:S,wrapperFn:void 0},N=onceWrapper.bind(C);return C.wrapperFn=N,N.listener=S,N}function arrayClone(n){switch(n.length){case 0:return[];case 1:return[n[0]];case 2:return[n[0],n[1]];case 3:return[n[0],n[1],n[2]];default:return n.slice()}}function checkListener(n){if(typeof n!=`function`)throw TypeError(`The "listener" argument must be of type Function. Received type `+typeof n)}function validateNumber(n,a){if(typeof n!=`number`||n!==n)throw TypeError(`The "${a}" argument must be of type number. Received type ${typeof n}`)}function spliceOne(n,a){for(;a+1<n.length;a++)n[a]=n[a+1];n.pop()}function unwrapListeners(n){let a=Array.from({length:n.length});for(let S=0;S<a.length;++S)a[S]=n[S].listener??n[S];return a}function createAbortError$1(n){let a=Error(`The operation was aborted`);return a.name=`AbortError`,a.code=`ABORT_ERR`,n?.reason&&(a.cause=n.reason),a}var At,jt,Mt,Nt=__esmMin(()=>{Ae(),At=Symbol(`kCapture`),jt=Symbol.for(`nodejs.rejection`),Mt=class EventEmitter{static defaultMaxListeners=10;static errorMonitor=Symbol(`events.errorMonitor`);static captureRejectionSymbol=jt;static _captureRejections=!1;static get captureRejections(){return EventEmitter._captureRejections}static set captureRejections(n){if(typeof n!=`boolean`)throw TypeError(`The "captureRejections" argument must be of type boolean.`);EventEmitter._captureRejections=n}_events;_eventsCount;_maxListeners;[At];constructor(n){this._events=Object.create(null),this._eventsCount=0,this._maxListeners=void 0,this[At]=n?.captureRejections??EventEmitter._captureRejections}setMaxListeners(n){if(validateNumber(n,`n`),n<0)throw RangeError(`The value of "n" is out of range. It must be a non-negative number. Received `+n);return this._maxListeners=n,this}getMaxListeners(){return this._maxListeners??EventEmitter.defaultMaxListeners}emit(n,...a){let S=this._events,C=n===`error`;if(S!==void 0)C&&S[EventEmitter.errorMonitor]!==void 0&&this.emit(EventEmitter.errorMonitor,...a),C&&=S.error===void 0;else if(!C)return!1;if(C){let n;if(n=a.length>0?a[0]:Error(`Unhandled error.`),n instanceof Error)throw n;let S=Error(`Unhandled error. (`+n+`)`);throw S.context=n,S}let N=S[n];if(N===void 0)return!1;if(typeof N==`function`){let S=N.apply(this,a);S!=null&&this[At]&&this._addCatch(S,n,a)}else{let S=arrayClone(N),C=S.length;for(let N=0;N<C;++N){let C=S[N].apply(this,a);C!=null&&this[At]&&this._addCatch(C,n,a)}}return!0}_addCatch(n,a,S){typeof n?.then==`function`&&n.then(void 0,n=>{let C=this[jt];if(typeof C==`function`)C.call(this,n,a,...S);else{let a=this[At];try{this[At]=!1,this.emit(`error`,n)}finally{this[At]=a}}})}addListener(n,a){return this._addListener(n,a,!1)}on(n,a){return this._addListener(n,a,!1)}prependListener(n,a){return this._addListener(n,a,!0)}_addListener(n,a,S){checkListener(a);let C=this._events;C===void 0?(C=this._events=Object.create(null),this._eventsCount=0):C.newListener!==void 0&&(this.emit(`newListener`,n,a.listener??a),C=this._events);let N=C[n];N===void 0?(C[n]=a,++this._eventsCount):typeof N==`function`?C[n]=S?[a,N]:[N,a]:S?N.unshift(a):N.push(a);let F=this.getMaxListeners();if(F>0){let a=typeof C[n]==`function`?1:C[n].length;if(a>F&&!C[n].warned){typeof C[n]!=`function`&&(C[n].warned=!0);let S=Error(`Possible EventEmitter memory leak detected. ${a} ${String(n)} listeners added to [${this.constructor.name}]. Use emitter.setMaxListeners() to increase limit`);S.name=`MaxListenersExceededWarning`,ke.warn(S.message)}}return this}once(n,a){return checkListener(a),this.on(n,_onceWrap(this,n,a)),this}prependOnceListener(n,a){return checkListener(a),this.prependListener(n,_onceWrap(this,n,a)),this}removeListener(n,a){checkListener(a);let S=this._events;if(S===void 0)return this;let C=S[n];if(C===void 0)return this;if(C===a||C.listener===a)--this._eventsCount===0?this._events=Object.create(null):(delete S[n],S.removeListener&&this.emit(`removeListener`,n,C.listener??a));else if(typeof C!=`function`){let N=-1;for(let n=C.length-1;n>=0;n--)if(C[n]===a||C[n].listener===a){N=n;break}if(N<0)return this;N===0?C.shift():spliceOne(C,N),C.length===1&&(S[n]=C[0]),S.removeListener!==void 0&&this.emit(`removeListener`,n,a.listener??a)}return this}off(n,a){return this.removeListener(n,a)}removeAllListeners(n){let a=this._events;if(a===void 0)return this;if(a.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):a[n]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete a[n]),this;if(arguments.length===0){let n=Object.keys(a);for(let a=0;a<n.length;++a){let S=n[a];S!==`removeListener`&&this.removeAllListeners(S)}return this.removeAllListeners(`removeListener`),this._events=Object.create(null),this._eventsCount=0,this}let S=a[n];if(typeof S==`function`)this.removeListener(n,S);else if(S!==void 0)for(let a=S.length-1;a>=0;a--)this.removeListener(n,S[a]);return this}listeners(n){let a=this._events;if(a===void 0)return[];let S=a[n];return S===void 0?[]:typeof S==`function`?[S.listener??S]:unwrapListeners(S)}rawListeners(n){let a=this._events;if(a===void 0)return[];let S=a[n];return S===void 0?[]:typeof S==`function`?[S]:arrayClone(S)}listenerCount(n){let a=this._events;if(a===void 0)return 0;let S=a[n];return S===void 0?0:typeof S==`function`?1:S.length}eventNames(){return(this._eventsCount??0)>0?Reflect.ownKeys(this._events):[]}static once(n,a,S){return new Promise((C,N)=>{let F=S?.signal;if(F?.aborted){N(createAbortError$1(F));return}if(typeof n.addEventListener==`function`){let S=n,handler=(...n)=>{F&&F.removeEventListener(`abort`,abortHandler),C(n)},errorHandler=n=>{F&&F.removeEventListener(`abort`,abortHandler),S.removeEventListener(`error`,errorHandler),N(n)},abortHandler=()=>{S.removeEventListener(a,handler),S.removeEventListener(`error`,errorHandler),N(createAbortError$1(F))};S.addEventListener(a,handler,{once:!0}),a!==`error`&&S.addEventListener(`error`,errorHandler,{once:!0}),F&&F.addEventListener(`abort`,abortHandler,{once:!0});return}let I=n,eventHandler=(...n)=>{F&&F.removeEventListener(`abort`,abortHandler),errorHandler!==void 0&&I.removeListener(`error`,errorHandler),C(n)},errorHandler;a!==`error`&&(errorHandler=n=>{I.removeListener(a,eventHandler),F&&F.removeEventListener(`abort`,abortHandler),N(n)},I.once(`error`,errorHandler)),I.once(a,eventHandler);let abortHandler=()=>{I.removeListener(a,eventHandler),errorHandler&&I.removeListener(`error`,errorHandler),N(createAbortError$1(F))};F&&F.addEventListener(`abort`,abortHandler,{once:!0})})}static on(n,a,S){let C=S?.signal;if(C?.aborted)throw createAbortError$1(C);let N=S?.highWaterMark??2**53-1,F=S?.lowWaterMark??1;validateNumber(N,`highWaterMark`),validateNumber(F,`lowWaterMark`);let I=[],H=[],W=null,K=!1,q=!1,eventHandler=(...a)=>{if(H.length>0){let{resolve:n}=H.shift();n({value:a,done:!1})}else I.push(a),I.length>=N&&!q&&(q=!0,typeof n.pause==`function`&&n.pause())},errorHandler=n=>{if(W=n,H.length>0){let{reject:a}=H.shift();a(n)}Y.return()},abortHandler=()=>{errorHandler(createAbortError$1(C))};n.on(a,eventHandler),a!==`error`&&n.on(`error`,errorHandler),C&&C.addEventListener(`abort`,abortHandler,{once:!0});let cleanup=()=>{n.removeListener(a,eventHandler),n.removeListener(`error`,errorHandler),C&&C.removeEventListener(`abort`,abortHandler),K=!0;for(let{resolve:n}of H)n({value:void 0,done:!0});H.length=0,I.length=0},Y={next(){if(I.length>0){let a=I.shift();return q&&I.length<F&&(q=!1,typeof n.resume==`function`&&n.resume()),Promise.resolve({value:a,done:!1})}if(W){let n=Promise.reject(W);return W=null,n}return K?Promise.resolve({value:void 0,done:!0}):new Promise((n,a)=>{H.push({resolve:n,reject:a})})},return(){return cleanup(),Promise.resolve({value:void 0,done:!0})},throw(n){return K||(W=n,cleanup()),Promise.reject(n)},[Symbol.asyncIterator](){return this}};return Y}static listenerCount(n,a){return n.listenerCount(a)}static getEventListeners(n,a){return typeof n.listeners==`function`?n.listeners(a):[]}static setMaxListeners(n,...a){if(validateNumber(n,`n`),n<0)throw RangeError(`The value of "n" is out of range.`);if(a.length===0)EventEmitter.defaultMaxListeners=n;else for(let S of a)typeof S.setMaxListeners==`function`&&S.setMaxListeners(n)}static getMaxListeners(n){return typeof n.getMaxListeners==`function`?n.getMaxListeners():EventEmitter.defaultMaxListeners}static addAbortListener(n,a){n.aborted&&Promise.resolve().then(()=>a());let handler=()=>a();return n.addEventListener(`abort`,handler,{once:!0}),{[Symbol.dispose](){n.removeEventListener(`abort`,handler)}}}},Mt.EventEmitter=Mt;for(let n of[`setMaxListeners`,`getMaxListeners`,`emit`,`addListener`,`on`,`prependListener`,`once`,`prependOnceListener`,`removeListener`,`off`,`removeAllListeners`,`listeners`,`rawListeners`,`listenerCount`,`eventNames`]){let a=Mt.prototype[n];typeof a==`function`&&Object.defineProperty(Mt.prototype,n,{enumerable:!0,configurable:!0,writable:!0,value:a})}Object.defineProperty(Mt.prototype,"_events",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(Mt.prototype,"_eventsCount",{enumerable:!0,configurable:!0,writable:!0,value:0}),Object.defineProperty(Mt.prototype,"_maxListeners",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),__name$1(createAbortError$1,`createAbortError`)}),Pt=__exportAll$3({EventEmitter:()=>Ft,addAbortListener:()=>Gt,captureRejectionSymbol:()=>It,default:()=>Ft,defaultMaxListeners:()=>Rt,errorMonitor:()=>Lt,getEventListeners:()=>Ut,getMaxListeners:()=>Bt,listenerCount:()=>Wt,on:()=>Ht,once:()=>Vt,setMaxListeners:()=>zt}),Ft,It,Lt,Rt,zt,Bt,Vt,Ht,Ut,Wt,Gt,Kt=__esmMin(()=>{Nt(),Xe(),Ft=makeCallable(Mt),Ft.EventEmitter=Ft,It=Ft.captureRejectionSymbol,Lt=Ft.errorMonitor,Rt=Ft.defaultMaxListeners,zt=Ft.setMaxListeners,Bt=Ft.getMaxListeners,Vt=Ft.once,Ht=Ft.on,Ut=Ft.getEventListeners,Wt=Ft.listenerCount,Gt=Ft.addAbortListener}),qt,ProcessWriteStream,ProcessReadStream,Jt=__esmMin(()=>{Ae(),yt(),kt(),Kt(),Xe(),qt=new TextEncoder,ProcessWriteStream=class extends Ft{fd;writable=!0;_outGio=null;constructor(n){super(),this.fd=n;let a=getGioNamespace();if(a){let n=a.UnixOutputStream??a.OutputStream;if(n)try{this._outGio=n.new(this.fd,!1)}catch{}}}write(n){if(this._outGio)try{let a=typeof n==`string`?qt.encode(n):n;return this._outGio.write_all(a,null),!0}catch{}return this.fd===2?ke.error(n):ke.log(n),!0}get isTTY(){if(Ot)return Ot.Terminal.is_tty(this.fd);try{let n=getGjsGlobal().imports?.gi?.GLib;if(n)return!!n.log_writer_supports_color(this.fd)}catch{}return!1}get columns(){if(Ot){let[n,,a]=Ot.Terminal.get_size(this.fd);if(n&&a>0)return a}try{let n=getGjsGlobal().imports?.gi?.GLib;if(n){let a=parseInt(n.getenv(`COLUMNS`)??`0`,10);if(a>0)return a}}catch{}return 80}end(){}destroy(){}get rows(){if(Ot){let[n,a]=Ot.Terminal.get_size(this.fd);if(n&&a>0)return a}try{let n=getGjsGlobal().imports?.gi?.GLib;if(n){let a=parseInt(n.getenv(`LINES`)??`0`,10);if(a>0)return a}}catch{}return 24}},ProcessReadStream=class extends Ft{fd;isRaw=!1;_gio=null;_stdinGio=null;_reading=!1;_flowing=!1;_sttyCleanupRegistered=!1;_mainLoopHeld=!1;_pendingRead=!1;constructor(n){super(),this.fd=n,this._gio=getGioNamespace()}get isTTY(){return Ot?Ot.Terminal.is_tty(this.fd):!1}setRawMode(n){return Ot&&Ot.Terminal.set_raw_mode(this.fd,n)?(this.isRaw=n,this):(this._setRawModeViaStty(n),this.isRaw=n,this)}_setRawModeViaStty(n){try{let a=globalThis.imports?.gi,S=a?.Gio??a?.Gio;if(!S)return;let C=S.SubprocessFlags?.STDIN_INHERIT??2,N=n?[`stty`,`-icanon`,`-echo`,`-icrnl`,`min`,`1`,`time`,`0`]:[`stty`,`icanon`,`echo`,`icrnl`];if(new S.SubprocessLauncher({flags:C}).spawnv(N).wait(null),n&&!this._sttyCleanupRegistered){this._sttyCleanupRegistered=!0;let n=globalThis.process;n?.once&&typeof n.once==`function`&&n.once(`exit`,()=>this._setRawModeViaStty(!1))}}catch{}}setEncoding(n){return this}on(n,a){let S=n===`data`&&this.listenerCount(`data`)===0;return super.on(n,a),S&&n===`data`&&this.resume(),this}addListener(n,a){return this.on(n,a)}once(n,a){return super.once(n,a),this}removeListener(n,a){return super.removeListener(n,a),n===`data`&&this.listenerCount(`data`)===0&&this.pause(),this}off(n,a){return this.removeListener(n,a)}removeAllListeners(n){let a=n===void 0||n===`data`?this.listenerCount(`data`)>0:!1;return super.removeAllListeners(n),a&&this.listenerCount(`data`)===0&&this.pause(),this}resume(){return this._flowing=!0,this._gio&&this.fd===0&&!this._reading&&this._startReading(),this}pause(){if(this._flowing=!1,this._reading=!1,this._mainLoopHeld){this._mainLoopHeld=!1;let n=globalThis.imports?.gi,a=n?.GLib??n?.GLib;a?.idle_add?a.idle_add(300,()=>(this._mainLoopHeld||quitMainLoop(),!1)):quitMainLoop()}return this}read(){return null}_startReading(){if(!this._gio||this._reading)return;if(this._pendingRead){this._reading=!0,this._mainLoopHeld||(this._mainLoopHeld=!0,ensureMainLoop());return}if(this._reading=!0,this._mainLoopHeld||(this._mainLoopHeld=!0,ensureMainLoop()),!this._stdinGio){let n=this._gio.UnixInputStream??this._gio.InputStream;if(!n){this._reading=!1;return}try{this._stdinGio=n.new(this.fd,!1)}catch{this._reading=!1;return}}let loop=()=>{if(!this._reading){this._pendingRead=!1;return}this._pendingRead=!0,this._stdinGio.read_bytes_async(4096,0,null,(n,a)=>{this._pendingRead=!1;try{let S=n.read_bytes_finish(a)?.get_data?.()??null;if(S&&S.byteLength>0)this.emit(`data`,Buffer.from(S));else if(S!==null&&S.byteLength===0){this._reading=!1,this.emit(`end`);return}}catch{this._reading=!1;return}this._reading&&loop()})};loop()}}}),Yt,Process,Xt=__esmMin(()=>{Ae(),St(),Ct(),wt(),xt(),Tt(),Jt(),Kt(),Yt=Date.now(),Process=class extends Ft{platform;arch;env;argv;argv0;execPath;pid;ppid;version;versions;title;execArgv;config;exitCode;constructor(){super(),this.platform=detectPlatform(),this.arch=detectArch(),this.env=getEnvProxy(),this.argv=getArgv(),this.argv0=this.argv[0]||`gjs`,this.execPath=getExecPath(),this.execArgv=globalThis.process?.execArgv??[],this.config=globalThis.process?.config??{target_defaults:{},variables:{}},this.pid=getPid$1(),this.ppid=detectPpid();let n=detectVersionInfo();this.version=n.version,this.versions=n.versions,this.title=n.title}cwd(){return getCwd()}chdir(n){chdir(n)}kill(n,a){return killPid(n,a)}exit(n){return this.exitCode=n??this.exitCode??0,this.emit(`exit`,this.exitCode),exitProcess(this.exitCode)}nextTick(n,...a){typeof queueMicrotask==`function`?queueMicrotask(()=>n(...a)):Promise.resolve().then(()=>n(...a))}hrtime(n){return hrtime(n)}uptime(){return(Date.now()-Yt)/1e3}memoryUsage(){return memoryUsage()}cpuUsage(n){return cpuUsage(n)}stdout=new ProcessWriteStream(1);stderr=new ProcessWriteStream(2);stdin=new ProcessReadStream(0);abort(){this.exit(1)}umask(n){return 18}emitWarning(n,a){ke.warn(typeof n==`string`?`(${a||`Warning`}): ${n}`:n.message)}},Process.prototype.hrtime.bigint=function(){return hrtimeBigint()}}),Zt,Qt,$t,en,tn,nn,rn,an=__esmMin(()=>{if(xt(),Xt(),kt(),Zt=new Process,Ot)try{let n=new Ot.ResizeWatcher;n.connect(`resized`,(n,a,S)=>{Zt.stdout.emit(`resize`),Zt.stderr.emit(`resize`)}),n.start()}catch{}Qt=Zt.platform,Zt.arch,Zt.env,Zt.argv,Zt.argv0,$t=Zt.execPath,Zt.pid,Zt.ppid,Zt.version,Zt.versions,Zt.cwd.bind(Zt),Zt.chdir.bind(Zt),Zt.exit.bind(Zt),Zt.nextTick.bind(Zt),en=Object.assign(Zt.hrtime.bind(Zt),{bigint:hrtimeBigint}),Zt.uptime.bind(Zt),Zt.memoryUsage.bind(Zt),Zt.cpuUsage.bind(Zt),Zt.kill.bind(Zt),Zt.abort.bind(Zt),Zt.umask.bind(Zt),Zt.emitWarning.bind(Zt),tn=Zt.execArgv,Zt.config,nn=Zt.stdout,Zt.stderr,rn=Zt.stdin});Xe(),an(),typeof Promise.withResolvers!=`function`&&(Promise.withResolvers=function(){let n,a;return{promise:new Promise((S,C)=>{n=S,a=C}),resolve:n,reject:a}}),initErrorV8Methods(Error),`global`in globalThis||Object.defineProperty(globalThis,"global",{value:globalThis,writable:!1,enumerable:!1,configurable:!0}),Object.defineProperty(globalThis,"process",{value:Zt,enumerable:!1,writable:!0,configurable:!0}),Xe(),typeof globalThis.structuredClone!=`function`&&Object.defineProperty(globalThis,"structuredClone",{value:structuredClone$1,enumerable:!0,writable:!0,configurable:!0});function getGLib(){return globalThis.imports?.gi?.GLib}const on=getGLib()!==void 0;var GjsifyTimeout=class{_id=null;_refed=!0;_callback;_delay;_args;_repeat;constructor(n,a,S,C){this._callback=n,this._delay=a,this._args=S,this._repeat=C,this._schedule()}_schedule(){let n=getGLib();if(!n)return;let a=n.timeout_add.bind(n);this._id=a(n.PRIORITY_DEFAULT,this._delay,()=>{try{this._callback.apply(globalThis,this._args)}catch(n){setTimeout(()=>{throw n},0)}return this._repeat?n.SOURCE_CONTINUE:(this._id=null,n.SOURCE_REMOVE)})}ref(){return this._refed=!0,this}unref(){return this._refed=!1,this}hasRef(){return this._refed}refresh(){return this._cancel(),this._schedule(),this}_cancel(){if(this._id!==null){try{getGLib()?.Source.remove(this._id)}catch{}this._id=null}}[Symbol.toPrimitive](){return this._id}[Symbol.dispose](){this._cancel()}};function removeById(n){if(n instanceof GjsifyTimeout)n._cancel();else if(typeof n==`number`)try{getGLib()?.Source.remove(n)}catch{}}if(on){let setT=(n,a=0,...S)=>new GjsifyTimeout(n,Math.max(0,a|0),S,!1),setI=(n,a=0,...S)=>new GjsifyTimeout(n,Math.max(0,a|0),S,!0),n=globalThis;n.setTimeout=setT,n.clearTimeout=removeById,n.setInterval=setI,n.clearInterval=removeById}function setImmediate$2(n,...a){return setTimeout(n,0,...a)}__name$1(setImmediate$2,`setImmediate`);function clearImmediate(n){clearTimeout(n)}`setImmediate`in globalThis||Object.defineProperty(globalThis,"setImmediate",{value:setImmediate$2,enumerable:!0,writable:!0,configurable:!0}),`clearImmediate`in globalThis||Object.defineProperty(globalThis,"clearImmediate",{value:clearImmediate,enumerable:!0,writable:!0,configurable:!0});var sn=__exportAll$3({URL:()=>un,URLSearchParams:()=>ln,default:()=>dn,domainToASCII:()=>domainToASCII,domainToUnicode:()=>domainToUnicode,fileURLToPath:()=>fileURLToPath,format:()=>format$4,parse:()=>parse$4,pathToFileURL:()=>pathToFileURL,resolve:()=>resolve$3});function decodeComponent(n){try{return decodeURIComponent(n.replace(/\+/g,` `))}catch{return n}}function encodeComponent(n){return encodeURIComponent(n).replace(/%20/g,`+`)}function parse$4(n,a,S){if(typeof n!=`string`)throw TypeError(`The "url" argument must be of type string. Received type `+typeof n);let C={protocol:null,slashes:null,auth:null,host:null,port:null,hostname:null,hash:null,search:null,query:null,pathname:null,path:null,href:n},N=n.trim(),F=N.indexOf(`#`);F!==-1&&(C.hash=N.slice(F),N=N.slice(0,F));let I=N.indexOf(`?`);I!==-1&&(C.search=N.slice(I),C.query=a?Object.fromEntries(new ln(N.slice(I+1))):N.slice(I+1),N=N.slice(0,I));let H=/^([a-z][a-z0-9.+-]*:)/i.exec(N);if(H&&(C.protocol=H[1].toLowerCase(),N=N.slice(C.protocol.length)),(S||C.protocol)&&N.startsWith(`//`)&&(C.slashes=!0,N=N.slice(2)),C.slashes||C.protocol&&![`javascript:`,`data:`,`mailto:`].includes(C.protocol)){let n=-1;for(let a=0;a<N.length;a++){let S=N[a];if(S===`/`||S===`\\`){n=a;break}}let a=n===-1?N:N.slice(0,n);N=n===-1?``:N.slice(n);let S=a.lastIndexOf(`@`);S===-1?parseHostPort(a,C):(C.auth=decodeURIComponent(a.slice(0,S)),parseHostPort(a.slice(S+1),C))}return C.pathname=N||(C.slashes?`/`:null),(C.pathname!==null||C.search!==null)&&(C.path=(C.pathname||``)+(C.search||``)),C.href=format$4(C),C}function parseHostPort(n,a){if(!n)return;let S=n.indexOf(`[`);if(S!==-1){let C=n.indexOf(`]`,S);if(C!==-1){let N=n.slice(C+1);N.startsWith(`:`)&&(a.port=N.slice(1)),a.hostname=n.slice(S,C+1),a.host=a.hostname+(a.port?`:`+a.port:``);return}}let C=n.lastIndexOf(`:`);if(C!==-1){let S=n.slice(C+1);/^\d*$/.test(S)?(a.port=S||null,a.hostname=n.slice(0,C).toLowerCase()):a.hostname=n.toLowerCase()}else a.hostname=n.toLowerCase();a.host=a.hostname+(a.port?`:`+a.port:``)}function format$4(n){if(typeof n==`string`)return n;if(n instanceof un)return n.href;let a=n,S=``;if(a.protocol&&(S+=a.protocol),(a.slashes||a.protocol&&![`javascript:`,`data:`,`mailto:`].includes(a.protocol||``))&&(S+=`//`),a.auth&&(S+=encodeURIComponent(a.auth)+`@`),a.host?S+=a.host:(a.hostname&&(S+=a.hostname),a.port&&(S+=`:`+a.port)),a.pathname&&(S+=a.pathname),a.search)S+=a.search;else if(a.query&&typeof a.query==`object`){let n=new ln(a.query).toString();n&&(S+=`?`+n)}return a.hash&&(S+=a.hash),S}function resolve$3(n,a){return new un(a,new un(n,`resolve://`)).href.replace(/^resolve:\/\//,``)}function fileURLToPath(n){if(typeof n==`string`&&(n=new un(n)),!(n instanceof un))throw TypeError(`The "url" argument must be of type string or URL. Received type `+typeof n);if(n.protocol!==`file:`)throw TypeError(`The URL must be of scheme file`);if(n.hostname!==``&&n.hostname!==`localhost`)throw TypeError(`File URL host must be "localhost" or empty on linux`);let a=n.pathname;for(let n=0;n<a.length;n++)if(a[n]===`%`){let S=a.codePointAt(n+2)|32;if(a[n+1]===`2`&&S===102)throw TypeError(`File URL path must not include encoded / characters`)}return decodeURIComponent(a)}function pathToFileURL(n){let a=n;if(n[0]!==`/`)if(typeof globalThis.process?.cwd==`function`)a=globalThis.process.cwd()+`/`+n;else try{Z?.get_current_dir&&(a=Z.get_current_dir()+`/`+n)}catch{}return new un(`file://`+encodePathForURL(a))}function encodePathForURL(n){let a=``;for(let S=0;S<n.length;S++){let C=n[S];C>=`a`&&C<=`z`||C>=`A`&&C<=`Z`||C>=`0`&&C<=`9`||C===`/`||C===`-`||C===`_`||C===`.`||C===`~`||C===`:`||C===`@`||C===`!`?a+=C:a+=encodeURIComponent(C)}return a}function domainToASCII(n){try{return new un(`http://${n}`).hostname}catch{return``}}function domainToUnicode(n){try{return new un(`http://${n}`).hostname}catch{return``}}var cn,ln,un,dn,fn=__esmMin(()=>{se(),cn=Z.UriFlags.HAS_PASSWORD|Z.UriFlags.ENCODED|Z.UriFlags.SCHEME_NORMALIZE,ln=class URLSearchParams{_entries=[];constructor(n){if(n)if(typeof n==`string`){let a=n.startsWith(`?`)?n.slice(1):n;if(a)for(let n of a.split(`&`)){let a=n.indexOf(`=`);a===-1?this._entries.push([decodeComponent(n),``]):this._entries.push([decodeComponent(n.slice(0,a)),decodeComponent(n.slice(a+1))])}}else if(Array.isArray(n))for(let[a,S]of n)this._entries.push([String(a),String(S)]);else if(n instanceof URLSearchParams)this._entries=n._entries.map(([n,a])=>[n,a]);else for(let a of Object.keys(n))this._entries.push([a,String(n[a])])}get(n){for(let[a,S]of this._entries)if(a===n)return S;return null}getAll(n){return this._entries.filter(([a])=>a===n).map(([,n])=>n)}set(n,a){let S=!1;if(this._entries=this._entries.filter(([a])=>a===n?S?!1:(S=!0,!0):!0),S){for(let S=0;S<this._entries.length;S++)if(this._entries[S][0]===n){this._entries[S][1]=a;break}}else this._entries.push([n,a])}has(n){return this._entries.some(([a])=>a===n)}delete(n){this._entries=this._entries.filter(([a])=>a!==n)}append(n,a){this._entries.push([n,a])}sort(){this._entries.sort((n,a)=>n[0]<a[0]?-1:+(n[0]>a[0]))}toString(){return this._entries.map(([n,a])=>encodeComponent(n)+`=`+encodeComponent(a)).join(`&`)}forEach(n){for(let[a,S]of this._entries)n(S,a,this)}*entries(){yield*this._entries}*keys(){for(let[n]of this._entries)yield n}*values(){for(let[,n]of this._entries)yield n}[Symbol.iterator](){return this.entries()}get size(){return this._entries.length}},un=class URL{#e;#t;constructor(n,a){let S=n instanceof URL?n.href:String(n);try{if(a!==void 0){let n=a instanceof URL?a.href:String(a),C=Z.Uri.parse(n,cn);this.#e=C.parse_relative(S,cn)}else this.#e=Z.Uri.parse(S,cn)}catch{throw TypeError(`Invalid URL: ${S}`)}if(!this.#e)throw TypeError(`Invalid URL: ${S}`);this.#t=new ln(this.#e.get_query()||``)}get protocol(){return this.#e.get_scheme()+`:`}get hostname(){return(this.#e.get_host()||``).toLowerCase()}get port(){let n=this.#e.get_port();if(n===-1)return``;let a=this.#e.get_scheme();return(a===`http`||a===`ws`)&&n===80||(a===`https`||a===`wss`)&&n===443||a===`ftp`&&n===21?``:String(n)}get host(){let n=this.hostname,a=this.port;return a?`${n}:${a}`:n}get pathname(){return this.#e.get_path()||`/`}get search(){let n=this.#e.get_query();return n?`?`+n:``}get hash(){let n=this.#e.get_fragment();return n?`#`+n:``}get origin(){let n=this.protocol;return n===`http:`||n===`https:`||n===`ftp:`?`${n}//${this.host}`:`null`}get username(){return this.#e.get_user()||``}get password(){return this.#e.get_password()||``}get href(){let n=this.protocol,a=this.#e.get_scheme();(a===`http`||a===`https`||a===`ftp`||a===`file`||a===`ws`||a===`wss`||this.hostname)&&(n+=`//`);let S=this.username,C=this.password;S&&(n+=S,C&&(n+=`:`+C),n+=`@`),n+=this.hostname,this.port&&(n+=`:`+this.port);let N=this.pathname;return n+=N,n+=this.search,n+=this.hash,n}get searchParams(){return this.#t}toString(){return this.href}toJSON(){return this.href}static _objectURLPaths=new Map;static _objectURLCounter=0;static createObjectURL(n){let a=n?._tmpPath;if(typeof a==`string`&&a.length>0){let n=`file://${a}`;return URL._objectURLPaths.set(n,a),n}return`file:///dev/null`}static revokeObjectURL(n){let a=URL._objectURLPaths.get(n);if(a){try{Z.unlink(a)}catch{}URL._objectURLPaths.delete(n)}}},__name$1(parse$4,`parse`),__name$1(format$4,`format`),__name$1(resolve$3,`resolve`),dn={URL:un,URLSearchParams:ln,parse:parse$4,format:format$4,resolve:resolve$3,fileURLToPath,pathToFileURL,domainToASCII,domainToUnicode}});fn(),typeof globalThis.URL!=`function`&&Object.defineProperty(globalThis,"URL",{value:un,enumerable:!1,writable:!0,configurable:!0}),typeof globalThis.URLSearchParams!=`function`&&Object.defineProperty(globalThis,"URLSearchParams",{value:ln,enumerable:!1,writable:!0,configurable:!0});var pn=__exportAll$3({PerformanceEntry:()=>_n,PerformanceMark:()=>yn,PerformanceMeasure:()=>bn,PerformanceObserver:()=>gn,PerformanceObserverEntryList:()=>vn,default:()=>xn,eventLoopUtilization:()=>eventLoopUtilization,monitorEventLoopDelay:()=>monitorEventLoopDelay,performance:()=>mn,timerify:()=>timerify});function eventLoopUtilization(n,a){return{idle:0,active:0,utilization:0}}function timerify(n){let wrapped=function(...a){let S=mn.now(),C=n.apply(this,a);return mn.now()-S,C};return Object.defineProperty(wrapped,"name",{value:n.name}),wrapped}function monitorEventLoopDelay(n){let a=new Map;return{enable(){},disable(){},reset(){},percentile(n){return 0},get min(){return 0},get max(){return 0},get mean(){return 0},get stddev(){return 0},get percentiles(){return a}}}var mn,PerformanceObserverStub,PerformanceEntryStub,PerformanceObserverEntryListStub,hn,gn,_n,vn,yn,bn,xn,Sn=__esmMin(()=>{if(globalThis.performance)mn=globalThis.performance;else{let n,_now;try{let a=globalThis.imports?.gi?.GLib;if(!a)throw Error(`GJS imports.gi.GLib not available`);n=a.get_monotonic_time(),_now=()=>(a.get_monotonic_time()-n)/1e3}catch{let a=Date.now();n=0,_now=()=>Date.now()-a}let a=[],S=Date.now()-_now();mn={timeOrigin:S,now:_now,mark(n){let S={name:n,entryType:`mark`,startTime:_now(),duration:0};return a.push(S),S},measure(n,S,C){let N=0,F=_now();if(S){let n=a.find(n=>n.entryType===`mark`&&n.name===S);n&&(N=n.startTime)}if(C){let n=a.find(n=>n.entryType===`mark`&&n.name===C);n&&(F=n.startTime)}let I={name:n,entryType:`measure`,startTime:N,duration:F-N};return a.push(I),I},getEntries(){return[...a]},getEntriesByName(n){return a.filter(a=>a.name===n)},getEntriesByType(n){return a.filter(a=>a.entryType===n)},clearMarks(n){for(let S=a.length-1;S>=0;S--)a[S].entryType===`mark`&&(!n||a[S].name===n)&&a.splice(S,1)},clearMeasures(n){for(let S=a.length-1;S>=0;S--)a[S].entryType===`measure`&&(!n||a[S].name===n)&&a.splice(S,1)},clearResourceTimings(){},setResourceTimingBufferSize(){},toJSON(){return{timeOrigin:S}}}}PerformanceObserverStub=class{_callback;constructor(n){this._callback=n}observe(n){}disconnect(){}takeRecords(){return[]}},PerformanceEntryStub=class{name=``;entryType=``;startTime=0;duration=0;toJSON(){return{name:this.name,entryType:this.entryType,startTime:this.startTime,duration:this.duration}}},PerformanceObserverEntryListStub=class{getEntries(){return[]}getEntriesByName(n){return[]}getEntriesByType(n){return[]}},hn=globalThis,gn=hn.PerformanceObserver||PerformanceObserverStub,_n=hn.PerformanceEntry||PerformanceEntryStub,vn=hn.PerformanceObserverEntryList||PerformanceObserverEntryListStub,yn=hn.PerformanceMark||class PerformanceMark extends PerformanceEntryStub{},bn=hn.PerformanceMeasure||class PerformanceMeasure extends PerformanceEntryStub{},xn={performance:mn,PerformanceObserver:gn,PerformanceEntry:_n,PerformanceObserverEntryList:vn,PerformanceMark:yn,PerformanceMeasure:bn,eventLoopUtilization,timerify,monitorEventLoopDelay}});Sn();const Cn=globalThis;globalThis.performance===void 0&&(Cn.performance=mn),typeof Cn.PerformanceObserver!=`function`&&(Cn.PerformanceObserver=gn);const wn={IndexSizeError:1,HierarchyRequestError:3,WrongDocumentError:4,InvalidCharacterError:5,NoModificationAllowedError:7,NotFoundError:8,NotSupportedError:9,InUseAttributeError:10,InvalidStateError:11,SyntaxError:12,InvalidModificationError:13,NamespaceError:14,InvalidAccessError:15,TypeMismatchError:17,SecurityError:18,NetworkError:19,AbortError:20,URLMismatchError:21,QuotaExceededError:22,TimeoutError:23,InvalidNodeTypeError:24,DataCloneError:25};var _DOMExceptionPolyfill=class extends Error{code;constructor(n,a){super(n),this.name=a||`Error`,this.code=Object.hasOwn(wn,this.name)?wn[this.name]:0}};const Tn=globalThis.DOMException===void 0?_DOMExceptionPolyfill:globalThis.DOMException;Ae();const En=Symbol(`type`),Q=Symbol(`bubbles`),Dn=Symbol(`cancelable`),On=Symbol(`composed`),kn=Symbol(`target`),An=Symbol(`currentTarget`),jn=Symbol(`eventPhase`),Mn=Symbol(`defaultPrevented`),Nn=Symbol(`isTrusted`),Pn=Symbol(`timeStamp`),Fn=Symbol(`stop`),In=Symbol(`immediateStop`),Ln=Symbol(`dispatching`),Rn=Symbol(`inPassiveListener`);var Event=class{[En];[Q];[Dn];[On];[kn]=null;[An]=null;[jn]=0;[Mn]=!1;[Nn]=!1;[Pn];[Fn]=!1;[In]=!1;[Ln]=!1;[Rn]=!1;get type(){return this[En]}get bubbles(){return this[Q]}get cancelable(){return this[Dn]}get composed(){return this[On]}get target(){return this[kn]}get currentTarget(){return this[An]}get eventPhase(){return this[jn]}get defaultPrevented(){return this[Mn]}get timeStamp(){return this[Pn]}get cancelBubble(){return this[Fn]}set cancelBubble(n){n&&this.stopPropagation()}get returnValue(){return!this[Mn]}set returnValue(n){n||this.preventDefault()}get srcElement(){return this[kn]}static NONE=0;static CAPTURING_PHASE=1;static AT_TARGET=2;static BUBBLING_PHASE=3;get[Symbol.toStringTag](){return`Event`}constructor(n,a){this[En]=n,this[Q]=a?.bubbles??!1,this[Dn]=a?.cancelable??!1,this[On]=a?.composed??!1,this[Pn]=Date.now(),Object.defineProperty(this,"isTrusted",{get:()=>this[Nn],enumerable:!0,configurable:!1})}composedPath(){return this[An]?[this[An]]:[]}preventDefault(){this[Dn]&&!this[Rn]&&(this[Mn]=!0)}stopPropagation(){this[Fn]=!0}stopImmediatePropagation(){this[Fn]=!0,this[In]=!0}},EventTarget=class{_listeners=new Map;get[Symbol.toStringTag](){return`EventTarget`}addEventListener(n,a,S){if(a===null)return;let C=typeof S==`boolean`?S:S?.capture??!1,N=typeof S==`object`?S?.once??!1:!1,F=typeof S==`object`?S?.passive??!1:!1,I=this._listeners.get(n);I||(I=[],this._listeners.set(n,I));for(let n of I)if(n.listener===a&&n.capture===C)return;let H={listener:a,capture:C,once:N,passive:F,removed:!1};I.push(H),typeof S==`object`&&S?.signal&&S.signal.addEventListener(`abort`,()=>{this.removeEventListener(n,a,{capture:C})},{once:!0})}removeEventListener(n,a,S){if(a===null)return;let C=typeof S==`boolean`?S:S?.capture??!1,N=this._listeners.get(n);if(!N)return;let F=N.findIndex(n=>n.listener===a&&n.capture===C);F!==-1&&(N[F].removed=!0,N.splice(F,1),N.length===0&&this._listeners.delete(n))}dispatchEvent(n){let a=n;if(a[Ln])throw new Tn(`The event is already being dispatched.`,`InvalidStateError`);a[Ln]=!0,a[kn]=this,a[An]=this,a[jn]=Event.AT_TARGET;let S=this._listeners.get(n.type);if(S){let C=[...S];for(let S of C)if(!S.removed){if(a[In]||a[Fn])break;S.once&&this.removeEventListener(n.type,S.listener,{capture:S.capture});try{S.passive&&(a[Rn]=!0),typeof S.listener==`function`?S.listener.call(this,n):typeof S.listener.handleEvent==`function`&&S.listener.handleEvent.call(S.listener,n)}catch(n){let a=globalThis;if(typeof a.reportError==`function`)try{a.reportError(n)}catch{}else if(n instanceof Error){let a=`${n.name}: ${n.message}`;ke.error(n.stack?`${a}\n${n.stack}`:a)}else ke.error(String(n))}finally{a[Rn]=!1}}}return a[jn]=Event.NONE,a[An]=null,a[Ln]=!1,!n.defaultPrevented}};for(let[n,a]of[[`NONE`,0],[`CAPTURING_PHASE`,1],[`AT_TARGET`,2],[`BUBBLING_PHASE`,3]])Object.defineProperty(Event.prototype,n,{value:a,writable:!1,enumerable:!0,configurable:!1}),Object.defineProperty(Event,n,{value:a,writable:!1,enumerable:!0,configurable:!1});const zn=Symbol(`abort`),Bn=Symbol(`internal`);var Vn=class AbortSignal extends EventTarget{#e=!1;reason=void 0;onabort=null;constructor(n){if(super(),n!==Bn)throw TypeError(`Illegal constructor.`)}get aborted(){if(!(this instanceof AbortSignal))throw TypeError(`'get aborted' called on an object that is not a valid instance of AbortSignal.`);return this.#e}get[Symbol.toStringTag](){return`AbortSignal`}throwIfAborted(){if(this.#e)throw this.reason}[zn](n){if(this.#e)return;this.#e=!0,this.reason=n??new Tn(`The operation was aborted.`,`AbortError`);let a=new Event(`abort`);typeof this.onabort==`function`&&this.onabort.call(this,a),this.dispatchEvent(a)}static abort(n){let a=new AbortSignal(Bn);return a[zn](n),a}static timeout(n){let a=new AbortSignal(Bn);return setTimeout(()=>{a[zn](new Tn(`The operation timed out.`,`TimeoutError`))},n),a}static any(n){let a=new AbortSignal(Bn);for(let S of n)if(S.aborted)return a[zn](S.reason),a;let onAbort=()=>{if(!a.aborted){let S=n.find(n=>n.aborted);a[zn](S?.reason)}};for(let a of n)a.addEventListener(`abort`,onAbort,{once:!0});return a}},Hn=class AbortController{signal;constructor(){this.signal=new Vn(Bn)}abort(n){if(!(this instanceof AbortController))throw TypeError(`'abort' called on an object that is not a valid instance of AbortController.`);this.signal[zn](n)}};const Un=globalThis;globalThis.AbortController===void 0&&(Un.AbortController=Hn),globalThis.AbortSignal===void 0&&(Un.AbortSignal=Vn);const Wn=Symbol(`kState`),Gn=Symbol(`kType`);function isBrandCheck(n){return a=>typeof a==`object`&&!!a&&a[Wn]!==void 0&&a[Gn]===n}function dequeueValue(n){let a=n[Wn].queue.shift();if(a===void 0)throw Error(`dequeueValue called on an empty queue`);let{value:S,size:C}=a;return n[Wn].queueTotalSize=Math.max(0,n[Wn].queueTotalSize-C),S}function resetQueue(n){n[Wn].queue=[],n[Wn].queueTotalSize=0}function peekQueueValue(n){return n[Wn].queue[0].value}function enqueueValueWithSize(n,a,S){if(S=+S,typeof S!=`number`||S<0||Number.isNaN(S)||S===1/0)throw RangeError(`Invalid size: ${S}`);n[Wn].queue.push({value:a,size:S}),n[Wn].queueTotalSize+=S}function extractHighWaterMark(n,a){if(n===void 0)return a;if(n=+n,typeof n!=`number`||Number.isNaN(n)||n<0)throw RangeError(`Invalid highWaterMark: ${n}`);return n}function extractSizeAlgorithm(n){if(n===void 0)return()=>1;if(typeof n!=`function`)throw TypeError(`strategy.size must be a function`);return n}function transferArrayBuffer(n){return typeof ArrayBuffer.prototype.transfer==`function`?n.transfer():n.slice(0)}function isDetachedBuffer(n){if(typeof SharedArrayBuffer<`u`&&n instanceof SharedArrayBuffer||n.byteLength!==0)return!1;try{return n.slice(0,0),!1}catch{return!0}}function typedArrayConstructorByTag(n){switch(n){case`Int8Array`:return Int8Array;case`Uint8Array`:return Uint8Array;case`Uint8ClampedArray`:return Uint8ClampedArray;case`Int16Array`:return Int16Array;case`Uint16Array`:return Uint16Array;case`Int32Array`:return Int32Array;case`Uint32Array`:return Uint32Array;case`Float32Array`:return Float32Array;case`Float64Array`:return Float64Array;case`BigInt64Array`:return typeof BigInt64Array<`u`?BigInt64Array:void 0;case`BigUint64Array`:return typeof BigUint64Array<`u`?BigUint64Array:void 0;default:return}}function elementSizeByTag(n){switch(n){case`Int8Array`:case`Uint8Array`:case`Uint8ClampedArray`:return 1;case`Int16Array`:case`Uint16Array`:return 2;case`Int32Array`:case`Uint32Array`:case`Float32Array`:return 4;case`Float64Array`:case`BigInt64Array`:case`BigUint64Array`:return 8;default:return 1}}function setPromiseHandled(n){n.then(()=>{},()=>{})}function createPromiseCallback(n,a,S){if(typeof a!=`function`)throw TypeError(`${n} must be a function`);return async(...n)=>a.call(S,...n)}async function nonOpFlush(){}function nonOpStart(){}async function nonOpPull(){}async function nonOpCancel(){}async function nonOpWrite(){}const Kn={__proto__:Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype),next:void 0,return:void 0};function createAsyncFromSyncIterator(n){let a={[Symbol.iterator]:()=>n.iterator},S=(async function*(){return yield*a})();return{iterator:S,nextMethod:S.next,done:!1}}function getIterator(n,a=`sync`,S){if(S===void 0)if(a===`async`){if(S=n[Symbol.asyncIterator],S==null){let a=n[Symbol.iterator];if(a===void 0)throw TypeError(`Object is not iterable`);return createAsyncFromSyncIterator(getIterator(n,`sync`,a))}}else S=n[Symbol.iterator];if(S===void 0)throw TypeError(`Object is not iterable`);let C=S.call(n);if(typeof C!=`object`||!C)throw TypeError(`The iterator method must return an object`);return{iterator:C,nextMethod:C.next,done:!1}}function iteratorNext(n,a){let S;if(S=a===void 0?n.nextMethod.call(n.iterator):n.nextMethod.call(n.iterator,a),typeof S!=`object`||!S)throw TypeError(`The iterator.next() method must return an object`);return S}const qn=typeof globalThis.AbortController==`function`?globalThis.AbortController:class AbortControllerShim{signal={aborted:!1,reason:void 0,addEventListener(){},removeEventListener(){}};abort(n){this.signal.aborted=!0,this.signal.reason=n}},Jn=Symbol(`kAbort`),Yn=Symbol(`kCloseSentinel`),Xn=Symbol(`kError`),Zn=Symbol(`kSkipThrow`);var WritableStream=class{[Gn]=`WritableStream`;[Wn];constructor(n={},a={}){if(n!=null&&typeof n!=`object`)throw TypeError(`sink must be an object`);if(a!=null&&typeof a!=`object`)throw TypeError(`strategy must be an object`);let S=n?.type;if(S!==void 0)throw RangeError(`Invalid type: ${S}`);this[Wn]=createWritableStreamState();let C=extractSizeAlgorithm(a?.size),N=extractHighWaterMark(a?.highWaterMark,1);setupWritableStreamDefaultControllerFromSink(this,n,N,C)}get locked(){if(!Qn(this))throw TypeError(`Invalid this`);return isWritableStreamLocked(this)}abort(n){return Qn(this)?isWritableStreamLocked(this)?Promise.reject(TypeError(`WritableStream is locked`)):writableStreamAbort(this,n):Promise.reject(TypeError(`Invalid this`))}close(){return Qn(this)?isWritableStreamLocked(this)?Promise.reject(TypeError(`WritableStream is locked`)):writableStreamCloseQueuedOrInFlight(this)?Promise.reject(TypeError(`Failure closing WritableStream`)):writableStreamClose(this):Promise.reject(TypeError(`Invalid this`))}getWriter(){if(!Qn(this))throw TypeError(`Invalid this`);return new WritableStreamDefaultWriter(this)}get[Symbol.toStringTag](){return`WritableStream`}},WritableStreamDefaultWriter=class{[Gn]=`WritableStreamDefaultWriter`;[Wn];constructor(n){if(!Qn(n))throw TypeError(`Expected a WritableStream`);this[Wn]={stream:void 0,close:{promise:void 0,resolve:void 0,reject:void 0},ready:{promise:void 0,resolve:void 0,reject:void 0}},setupWritableStreamDefaultWriter(this,n)}get closed(){return $n(this)?this[Wn].close.promise:Promise.reject(TypeError(`Invalid this`))}get desiredSize(){if(!$n(this))throw TypeError(`Invalid this`);if(this[Wn].stream===void 0)throw TypeError(`Writer is not bound to a WritableStream`);return writableStreamDefaultWriterGetDesiredSize(this)}get ready(){return $n(this)?this[Wn].ready.promise:Promise.reject(TypeError(`Invalid this`))}abort(n){return $n(this)?this[Wn].stream===void 0?Promise.reject(TypeError(`Writer is not bound to a WritableStream`)):writableStreamDefaultWriterAbort(this,n):Promise.reject(TypeError(`Invalid this`))}close(){if(!$n(this))return Promise.reject(TypeError(`Invalid this`));let{stream:n}=this[Wn];return n===void 0?Promise.reject(TypeError(`Writer is not bound to a WritableStream`)):writableStreamCloseQueuedOrInFlight(n)?Promise.reject(TypeError(`Failure to close WritableStream`)):writableStreamDefaultWriterClose(this)}releaseLock(){if(!$n(this))throw TypeError(`Invalid this`);let{stream:n}=this[Wn];n!==void 0&&writableStreamDefaultWriterRelease(this)}write(n){return $n(this)?this[Wn].stream===void 0?Promise.reject(TypeError(`Writer is not bound to a WritableStream`)):writableStreamDefaultWriterWrite(this,n):Promise.reject(TypeError(`Invalid this`))}get[Symbol.toStringTag](){return`WritableStreamDefaultWriter`}},WritableStreamDefaultController=class{[Gn]=`WritableStreamDefaultController`;[Wn];constructor(n){if(n!==Zn)throw TypeError(`Illegal constructor`)}[Jn](n){let a=this[Wn].abortAlgorithm(n);return writableStreamDefaultControllerClearAlgorithms(this),a}[Xn](){resetQueue(this)}get signal(){if(!er(this))throw TypeError(`Invalid this`);return this[Wn].abortController.signal}error(n){if(!er(this))throw TypeError(`Invalid this`);this[Wn].stream[Wn].state===`writable`&&writableStreamDefaultControllerError(this,n)}get[Symbol.toStringTag](){return`WritableStreamDefaultController`}};const Qn=isBrandCheck(`WritableStream`),$n=isBrandCheck(`WritableStreamDefaultWriter`),er=isBrandCheck(`WritableStreamDefaultController`);function createEmptyPromiseRecord(){return{promise:void 0,resolve:void 0,reject:void 0}}function createWritableStreamState(){return{close:Promise.withResolvers(),closeRequest:createEmptyPromiseRecord(),inFlightWriteRequest:createEmptyPromiseRecord(),inFlightCloseRequest:createEmptyPromiseRecord(),pendingAbortRequest:{abort:createEmptyPromiseRecord(),reason:void 0,wasAlreadyErroring:!1},backpressure:!1,controller:void 0,state:`writable`,storedError:void 0,writeRequests:[],writer:void 0}}function isWritableStreamLocked(n){return n[Wn].writer!==void 0}function setupWritableStreamDefaultWriter(n,a){if(isWritableStreamLocked(a))throw TypeError(`WritableStream is locked`);switch(n[Wn].stream=a,a[Wn].writer=n,a[Wn].state){case`writable`:!writableStreamCloseQueuedOrInFlight(a)&&a[Wn].backpressure?n[Wn].ready=Promise.withResolvers():n[Wn].ready={promise:Promise.resolve(),resolve:void 0,reject:void 0},n[Wn].close=Promise.withResolvers();break;case`erroring`:n[Wn].ready={promise:Promise.reject(a[Wn].storedError),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].ready.promise),n[Wn].close=Promise.withResolvers();break;case`closed`:n[Wn].ready={promise:Promise.resolve(),resolve:void 0,reject:void 0},n[Wn].close={promise:Promise.resolve(),resolve:void 0,reject:void 0};break;default:n[Wn].ready={promise:Promise.reject(a[Wn].storedError),resolve:void 0,reject:void 0},n[Wn].close={promise:Promise.reject(a[Wn].storedError),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].ready.promise),setPromiseHandled(n[Wn].close.promise)}}function writableStreamAbort(n,a){let{state:S,controller:C}=n[Wn];if(S===`closed`||S===`errored`)return Promise.resolve();if(C[Wn].abortController.abort(a),n[Wn].pendingAbortRequest.abort.promise!==void 0)return n[Wn].pendingAbortRequest.abort.promise;let N=!1;S===`erroring`&&(N=!0,a=void 0);let F=Promise.withResolvers();return n[Wn].pendingAbortRequest={abort:F,reason:a,wasAlreadyErroring:N},N||writableStreamStartErroring(n,a),F.promise}function writableStreamClose(n){let{state:a,writer:S,backpressure:C,controller:N}=n[Wn];if(a===`closed`||a===`errored`)return Promise.reject(TypeError(`WritableStream is closed`));n[Wn].closeRequest=Promise.withResolvers();let{promise:F}=n[Wn].closeRequest;return S!==void 0&&C&&a===`writable`&&S[Wn].ready.resolve?.(),writableStreamDefaultControllerClose(N),F}function writableStreamUpdateBackpressure(n,a){let{writer:S}=n[Wn];S!==void 0&&n[Wn].backpressure!==a&&(a?S[Wn].ready=Promise.withResolvers():S[Wn].ready.resolve?.()),n[Wn].backpressure=a}function writableStreamStartErroring(n,a){let{controller:S,writer:C}=n[Wn];n[Wn].state=`erroring`,n[Wn].storedError=a,C!==void 0&&writableStreamDefaultWriterEnsureReadyPromiseRejected(C,a),!writableStreamHasOperationMarkedInFlight(n)&&S[Wn].started&&writableStreamFinishErroring(n)}function writableStreamRejectCloseAndClosedPromiseIfNeeded(n){n[Wn].closeRequest.promise!==void 0&&(n[Wn].closeRequest.reject?.(n[Wn].storedError),n[Wn].closeRequest={promise:void 0,resolve:void 0,reject:void 0}),setPromiseHandled(n[Wn].close.promise),n[Wn].close.reject?.(n[Wn].storedError);let{writer:a}=n[Wn];a!==void 0&&(setPromiseHandled(a[Wn].close.promise),a[Wn].close.reject?.(n[Wn].storedError))}function writableStreamMarkFirstWriteRequestInFlight(n){let a=n[Wn].writeRequests.shift();n[Wn].inFlightWriteRequest=a}function writableStreamMarkCloseRequestInFlight(n){n[Wn].inFlightCloseRequest=n[Wn].closeRequest,n[Wn].closeRequest={promise:void 0,resolve:void 0,reject:void 0}}function writableStreamHasOperationMarkedInFlight(n){return n[Wn].inFlightWriteRequest.promise!==void 0||n[Wn].inFlightCloseRequest.promise!==void 0}function writableStreamFinishInFlightWriteWithError(n,a){n[Wn].inFlightWriteRequest.reject?.(a),n[Wn].inFlightWriteRequest={promise:void 0,resolve:void 0,reject:void 0},writableStreamDealWithRejection(n,a)}function writableStreamFinishInFlightWrite(n){n[Wn].inFlightWriteRequest.resolve?.(),n[Wn].inFlightWriteRequest={promise:void 0,resolve:void 0,reject:void 0}}function writableStreamFinishInFlightCloseWithError(n,a){n[Wn].inFlightCloseRequest.reject?.(a),n[Wn].inFlightCloseRequest={promise:void 0,resolve:void 0,reject:void 0},n[Wn].pendingAbortRequest.abort.promise!==void 0&&(n[Wn].pendingAbortRequest.abort.reject?.(a),n[Wn].pendingAbortRequest={abort:{promise:void 0,resolve:void 0,reject:void 0},reason:void 0,wasAlreadyErroring:!1}),writableStreamDealWithRejection(n,a)}function writableStreamFinishInFlightClose(n){n[Wn].inFlightCloseRequest.resolve?.(),n[Wn].inFlightCloseRequest={promise:void 0,resolve:void 0,reject:void 0},n[Wn].state===`erroring`&&(n[Wn].storedError=void 0,n[Wn].pendingAbortRequest.abort.promise!==void 0&&(n[Wn].pendingAbortRequest.abort.resolve?.(),n[Wn].pendingAbortRequest={abort:{promise:void 0,resolve:void 0,reject:void 0},reason:void 0,wasAlreadyErroring:!1})),n[Wn].state=`closed`,n[Wn].writer!==void 0&&n[Wn].writer[Wn].close.resolve?.(),n[Wn].close.resolve?.()}function writableStreamFinishErroring(n){n[Wn].state=`errored`,n[Wn].controller[Xn]();let a=n[Wn].storedError;for(let S of n[Wn].writeRequests)S.reject?.(a);if(n[Wn].writeRequests=[],n[Wn].pendingAbortRequest.abort.promise===void 0){writableStreamRejectCloseAndClosedPromiseIfNeeded(n);return}let S=n[Wn].pendingAbortRequest;if(n[Wn].pendingAbortRequest={abort:{promise:void 0,resolve:void 0,reject:void 0},reason:void 0,wasAlreadyErroring:!1},S.wasAlreadyErroring){S.abort.reject?.(a),writableStreamRejectCloseAndClosedPromiseIfNeeded(n);return}n[Wn].controller[Jn](S.reason).then(()=>{S.abort.resolve?.(),writableStreamRejectCloseAndClosedPromiseIfNeeded(n)},a=>{S.abort.reject?.(a),writableStreamRejectCloseAndClosedPromiseIfNeeded(n)})}function writableStreamDealWithRejection(n,a){if(n[Wn].state===`writable`){writableStreamStartErroring(n,a);return}writableStreamFinishErroring(n)}function writableStreamCloseQueuedOrInFlight(n){return n[Wn].closeRequest.promise!==void 0||n[Wn].inFlightCloseRequest.promise!==void 0}function writableStreamAddWriteRequest(n){let{promise:a,resolve:S,reject:C}=Promise.withResolvers();return n[Wn].writeRequests.push({promise:a,resolve:S,reject:C}),a}function writableStreamDefaultWriterWrite(n,a){let{stream:S}=n[Wn],{controller:C}=S[Wn],N=writableStreamDefaultControllerGetChunkSize(C,a);if(S!==n[Wn].stream)return Promise.reject(TypeError(`Mismatched WritableStreams`));let{state:F}=S[Wn];if(F===`errored`)return Promise.reject(S[Wn].storedError);if(writableStreamCloseQueuedOrInFlight(S)||F===`closed`)return Promise.reject(TypeError(`WritableStream is closed`));if(F===`erroring`)return Promise.reject(S[Wn].storedError);let I=writableStreamAddWriteRequest(S);return writableStreamDefaultControllerWrite(C,a,N),I}function writableStreamDefaultWriterRelease(n){let{stream:a}=n[Wn],S=TypeError(`Writer has been released`);writableStreamDefaultWriterEnsureReadyPromiseRejected(n,S),writableStreamDefaultWriterEnsureClosedPromiseRejected(n,S),a[Wn].writer=void 0,n[Wn].stream=void 0}function writableStreamDefaultWriterGetDesiredSize(n){let{stream:a}=n[Wn];switch(a[Wn].state){case`errored`:case`erroring`:return null;case`closed`:return 0}return writableStreamDefaultControllerGetDesiredSize(a[Wn].controller)}function writableStreamDefaultWriterEnsureReadyPromiseRejected(n,a){n[Wn].ready.reject?(n[Wn].ready.reject(a),n[Wn].ready.resolve=void 0,n[Wn].ready.reject=void 0):n[Wn].ready={promise:Promise.reject(a),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].ready.promise)}function writableStreamDefaultWriterEnsureClosedPromiseRejected(n,a){n[Wn].close.reject?(n[Wn].close.reject(a),n[Wn].close.resolve=void 0,n[Wn].close.reject=void 0):n[Wn].close={promise:Promise.reject(a),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].close.promise)}function writableStreamDefaultWriterCloseWithErrorPropagation(n){let{stream:a}=n[Wn],{state:S}=a[Wn];return writableStreamCloseQueuedOrInFlight(a)||S===`closed`?Promise.resolve():S===`errored`?Promise.reject(a[Wn].storedError):writableStreamDefaultWriterClose(n)}function writableStreamDefaultWriterClose(n){return writableStreamClose(n[Wn].stream)}function writableStreamDefaultWriterAbort(n,a){return writableStreamAbort(n[Wn].stream,a)}function writableStreamDefaultControllerWrite(n,a,S){try{enqueueValueWithSize(n,a,S)}catch(a){writableStreamDefaultControllerErrorIfNeeded(n,a);return}let{stream:C}=n[Wn];!writableStreamCloseQueuedOrInFlight(C)&&C[Wn].state===`writable`&&writableStreamUpdateBackpressure(C,writableStreamDefaultControllerGetBackpressure(n)),writableStreamDefaultControllerAdvanceQueueIfNeeded(n)}function writableStreamDefaultControllerProcessWrite(n,a){let{stream:S,writeAlgorithm:C}=n[Wn];writableStreamMarkFirstWriteRequestInFlight(S),C(a,n).then(()=>{writableStreamFinishInFlightWrite(S);let{state:a}=S[Wn];dequeueValue(n),!writableStreamCloseQueuedOrInFlight(S)&&a===`writable`&&writableStreamUpdateBackpressure(S,writableStreamDefaultControllerGetBackpressure(n)),writableStreamDefaultControllerAdvanceQueueIfNeeded(n)},a=>{S[Wn].state===`writable`&&writableStreamDefaultControllerClearAlgorithms(n),writableStreamFinishInFlightWriteWithError(S,a)})}function writableStreamDefaultControllerProcessClose(n){let{closeAlgorithm:a,stream:S}=n[Wn];writableStreamMarkCloseRequestInFlight(S),dequeueValue(n);let C=a();writableStreamDefaultControllerClearAlgorithms(n),C.then(()=>writableStreamFinishInFlightClose(S),n=>writableStreamFinishInFlightCloseWithError(S,n))}function writableStreamDefaultControllerGetDesiredSize(n){return n[Wn].highWaterMark-n[Wn].queueTotalSize}function writableStreamDefaultControllerGetChunkSize(n,a){let{sizeAlgorithm:S}=n[Wn];if(S===void 0)return 1;try{return S(a)}catch(a){return writableStreamDefaultControllerErrorIfNeeded(n,a),1}}function writableStreamDefaultControllerErrorIfNeeded(n,a){n[Wn].stream[Wn].state===`writable`&&writableStreamDefaultControllerError(n,a)}function writableStreamDefaultControllerError(n,a){writableStreamDefaultControllerClearAlgorithms(n),writableStreamStartErroring(n[Wn].stream,a)}function writableStreamDefaultControllerClose(n){enqueueValueWithSize(n,Yn,0),writableStreamDefaultControllerAdvanceQueueIfNeeded(n)}function writableStreamDefaultControllerClearAlgorithms(n){n[Wn].writeAlgorithm=void 0,n[Wn].closeAlgorithm=void 0,n[Wn].abortAlgorithm=void 0,n[Wn].sizeAlgorithm=void 0}function writableStreamDefaultControllerGetBackpressure(n){return writableStreamDefaultControllerGetDesiredSize(n)<=0}function writableStreamDefaultControllerAdvanceQueueIfNeeded(n){let{queue:a,started:S,stream:C}=n[Wn];if(!S||C[Wn].inFlightWriteRequest.promise!==void 0)return;if(C[Wn].state===`erroring`){writableStreamFinishErroring(C);return}if(!a.length)return;let N=peekQueueValue(n);N===Yn?writableStreamDefaultControllerProcessClose(n):writableStreamDefaultControllerProcessWrite(n,N)}function setupWritableStreamDefaultControllerFromSink(n,a,S,C){let N=new WritableStreamDefaultController(Zn),F=a?.start,I=a?.write,H=a?.close,W=a?.abort;setupWritableStreamDefaultController(n,N,F?F.bind(a,N):nonOpStart,I?createPromiseCallback(`sink.write`,I,a):nonOpWrite,H?createPromiseCallback(`sink.close`,H,a):nonOpCancel,W?createPromiseCallback(`sink.abort`,W,a):nonOpCancel,S,C)}function setupWritableStreamDefaultController(n,a,S,C,N,F,I,H){a[Wn]={abortAlgorithm:F,closeAlgorithm:N,highWaterMark:I,queue:[],queueTotalSize:0,abortController:new qn,sizeAlgorithm:H,started:!1,stream:n,writeAlgorithm:C},n[Wn].controller=a,writableStreamUpdateBackpressure(n,writableStreamDefaultControllerGetBackpressure(a));let W=S();new Promise(n=>n(W)).then(()=>{a[Wn].started=!0,writableStreamDefaultControllerAdvanceQueueIfNeeded(a)},S=>{a[Wn].started=!0,writableStreamDealWithRejection(n,S)})}function createWritableStream(n,a,S,C,N=1,F=()=>1){let I=Object.create(WritableStream.prototype);return I[Gn]=`WritableStream`,I[Wn]=createWritableStreamState(),setupWritableStreamDefaultController(I,new WritableStreamDefaultController(Zn),n,a,S,C,N,F),I}Xe();const tr=Symbol(`kCancel`),nr=Symbol(`kClose`),rr=Symbol(`kChunk`),ir=Symbol(`kError`),ar=Symbol(`kPull`),sr=Symbol(`kRelease`),cr=Symbol(`kSkipThrow`);let lr,ur;function lazyReadableReleasedError(){return lr||(lr=TypeError(`Reader released`),lr)}function lazyReadableReleasingError(){return ur||(ur=TypeError(`Releasing reader`),ur)}function createAbortError(){if(typeof globalThis.DOMException==`function`)return new DOMException(`The operation was aborted`,`AbortError`);let n=Error(`The operation was aborted`);return n.name=`AbortError`,n}function createReadableStreamState(){return{disturbed:!1,reader:void 0,state:`readable`,storedError:void 0,controller:void 0,closedPromise:Promise.withResolvers()}}var ReadableStream$1=class{static{__name$1(this,`ReadableStream`)}[Gn]=`ReadableStream`;[Wn];constructor(n={},a={}){if(n!=null&&typeof n!=`object`)throw TypeError(`source must be an object`);if(a!=null&&typeof a!=`object`)throw TypeError(`strategy must be an object`);this[Wn]=createReadableStreamState();let S=a?.size,C=a?.highWaterMark,N=n?.type;if(N!==void 0){if(`${N}`==`bytes`){if(S!==void 0)throw RangeError(`strategy.size must not be set for a byte stream`);setupReadableByteStreamControllerFromSource(this,n,extractHighWaterMark(C,0));return}throw RangeError(`Invalid type: ${N}`)}setupReadableStreamDefaultControllerFromSource(this,n,extractHighWaterMark(C,1),extractSizeAlgorithm(S))}get locked(){if(!dr(this))throw TypeError(`Invalid this`);return isReadableStreamLocked(this)}static from(n){return readableStreamFromIterable(n)}cancel(n=void 0){return dr(this)?isReadableStreamLocked(this)?Promise.reject(TypeError(`ReadableStream is locked`)):readableStreamCancel(this,n):Promise.reject(TypeError(`Invalid this`))}getReader(n={}){if(!dr(this))throw TypeError(`Invalid this`);if(n!=null&&typeof n!=`object`)throw TypeError(`options must be an object`);let a=n?.mode;if(a===void 0)return new ReadableStreamDefaultReader(this);if(`${a}`==`byob`)return new ReadableStreamBYOBReader(this);throw RangeError(`Invalid mode: ${a}`)}pipeThrough(n,a={}){if(!dr(this))throw TypeError(`Invalid this`);let S=n?.readable;if(!dr(S))throw TypeError(`transform.readable must be a ReadableStream`);let C=n?.writable;if(!Qn(C))throw TypeError(`transform.writable must be a WritableStream`);if(a!=null&&typeof a!=`object`)throw TypeError(`options must be an object`);let N=a?.preventAbort,F=a?.preventCancel,I=a?.preventClose,H=a?.signal;if(H!==void 0&&!(H instanceof Object&&`aborted`in H))throw TypeError(`options.signal must be an AbortSignal`);if(isReadableStreamLocked(this))throw TypeError(`The ReadableStream is locked`);if(isWritableStreamLocked(C))throw TypeError(`The WritableStream is locked`);return setPromiseHandled(readableStreamPipeTo(this,C,!!I,!!N,!!F,H)),S}pipeTo(n,a={}){try{if(!dr(this))throw TypeError(`Invalid this`);if(!Qn(n))throw TypeError(`destination must be a WritableStream`);if(a!=null&&typeof a!=`object`)throw TypeError(`options must be an object`);let S=a?.preventAbort,C=a?.preventCancel,N=a?.preventClose,F=a?.signal;if(F!==void 0&&!(F instanceof Object&&`aborted`in F))throw TypeError(`options.signal must be an AbortSignal`);if(isReadableStreamLocked(this))throw TypeError(`The ReadableStream is locked`);if(isWritableStreamLocked(n))throw TypeError(`The WritableStream is locked`);return readableStreamPipeTo(this,n,!!N,!!S,!!C,F)}catch(n){return Promise.reject(n)}}tee(){if(!dr(this))throw TypeError(`Invalid this`);let n=this[Wn].controller;return mr(n)?readableByteStreamTee(this):readableStreamDefaultTee(this,!1)}values(n={}){if(!dr(this))throw TypeError(`Invalid this`);if(n!=null&&typeof n!=`object`)throw TypeError(`options must be an object`);let a=!!n?.preventCancel,S=new ReadableStreamDefaultReader(this),C={done:!1,current:void 0},N=!1;function nextSteps(){if(C.done)return Promise.resolve({done:!0,value:void 0});if(S[Wn].stream===void 0)return Promise.reject(TypeError(`The reader is not bound to a ReadableStream`));let{promise:n,resolve:a,reject:N}=Promise.withResolvers();return readableStreamDefaultReaderRead(S,{[rr](n){C.current=void 0,a({value:n,done:!1})},[nr](){C.current=void 0,C.done=!0,readableStreamReaderGenericRelease(S),a({done:!0,value:void 0})},[ir](n){C.current=void 0,C.done=!0,readableStreamReaderGenericRelease(S),N(n)}}),n}async function returnSteps(n){if(C.done)return{done:!0,value:n};if(C.done=!0,S[Wn].stream===void 0)throw TypeError(`The reader is not bound to a ReadableStream`);if(!a){let a=readableStreamReaderGenericCancel(S,n);return readableStreamReaderGenericRelease(S),await a,{done:!0,value:n}}return readableStreamReaderGenericRelease(S),{done:!0,value:n}}return Object.setPrototypeOf({next(){return N||=(C.current=Promise.resolve(),!0),C.current=C.current===void 0?nextSteps():C.current.then(nextSteps,nextSteps),C.current},return(n){return N=!0,C.current=C.current===void 0?returnSteps(n):C.current.then(()=>returnSteps(n),()=>returnSteps(n)),C.current},[Symbol.asyncIterator](){return this}},Kn)}[Symbol.asyncIterator](){return this.values()}get[Symbol.toStringTag](){return`ReadableStream`}},DefaultReadRequest=class{[Wn];constructor(){this[Wn]=Promise.withResolvers()}[rr](n){this[Wn].resolve?.({value:n,done:!1})}[nr](){this[Wn].resolve?.({value:void 0,done:!0})}[ir](n){this[Wn].reject?.(n)}get promise(){return this[Wn].promise}},ReadableStreamDefaultReader=class{[Gn]=`ReadableStreamDefaultReader`;[Wn];constructor(n){if(!dr(n))throw TypeError(`Expected a ReadableStream`);this[Wn]={readRequests:[],readIntoRequests:[],stream:void 0,close:{promise:void 0,resolve:void 0,reject:void 0}},setupReadableStreamDefaultReader(this,n)}read(){if(!pr(this))return Promise.reject(TypeError(`Invalid this`));if(this[Wn].stream===void 0)return Promise.reject(TypeError(`The reader is not attached to a stream`));let n=this[Wn].stream,a=n[Wn].controller;if(n[Wn].state===`readable`&&fr(a)&&a[Wn].queue.length>0){n[Wn].disturbed=!0;let S=dequeueValue(a);return a[Wn].closeRequested&&!a[Wn].queue.length?(readableStreamDefaultControllerClearAlgorithms(a),readableStreamClose(n)):readableStreamDefaultControllerCallPullIfNeeded(a),Promise.resolve({value:S,done:!1})}let S=new DefaultReadRequest;return readableStreamDefaultReaderRead(this,S),S.promise}releaseLock(){if(!pr(this))throw TypeError(`Invalid this`);this[Wn].stream!==void 0&&readableStreamDefaultReaderRelease(this)}get closed(){return pr(this)?this[Wn].close.promise:Promise.reject(TypeError(`Invalid this`))}cancel(n=void 0){return pr(this)?this[Wn].stream===void 0?Promise.reject(TypeError(`The reader is not attached to a stream`)):readableStreamReaderGenericCancel(this,n):Promise.reject(TypeError(`Invalid this`))}get[Symbol.toStringTag](){return`ReadableStreamDefaultReader`}},ReadableStreamDefaultController=class{[Gn]=`ReadableStreamDefaultController`;[Wn];constructor(n){if(n!==cr)throw TypeError(`Illegal constructor`)}get desiredSize(){return readableStreamDefaultControllerGetDesiredSize(this)}close(){if(!readableStreamDefaultControllerCanCloseOrEnqueue(this))throw TypeError(`Controller is already closed`);readableStreamDefaultControllerClose(this)}enqueue(n=void 0){if(!readableStreamDefaultControllerCanCloseOrEnqueue(this))throw TypeError(`Controller is already closed`);readableStreamDefaultControllerEnqueue(this,n)}error(n=void 0){readableStreamDefaultControllerError(this,n)}[tr](n){return readableStreamDefaultControllerCancelSteps(this,n)}[ar](n){readableStreamDefaultControllerPullSteps(this,n)}[sr](){}get[Symbol.toStringTag](){return`ReadableStreamDefaultController`}};const dr=isBrandCheck(`ReadableStream`),fr=isBrandCheck(`ReadableStreamDefaultController`),pr=isBrandCheck(`ReadableStreamDefaultReader`);function isReadableStreamLocked(n){return n[Wn].reader!==void 0}function readableStreamCancel(n,a){switch(n[Wn].disturbed=!0,n[Wn].state){case`closed`:return Promise.resolve();case`errored`:return Promise.reject(n[Wn].storedError)}readableStreamClose(n);let S=n[Wn].reader;if(S!==void 0&&readableStreamHasBYOBReader(n)){let n=S[Wn].readIntoRequests;S[Wn].readIntoRequests=[];for(let a=0;a<n.length;a++)n[a][nr](void 0)}return n[Wn].controller[tr](a).then(()=>{})}function readableStreamClose(n){n[Wn].state=`closed`,n[Wn].closedPromise.resolve();let{reader:a}=n[Wn];if(a!==void 0&&(a[Wn].close.resolve?.(),readableStreamHasDefaultReader(n))){for(let n=0;n<a[Wn].readRequests.length;n++)a[Wn].readRequests[n][nr]();a[Wn].readRequests=[]}}function readableStreamError(n,a){n[Wn].state=`errored`,n[Wn].storedError=a,setPromiseHandled(n[Wn].closedPromise.promise),n[Wn].closedPromise.reject(a);let{reader:S}=n[Wn];if(S!==void 0){if(setPromiseHandled(S[Wn].close.promise),S[Wn].close.reject?.(a),readableStreamHasDefaultReader(n)){for(let n=0;n<S[Wn].readRequests.length;n++)S[Wn].readRequests[n][ir](a);S[Wn].readRequests=[]}else if(readableStreamHasBYOBReader(n)){for(let n=0;n<S[Wn].readIntoRequests.length;n++)S[Wn].readIntoRequests[n][ir](a);S[Wn].readIntoRequests=[]}}}function readableStreamHasDefaultReader(n){let{reader:a}=n[Wn];return a===void 0?!1:a[Wn]!==void 0&&a[Gn]===`ReadableStreamDefaultReader`}function readableStreamGetNumReadRequests(n){return n[Wn].reader[Wn].readRequests.length}function readableStreamFulfillReadRequest(n,a,S){let{reader:C}=n[Wn],N=C[Wn].readRequests.shift();S?N[nr]():N[rr](a)}function readableStreamAddReadRequest(n,a){n[Wn].reader[Wn].readRequests.push(a)}function readableStreamReaderGenericCancel(n,a){let{stream:S}=n[Wn];return readableStreamCancel(S,a)}function readableStreamReaderGenericInitialize(n,a){switch(n[Wn].stream=a,a[Wn].reader=n,a[Wn].state){case`readable`:n[Wn].close=Promise.withResolvers();break;case`closed`:n[Wn].close={promise:Promise.resolve(),resolve:void 0,reject:void 0};break;case`errored`:n[Wn].close={promise:Promise.reject(a[Wn].storedError),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].close.promise);break}}function readableStreamReaderGenericRelease(n){let{stream:a}=n[Wn],S=lazyReadableReleasedError();a[Wn].state===`readable`?n[Wn].close.reject?.(S):n[Wn].close={promise:Promise.reject(S),resolve:void 0,reject:void 0},setPromiseHandled(n[Wn].close.promise),a[Wn].controller[sr](),a[Wn].reader=void 0,n[Wn].stream=void 0}function readableStreamDefaultReaderRelease(n){readableStreamReaderGenericRelease(n),readableStreamDefaultReaderErrorReadRequests(n,lazyReadableReleasingError())}function readableStreamDefaultReaderErrorReadRequests(n,a){for(let S=0;S<n[Wn].readRequests.length;++S)n[Wn].readRequests[S][ir](a);n[Wn].readRequests=[]}function readableStreamDefaultReaderRead(n,a){let{stream:S}=n[Wn];switch(S[Wn].disturbed=!0,S[Wn].state){case`closed`:a[nr]();break;case`errored`:a[ir](S[Wn].storedError);break;case`readable`:S[Wn].controller[ar](a);break}}function setupReadableStreamDefaultReader(n,a){if(isReadableStreamLocked(a))throw TypeError(`ReadableStream is locked`);readableStreamReaderGenericInitialize(n,a),n[Wn].readRequests=[]}function readableStreamDefaultControllerClose(n){readableStreamDefaultControllerCanCloseOrEnqueue(n)&&(n[Wn].closeRequested=!0,n[Wn].queue.length||(readableStreamDefaultControllerClearAlgorithms(n),readableStreamClose(n[Wn].stream)))}function readableStreamDefaultControllerEnqueue(n,a){if(!readableStreamDefaultControllerCanCloseOrEnqueue(n))return;let{stream:S}=n[Wn];if(isReadableStreamLocked(S)&&readableStreamGetNumReadRequests(S))readableStreamFulfillReadRequest(S,a,!1);else try{enqueueValueWithSize(n,a,n[Wn].sizeAlgorithm(a))}catch(a){throw readableStreamDefaultControllerError(n,a),a}readableStreamDefaultControllerCallPullIfNeeded(n)}function readableStreamDefaultControllerCanCloseOrEnqueue(n){let{stream:a}=n[Wn];return!n[Wn].closeRequested&&a[Wn].state===`readable`}function readableStreamDefaultControllerGetDesiredSize(n){let{stream:a,highWaterMark:S,queueTotalSize:C}=n[Wn];switch(a[Wn].state){case`errored`:return null;case`closed`:return 0;default:return S-C}}function readableStreamDefaultControllerHasBackpressure(n){return!readableStreamDefaultControllerShouldCallPull(n)}function readableStreamDefaultControllerShouldCallPull(n){let{stream:a}=n[Wn];if(!readableStreamDefaultControllerCanCloseOrEnqueue(n)||!n[Wn].started)return!1;if(isReadableStreamLocked(a)&&readableStreamGetNumReadRequests(a))return!0;let S=readableStreamDefaultControllerGetDesiredSize(n);return S!==null&&S>0}function readableStreamDefaultControllerCallPullIfNeeded(n){if(readableStreamDefaultControllerShouldCallPull(n)){if(n[Wn].pulling){n[Wn].pullAgain=!0;return}n[Wn].pulling=!0,n[Wn].pullAlgorithm(n).then(()=>{n[Wn].pulling=!1,n[Wn].pullAgain&&(n[Wn].pullAgain=!1,readableStreamDefaultControllerCallPullIfNeeded(n))},a=>readableStreamDefaultControllerError(n,a))}}function readableStreamDefaultControllerClearAlgorithms(n){n[Wn].pullAlgorithm=void 0,n[Wn].cancelAlgorithm=void 0,n[Wn].sizeAlgorithm=void 0}function readableStreamDefaultControllerError(n,a){let{stream:S}=n[Wn];S[Wn].state===`readable`&&(resetQueue(n),readableStreamDefaultControllerClearAlgorithms(n),readableStreamError(S,a))}function readableStreamDefaultControllerCancelSteps(n,a){resetQueue(n);let S=n[Wn].cancelAlgorithm?.(a)??Promise.resolve();return readableStreamDefaultControllerClearAlgorithms(n),S}function readableStreamDefaultControllerPullSteps(n,a){let{stream:S,queue:C}=n[Wn];if(C.length){let N=dequeueValue(n);n[Wn].closeRequested&&!C.length?(readableStreamDefaultControllerClearAlgorithms(n),readableStreamClose(S)):readableStreamDefaultControllerCallPullIfNeeded(n),a[rr](N);return}readableStreamAddReadRequest(S,a),readableStreamDefaultControllerCallPullIfNeeded(n)}function setupReadableStreamDefaultController(n,a,S,C,N,F,I){a[Wn]={cancelAlgorithm:N,closeRequested:!1,highWaterMark:F,pullAgain:!1,pullAlgorithm:C,pulling:!1,queue:[],queueTotalSize:0,started:!1,sizeAlgorithm:I,stream:n},n[Wn].controller=a;let H=S();new Promise(n=>n(H)).then(()=>{a[Wn].started=!0,readableStreamDefaultControllerCallPullIfNeeded(a)},n=>readableStreamDefaultControllerError(a,n))}function setupReadableStreamDefaultControllerFromSource(n,a,S,C){let N=new ReadableStreamDefaultController(cr),F=a?.start,I=a?.pull,H=a?.cancel;setupReadableStreamDefaultController(n,N,F?F.bind(a,N):nonOpStart,I?createPromiseCallback(`source.pull`,I,a):nonOpPull,H?createPromiseCallback(`source.cancel`,H,a):nonOpCancel,S,C)}function createReadableStream(n,a,S,C=1,N=()=>1){let F=Object.create(ReadableStream$1.prototype);return F[Gn]=`ReadableStream`,F[Wn]=createReadableStreamState(),setupReadableStreamDefaultController(F,new ReadableStreamDefaultController(cr),n,a,S,C,N),F}function readableStreamFromIterable(n){let a,S=getIterator(n,`async`),C=nonOpStart;async function pullAlgorithm(){let n=iteratorNext(S);return Promise.resolve(n).then(n=>{if(typeof n!=`object`||!n)throw TypeError(`The promise returned by the iterator.next() method must fulfill with an object`);n.done?readableStreamDefaultControllerClose(a[Wn].controller):readableStreamDefaultControllerEnqueue(a[Wn].controller,n.value)})}async function cancelAlgorithm(n){let a=S.iterator,C=a.return;if(C===void 0)return Promise.resolve();let N=C.call(a,n);return Promise.resolve(N).then(n=>{if(typeof n!=`object`||!n)throw TypeError(`The promise returned by the iterator.return() method must fulfill with an object`)})}return a=createReadableStream(C,pullAlgorithm,cancelAlgorithm,0),a}function readableStreamPipeTo(n,a,S,C,N,F){let I,H;try{I=new ReadableStreamDefaultReader(n),H=new WritableStreamDefaultWriter(a)}catch(n){return Promise.reject(n)}n[Wn].disturbed=!0;let W=!1,{promise:K,resolve:q,reject:Y}=Promise.withResolvers(),X={currentWrite:Promise.resolve()},te;function finalize(n,a){writableStreamDefaultWriterRelease(H),readableStreamReaderGenericRelease(I),F!==void 0&&te&&(F.removeEventListener(`abort`,te),te=void 0),n?Y(a):q()}async function waitForCurrentWrite(){let n=X.currentWrite;await n,n!==X.currentWrite&&await waitForCurrentWrite()}function shutdownWithAnAction(n,S,C){if(W)return;if(W=!0,a[Wn].state===`writable`&&!writableStreamCloseQueuedOrInFlight(a)){waitForCurrentWrite().then(complete,n=>finalize(!0,n));return}complete();function complete(){n().then(()=>finalize(!!S,C),n=>finalize(!0,n))}}function shutdown(n,S){if(!W){if(W=!0,a[Wn].state===`writable`&&!writableStreamCloseQueuedOrInFlight(a)){waitForCurrentWrite().then(()=>finalize(!!n,S),n=>finalize(!0,n));return}finalize(!!n,S)}}function abortAlgorithm(){let S;S=F.reason&&F.reason.name===`AbortError`?createAbortError():F.reason;let I=[];C||I.push(()=>a[Wn].state===`writable`?writableStreamAbort(a,S):Promise.resolve()),N||I.push(()=>n[Wn].state===`readable`?readableStreamCancel(n,S):Promise.resolve()),shutdownWithAnAction(()=>Promise.all(I.map(n=>n())).then(()=>void 0),!0,S)}function watchErrored(n,a,S){n[Wn].state===`errored`?S(n[Wn].storedError):a.then(void 0,S)}function watchClosed(n,a,S){n[Wn].state===`closed`?S():a.then(S,()=>{})}class PipeToReadRequest{[rr](n){Me(()=>{X.currentWrite=writableStreamDefaultWriterWrite(H,n),setPromiseHandled(X.currentWrite),ne.resolve(!1)})}[nr](){ne.resolve(!0)}[ir](n){ne.reject(n)}}let ne={resolve:null,reject:null};async function step(){if(W||a[Wn].backpressure&&(await H[Wn].ready.promise,W))return!0;let S=n[Wn].controller;if(n[Wn].state===`readable`&&fr(S)&&S[Wn].queue.length>0){for(;S[Wn].queue.length>0;){if(W)return!0;let C=dequeueValue(S);if(S[Wn].closeRequested&&!S[Wn].queue.length&&(readableStreamDefaultControllerClearAlgorithms(S),readableStreamClose(n)),X.currentWrite=writableStreamDefaultWriterWrite(H,C),setPromiseHandled(X.currentWrite),a[Wn].backpressure||a[Wn].state!==`writable`||writableStreamCloseQueuedOrInFlight(a))break}return readableStreamDefaultControllerCallPullIfNeeded(S),n[Wn].state===`closed`}let{promise:C,resolve:N,reject:F}=Promise.withResolvers();return ne={resolve:N,reject:F},readableStreamDefaultReaderRead(I,new PipeToReadRequest),C}async function run(){for(;!await step(););}if(F!==void 0){if(F.aborted)return abortAlgorithm(),K;te=abortAlgorithm,F.addEventListener(`abort`,te,{once:!0})}if(setPromiseHandled(run()),watchErrored(n,I[Wn].close.promise,n=>{if(!C)return shutdownWithAnAction(()=>writableStreamAbort(a,n),!0,n);shutdown(!0,n)}),watchErrored(a,H[Wn].close.promise,a=>{if(!N)return shutdownWithAnAction(()=>readableStreamCancel(n,a),!0,a);shutdown(!0,a)}),watchClosed(n,I[Wn].close.promise,()=>{if(!S)return shutdownWithAnAction(()=>writableStreamDefaultWriterCloseWithErrorPropagation(H));shutdown()}),writableStreamCloseQueuedOrInFlight(a)||a[Wn].state===`closed`){let a=TypeError(`Destination WritableStream is closed`);N?shutdown(!0,a):shutdownWithAnAction(()=>readableStreamCancel(n,a),!0,a)}return K}function readableStreamDefaultTee(n,a){let S=new ReadableStreamDefaultReader(n),C=!1,N=!1,F=!1,I,H,W,K,q=Promise.withResolvers();async function pullAlgorithm(){C||(C=!0,readableStreamDefaultReaderRead(S,{[rr](n){Me(()=>{C=!1;let S=n,I=n;if(!F&&a)try{I=structuredClone(I)}catch{}N||readableStreamDefaultControllerEnqueue(W[Wn].controller,S),F||readableStreamDefaultControllerEnqueue(K[Wn].controller,I)})},[nr](){Me(()=>{C=!1,N||readableStreamDefaultControllerClose(W[Wn].controller),F||readableStreamDefaultControllerClose(K[Wn].controller),(!N||!F)&&q.resolve(void 0)})},[ir](){C=!1}}))}function cancel1Algorithm(a){if(N=!0,I=a,F){let a=[I,H];q.resolve(readableStreamCancel(n,a))}return q.promise}function cancel2Algorithm(a){if(F=!0,H=a,N){let a=[I,H];q.resolve(readableStreamCancel(n,a))}return q.promise}return W=createReadableStream(nonOpStart,pullAlgorithm,cancel1Algorithm),K=createReadableStream(nonOpStart,pullAlgorithm,cancel2Algorithm),S[Wn].close.promise.then(void 0,n=>{readableStreamDefaultControllerError(W[Wn].controller,n),readableStreamDefaultControllerError(K[Wn].controller,n),(!N||!F)&&q.resolve(void 0)}),[W,K]}var BYOBReadIntoRequest=class{[Wn];constructor(){this[Wn]=Promise.withResolvers()}[rr](n){this[Wn].resolve?.({value:n,done:!1})}[nr](n){this[Wn].resolve?.({value:n,done:!0})}[ir](n){this[Wn].reject?.(n)}get promise(){return this[Wn].promise}},ReadableStreamBYOBReader=class{[Gn]=`ReadableStreamBYOBReader`;[Wn];constructor(n){if(!dr(n))throw TypeError(`Expected a ReadableStream`);this[Wn]={readRequests:[],readIntoRequests:[],stream:void 0,close:{promise:void 0,resolve:void 0,reject:void 0}},setupReadableStreamBYOBReader(this,n)}read(n,a={}){if(!hr(this))return Promise.reject(TypeError(`Invalid this`));if(typeof n!=`object`||!n||!ArrayBuffer.isView(n))return Promise.reject(TypeError(`view must be an ArrayBufferView`));let S=n.buffer,C=n.byteLength;if(C===0)return Promise.reject(TypeError(`view must have non-zero byteLength`));if(S.byteLength===0)return isDetachedBuffer(S)?Promise.reject(TypeError(`view's buffer has been detached`)):Promise.reject(TypeError(`view's buffer must have non-zero byteLength`));let N=a?.min??1;if(typeof N!=`number`||N<1||!Number.isInteger(N)||Number.isNaN(N))return Promise.reject(TypeError(`options.min must be a positive integer`));let F=n[Symbol.toStringTag];if(F!==void 0&&F!==`DataView`){if(N>n.length)return Promise.reject(RangeError(`options.min must be smaller or equal to view size`))}else if(N>C)return Promise.reject(RangeError(`options.min must be smaller or equal to view size`));if(this[Wn].stream===void 0)return Promise.reject(TypeError(`Reader has no associated stream`));let I=new BYOBReadIntoRequest;return readableStreamBYOBReaderRead(this,n,N,I),I.promise}releaseLock(){if(!hr(this))throw TypeError(`Invalid this`);this[Wn].stream!==void 0&&readableStreamBYOBReaderRelease(this)}get closed(){return hr(this)?this[Wn].close.promise:Promise.reject(TypeError(`Invalid this`))}cancel(n=void 0){return hr(this)?this[Wn].stream===void 0?Promise.reject(TypeError(`Reader has no associated stream`)):readableStreamReaderGenericCancel(this,n):Promise.reject(TypeError(`Invalid this`))}get[Symbol.toStringTag](){return`ReadableStreamBYOBReader`}},ReadableStreamBYOBRequest=class{[Gn]=`ReadableStreamBYOBRequest`;[Wn];constructor(n){if(n!==cr)throw TypeError(`Illegal constructor`)}get view(){if(!gr(this))throw TypeError(`Invalid this`);return this[Wn].view}respond(n){if(!gr(this))throw TypeError(`Invalid this`);if(this[Wn].controller===void 0)throw TypeError(`BYOB request has been invalidated`);if(n=+n,!Number.isInteger(n)||n<0||!Number.isFinite(n))throw RangeError(`bytesWritten must be a non-negative integer`);let a=this[Wn].view;if(isDetachedBuffer(a.buffer))throw TypeError(`The BYOB request's buffer has been detached`);readableByteStreamControllerRespond(this[Wn].controller,n)}respondWithNewView(n){if(!gr(this))throw TypeError(`Invalid this`);if(this[Wn].controller===void 0)throw TypeError(`BYOB request has been invalidated`);if(typeof n!=`object`||!n||!ArrayBuffer.isView(n))throw TypeError(`view must be an ArrayBufferView`);if(isDetachedBuffer(n.buffer))throw TypeError(`The given view's buffer has been detached`);readableByteStreamControllerRespondWithNewView(this[Wn].controller,n)}get[Symbol.toStringTag](){return`ReadableStreamBYOBRequest`}},ReadableByteStreamController=class{[Gn]=`ReadableByteStreamController`;[Wn];constructor(n){if(n!==cr)throw TypeError(`Illegal constructor`)}get byobRequest(){if(!mr(this))throw TypeError(`Invalid this`);return readableByteStreamControllerGetBYOBRequest(this)}get desiredSize(){if(!mr(this))throw TypeError(`Invalid this`);return readableByteStreamControllerGetDesiredSize(this)}close(){if(!mr(this))throw TypeError(`Invalid this`);if(this[Wn].closeRequested)throw TypeError(`Close already requested`);if(this[Wn].stream[Wn].state!==`readable`)throw TypeError(`Stream is not in a readable state`);readableByteStreamControllerClose(this)}enqueue(n){if(!mr(this))throw TypeError(`Invalid this`);if(typeof n!=`object`||!n||!ArrayBuffer.isView(n))throw TypeError(`chunk must be an ArrayBufferView`);if(n.byteLength===0)throw TypeError(`chunk length must be non-zero`);if(n.buffer.byteLength===0)throw TypeError(`chunk's buffer length must be non-zero`);if(this[Wn].closeRequested)throw TypeError(`Cannot enqueue after close has been requested`);if(this[Wn].stream[Wn].state!==`readable`)throw TypeError(`Stream is not in a readable state`);readableByteStreamControllerEnqueue(this,n)}error(n=void 0){if(!mr(this))throw TypeError(`Invalid this`);readableByteStreamControllerError(this,n)}[tr](n){return readableByteStreamControllerCancelSteps(this,n)}[ar](n){readableByteStreamControllerPullSteps(this,n)}[sr](){if(this[Wn].pendingPullIntos.length>0){let n=this[Wn].pendingPullIntos[0];n.readerType=`none`,this[Wn].pendingPullIntos=[n]}}get[Symbol.toStringTag](){return`ReadableByteStreamController`}};const mr=isBrandCheck(`ReadableByteStreamController`),hr=isBrandCheck(`ReadableStreamBYOBReader`),gr=isBrandCheck(`ReadableStreamBYOBRequest`);function readableStreamHasBYOBReader(n){let{reader:a}=n[Wn];return a===void 0?!1:a[Wn]!==void 0&&a[Gn]===`ReadableStreamBYOBReader`}function readableStreamGetNumReadIntoRequests(n){return n[Wn].reader[Wn].readIntoRequests.length}function readableStreamAddReadIntoRequest(n,a){n[Wn].reader[Wn].readIntoRequests.push(a)}function readableStreamFulfillReadIntoRequest(n,a,S){let{reader:C}=n[Wn],N=C[Wn].readIntoRequests.shift();S?N[nr](a):N[rr](a)}function setupReadableStreamBYOBReader(n,a){if(isReadableStreamLocked(a))throw TypeError(`ReadableStream is locked`);if(!mr(a[Wn].controller))throw TypeError(`Cannot use a BYOB reader with a non-byte stream`);readableStreamReaderGenericInitialize(n,a),n[Wn].readIntoRequests=[]}function readableStreamBYOBReaderRead(n,a,S,C){let{stream:N}=n[Wn];N[Wn].disturbed=!0,N[Wn].state===`errored`?C[ir](N[Wn].storedError):readableByteStreamControllerPullInto(N[Wn].controller,a,S,C)}function readableStreamBYOBReaderRelease(n){readableStreamReaderGenericRelease(n);let a=TypeError(`Reader was released`);for(let S=0;S<n[Wn].readIntoRequests.length;S++)n[Wn].readIntoRequests[S][ir](a);n[Wn].readIntoRequests=[]}function readableByteStreamControllerClearAlgorithms(n){n[Wn].pullAlgorithm=void 0,n[Wn].cancelAlgorithm=void 0}function readableByteStreamControllerClearPendingPullIntos(n){readableByteStreamControllerInvalidateBYOBRequest(n),n[Wn].pendingPullIntos=[]}function readableByteStreamControllerInvalidateBYOBRequest(n){let a=n[Wn].byobRequest;a!=null&&(a[Wn].controller=void 0,a[Wn].view=null,n[Wn].byobRequest=null)}function readableByteStreamControllerError(n,a){let{stream:S}=n[Wn];S[Wn].state===`readable`&&(readableByteStreamControllerClearPendingPullIntos(n),resetQueue(n),readableByteStreamControllerClearAlgorithms(n),readableStreamError(S,a))}function readableByteStreamControllerGetDesiredSize(n){let a=n[Wn].stream[Wn].state;return a===`errored`?null:a===`closed`?0:n[Wn].highWaterMark-n[Wn].queueTotalSize}function readableByteStreamControllerShouldCallPull(n){let{stream:a}=n[Wn];if(a[Wn].state!==`readable`||n[Wn].closeRequested||!n[Wn].started)return!1;if(readableStreamHasDefaultReader(a)&&readableStreamGetNumReadRequests(a)>0||readableStreamHasBYOBReader(a)&&readableStreamGetNumReadIntoRequests(a)>0)return!0;let S=readableByteStreamControllerGetDesiredSize(n);return S!==null&&S>0}function readableByteStreamControllerCallPullIfNeeded(n){if(readableByteStreamControllerShouldCallPull(n)){if(n[Wn].pulling){n[Wn].pullAgain=!0;return}n[Wn].pulling=!0,n[Wn].pullAlgorithm(n).then(()=>{n[Wn].pulling=!1,n[Wn].pullAgain&&(n[Wn].pullAgain=!1,readableByteStreamControllerCallPullIfNeeded(n))},a=>readableByteStreamControllerError(n,a))}}function readableByteStreamControllerHandleQueueDrain(n){n[Wn].queueTotalSize===0&&n[Wn].closeRequested?(readableByteStreamControllerClearAlgorithms(n),readableStreamClose(n[Wn].stream)):readableByteStreamControllerCallPullIfNeeded(n)}function readableByteStreamControllerEnqueueChunkToQueue(n,a,S,C){n[Wn].queue.push({buffer:a,byteOffset:S,byteLength:C}),n[Wn].queueTotalSize+=C}function readableByteStreamControllerEnqueueClonedChunkToQueue(n,a,S,C){let N;try{N=a.slice(S,S+C)}catch(a){readableByteStreamControllerError(n,a);return}readableByteStreamControllerEnqueueChunkToQueue(n,N,0,C)}function readableByteStreamControllerEnqueueDetachedPullIntoToQueue(n,a){a.bytesFilled>0&&readableByteStreamControllerEnqueueClonedChunkToQueue(n,a.buffer,a.byteOffset,a.bytesFilled),readableByteStreamControllerShiftPendingPullInto(n)}function readableByteStreamControllerShiftPendingPullInto(n){return n[Wn].pendingPullIntos.shift()}function readableByteStreamControllerFillHeadPullIntoDescriptor(n,a,S){S.bytesFilled+=a}function readableByteStreamControllerConvertPullIntoDescriptor(n){let a=n.bytesFilled,S=n.elementSize,C=transferArrayBuffer(n.buffer);return n.buffer=C,new n.viewConstructor(C,n.byteOffset,a/S)}function readableByteStreamControllerCommitPullIntoDescriptor(n,a){let S=!1;n[Wn].state===`closed`&&(S=!0);let C=readableByteStreamControllerConvertPullIntoDescriptor(a);a.readerType==="default"?readableStreamFulfillReadRequest(n,C,S):readableStreamFulfillReadIntoRequest(n,C,S)}function readableByteStreamControllerFillPullIntoDescriptorFromQueue(n,a){let S=Math.min(n[Wn].queueTotalSize,a.byteLength-a.bytesFilled),C=a.bytesFilled+S,N=S,F=!1,I=C-C%a.elementSize;I>=a.minimumFill&&(N=I-a.bytesFilled,F=!0);let H=n[Wn].queue;for(;N>0;){let S=H[0],C=Math.min(N,S.byteLength),F=a.byteOffset+a.bytesFilled,I=new Uint8Array(a.buffer,F,C),W=new Uint8Array(S.buffer,S.byteOffset,C);I.set(W),S.byteLength===C?H.shift():(S.byteOffset+=C,S.byteLength-=C),n[Wn].queueTotalSize-=C,readableByteStreamControllerFillHeadPullIntoDescriptor(n,C,a),N-=C}return F}function readableByteStreamControllerFillReadRequestFromQueue(n,a){let S=n[Wn].queue.shift();n[Wn].queueTotalSize-=S.byteLength,readableByteStreamControllerHandleQueueDrain(n);let C=new Uint8Array(S.buffer,S.byteOffset,S.byteLength);a[rr](C)}function readableByteStreamControllerProcessReadRequestsUsingQueue(n){let a=n[Wn].stream[Wn].reader;for(;a[Wn].readRequests.length!==0;){if(n[Wn].queueTotalSize===0)return;readableByteStreamControllerFillReadRequestFromQueue(n,a[Wn].readRequests.shift())}}function readableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(n){for(;n[Wn].pendingPullIntos.length!==0;){if(n[Wn].queueTotalSize===0)return;let a=n[Wn].pendingPullIntos[0];readableByteStreamControllerFillPullIntoDescriptorFromQueue(n,a)&&(readableByteStreamControllerShiftPendingPullInto(n),readableByteStreamControllerCommitPullIntoDescriptor(n[Wn].stream,a))}}function readableByteStreamControllerGetBYOBRequest(n){if(n[Wn].byobRequest===null&&n[Wn].pendingPullIntos.length!==0){let a=n[Wn].pendingPullIntos[0],S=new Uint8Array(a.buffer,a.byteOffset+a.bytesFilled,a.byteLength-a.bytesFilled),C=new ReadableStreamBYOBRequest(cr);C[Wn]={controller:n,view:S},n[Wn].byobRequest=C}return n[Wn].byobRequest}function readableByteStreamControllerEnqueue(n,a){let{stream:S}=n[Wn];if(n[Wn].closeRequested||S[Wn].state!==`readable`)return;let C=a.buffer,N=a.byteLength,F=a.byteOffset;if(isDetachedBuffer(C))throw TypeError(`chunk's buffer is detached`);let I=transferArrayBuffer(C);if(n[Wn].pendingPullIntos.length!==0){let a=n[Wn].pendingPullIntos[0];if(isDetachedBuffer(a.buffer))throw TypeError(`BYOB request's buffer has been detached`);readableByteStreamControllerInvalidateBYOBRequest(n),a.buffer=transferArrayBuffer(a.buffer),a.readerType===`none`&&readableByteStreamControllerEnqueueDetachedPullIntoToQueue(n,a)}readableStreamHasDefaultReader(S)?(readableByteStreamControllerProcessReadRequestsUsingQueue(n),readableStreamGetNumReadRequests(S)===0?readableByteStreamControllerEnqueueChunkToQueue(n,I,F,N):(n[Wn].pendingPullIntos.length!==0&&readableByteStreamControllerShiftPendingPullInto(n),readableStreamFulfillReadRequest(S,new Uint8Array(I,F,N),!1))):readableStreamHasBYOBReader(S)?(readableByteStreamControllerEnqueueChunkToQueue(n,I,F,N),readableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(n)):readableByteStreamControllerEnqueueChunkToQueue(n,I,F,N),readableByteStreamControllerCallPullIfNeeded(n)}function readableByteStreamControllerClose(n){let{stream:a}=n[Wn];if(!(n[Wn].closeRequested||a[Wn].state!==`readable`)){if(n[Wn].queueTotalSize>0){n[Wn].closeRequested=!0;return}if(n[Wn].pendingPullIntos.length!==0){let a=n[Wn].pendingPullIntos[0];if(a.bytesFilled%a.elementSize!==0){let a=TypeError(`Insufficient bytes to fill elements in the given buffer`);throw readableByteStreamControllerError(n,a),a}}readableByteStreamControllerClearAlgorithms(n),readableStreamClose(a)}}function readableByteStreamControllerPullInto(n,a,S,C){let N=n[Wn].stream,F=a[Symbol.toStringTag],I,H;if(F===void 0||F===`DataView`)I=DataView,H=1;else{let n=typedArrayConstructorByTag(F);if(!n){C[ir](TypeError(`Unsupported typed array: ${F}`));return}I=n,H=elementSizeByTag(F)}let W=a.buffer,K=a.byteLength,q=a.byteOffset,Y=S*H,X;try{X=transferArrayBuffer(W)}catch(n){C[ir](n);return}let te={buffer:X,bufferByteLength:X.byteLength,byteOffset:q,byteLength:K,bytesFilled:0,minimumFill:Y,elementSize:H,viewConstructor:I,readerType:`byob`};if(n[Wn].pendingPullIntos.length!==0){n[Wn].pendingPullIntos.push(te),readableStreamAddReadIntoRequest(N,C);return}if(N[Wn].state===`closed`){let n=new I(te.buffer,te.byteOffset,0);C[nr](n);return}if(n[Wn].queueTotalSize>0){if(readableByteStreamControllerFillPullIntoDescriptorFromQueue(n,te)){let a=readableByteStreamControllerConvertPullIntoDescriptor(te);readableByteStreamControllerHandleQueueDrain(n),C[rr](a);return}if(n[Wn].closeRequested){let a=TypeError(`Insufficient bytes to fill elements in the given buffer`);readableByteStreamControllerError(n,a),C[ir](a);return}}n[Wn].pendingPullIntos.push(te),readableStreamAddReadIntoRequest(N,C),readableByteStreamControllerCallPullIfNeeded(n)}function readableByteStreamControllerRespond(n,a){let S=n[Wn].pendingPullIntos[0];if(n[Wn].stream[Wn].state===`closed`){if(a!==0)throw TypeError(`bytesWritten must be 0 when calling respond() on a closed stream`)}else{if(a===0)throw TypeError(`bytesWritten must be greater than 0 when calling respond() on a readable stream`);if(S.bytesFilled+a>S.byteLength)throw RangeError(`bytesWritten out of range`)}S.buffer=transferArrayBuffer(S.buffer),readableByteStreamControllerRespondInternal(n,a)}function readableByteStreamControllerRespondWithNewView(n,a){let S=n[Wn].pendingPullIntos[0],C=n[Wn].stream[Wn].state,N=a.byteLength,F=a.byteOffset,I=a.buffer;if(C===`closed`){if(N!==0)throw TypeError(`view's length must be 0 when calling respondWithNewView() on a closed stream`)}else if(N===0)throw TypeError(`view's length must be greater than 0 when calling respondWithNewView() on a readable stream`);if(S.byteOffset+S.bytesFilled!==F)throw RangeError(`The region specified by view does not match byobRequest`);if(S.bufferByteLength!==I.byteLength)throw RangeError(`The buffer of view has different capacity than byobRequest`);if(S.bytesFilled+N>S.byteLength)throw RangeError(`The region specified by view is larger than byobRequest`);S.buffer=transferArrayBuffer(I),readableByteStreamControllerRespondInternal(n,N)}function readableByteStreamControllerRespondInternal(n,a){let S=n[Wn].pendingPullIntos[0];readableByteStreamControllerInvalidateBYOBRequest(n),n[Wn].stream[Wn].state===`closed`?readableByteStreamControllerRespondInClosedState(n,S):readableByteStreamControllerRespondInReadableState(n,a,S),readableByteStreamControllerCallPullIfNeeded(n)}function readableByteStreamControllerRespondInClosedState(n,a){a.readerType===`none`&&readableByteStreamControllerShiftPendingPullInto(n);let S=n[Wn].stream;if(readableStreamHasBYOBReader(S))for(;readableStreamGetNumReadIntoRequests(S)>0;)readableByteStreamControllerCommitPullIntoDescriptor(S,readableByteStreamControllerShiftPendingPullInto(n))}function readableByteStreamControllerRespondInReadableState(n,a,S){if(readableByteStreamControllerFillHeadPullIntoDescriptor(n,a,S),S.readerType===`none`){readableByteStreamControllerEnqueueDetachedPullIntoToQueue(n,S),readableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(n);return}if(S.bytesFilled<S.minimumFill)return;readableByteStreamControllerShiftPendingPullInto(n);let C=S.bytesFilled%S.elementSize;if(C>0){let a=S.byteOffset+S.bytesFilled;readableByteStreamControllerEnqueueClonedChunkToQueue(n,S.buffer,a-C,C)}S.bytesFilled-=C,readableByteStreamControllerCommitPullIntoDescriptor(n[Wn].stream,S),readableByteStreamControllerProcessPullIntoDescriptorsUsingQueue(n)}function readableByteStreamControllerCancelSteps(n,a){readableByteStreamControllerClearPendingPullIntos(n),resetQueue(n);let S=n[Wn].cancelAlgorithm?.(a)??Promise.resolve();return readableByteStreamControllerClearAlgorithms(n),S}function readableByteStreamControllerPullSteps(n,a){let S=n[Wn].stream;if(n[Wn].queueTotalSize>0){readableByteStreamControllerFillReadRequestFromQueue(n,a);return}let C=n[Wn].autoAllocateChunkSize;if(C!==void 0){let S;try{S=new ArrayBuffer(C)}catch(n){a[ir](n);return}let N={buffer:S,bufferByteLength:C,byteOffset:0,byteLength:C,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:`default`};n[Wn].pendingPullIntos.push(N)}readableStreamAddReadRequest(S,a),readableByteStreamControllerCallPullIfNeeded(n)}function setupReadableByteStreamController(n,a,S,C,N,F,I){a[Wn]={cancelAlgorithm:N,closeRequested:!1,highWaterMark:F,pullAgain:!1,pullAlgorithm:C,pulling:!1,queue:[],queueTotalSize:0,started:!1,stream:n,byobRequest:null,pendingPullIntos:[],autoAllocateChunkSize:I},n[Wn].controller=a;let H=S();new Promise(n=>n(H)).then(()=>{a[Wn].started=!0,readableByteStreamControllerCallPullIfNeeded(a)},n=>readableByteStreamControllerError(a,n))}function setupReadableByteStreamControllerFromSource(n,a,S){let C=new ReadableByteStreamController(cr),N=a?.start,F=a?.pull,I=a?.cancel,H=a?.autoAllocateChunkSize;if(H!==void 0&&(H===0||!Number.isInteger(H)||H<0))throw TypeError(`autoAllocateChunkSize must be a positive integer`);setupReadableByteStreamController(n,C,N?N.bind(a,C):nonOpStart,F?createPromiseCallback(`source.pull`,F,a):nonOpPull,I?createPromiseCallback(`source.cancel`,I,a):nonOpCancel,S,H)}function readableByteStreamTee(n){let a=new ReadableStreamDefaultReader(n),S=!1,C=!1,N=!1,F,I,H=Promise.withResolvers(),W,K,q,Y;function pullAlgorithm(){return S?Promise.resolve():(S=!0,a.read().then(n=>{if(S=!1,n.done){C||q.close(),N||Y.close();return}let a=n.value,F=new Uint8Array(a.buffer.slice(a.byteOffset,a.byteOffset+a.byteLength));C||q.enqueue(F),N||Y.enqueue(new Uint8Array(F))},()=>{}),Promise.resolve())}return W=new ReadableStream$1({type:`bytes`,pull:pullAlgorithm,cancel(a){if(C=!0,F=a,N){let a=readableStreamCancel(n,[F,I]);return H.resolve(),a}return H.promise}}),K=new ReadableStream$1({type:`bytes`,pull:pullAlgorithm,cancel(a){if(N=!0,I=a,C){let a=readableStreamCancel(n,[F,I]);return H.resolve(),a}return H.promise}}),q=W[Wn].controller,Y=K[Wn].controller,a.closed.catch(n=>{q.error(n),Y.error(n),(!C||!N)&&H.resolve()}),[W,K]}const _r=Symbol(`kSkipThrow`);var TransformStream=class{[Gn]=`TransformStream`;[Wn];constructor(n={},a={},S={}){if(n!=null&&typeof n!=`object`)throw TypeError(`transformer must be an object`);if(a!=null&&typeof a!=`object`)throw TypeError(`writableStrategy must be an object`);if(S!=null&&typeof S!=`object`)throw TypeError(`readableStrategy must be an object`);let C=n?.readableType,N=n?.writableType,F=n?.start;if(C!==void 0)throw RangeError(`Invalid readableType: ${C}`);if(N!==void 0)throw RangeError(`Invalid writableType: ${N}`);let I=extractHighWaterMark(S?.highWaterMark,0),H=extractSizeAlgorithm(S?.size),W=extractHighWaterMark(a?.highWaterMark,1),K=extractSizeAlgorithm(a?.size),q=Promise.withResolvers();initializeTransformStream(this,q,W,K,I,H),setupTransformStreamDefaultControllerFromTransformer(this,n),F===void 0?q.resolve():q.resolve(F.call(n,this[Wn].controller))}get readable(){if(!vr(this))throw TypeError(`Invalid this`);return this[Wn].readable}get writable(){if(!vr(this))throw TypeError(`Invalid this`);return this[Wn].writable}get[Symbol.toStringTag](){return`TransformStream`}},TransformStreamDefaultController=class{[Gn]=`TransformStreamDefaultController`;[Wn];constructor(n){if(n!==_r)throw TypeError(`Illegal constructor`)}get desiredSize(){if(!yr(this))throw TypeError(`Invalid this`);let{stream:n}=this[Wn],{readable:a}=n[Wn],S=a[Wn].controller;return readableStreamDefaultControllerGetDesiredSize(S)}enqueue(n){if(!yr(this))throw TypeError(`Invalid this`);transformStreamDefaultControllerEnqueue(this,n)}error(n){if(!yr(this))throw TypeError(`Invalid this`);transformStreamDefaultControllerError(this,n)}terminate(){if(!yr(this))throw TypeError(`Invalid this`);transformStreamDefaultControllerTerminate(this)}get[Symbol.toStringTag](){return`TransformStreamDefaultController`}};const vr=isBrandCheck(`TransformStream`),yr=isBrandCheck(`TransformStreamDefaultController`);async function defaultTransformAlgorithm(n,a){transformStreamDefaultControllerEnqueue(a,n)}function initializeTransformStream(n,a,S,C,N,F){let startAlgorithm=()=>a.promise,I=createWritableStream(startAlgorithm,a=>transformStreamDefaultSinkWriteAlgorithm(n,a),()=>transformStreamDefaultSinkCloseAlgorithm(n),a=>transformStreamDefaultSinkAbortAlgorithm(n,a),S,C);n[Wn]={readable:createReadableStream(startAlgorithm,()=>transformStreamDefaultSourcePullAlgorithm(n),a=>transformStreamDefaultSourceCancelAlgorithm(n,a),N,F),writable:I,controller:void 0,backpressure:void 0,backpressureChange:{promise:void 0,resolve:void 0,reject:void 0}},transformStreamSetBackpressure(n,!0)}function transformStreamError(n,a){let{readable:S}=n[Wn];readableStreamDefaultControllerError(S[Wn].controller,a),transformStreamErrorWritableAndUnblockWrite(n,a)}function transformStreamErrorWritableAndUnblockWrite(n,a){let{controller:S,writable:C}=n[Wn];transformStreamDefaultControllerClearAlgorithms(S),writableStreamDefaultControllerErrorIfNeeded(C[Wn].controller,a),transformStreamUnblockWrite(n)}function transformStreamUnblockWrite(n){n[Wn].backpressure&&transformStreamSetBackpressure(n,!1)}function transformStreamSetBackpressure(n,a){n[Wn].backpressureChange.promise!==void 0&&n[Wn].backpressureChange.resolve?.(),n[Wn].backpressureChange=Promise.withResolvers(),n[Wn].backpressure=a}function setupTransformStreamDefaultController(n,a,S,C,N){a[Wn]={stream:n,transformAlgorithm:S,flushAlgorithm:C,cancelAlgorithm:N,finishPromise:void 0},n[Wn].controller=a}function setupTransformStreamDefaultControllerFromTransformer(n,a){let S=new TransformStreamDefaultController(_r),C=a?.transform,N=a?.flush,F=a?.cancel;setupTransformStreamDefaultController(n,S,C?createPromiseCallback(`transformer.transform`,C,a):defaultTransformAlgorithm,N?createPromiseCallback(`transformer.flush`,N,a):nonOpFlush,F?createPromiseCallback(`transformer.cancel`,F,a):nonOpCancel)}function transformStreamDefaultControllerClearAlgorithms(n){n[Wn].transformAlgorithm=void 0,n[Wn].flushAlgorithm=void 0,n[Wn].cancelAlgorithm=void 0}function transformStreamDefaultControllerEnqueue(n,a){let{stream:S}=n[Wn],{readable:C}=S[Wn],N=C[Wn].controller;if(!readableStreamDefaultControllerCanCloseOrEnqueue(N))throw TypeError(`Unable to enqueue`);try{readableStreamDefaultControllerEnqueue(N,a)}catch(n){throw transformStreamErrorWritableAndUnblockWrite(S,n),C[Wn].storedError}readableStreamDefaultControllerHasBackpressure(N)!==S[Wn].backpressure&&transformStreamSetBackpressure(S,!0)}function transformStreamDefaultControllerError(n,a){transformStreamError(n[Wn].stream,a)}async function transformStreamDefaultControllerPerformTransform(n,a){try{let S=n[Wn].transformAlgorithm;if(S===void 0)return;await S(a,n)}catch(a){throw transformStreamError(n[Wn].stream,a),a}}function transformStreamDefaultControllerTerminate(n){let{stream:a}=n[Wn],{readable:S}=a[Wn];readableStreamDefaultControllerClose(S[Wn].controller),transformStreamErrorWritableAndUnblockWrite(a,TypeError(`TransformStream has been terminated`))}function transformStreamDefaultSinkWriteAlgorithm(n,a){let{controller:S}=n[Wn];return n[Wn].backpressure?n[Wn].backpressureChange.promise.then(()=>{let{writable:C}=n[Wn];if(C[Wn].state===`erroring`)throw C[Wn].storedError;return transformStreamDefaultControllerPerformTransform(S,a)}):transformStreamDefaultControllerPerformTransform(S,a)}async function transformStreamDefaultSinkAbortAlgorithm(n,a){let{controller:S,readable:C}=n[Wn];if(S[Wn].finishPromise!==void 0)return S[Wn].finishPromise;let{promise:N,resolve:F,reject:I}=Promise.withResolvers();S[Wn].finishPromise=N;let H=S[Wn].cancelAlgorithm(a);return transformStreamDefaultControllerClearAlgorithms(S),H.then(()=>{C[Wn].state===`errored`?I(C[Wn].storedError):(readableStreamDefaultControllerError(C[Wn].controller,a),F())},n=>{readableStreamDefaultControllerError(C[Wn].controller,n),I(n)}),S[Wn].finishPromise}function transformStreamDefaultSinkCloseAlgorithm(n){let{readable:a,controller:S}=n[Wn];if(S[Wn].finishPromise!==void 0)return S[Wn].finishPromise;let{promise:C,resolve:N,reject:F}=Promise.withResolvers();S[Wn].finishPromise=C;let I=S[Wn].flushAlgorithm(S);return transformStreamDefaultControllerClearAlgorithms(S),I.then(()=>{a[Wn].state===`errored`?F(a[Wn].storedError):(readableStreamDefaultControllerClose(a[Wn].controller),N())},n=>{readableStreamDefaultControllerError(a[Wn].controller,n),F(n)}),S[Wn].finishPromise}function transformStreamDefaultSourcePullAlgorithm(n){return transformStreamSetBackpressure(n,!1),n[Wn].backpressureChange.promise}function transformStreamDefaultSourceCancelAlgorithm(n,a){let{controller:S,writable:C}=n[Wn];if(S[Wn].finishPromise!==void 0)return S[Wn].finishPromise;let{promise:N,resolve:F,reject:I}=Promise.withResolvers();S[Wn].finishPromise=N;let H=S[Wn].cancelAlgorithm(a);return transformStreamDefaultControllerClearAlgorithms(S),H.then(()=>{C[Wn].state===`errored`?I(C[Wn].storedError):(writableStreamDefaultControllerErrorIfNeeded(C[Wn].controller,a),transformStreamUnblockWrite(n),F())},a=>{writableStreamDefaultControllerErrorIfNeeded(C[Wn].controller,a),transformStreamUnblockWrite(n),I(a)}),S[Wn].finishPromise}const br=Object.defineProperty(n=>n.byteLength,"name",{value:`size`}),Sr=Object.defineProperty(()=>1,"name",{value:`size`});var ByteLengthQueuingStrategy=class{#e;constructor(n){if(typeof n!=`object`||!n)throw TypeError(`init must be an object`);if(n.highWaterMark===void 0)throw TypeError(`init.highWaterMark is required`);this.#e=+n.highWaterMark}get highWaterMark(){return this.#e}get size(){return br}get[Symbol.toStringTag](){return`ByteLengthQueuingStrategy`}},CountQueuingStrategy=class{#e;constructor(n){if(typeof n!=`object`||!n)throw TypeError(`init must be an object`);if(n.highWaterMark===void 0)throw TypeError(`init.highWaterMark is required`);this.#e=+n.highWaterMark}get highWaterMark(){return this.#e}get size(){return Sr}get[Symbol.toStringTag](){return`CountQueuingStrategy`}},TextEncoderStream=class{#e=null;#t=new TextEncoder;#n;constructor(){this.#n=new TransformStream({transform:(n,a)=>{if(n=String(n),n===``)return;this.#e!==null&&(n=this.#e+n);let S=n.charCodeAt(n.length-1);55296<=S&&S<=56319?(this.#e=n.slice(-1),n=n.slice(0,-1)):this.#e=null,n&&a.enqueue(this.#t.encode(n))},flush:n=>{this.#e!==null&&n.enqueue(new Uint8Array([239,191,189]))}})}get encoding(){return`utf-8`}get readable(){return this.#n.readable}get writable(){return this.#n.writable}};function hasStreamingSupport(){try{return new TextDecoder().decode(new Uint8Array([195]),{stream:!0}),!0}catch{return!1}}const Cr=hasStreamingSupport();function incompleteUtf8Tail$1(n){let a=n.length;if(a===0)return 0;for(let S=1;S<=Math.min(3,a);S++){let C=n[a-S];if(!(C&128))return 0;if((C&192)!=128){let n;if((C&224)==192)n=2;else if((C&240)==224)n=3;else if((C&248)==240)n=4;else return 0;return S<n?S:0}}return 0}__name$1(incompleteUtf8Tail$1,`incompleteUtf8Tail`);var TextDecoderStream=class{#e;#t;constructor(n,a){if(this.#e=new TextDecoder(n,a),Cr)this.#t=new TransformStream({transform:(n,a)=>{let S=toUint8Array$3(n),C=this.#e.decode(S,{stream:!0});C&&a.enqueue(C)},flush:n=>{let a=this.#e.decode();a&&n.enqueue(a)},cancel:()=>{this.#e.decode()}});else{let n=new Uint8Array;this.#t=new TransformStream({transform:(a,S)=>{let C=toUint8Array$3(a),N;n.length>0?(N=new Uint8Array(n.length+C.length),N.set(n,0),N.set(C,n.length)):N=C;let F=incompleteUtf8Tail$1(N),I;if(F>0?(I=N.slice(0,N.length-F),n=N.slice(N.length-F)):(I=N,n=new Uint8Array),I.length>0){let n=this.#e.decode(I);n&&S.enqueue(n)}},flush:a=>{if(n.length>0){let S=this.#e.decode(n);S&&a.enqueue(S),n=new Uint8Array}},cancel:()=>{n=new Uint8Array}})}}get encoding(){return this.#e.encoding}get fatal(){return this.#e.fatal}get ignoreBOM(){return this.#e.ignoreBOM}get readable(){return this.#t.readable}get writable(){return this.#t.writable}};function toUint8Array$3(n){if(n instanceof Uint8Array)return n;if(n instanceof ArrayBuffer)return new Uint8Array(n);if(ArrayBuffer.isView(n))return new Uint8Array(n.buffer,n.byteOffset,n.byteLength);throw TypeError(`chunk must be a BufferSource`)}__name$1(toUint8Array$3,`toUint8Array`);function isNativeStreamUsable$3(n,a){try{return typeof n==`function`?typeof n.prototype?.[a]==`function`:!1}catch{return!1}}__name$1(isNativeStreamUsable$3,`isNativeStreamUsable`);const wr=isNativeStreamUsable$3(globalThis.ReadableStream,`getReader`)?globalThis.ReadableStream:ReadableStream$1,Tr=isNativeStreamUsable$3(globalThis.WritableStream,`getWriter`)?globalThis.WritableStream:WritableStream,Er=isNativeStreamUsable$3(globalThis.TransformStream,`readable`)?globalThis.TransformStream:TransformStream,Dr=typeof globalThis.ByteLengthQueuingStrategy==`function`?globalThis.ByteLengthQueuingStrategy:ByteLengthQueuingStrategy,Or=typeof globalThis.CountQueuingStrategy==`function`?globalThis.CountQueuingStrategy:CountQueuingStrategy,kr=typeof globalThis.TextEncoderStream==`function`?globalThis.TextEncoderStream:TextEncoderStream,Ar=typeof globalThis.TextDecoderStream==`function`?globalThis.TextDecoderStream:TextDecoderStream;var jr=__esmMin(()=>{Xe()});function _setPipeImpl(n){Mr=n}var Mr,Stream_,Nr=__esmMin(()=>{Kt(),Stream_=class extends Ft{constructor(n){super(n)}pipe(n,a){return Mr(this,n,a)}}});function getDefaultHighWaterMark(n){return n?Fr:Pr}function setDefaultHighWaterMark(n,a){if(typeof a!=`number`||a<0||Number.isNaN(a))throw TypeError(`Invalid highWaterMark: ${a}`);n?Fr=a:Pr=a}function validateHighWaterMark(n,a){if(a!==void 0&&(typeof a!=`number`||Number.isNaN(a))){let S=TypeError(`The value of "${n}" is invalid. Received ${a}`);throw S.code=`ERR_INVALID_ARG_VALUE`,S}}var Pr,Fr,Ir=__esmMin(()=>{Pr=16384,Fr=16});function chunkLength(n){if(n==null)return 1;let a=n.length;return typeof a==`number`?a:1}function sliceChunk(n,a,S){if(typeof n==`string`)return S===void 0?n.slice(a):n.slice(a,S);let C=n.slice;return typeof C==`function`?C.call(n,a,S):n}var Lr,Rr=__esmMin(()=>{Nr(),Ir(),Xe(),Lr=class Readable_ extends Stream_{readable=!0;readableFlowing=null;readableLength=0;readableHighWaterMark;readableEncoding;readableObjectMode;readableEnded=!1;readableAborted=!1;destroyed=!1;_pipeDests=[];_buffer=[];_readableState={ended:!1,endEmitted:!1,reading:!1,constructed:!0,highWaterMark:0,objectMode:!1,pipes:[]};_err;_readablePending=!1;_readImpl;_destroyImpl;_constructImpl;constructor(n){super(n),this.readableHighWaterMark=n?.highWaterMark??getDefaultHighWaterMark(n?.objectMode??!1),this.readableEncoding=n?.encoding??null,this.readableObjectMode=n?.objectMode??!1,this._readableState.highWaterMark=this.readableHighWaterMark,this._readableState.objectMode=this.readableObjectMode,n?.read&&(this._readImpl=n.read),n?.destroy&&(this._destroyImpl=n.destroy),n?.construct&&(this._constructImpl=n.construct),(this._constructImpl||this._construct!==Readable_.prototype._construct)&&(this._readableState.constructed=!1,nextTick(()=>{this._construct(n=>{this._readableState.constructed=!0,n?this.destroy(n):this.readableFlowing===!0&&this._flow()})}))}_construct(n){this._constructImpl?this._constructImpl.call(this,n):n()}_read(n){this._readImpl&&this._readImpl.call(this,n)}read(n){if(!this._readableState.constructed)return null;if(this._buffer.length===0){if(this._readableState.ended)return null;this._readableState.reading=!0,this._read(n??this.readableHighWaterMark),this._readableState.reading=!1}if(this._buffer.length===0||n===0)return null;if(this.readableObjectMode){if(n===void 0){let n=this._buffer.shift();return--this.readableLength,this._readableState.ended&&this._buffer.length===0&&!this._readableState.endEmitted&&this._emitEnd(),n}if(n>this.readableLength)return null;let a=this._buffer.shift();return--this.readableLength,a}if(n!=null)return n>this.readableLength?null:this._readBytes(n);let a=this._buffer.splice(0);if(this.readableLength=0,this._readableState.ended&&this._buffer.length===0&&!this._readableState.endEmitted&&this._emitEnd(),a.length===1)return a[0];if(a.length===0)return null;if(typeof a[0]==`string`)return a.join(``);let S=globalThis.Buffer;return S?.concat?S.concat(a):a}_readBytes(n){let a=0,S=[];for(;a<n&&this._buffer.length>0;){let C=this._buffer[0],N=chunkLength(C);if(a+N<=n)S.push(this._buffer.shift()),a+=N,this.readableLength-=N;else{let N=n-a;S.push(sliceChunk(C,0,N)),this._buffer[0]=sliceChunk(C,N),this.readableLength-=N,a+=N}}if(S.length===1)return S[0];let C=globalThis.Buffer;return C?.concat?C.concat(S):S}push(n,a){if(n===null)return this._readableState.ended=!0,this.readableEnded=!0,this._buffer.length===0&&!this._readableState.endEmitted&&nextTick(()=>this._emitEnd()),this._scheduleReadable(),!1;if(!this.readableObjectMode&&!(typeof n==`string`||ArrayBuffer.isView(n))){let a=Object.assign(TypeError(`Invalid non-string/buffer chunk type: ${typeof n}`),{code:`ERR_INVALID_ARG_TYPE`});return nextTick(()=>this.emit(`error`,a)),!1}return this._buffer.push(n),this.readableLength+=this.readableObjectMode?1:chunkLength(n),this.readableFlowing&&!this._flowing&&nextTick(()=>this._flow()),this.readableFlowing!==!0&&this._scheduleReadable(),this.readableLength<this.readableHighWaterMark}_emitEnd(){this._readableState.endEmitted||(this._readableState.endEmitted=!0,this.emit(`end`),nextTick(()=>this._autoClose()))}_autoClose(){this.emit(`close`)}_scheduleReadable(){this._readablePending||this.listenerCount(`readable`)===0||(this._readablePending=!0,nextTick(()=>{this._readablePending=!1,this.destroyed||this.emit(`readable`)}))}on(n,a){return super.on(n,a),n===`data`&&this.readableFlowing!==!1&&this.resume(),n===`readable`&&(this._buffer.length>0||this._readableState.ended)&&this._scheduleReadable(),this}unshift(n){this._buffer.unshift(n),this.readableLength+=this.readableObjectMode?1:chunkLength(n)}setEncoding(n){return this.readableEncoding=n,this}pause(){return this.readableFlowing=!1,this.emit(`pause`),this}resume(){return this.readableFlowing!==!0&&(this.readableFlowing=!0,this.emit(`resume`),this._readableState.constructed&&this._flow()),this}_flowing=!1;_flow(){if(!(this.readableFlowing!==!0||this._flowing||this.destroyed)&&this._readableState.constructed){this._flowing=!0;try{for(;this._buffer.length>0&&this.readableFlowing&&!this.destroyed;){let n=this._buffer.shift();if(this.readableLength-=this.readableObjectMode?1:chunkLength(n),this.readableEncoding&&typeof n!=`string`){let a=globalThis.Buffer;a?.isBuffer&&a.isBuffer(n)?n=n.toString(this.readableEncoding):n instanceof Uint8Array&&(n=new TextDecoder(this.readableEncoding).decode(n))}this.emit(`data`,n)}if(this.destroyed)return;if(this._readableState.ended&&this._buffer.length===0&&!this._readableState.endEmitted){nextTick(()=>this._emitEnd());return}!this._readableState.ended&&!this._readableState.reading&&!this.destroyed&&(this._readableState.reading=!0,this._read(this.readableHighWaterMark),this._readableState.reading=!1)}finally{this._flowing=!1}this._buffer.length>0&&this.readableFlowing&&!this.destroyed&&nextTick(()=>this._flow())}}isPaused(){return this.readableFlowing===!1}unpipe(n){if(n){let a=this._pipeDests.findIndex(a=>a.dest===n);if(a!==-1){this._pipeDests[a].cleanup(),this._pipeDests.splice(a,1);let S=this._readableState.pipes.indexOf(n);S!==-1&&this._readableState.pipes.splice(S,1),n.emit(`unpipe`,this),this._pipeDests.length===0&&(this.readableFlowing=!1)}}else{for(let n of this._pipeDests)n.cleanup(),n.dest.emit(`unpipe`,this);this._pipeDests=[],this._readableState.pipes=[],this.readableFlowing=!1}return this}_destroy(n,a){this._destroyImpl?this._destroyImpl.call(this,n,a):a(n??void 0)}destroy(n){if(this.destroyed)return this;this.destroyed=!0,this.readable=!1,this.readableAborted=!this.readableEnded,n&&(this._err=n);let cb=n=>{n&&nextTick(()=>this.emit(`error`,n)),nextTick(()=>this.emit(`close`))};return Object.prototype.hasOwnProperty.call(this,`_destroy`)?this._destroy(n??null,cb):this._destroyImpl?this._destroyImpl.call(this,n??null,cb):cb(n),this}static toWeb(n){return new ReadableStream({start(a){n.on(`data`,n=>{typeof n==`string`?a.enqueue(new TextEncoder().encode(n)):n instanceof Uint8Array?a.enqueue(n):n&&typeof n.length==`number`&&a.enqueue(new Uint8Array(n))}),n.on(`end`,()=>{a.close()}),n.on(`error`,n=>{a.error(n)})},cancel(){n.destroy()}})}static fromWeb(n,a){let S=n.getReader();return new Readable_({...a,read(){S.read().then(({done:n,value:a})=>{n?this.push(null):this.push(a)},n=>{this.destroy(n)})},destroy(n,a){S.cancel(n?.message).then(()=>a(null),a)}})}[Symbol.asyncIterator](){let n=this,a=[],S=!1,C=null,N=null,F=null;return n.on(`data`,n=>{if(N){let a=N;N=null,F=null,a({value:n,done:!1})}else a.push(n)}),n.on(`end`,()=>{if(S=!0,N){let n=N;N=null,F=null,n({value:void 0,done:!0})}}),n.on(`error`,n=>{if(C=n,S=!0,F){let a=F;N=null,F=null,a(n)}}),{next(){return C?Promise.reject(C):a.length>0?Promise.resolve({value:a.shift(),done:!1}):S?Promise.resolve({value:void 0,done:!0}):new Promise((n,a)=>{N=n,F=a})},return(){return n.destroy(),Promise.resolve({value:void 0,done:!0})},[Symbol.asyncIterator](){return this}}}static from(n,a){let S=new Readable_({objectMode:!0,...a,read(){}});return typeof n==`string`||ArrayBuffer.isView(n)?(S.push(n),S.push(null),S):((async()=>{try{for await(let a of n)S.push(a)||await new Promise(n=>S.once(`drain`,n));S.push(null)}catch(n){S.destroy(n)}})(),S)}}});function chunkLen$1(n){if(n==null)return 1;let a=n.length;return typeof a==`number`?a:1}var Duplex_,zr=__esmMin(()=>{Ir(),Rr(),Xe(),Duplex_=class extends Lr{writable=!0;writableHighWaterMark;writableLength=0;writableObjectMode;writableEnded=!1;writableFinished=!1;writableCorked=0;writableNeedDrain=!1;allowHalfOpen;_decodeStrings;_writableState={highWaterMark:0,objectMode:!1};_duplexCorkedBuffer=[];_duplexWriting=!1;_duplexWriteQueue=[];_writeImpl;_finalImpl;_defaultEncoding=`utf8`;_pendingWrites=0;_pendingEndCb=null;constructor(n){super(n),validateHighWaterMark(`writableHighWaterMark`,n?.writableHighWaterMark),validateHighWaterMark(`readableHighWaterMark`,n?.readableHighWaterMark),this.writableObjectMode=n?.writableObjectMode??n?.objectMode??!1,this.writableHighWaterMark=n?.highWaterMark??n?.writableHighWaterMark??getDefaultHighWaterMark(this.writableObjectMode),this._writableState.highWaterMark=this.writableHighWaterMark,this._writableState.objectMode=this.writableObjectMode,n?.highWaterMark===void 0&&n?.readableHighWaterMark!==void 0&&(this.readableHighWaterMark=n.readableHighWaterMark,this._readableState.highWaterMark=n.readableHighWaterMark),n?.readableObjectMode!==void 0&&(this.readableObjectMode=n.readableObjectMode,this._readableState.objectMode=n.readableObjectMode,n?.readableHighWaterMark===void 0&&n?.highWaterMark===void 0&&(this.readableHighWaterMark=getDefaultHighWaterMark(n.readableObjectMode),this._readableState.highWaterMark=this.readableHighWaterMark)),this.allowHalfOpen=n?.allowHalfOpen!==!1,this._decodeStrings=n?.decodeStrings!==!1,n?.write&&(this._writeImpl=n.write),n?.final&&(this._finalImpl=n.final),this.allowHalfOpen||this.once(`end`,()=>{this.writableEnded||nextTick(()=>this.end())})}_write(n,a,S){this._writeImpl?this._writeImpl.call(this,n,a,S):S()}_final(n){this._finalImpl?this._finalImpl.call(this,n):n()}destroy(n){return this.destroyed?this:(this.writable=!1,super.destroy(n))}write(n,a,S){let C,N;if(typeof a==`function`?(C=a,N=this._defaultEncoding):(N=a??this._defaultEncoding,C=S??(()=>{})),this._decodeStrings&&!this.writableObjectMode&&typeof n==`string`){let a=globalThis.Buffer;a&&(n=a.from(n,N),N=`buffer`)}if(typeof n!=`string`&&!this.writableObjectMode){let a=globalThis.Buffer;(a&&a.isBuffer(n)||n instanceof Uint8Array)&&(N=`buffer`)}if(this.writableEnded){let n=Error(`write after end`);return nextTick(()=>{C(n),this.emit(`error`,n)}),!1}if(this.writableLength+=this.writableObjectMode?1:chunkLen$1(n),this.writableCorked>0)return this._duplexCorkedBuffer.push({chunk:n,encoding:N,callback:C}),this.writableLength<this.writableHighWaterMark;let F=this.writableLength<this.writableHighWaterMark;return F||(this.writableNeedDrain=!0),this._duplexDoWrite(n,N,C),F}_duplexDoWrite(n,a,S){if(this._duplexWriting){this._duplexWriteQueue.push({chunk:n,encoding:a,callback:S});return}this._duplexWriting=!0,this._duplexStartWrite(n,a,S)}_duplexStartWrite(n,a,S){this._pendingWrites++,this._write(n,a,a=>{this._pendingWrites--,this.writableLength-=this.writableObjectMode?1:chunkLen$1(n),nextTick(a?()=>{if(S(a),this._duplexWriting=!1,this.emit(`error`,a),this._duplexWriteQueue.length>0){let n=this._duplexWriteQueue.shift();this._duplexWriting=!0,this._duplexStartWrite(n.chunk,n.encoding,n.callback)}}:()=>{if(S(),this._duplexWriteQueue.length>0){let n=this._duplexWriteQueue.shift();this._duplexStartWrite(n.chunk,n.encoding,n.callback);return}if(this._duplexWriting=!1,this.writableNeedDrain&&this.writableLength<=this.writableHighWaterMark&&(this.writableNeedDrain=!1,this.emit(`drain`)),this._pendingWrites===0&&this._pendingEndCb){let n=this._pendingEndCb;this._pendingEndCb=null,n()}})})}end(n,a,S){typeof n==`function`&&(S=n,n=void 0),typeof a==`function`&&(S=a,a=void 0),n!=null&&this.write(n,a),this.writableEnded=!0;let doFinal=()=>{this._final(n=>{this.writableFinished=!0,this._doPrefinishHooks(()=>{nextTick(()=>{n&&this.emit(`error`,n),this.emit(`finish`),nextTick(()=>this.emit(`close`)),S&&S()})})})};return this._pendingWrites>0||this._duplexWriting||this._duplexWriteQueue.length>0?this._pendingEndCb=doFinal:doFinal(),this}_doPrefinishHooks(n){n()}cork(){this.writableCorked++}uncork(){if(this.writableCorked>0&&(this.writableCorked--,this.writableCorked===0&&this._duplexCorkedBuffer.length>0)){let n=this._duplexCorkedBuffer.splice(0);for(let{chunk:a,encoding:S,callback:C}of n)this._write(a,S,n=>{this.writableLength-=this.writableObjectMode?1:chunkLen$1(a),n?(C(n),this.emit(`error`,n)):C()});this.writableNeedDrain&&this.writableLength<=this.writableHighWaterMark&&(this.writableNeedDrain=!1,nextTick(()=>this.emit(`drain`)))}}setDefaultEncoding(n){return this._defaultEncoding=n,this}},__name$1(chunkLen$1,`chunkLen`)});function pipe(n,a,S){let C=n,N=S?.end!==!1,F=!1,ondrain=()=>{F=!1,a.removeListener(`drain`,ondrain);let n=C;typeof n.resume==`function`&&n.resume()},ondata=n=>{if(a.writable){let S=C;a.write(n)===!1&&typeof S.pause==`function`&&(S.pause(),F||(F=!0,a.on(`drain`,ondrain)))}};C.on(`data`,ondata);let I=!1,onend=()=>{I||(I=!0,N&&a.end())},onclose=()=>{if(!I&&(I=!0,N&&!(C instanceof Lr))){let n=a;typeof n.destroy==`function`&&n.destroy()}};N&&(C.on(`end`,onend),C.on(`close`,onclose));let cleanup=()=>{C.removeListener(`data`,ondata),F&&a.removeListener(`drain`,ondrain),C.removeListener(`end`,onend),C.removeListener(`close`,onclose),C.removeListener(`end`,cleanup),C.removeListener(`close`,cleanup),a.removeListener(`close`,cleanup)};return C.on(`end`,cleanup),C.on(`close`,cleanup),a.on(`close`,cleanup),C instanceof Lr&&(C._pipeDests.push({dest:a,cleanup}),C._readableState.pipes.push(a)),a.emit(`pipe`,C),a}var Br=__esmMin(()=>{Nr(),Rr(),_setPipeImpl(pipe)});function chunkLen(n){if(n==null)return 1;let a=n.length;return typeof a==`number`?a:1}var Vr,Hr=__esmMin(()=>{Nr(),Ir(),Xe(),Vr=class Writable_ extends Stream_{static[Symbol.hasInstance](n){let a=this;return a.prototype!==void 0&&Object.prototype.isPrototypeOf.call(a.prototype,n)?!0:a.prototype!==Writable_.prototype||n==null?!1:typeof n.writableHighWaterMark==`number`}writable=!0;writableHighWaterMark;writableLength=0;writableObjectMode;writableEnded=!1;writableFinished=!1;writableCorked=0;writableNeedDrain=!1;destroyed=!1;_err;_writableState={ended:!1,finished:!1,constructed:!0,writing:!1};_corkedBuffer=[];_writeBuffer=[];_pendingConstruct=[];_ending=!1;_endCallback;_pendingEnd=null;_writeImpl;_writev;_finalImpl;_destroyImpl;_constructImpl;_decodeStrings;_defaultEncoding=`utf8`;constructor(n){super(n),this.writableHighWaterMark=n?.highWaterMark??getDefaultHighWaterMark(n?.objectMode??!1),this.writableObjectMode=n?.objectMode??!1,this._decodeStrings=n?.decodeStrings!==!1,n?.write&&(this._writeImpl=n.write),n?.writev&&(this._writev=n.writev),n?.final&&(this._finalImpl=n.final),n?.destroy&&(this._destroyImpl=n.destroy),n?.construct&&(this._constructImpl=n.construct),(this._constructImpl||this._construct!==Writable_.prototype._construct)&&(this._writableState.constructed=!1,nextTick(()=>{this._construct(n=>{this._writableState.constructed=!0,n?this.destroy(n):this._maybeFlush()})}))}_construct(n){this._constructImpl?this._constructImpl.call(this,n):n()}_write(n,a,S){this._writeImpl?this._writeImpl.call(this,n,a,S):S()}_final(n){this._finalImpl?this._finalImpl.call(this,n):n()}_destroy(n,a){this._destroyImpl?this._destroyImpl.call(this,n,a):a(n)}_maybeFlush(){let n=this._pendingConstruct.splice(0);if(n.length>0){let[a,...S]=n;this._writeBuffer.push(...S),this._doWrite(a.chunk,a.encoding,a.callback)}if(this._pendingEnd){let{chunk:n,encoding:a,callback:S}=this._pendingEnd;this._pendingEnd=null,this._doEnd(n,a,S)}}_doWrite(n,a,S){this._writableState.writing=!0;let C=!0;this._write(n,a,a=>{if(this.writableLength-=this.writableObjectMode?1:chunkLen(n),C){nextTick(()=>{if(a){S(a),this.emit(`error`,a);return}S(),this.writableNeedDrain&&this.writableLength<=this.writableHighWaterMark&&(this.writableNeedDrain=!1,this.emit(`drain`))}),a||this._drainWriteBuffer();return}nextTick(a?()=>{S(a),this.emit(`error`,a),this._drainWriteBuffer()}:()=>{S(),this.writableNeedDrain&&this.writableLength<=this.writableHighWaterMark&&(this.writableNeedDrain=!1,this.emit(`drain`)),this._drainWriteBuffer()})}),C=!1}_drainWriteBuffer(){if(this._writeBuffer.length>0){let n=this._writeBuffer.shift();this._doWrite(n.chunk,n.encoding,n.callback)}else this._writableState.writing=!1,this._maybeFinish()}_maybeFinish(){!this._ending||this._writableState.finished||this._writableState.writing||this._writeBuffer.length>0||(this._ending=!1,this._final(n=>{this.writableFinished=!0,this._writableState.finished=!0,nextTick(()=>{n&&this.emit(`error`,n),this.emit(`finish`),nextTick(()=>this.emit(`close`)),this._endCallback&&this._endCallback()})}))}write(n,a,S){let C,N;if(typeof a==`function`?(C=a,N=this._defaultEncoding):(N=a??this._defaultEncoding,C=S??(()=>{})),this._decodeStrings&&!this.writableObjectMode&&typeof n==`string`){let a=globalThis.Buffer;a&&(n=a.from(n,N),N=`buffer`)}if(typeof n!=`string`&&!this.writableObjectMode){let a=globalThis.Buffer;(a&&a.isBuffer(n)||n instanceof Uint8Array)&&(N=`buffer`)}if(this.writableEnded){let n=Error(`write after end`);return nextTick(()=>{C(n),this.emit(`error`,n)}),!1}if(this.writableLength+=this.writableObjectMode?1:chunkLen(n),this.writableCorked>0)return this._corkedBuffer.push({chunk:n,encoding:N,callback:C}),this.writableLength<this.writableHighWaterMark;if(!this._writableState.constructed)return this._pendingConstruct.push({chunk:n,encoding:N,callback:C}),this.writableLength<this.writableHighWaterMark;let F=this.writableLength<this.writableHighWaterMark;return F||(this.writableNeedDrain=!0),this._writableState.writing?this._writeBuffer.push({chunk:n,encoding:N,callback:C}):this._doWrite(n,N,C),F}_doEnd(n,a,S){n!=null&&this.write(n,a),this.writableEnded=!0,this._writableState.ended=!0,this._ending=!0,this._endCallback=S,this._maybeFinish()}end(n,a,S){return typeof n==`function`&&(S=n,n=void 0),typeof a==`function`&&(S=a,a=void 0),this.writableEnded?(S&&nextTick(S),this):this._writableState.constructed?(this._doEnd(n,a,S),this):(this._pendingEnd={chunk:n,encoding:a,callback:S},this)}cork(){this.writableCorked++}uncork(){this.writableCorked>0&&(this.writableCorked--,this.writableCorked===0&&this._corkedBuffer.length>0&&this._flushCorkedBuffer())}_flushCorkedBuffer(){if(this._writev&&this._corkedBuffer.length>1){let n=this._corkedBuffer.splice(0),a=n.map(n=>({chunk:n.chunk,encoding:n.encoding}));this._writev.call(this,a,a=>{for(let a of n)this.writableLength-=this.writableObjectMode?1:chunkLen(a.chunk);if(a){for(let S of n)S.callback(a);this.emit(`error`,a)}else{for(let a of n)a.callback();this.writableNeedDrain&&this.writableLength<=this.writableHighWaterMark&&(this.writableNeedDrain=!1,this.emit(`drain`))}})}else{let n=this._corkedBuffer.splice(0);if(n.length>0){let[a,...S]=n;this._writeBuffer.push(...S),this._doWrite(a.chunk,a.encoding,a.callback)}}}setDefaultEncoding(n){return this._defaultEncoding=n,this}destroy(n){if(this.destroyed)return this;this.destroyed=!0,this.writable=!1,n&&(this._err=n);let cb=n=>{n&&nextTick(()=>this.emit(`error`,n)),nextTick(()=>this.emit(`close`))};return this._destroy(n??null,cb),this}}}),Ur,Wr=__esmMin(()=>{zr(),Xe(),Ur=class Transform_ extends Duplex_{constructor(n){super({...n,write:void 0,final:void 0});let a=this;n?.transform&&(a._transform=n.transform),n?.flush&&(a._flush=n.flush),n?.final&&(a._final=n.final)}_transform(n,a,S){throw Object.assign(Error(`The _transform() method is not implemented`),{code:`ERR_METHOD_NOT_IMPLEMENTED`})}_flush(n){n()}_write(n,a,S){let C=!1;try{this._transform(n,a,(n,a)=>{if(C){let n=Object.assign(Error(`Callback called multiple times`),{code:`ERR_MULTIPLE_CALLBACK`});nextTick(()=>this.emit(`error`,n));return}if(C=!0,n){S(n);return}a!=null&&this.push(a),S()})}catch(n){if(n?.code===`ERR_METHOD_NOT_IMPLEMENTED`)throw n;S(n)}}_final(n){this._flush((a,S)=>{if(a){n(a);return}S!=null&&this.push(S),this.push(null),n()})}_doPrefinishHooks(n){let a=Transform_.prototype._final;this._final===a?n():a.call(this,n)}}}),PassThrough_,Gr=__esmMin(()=>{Wr(),PassThrough_=class extends Ur{constructor(n){super({...n,transform(n,a,S){S(null,n)}})}}});function pipeline(...n){let a=n,S=typeof a[a.length-1]==`function`?a.pop():void 0,C=a;if(C.length<2)throw Error(`pipeline requires at least 2 streams`);let N=null;function onError(n){if(!N){N=n;for(let n of C)typeof n.destroy==`function`&&n.destroy();S&&S(n)}}let F=C[0];for(let n=1;n<C.length;n++){let a=C[n];F.pipe(a),F.on(`error`,onError),F=a}let I=C[C.length-1];return I.on(`error`,onError),I.on(`finish`,()=>{S&&!N&&S(null)}),I}var Kr=__esmMin(()=>{});function finished$1(n,a,S){let C;C=typeof a==`function`?a:S;let N=!1;function done(n){N||(N=!0,C(n))}let onFinish=()=>done(),onEnd=()=>done(),onError=n=>done(n),onClose=()=>{let a=n,S=n;!a.writableFinished&&!S.readableEnded&&done(Error(`premature close`))};n.on(`finish`,onFinish),n.on(`end`,onEnd),n.on(`error`,onError),n.on(`close`,onClose);let F=n,I=typeof n.write==`function`,H=typeof n.read==`function`,W=F.writableFinished===!0,K=F.readableEnded===!0;if(F.destroyed===!0){let n=F._err;Me(n?()=>done(n):I&&W||H&&K?()=>done():()=>done(Error(`premature close`)))}else (I&&!H&&W||!I&&H&&K||I&&H&&W&&K)&&Me(()=>done());return function cleanup(){n.removeListener(`finish`,onFinish),n.removeListener(`end`,onEnd),n.removeListener(`error`,onError),n.removeListener(`close`,onClose)}}function addAbortSignal(n,a){if(!(n instanceof AbortSignal))throw TypeError(`The first argument must be an AbortSignal`);if(!(a instanceof Stream_))throw TypeError(`The second argument must be a Stream`);let S=a;if(n.aborted)S.destroy(Error(`The operation was aborted`));else{let onAbort=()=>{S.destroy(Error(`The operation was aborted`))};n.addEventListener(`abort`,onAbort,{once:!0}),a.once(`close`,()=>{n.removeEventListener(`abort`,onAbort)})}return a}function isReadable(n){if(n==null)return!1;let a=n;return typeof a.readable!=`boolean`||typeof a.read!=`function`||a.destroyed===!0||a.readableEnded===!0?!1:a.readable===!0}function isWritable(n){if(n==null)return!1;let a=n;return typeof a.writable!=`boolean`||typeof a.write!=`function`||a.destroyed===!0||a.writableEnded===!0?!1:a.writable===!0}function isDestroyed(n){return n==null?!1:n.destroyed===!0}function isDisturbed(n){if(n==null)return!1;let a=n;return a.readableDidRead===!0||a.readableFlowing!==null&&a.readableFlowing!==void 0}function isErrored(n){if(n==null)return!1;let a=n;return a.destroyed===!0&&typeof a.readable==`boolean`&&a.readable===!1||a.destroyed===!0&&typeof a.writable==`boolean`&&a.writable===!1}var qr=__esmMin(()=>{Nr(),Xe(),__name$1(finished$1,`finished`)}),Jr=__exportAll$3({Duplex:()=>Qr,PassThrough:()=>ei,Readable:()=>Xr,Stream:()=>Yr,Transform:()=>$r,Writable:()=>Zr,addAbortSignal:()=>addAbortSignal,default:()=>ti,finished:()=>finished$1,getDefaultHighWaterMark:()=>getDefaultHighWaterMark,isDestroyed:()=>isDestroyed,isDisturbed:()=>isDisturbed,isErrored:()=>isErrored,isReadable:()=>isReadable,isWritable:()=>isWritable,pipeline:()=>pipeline,setDefaultHighWaterMark:()=>setDefaultHighWaterMark}),Yr,Xr,Zr,Qr,$r,ei,ti,ni=__esmMin(()=>{jr(),Nr(),Ir(),Rr(),zr(),Br(),Hr(),Wr(),Gr(),Kr(),qr(),Yr=makeCallable(Stream_),Xr=makeCallable(Lr),Zr=makeCallable(Vr),Qr=makeCallable(Duplex_),$r=makeCallable(Ur),ei=makeCallable(PassThrough_),ti=Object.assign(Yr,{Stream:Yr,Readable:Xr,Writable:Zr,Duplex:Qr,Transform:$r,PassThrough:ei,pipeline,finished:finished$1,addAbortSignal,isReadable,isWritable,isDestroyed,isDisturbed,isErrored,getDefaultHighWaterMark,setDefaultHighWaterMark})});function getGioCompressorFormat(n){switch(n){case`gzip`:return me.ZlibCompressorFormat.GZIP;case`deflate`:return me.ZlibCompressorFormat.ZLIB;case`deflate-raw`:return me.ZlibCompressorFormat.RAW}}function toUint8Array$2(n){return typeof n==`string`?new TextEncoder().encode(n):new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}function concat(n){let a=n.reduce((n,a)=>n+a.length,0),S=new Uint8Array(a),C=0;for(let a of n)S.set(a,C),C+=a.length;return S}function compressWithGio$1(n,a){let S=new me.ZlibCompressor({format:getGioCompressorFormat(a)}),C=new me.ConverterOutputStream({base_stream:me.MemoryOutputStream.new_resizable(),converter:S});C.write_bytes(new Z.Bytes(n),null),C.close(null);let N=C.get_base_stream().steal_as_bytes();return new Uint8Array(N.get_data()??[])}function decompressMemberWithGio(n,a){let S=new me.ZlibDecompressor({format:getGioCompressorFormat(a)}),C=me.MemoryInputStream.new_from_bytes(new Z.Bytes(n)),N=new me.ConverterInputStream({base_stream:C,converter:S}),F=[];for(;;){let n=N.read_bytes(4096,null);if(n.get_size()===0)break;F.push(new Uint8Array(n.get_data()))}return N.close(null),concat(F)}function findGzipMemberEnd$1(n){let a=new me.ZlibDecompressor({format:me.ZlibCompressorFormat.GZIP}),S=new Uint8Array(65536),C=0,N=!1;for(;!N;){let F=n.subarray(C);try{let[n,I]=a.convert(F,S,me.ConverterFlags.NONE);C+=I,n===me.ConverterResult.FINISHED&&(N=!0)}catch{N=!0}}return C}function gunzipWithGio(n){let a=[],S=0;for(;S<n.length&&!(n.length-S<2||n[S]!==31||n[S+1]!==139);){let C=n.subarray(S),N=findGzipMemberEnd$1(C);if(N<=0)break;a.push(decompressMemberWithGio(C.subarray(0,N),`gzip`)),S+=N}return a.length===0?decompressMemberWithGio(n,`gzip`):concat(a)}function createGzip(n){return new Gzip(n)}function createGunzip(n){return new Gunzip(n)}function createDeflate(n){return new Deflate(n)}function createInflate(n){return new Inflate(n)}function createDeflateRaw(n){return new DeflateRaw(n)}function createInflateRaw(n){return new InflateRaw(n)}function createUnzip(n){return new Unzip(n)}function createBrotliCompress(n){throw Error(`createBrotliCompress is not supported on GJS (no Brotli in GLib)`)}function createBrotliDecompress(n){throw Error(`createBrotliDecompress is not supported on GJS (no Brotli in GLib)`)}function createZstdCompress(n){let a=Error(`createZstdCompress is not supported on GJS (no Zstd in GLib)`);throw a.code=`ERR_UNSUPPORTED_OPERATION`,a}function createZstdDecompress(n){let a=Error(`createZstdDecompress is not supported on GJS (no Zstd in GLib)`);throw a.code=`ERR_UNSUPPORTED_OPERATION`,a}var ZlibBase,Gzip,Gunzip,Deflate,Inflate,DeflateRaw,InflateRaw,Unzip,BrotliCompress,BrotliDecompress,ZstdCompress,ZstdDecompress,ri=__esmMin(()=>{he(),se(),ni(),__name$1(toUint8Array$2,`toUint8Array`),__name$1(compressWithGio$1,`compressWithGio`),__name$1(findGzipMemberEnd$1,`findGzipMemberEnd`),ZlibBase=class extends $r{_mode;_chunks=[];constructor(n,a){super(a),this._mode=n}_transform(n,a,S){this._chunks.push(toUint8Array$2(n)),S()}_flush(n){let a=concat(this._chunks);this._chunks=[];try{this.push(Buffer.from(this._run(a))),n()}catch(a){n(a instanceof Error?a:Error(String(a)))}}_run(n){let a=this._mode;switch(a.kind){case`compress`:return compressWithGio$1(n,a.format);case`decompress`:return decompressMemberWithGio(n,a.format);case`gunzip`:return gunzipWithGio(n);case`unzip`:return n.length>=2&&n[0]===31&&n[1]===139?gunzipWithGio(n):decompressMemberWithGio(n,`deflate`)}}},Gzip=class extends ZlibBase{constructor(n){super({kind:`compress`,format:`gzip`},n)}},Gunzip=class extends ZlibBase{constructor(n){super({kind:`gunzip`},n)}},Deflate=class extends ZlibBase{constructor(n){super({kind:`compress`,format:`deflate`},n)}},Inflate=class extends ZlibBase{constructor(n){super({kind:`decompress`,format:`deflate`},n)}},DeflateRaw=class extends ZlibBase{constructor(n){super({kind:`compress`,format:`deflate-raw`},n)}},InflateRaw=class extends ZlibBase{constructor(n){super({kind:`decompress`,format:`deflate-raw`},n)}},Unzip=class extends ZlibBase{constructor(n){super({kind:`unzip`},n)}},BrotliCompress=class extends $r{constructor(){throw super(),Error(`BrotliCompress is not supported on GJS (no Brotli in GLib)`)}},BrotliDecompress=class extends $r{constructor(){throw super(),Error(`BrotliDecompress is not supported on GJS (no Brotli in GLib)`)}},ZstdCompress=class extends $r{constructor(){super();let n=Error(`ZstdCompress is not supported on GJS (no Zstd in GLib)`);throw n.code=`ERR_UNSUPPORTED_OPERATION`,n}},ZstdDecompress=class extends $r{constructor(){super();let n=Error(`ZstdDecompress is not supported on GJS (no Zstd in GLib)`);throw n.code=`ERR_UNSUPPORTED_OPERATION`,n}}}),ii=__exportAll$3({BrotliCompress:()=>BrotliCompress,BrotliDecompress:()=>BrotliDecompress,Deflate:()=>Deflate,DeflateRaw:()=>DeflateRaw,Gunzip:()=>Gunzip,Gzip:()=>Gzip,Inflate:()=>Inflate,InflateRaw:()=>InflateRaw,Unzip:()=>Unzip,ZlibTransform:()=>ZlibBase,ZstdCompress:()=>ZstdCompress,ZstdDecompress:()=>ZstdDecompress,brotliCompress:()=>brotliCompress,brotliCompressSync:()=>brotliCompressSync,brotliDecompress:()=>brotliDecompress,brotliDecompressSync:()=>brotliDecompressSync,constants:()=>si,createBrotliCompress:()=>createBrotliCompress,createBrotliDecompress:()=>createBrotliDecompress,createDeflate:()=>createDeflate,createDeflateRaw:()=>createDeflateRaw,createGunzip:()=>createGunzip,createGzip:()=>createGzip,createInflate:()=>createInflate,createInflateRaw:()=>createInflateRaw,createUnzip:()=>createUnzip,createZstdCompress:()=>createZstdCompress,createZstdDecompress:()=>createZstdDecompress,default:()=>ci,deflate:()=>deflate,deflateRaw:()=>deflateRaw,deflateRawSync:()=>deflateRawSync,deflateSync:()=>deflateSync,gunzip:()=>gunzip$1,gunzipSync:()=>gunzipSync,gzip:()=>gzip$1,gzipSync:()=>gzipSync,inflate:()=>inflate,inflateRaw:()=>inflateRaw,inflateRawSync:()=>inflateRawSync,inflateSync:()=>inflateSync,zstdCompress:()=>zstdCompress,zstdCompressSync:()=>zstdCompressSync,zstdDecompress:()=>zstdDecompress,zstdDecompressSync:()=>zstdDecompressSync});function getGioFormat(n){switch(n){case`gzip`:return me.ZlibCompressorFormat.GZIP;case`deflate`:return me.ZlibCompressorFormat.ZLIB;case`deflate-raw`:return me.ZlibCompressorFormat.RAW}}function compressWithGio(n,a){let S=new me.ZlibCompressor({format:getGioFormat(a)}),C=new me.ConverterOutputStream({base_stream:me.MemoryOutputStream.new_resizable(),converter:S});C.write_bytes(new Z.Bytes(n),null),C.close(null);let N=C.get_base_stream().steal_as_bytes();return new Uint8Array(N.get_data()??[])}function decompressStreamWithGio(n,a){let S=new me.ZlibDecompressor({format:getGioFormat(a)}),C=me.MemoryInputStream.new_from_bytes(new Z.Bytes(n)),N=new me.ConverterInputStream({base_stream:C,converter:S}),F=[];for(;;){let n=N.read_bytes(4096,null);if(n.get_size()===0)break;F.push(new Uint8Array(n.get_data()))}N.close(null);let I=F.reduce((n,a)=>n+a.length,0),H=new Uint8Array(I),W=0;for(let n of F)H.set(n,W),W+=n.length;return H}function findGzipMemberEnd(n){let a=new me.ZlibDecompressor({format:me.ZlibCompressorFormat.GZIP}),S=new Uint8Array(65536),C=0,N=!1;for(;!N;){let F=n.subarray(C);try{let[n,I]=a.convert(F,S,me.ConverterFlags.NONE);C+=I,n===me.ConverterResult.FINISHED&&(N=!0)}catch{N=!0}}return C}function decompressWithGio(n,a){if(a!==`gzip`)return decompressStreamWithGio(n,a);let S=[],C=0;for(;C<n.length&&!(n.length-C<2||n[C]!==31||n[C+1]!==139);){let a=n.subarray(C),N=findGzipMemberEnd(a);if(N<=0)break;let F=decompressStreamWithGio(a.subarray(0,N),`gzip`);S.push(F),C+=N}if(S.length===0)return decompressStreamWithGio(n,`gzip`);let N=S.reduce((n,a)=>n+a.length,0),F=new Uint8Array(N),I=0;for(let n of S)F.set(n,I),I+=n.length;return F}async function runWebTransform(n,a){let S=new ReadableStream({start(a){a.enqueue(new Uint8Array(n.buffer,n.byteOffset,n.byteLength)),a.close()}}),C=[],N=S.pipeThrough(a).getReader();for(;;){let{done:n,value:a}=await N.read();if(n)break;C.push(a)}let F=C.reduce((n,a)=>n+a.length,0),I=new Uint8Array(F),H=0;for(let n of C)I.set(n,H),H+=n.length;return I}async function compressWithWeb(n,a){return runWebTransform(n,new CompressionStream(a))}async function decompressWithWeb(n,a){return runWebTransform(n,new DecompressionStream(a))}async function compress(n,a){return ai?compressWithWeb(n,a):compressWithGio(n,a)}async function decompress(n,a){return ai?decompressWithWeb(n,a):decompressWithGio(n,a)}function toUint8Array$1(n){return typeof n==`string`?new TextEncoder().encode(n):n instanceof ArrayBuffer?new Uint8Array(n):n}function gzip$1(n,a,S){let C=typeof a==`function`?a:S;compress(toUint8Array$1(n),`gzip`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function gunzip$1(n,a,S){let C=typeof a==`function`?a:S;decompress(toUint8Array$1(n),`gzip`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function deflate(n,a,S){let C=typeof a==`function`?a:S;compress(toUint8Array$1(n),`deflate`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function inflate(n,a,S){let C=typeof a==`function`?a:S;decompress(toUint8Array$1(n),`deflate`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function deflateRaw(n,a,S){let C=typeof a==`function`?a:S;compress(toUint8Array$1(n),`deflate-raw`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function inflateRaw(n,a,S){let C=typeof a==`function`?a:S;decompress(toUint8Array$1(n),`deflate-raw`).then(n=>C(null,n),n=>C(n instanceof Error?n:Error(String(n)),new Uint8Array))}function gzipSync(n,a){return compressWithGio(toUint8Array$1(n),`gzip`)}function gunzipSync(n,a){return decompressWithGio(toUint8Array$1(n),`gzip`)}function deflateSync(n,a){return compressWithGio(toUint8Array$1(n),`deflate`)}function inflateSync(n,a){return decompressWithGio(toUint8Array$1(n),`deflate`)}function deflateRawSync(n,a){return compressWithGio(toUint8Array$1(n),`deflate-raw`)}function inflateRawSync(n,a){return decompressWithGio(toUint8Array$1(n),`deflate-raw`)}function brotliCompress(n,a,S){(typeof a==`function`?a:S)(Error(`brotliCompress: Brotli is not supported in this environment`),oi)}function brotliDecompress(n,a,S){(typeof a==`function`?a:S)(Error(`brotliDecompress: Brotli is not supported in this environment`),oi)}function brotliCompressSync(n,a){throw Error(`brotliCompressSync: Brotli is not supported in this environment`)}function brotliDecompressSync(n,a){throw Error(`brotliDecompressSync: Brotli is not supported in this environment`)}function zstdCompress(n,a,S){let C=typeof a==`function`?a:S,N=Error(`zstdCompress: Zstd is not supported in this environment`);N.code=`ERR_UNSUPPORTED_OPERATION`,C(N,oi)}function zstdDecompress(n,a,S){let C=typeof a==`function`?a:S,N=Error(`zstdDecompress: Zstd is not supported in this environment`);N.code=`ERR_UNSUPPORTED_OPERATION`,C(N,oi)}function zstdCompressSync(n,a){let S=Error(`zstdCompressSync: Zstd is not supported in this environment`);throw S.code=`ERR_UNSUPPORTED_OPERATION`,S}function zstdDecompressSync(n,a){let S=Error(`zstdDecompressSync: Zstd is not supported in this environment`);throw S.code=`ERR_UNSUPPORTED_OPERATION`,S}var ai,oi,si,ci,li=__esmMin(()=>{ri(),he(),se(),ai=globalThis.CompressionStream!==void 0,__name$1(toUint8Array$1,`toUint8Array`),__name$1(gzip$1,`gzip`),__name$1(gunzip$1,`gunzip`),oi=new Uint8Array,si={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_DEFLATED:8},ci={gzip:gzip$1,gunzip:gunzip$1,deflate,inflate,deflateRaw,inflateRaw,gzipSync,gunzipSync,deflateSync,inflateSync,deflateRawSync,inflateRawSync,brotliCompress,brotliDecompress,brotliCompressSync,brotliDecompressSync,zstdCompress,zstdDecompress,zstdCompressSync,zstdDecompressSync,Gzip,Gunzip,Deflate,Inflate,DeflateRaw,InflateRaw,Unzip,BrotliCompress,BrotliDecompress,ZstdCompress,ZstdDecompress,createGzip,createGunzip,createDeflate,createInflate,createDeflateRaw,createInflateRaw,createUnzip,createBrotliCompress,createBrotliDecompress,createZstdCompress,createZstdDecompress,constants:si}});const di=new Set([`gzip`,`deflate`,`deflate-raw`]);function validateFormat(n){if(!di.has(n))throw TypeError(`Unsupported compression format: '${n}'. Supported formats: 'gzip', 'deflate', 'deflate-raw'.`);return n}const fi=typeof globalThis.CompressionStream==`function`&&typeof globalThis.DecompressionStream==`function`;let pi=!1,mi,hi,gi,_i,vi,yi;async function loadZlib(){if(pi)return;let n=await Promise.resolve().then(()=>(li(),ii));mi=n.gzipSync,hi=n.gunzipSync,gi=n.deflateSync,_i=n.inflateSync,vi=n.deflateRawSync,yi=n.inflateRawSync,pi=!0}function getCompressFn(n){switch(n){case`gzip`:return n=>mi(n);case`deflate`:return n=>gi(n);case`deflate-raw`:return n=>vi(n)}}function getDecompressFn(n){switch(n){case`gzip`:return n=>hi(n);case`deflate`:return n=>_i(n);case`deflate-raw`:return n=>yi(n)}}function concatChunks$1(n){if(n.length===1)return n[0];let a=0;for(let S of n)a+=S.length;let S=new Uint8Array(a),C=0;for(let a of n)S.set(a,C),C+=a.length;return S}__name$1(concatChunks$1,`concatChunks`);let bi,xi;if(fi)bi=globalThis.CompressionStream,xi=globalThis.DecompressionStream;else{let n=loadZlib();bi=class CompressionStream{readable;writable;constructor(a){let S=validateFormat(a),C=[],N=new Er({transform(n){C.push(n)},async flush(a){try{await n;let N=getCompressFn(S)(concatChunks$1(C));N.length>0&&a.enqueue(N)}catch(n){a.error(n)}}});this.readable=N.readable,this.writable=N.writable}},xi=class DecompressionStream{readable;writable;constructor(a){let S=validateFormat(a),C=[],N=new Er({transform(n){C.push(n)},async flush(a){try{await n;let N=getDecompressFn(S)(concatChunks$1(C));N.length>0&&a.enqueue(N)}catch(n){a.error(n)}}});this.readable=N.readable,this.writable=N.writable}}}const Si=globalThis;globalThis.CompressionStream===void 0&&(Si.CompressionStream=bi),globalThis.DecompressionStream===void 0&&(Si.DecompressionStream=xi);const Ci=globalThis;globalThis.DOMException===void 0&&(Ci.DOMException=Tn);var wi,__name,Ti=__esmMin(()=>{wi=Object.defineProperty,__name=(n,a)=>wi(n,`name`,{value:a,configurable:!0})}),Ei=S;function validateHeaderName(n){if(typeof n!=`string`||!/^[\^`\-\w!#$%&'*+.|~]+$/.test(n)){let a=TypeError(`Header name must be a valid HTTP token ["${n}"]`);throw Object.defineProperty(a,"code",{value:`ERR_INVALID_HTTP_TOKEN`}),a}}function validateHeaderValue(n,a){if(a===void 0){let a=TypeError(`Header "${n}" value must not be undefined`);throw Object.defineProperty(a,"code",{value:`ERR_HTTP_INVALID_HEADER_VALUE`}),a}if(typeof a==`string`&&/[^\t -~-ÿ]/.test(a)){let a=TypeError(`Invalid character in header content ["${n}"]`);throw Object.defineProperty(a,"code",{value:`ERR_INVALID_CHAR`}),a}}const Di=Symbol(`Headers.headers`);function isBoxedPrimitive$2(n){return n instanceof String||n instanceof Number||n instanceof Boolean||typeof Symbol<`u`&&n instanceof Symbol||typeof BigInt<`u`&&n instanceof BigInt}__name$1(isBoxedPrimitive$2,`isBoxedPrimitive`);var Oi=class Headers{[Di];constructor(n){if(this[Di]=new Map,n!=null){if(n instanceof Headers){for(let[a,S]of n[Di])this[Di].set(a,[...S]);return}if(typeof n==`object`&&!isBoxedPrimitive$2(n)){let a=n[Symbol.iterator];if(a==null)for(let[a,S]of Object.entries(n))validateHeaderName(a),validateHeaderValue(a,String(S)),this.append(a,String(S));else{if(typeof a!=`function`)throw TypeError(`Header pairs must be iterable`);for(let a of n){if(typeof a!=`object`||isBoxedPrimitive$2(a))throw TypeError(`Each header pair must be an iterable object`);let n=[...a];if(n.length!==2)throw TypeError(`Each header pair must be a name/value tuple`);validateHeaderName(n[0]),validateHeaderValue(n[0],String(n[1])),this.append(n[0],String(n[1]))}}}else throw TypeError(`Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)'`)}}append(n,a){validateHeaderName(n),validateHeaderValue(n,a);let S=String(n).toLowerCase(),C=String(a),N=this[Di].get(S);N?N.push(C):this[Di].set(S,[C])}set(n,a){validateHeaderName(n),validateHeaderValue(n,a);let S=String(n).toLowerCase();this[Di].set(S,[String(a)])}delete(n){this[Di].delete(String(n).toLowerCase())}has(n){return this[Di].has(String(n).toLowerCase())}get(n){let a=this[Di].get(String(n).toLowerCase());if(!a||a.length===0)return null;let S=a.join(`, `);return/^content-encoding$/i.test(n)&&(S=S.toLowerCase()),S}getAll(n){return this[Di].get(String(n).toLowerCase())??[]}getSetCookie(){return this[Di].get(`set-cookie`)??[]}forEach(n,a){for(let S of this.keys())Reflect.apply(n,a,[this.get(S),S,this])}*keys(){let n=[...this[Di].keys()].sort(),a=new Set;for(let S of n)a.has(S)||(a.add(S),yield S)}*values(){for(let n of this.keys())yield this.get(n)}*entries(){for(let n of this.keys())yield[n,this.get(n)]}[Symbol.iterator](){return this.entries()}get[Symbol.toStringTag](){return`Headers`}toString(){return Object.prototype.toString.call(this)}raw(){let n={};for(let a of this.keys())n[a]=this.getAll(a);return n}_appendToSoupMessage(n,a=Ei.MessageHeadersType.REQUEST){let S=n?n.get_request_headers():new Ei.MessageHeaders(a);for(let[n,a]of this.entries())S.append(n,a);return S}static _newFromSoupMessage(n,a=Ei.MessageHeadersType.RESPONSE){let S=new Headers,C;return C=a===Ei.MessageHeadersType.RESPONSE?n.get_response_headers():n.get_request_headers(),C.foreach((n,a)=>{S.append(n,a)}),S}[Symbol.for(`nodejs.util.inspect.custom`)](){let n={};for(let a of this.keys()){let S=this.getAll(a);a===`host`?n[a]=S[0]:n[a]=S.length>1?S:S[0]}return n}};Object.defineProperties(Oi.prototype,[`get`,`entries`,`forEach`,`values`].reduce((n,a)=>(n[a]={enumerable:!0},n),{}));var ki=__esmMin(()=>{vt()});ki();var FetchBaseError=class extends Error{type;constructor(n,a){super(n),typeof Error.captureStackTrace==`function`&&Error.captureStackTrace(this,this.constructor),this.type=a}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}},FetchError=class extends FetchBaseError{code;errno;erroredSysCall;constructor(n,a,S){super(n,a),S&&(this.code=this.errno=S.code,this.erroredSysCall=S.syscall)}};fn();const Ai=Symbol.toStringTag,isURLSearchParameters=n=>typeof n==`object`&&typeof n.append==`function`&&typeof n.delete==`function`&&typeof n.get==`function`&&typeof n.getAll==`function`&&typeof n.has==`function`&&typeof n.set==`function`&&typeof n.sort==`function`&&n[Ai]===`URLSearchParams`,isBlob=n=>{if(!n||typeof n!=`object`)return!1;let a=n;return typeof a.arrayBuffer==`function`&&typeof a.type==`string`&&typeof a.stream==`function`&&typeof a.constructor==`function`&&/^(Blob|File)$/.test(a[Ai])},isAbortSignal=n=>{if(typeof n!=`object`||!n)return!1;let a=n;return a[Ai]===`AbortSignal`||a[Ai]===`EventTarget`},isDomainOrSubdomain=(n,a)=>{let S=new un(a).hostname,C=new un(n).hostname;return S===C||S.endsWith(`.${C}`)},isSameProtocol=(n,a)=>new un(a).protocol===new un(n).protocol;var ji,Mi,File,Ni=__esmMin(()=>{ji=Symbol(`File.name`),Mi=Symbol(`File.lastModified`),File=class extends Blob{[ji];[Mi];webkitRelativePath=``;constructor(n,a,S){super(n,S),this[ji]=String(a),this[Mi]=S?.lastModified??Date.now()}get name(){return this[ji]}get lastModified(){return this[Mi]}get[Symbol.toStringTag](){return`File`}}});function generateBoundary(){let n=`----formdata-`;for(let a=0;a<24;a++)n+=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789`.charAt(Math.floor(Math.random()*62));return n}function escape(n){return n.replace(/\n/g,`%0A`).replace(/\r/g,`%0D`).replace(/"/g,`%22`)}function formDataToBlob(n,a){a??=generateBoundary();let S=[],C=`--${a}\r\nContent-Disposition: form-data; name="`;for(let[a,N]of n.entries())if(typeof N==`string`)S.push(`${C}${escape(a)}"\r\n\r\n${N.replace(/\r(?!\n)|(?<!\r)\n/g,`\r
|
|
7
7
|
`)}\r\n`);else{let n=N instanceof File?N:new File([N],`blob`,{type:N.type});S.push(`${C}${escape(a)}"; filename="${escape(n.name)}"\r\nContent-Type: ${n.type||`application/octet-stream`}\r\n\r\n`),S.push(n),S.push(`\r
|
|
8
8
|
`)}return S.push(`--${a}--`),new Blob(S,{type:`multipart/form-data; boundary=${a}`})}var Pi=__esmMin(()=>{Ni()});function normalizeValue(n,a,S){return typeof a==`string`?a:(a instanceof Blob&&!(a instanceof File)&&(a=new File([a],S??`blob`,{type:a.type})),a instanceof File&&S!==void 0&&(a=new File([a],S,{type:a.type,lastModified:a.lastModified})),a)}var $,FormData,Fi=__esmMin(()=>{Ni(),$=Symbol(`FormData.entries`),FormData=class{[$]=[];constructor(){}append(n,a,S){this[$].push({name:String(n),value:normalizeValue(n,a,S)})}delete(n){let a=String(n);this[$]=this[$].filter(n=>n.name!==a)}get(n){let a=String(n),S=this[$].find(n=>n.name===a);return S?S.value:null}getAll(n){let a=String(n);return this[$].filter(n=>n.name===a).map(n=>n.value)}has(n){let a=String(n);return this[$].some(n=>n.name===a)}set(n,a,S){let C=String(n),N=normalizeValue(C,a,S),F=!1;this[$]=this[$].filter(n=>n.name===C?F?!1:(F=!0,n.value=N,!0):!0),F||this[$].push({name:C,value:N})}forEach(n,a){for(let S of this[$])n.call(a,S.value,S.name,this)}*entries(){for(let n of this[$])yield[n.name,n.value]}*keys(){for(let n of this[$])yield n.name}*values(){for(let n of this[$])yield n.value}[Symbol.iterator](){return this.entries()}get[Symbol.toStringTag](){return`FormData`}}}),Ii=__esmMin(()=>{Pi(),Fi()}),Li=__exportAll$3({toFormData:()=>toFormData});function _fileName(n){let a=n.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!a)return;let S=a[2]||a[3]||``,C=S.slice(S.lastIndexOf(`\\`)+1);return C=C.replace(/%22/g,`"`),C=C.replace(/&#(\d{4});/g,(n,a)=>String.fromCharCode(a)),C}async function toFormData(n,a){if(!/multipart/i.test(a))throw TypeError(`Failed to fetch`);let S=a.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!S)throw TypeError(`no or bad content-type header, no multipart boundary`);let C=new MultipartParser(S[1]||S[2]),N,F,I,H,W,K,q=[],Y=new FormData,onPartData=n=>{I+=X.decode(n,{stream:!0})},appendToFile=n=>{q.push(n)},appendFileToFormData=()=>{let n=new te(q,K,{type:W});Y.append(H,n)},appendEntryToFormData=()=>{Y.append(H,I)},X=new TextDecoder(`utf-8`);X.decode(),C.onPartBegin=function(){C.onPartData=onPartData,C.onPartEnd=appendEntryToFormData,N=``,F=``,I=``,H=``,W=``,K=null,q.length=0},C.onHeaderField=function(n){N+=X.decode(n,{stream:!0})},C.onHeaderValue=function(n){F+=X.decode(n,{stream:!0})},C.onHeaderEnd=function(){if(F+=X.decode(),N=N.toLowerCase(),N===`content-disposition`){let n=F.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);n&&(H=n[2]||n[3]||``),K=_fileName(F),K&&(C.onPartData=appendToFile,C.onPartEnd=appendFileToFormData)}else N===`content-type`&&(W=F);F=``,N=``};for await(let a of n)C.write(a);return C.end(),Y}var Ri,zi,Bi,lower,Vi,MultipartParser,Hi=__esmMin(()=>{Ii(),Ri=function(n){return n[n.START_BOUNDARY=0]=`START_BOUNDARY`,n[n.HEADER_FIELD_START=1]=`HEADER_FIELD_START`,n[n.HEADER_FIELD=2]=`HEADER_FIELD`,n[n.HEADER_VALUE_START=3]=`HEADER_VALUE_START`,n[n.HEADER_VALUE=4]=`HEADER_VALUE`,n[n.HEADER_VALUE_ALMOST_DONE=5]=`HEADER_VALUE_ALMOST_DONE`,n[n.HEADERS_ALMOST_DONE=6]=`HEADERS_ALMOST_DONE`,n[n.PART_DATA_START=7]=`PART_DATA_START`,n[n.PART_DATA=8]=`PART_DATA`,n[n.END=9]=`END`,n}(Ri||{}),zi=1,Bi={PART_BOUNDARY:zi,LAST_BOUNDARY:zi*=2},lower=n=>n|32,Vi=__name$1((...n)=>{},`noop`),MultipartParser=class{index=0;flags=0;boundary;lookbehind;state=0;onHeaderEnd=Vi;onHeaderField=Vi;onHeadersEnd=Vi;onHeaderValue=Vi;onPartBegin=Vi;onPartData=Vi;onPartEnd=Vi;boundaryChars={};constructor(n){n=`\r
|
|
9
|
-
--`+n;let a=new Uint8Array(n.length);for(let S=0;S<n.length;S++)a[S]=n.charCodeAt(S),this.boundaryChars[a[S]]=!0;this.boundary=a,this.lookbehind=new Uint8Array(this.boundary.length+8)}write(n){let a=0,S=n.length,C=this.index,{lookbehind:N,boundary:F,boundaryChars:I,index:H,state:W,flags:K}=this,q=this.boundary.length,Y=q-1,X=n.length,te,ne,mark=n=>{this[n+`Mark`]=a},clear=n=>{delete this[n+`Mark`]},callback=(n,a,S,C)=>{(a===void 0||a!==S)&&this[n](C&&C.subarray(a,S))},dataCallback=(S,C=!1)=>{let N=S+`Mark`;N in this&&(C?(callback(S,this[N],a,n),delete this[N]):(callback(S,this[N],n.length,n),this[N]=0))};for(a=0;a<S;a++)switch(te=n[a],W){case 0:if(H===F.length-2){if(te===45)K|=Bi.LAST_BOUNDARY;else if(te!==13)return;H++;break}else if(H-1==F.length-2){if(K&Bi.LAST_BOUNDARY&&te===45)W=9,K=0;else if(!(K&Bi.LAST_BOUNDARY)&&te===10)H=0,callback(`onPartBegin`),W=1;else return;break}te!==F[H+2]&&(H=-2),te===F[H+2]&&H++;break;case 1:W=2,mark(`onHeaderField`),H=0;case 2:if(te===13){clear(`onHeaderField`),W=6;break}if(H++,te===45)break;if(te===58){if(H===1)return;dataCallback(`onHeaderField`,!0),W=3;break}if(ne=lower(te),ne<97||ne>122)return;break;case 3:if(te===32)break;mark(`onHeaderValue`),W=4;case 4:te===13&&(dataCallback(`onHeaderValue`,!0),callback(`onHeaderEnd`),W=5);break;case 5:if(te!==10)return;W=1;break;case 6:if(te!==10)return;callback(`onHeadersEnd`),W=7;break;case 7:W=8,mark(`onPartData`);case 8:if(C=H,H===0){for(a+=Y;a<X&&!(n[a]in I);)a+=q;a-=Y,te=n[a]}if(H<F.length)F[H]===te?(H===0&&dataCallback(`onPartData`,!0),H++):H=0;else if(H===F.length)H++,te===13?K|=Bi.PART_BOUNDARY:te===45?K|=Bi.LAST_BOUNDARY:H=0;else if(H-1===F.length)if(K&Bi.PART_BOUNDARY){if(H=0,te===10){K&=~Bi.PART_BOUNDARY,callback(`onPartEnd`),callback(`onPartBegin`),W=1;break}}else K&Bi.LAST_BOUNDARY&&te===45?(callback(`onPartEnd`),W=9,K=0):H=0;if(H>0)N[H-1]=te;else if(C>0){let n=new Uint8Array(N.buffer,N.byteOffset,N.byteLength);callback(`onPartData`,0,C,n),C=0,mark(`onPartData`),a--}break;case 9:break;default:throw Error(`Unexpected state entered: ${W}`)}dataCallback(`onHeaderField`),dataCallback(`onHeaderValue`),dataCallback(`onPartData`),this.index=H,this.state=W,this.flags=K}end(){if(this.state===1&&this.index===0||this.state===8&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==9)throw Error(`MultipartParser.end(): stream ended unexpectedly`)}}});Ae(),Ti(),ki(),fn(),vt(),ni(),Ii(),__name((n,a)=>new Promise((S,C)=>{pipeline(n,a,n=>{n?C(n):S()})}),`pipeline`);const Ui=Symbol(`Body internals`);function isAnyArrayBuffer$2(n){return n instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&n instanceof SharedArrayBuffer}__name$1(isAnyArrayBuffer$2,`isAnyArrayBuffer`);var Body=class{[Ui]={body:null,stream:null,boundary:``,disturbed:!1,error:null};size=0;constructor(n,a={size:0}){if(this.size=a.size||0,n==null)this[Ui].body=null;else if(isURLSearchParameters(n))this[Ui].body=lt.from(n.toString());else if(isBlob(n))this[Ui].body=n;else if(lt.isBuffer(n))this[Ui].body=n;else if(isAnyArrayBuffer$2(n))this[Ui].body=lt.from(n);else if(ArrayBuffer.isView(n))this[Ui].body=lt.from(n.buffer,n.byteOffset,n.byteLength);else if(n instanceof Xr)this[Ui].body=n;else if(typeof ReadableStream<`u`&&n instanceof ReadableStream)this[Ui].body=readableStreamToReadable(n);else if(n instanceof FormData){let a=formDataToBlob(n);this[Ui].body=a,this[Ui].boundary=a.type?.split(`boundary=`)?.[1]??``}else typeof n==`string`?this[Ui].body=lt.from(n):n instanceof ln?this[Ui].body=lt.from(n.toString()):(ke.warn(`Unknown body type "${typeof n}", try to parse the body to string!`),this[Ui].body=lt.from(String(n)));let S=this[Ui].body;lt.isBuffer(S)?this[Ui].stream=Xr.from(S):isBlob(S)?this[Ui].stream=Xr.from(blobToAsyncIterable(S)):S instanceof Xr&&(this[Ui].stream=S),S instanceof Yr&&S.on(`error`,n=>{let a=n instanceof FetchBaseError?n:new FetchError(`Invalid response body while trying to fetch ${this.url}: ${n.message}`,`system`,n);this[Ui].error=a})}get body(){let n=this[Ui].stream;if(!n)return null;if(typeof ReadableStream<`u`){let a=!1;return new ReadableStream({start(S){n.on(`data`,n=>{if(!a)try{S.enqueue(n instanceof Uint8Array?n:new Uint8Array(n))}catch{}}),n.on(`end`,()=>{if(!a){a=!0;try{S.close()}catch{}}}),n.on(`error`,n=>{if(!a){a=!0;try{S.error(n)}catch{}}})},cancel(){a=!0,n.destroy()}})}return null}get _stream(){return this[Ui].stream}get _rawBodyBuffer(){let n=this[Ui].body;return n===null?null:lt.isBuffer(n)?n:n instanceof Uint8Array?lt.from(n.buffer,n.byteOffset,n.byteLength):null}get bodyUsed(){return this[Ui].disturbed}async arrayBuffer(){let{buffer:n,byteOffset:a,byteLength:S}=await consumeBody(this);return n.slice(a,a+S)}async formData(){let n=this.headers?.get(`content-type`);if(n?.startsWith(`application/x-www-form-urlencoded`)){let n=new FormData,a=new ln(await this.text());for(let[S,C]of a)n.append(S,C);return n}let{toFormData:a}=await Promise.resolve().then(()=>(Hi(),Li));return a(this.body,n)}async blob(){let n=this.headers?.get(`content-type`)||this[Ui].body&&this[Ui].body.type||``;return new X([await this.arrayBuffer()],{type:n})}async json(){let n=await this.text();return JSON.parse(n)}async text(){let n=await consumeBody(this);return new TextDecoder().decode(n)}};Object.defineProperties(Body.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});async function consumeBody(n){if(n[Ui].disturbed)throw TypeError(`body used already for: ${n.url}`);if(n[Ui].disturbed=!0,n[Ui].error)throw n[Ui].error;let{_stream:a}=n;if(a===null||!(a instanceof Yr))return lt.alloc(0);let S=[],C=0;try{for await(let N of a){if(n.size>0&&C+N.length>n.size){let S=new FetchError(`content size at ${n.url} over limit: ${n.size}`,`max-size`);throw a.destroy(S),S}C+=N.length,S.push(N)}}catch(a){let S=a instanceof Error?a:Error(String(a));throw a instanceof FetchBaseError?a:new FetchError(`Invalid response body while trying to fetch ${n.url}: ${S.message}`,`system`,S)}try{return S.every(n=>typeof n==`string`)?lt.from(S.join(``)):lt.concat(S,C)}catch(a){let S=a instanceof Error?a:Error(String(a));throw new FetchError(`Could not create Buffer from response body for ${n.url}: ${S.message}`,`system`,S)}}const clone=(n,a)=>{let S,C,{body:N}=n[Ui];if(n.bodyUsed)throw Error(`cannot clone body after it is used`);return N instanceof Yr&&typeof N.getBoundary!=`function`&&(S=new ei({highWaterMark:a}),C=new ei({highWaterMark:a}),N.pipe(S),N.pipe(C),n[Ui].stream=S,N=C),N},extractContentType=(n,a)=>n===null?null:typeof n==`string`?`text/plain;charset=UTF-8`:isURLSearchParameters(n)?`application/x-www-form-urlencoded;charset=UTF-8`:isBlob(n)?n.type||null:lt.isBuffer(n)||isAnyArrayBuffer$2(n)||ArrayBuffer.isView(n)?null:n instanceof FormData?`multipart/form-data; boundary=${a[Ui].boundary}`:n instanceof Yr?null:`text/plain;charset=UTF-8`,getTotalBytes=n=>{let{body:a}=n[Ui];if(a===null)return 0;if(isBlob(a))return a.size;if(lt.isBuffer(a))return a.length;if(a&&typeof a.getLengthSync==`function`){let n=a;return n.hasKnownLength&&n.hasKnownLength()?n.getLengthSync():null}return null};function readableStreamToReadable(n){let a=n.getReader();return new Xr({async read(){try{let{done:n,value:S}=await a.read();n?this.push(null):this.push(lt.from(S))}catch(n){this.destroy(n)}},destroy(n,S){a.cancel().then(()=>S(null),S)}})}async function*blobToAsyncIterable(n){if(typeof n.stream==`function`){let a=n.stream().getReader();for(;;){let{done:n,value:S}=await a.read();if(n)break;yield S}}else yield new Uint8Array(await n.arrayBuffer())}const Wi=new Set([301,302,303,307,308]),isRedirect=n=>Wi.has(n);fn(),se(),he();const Gi=Symbol(`Response internals`);var Ki=class Response extends Body{[Gi];_inputStream=null;constructor(n=null,a={}){super(n,a);let S=a.status==null?200:a.status,C=new Oi(a.headers);if(n!==null&&!C.has(`Content-Type`)){let a=extractContentType(n,this);a&&C.append(`Content-Type`,a)}this[Gi]={type:`default`,url:a.url,status:S,statusText:a.statusText||``,headers:C,counter:a.counter,highWaterMark:a.highWaterMark}}get type(){return this[Gi].type}get url(){return this[Gi].url||``}get status(){return this[Gi].status}get ok(){return this[Gi].status>=200&&this[Gi].status<300}get redirected(){return this[Gi].counter>0}get statusText(){return this[Gi].statusText}get headers(){return this[Gi].headers}get highWaterMark(){return this[Gi].highWaterMark}clone(){return new Response(clone(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(n,a=302){if(!isRedirect(a))throw RangeError(`Failed to execute "redirect" on "response": Invalid status code`);return new Response(null,{headers:{location:new un(n).toString()},status:a})}static error(){let n=new Response(null,{status:0,statusText:``});return n[Gi].type=`error`,n}static json(n,a){let S=JSON.stringify(n),C={...a},N=new Oi(C.headers);return N.has(`content-type`)||N.set(`content-type`,`application/json`),C.headers=N,new Response(S,C)}get[Symbol.toStringTag](){return`Response`}async text(){if(!this._inputStream)return super.text();let n=me.MemoryOutputStream.new_resizable();await new Promise((a,S)=>{n.splice_async(this._inputStream,me.OutputStreamSpliceFlags.CLOSE_TARGET|me.OutputStreamSpliceFlags.CLOSE_SOURCE,Z.PRIORITY_DEFAULT,null,(C,N)=>{try{a(n.splice_finish(N))}catch(n){S(n)}})});let a=n.steal_as_bytes();return new TextDecoder().decode(a.toArray())}};Object.defineProperties(Ki.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}}),ni(),se(),Xe();async function soupSendAsync(n,a,S=Z.PRIORITY_DEFAULT,C=null){return new Promise((N,F)=>{n.send_async(a,S,C,(a,S)=>{try{N(n.send_finish(S))}catch(n){F(n)}})})}function inputStreamToReadable(n,a={}){return Xr.from(inputStreamAsyncIterator(n),a)}he(),se(),ni(),Xe(),he(),Xe(),Kt(),he();function isIP(n){if(typeof n!=`string`)return 0;let a=n.includes(`%`)?n.split(`%`)[0]:n,S=me.InetAddress.new_from_string(a);if(!S)return 0;switch(S.get_family()){case me.SocketFamily.INVALID:return 0;case me.SocketFamily.IPV4:return 4;case me.SocketFamily.IPV6:return 6}}fn();function stripURLForUseAsAReferrer(n,a=!1){if(n==null||n===`no-referrer`)return`no-referrer`;let S=new un(n);return/^(about|blob|data):$/.test(S.protocol)?`no-referrer`:(S.username=``,S.password=``,S.hash=``,a&&(S.pathname=``,S.search=``),S)}const qi=new Set([``,`no-referrer`,`no-referrer-when-downgrade`,`same-origin`,`origin`,`strict-origin`,`origin-when-cross-origin`,`strict-origin-when-cross-origin`,`unsafe-url`]);function validateReferrerPolicy(n){if(!qi.has(n))throw TypeError(`Invalid referrerPolicy: ${n}`);return n}function isOriginPotentiallyTrustworthy(n){if(/^(http|ws)s:$/.test(n.protocol))return!0;let a=n.host.replace(/(^\[)|(]$)/g,``),S=isIP(a);return S===4&&a.startsWith(`127.`)||S===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(a)?!0:n.host===`localhost`||n.host.endsWith(`.localhost`)?!1:n.protocol===`file:`}function isUrlPotentiallyTrustworthy(n){return/^about:(blank|srcdoc)$/.test(n.toString())||(typeof n==`string`&&(n=new un(n)),n.protocol===`data:`)||/^(blob|filesystem):$/.test(n.protocol)?!0:isOriginPotentiallyTrustworthy(n)}function determineRequestsReferrer(n,a={}){let{referrerURLCallback:S,referrerOriginCallback:C}=a;if(n.referrer===`no-referrer`||n.referrerPolicy===``)return null;let N=n.referrerPolicy;if(n.referrer===`about:client`)return`no-referrer`;let F=new un(n.referrer),I=stripURLForUseAsAReferrer(F),H=stripURLForUseAsAReferrer(F,!0);I.toString().length>4096&&(I=H),S&&(I=S(I)),C&&(H=C(H));let W=new un(n.url);switch(N){case`no-referrer`:return`no-referrer`;case`origin`:return H;case`unsafe-url`:return I;case`strict-origin`:return isUrlPotentiallyTrustworthy(I)&&!isUrlPotentiallyTrustworthy(W)?`no-referrer`:H.toString();case`strict-origin-when-cross-origin`:return I.origin===W.origin?I:isUrlPotentiallyTrustworthy(I)&&!isUrlPotentiallyTrustworthy(W)?`no-referrer`:H;case`same-origin`:return I.origin===W.origin?I:`no-referrer`;case`origin-when-cross-origin`:return I.origin===W.origin?I:H;case`no-referrer-when-downgrade`:return isUrlPotentiallyTrustworthy(I)&&!isUrlPotentiallyTrustworthy(W)?`no-referrer`:I;default:throw TypeError(`Invalid referrerPolicy: ${N}`)}}function parseReferrerPolicyFromHeader(n){let a=(n.get(`referrer-policy`)||``).split(/[,\s]+/),S=``;for(let n of a)n&&qi.has(n)&&(S=n);return S}fn(),se(),he();const Ji=Symbol(`Request internals`);let Yi=null;function envPositiveInt(n,a){let S=Z.getenv(n);if(!S)return a;let C=Number.parseInt(S,10);return Number.isFinite(C)&&C>0?C:a}function getSharedSession(){if(Yi===null){let n=envPositiveInt(`GJSIFY_FETCH_MAX_CONNS_PER_HOST`,16),a=Math.max(envPositiveInt(`GJSIFY_FETCH_MAX_CONNS`,64),n);Yi=new Ei.Session({maxConns:a,maxConnsPerHost:n});try{Yi.remove_feature_by_type(Ei.ContentDecoder.$gtype)}catch{}}return Yi}const isRequest=n=>typeof n==`object`&&typeof n.url==`string`;var Xi=class Request extends Body{cache;credentials;destination;get headers(){return this[Ji].headers}integrity;keepalive;get method(){return this[Ji].method}mode;get redirect(){return this[Ji].redirect}get referrer(){if(this[Ji].referrer===`no-referrer`)return``;if(this[Ji].referrer===`client`)return`about:client`;if(this[Ji].referrer)return this[Ji].referrer.toString()}get referrerPolicy(){return this[Ji].referrerPolicy}set referrerPolicy(n){this[Ji].referrerPolicy=validateReferrerPolicy(n)}get signal(){return this[Ji].signal}get url(){return this[Ji].parsedURL.toString()}get _uri(){return Z.Uri.parse(this.url,Z.UriFlags.ENCODED)}get _session(){return this[Ji].session}get _message(){return this[Ji].message}get _inputStream(){return this[Ji].inputStream}get[Symbol.toStringTag](){return`Request`}[Ji];follow;compress=!1;counter=0;agent=``;highWaterMark=16384;insecureHTTPParser=!1;constructor(n,a){let S=n,C=a||{},N,F={};if(isRequest(n)?(N=new un(S.url),F=S):N=new un(n),N.username!==``||N.password!==``)throw TypeError(`${N} is an url with embedded credentials.`);let I=C.method||F.method||`GET`;if(/^(delete|get|head|options|post|put)$/i.test(I)&&(I=I.toUpperCase()),(a?.body!=null||isRequest(n)&&S.body!==null)&&(I===`GET`||I===`HEAD`))throw TypeError(`Request with GET/HEAD method cannot have body`);let H=a?.body?a.body:isRequest(n)&&S.body!==null?clone(n):null;super(H,{size:C.size||0});let W=new Oi(a?.headers||S.headers||{});if(H!==null&&!W.has(`Content-Type`)){let n=extractContentType(H,this);n&&W.set(`Content-Type`,n)}let K=isRequest(n)?S.signal:null;if(a&&`signal`in a&&(K=a.signal),K!=null&&!isAbortSignal(K))throw TypeError(`Expected signal to be an instanceof AbortSignal or EventTarget`);let q=a?.referrer==null?S.referrer:a.referrer;if(q===``)q=`no-referrer`;else if(q){let n=new un(q);q=/^about:(\/\/)?client$/.test(n.toString())?`client`:n}else q=void 0;let Y=N.protocol,X=null,te=null;(Y===`http:`||Y===`https:`)&&(X=getSharedSession(),te=new Ei.Message({method:I,uri:Z.Uri.parse(N.toString(),Z.UriFlags.ENCODED)})),this[Ji]={method:I,redirect:a?.redirect||S.redirect||`follow`,headers:W,parsedURL:N,signal:K,referrer:q,referrerPolicy:``,session:X,message:te},this.follow=C.follow===void 0?S.follow===void 0?20:S.follow:C.follow,this.compress=C.compress===void 0?S.compress===void 0?!0:S.compress:C.compress,this.counter=C.counter||S.counter||0,this.agent=C.agent||S.agent,this.highWaterMark=C.highWaterMark||S.highWaterMark||16384,this.insecureHTTPParser=C.insecureHTTPParser||S.insecureHTTPParser||!1,this.referrerPolicy=a?.referrerPolicy||S.referrerPolicy||``}async _send(n){let{session:a,message:S}=this[Ji];if(!a||!S)throw Error(`Cannot send request: no Soup session (non-HTTP URL?)`);n.headers._appendToSoupMessage(S);let C=this._rawBodyBuffer;if(C!==null&&C.byteLength>0){let a=n.headers.get(`content-type`)||null;S.set_request_body_from_bytes(a,new Z.Bytes(C))}let N=new me.Cancellable;return this[Ji].inputStream=await soupSendAsync(a,S,Z.PRIORITY_DEFAULT,N),this[Ji].readable=inputStreamToReadable(this[Ji].inputStream),{inputStream:this[Ji].inputStream,readable:this[Ji].readable,cancellable:N}}clone(){return new Request(this)}async arrayBuffer(){return super.arrayBuffer()}async blob(){return super.blob()}async formData(){return super.formData()}async json(){return super.json()}async text(){return super.text()}};Object.defineProperties(Xi.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});const getSoupRequestOptions=n=>{let{parsedURL:a}=n[Ji],S=new Oi(n[Ji].headers);S.has(`Accept`)||S.set(`Accept`,`*/*`);let C=null;if(n.body===null&&/^(post|put)$/i.test(n.method)&&(C=`0`),n.body!==null){let a=getTotalBytes(n);typeof a==`number`&&!Number.isNaN(a)&&(C=String(a))}C&&S.set(`Content-Length`,C),n.referrerPolicy===``&&(n.referrerPolicy=`strict-origin-when-cross-origin`),n.referrer&&n.referrer!==`no-referrer`?n[Ji].referrer=determineRequestsReferrer(n):n[Ji].referrer=`no-referrer`,n[Ji].referrer instanceof un&&S.set(`Referer`,n.referrer),S.has(`User-Agent`)||S.set(`User-Agent`,`gjsify-fetch`),n.compress&&!S.has(`Accept-Encoding`)&&S.set(`Accept-Encoding`,`gzip, deflate`);let{agent:N}=n;return typeof N==`function`&&(N=N(a)),!S.has(`Connection`)&&!N&&S.set(`Connection`,`close`),{parsedURL:a,options:{headers:S}}};function parseDataUri(n){let a=n.match(/^data:([^,]*?)(;base64)?,(.*)$/s);if(!a)throw TypeError(`Invalid data URI: ${n.slice(0,50)}...`);let S=a[1]||`text/plain;charset=US-ASCII`,C=!!a[2],N=a[3],F;if(C){let n=atob(N);F=new Uint8Array(n.length);for(let a=0;a<n.length;a++)F[a]=n.charCodeAt(a)}else F=new TextEncoder().encode(decodeURIComponent(N));return{buffer:F,typeFull:S}}var AbortError=class extends FetchBaseError{constructor(n,a=`aborted`){super(n,a)}};Ae(),fn(),ni(),se();const Zi=new Set([`data:`,`http:`,`https:`,`file:`]);function rewriteRootRelativeUrl(n){if(typeof n!=`string`||!n.startsWith(`/`)||n.startsWith(`//`))return n;let a=globalThis,S=a.__GJSIFY_DEBUG_FETCH===!0;try{let C=a.imports?.system?.programPath??a.imports?.system?.programInvocationName??``;if(!C)return n;let N=`file://${Z.path_get_dirname(C)}${n}`;return S&&ke.log(`[fetch] rewrite ${n} → ${N}`),N}catch(a){return S&&ke.warn(`[fetch] rewrite FAILED: ${a instanceof Error?a.message:String(a)}`),n}}async function fetch$1(n,a={}){n=rewriteRootRelativeUrl(n);let S=new Xi(n,a),{parsedURL:C,options:N}=getSoupRequestOptions(S);if(!Zi.has(C.protocol))throw TypeError(`@gjsify/fetch cannot load ${n}. URL scheme "${C.protocol.replace(/:$/,``)}" is not supported.`);if(C.protocol===`data:`){let{buffer:n,typeFull:a}=parseDataUri(S.url);return new Ki(Buffer.from(n),{headers:{"Content-Type":a}})}if(C.protocol===`file:`){let n=globalThis.__GJSIFY_DEBUG_FETCH===!0;n&&ke.log(`[fetch] file:// ${S.url}`);try{let a=Z.filename_from_uri(S.url)[0];n&&ke.log(`[fetch] file:// path=${a}`);let[C,N]=Z.file_get_contents(a);if(n&&ke.log(`[fetch] file:// ok=${C} bytes=${N?.byteLength??`?`}`),!C)throw new FetchError(`Failed to read file: ${a}`,`system`);let F=N,I=new Uint8Array(F.byteLength);I.set(F);let H=new Ki(I);return n&&ke.log(`[fetch] file:// response created`),H}catch(a){let C=a instanceof Error?a:Error(String(a));throw n&&ke.warn(`[fetch] file:// FAIL: ${C.message}`),new FetchError(`request to ${S.url} failed, reason: ${C.message}`,`system`,C)}}let{signal:F}=S;if(F&&F.aborted)throw new AbortError(`The operation was aborted.`);let I,H;try{let n=await S._send(N);I=n.readable,H=n.cancellable}catch(n){let a=n instanceof Error?n:Error(String(n));throw new FetchError(`request to ${S.url} failed, reason: ${a.message}`,`system`,a)}let abortHandler=()=>{H.cancel()};F&&F.addEventListener(`abort`,abortHandler,{once:!0});let finalize=()=>{F&&F.removeEventListener(`abort`,abortHandler)};H.connect(()=>{I.destroy(new AbortError(`The operation was aborted.`))}),I.on(`error`,n=>{finalize()});let W=S._message,K=Oi._newFromSoupMessage(W),q=W.status_code,Y=W.get_reason_phrase();if(isRedirect(q)){let n=K.get(`Location`),C=null;try{C=n===null?null:new un(n,S.url)}catch{if(S.redirect!==`manual`)throw finalize(),new FetchError(`uri requested responds with an invalid redirect URL: ${n}`,`invalid-redirect`)}switch(S.redirect){case`error`:throw finalize(),new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${S.url}`,`no-redirect`);case`manual`:break;case`follow`:{if(C===null)break;if(S.counter>=S.follow)throw finalize(),new FetchError(`maximum redirect reached at: ${S.url}`,`max-redirect`);let n={headers:new Oi(S.headers),follow:S.follow,counter:S.counter+1,agent:S.agent,compress:S.compress,method:S.method,body:clone(S),signal:S.signal,size:S.size,referrer:S.referrer,referrerPolicy:S.referrerPolicy};if(!isDomainOrSubdomain(S.url,C)||!isSameProtocol(S.url,C))for(let a of[`authorization`,`www-authenticate`,`cookie`,`cookie2`])n.headers.delete(a);if(q!==303&&S.body&&a.body instanceof ti.Readable)throw finalize(),new FetchError(`Cannot follow redirect with body being a readable stream`,`unsupported-redirect`);(q===303||(q===301||q===302)&&S.method===`POST`)&&(n.method=`GET`,n.body=void 0,n.headers.delete(`content-length`));let N=parseReferrerPolicyFromHeader(K);return N&&(n.referrerPolicy=N),finalize(),fetch$1(new Xi(C,n))}default:throw TypeError(`Redirect option '${S.redirect}' is not a valid value of RequestRedirect`)}}let X={url:S.url,status:q,statusText:Y,headers:K,size:S.size,counter:S.counter,highWaterMark:S.highWaterMark},te=K.get(`Content-Encoding`);if(!S.compress||S.method===`HEAD`||te===null||q===204||q===304)return finalize(),new Ki(I,X);if(typeof DecompressionStream<`u`){let n=null;if(te===`gzip`||te===`x-gzip`?n=`gzip`:(te===`deflate`||te===`x-deflate`)&&(n=`deflate`),n){let a=new Ki(I,X).body;if(a){let S=a.pipeThrough(new DecompressionStream(n));return finalize(),new Ki(S,X)}}}return finalize(),new Ki(I,X)}__name$1(fetch$1,`fetch`);const Qi=globalThis;globalThis.fetch===void 0&&(Qi.fetch=fetch$1),globalThis.Headers===void 0&&(Qi.Headers=Oi),globalThis.Request===void 0&&(Qi.Request=Xi),globalThis.Response===void 0&&(Qi.Response=Ki);const $i=globalThis;globalThis.ByteLengthQueuingStrategy===void 0&&($i.ByteLengthQueuingStrategy=Dr),globalThis.CountQueuingStrategy===void 0&&($i.CountQueuingStrategy=Or);const ea=globalThis;function isNativeStreamUsable$2(n,a){try{return typeof n==`function`?typeof n.prototype?.[a]==`function`:!1}catch{return!1}}__name$1(isNativeStreamUsable$2,`isNativeStreamUsable`),isNativeStreamUsable$2(globalThis.ReadableStream,`getReader`)||(ea.ReadableStream=wr),ea.ReadableStreamBYOBReader===void 0&&(ea.ReadableStreamBYOBReader=ReadableStreamBYOBReader),ea.ReadableStreamBYOBRequest===void 0&&(ea.ReadableStreamBYOBRequest=ReadableStreamBYOBRequest),ea.ReadableByteStreamController===void 0&&(ea.ReadableByteStreamController=ReadableByteStreamController),ea.ReadableStreamDefaultController===void 0&&(ea.ReadableStreamDefaultController=ReadableStreamDefaultController),ea.ReadableStreamDefaultReader===void 0&&(ea.ReadableStreamDefaultReader=ReadableStreamDefaultReader);const ta=globalThis;globalThis.TextEncoderStream===void 0&&(ta.TextEncoderStream=kr),globalThis.TextDecoderStream===void 0&&(ta.TextDecoderStream=Ar);function isNativeStreamUsable$1(n,a){try{return typeof n==`function`?typeof n.prototype?.[a]==`function`:!1}catch{return!1}}if(__name$1(isNativeStreamUsable$1,`isNativeStreamUsable`),!isNativeStreamUsable$1(globalThis.TransformStream,`readable`)){let n=globalThis;n.TransformStream=Er}function isNativeStreamUsable(n,a){try{return typeof n==`function`?typeof n.prototype?.[a]==`function`:!1}catch{return!1}}if(!isNativeStreamUsable(globalThis.WritableStream,`getWriter`)){let n=globalThis;n.WritableStream=Tr}var CryptoKey=class{type;extractable;algorithm;usages;_handle;constructor(n,a,S,C,N){this.type=n,this.extractable=a,this.algorithm=Object.freeze({...S}),this.usages=Object.freeze([...C]),this._handle=N}get[Symbol.toStringTag](){return`CryptoKey`}};function normalizeAlgorithm$1(n){if(typeof n==`string`)return{name:n};if(!n||typeof n.name!=`string`)throw TypeError(`Algorithm must have a name property`);return n}__name$1(normalizeAlgorithm$1,`normalizeAlgorithm`);const na={"SHA-1":`sha1`,"SHA-256":`sha256`,"SHA-384":`sha384`,"SHA-512":`sha512`};function toNodeHashName(n){let a=na[n.toUpperCase()]||na[n];if(!a)throw new Tn(`Unrecognized hash name: ${n}`,`NotSupportedError`);return a}const ra={"P-256":`prime256v1`,"P-384":`secp384r1`,"P-521":`secp521r1`};function toNodeCurveName(n){let a=ra[n];if(!a)throw new Tn(`Unrecognized curve name: ${n}`,`NotSupportedError`);return a}function hashSize$1(n){switch(toNodeHashName(n)){case`sha1`:return 20;case`sha256`:return 32;case`sha384`:return 48;case`sha512`:return 64;default:throw new Tn(`Unsupported hash: ${n}`,`NotSupportedError`)}}__name$1(hashSize$1,`hashSize`);function validateUsages(n,a){for(let S of n)if(!a.includes(S))throw new Tn(`Invalid key usage: ${S}`,`SyntaxError`);if(n.length===0)throw new Tn(`Key usages must not be empty`,`SyntaxError`)}function checkUsage(n,a){if(!n.usages.includes(a))throw new Tn(`Key does not support the '${a}' usage`,`InvalidAccessError`)}const ia=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,aa=new Uint8Array(128);for(let n=0;n<64;n++)aa[ia.charCodeAt(n)]=n;function bytesToBase64$1(n){let a=``,S=n.length;for(let C=0;C<S;C+=3){let N=n[C],F=C+1<S?n[C+1]:0,I=C+2<S?n[C+2]:0;a+=ia[N>>2&63],a+=ia[(N<<4|F>>4)&63],a+=C+1<S?ia[(F<<2|I>>6)&63]:`=`,a+=C+2<S?ia[I&63]:`=`}return a}__name$1(bytesToBase64$1,`bytesToBase64`);function base64ToBytes(n){let a=n;for(;a.endsWith(`=`);)a=a.slice(0,-1);let S=[],C=0,N=0;for(let n=0;n<a.length;n++)N=N<<6|aa[a.charCodeAt(n)],C+=6,C>=8&&(C-=8,S.push(N>>C&255));return new Uint8Array(S)}function base64urlEncode(n){return bytesToBase64$1(n).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/,``)}function base64urlDecode(n){let a=n.replace(/-/g,`+`).replace(/_/g,`/`);for(;a.length%4;)a+=`=`;return base64ToBytes(a)}function toUint8Array(n){if(n instanceof Uint8Array)return n;if(n instanceof ArrayBuffer)return new Uint8Array(n);if(ArrayBuffer.isView(n))return new Uint8Array(n.buffer,n.byteOffset,n.byteLength);throw TypeError(`Expected BufferSource`)}var oa,sa=__esmMin(()=>{oa={RSA_PKCS1_PADDING:1,RSA_NO_PADDING:3,RSA_PKCS1_OAEP_PADDING:4,RSA_PKCS1_PSS_PADDING:6,DH_CHECK_P_NOT_SAFE_PRIME:2,DH_CHECK_P_NOT_PRIME:1,DH_UNABLE_TO_CHECK_GENERATOR:4,DH_NOT_SUITABLE_GENERATOR:8}});function timingSafeEqual(n,a){if(n.length!==a.length)throw RangeError(`Input buffers must have the same byte length`);let S=0;for(let C=0;C<n.length;C++)S|=n[C]^a[C];return S===0}var ca=__esmMin(()=>{});function gmul(n,a){let S=0;for(let C=0;C<8;C++){a&1&&(S^=n);let C=n&128;n=n<<1&255,C&&(n^=27),a>>=1}return S}function keyExpansion(n){let a=n.length/4,S=a+6,C=4*(S+1),N=Array.from({length:C});for(let S=0;S<a;S++)N[S]=new Uint8Array([n[4*S],n[4*S+1],n[4*S+2],n[4*S+3]]);for(let n=a;n<C;n++){let S=new Uint8Array(N[n-1]);n%a===0?S=new Uint8Array([la[S[1]]^da[n/a-1],la[S[2]],la[S[3]],la[S[0]]]):a>6&&n%a===4&&(S=new Uint8Array([la[S[0]],la[S[1]],la[S[2]],la[S[3]]])),N[n]=new Uint8Array(4);for(let C=0;C<4;C++)N[n][C]=N[n-a][C]^S[C]}let F=[];for(let n=0;n<=S;n++){let a=new Uint8Array(16);for(let S=0;S<4;S++)a[4*S]=N[4*n+S][0],a[4*S+1]=N[4*n+S][1],a[4*S+2]=N[4*n+S][2],a[4*S+3]=N[4*n+S][3];F.push(a)}return F}function aesEncryptBlock(n,a){let S=new Uint8Array(n),C=a.length-1;for(let n=0;n<16;n++)S[n]^=a[0][n];for(let n=1;n<C;n++){for(let n=0;n<16;n++)S[n]=la[S[n]];let C=S[1];S[1]=S[5],S[5]=S[9],S[9]=S[13],S[13]=C;let N=S[2],F=S[6];S[2]=S[10],S[6]=S[14],S[10]=N,S[14]=F;let I=S[15];S[15]=S[11],S[11]=S[7],S[7]=S[3],S[3]=I;for(let n=0;n<4;n++){let a=n*4,C=S[a],N=S[a+1],F=S[a+2],I=S[a+3];S[a]=gmul(2,C)^gmul(3,N)^F^I,S[a+1]=C^gmul(2,N)^gmul(3,F)^I,S[a+2]=C^N^gmul(2,F)^gmul(3,I),S[a+3]=gmul(3,C)^N^F^gmul(2,I)}for(let C=0;C<16;C++)S[C]^=a[n][C]}for(let n=0;n<16;n++)S[n]=la[S[n]];let N=S[1];S[1]=S[5],S[5]=S[9],S[9]=S[13],S[13]=N;let F=S[2],I=S[6];S[2]=S[10],S[6]=S[14],S[10]=F,S[14]=I;let H=S[15];S[15]=S[11],S[11]=S[7],S[7]=S[3],S[3]=H;for(let n=0;n<16;n++)S[n]^=a[C][n];return S}function aesDecryptBlock(n,a){let S=new Uint8Array(n),C=a.length-1;for(let n=0;n<16;n++)S[n]^=a[C][n];for(let n=C-1;n>0;n--){let C=S[13];S[13]=S[9],S[9]=S[5],S[5]=S[1],S[1]=C;let N=S[10],F=S[14];S[10]=S[2],S[14]=S[6],S[2]=N,S[6]=F;let I=S[3];S[3]=S[7],S[7]=S[11],S[11]=S[15],S[15]=I;for(let n=0;n<16;n++)S[n]=ua[S[n]];for(let C=0;C<16;C++)S[C]^=a[n][C];for(let n=0;n<4;n++){let a=n*4,C=S[a],N=S[a+1],F=S[a+2],I=S[a+3];S[a]=gmul(14,C)^gmul(11,N)^gmul(13,F)^gmul(9,I),S[a+1]=gmul(9,C)^gmul(14,N)^gmul(11,F)^gmul(13,I),S[a+2]=gmul(13,C)^gmul(9,N)^gmul(14,F)^gmul(11,I),S[a+3]=gmul(11,C)^gmul(13,N)^gmul(9,F)^gmul(14,I)}}let N=S[13];S[13]=S[9],S[9]=S[5],S[5]=S[1],S[1]=N;let F=S[10],I=S[14];S[10]=S[2],S[14]=S[6],S[2]=F,S[6]=I;let H=S[3];S[3]=S[7],S[7]=S[11],S[11]=S[15],S[15]=H;for(let n=0;n<16;n++)S[n]=ua[S[n]];for(let n=0;n<16;n++)S[n]^=a[0][n];return S}function incrementCounter(n){for(let a=15;a>=0&&++n[a]===0;a--);}function gcmIncrementCounter(n){for(let a=15;a>=12&&++n[a]===0;a--);}function gfMul(n,a){let S=new Uint8Array(16),C=new Uint8Array(n);for(let n=0;n<128;n++){if(a[n>>>3]&1<<7-(n&7))for(let n=0;n<16;n++)S[n]^=C[n];let N=C[15]&1;for(let n=15;n>0;n--)C[n]=C[n]>>>1|(C[n-1]&1)<<7;C[0]>>>=1,N&&(C[0]^=225)}return S}function ghash(n,a,S){let C=new Uint8Array(16),N=Math.ceil(a.length/16)||0;for(let S=0;S<N;S++){let N=S*16,F=Math.min(N+16,a.length);for(let n=0;n<16;n++){let S=N+n;S<F&&(C[n]^=a[S])}let I=gfMul(C,n);C.set(I)}let F=Math.ceil(S.length/16)||0;for(let a=0;a<F;a++){let N=a*16,F=Math.min(N+16,S.length);for(let n=0;n<16;n++){let a=N+n;a<F&&(C[n]^=S[a])}let I=gfMul(C,n);C.set(I)}let I=new Uint8Array(16),H=a.length*8,W=S.length*8,K=Math.floor(H/4294967296),q=H>>>0;I[0]=K>>>24&255,I[1]=K>>>16&255,I[2]=K>>>8&255,I[3]=K&255,I[4]=q>>>24&255,I[5]=q>>>16&255,I[6]=q>>>8&255,I[7]=q&255;let Y=Math.floor(W/4294967296),X=W>>>0;I[8]=Y>>>24&255,I[9]=Y>>>16&255,I[10]=Y>>>8&255,I[11]=Y&255,I[12]=X>>>24&255,I[13]=X>>>16&255,I[14]=X>>>8&255,I[15]=X&255;for(let n=0;n<16;n++)C[n]^=I[n];let te=gfMul(C,n);return C.set(te),C}var la,ua,da,fa=__esmMin(()=>{la=new Uint8Array([99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22]),ua=new Uint8Array([82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125]),da=[1,2,4,8,16,32,64,128,27,54]});function parseAlgorithm(n){let a=n.toLowerCase().match(/^aes-(128|192|256)-(cbc|ctr|ecb|cfb|ofb|gcm)$/);if(!a)throw Error(`Unsupported cipher algorithm: ${n}`);let S=parseInt(a[1]),C=a[2];return{keySize:S/8,ivSize:C===`ecb`?0:C===`gcm`?12:16,mode:C}}function toBuffer$2(n,a){return typeof n==`string`?lt.from(n,a||`utf8`):lt.from(n)}function encodeOutput(n,a){return a?lt.from(n).toString(a):lt.from(n)}function incompleteUtf8Tail(n){if(n.length===0)return 0;let a=n.length;for(let S=1;S<=Math.min(4,a);S++){let C=n[a-S];if(!(C&128))return 0;if((C&192)==128)continue;let N;if((C&224)==192)N=2;else if((C&240)==224)N=3;else if((C&248)==240)N=4;else return 0;return S<N?S:0}return 0}function pkcs7Pad(n){let a=16-n.length%16,S=new Uint8Array(n.length+a);S.set(n);for(let C=n.length;C<S.length;C++)S[C]=a;return S}function pkcs7Unpad(n){if(n.length===0||n.length%16!=0)throw Error(`bad decrypt`);let a=n[n.length-1];if(a===0||a>16)throw Error(`bad decrypt`);for(let S=n.length-a;S<n.length;S++)if(n[S]!==a)throw Error(`bad decrypt`);return new Uint8Array(n.slice(0,n.length-a))}var pa=__esmMin(()=>{vt(),__name$1(toBuffer$2,`toBuffer`)});function createCipher(n,a){throw Error(`crypto.createCipher() is deprecated. Use createCipheriv() instead.`)}function createCipheriv(n,a,S){return new Cipher(n,typeof a==`string`?lt.from(a):new Uint8Array(a),S==null?null:typeof S==`string`?lt.from(S):new Uint8Array(S))}function createDecipher(n,a){throw Error(`crypto.createDecipher() is deprecated. Use createDecipheriv() instead.`)}function createDecipheriv(n,a,S){return new Decipher(n,typeof a==`string`?lt.from(a):new Uint8Array(a),S==null?null:typeof S==`string`?lt.from(S):new Uint8Array(S))}function getCiphers(){return[`aes-128-cbc`,`aes-128-ecb`,`aes-192-cbc`,`aes-192-ecb`,`aes-256-cbc`,`aes-256-ecb`,`aes-128-ctr`,`aes-192-ctr`,`aes-256-ctr`,`aes-128-cfb`,`aes-192-cfb`,`aes-256-cfb`,`aes-128-gcm`,`aes-192-gcm`,`aes-256-gcm`]}var CipherBase,Cipher,Decipher,ma=__esmMin(()=>{fa(),pa(),vt(),CipherBase=class{_roundKeys;_iv;_mode;_buffer=new Uint8Array;_autoPadding=!0;_finalized=!1;constructor(n,a,S){let C=parseAlgorithm(n);if(a.length!==C.keySize)throw Error(`Invalid key length ${a.length}, expected ${C.keySize} for ${n}`);if(C.ivSize>0&&(!S||S.length!==C.ivSize))throw Error(`Invalid IV length ${S?.length??0}, expected ${C.ivSize} for ${n}`);this._roundKeys=keyExpansion(a),this._iv=S?new Uint8Array(S):new Uint8Array(16),this._mode=C.mode}setAutoPadding(n){return this._autoPadding=n,this}},Cipher=class extends CipherBase{_prevBlock;_counter;_gcmH=null;_gcmJ0=null;_gcmAAD=new Uint8Array;_gcmCiphertext=[];_gcmCiphertextLen=0;_gcmAuthTag=null;_gcmAADSet=!1;constructor(n,a,S){super(n,a,S),this._prevBlock=new Uint8Array(this._iv),this._mode===`gcm`?(this._gcmH=aesEncryptBlock(new Uint8Array(16),this._roundKeys),this._gcmJ0=new Uint8Array(16),this._gcmJ0.set(this._iv.subarray(0,12)),this._gcmJ0[15]=1,this._counter=new Uint8Array(this._gcmJ0),gcmIncrementCounter(this._counter)):this._counter=new Uint8Array(this._iv)}setAAD(n){if(this._mode!==`gcm`)throw Error(`setAAD is only supported in GCM mode`);if(this._gcmCiphertextLen>0)throw Error(`setAAD must be called before update()`);return this._gcmAAD=new Uint8Array(n),this._gcmAADSet=!0,this}getAuthTag(){if(this._mode!==`gcm`)throw Error(`getAuthTag is only supported in GCM mode`);if(!this._gcmAuthTag)throw Error(`getAuthTag must be called after final()`);return lt.from(this._gcmAuthTag)}update(n,a,S){let C=toBuffer$2(n,a),N=new Uint8Array(this._buffer.length+C.length);if(N.set(this._buffer),N.set(C,this._buffer.length),this._mode===`gcm`){let n=this._processGcmEncrypt(N);return this._buffer=new Uint8Array,encodeOutput(n,S)}if(this._mode===`ctr`||this._mode===`cfb`||this._mode===`ofb`){let n=this._processStream(N);return this._buffer=new Uint8Array,encodeOutput(n,S)}let F=Math.floor(N.length/16)*16,I=[];for(let n=0;n<F;n+=16){let a=N.slice(n,n+16);I.push(this._encryptBlock(a))}this._buffer=N.slice(F);let H=new Uint8Array(I.length*16);for(let n=0;n<I.length;n++)H.set(I[n],n*16);return encodeOutput(H,S)}final(n){if(this._finalized)throw Error(`Cipher already finalized`);if(this._finalized=!0,this._mode===`gcm`){let a=new Uint8Array;this._buffer.length>0&&(a=this._processGcmEncrypt(this._buffer),this._buffer=new Uint8Array);let S=new Uint8Array(this._gcmCiphertextLen),C=0;for(let n of this._gcmCiphertext)S.set(n,C),C+=n.length;let N=ghash(this._gcmH,this._gcmAAD,S),F=aesEncryptBlock(this._gcmJ0,this._roundKeys),I=new Uint8Array(16);for(let n=0;n<16;n++)I[n]=N[n]^F[n];return this._gcmAuthTag=lt.from(I),encodeOutput(a,n)}if(this._mode===`ctr`||this._mode===`cfb`||this._mode===`ofb`){if(this._buffer.length>0){let a=this._processStream(this._buffer);return this._buffer=new Uint8Array,encodeOutput(a,n)}return encodeOutput(new Uint8Array,n)}let a=this._buffer;if(this._autoPadding)a=pkcs7Pad(a);else if(a.length%16!=0)throw Error(`data not multiple of block size`);let S=[];for(let n=0;n<a.length;n+=16)S.push(this._encryptBlock(a.slice(n,n+16)));if(this._buffer=new Uint8Array,S.length===0)return encodeOutput(new Uint8Array,n);let C=new Uint8Array(S.length*16);for(let n=0;n<S.length;n++)C.set(S[n],n*16);return encodeOutput(C,n)}_encryptBlock(n){if(this._mode===`cbc`){let a=new Uint8Array(16);for(let S=0;S<16;S++)a[S]=n[S]^this._prevBlock[S];let S=aesEncryptBlock(a,this._roundKeys);return this._prevBlock=S,S}else if(this._mode===`ecb`)return aesEncryptBlock(n,this._roundKeys);throw Error(`Block encryption not supported for mode: ${this._mode}`)}_processStream(n){let a=new Uint8Array(n.length);for(let S=0;S<n.length;S+=16){let C=aesEncryptBlock(this._counter,this._roundKeys),N=Math.min(16,n.length-S);for(let F=0;F<N;F++)a[S+F]=n[S+F]^C[F];incrementCounter(this._counter)}return a}_processGcmEncrypt(n){let a=new Uint8Array(n.length);for(let S=0;S<n.length;S+=16){let C=aesEncryptBlock(this._counter,this._roundKeys),N=Math.min(16,n.length-S);for(let F=0;F<N;F++)a[S+F]=n[S+F]^C[F];gcmIncrementCounter(this._counter)}return this._gcmCiphertext.push(new Uint8Array(a)),this._gcmCiphertextLen+=a.length,a}},Decipher=class extends CipherBase{_prevBlock;_counter;_pendingUtf8=new Uint8Array;_gcmH=null;_gcmJ0=null;_gcmAAD=new Uint8Array;_gcmCiphertext=[];_gcmCiphertextLen=0;_gcmExpectedTag=null;_gcmAADSet=!1;constructor(n,a,S){super(n,a,S),this._prevBlock=new Uint8Array(this._iv),this._mode===`gcm`?(this._gcmH=aesEncryptBlock(new Uint8Array(16),this._roundKeys),this._gcmJ0=new Uint8Array(16),this._gcmJ0.set(this._iv.subarray(0,12)),this._gcmJ0[15]=1,this._counter=new Uint8Array(this._gcmJ0),gcmIncrementCounter(this._counter)):this._counter=new Uint8Array(this._iv)}setAAD(n){if(this._mode!==`gcm`)throw Error(`setAAD is only supported in GCM mode`);if(this._gcmCiphertextLen>0)throw Error(`setAAD must be called before update()`);return this._gcmAAD=new Uint8Array(n),this._gcmAADSet=!0,this}setAuthTag(n){if(this._mode!==`gcm`)throw Error(`setAuthTag is only supported in GCM mode`);return this._gcmExpectedTag=lt.from(n),this}_encodeWithUtf8Handling(n,a,S){if(!a||a!==`utf8`&&a!==`utf-8`)return encodeOutput(n,a);let C;if(this._pendingUtf8.length>0?(C=new Uint8Array(this._pendingUtf8.length+n.length),C.set(this._pendingUtf8),C.set(n,this._pendingUtf8.length),this._pendingUtf8=new Uint8Array):C=n,!S){let n=incompleteUtf8Tail(C);n>0&&(this._pendingUtf8=new Uint8Array(C.slice(C.length-n)),C=new Uint8Array(C.slice(0,C.length-n)))}return lt.from(C).toString(`utf8`)}update(n,a,S){let C=toBuffer$2(n,a),N=new Uint8Array(this._buffer.length+C.length);if(N.set(this._buffer),N.set(C,this._buffer.length),this._mode===`gcm`){this._gcmCiphertext.push(new Uint8Array(N)),this._gcmCiphertextLen+=N.length;let n=this._processGcmDecrypt(N);return this._buffer=new Uint8Array,this._encodeWithUtf8Handling(n,S,!1)}if(this._mode===`ctr`||this._mode===`cfb`||this._mode===`ofb`){let n=this._processStream(N);return this._buffer=new Uint8Array,this._encodeWithUtf8Handling(n,S,!1)}let F=Math.floor(N.length/16);if(F===0)return this._buffer=N,this._encodeWithUtf8Handling(new Uint8Array,S,!1);let I=(this._autoPadding?F-1:F)*16,H=[];for(let n=0;n<I;n+=16){let a=N.slice(n,n+16);H.push(this._decryptBlock(a))}this._buffer=N.slice(I);let W=new Uint8Array(H.length*16);for(let n=0;n<H.length;n++)W.set(H[n],n*16);return this._encodeWithUtf8Handling(W,S,!1)}final(n){if(this._finalized)throw Error(`Decipher already finalized`);if(this._finalized=!0,this._mode===`gcm`){let a=new Uint8Array;if(this._buffer.length>0&&(this._gcmCiphertext.push(new Uint8Array(this._buffer)),this._gcmCiphertextLen+=this._buffer.length,a=this._processGcmDecrypt(this._buffer),this._buffer=new Uint8Array),!this._gcmExpectedTag)throw Error(`Unsupported state or unable to authenticate data`);let S=new Uint8Array(this._gcmCiphertextLen),C=0;for(let n of this._gcmCiphertext)S.set(n,C),C+=n.length;let N=ghash(this._gcmH,this._gcmAAD,S),F=aesEncryptBlock(this._gcmJ0,this._roundKeys),I=new Uint8Array(16);for(let n=0;n<16;n++)I[n]=N[n]^F[n];let H=this._gcmExpectedTag,W=Math.min(H.length,16),K=0;for(let n=0;n<W;n++)K|=I[n]^H[n];if(K!==0)throw Error(`Unsupported state or unable to authenticate data`);return this._encodeWithUtf8Handling(a,n,!0)}if(this._mode===`ctr`||this._mode===`cfb`||this._mode===`ofb`){if(this._buffer.length>0){let a=this._processStream(this._buffer);return this._buffer=new Uint8Array,this._encodeWithUtf8Handling(a,n,!0)}return this._encodeWithUtf8Handling(new Uint8Array,n,!0)}if(this._buffer.length===0)return this._encodeWithUtf8Handling(new Uint8Array,n,!0);if(this._buffer.length%16!=0)throw Error(`bad decrypt`);let a=[];for(let n=0;n<this._buffer.length;n+=16)a.push(this._decryptBlock(this._buffer.slice(n,n+16)));let S=new Uint8Array(a.length*16);for(let n=0;n<a.length;n++)S.set(a[n],n*16);let C=this._autoPadding?pkcs7Unpad(S):S;return this._buffer=new Uint8Array,this._encodeWithUtf8Handling(C,n,!0)}_decryptBlock(n){if(this._mode===`cbc`){let a=aesDecryptBlock(n,this._roundKeys),S=new Uint8Array(16);for(let n=0;n<16;n++)S[n]=a[n]^this._prevBlock[n];return this._prevBlock=new Uint8Array(n),S}else if(this._mode===`ecb`)return aesDecryptBlock(n,this._roundKeys);throw Error(`Block decryption not supported for mode: ${this._mode}`)}_processStream(n){let a=new Uint8Array(n.length);for(let S=0;S<n.length;S+=16){let C=aesEncryptBlock(this._counter,this._roundKeys),N=Math.min(16,n.length-S);for(let F=0;F<N;F++)a[S+F]=n[S+F]^C[F];incrementCounter(this._counter)}return a}_processGcmDecrypt(n){let a=new Uint8Array(n.length);for(let S=0;S<n.length;S+=16){let C=aesEncryptBlock(this._counter,this._roundKeys),N=Math.min(16,n.length-S);for(let F=0;F<N;F++)a[S+F]=n[S+F]^C[F];gcmIncrementCounter(this._counter)}return a}}});function fillRandom(n){if(ha)for(let a=0;a<n.length;a+=65536){let S=Math.min(n.length-a,65536),C=new Uint8Array(n.buffer,n.byteOffset+a,S);globalThis.crypto.getRandomValues(C)}else try{let a=imports.gi.GLib;for(let S=0;S<n.length;S++)n[S]=a.random_int_range(0,256)}catch{for(let a=0;a<n.length;a++)n[a]=Math.floor(Math.random()*256)}}function randomBytes(n,a){if(typeof n!=`number`||n<0||!Number.isInteger(n))throw TypeError(`The "size" argument must be a non-negative integer. Received ${n}`);try{let S=lt.alloc(n);if(n>0&&fillRandom(new Uint8Array(S.buffer,S.byteOffset,S.byteLength)),a)a(null,S);else return S}catch(n){if(a)a(n,lt.alloc(0));else throw n}}function randomFillSync(n,a=0,S){let C=S??n.length-a;if(a<0||a>n.length)throw RangeError(`The value of "offset" is out of range. Received ${a}`);if(C<0||a+C>n.length)throw RangeError(`The value of "size" is out of range. Received ${C}`);if(C>0){let S=(n instanceof lt,n.byteOffset);fillRandom(new Uint8Array(n.buffer,S+a,C))}return n}function randomFill(n,a,S,C){let N,F,I;typeof a==`function`?(I=a,N=0,F=n.length):typeof S==`function`?(I=S,N=a,F=n.length-a):(I=C,N=a,F=S);try{randomFillSync(n,N,F),I(null,n)}catch(a){I(a,n)}}function randomUUID(){if(ha&&typeof globalThis.crypto.randomUUID==`function`)return globalThis.crypto.randomUUID();let n=new Uint8Array(16);fillRandom(n),n[6]=n[6]&15|64,n[8]=n[8]&63|128;let a=Array.from(n,n=>n.toString(16).padStart(2,`0`)).join(``);return`${a.slice(0,8)}-${a.slice(8,12)}-${a.slice(12,16)}-${a.slice(16,20)}-${a.slice(20)}`}function randomInt(n,a,S){let C,N,F;if(typeof a==`function`?(F=a,N=n,C=0):typeof a==`number`?(C=n,N=a,F=S):(N=n,C=0,F=S),!Number.isInteger(C))throw TypeError(`The "min" argument must be a safe integer. Received ${C}`);if(!Number.isInteger(N))throw TypeError(`The "max" argument must be a safe integer. Received ${N}`);if(C>=N)throw RangeError(`The value of "min" must be less than "max". Received min: ${C}, max: ${N}`);let I=N-C,H=new Uint32Array(1);fillRandom(new Uint8Array(H.buffer));let W=C+H[0]%I;if(F)F(null,W);else return W}var ha,ga=__esmMin(()=>{vt(),ha=globalThis.crypto!==void 0&&typeof globalThis.crypto.getRandomValues==`function`});function modPow(n,a,S){if(S===1n)return 0n;n=(n%S+S)%S;let C=1n;for(;a>0n;)a&1n&&(C=C*n%S),a>>=1n,n=n*n%S;return C}function bigIntToBytes(n,a){let S=new Uint8Array(a),C=n;for(let n=a-1;n>=0;n--)S[n]=Number(C&255n),C>>=8n;return S}function bytesToBigInt(n){let a=0n;for(let S=0;S<n.length;S++)a=a<<8n|BigInt(n[S]);return a}var _a=__esmMin(()=>{});function bigIntToBuffer(n){if(n===0n)return lt.from([0]);let a=n.toString(16);return a.length%2!=0&&(a=`0`+a),lt.from(a,`hex`)}function bufferToBigInt(n){if(n.length===0)return 0n;let a=lt.from(n).toString(`hex`);return a.length===0?0n:BigInt(`0x`+a)}function bitLength(n){return n===0n?0:n.toString(2).length}function simpleSieve(n){for(let a of ya){let S=BigInt(a);if(n%S===0n)return n===S}return!0}function fermatTest(n){return modPow(2n,n-1n,n)===1n}function millerRabinTest(n){if(n<2n)return!1;if(n===2n||n===3n)return!0;if(n%2n==0n)return!1;let a=n-1n,S=0;for(;a%2n==0n;)a/=2n,S++;for(let C of[2n,3n,5n,7n,11n,13n]){if(C>=n)continue;let N=modPow(C,a,n);if(N===1n||N===n-1n)continue;let F=!0;for(let a=0;a<S-1;a++)if(N=modPow(N,2n,n),N===n-1n){F=!1;break}if(F)return!1}return!0}function checkPrime(n,a){let S=a.toString(`hex`),C=0;if(n%2n==0n||!simpleSieve(n)||!fermatTest(n)||!millerRabinTest(n))return C+=1,S===`02`||S===`05`?C+=8:C+=4,C;switch(millerRabinTest(n>>1n)||(C+=2),S){case`02`:n%24n!=11n&&(C+=8);break;case`05`:{let a=n%10n;a!==3n&&a!==7n&&(C+=8)}break;default:C+=4}return C}function getCachedCheckPrime(n,a){let S=a.toString(`hex`)+`_`+n.toString(16);if(S in ba)return ba[S];let C=checkPrime(n,a);return ba[S]=C,C}function formatReturnValue$1(n,a){let S=bigIntToBuffer(n);return a?S.toString(a):S}function generatePrime(n,a){let S=bufferToBigInt(a);if(n<16)return S===2n||S===5n?lt.from([140,123]):lt.from([140,39]);let C=Math.ceil(n/8),N=2n,F=4n;for(;;){let a=bufferToBigInt(randomBytes(C));for(;bitLength(a)>n;)a>>=1n;if(a%N==0n&&(a+=1n),a&N||(a+=N),S===N)for(;a%24n!=11n;)a+=F;else if(S===5n)for(;a%10n!=3n;)a+=F;let I=a>>1n;if(simpleSieve(I)&&simpleSieve(a)&&fermatTest(I)&&fermatTest(a)&&millerRabinTest(I)&&millerRabinTest(a))return bigIntToBuffer(a)}}function createDiffieHellman(n,a,S,C){if(a!==void 0&&typeof a!=`number`&&(lt.isBuffer(a)||a instanceof Uint8Array||typeof a==`string`&&!(a in xa)))return createDiffieHellman(n,`binary`,a,S);let N=a||`binary`,F=C||`binary`,I=lt.from([2]);if(S!==void 0&&(typeof S==`number`?(I=lt.alloc(1),I[0]=S):I=lt.isBuffer(S)?S:lt.from(S,F)),typeof n==`number`)return new DiffieHellman(generatePrime(n,I),I,!0);let H;return H=lt.isBuffer(n)?n:n instanceof Uint8Array?lt.from(n):lt.from(n,N),new DiffieHellman(H,I,!0)}function getDiffieHellman(n){let a=va[n];if(!a)throw Error(`Unknown group: ${n}. Supported groups: ${Object.keys(va).join(`, `)}`);return new DiffieHellman(lt.from(a.prime,`hex`),lt.from(a.gen,`hex`),!1)}var va,ya,ba,DiffieHellman,xa,Sa,Ca,wa=__esmMin(()=>{_a(),ga(),vt(),va={modp1:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff`},modp2:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff`},modp5:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff`},modp14:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff`},modp15:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff`},modp16:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff`},modp17:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff`},modp18:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff`}},ya=[];{let n=1e3,a=new Uint8Array(1001);for(let S=2;S*S<=n;S++)if(!a[S])for(let C=S*S;C<=n;C+=S)a[C]=1;for(let S=2;S<=n;S++)a[S]||ya.push(S)}ba={},__name$1(formatReturnValue$1,`formatReturnValue`),DiffieHellman=class{_prime;_generator;_generatorBuf;_primeByteLength;_pubKey;_privKey;_primeCode;_malleable;constructor(n,a,S=!1){this._prime=bufferToBigInt(n),this._generatorBuf=a,this._generator=bufferToBigInt(a),this._primeByteLength=n.length,this._pubKey=void 0,this._privKey=void 0,this._primeCode=void 0,this._malleable=S,S||(this._primeCode=0,this.setPublicKey=void 0,this.setPrivateKey=void 0)}get verifyError(){return typeof this._primeCode!=`number`&&(this._primeCode=getCachedCheckPrime(this._prime,this._generatorBuf)),this._primeCode}generateKeys(n){if(!this._privKey){let n=randomBytes(this._primeByteLength);this._privKey=bufferToBigInt(n)}return this._pubKey=modPow(this._generator,this._privKey,this._prime),this.getPublicKey(n)}computeSecret(n,a,S){let C;C=typeof n==`string`?lt.from(n,a||`utf8`):lt.from(n);let N=bufferToBigInt(C);if(!this._privKey)throw Error(`You must generate keys before computing a secret`);if(N<=0n||N>=this._prime)throw Error(`Supplied key is too large`);let F=bigIntToBuffer(modPow(N,this._privKey,this._prime)),I=this._primeByteLength;if(F.length<I){let n=lt.alloc(I);F.copy(n,I-F.length),F=n}return S?F.toString(S):F}getPrime(n){return formatReturnValue$1(this._prime,n)}getGenerator(n){return formatReturnValue$1(this._generator,n)}getPublicKey(n){if(!this._pubKey)throw Error(`No public key - call generateKeys() first`);return formatReturnValue$1(this._pubKey,n)}getPrivateKey(n){if(!this._privKey)throw Error(`No private key - call generateKeys() first`);return formatReturnValue$1(this._privKey,n)}setPublicKey(n,a){if(!this._malleable)throw Error(`setPublicKey is not available for predefined DH groups`);let S=typeof n==`string`?lt.from(n,a||`utf8`):lt.from(n);this._pubKey=bufferToBigInt(S)}setPrivateKey(n,a){if(!this._malleable)throw Error(`setPrivateKey is not available for predefined DH groups`);let S=typeof n==`string`?lt.from(n,a||`utf8`):lt.from(n);this._privKey=bufferToBigInt(S)}},xa={binary:!0,hex:!0,base64:!0,latin1:!0,utf8:!0,"utf-8":!0,base64url:!0,ascii:!0,ucs2:!0,"ucs-2":!0,utf16le:!0,"utf-16le":!0},Sa=getDiffieHellman,Ca=getDiffieHellman});function mod(n,a){let S=n%a;return S<0n?S+a:S}function modInverse$2(n,a){if(n=mod(n,a),n===0n)throw Error(`No modular inverse for zero`);let[S,C]=[n,a],[N,F]=[1n,0n];for(;C!==0n;){let n=S/C;[S,C]=[C,S-n*C],[N,F]=[F,N-n*F]}if(S!==1n)throw Error(`Modular inverse does not exist`);return mod(N,a)}function pointAdd(n,a,S){if(n===null)return a;if(a===null)return n;let{p:C}=S;if(n.x===a.x)return mod(n.y+a.y,C)===0n?null:pointDouble(n,S);let N=mod(a.x-n.x,C),F=mod(mod(a.y-n.y,C)*modInverse$2(N,C),C),I=mod(F*F-n.x-a.x,C);return{x:I,y:mod(F*(n.x-I)-n.y,C)}}function pointDouble(n,a){if(n===null)return null;let{a:S,p:C}=a;if(n.y===0n)return null;let N=mod(mod(3n*n.x*n.x+S,C)*modInverse$2(mod(2n*n.y,C),C),C),F=mod(N*N-2n*n.x,C);return{x:F,y:mod(N*(n.x-F)-n.y,C)}}function scalarMul(n,a,S){if(a===null||n===0n)return null;let{n:C}=S;if(n=mod(n,C),n===0n)return null;let N=null,F=a,I=n.toString(2);for(let n=0;n<I.length;n++)I[n]===`1`?(N=pointAdd(N,F,S),F=pointDouble(F,S)):(F=pointAdd(N,F,S),N=pointDouble(N,S));return N}function bigintToBuffer(n,a){let S=n.toString(16).padStart(a*2,`0`);return lt.from(S,`hex`)}function bufferToBigint(n){let a=lt.from(n).toString(`hex`);return a.length===0?0n:BigInt(`0x`+a)}function encodePublicKey(n,a,S=`uncompressed`){if(n===null)throw Error(`Cannot encode the point at infinity`);let C=bigintToBuffer(n.x,a);if(S===`compressed`){let a=n.y%2n==0n?2:3;return lt.concat([lt.from([a]),C])}let N=bigintToBuffer(n.y,a);if(S===`hybrid`){let a=n.y%2n==0n?6:7;return lt.concat([lt.from([a]),C,N])}return lt.concat([lt.from([4]),C,N])}function decodePublicKey(n,a){let S=lt.from(n);if(S.length===0)throw Error(`Invalid public key: empty buffer`);let C=S[0],{p:N,a:F,b:I,byteLength:H}=a;if(C===4||C===6||C===7){if(S.length!==1+2*H)throw Error(`Invalid public key length: expected ${1+2*H} bytes, got ${S.length}`);let n=bufferToBigint(S.subarray(1,1+H)),a=bufferToBigint(S.subarray(1+H));if(mod(a*a,N)!==mod(n*n*n+F*n+I,N))throw Error(`Invalid public key: point is not on the curve`);return{x:n,y:a}}if(C===2||C===3){if(S.length!==1+H)throw Error(`Invalid public key length: expected ${1+H} bytes, got ${S.length}`);let n=bufferToBigint(S.subarray(1,1+H)),a=sqrtMod(mod(n*n*n+F*n+I,N),N);if(a===null)throw Error(`Invalid public key: no valid y coordinate for the given x`);let W=C===3;return{x:n,y:a%2n!=0n===W?a:mod(N-a,N)}}throw Error(`Invalid public key prefix: 0x${C.toString(16).padStart(2,`0`)}`)}function sqrtMod(n,a){if(n=mod(n,a),n===0n)return 0n;if(modPow(n,(a-1n)/2n,a)!==1n)return null;if(mod(a,4n)===3n)return modPow(n,(a+1n)/4n,a);let S=0n,C=a-1n;for(;mod(C,2n)===0n;)C/=2n,S++;let N=2n;for(;modPow(N,(a-1n)/2n,a)!==a-1n;)N++;let F=S,I=modPow(N,C,a),H=modPow(n,C,a),W=modPow(n,(C+1n)/2n,a);for(;;){if(H===0n)return 0n;if(H===1n)return W;let n=1n,S=mod(H*H,a);for(;S!==1n;)S=mod(S*S,a),n++;let C=modPow(I,modPow(2n,F-n-1n,a-1n),a);F=n,I=mod(C*C,a),H=mod(H*I,a),W=mod(W*C,a)}}function toBuffer$1(n,a){if(lt.isBuffer(n))return n;if(n instanceof Uint8Array)return lt.from(n);if(typeof n==`string`)return lt.from(n,a||`utf8`);if(ArrayBuffer.isView(n))return lt.from(n.buffer,n.byteOffset,n.byteLength);throw TypeError(`The "key" argument must be of type string or an instance of Buffer, TypedArray, or DataView.`)}function formatReturnValue(n,a){return a?n.toString(a):n}function resolveCurve(n){let a=Ea[n.toLowerCase()];if(!a)throw Error(`Unsupported curve: ${n}`);let S=Ta[a];if(!S)throw Error(`Unsupported curve: ${n}`);return{canonical:a,params:S}}function createECDH(n){return new ECDH(n)}function getCurves(){return[`secp256k1`,`prime256v1`,`secp256r1`,`secp384r1`,`secp521r1`]}var Ta,Ea,ECDH,Da=__esmMin(()=>{_a(),ga(),vt(),Ta={secp256k1:{p:115792089237316195423570985008687907853269984665640564039457584007908834671663n,a:0n,b:7n,Gx:55066263022277343669578718895168534326250603453777594175500187360389116729240n,Gy:32670510020758816978083085130507043184471273380659243275938904335757337482424n,n:115792089237316195423570985008687907852837564279074904382605163141518161494337n,byteLength:32},prime256v1:{p:115792089210356248762697446949407573530086143415290314195533631308867097853951n,a:115792089210356248762697446949407573530086143415290314195533631308867097853951n-3n,b:41058363725152142129326129780047268409114441015993725554835256314039467401291n,Gx:48439561293906451759052585252797914202762949526041747995844080717082404635286n,Gy:36134250956749795798585127919587881956611106672985015071877198253568414405109n,n:115792089210356248762697446949407573529996955224135760342422259061068512044369n,byteLength:32},secp384r1:{p:39402006196394479212279040100143613805079739270465446667948293404245721771496870329047266088258938001861606973112319n,a:39402006196394479212279040100143613805079739270465446667948293404245721771496870329047266088258938001861606973112319n-3n,b:27580193559959705877849011840389048093056905856361568521428707301988689241309860865136260764883745107765439761230575n,Gx:26247035095799689268623156744566981891852923491109213387815615900925518854738050089022388053975719786650872476732087n,Gy:8325710961489029985546751289520108179287853048861315594709205902480503199884419224438643760392947333078086511627871n,n:39402006196394479212279040100143613805079739270465446667946905279627659399113263569398956308152294913554433653942643n,byteLength:48},secp521r1:{p:6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057151n,a:6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057151n-3n,b:1093849038073734274511112390766805569936207598951683748994586394495953116150735016013708737573759623248592132296706313309438452531591012912142327488478985984n,Gx:2661740802050217063228768716723360960729859168756973147706671368418802944996427808491545080627771902352094241225065558662157113545570916814161637315895999846n,Gy:3757180025770020463545507224491183603594455134769762486694567779615544477440556316691234405012945539562144444537289428522585666729196580810124344277578376784n,n:6864797660130609714981900799081393217269435300143305409394463459185543183397655394245057746333217197532963996371363321113864768612440380340372808892707005449n,byteLength:66}},Ea={secp256k1:`secp256k1`,prime256v1:`prime256v1`,secp256r1:`prime256v1`,"p-256":`prime256v1`,p256:`prime256v1`,secp384r1:`secp384r1`,"p-384":`secp384r1`,p384:`secp384r1`,secp521r1:`secp521r1`,"p-521":`secp521r1`,p521:`secp521r1`},__name$1(modInverse$2,`modInverse`),__name$1(toBuffer$1,`toBuffer`),ECDH=class{_curve;_curveName;_privateKey=null;_publicKey=null;constructor(n){let a=resolveCurve(n);this._curve=a.params,this._curveName=a.canonical}generateKeys(n,a){let{n:S,byteLength:C}=this._curve,N;do N=bufferToBigint(randomBytes(C));while(N===0n||N>=S);this._privateKey=N;let F={x:this._curve.Gx,y:this._curve.Gy};return this._publicKey=scalarMul(N,F,this._curve),n===void 0?this.getPublicKey():this.getPublicKey(n,a)}computeSecret(n,a,S){if(this._privateKey===null)throw Error(`ECDH key not generated. Call generateKeys() or setPrivateKey() first.`);let C=decodePublicKey(toBuffer$1(n,a),this._curve);if(C===null)throw Error(`Invalid public key: point at infinity`);let N=scalarMul(this._privateKey,C,this._curve);if(N===null)throw Error(`Shared secret computation resulted in the point at infinity`);return formatReturnValue(bigintToBuffer(N.x,this._curve.byteLength),S)}getPublicKey(n,a){if(this._publicKey===null)throw Error(`ECDH key not generated. Call generateKeys() or setPrivateKey() first.`);return formatReturnValue(encodePublicKey(this._publicKey,this._curve.byteLength,a||`uncompressed`),n)}getPrivateKey(n){if(this._privateKey===null)throw Error(`ECDH key not generated. Call generateKeys() or setPrivateKey() first.`);return formatReturnValue(bigintToBuffer(this._privateKey,this._curve.byteLength),n)}setPublicKey(n,a){let S=toBuffer$1(n,a);this._publicKey=decodePublicKey(S,this._curve)}setPrivateKey(n,a){let S=bufferToBigint(toBuffer$1(n,a));if(S===0n||S>=this._curve.n)throw Error(`Private key is out of range [1, n-1]`);this._privateKey=S;let C={x:this._curve.Gx,y:this._curve.Gy};this._publicKey=scalarMul(S,C,this._curve)}}});function normalizeAlgorithm(n){return n.toLowerCase().replace(/-/g,``)}function hashSize(n){let a=Oa[normalizeAlgorithm(n)];if(a===void 0)throw Error(`Unknown hash algorithm: ${n}`);return a}function toBuffer(n,a){return typeof n==`string`?lt.from(n,a||`utf8`):n instanceof DataView?lt.from(n.buffer,n.byteOffset,n.byteLength):(n instanceof ArrayBuffer,lt.from(n))}var Oa,ka,Aa,ja=__esmMin(()=>{vt(),Oa={md5:16,sha1:20,sha256:32,sha384:48,sha512:64},ka={md5:64,sha1:64,sha256:64,sha384:128,sha512:128},Aa=new Set([`md5`,`sha1`,`sha256`,`sha384`,`sha512`])});function getChecksumType(n){let a=Ma[normalizeAlgorithm(n)];if(a===void 0){let a=Error(`Unknown message digest: ${n}`);throw a.code=`ERR_CRYPTO_HASH_UNKNOWN`,a}return a}function getHashes(){return[`md5`,`sha1`,`sha256`,`sha384`,`sha512`]}function hash(n,a,S){return new Na(n).update(a).digest(S)}var Ma,Na,Pa=__esmMin(()=>{ja(),vt(),se(),ni(),Ma={md5:Z.ChecksumType.MD5,sha1:Z.ChecksumType.SHA1,sha256:Z.ChecksumType.SHA256,sha384:Z.ChecksumType.SHA384,sha512:Z.ChecksumType.SHA512},Na=class Hash extends $r{_algorithm;_checksum;_finalized=!1;constructor(n){super();let a=normalizeAlgorithm(n),S=getChecksumType(a);this._algorithm=a,this._checksum=new Z.Checksum(S)}update(n,a){if(this._finalized)throw Error(`Digest already called`);let S;if(typeof n==`string`){let C=normalizeEncoding(a);S=lt.from(n,C)}else S=n instanceof Uint8Array?n:lt.from(n);return this._checksum.update(S),this}digest(n){if(this._finalized)throw Error(`Digest already called`);this._finalized=!0;let a=this._checksum.get_string(),S=lt.from(a,`hex`);return n?S.toString(n):S}copy(){if(this._finalized)throw Error(`Digest already called`);let n=Object.create(Hash.prototype);return $r.call(n),n._algorithm=this._algorithm,n._finalized=!1,n._checksum=this._checksum.copy(),n}_transform(n,a,S){try{this.update(n,a),S()}catch(n){S(n)}}_flush(n){try{this.push(this.digest()),n()}catch(a){n(a)}}}}),Hmac,Fa=__esmMin(()=>{ja(),Pa(),vt(),ni(),Hmac=class extends $r{_algorithm;_innerHash;_outerKeyPad;_finalized=!1;constructor(n,a){super();let S=normalizeAlgorithm(n);if(!Aa.has(S)){let a=Error(`Unknown message digest: ${n}`);throw a.code=`ERR_CRYPTO_HASH_UNKNOWN`,a}this._algorithm=S;let C;C=typeof a==`string`?lt.from(a,`utf8`):a instanceof Uint8Array?a:lt.from(a);let N=ka[S];if(C.length>N){let n=new Na(S);n.update(C),C=n.digest()}let F=new Uint8Array(N);F.set(C);let I=new Uint8Array(N),H=new Uint8Array(N);for(let n=0;n<N;n++)I[n]=F[n]^54,H[n]=F[n]^92;this._outerKeyPad=H,this._innerHash=new Na(S),this._innerHash.update(I)}update(n,a){if(this._finalized)throw Error(`Digest already called`);let S;if(typeof n==`string`){let C=normalizeEncoding(a);S=lt.from(n,C)}else S=n instanceof Uint8Array?n:lt.from(n);return this._innerHash.update(S),this}digest(n){if(this._finalized)throw Error(`Digest already called`);this._finalized=!0;let a=this._innerHash.digest(),S=new Na(this._algorithm);S.update(this._outerKeyPad),S.update(a);let C=S.digest();return n?C.toString(n):C}_transform(n,a,S){try{this.update(n,a),S()}catch(n){S(n)}}_flush(n){try{this.push(this.digest()),n()}catch(a){n(a)}}}});function getCurve(n){let a=Ea[n.toLowerCase()];if(!a)throw Error(`Unsupported curve: ${n}`);return Ta[a]}function truncateHash(n,a){let S=a.n.toString(2).length,C=bytesToBigInt(n),N=n.length*8;return N>S&&(C>>=BigInt(N-S)),C}function hmacDigest$2(n,a,S){let C=new Hmac(n,a);return C.update(S),new Uint8Array(C.digest())}function rfc6979(n,a,S,C){let N=C.byteLength,F=S.length,I=new Uint8Array(F).fill(1),H=new Uint8Array(F).fill(0),W=bigIntToBytes(a,N),K=bigIntToBytes(mod(truncateHash(S,C),C.n),N),q=new Uint8Array(F+1+N+N);q.set(I,0),q[F]=0,q.set(W,F+1),q.set(K,F+1+N),H=hmacDigest$2(n,H,q),I=hmacDigest$2(n,H,I);let Y=new Uint8Array(F+1+N+N);Y.set(I,0),Y[F]=1,Y.set(W,F+1),Y.set(K,F+1+N),H=hmacDigest$2(n,H,Y),I=hmacDigest$2(n,H,I);for(let a=0;a<100;a++){let a=new Uint8Array;for(;a.length<N;){I=hmacDigest$2(n,H,I);let S=new Uint8Array(a.length+I.length);S.set(a,0),S.set(I,a.length),a=S}let S=truncateHash(a.slice(0,N),C);if(S>=1n&&S<C.n)return S;let W=new Uint8Array(F+1);W.set(I,0),W[F]=0,H=hmacDigest$2(n,H,W),I=hmacDigest$2(n,H,I)}throw Error(`RFC 6979: failed to generate valid k after 100 attempts`)}function ecdsaSign(n,a,S,C){let N=getCurve(C),F={x:N.Gx,y:N.Gy},I=bytesToBigInt(a),H=new Na(n);H.update(S);let W=new Uint8Array(H.digest()),K=truncateHash(W,N),q=rfc6979(n,I,W,N),Y=scalarMul(q,F,N);if(Y===null)throw Error(`ECDSA: k * G is point at infinity`);let X=mod(Y.x,N.n);if(X===0n)throw Error(`ECDSA: r is zero`);let te=mod(modInverse$2(q,N.n)*(K+X*I),N.n);if(te===0n)throw Error(`ECDSA: s is zero`);let ne=N.byteLength,re=new Uint8Array(ne*2);return re.set(bigIntToBytes(X,ne),0),re.set(bigIntToBytes(te,ne),ne),re}function ecdsaVerify(n,a,S,C,N){let F=getCurve(N),I={x:F.Gx,y:F.Gy},H=F.byteLength;if(a[0]!==4||a.length!==1+H*2)return!1;let W={x:bytesToBigInt(a.slice(1,1+H)),y:bytesToBigInt(a.slice(1+H))};if(S.length!==H*2)return!1;let K=bytesToBigInt(S.slice(0,H)),q=bytesToBigInt(S.slice(H));if(K<1n||K>=F.n||q<1n||q>=F.n)return!1;let Y=new Na(n);Y.update(C);let X=truncateHash(new Uint8Array(Y.digest()),F),te=modInverse$2(q,F.n),ne=mod(X*te,F.n),re=mod(K*te,F.n),ie=pointAdd(scalarMul(ne,I,F),scalarMul(re,W,F),F);return ie===null?!1:mod(ie.x,F.n)===K}var Ia=__esmMin(()=>{_a(),Da(),Pa(),Fa(),__name$1(hmacDigest$2,`hmacDigest`)});function hmacDigest$1(n,a,S){let C=new Hmac(n,a);return C.update(S),C.digest()}function hkdfExtract(n,a,S){return hmacDigest$1(n,S,a)}function hkdfExpand(n,a,S,C,N){let F=Math.ceil(C/N);if(F>255)throw Error(`HKDF cannot generate more than 255 * HashLen bytes`);let I=lt.allocUnsafe(F*N),H=lt.alloc(0);for(let C=1;C<=F;C++)H=hmacDigest$1(n,a,lt.concat([H,S,lt.from([C])])),H.copy(I,(C-1)*N);return lt.from(I.buffer,I.byteOffset,C)}function hkdfSync(n,a,S,C,N){let F=normalizeAlgorithm(n),I=Oa[F];if(!Aa.has(F)||I===void 0)throw TypeError(`Unknown message digest: ${n}`);if(typeof N!=`number`||N<0)throw TypeError(`keylen must be a non-negative number`);let H=toBuffer(a),W=toBuffer(S),K=toBuffer(C),q=hkdfExpand(F,hkdfExtract(F,H,W.length===0?lt.alloc(I,0):W),K,N,I),Y=new ArrayBuffer(q.length);return new Uint8Array(Y).set(q),Y}function hkdf(n,a,S,C,N,F){setTimeout(()=>{try{F(null,hkdfSync(n,a,S,C,N))}catch(n){F(n instanceof Error?n:Error(String(n)))}},0)}var La=__esmMin(()=>{ja(),Fa(),vt(),__name$1(hmacDigest$1,`hmacDigest`)});function hmacDigest(n,a,S){let C=new Hmac(n,a);return C.update(S),C.digest()}function validateParameters(n,a){if(typeof n!=`number`||n<0||!Number.isFinite(n)||n===0)throw TypeError(`iterations must be a positive number`);if(typeof a!=`number`||a<0||!Number.isFinite(a)||a>2147483647)throw TypeError(`keylen must be a positive number`)}function pbkdf2Sync(n,a,S,C,N){validateParameters(S,C);let F=toBuffer(n),I=toBuffer(a),H=normalizeAlgorithm(N||`sha1`),W=Oa[H];if(!Aa.has(H)||W===void 0)throw TypeError(`Unknown message digest: ${N||`sha1`}`);if(C===0)return lt.alloc(0);let K=Math.ceil(C/W),q=lt.allocUnsafe(K*W);for(let n=1;n<=K;n++){let a=lt.allocUnsafe(I.length+4);I.copy(a,0),a.writeUInt32BE(n,I.length);let C=hmacDigest(H,F,a),N=lt.from(C);for(let n=1;n<S;n++){C=hmacDigest(H,F,C);for(let n=0;n<W;n++)N[n]^=C[n]}N.copy(q,(n-1)*W)}return lt.from(q.buffer,q.byteOffset,C)}function pbkdf2(n,a,S,C,N,F){validateParameters(S,C),setTimeout(()=>{try{F(null,pbkdf2Sync(n,a,S,C,N))}catch(n){F(n instanceof Error?n:Error(String(n)))}},0)}var Ra=__esmMin(()=>{ja(),Fa(),vt()});function R$2(n,a){return(n<<a|n>>>32-a)>>>0}function salsa20_8(n){let a=new Uint32Array(16);for(let S=0;S<16;S++)a[S]=n[S];for(let n=0;n<4;n++)a[4]^=R$2(a[0]+a[12],7),a[8]^=R$2(a[4]+a[0],9),a[12]^=R$2(a[8]+a[4],13),a[0]^=R$2(a[12]+a[8],18),a[9]^=R$2(a[5]+a[1],7),a[13]^=R$2(a[9]+a[5],9),a[1]^=R$2(a[13]+a[9],13),a[5]^=R$2(a[1]+a[13],18),a[14]^=R$2(a[10]+a[6],7),a[2]^=R$2(a[14]+a[10],9),a[6]^=R$2(a[2]+a[14],13),a[10]^=R$2(a[6]+a[2],18),a[3]^=R$2(a[15]+a[11],7),a[7]^=R$2(a[3]+a[15],9),a[11]^=R$2(a[7]+a[3],13),a[15]^=R$2(a[11]+a[7],18),a[1]^=R$2(a[0]+a[3],7),a[2]^=R$2(a[1]+a[0],9),a[3]^=R$2(a[2]+a[1],13),a[0]^=R$2(a[3]+a[2],18),a[6]^=R$2(a[5]+a[4],7),a[7]^=R$2(a[6]+a[5],9),a[4]^=R$2(a[7]+a[6],13),a[5]^=R$2(a[4]+a[7],18),a[11]^=R$2(a[10]+a[9],7),a[8]^=R$2(a[11]+a[10],9),a[9]^=R$2(a[8]+a[11],13),a[10]^=R$2(a[9]+a[8],18),a[12]^=R$2(a[15]+a[14],7),a[13]^=R$2(a[12]+a[15],9),a[14]^=R$2(a[13]+a[12],13),a[15]^=R$2(a[14]+a[13],18);for(let S=0;S<16;S++)n[S]=n[S]+a[S]>>>0}function blockMix(n,a){let S=2*a*16,C=new Uint32Array(16);for(let a=0;a<16;a++)C[a]=n[S-16+a];let N=new Uint32Array(S);for(let S=0;S<2*a;S++){for(let a=0;a<16;a++)C[a]^=n[S*16+a];salsa20_8(C);for(let n=0;n<16;n++)N[S*16+n]=C[n]}for(let S=0;S<a;S++)for(let a=0;a<16;a++)n[S*16+a]=N[2*S*16+a];for(let S=0;S<a;S++)for(let C=0;C<16;C++)n[(a+S)*16+C]=N[(2*S+1)*16+C]}function roMix(n,a,S){let C=2*S*16,N=Array.from({length:a});for(let C=0;C<a;C++)N[C]=new Uint32Array(n),blockMix(n,S);for(let F=0;F<a;F++){let F=n[C-16]&a-1;for(let a=0;a<C;a++)n[a]^=N[F][a];blockMix(n,S)}}function bytesToWords(n){let a=new Uint32Array(n.length/4);for(let S=0;S<a.length;S++)a[S]=n[S*4]|n[S*4+1]<<8|n[S*4+2]<<16|n[S*4+3]<<24;return a}function wordsToBytes(n){let a=new Uint8Array(n.length*4);for(let S=0;S<n.length;S++)a[S*4]=n[S]&255,a[S*4+1]=n[S]>>8&255,a[S*4+2]=n[S]>>16&255,a[S*4+3]=n[S]>>24&255;return a}function scryptCore(n,a,S,C,N,F){let I=128*C,H=pbkdf2Sync(n,a,1,N*I,`sha256`);for(let n=0;n<N;n++){let a=new Uint8Array(H.buffer,H.byteOffset+n*I,I),N=bytesToWords(a);roMix(N,S,C);let F=wordsToBytes(N);a.set(F)}return pbkdf2Sync(n,H,1,F,`sha256`)}function scryptSync(n,a,S,C){let N=lt.from(n),F=lt.from(a),I=C?.N??16384,H=C?.r??8,W=C?.p??1;if(I<=0||I&I-1)throw Error(`N must be a positive power of 2`);return scryptCore(N,F,I,H,W,S)}function scrypt(n,a,S,C,N){let F={},I;typeof C==`function`?I=C:(F=C,I=N);try{let C=scryptSync(n,a,S,F);setTimeout(()=>I(null,C),0)}catch(n){setTimeout(()=>I(n instanceof Error?n:Error(String(n)),lt.alloc(0)),0)}}var za=__esmMin(()=>{Ra(),vt(),__name$1(R$2,`R`)});function pemToDer(n){let a=n.trim().split(/\r?\n/),S=a.findIndex(n=>n.startsWith(`-----BEGIN `));if(S===-1)throw Error(`Invalid PEM: no BEGIN line found`);let C=a[S].match(/^-----BEGIN (.+)-----$/);if(!C)throw Error(`Invalid PEM header format`);let N=C[1],F=a.findIndex((n,a)=>a>S&&n.startsWith(`-----END `));if(F===-1)throw Error(`Invalid PEM: no END line found`);let I=a.slice(S+1,F).join(``),H=lt.from(I,`base64`);return{type:N,der:new Uint8Array(H.buffer,H.byteOffset,H.byteLength)}}function parseTlv(n,a){if(a>=n.length)throw Error(`ASN.1 parse error: unexpected end of data`);let S=n[a++],C,N=n[a++];if(N<128)C=N;else{let S=N&127;if(S===0)throw Error(`ASN.1 parse error: indefinite length not supported`);C=0;for(let N=0;N<S;N++)C=C<<8|n[a++]}let F=n.slice(a,a+C),I=a+C,H={tag:S,data:F};return S===48&&(H.children=parseSequenceChildren(F)),{value:H,next:I}}function parseSequenceChildren(n){let a=[],S=0;for(;S<n.length;){let{value:C,next:N}=parseTlv(n,S);a.push(C),S=N}return a}function parseDer(n){let{value:a}=parseTlv(n,0);return a}function integerToBigInt(n){let a=0;for(;a<n.length-1&&n[a]===0;)a++;let S=0n;for(let C=a;C<n.length;C++)S=S<<8n|BigInt(n[C]);return S}function oidsEqual(n,a){if(n.length!==a.length)return!1;for(let S=0;S<n.length;S++)if(n[S]!==a[S])return!1;return!0}function parseRsaPublicKeyPkcs1(n){let a=n.children;if(!a||a.length<2)throw Error(`Invalid PKCS#1 RSAPublicKey structure`);return{n:integerToBigInt(a[0].data),e:integerToBigInt(a[1].data)}}function parseRsaPrivateKeyPkcs1(n){let a=n.children;if(!a||a.length<6)throw Error(`Invalid PKCS#1 RSAPrivateKey structure`);return{n:integerToBigInt(a[1].data),e:integerToBigInt(a[2].data),d:integerToBigInt(a[3].data),p:integerToBigInt(a[4].data),q:integerToBigInt(a[5].data)}}function parseSubjectPublicKeyInfo(n){let a=n.children;if(!a||a.length<2)throw Error(`Invalid SubjectPublicKeyInfo structure`);let S=a[0];if(!S.children||S.children.length<1)throw Error(`Invalid AlgorithmIdentifier`);let C=S.children[0];if(C.tag!==6||!oidsEqual(C.data,Ba))throw Error(`Unsupported algorithm: only RSA is supported`);let N=a[1];if(N.tag!==3)throw Error(`Expected BIT STRING for public key data`);return parseRsaPublicKeyPkcs1(parseDer(N.data.slice(1)))}function parsePrivateKeyInfo(n){let a=n.children;if(!a||a.length<3)throw Error(`Invalid PrivateKeyInfo structure`);let S=a[1];if(!S.children||S.children.length<1)throw Error(`Invalid AlgorithmIdentifier`);let C=S.children[0];if(C.tag!==6||!oidsEqual(C.data,Ba))throw Error(`Unsupported algorithm: only RSA is supported`);let N=a[2];if(N.tag!==4)throw Error(`Expected OCTET STRING for private key data`);return parseRsaPrivateKeyPkcs1(parseDer(N.data))}function encodeLength(n){if(n<128)return new Uint8Array([n]);let a=[],S=n;for(;S>0;)a.unshift(S&255),S>>=8;return new Uint8Array([128|a.length,...a])}function encodeTlv(n,a){let S=encodeLength(a.length),C=new Uint8Array(1+S.length+a.length);return C[0]=n,C.set(S,1),C.set(a,1+S.length),C}function bigintToAsn1Integer(n){if(n===0n)return encodeTlv(2,new Uint8Array([0]));let a=n.toString(16),S=a.length%2?`0`+a:a,C=[];for(let n=0;n<S.length;n+=2)C.push(parseInt(S.substring(n,n+2),16));return C[0]&128&&C.unshift(0),encodeTlv(2,new Uint8Array(C))}function encodeSequence(n){let a=0;for(let S of n)a+=S.length;let S=new Uint8Array(a),C=0;for(let a of n)S.set(a,C),C+=a.length;return encodeTlv(48,S)}function encodeBitString(n){let a=new Uint8Array(1+n.length);return a[0]=0,a.set(n,1),encodeTlv(3,a)}function encodeOctetString(n){return encodeTlv(4,n)}function encodeOid(n){return encodeTlv(6,n)}function encodeNull(){return new Uint8Array([5,0])}function encodeRsaPublicKeyPkcs1(n){return encodeSequence([bigintToAsn1Integer(n.n),bigintToAsn1Integer(n.e)])}function encodeSubjectPublicKeyInfo(n){return encodeSequence([encodeSequence([encodeOid(Ba),encodeNull()]),encodeBitString(encodeRsaPublicKeyPkcs1(n))])}function encodeRsaPrivateKeyPkcs1(n){let a=n.d%(n.p-1n),S=n.d%(n.q-1n),C=modInverse$1(n.q,n.p);return encodeSequence([bigintToAsn1Integer(0n),bigintToAsn1Integer(n.n),bigintToAsn1Integer(n.e),bigintToAsn1Integer(n.d),bigintToAsn1Integer(n.p),bigintToAsn1Integer(n.q),bigintToAsn1Integer(a),bigintToAsn1Integer(S),bigintToAsn1Integer(C)])}function encodePrivateKeyInfo(n){let a=encodeSequence([encodeOid(Ba),encodeNull()]),S=encodeOctetString(encodeRsaPrivateKeyPkcs1(n));return encodeSequence([bigintToAsn1Integer(0n),a,S])}function derToPem(n,a){let S=lt.from(n).toString(`base64`),C=[`-----BEGIN ${a}-----`];for(let n=0;n<S.length;n+=64)C.push(S.substring(n,n+64));return C.push(`-----END ${a}-----`),C.join(`
|
|
9
|
+
--`+n;let a=new Uint8Array(n.length);for(let S=0;S<n.length;S++)a[S]=n.charCodeAt(S),this.boundaryChars[a[S]]=!0;this.boundary=a,this.lookbehind=new Uint8Array(this.boundary.length+8)}write(n){let a=0,S=n.length,C=this.index,{lookbehind:N,boundary:F,boundaryChars:I,index:H,state:W,flags:K}=this,q=this.boundary.length,Y=q-1,X=n.length,te,ne,mark=n=>{this[n+`Mark`]=a},clear=n=>{delete this[n+`Mark`]},callback=(n,a,S,C)=>{(a===void 0||a!==S)&&this[n](C&&C.subarray(a,S))},dataCallback=(S,C=!1)=>{let N=S+`Mark`;N in this&&(C?(callback(S,this[N],a,n),delete this[N]):(callback(S,this[N],n.length,n),this[N]=0))};for(a=0;a<S;a++)switch(te=n[a],W){case 0:if(H===F.length-2){if(te===45)K|=Bi.LAST_BOUNDARY;else if(te!==13)return;H++;break}else if(H-1==F.length-2){if(K&Bi.LAST_BOUNDARY&&te===45)W=9,K=0;else if(!(K&Bi.LAST_BOUNDARY)&&te===10)H=0,callback(`onPartBegin`),W=1;else return;break}te!==F[H+2]&&(H=-2),te===F[H+2]&&H++;break;case 1:W=2,mark(`onHeaderField`),H=0;case 2:if(te===13){clear(`onHeaderField`),W=6;break}if(H++,te===45)break;if(te===58){if(H===1)return;dataCallback(`onHeaderField`,!0),W=3;break}if(ne=lower(te),ne<97||ne>122)return;break;case 3:if(te===32)break;mark(`onHeaderValue`),W=4;case 4:te===13&&(dataCallback(`onHeaderValue`,!0),callback(`onHeaderEnd`),W=5);break;case 5:if(te!==10)return;W=1;break;case 6:if(te!==10)return;callback(`onHeadersEnd`),W=7;break;case 7:W=8,mark(`onPartData`);case 8:if(C=H,H===0){for(a+=Y;a<X&&!(n[a]in I);)a+=q;a-=Y,te=n[a]}if(H<F.length)F[H]===te?(H===0&&dataCallback(`onPartData`,!0),H++):H=0;else if(H===F.length)H++,te===13?K|=Bi.PART_BOUNDARY:te===45?K|=Bi.LAST_BOUNDARY:H=0;else if(H-1===F.length)if(K&Bi.PART_BOUNDARY){if(H=0,te===10){K&=~Bi.PART_BOUNDARY,callback(`onPartEnd`),callback(`onPartBegin`),W=1;break}}else K&Bi.LAST_BOUNDARY&&te===45?(callback(`onPartEnd`),W=9,K=0):H=0;if(H>0)N[H-1]=te;else if(C>0){let n=new Uint8Array(N.buffer,N.byteOffset,N.byteLength);callback(`onPartData`,0,C,n),C=0,mark(`onPartData`),a--}break;case 9:break;default:throw Error(`Unexpected state entered: ${W}`)}dataCallback(`onHeaderField`),dataCallback(`onHeaderValue`),dataCallback(`onPartData`),this.index=H,this.state=W,this.flags=K}end(){if(this.state===1&&this.index===0||this.state===8&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==9)throw Error(`MultipartParser.end(): stream ended unexpectedly`)}}});Ae(),Ti(),ki(),fn(),vt(),ni(),Ii(),__name((n,a)=>new Promise((S,C)=>{pipeline(n,a,n=>{n?C(n):S()})}),`pipeline`);const Ui=Symbol(`Body internals`);function isAnyArrayBuffer$2(n){return n instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&n instanceof SharedArrayBuffer}__name$1(isAnyArrayBuffer$2,`isAnyArrayBuffer`);var Body=class{[Ui]={body:null,stream:null,boundary:``,disturbed:!1,error:null};size=0;constructor(n,a={size:0}){if(this.size=a.size||0,n==null)this[Ui].body=null;else if(isURLSearchParameters(n))this[Ui].body=lt.from(n.toString());else if(isBlob(n))this[Ui].body=n;else if(lt.isBuffer(n))this[Ui].body=n;else if(isAnyArrayBuffer$2(n))this[Ui].body=lt.from(n);else if(ArrayBuffer.isView(n))this[Ui].body=lt.from(n.buffer,n.byteOffset,n.byteLength);else if(n instanceof Xr)this[Ui].body=n;else if(typeof ReadableStream<`u`&&n instanceof ReadableStream)this[Ui].body=readableStreamToReadable(n);else if(n instanceof FormData){let a=formDataToBlob(n);this[Ui].body=a,this[Ui].boundary=a.type?.split(`boundary=`)?.[1]??``}else typeof n==`string`?this[Ui].body=lt.from(n):n instanceof ln?this[Ui].body=lt.from(n.toString()):(ke.warn(`Unknown body type "${typeof n}", try to parse the body to string!`),this[Ui].body=lt.from(String(n)));let S=this[Ui].body;lt.isBuffer(S)?this[Ui].stream=Xr.from(S):isBlob(S)?this[Ui].stream=Xr.from(blobToAsyncIterable(S)):S instanceof Xr&&(this[Ui].stream=S),S instanceof Yr&&S.on(`error`,n=>{let a=n instanceof FetchBaseError?n:new FetchError(`Invalid response body while trying to fetch ${this.url}: ${n.message}`,`system`,n);this[Ui].error=a})}get body(){let n=this[Ui].stream;if(!n)return null;if(typeof ReadableStream<`u`){let a=!1;return new ReadableStream({start(S){n.on(`data`,n=>{if(!a)try{S.enqueue(n instanceof Uint8Array?n:new Uint8Array(n))}catch{}}),n.on(`end`,()=>{if(!a){a=!0;try{S.close()}catch{}}}),n.on(`error`,n=>{if(!a){a=!0;try{S.error(n)}catch{}}})},cancel(){a=!0,n.destroy()}})}return null}get _stream(){return this[Ui].stream}get _rawBodyBuffer(){let n=this[Ui].body;return n===null?null:lt.isBuffer(n)?n:n instanceof Uint8Array?lt.from(n.buffer,n.byteOffset,n.byteLength):null}get bodyUsed(){return this[Ui].disturbed}async arrayBuffer(){let{buffer:n,byteOffset:a,byteLength:S}=await consumeBody(this);return n.slice(a,a+S)}async formData(){let n=this.headers?.get(`content-type`);if(n?.startsWith(`application/x-www-form-urlencoded`)){let n=new FormData,a=new ln(await this.text());for(let[S,C]of a)n.append(S,C);return n}let{toFormData:a}=await Promise.resolve().then(()=>(Hi(),Li));return a(this.body,n)}async blob(){let n=this.headers?.get(`content-type`)||this[Ui].body&&this[Ui].body.type||``;return new X([await this.arrayBuffer()],{type:n})}async json(){let n=await this.text();return JSON.parse(n)}async text(){let n=await consumeBody(this);return new TextDecoder().decode(n)}};Object.defineProperties(Body.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}});async function consumeBody(n){if(n[Ui].disturbed)throw TypeError(`body used already for: ${n.url}`);if(n[Ui].disturbed=!0,n[Ui].error)throw n[Ui].error;let{_stream:a}=n;if(a===null||!(a instanceof Yr))return lt.alloc(0);let S=[],C=0;try{for await(let N of a){if(n.size>0&&C+N.length>n.size){let S=new FetchError(`content size at ${n.url} over limit: ${n.size}`,`max-size`);throw a.destroy(S),S}C+=N.length,S.push(N)}}catch(a){let S=a instanceof Error?a:Error(String(a));throw a instanceof FetchBaseError?a:new FetchError(`Invalid response body while trying to fetch ${n.url}: ${S.message}`,`system`,S)}try{return S.every(n=>typeof n==`string`)?lt.from(S.join(``)):lt.concat(S,C)}catch(a){let S=a instanceof Error?a:Error(String(a));throw new FetchError(`Could not create Buffer from response body for ${n.url}: ${S.message}`,`system`,S)}}const clone=(n,a)=>{let S,C,{body:N}=n[Ui];if(n.bodyUsed)throw Error(`cannot clone body after it is used`);return N instanceof Yr&&typeof N.getBoundary!=`function`&&(S=new ei({highWaterMark:a}),C=new ei({highWaterMark:a}),N.pipe(S),N.pipe(C),n[Ui].stream=S,N=C),N},extractContentType=(n,a)=>n===null?null:typeof n==`string`?`text/plain;charset=UTF-8`:isURLSearchParameters(n)?`application/x-www-form-urlencoded;charset=UTF-8`:isBlob(n)?n.type||null:lt.isBuffer(n)||isAnyArrayBuffer$2(n)||ArrayBuffer.isView(n)?null:n instanceof FormData?`multipart/form-data; boundary=${a[Ui].boundary}`:n instanceof Yr?null:`text/plain;charset=UTF-8`,getTotalBytes=n=>{let{body:a}=n[Ui];if(a===null)return 0;if(isBlob(a))return a.size;if(lt.isBuffer(a))return a.length;if(a&&typeof a.getLengthSync==`function`){let n=a;return n.hasKnownLength&&n.hasKnownLength()?n.getLengthSync():null}return null};function readableStreamToReadable(n){let a=n.getReader();return new Xr({async read(){try{let{done:n,value:S}=await a.read();n?this.push(null):this.push(lt.from(S))}catch(n){this.destroy(n)}},destroy(n,S){a.cancel().then(()=>S(null),S)}})}async function*blobToAsyncIterable(n){if(typeof n.stream==`function`){let a=n.stream().getReader();for(;;){let{done:n,value:S}=await a.read();if(n)break;yield S}}else yield new Uint8Array(await n.arrayBuffer())}const Wi=new Set([301,302,303,307,308]),isRedirect=n=>Wi.has(n);fn(),se(),he();const Gi=Symbol(`Response internals`);var Ki=class Response extends Body{[Gi];_inputStream=null;constructor(n=null,a={}){super(n,a);let S=a.status==null?200:a.status,C=new Oi(a.headers);if(n!==null&&!C.has(`Content-Type`)){let a=extractContentType(n,this);a&&C.append(`Content-Type`,a)}this[Gi]={type:`default`,url:a.url,status:S,statusText:a.statusText||``,headers:C,counter:a.counter,highWaterMark:a.highWaterMark}}get type(){return this[Gi].type}get url(){return this[Gi].url||``}get status(){return this[Gi].status}get ok(){return this[Gi].status>=200&&this[Gi].status<300}get redirected(){return this[Gi].counter>0}get statusText(){return this[Gi].statusText}get headers(){return this[Gi].headers}get highWaterMark(){return this[Gi].highWaterMark}clone(){return new Response(clone(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(n,a=302){if(!isRedirect(a))throw RangeError(`Failed to execute "redirect" on "response": Invalid status code`);return new Response(null,{headers:{location:new un(n).toString()},status:a})}static error(){let n=new Response(null,{status:0,statusText:``});return n[Gi].type=`error`,n}static json(n,a){let S=JSON.stringify(n),C={...a},N=new Oi(C.headers);return N.has(`content-type`)||N.set(`content-type`,`application/json`),C.headers=N,new Response(S,C)}get[Symbol.toStringTag](){return`Response`}async text(){if(!this._inputStream)return super.text();let n=me.MemoryOutputStream.new_resizable();await new Promise((a,S)=>{n.splice_async(this._inputStream,me.OutputStreamSpliceFlags.CLOSE_TARGET|me.OutputStreamSpliceFlags.CLOSE_SOURCE,Z.PRIORITY_DEFAULT,null,(C,N)=>{try{a(n.splice_finish(N))}catch(n){S(n)}})});let a=n.steal_as_bytes();return new TextDecoder().decode(a.toArray())}};Object.defineProperties(Ki.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}}),ni(),se(),Xe();async function soupSendAsync(n,a,S=Z.PRIORITY_DEFAULT,C=null){return new Promise((N,F)=>{n.send_async(a,S,C,(a,S)=>{try{N(n.send_finish(S))}catch(n){F(n)}})})}function inputStreamToReadable(n,a={}){return Xr.from(inputStreamAsyncIterator(n),a)}he(),se(),ni(),Xe(),he(),Xe(),Kt(),he();function isIP(n){if(typeof n!=`string`)return 0;let a=n.includes(`%`)?n.split(`%`)[0]:n,S=me.InetAddress.new_from_string(a);if(!S)return 0;switch(S.get_family()){case me.SocketFamily.INVALID:return 0;case me.SocketFamily.IPV4:return 4;case me.SocketFamily.IPV6:return 6}}fn();function stripURLForUseAsAReferrer(n,a=!1){if(n==null||n===`no-referrer`)return`no-referrer`;let S=new un(n);return/^(about|blob|data):$/.test(S.protocol)?`no-referrer`:(S.username=``,S.password=``,S.hash=``,a&&(S.pathname=``,S.search=``),S)}const qi=new Set([``,`no-referrer`,`no-referrer-when-downgrade`,`same-origin`,`origin`,`strict-origin`,`origin-when-cross-origin`,`strict-origin-when-cross-origin`,`unsafe-url`]);function validateReferrerPolicy(n){if(!qi.has(n))throw TypeError(`Invalid referrerPolicy: ${n}`);return n}function isOriginPotentiallyTrustworthy(n){if(/^(http|ws)s:$/.test(n.protocol))return!0;let a=n.host.replace(/(^\[)|(]$)/g,``),S=isIP(a);return S===4&&a.startsWith(`127.`)||S===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(a)?!0:n.host===`localhost`||n.host.endsWith(`.localhost`)?!1:n.protocol===`file:`}function isUrlPotentiallyTrustworthy(n){return/^about:(blank|srcdoc)$/.test(n.toString())||(typeof n==`string`&&(n=new un(n)),n.protocol===`data:`)||/^(blob|filesystem):$/.test(n.protocol)?!0:isOriginPotentiallyTrustworthy(n)}function determineRequestsReferrer(n,a={}){let{referrerURLCallback:S,referrerOriginCallback:C}=a;if(n.referrer===`no-referrer`||n.referrerPolicy===``)return null;let N=n.referrerPolicy;if(n.referrer===`about:client`)return`no-referrer`;let F=new un(n.referrer),I=stripURLForUseAsAReferrer(F),H=stripURLForUseAsAReferrer(F,!0);I.toString().length>4096&&(I=H),S&&(I=S(I)),C&&(H=C(H));let W=new un(n.url);switch(N){case`no-referrer`:return`no-referrer`;case`origin`:return H;case`unsafe-url`:return I;case`strict-origin`:return isUrlPotentiallyTrustworthy(I)&&!isUrlPotentiallyTrustworthy(W)?`no-referrer`:H.toString();case`strict-origin-when-cross-origin`:return I.origin===W.origin?I:isUrlPotentiallyTrustworthy(I)&&!isUrlPotentiallyTrustworthy(W)?`no-referrer`:H;case`same-origin`:return I.origin===W.origin?I:`no-referrer`;case`origin-when-cross-origin`:return I.origin===W.origin?I:H;case`no-referrer-when-downgrade`:return isUrlPotentiallyTrustworthy(I)&&!isUrlPotentiallyTrustworthy(W)?`no-referrer`:I;default:throw TypeError(`Invalid referrerPolicy: ${N}`)}}function parseReferrerPolicyFromHeader(n){let a=(n.get(`referrer-policy`)||``).split(/[,\s]+/),S=``;for(let n of a)n&&qi.has(n)&&(S=n);return S}fn(),se(),he();const Ji=Symbol(`Request internals`);let Yi=null;function envPositiveInt(n,a){let S=Z.getenv(n);if(!S)return a;let C=Number.parseInt(S,10);return Number.isFinite(C)&&C>0?C:a}function getSharedSession(){if(Yi===null){let n=envPositiveInt(`GJSIFY_FETCH_MAX_CONNS_PER_HOST`,16),a=Math.max(envPositiveInt(`GJSIFY_FETCH_MAX_CONNS`,64),n);Yi=new Ei.Session({maxConns:a,maxConnsPerHost:n});try{Yi.remove_feature_by_type(Ei.ContentDecoder.$gtype)}catch{}}return Yi}const isRequest=n=>typeof n==`object`&&typeof n.url==`string`;var Xi=class Request extends Body{cache;credentials;destination;get headers(){return this[Ji].headers}integrity;keepalive;get method(){return this[Ji].method}mode;get redirect(){return this[Ji].redirect}get referrer(){if(this[Ji].referrer===`no-referrer`)return``;if(this[Ji].referrer===`client`)return`about:client`;if(this[Ji].referrer)return this[Ji].referrer.toString()}get referrerPolicy(){return this[Ji].referrerPolicy}set referrerPolicy(n){this[Ji].referrerPolicy=validateReferrerPolicy(n)}get signal(){return this[Ji].signal}get url(){return this[Ji].parsedURL.toString()}get _uri(){return Z.Uri.parse(this.url,Z.UriFlags.ENCODED)}get _session(){return this[Ji].session}get _message(){return this[Ji].message}get _inputStream(){return this[Ji].inputStream}get[Symbol.toStringTag](){return`Request`}[Ji];follow;compress=!1;counter=0;agent=``;highWaterMark=16384;insecureHTTPParser=!1;constructor(n,a){let S=n,C=a||{},N,F={};if(isRequest(n)?(N=new un(S.url),F=S):N=new un(n),N.username!==``||N.password!==``)throw TypeError(`${N} is an url with embedded credentials.`);let I=C.method||F.method||`GET`;if(/^(delete|get|head|options|post|put)$/i.test(I)&&(I=I.toUpperCase()),(a?.body!=null||isRequest(n)&&S.body!==null)&&(I===`GET`||I===`HEAD`))throw TypeError(`Request with GET/HEAD method cannot have body`);let H=a?.body?a.body:isRequest(n)&&S.body!==null?clone(n):null;super(H,{size:C.size||0});let W=new Oi(a?.headers||S.headers||{});if(H!==null&&!W.has(`Content-Type`)){let n=extractContentType(H,this);n&&W.set(`Content-Type`,n)}let K=isRequest(n)?S.signal:null;if(a&&`signal`in a&&(K=a.signal),K!=null&&!isAbortSignal(K))throw TypeError(`Expected signal to be an instanceof AbortSignal or EventTarget`);let q=a?.referrer==null?S.referrer:a.referrer;if(q===``)q=`no-referrer`;else if(q){let n=new un(q);q=/^about:(\/\/)?client$/.test(n.toString())?`client`:n}else q=void 0;let Y=N.protocol,X=null,te=null;(Y===`http:`||Y===`https:`)&&(X=getSharedSession(),te=new Ei.Message({method:I,uri:Z.Uri.parse(N.toString(),Z.UriFlags.ENCODED)})),this[Ji]={method:I,redirect:a?.redirect||S.redirect||`follow`,headers:W,parsedURL:N,signal:K,referrer:q,referrerPolicy:``,session:X,message:te},this.follow=C.follow===void 0?S.follow===void 0?20:S.follow:C.follow,this.compress=C.compress===void 0?S.compress===void 0?!0:S.compress:C.compress,this.counter=C.counter||S.counter||0,this.agent=C.agent||S.agent,this.highWaterMark=C.highWaterMark||S.highWaterMark||16384,this.insecureHTTPParser=C.insecureHTTPParser||S.insecureHTTPParser||!1,this.referrerPolicy=a?.referrerPolicy||S.referrerPolicy||``}async _send(n){let{session:a,message:S}=this[Ji];if(!a||!S)throw Error(`Cannot send request: no Soup session (non-HTTP URL?)`);n.headers._appendToSoupMessage(S);let C=this._rawBodyBuffer;if(C!==null&&C.byteLength>0){let a=n.headers.get(`content-type`)||null;S.set_request_body_from_bytes(a,new Z.Bytes(C))}let N=new me.Cancellable;return this[Ji].inputStream=await soupSendAsync(a,S,Z.PRIORITY_DEFAULT,N),this[Ji].readable=inputStreamToReadable(this[Ji].inputStream),{inputStream:this[Ji].inputStream,readable:this[Ji].readable,cancellable:N}}clone(){return new Request(this)}async arrayBuffer(){return super.arrayBuffer()}async blob(){return super.blob()}async formData(){return super.formData()}async json(){return super.json()}async text(){return super.text()}};Object.defineProperties(Xi.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});const getSoupRequestOptions=n=>{let{parsedURL:a}=n[Ji],S=new Oi(n[Ji].headers);S.has(`Accept`)||S.set(`Accept`,`*/*`);let C=null;if(n.body===null&&/^(post|put)$/i.test(n.method)&&(C=`0`),n.body!==null){let a=getTotalBytes(n);typeof a==`number`&&!Number.isNaN(a)&&(C=String(a))}C&&S.set(`Content-Length`,C),n.referrerPolicy===``&&(n.referrerPolicy=`strict-origin-when-cross-origin`),n.referrer&&n.referrer!==`no-referrer`?n[Ji].referrer=determineRequestsReferrer(n):n[Ji].referrer=`no-referrer`,n[Ji].referrer instanceof un&&S.set(`Referer`,n.referrer),S.has(`User-Agent`)||S.set(`User-Agent`,`gjsify-fetch`),n.compress&&!S.has(`Accept-Encoding`)&&S.set(`Accept-Encoding`,`gzip, deflate`);let{agent:N}=n;return typeof N==`function`&&(N=N(a)),!S.has(`Connection`)&&!N&&S.set(`Connection`,`close`),{parsedURL:a,options:{headers:S}}};function parseDataUri(n){let a=n.match(/^data:([^,]*?)(;base64)?,(.*)$/s);if(!a)throw TypeError(`Invalid data URI: ${n.slice(0,50)}...`);let S=a[1]||`text/plain;charset=US-ASCII`,C=!!a[2],N=a[3],F;if(C){let n=atob(N);F=new Uint8Array(n.length);for(let a=0;a<n.length;a++)F[a]=n.charCodeAt(a)}else F=new TextEncoder().encode(decodeURIComponent(N));return{buffer:F,typeFull:S}}var AbortError=class extends FetchBaseError{constructor(n,a=`aborted`){super(n,a)}};Ae(),ki(),fn(),ni(),se();const Zi=new Set([`data:`,`http:`,`https:`,`file:`]);function rewriteRootRelativeUrl(n){if(typeof n!=`string`||!n.startsWith(`/`)||n.startsWith(`//`))return n;let a=globalThis,S=a.__GJSIFY_DEBUG_FETCH===!0;try{let C=a.imports?.system?.programPath??a.imports?.system?.programInvocationName??``;if(!C)return n;let N=`file://${Z.path_get_dirname(C)}${n}`;return S&&ke.log(`[fetch] rewrite ${n} → ${N}`),N}catch(a){return S&&ke.warn(`[fetch] rewrite FAILED: ${a instanceof Error?a.message:String(a)}`),n}}async function fetch$1(n,a={}){n=rewriteRootRelativeUrl(n);let S=new Xi(n,a),{parsedURL:C,options:N}=getSoupRequestOptions(S);if(!Zi.has(C.protocol))throw TypeError(`@gjsify/fetch cannot load ${n}. URL scheme "${C.protocol.replace(/:$/,``)}" is not supported.`);if(C.protocol===`data:`){let{buffer:n,typeFull:a}=parseDataUri(S.url);return new Ki(Buffer.from(n),{headers:{"Content-Type":a}})}if(C.protocol===`file:`){let n=globalThis.__GJSIFY_DEBUG_FETCH===!0;n&&ke.log(`[fetch] file:// ${S.url}`);try{let a=Z.filename_from_uri(S.url)[0];n&&ke.log(`[fetch] file:// path=${a}`);let[C,N]=Z.file_get_contents(a);if(n&&ke.log(`[fetch] file:// ok=${C} bytes=${N?.byteLength??`?`}`),!C)throw new FetchError(`Failed to read file: ${a}`,`system`);let F=N,I=new Uint8Array(F.byteLength);I.set(F);let H=new Ki(I);return n&&ke.log(`[fetch] file:// response created`),H}catch(a){let C=a instanceof Error?a:Error(String(a));throw n&&ke.warn(`[fetch] file:// FAIL: ${C.message}`),new FetchError(`request to ${S.url} failed, reason: ${C.message}`,`system`,C)}}let{signal:F}=S;if(F&&F.aborted)throw new AbortError(`The operation was aborted.`);let I,H;try{let n=await S._send(N);I=n.readable,H=n.cancellable}catch(n){let a=n instanceof Error?n:Error(String(n));throw new FetchError(`request to ${S.url} failed, reason: ${a.message}`,`system`,a)}let abortHandler=()=>{H.cancel()};F&&F.addEventListener(`abort`,abortHandler,{once:!0});let finalize=()=>{F&&F.removeEventListener(`abort`,abortHandler)};H.connect(()=>{I.destroy(new AbortError(`The operation was aborted.`))}),I.on(`error`,n=>{finalize()});let W=S._message,K=Oi._newFromSoupMessage(W),q=W.status_code,Y=W.get_reason_phrase();if(isRedirect(q)){let n=K.get(`Location`),C=null;try{C=n===null?null:new un(n,S.url)}catch{if(S.redirect!==`manual`)throw finalize(),new FetchError(`uri requested responds with an invalid redirect URL: ${n}`,`invalid-redirect`)}switch(S.redirect){case`error`:throw finalize(),new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${S.url}`,`no-redirect`);case`manual`:break;case`follow`:{if(C===null)break;if(S.counter>=S.follow)throw finalize(),new FetchError(`maximum redirect reached at: ${S.url}`,`max-redirect`);let n={headers:new Oi(S.headers),follow:S.follow,counter:S.counter+1,agent:S.agent,compress:S.compress,method:S.method,body:clone(S),signal:S.signal,size:S.size,referrer:S.referrer,referrerPolicy:S.referrerPolicy};if(!isDomainOrSubdomain(S.url,C)||!isSameProtocol(S.url,C))for(let a of[`authorization`,`www-authenticate`,`cookie`,`cookie2`])n.headers.delete(a);if(q!==303&&S.body&&a.body instanceof ti.Readable)throw finalize(),new FetchError(`Cannot follow redirect with body being a readable stream`,`unsupported-redirect`);(q===303||(q===301||q===302)&&S.method===`POST`)&&(n.method=`GET`,n.body=void 0,n.headers.delete(`content-length`));let N=parseReferrerPolicyFromHeader(K);return N&&(n.referrerPolicy=N),finalize(),fetch$1(new Xi(C,n))}default:throw TypeError(`Redirect option '${S.redirect}' is not a valid value of RequestRedirect`)}}let te={url:S.url,status:q,statusText:Y,headers:K,size:S.size,counter:S.counter,highWaterMark:S.highWaterMark},ne=K.get(`Content-Encoding`);if(!S.compress||S.method===`HEAD`||ne===null||q===204||q===304)return finalize(),new Ki(I,te);if(typeof DecompressionStream<`u`){let n=null;if(ne===`gzip`||ne===`x-gzip`?n=`gzip`:(ne===`deflate`||ne===`x-deflate`)&&(n=`deflate`),n){let a=new X([await new Ki(I,te).arrayBuffer()]).stream().pipeThrough(new DecompressionStream(n));return finalize(),new Ki(a,te)}}return finalize(),new Ki(I,te)}__name$1(fetch$1,`fetch`);const Qi=globalThis;globalThis.fetch===void 0&&(Qi.fetch=fetch$1),globalThis.Headers===void 0&&(Qi.Headers=Oi),globalThis.Request===void 0&&(Qi.Request=Xi),globalThis.Response===void 0&&(Qi.Response=Ki);const $i=globalThis;globalThis.ByteLengthQueuingStrategy===void 0&&($i.ByteLengthQueuingStrategy=Dr),globalThis.CountQueuingStrategy===void 0&&($i.CountQueuingStrategy=Or);const ea=globalThis;function isNativeStreamUsable$2(n,a){try{return typeof n==`function`?typeof n.prototype?.[a]==`function`:!1}catch{return!1}}__name$1(isNativeStreamUsable$2,`isNativeStreamUsable`),isNativeStreamUsable$2(globalThis.ReadableStream,`getReader`)||(ea.ReadableStream=wr),ea.ReadableStreamBYOBReader===void 0&&(ea.ReadableStreamBYOBReader=ReadableStreamBYOBReader),ea.ReadableStreamBYOBRequest===void 0&&(ea.ReadableStreamBYOBRequest=ReadableStreamBYOBRequest),ea.ReadableByteStreamController===void 0&&(ea.ReadableByteStreamController=ReadableByteStreamController),ea.ReadableStreamDefaultController===void 0&&(ea.ReadableStreamDefaultController=ReadableStreamDefaultController),ea.ReadableStreamDefaultReader===void 0&&(ea.ReadableStreamDefaultReader=ReadableStreamDefaultReader);const ta=globalThis;globalThis.TextEncoderStream===void 0&&(ta.TextEncoderStream=kr),globalThis.TextDecoderStream===void 0&&(ta.TextDecoderStream=Ar);function isNativeStreamUsable$1(n,a){try{return typeof n==`function`?typeof n.prototype?.[a]==`function`:!1}catch{return!1}}if(__name$1(isNativeStreamUsable$1,`isNativeStreamUsable`),!isNativeStreamUsable$1(globalThis.TransformStream,`readable`)){let n=globalThis;n.TransformStream=Er}function isNativeStreamUsable(n,a){try{return typeof n==`function`?typeof n.prototype?.[a]==`function`:!1}catch{return!1}}if(!isNativeStreamUsable(globalThis.WritableStream,`getWriter`)){let n=globalThis;n.WritableStream=Tr}var CryptoKey=class{type;extractable;algorithm;usages;_handle;constructor(n,a,S,C,N){this.type=n,this.extractable=a,this.algorithm=Object.freeze({...S}),this.usages=Object.freeze([...C]),this._handle=N}get[Symbol.toStringTag](){return`CryptoKey`}};function normalizeAlgorithm$1(n){if(typeof n==`string`)return{name:n};if(!n||typeof n.name!=`string`)throw TypeError(`Algorithm must have a name property`);return n}__name$1(normalizeAlgorithm$1,`normalizeAlgorithm`);const na={"SHA-1":`sha1`,"SHA-256":`sha256`,"SHA-384":`sha384`,"SHA-512":`sha512`};function toNodeHashName(n){let a=na[n.toUpperCase()]||na[n];if(!a)throw new Tn(`Unrecognized hash name: ${n}`,`NotSupportedError`);return a}const ra={"P-256":`prime256v1`,"P-384":`secp384r1`,"P-521":`secp521r1`};function toNodeCurveName(n){let a=ra[n];if(!a)throw new Tn(`Unrecognized curve name: ${n}`,`NotSupportedError`);return a}function hashSize$1(n){switch(toNodeHashName(n)){case`sha1`:return 20;case`sha256`:return 32;case`sha384`:return 48;case`sha512`:return 64;default:throw new Tn(`Unsupported hash: ${n}`,`NotSupportedError`)}}__name$1(hashSize$1,`hashSize`);function validateUsages(n,a){for(let S of n)if(!a.includes(S))throw new Tn(`Invalid key usage: ${S}`,`SyntaxError`);if(n.length===0)throw new Tn(`Key usages must not be empty`,`SyntaxError`)}function checkUsage(n,a){if(!n.usages.includes(a))throw new Tn(`Key does not support the '${a}' usage`,`InvalidAccessError`)}const ia=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,aa=new Uint8Array(128);for(let n=0;n<64;n++)aa[ia.charCodeAt(n)]=n;function bytesToBase64$1(n){let a=``,S=n.length;for(let C=0;C<S;C+=3){let N=n[C],F=C+1<S?n[C+1]:0,I=C+2<S?n[C+2]:0;a+=ia[N>>2&63],a+=ia[(N<<4|F>>4)&63],a+=C+1<S?ia[(F<<2|I>>6)&63]:`=`,a+=C+2<S?ia[I&63]:`=`}return a}__name$1(bytesToBase64$1,`bytesToBase64`);function base64ToBytes(n){let a=n;for(;a.endsWith(`=`);)a=a.slice(0,-1);let S=[],C=0,N=0;for(let n=0;n<a.length;n++)N=N<<6|aa[a.charCodeAt(n)],C+=6,C>=8&&(C-=8,S.push(N>>C&255));return new Uint8Array(S)}function base64urlEncode(n){return bytesToBase64$1(n).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/,``)}function base64urlDecode(n){let a=n.replace(/-/g,`+`).replace(/_/g,`/`);for(;a.length%4;)a+=`=`;return base64ToBytes(a)}function toUint8Array(n){if(n instanceof Uint8Array)return n;if(n instanceof ArrayBuffer)return new Uint8Array(n);if(ArrayBuffer.isView(n))return new Uint8Array(n.buffer,n.byteOffset,n.byteLength);throw TypeError(`Expected BufferSource`)}var oa,sa=__esmMin(()=>{oa={RSA_PKCS1_PADDING:1,RSA_NO_PADDING:3,RSA_PKCS1_OAEP_PADDING:4,RSA_PKCS1_PSS_PADDING:6,DH_CHECK_P_NOT_SAFE_PRIME:2,DH_CHECK_P_NOT_PRIME:1,DH_UNABLE_TO_CHECK_GENERATOR:4,DH_NOT_SUITABLE_GENERATOR:8}});function timingSafeEqual(n,a){if(n.length!==a.length)throw RangeError(`Input buffers must have the same byte length`);let S=0;for(let C=0;C<n.length;C++)S|=n[C]^a[C];return S===0}var ca=__esmMin(()=>{});function gmul(n,a){let S=0;for(let C=0;C<8;C++){a&1&&(S^=n);let C=n&128;n=n<<1&255,C&&(n^=27),a>>=1}return S}function keyExpansion(n){let a=n.length/4,S=a+6,C=4*(S+1),N=Array.from({length:C});for(let S=0;S<a;S++)N[S]=new Uint8Array([n[4*S],n[4*S+1],n[4*S+2],n[4*S+3]]);for(let n=a;n<C;n++){let S=new Uint8Array(N[n-1]);n%a===0?S=new Uint8Array([la[S[1]]^da[n/a-1],la[S[2]],la[S[3]],la[S[0]]]):a>6&&n%a===4&&(S=new Uint8Array([la[S[0]],la[S[1]],la[S[2]],la[S[3]]])),N[n]=new Uint8Array(4);for(let C=0;C<4;C++)N[n][C]=N[n-a][C]^S[C]}let F=[];for(let n=0;n<=S;n++){let a=new Uint8Array(16);for(let S=0;S<4;S++)a[4*S]=N[4*n+S][0],a[4*S+1]=N[4*n+S][1],a[4*S+2]=N[4*n+S][2],a[4*S+3]=N[4*n+S][3];F.push(a)}return F}function aesEncryptBlock(n,a){let S=new Uint8Array(n),C=a.length-1;for(let n=0;n<16;n++)S[n]^=a[0][n];for(let n=1;n<C;n++){for(let n=0;n<16;n++)S[n]=la[S[n]];let C=S[1];S[1]=S[5],S[5]=S[9],S[9]=S[13],S[13]=C;let N=S[2],F=S[6];S[2]=S[10],S[6]=S[14],S[10]=N,S[14]=F;let I=S[15];S[15]=S[11],S[11]=S[7],S[7]=S[3],S[3]=I;for(let n=0;n<4;n++){let a=n*4,C=S[a],N=S[a+1],F=S[a+2],I=S[a+3];S[a]=gmul(2,C)^gmul(3,N)^F^I,S[a+1]=C^gmul(2,N)^gmul(3,F)^I,S[a+2]=C^N^gmul(2,F)^gmul(3,I),S[a+3]=gmul(3,C)^N^F^gmul(2,I)}for(let C=0;C<16;C++)S[C]^=a[n][C]}for(let n=0;n<16;n++)S[n]=la[S[n]];let N=S[1];S[1]=S[5],S[5]=S[9],S[9]=S[13],S[13]=N;let F=S[2],I=S[6];S[2]=S[10],S[6]=S[14],S[10]=F,S[14]=I;let H=S[15];S[15]=S[11],S[11]=S[7],S[7]=S[3],S[3]=H;for(let n=0;n<16;n++)S[n]^=a[C][n];return S}function aesDecryptBlock(n,a){let S=new Uint8Array(n),C=a.length-1;for(let n=0;n<16;n++)S[n]^=a[C][n];for(let n=C-1;n>0;n--){let C=S[13];S[13]=S[9],S[9]=S[5],S[5]=S[1],S[1]=C;let N=S[10],F=S[14];S[10]=S[2],S[14]=S[6],S[2]=N,S[6]=F;let I=S[3];S[3]=S[7],S[7]=S[11],S[11]=S[15],S[15]=I;for(let n=0;n<16;n++)S[n]=ua[S[n]];for(let C=0;C<16;C++)S[C]^=a[n][C];for(let n=0;n<4;n++){let a=n*4,C=S[a],N=S[a+1],F=S[a+2],I=S[a+3];S[a]=gmul(14,C)^gmul(11,N)^gmul(13,F)^gmul(9,I),S[a+1]=gmul(9,C)^gmul(14,N)^gmul(11,F)^gmul(13,I),S[a+2]=gmul(13,C)^gmul(9,N)^gmul(14,F)^gmul(11,I),S[a+3]=gmul(11,C)^gmul(13,N)^gmul(9,F)^gmul(14,I)}}let N=S[13];S[13]=S[9],S[9]=S[5],S[5]=S[1],S[1]=N;let F=S[10],I=S[14];S[10]=S[2],S[14]=S[6],S[2]=F,S[6]=I;let H=S[3];S[3]=S[7],S[7]=S[11],S[11]=S[15],S[15]=H;for(let n=0;n<16;n++)S[n]=ua[S[n]];for(let n=0;n<16;n++)S[n]^=a[0][n];return S}function incrementCounter(n){for(let a=15;a>=0&&++n[a]===0;a--);}function gcmIncrementCounter(n){for(let a=15;a>=12&&++n[a]===0;a--);}function gfMul(n,a){let S=new Uint8Array(16),C=new Uint8Array(n);for(let n=0;n<128;n++){if(a[n>>>3]&1<<7-(n&7))for(let n=0;n<16;n++)S[n]^=C[n];let N=C[15]&1;for(let n=15;n>0;n--)C[n]=C[n]>>>1|(C[n-1]&1)<<7;C[0]>>>=1,N&&(C[0]^=225)}return S}function ghash(n,a,S){let C=new Uint8Array(16),N=Math.ceil(a.length/16)||0;for(let S=0;S<N;S++){let N=S*16,F=Math.min(N+16,a.length);for(let n=0;n<16;n++){let S=N+n;S<F&&(C[n]^=a[S])}let I=gfMul(C,n);C.set(I)}let F=Math.ceil(S.length/16)||0;for(let a=0;a<F;a++){let N=a*16,F=Math.min(N+16,S.length);for(let n=0;n<16;n++){let a=N+n;a<F&&(C[n]^=S[a])}let I=gfMul(C,n);C.set(I)}let I=new Uint8Array(16),H=a.length*8,W=S.length*8,K=Math.floor(H/4294967296),q=H>>>0;I[0]=K>>>24&255,I[1]=K>>>16&255,I[2]=K>>>8&255,I[3]=K&255,I[4]=q>>>24&255,I[5]=q>>>16&255,I[6]=q>>>8&255,I[7]=q&255;let Y=Math.floor(W/4294967296),X=W>>>0;I[8]=Y>>>24&255,I[9]=Y>>>16&255,I[10]=Y>>>8&255,I[11]=Y&255,I[12]=X>>>24&255,I[13]=X>>>16&255,I[14]=X>>>8&255,I[15]=X&255;for(let n=0;n<16;n++)C[n]^=I[n];let te=gfMul(C,n);return C.set(te),C}var la,ua,da,fa=__esmMin(()=>{la=new Uint8Array([99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22]),ua=new Uint8Array([82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125]),da=[1,2,4,8,16,32,64,128,27,54]});function parseAlgorithm(n){let a=n.toLowerCase().match(/^aes-(128|192|256)-(cbc|ctr|ecb|cfb|ofb|gcm)$/);if(!a)throw Error(`Unsupported cipher algorithm: ${n}`);let S=parseInt(a[1]),C=a[2];return{keySize:S/8,ivSize:C===`ecb`?0:C===`gcm`?12:16,mode:C}}function toBuffer$2(n,a){return typeof n==`string`?lt.from(n,a||`utf8`):lt.from(n)}function encodeOutput(n,a){return a?lt.from(n).toString(a):lt.from(n)}function incompleteUtf8Tail(n){if(n.length===0)return 0;let a=n.length;for(let S=1;S<=Math.min(4,a);S++){let C=n[a-S];if(!(C&128))return 0;if((C&192)==128)continue;let N;if((C&224)==192)N=2;else if((C&240)==224)N=3;else if((C&248)==240)N=4;else return 0;return S<N?S:0}return 0}function pkcs7Pad(n){let a=16-n.length%16,S=new Uint8Array(n.length+a);S.set(n);for(let C=n.length;C<S.length;C++)S[C]=a;return S}function pkcs7Unpad(n){if(n.length===0||n.length%16!=0)throw Error(`bad decrypt`);let a=n[n.length-1];if(a===0||a>16)throw Error(`bad decrypt`);for(let S=n.length-a;S<n.length;S++)if(n[S]!==a)throw Error(`bad decrypt`);return new Uint8Array(n.slice(0,n.length-a))}var pa=__esmMin(()=>{vt(),__name$1(toBuffer$2,`toBuffer`)});function createCipher(n,a){throw Error(`crypto.createCipher() is deprecated. Use createCipheriv() instead.`)}function createCipheriv(n,a,S){return new Cipher(n,typeof a==`string`?lt.from(a):new Uint8Array(a),S==null?null:typeof S==`string`?lt.from(S):new Uint8Array(S))}function createDecipher(n,a){throw Error(`crypto.createDecipher() is deprecated. Use createDecipheriv() instead.`)}function createDecipheriv(n,a,S){return new Decipher(n,typeof a==`string`?lt.from(a):new Uint8Array(a),S==null?null:typeof S==`string`?lt.from(S):new Uint8Array(S))}function getCiphers(){return[`aes-128-cbc`,`aes-128-ecb`,`aes-192-cbc`,`aes-192-ecb`,`aes-256-cbc`,`aes-256-ecb`,`aes-128-ctr`,`aes-192-ctr`,`aes-256-ctr`,`aes-128-cfb`,`aes-192-cfb`,`aes-256-cfb`,`aes-128-gcm`,`aes-192-gcm`,`aes-256-gcm`]}var CipherBase,Cipher,Decipher,ma=__esmMin(()=>{fa(),pa(),vt(),CipherBase=class{_roundKeys;_iv;_mode;_buffer=new Uint8Array;_autoPadding=!0;_finalized=!1;constructor(n,a,S){let C=parseAlgorithm(n);if(a.length!==C.keySize)throw Error(`Invalid key length ${a.length}, expected ${C.keySize} for ${n}`);if(C.ivSize>0&&(!S||S.length!==C.ivSize))throw Error(`Invalid IV length ${S?.length??0}, expected ${C.ivSize} for ${n}`);this._roundKeys=keyExpansion(a),this._iv=S?new Uint8Array(S):new Uint8Array(16),this._mode=C.mode}setAutoPadding(n){return this._autoPadding=n,this}},Cipher=class extends CipherBase{_prevBlock;_counter;_gcmH=null;_gcmJ0=null;_gcmAAD=new Uint8Array;_gcmCiphertext=[];_gcmCiphertextLen=0;_gcmAuthTag=null;_gcmAADSet=!1;constructor(n,a,S){super(n,a,S),this._prevBlock=new Uint8Array(this._iv),this._mode===`gcm`?(this._gcmH=aesEncryptBlock(new Uint8Array(16),this._roundKeys),this._gcmJ0=new Uint8Array(16),this._gcmJ0.set(this._iv.subarray(0,12)),this._gcmJ0[15]=1,this._counter=new Uint8Array(this._gcmJ0),gcmIncrementCounter(this._counter)):this._counter=new Uint8Array(this._iv)}setAAD(n){if(this._mode!==`gcm`)throw Error(`setAAD is only supported in GCM mode`);if(this._gcmCiphertextLen>0)throw Error(`setAAD must be called before update()`);return this._gcmAAD=new Uint8Array(n),this._gcmAADSet=!0,this}getAuthTag(){if(this._mode!==`gcm`)throw Error(`getAuthTag is only supported in GCM mode`);if(!this._gcmAuthTag)throw Error(`getAuthTag must be called after final()`);return lt.from(this._gcmAuthTag)}update(n,a,S){let C=toBuffer$2(n,a),N=new Uint8Array(this._buffer.length+C.length);if(N.set(this._buffer),N.set(C,this._buffer.length),this._mode===`gcm`){let n=this._processGcmEncrypt(N);return this._buffer=new Uint8Array,encodeOutput(n,S)}if(this._mode===`ctr`||this._mode===`cfb`||this._mode===`ofb`){let n=this._processStream(N);return this._buffer=new Uint8Array,encodeOutput(n,S)}let F=Math.floor(N.length/16)*16,I=[];for(let n=0;n<F;n+=16){let a=N.slice(n,n+16);I.push(this._encryptBlock(a))}this._buffer=N.slice(F);let H=new Uint8Array(I.length*16);for(let n=0;n<I.length;n++)H.set(I[n],n*16);return encodeOutput(H,S)}final(n){if(this._finalized)throw Error(`Cipher already finalized`);if(this._finalized=!0,this._mode===`gcm`){let a=new Uint8Array;this._buffer.length>0&&(a=this._processGcmEncrypt(this._buffer),this._buffer=new Uint8Array);let S=new Uint8Array(this._gcmCiphertextLen),C=0;for(let n of this._gcmCiphertext)S.set(n,C),C+=n.length;let N=ghash(this._gcmH,this._gcmAAD,S),F=aesEncryptBlock(this._gcmJ0,this._roundKeys),I=new Uint8Array(16);for(let n=0;n<16;n++)I[n]=N[n]^F[n];return this._gcmAuthTag=lt.from(I),encodeOutput(a,n)}if(this._mode===`ctr`||this._mode===`cfb`||this._mode===`ofb`){if(this._buffer.length>0){let a=this._processStream(this._buffer);return this._buffer=new Uint8Array,encodeOutput(a,n)}return encodeOutput(new Uint8Array,n)}let a=this._buffer;if(this._autoPadding)a=pkcs7Pad(a);else if(a.length%16!=0)throw Error(`data not multiple of block size`);let S=[];for(let n=0;n<a.length;n+=16)S.push(this._encryptBlock(a.slice(n,n+16)));if(this._buffer=new Uint8Array,S.length===0)return encodeOutput(new Uint8Array,n);let C=new Uint8Array(S.length*16);for(let n=0;n<S.length;n++)C.set(S[n],n*16);return encodeOutput(C,n)}_encryptBlock(n){if(this._mode===`cbc`){let a=new Uint8Array(16);for(let S=0;S<16;S++)a[S]=n[S]^this._prevBlock[S];let S=aesEncryptBlock(a,this._roundKeys);return this._prevBlock=S,S}else if(this._mode===`ecb`)return aesEncryptBlock(n,this._roundKeys);throw Error(`Block encryption not supported for mode: ${this._mode}`)}_processStream(n){let a=new Uint8Array(n.length);for(let S=0;S<n.length;S+=16){let C=aesEncryptBlock(this._counter,this._roundKeys),N=Math.min(16,n.length-S);for(let F=0;F<N;F++)a[S+F]=n[S+F]^C[F];incrementCounter(this._counter)}return a}_processGcmEncrypt(n){let a=new Uint8Array(n.length);for(let S=0;S<n.length;S+=16){let C=aesEncryptBlock(this._counter,this._roundKeys),N=Math.min(16,n.length-S);for(let F=0;F<N;F++)a[S+F]=n[S+F]^C[F];gcmIncrementCounter(this._counter)}return this._gcmCiphertext.push(new Uint8Array(a)),this._gcmCiphertextLen+=a.length,a}},Decipher=class extends CipherBase{_prevBlock;_counter;_pendingUtf8=new Uint8Array;_gcmH=null;_gcmJ0=null;_gcmAAD=new Uint8Array;_gcmCiphertext=[];_gcmCiphertextLen=0;_gcmExpectedTag=null;_gcmAADSet=!1;constructor(n,a,S){super(n,a,S),this._prevBlock=new Uint8Array(this._iv),this._mode===`gcm`?(this._gcmH=aesEncryptBlock(new Uint8Array(16),this._roundKeys),this._gcmJ0=new Uint8Array(16),this._gcmJ0.set(this._iv.subarray(0,12)),this._gcmJ0[15]=1,this._counter=new Uint8Array(this._gcmJ0),gcmIncrementCounter(this._counter)):this._counter=new Uint8Array(this._iv)}setAAD(n){if(this._mode!==`gcm`)throw Error(`setAAD is only supported in GCM mode`);if(this._gcmCiphertextLen>0)throw Error(`setAAD must be called before update()`);return this._gcmAAD=new Uint8Array(n),this._gcmAADSet=!0,this}setAuthTag(n){if(this._mode!==`gcm`)throw Error(`setAuthTag is only supported in GCM mode`);return this._gcmExpectedTag=lt.from(n),this}_encodeWithUtf8Handling(n,a,S){if(!a||a!==`utf8`&&a!==`utf-8`)return encodeOutput(n,a);let C;if(this._pendingUtf8.length>0?(C=new Uint8Array(this._pendingUtf8.length+n.length),C.set(this._pendingUtf8),C.set(n,this._pendingUtf8.length),this._pendingUtf8=new Uint8Array):C=n,!S){let n=incompleteUtf8Tail(C);n>0&&(this._pendingUtf8=new Uint8Array(C.slice(C.length-n)),C=new Uint8Array(C.slice(0,C.length-n)))}return lt.from(C).toString(`utf8`)}update(n,a,S){let C=toBuffer$2(n,a),N=new Uint8Array(this._buffer.length+C.length);if(N.set(this._buffer),N.set(C,this._buffer.length),this._mode===`gcm`){this._gcmCiphertext.push(new Uint8Array(N)),this._gcmCiphertextLen+=N.length;let n=this._processGcmDecrypt(N);return this._buffer=new Uint8Array,this._encodeWithUtf8Handling(n,S,!1)}if(this._mode===`ctr`||this._mode===`cfb`||this._mode===`ofb`){let n=this._processStream(N);return this._buffer=new Uint8Array,this._encodeWithUtf8Handling(n,S,!1)}let F=Math.floor(N.length/16);if(F===0)return this._buffer=N,this._encodeWithUtf8Handling(new Uint8Array,S,!1);let I=(this._autoPadding?F-1:F)*16,H=[];for(let n=0;n<I;n+=16){let a=N.slice(n,n+16);H.push(this._decryptBlock(a))}this._buffer=N.slice(I);let W=new Uint8Array(H.length*16);for(let n=0;n<H.length;n++)W.set(H[n],n*16);return this._encodeWithUtf8Handling(W,S,!1)}final(n){if(this._finalized)throw Error(`Decipher already finalized`);if(this._finalized=!0,this._mode===`gcm`){let a=new Uint8Array;if(this._buffer.length>0&&(this._gcmCiphertext.push(new Uint8Array(this._buffer)),this._gcmCiphertextLen+=this._buffer.length,a=this._processGcmDecrypt(this._buffer),this._buffer=new Uint8Array),!this._gcmExpectedTag)throw Error(`Unsupported state or unable to authenticate data`);let S=new Uint8Array(this._gcmCiphertextLen),C=0;for(let n of this._gcmCiphertext)S.set(n,C),C+=n.length;let N=ghash(this._gcmH,this._gcmAAD,S),F=aesEncryptBlock(this._gcmJ0,this._roundKeys),I=new Uint8Array(16);for(let n=0;n<16;n++)I[n]=N[n]^F[n];let H=this._gcmExpectedTag,W=Math.min(H.length,16),K=0;for(let n=0;n<W;n++)K|=I[n]^H[n];if(K!==0)throw Error(`Unsupported state or unable to authenticate data`);return this._encodeWithUtf8Handling(a,n,!0)}if(this._mode===`ctr`||this._mode===`cfb`||this._mode===`ofb`){if(this._buffer.length>0){let a=this._processStream(this._buffer);return this._buffer=new Uint8Array,this._encodeWithUtf8Handling(a,n,!0)}return this._encodeWithUtf8Handling(new Uint8Array,n,!0)}if(this._buffer.length===0)return this._encodeWithUtf8Handling(new Uint8Array,n,!0);if(this._buffer.length%16!=0)throw Error(`bad decrypt`);let a=[];for(let n=0;n<this._buffer.length;n+=16)a.push(this._decryptBlock(this._buffer.slice(n,n+16)));let S=new Uint8Array(a.length*16);for(let n=0;n<a.length;n++)S.set(a[n],n*16);let C=this._autoPadding?pkcs7Unpad(S):S;return this._buffer=new Uint8Array,this._encodeWithUtf8Handling(C,n,!0)}_decryptBlock(n){if(this._mode===`cbc`){let a=aesDecryptBlock(n,this._roundKeys),S=new Uint8Array(16);for(let n=0;n<16;n++)S[n]=a[n]^this._prevBlock[n];return this._prevBlock=new Uint8Array(n),S}else if(this._mode===`ecb`)return aesDecryptBlock(n,this._roundKeys);throw Error(`Block decryption not supported for mode: ${this._mode}`)}_processStream(n){let a=new Uint8Array(n.length);for(let S=0;S<n.length;S+=16){let C=aesEncryptBlock(this._counter,this._roundKeys),N=Math.min(16,n.length-S);for(let F=0;F<N;F++)a[S+F]=n[S+F]^C[F];incrementCounter(this._counter)}return a}_processGcmDecrypt(n){let a=new Uint8Array(n.length);for(let S=0;S<n.length;S+=16){let C=aesEncryptBlock(this._counter,this._roundKeys),N=Math.min(16,n.length-S);for(let F=0;F<N;F++)a[S+F]=n[S+F]^C[F];gcmIncrementCounter(this._counter)}return a}}});function fillRandom(n){if(ha)for(let a=0;a<n.length;a+=65536){let S=Math.min(n.length-a,65536),C=new Uint8Array(n.buffer,n.byteOffset+a,S);globalThis.crypto.getRandomValues(C)}else try{let a=imports.gi.GLib;for(let S=0;S<n.length;S++)n[S]=a.random_int_range(0,256)}catch{for(let a=0;a<n.length;a++)n[a]=Math.floor(Math.random()*256)}}function randomBytes(n,a){if(typeof n!=`number`||n<0||!Number.isInteger(n))throw TypeError(`The "size" argument must be a non-negative integer. Received ${n}`);try{let S=lt.alloc(n);if(n>0&&fillRandom(new Uint8Array(S.buffer,S.byteOffset,S.byteLength)),a)a(null,S);else return S}catch(n){if(a)a(n,lt.alloc(0));else throw n}}function randomFillSync(n,a=0,S){let C=S??n.length-a;if(a<0||a>n.length)throw RangeError(`The value of "offset" is out of range. Received ${a}`);if(C<0||a+C>n.length)throw RangeError(`The value of "size" is out of range. Received ${C}`);if(C>0){let S=(n instanceof lt,n.byteOffset);fillRandom(new Uint8Array(n.buffer,S+a,C))}return n}function randomFill(n,a,S,C){let N,F,I;typeof a==`function`?(I=a,N=0,F=n.length):typeof S==`function`?(I=S,N=a,F=n.length-a):(I=C,N=a,F=S);try{randomFillSync(n,N,F),I(null,n)}catch(a){I(a,n)}}function randomUUID(){if(ha&&typeof globalThis.crypto.randomUUID==`function`)return globalThis.crypto.randomUUID();let n=new Uint8Array(16);fillRandom(n),n[6]=n[6]&15|64,n[8]=n[8]&63|128;let a=Array.from(n,n=>n.toString(16).padStart(2,`0`)).join(``);return`${a.slice(0,8)}-${a.slice(8,12)}-${a.slice(12,16)}-${a.slice(16,20)}-${a.slice(20)}`}function randomInt(n,a,S){let C,N,F;if(typeof a==`function`?(F=a,N=n,C=0):typeof a==`number`?(C=n,N=a,F=S):(N=n,C=0,F=S),!Number.isInteger(C))throw TypeError(`The "min" argument must be a safe integer. Received ${C}`);if(!Number.isInteger(N))throw TypeError(`The "max" argument must be a safe integer. Received ${N}`);if(C>=N)throw RangeError(`The value of "min" must be less than "max". Received min: ${C}, max: ${N}`);let I=N-C,H=new Uint32Array(1);fillRandom(new Uint8Array(H.buffer));let W=C+H[0]%I;if(F)F(null,W);else return W}var ha,ga=__esmMin(()=>{vt(),ha=globalThis.crypto!==void 0&&typeof globalThis.crypto.getRandomValues==`function`});function modPow(n,a,S){if(S===1n)return 0n;n=(n%S+S)%S;let C=1n;for(;a>0n;)a&1n&&(C=C*n%S),a>>=1n,n=n*n%S;return C}function bigIntToBytes(n,a){let S=new Uint8Array(a),C=n;for(let n=a-1;n>=0;n--)S[n]=Number(C&255n),C>>=8n;return S}function bytesToBigInt(n){let a=0n;for(let S=0;S<n.length;S++)a=a<<8n|BigInt(n[S]);return a}var _a=__esmMin(()=>{});function bigIntToBuffer(n){if(n===0n)return lt.from([0]);let a=n.toString(16);return a.length%2!=0&&(a=`0`+a),lt.from(a,`hex`)}function bufferToBigInt(n){if(n.length===0)return 0n;let a=lt.from(n).toString(`hex`);return a.length===0?0n:BigInt(`0x`+a)}function bitLength(n){return n===0n?0:n.toString(2).length}function simpleSieve(n){for(let a of ya){let S=BigInt(a);if(n%S===0n)return n===S}return!0}function fermatTest(n){return modPow(2n,n-1n,n)===1n}function millerRabinTest(n){if(n<2n)return!1;if(n===2n||n===3n)return!0;if(n%2n==0n)return!1;let a=n-1n,S=0;for(;a%2n==0n;)a/=2n,S++;for(let C of[2n,3n,5n,7n,11n,13n]){if(C>=n)continue;let N=modPow(C,a,n);if(N===1n||N===n-1n)continue;let F=!0;for(let a=0;a<S-1;a++)if(N=modPow(N,2n,n),N===n-1n){F=!1;break}if(F)return!1}return!0}function checkPrime(n,a){let S=a.toString(`hex`),C=0;if(n%2n==0n||!simpleSieve(n)||!fermatTest(n)||!millerRabinTest(n))return C+=1,S===`02`||S===`05`?C+=8:C+=4,C;switch(millerRabinTest(n>>1n)||(C+=2),S){case`02`:n%24n!=11n&&(C+=8);break;case`05`:{let a=n%10n;a!==3n&&a!==7n&&(C+=8)}break;default:C+=4}return C}function getCachedCheckPrime(n,a){let S=a.toString(`hex`)+`_`+n.toString(16);if(S in ba)return ba[S];let C=checkPrime(n,a);return ba[S]=C,C}function formatReturnValue$1(n,a){let S=bigIntToBuffer(n);return a?S.toString(a):S}function generatePrime(n,a){let S=bufferToBigInt(a);if(n<16)return S===2n||S===5n?lt.from([140,123]):lt.from([140,39]);let C=Math.ceil(n/8),N=2n,F=4n;for(;;){let a=bufferToBigInt(randomBytes(C));for(;bitLength(a)>n;)a>>=1n;if(a%N==0n&&(a+=1n),a&N||(a+=N),S===N)for(;a%24n!=11n;)a+=F;else if(S===5n)for(;a%10n!=3n;)a+=F;let I=a>>1n;if(simpleSieve(I)&&simpleSieve(a)&&fermatTest(I)&&fermatTest(a)&&millerRabinTest(I)&&millerRabinTest(a))return bigIntToBuffer(a)}}function createDiffieHellman(n,a,S,C){if(a!==void 0&&typeof a!=`number`&&(lt.isBuffer(a)||a instanceof Uint8Array||typeof a==`string`&&!(a in xa)))return createDiffieHellman(n,`binary`,a,S);let N=a||`binary`,F=C||`binary`,I=lt.from([2]);if(S!==void 0&&(typeof S==`number`?(I=lt.alloc(1),I[0]=S):I=lt.isBuffer(S)?S:lt.from(S,F)),typeof n==`number`)return new DiffieHellman(generatePrime(n,I),I,!0);let H;return H=lt.isBuffer(n)?n:n instanceof Uint8Array?lt.from(n):lt.from(n,N),new DiffieHellman(H,I,!0)}function getDiffieHellman(n){let a=va[n];if(!a)throw Error(`Unknown group: ${n}. Supported groups: ${Object.keys(va).join(`, `)}`);return new DiffieHellman(lt.from(a.prime,`hex`),lt.from(a.gen,`hex`),!1)}var va,ya,ba,DiffieHellman,xa,Sa,Ca,wa=__esmMin(()=>{_a(),ga(),vt(),va={modp1:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a63a3620ffffffffffffffff`},modp2:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece65381ffffffffffffffff`},modp5:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca237327ffffffffffffffff`},modp14:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aacaa68ffffffffffffffff`},modp15:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a93ad2caffffffffffffffff`},modp16:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c934063199ffffffffffffffff`},modp17:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dcc4024ffffffffffffffff`},modp18:{gen:`02`,prime:`ffffffffffffffffc90fdaa22168c234c4c6628b80dc1cd129024e088a67cc74020bbea63b139b22514a08798e3404ddef9519b3cd3a431b302b0a6df25f14374fe1356d6d51c245e485b576625e7ec6f44c42e9a637ed6b0bff5cb6f406b7edee386bfb5a899fa5ae9f24117c4b1fe649286651ece45b3dc2007cb8a163bf0598da48361c55d39a69163fa8fd24cf5f83655d23dca3ad961c62f356208552bb9ed529077096966d670c354e4abc9804f1746c08ca18217c32905e462e36ce3be39e772c180e86039b2783a2ec07a28fb5c55df06f4c52c9de2bcbf6955817183995497cea956ae515d2261898fa051015728e5a8aaac42dad33170d04507a33a85521abdf1cba64ecfb850458dbef0a8aea71575d060c7db3970f85a6e1e4c7abf5ae8cdb0933d71e8c94e04a25619dcee3d2261ad2ee6bf12ffa06d98a0864d87602733ec86a64521f2b18177b200cbbe117577a615d6c770988c0bad946e208e24fa074e5ab3143db5bfce0fd108e4b82d120a92108011a723c12a787e6d788719a10bdba5b2699c327186af4e23c1a946834b6150bda2583e9ca2ad44ce8dbbbc2db04de8ef92e8efc141fbecaa6287c59474e6bc05d99b2964fa090c3a2233ba186515be7ed1f612970cee2d7afb81bdd762170481cd0069127d5b05aa993b4ea988d8fddc186ffb7dc90a6c08f4df435c93402849236c3fab4d27c7026c1d4dcb2602646dec9751e763dba37bdf8ff9406ad9e530ee5db382f413001aeb06a53ed9027d831179727b0865a8918da3edbebcf9b14ed44ce6cbaced4bb1bdb7f1447e6cc254b332051512bd7af426fb8f401378cd2bf5983ca01c64b92ecf032ea15d1721d03f482d7ce6e74fef6d55e702f46980c82b5a84031900b1c9e59e7c97fbec7e8f323a97a7e36cc88be0f1d45b7ff585ac54bd407b22b4154aacc8f6d7ebf48e1d814cc5ed20f8037e0a79715eef29be32806a1d58bb7c5da76f550aa3d8a1fbff0eb19ccb1a313d55cda56c9ec2ef29632387fe8d76e3c0468043e8f663f4860ee12bf2d5b0b7474d6e694f91e6dbe115974a3926f12fee5e438777cb6a932df8cd8bec4d073b931ba3bc832b68d9dd300741fa7bf8afc47ed2576f6936ba424663aab639c5ae4f5683423b4742bf1c978238f16cbe39d652de3fdb8befc848ad922222e04a4037c0713eb57a81a23f0c73473fc646cea306b4bcbc8862f8385ddfa9d4b7fa2c087e879683303ed5bdd3a062b3cf5b3a278a66d2a13f83f44f82ddf310ee074ab6a364597e899a0255dc164f31cc50846851df9ab48195ded7ea1b1d510bd7ee74d73faf36bc31ecfa268359046f4eb879f924009438b481c6cd7889a002ed5ee382bc9190da6fc026e479558e4475677e9aa9e3050e2765694dfc81f56e880b96e7160c980dd98edd3dfffffffffffffffff`}},ya=[];{let n=1e3,a=new Uint8Array(1001);for(let S=2;S*S<=n;S++)if(!a[S])for(let C=S*S;C<=n;C+=S)a[C]=1;for(let S=2;S<=n;S++)a[S]||ya.push(S)}ba={},__name$1(formatReturnValue$1,`formatReturnValue`),DiffieHellman=class{_prime;_generator;_generatorBuf;_primeByteLength;_pubKey;_privKey;_primeCode;_malleable;constructor(n,a,S=!1){this._prime=bufferToBigInt(n),this._generatorBuf=a,this._generator=bufferToBigInt(a),this._primeByteLength=n.length,this._pubKey=void 0,this._privKey=void 0,this._primeCode=void 0,this._malleable=S,S||(this._primeCode=0,this.setPublicKey=void 0,this.setPrivateKey=void 0)}get verifyError(){return typeof this._primeCode!=`number`&&(this._primeCode=getCachedCheckPrime(this._prime,this._generatorBuf)),this._primeCode}generateKeys(n){if(!this._privKey){let n=randomBytes(this._primeByteLength);this._privKey=bufferToBigInt(n)}return this._pubKey=modPow(this._generator,this._privKey,this._prime),this.getPublicKey(n)}computeSecret(n,a,S){let C;C=typeof n==`string`?lt.from(n,a||`utf8`):lt.from(n);let N=bufferToBigInt(C);if(!this._privKey)throw Error(`You must generate keys before computing a secret`);if(N<=0n||N>=this._prime)throw Error(`Supplied key is too large`);let F=bigIntToBuffer(modPow(N,this._privKey,this._prime)),I=this._primeByteLength;if(F.length<I){let n=lt.alloc(I);F.copy(n,I-F.length),F=n}return S?F.toString(S):F}getPrime(n){return formatReturnValue$1(this._prime,n)}getGenerator(n){return formatReturnValue$1(this._generator,n)}getPublicKey(n){if(!this._pubKey)throw Error(`No public key - call generateKeys() first`);return formatReturnValue$1(this._pubKey,n)}getPrivateKey(n){if(!this._privKey)throw Error(`No private key - call generateKeys() first`);return formatReturnValue$1(this._privKey,n)}setPublicKey(n,a){if(!this._malleable)throw Error(`setPublicKey is not available for predefined DH groups`);let S=typeof n==`string`?lt.from(n,a||`utf8`):lt.from(n);this._pubKey=bufferToBigInt(S)}setPrivateKey(n,a){if(!this._malleable)throw Error(`setPrivateKey is not available for predefined DH groups`);let S=typeof n==`string`?lt.from(n,a||`utf8`):lt.from(n);this._privKey=bufferToBigInt(S)}},xa={binary:!0,hex:!0,base64:!0,latin1:!0,utf8:!0,"utf-8":!0,base64url:!0,ascii:!0,ucs2:!0,"ucs-2":!0,utf16le:!0,"utf-16le":!0},Sa=getDiffieHellman,Ca=getDiffieHellman});function mod(n,a){let S=n%a;return S<0n?S+a:S}function modInverse$2(n,a){if(n=mod(n,a),n===0n)throw Error(`No modular inverse for zero`);let[S,C]=[n,a],[N,F]=[1n,0n];for(;C!==0n;){let n=S/C;[S,C]=[C,S-n*C],[N,F]=[F,N-n*F]}if(S!==1n)throw Error(`Modular inverse does not exist`);return mod(N,a)}function pointAdd(n,a,S){if(n===null)return a;if(a===null)return n;let{p:C}=S;if(n.x===a.x)return mod(n.y+a.y,C)===0n?null:pointDouble(n,S);let N=mod(a.x-n.x,C),F=mod(mod(a.y-n.y,C)*modInverse$2(N,C),C),I=mod(F*F-n.x-a.x,C);return{x:I,y:mod(F*(n.x-I)-n.y,C)}}function pointDouble(n,a){if(n===null)return null;let{a:S,p:C}=a;if(n.y===0n)return null;let N=mod(mod(3n*n.x*n.x+S,C)*modInverse$2(mod(2n*n.y,C),C),C),F=mod(N*N-2n*n.x,C);return{x:F,y:mod(N*(n.x-F)-n.y,C)}}function scalarMul(n,a,S){if(a===null||n===0n)return null;let{n:C}=S;if(n=mod(n,C),n===0n)return null;let N=null,F=a,I=n.toString(2);for(let n=0;n<I.length;n++)I[n]===`1`?(N=pointAdd(N,F,S),F=pointDouble(F,S)):(F=pointAdd(N,F,S),N=pointDouble(N,S));return N}function bigintToBuffer(n,a){let S=n.toString(16).padStart(a*2,`0`);return lt.from(S,`hex`)}function bufferToBigint(n){let a=lt.from(n).toString(`hex`);return a.length===0?0n:BigInt(`0x`+a)}function encodePublicKey(n,a,S=`uncompressed`){if(n===null)throw Error(`Cannot encode the point at infinity`);let C=bigintToBuffer(n.x,a);if(S===`compressed`){let a=n.y%2n==0n?2:3;return lt.concat([lt.from([a]),C])}let N=bigintToBuffer(n.y,a);if(S===`hybrid`){let a=n.y%2n==0n?6:7;return lt.concat([lt.from([a]),C,N])}return lt.concat([lt.from([4]),C,N])}function decodePublicKey(n,a){let S=lt.from(n);if(S.length===0)throw Error(`Invalid public key: empty buffer`);let C=S[0],{p:N,a:F,b:I,byteLength:H}=a;if(C===4||C===6||C===7){if(S.length!==1+2*H)throw Error(`Invalid public key length: expected ${1+2*H} bytes, got ${S.length}`);let n=bufferToBigint(S.subarray(1,1+H)),a=bufferToBigint(S.subarray(1+H));if(mod(a*a,N)!==mod(n*n*n+F*n+I,N))throw Error(`Invalid public key: point is not on the curve`);return{x:n,y:a}}if(C===2||C===3){if(S.length!==1+H)throw Error(`Invalid public key length: expected ${1+H} bytes, got ${S.length}`);let n=bufferToBigint(S.subarray(1,1+H)),a=sqrtMod(mod(n*n*n+F*n+I,N),N);if(a===null)throw Error(`Invalid public key: no valid y coordinate for the given x`);let W=C===3;return{x:n,y:a%2n!=0n===W?a:mod(N-a,N)}}throw Error(`Invalid public key prefix: 0x${C.toString(16).padStart(2,`0`)}`)}function sqrtMod(n,a){if(n=mod(n,a),n===0n)return 0n;if(modPow(n,(a-1n)/2n,a)!==1n)return null;if(mod(a,4n)===3n)return modPow(n,(a+1n)/4n,a);let S=0n,C=a-1n;for(;mod(C,2n)===0n;)C/=2n,S++;let N=2n;for(;modPow(N,(a-1n)/2n,a)!==a-1n;)N++;let F=S,I=modPow(N,C,a),H=modPow(n,C,a),W=modPow(n,(C+1n)/2n,a);for(;;){if(H===0n)return 0n;if(H===1n)return W;let n=1n,S=mod(H*H,a);for(;S!==1n;)S=mod(S*S,a),n++;let C=modPow(I,modPow(2n,F-n-1n,a-1n),a);F=n,I=mod(C*C,a),H=mod(H*I,a),W=mod(W*C,a)}}function toBuffer$1(n,a){if(lt.isBuffer(n))return n;if(n instanceof Uint8Array)return lt.from(n);if(typeof n==`string`)return lt.from(n,a||`utf8`);if(ArrayBuffer.isView(n))return lt.from(n.buffer,n.byteOffset,n.byteLength);throw TypeError(`The "key" argument must be of type string or an instance of Buffer, TypedArray, or DataView.`)}function formatReturnValue(n,a){return a?n.toString(a):n}function resolveCurve(n){let a=Ea[n.toLowerCase()];if(!a)throw Error(`Unsupported curve: ${n}`);let S=Ta[a];if(!S)throw Error(`Unsupported curve: ${n}`);return{canonical:a,params:S}}function createECDH(n){return new ECDH(n)}function getCurves(){return[`secp256k1`,`prime256v1`,`secp256r1`,`secp384r1`,`secp521r1`]}var Ta,Ea,ECDH,Da=__esmMin(()=>{_a(),ga(),vt(),Ta={secp256k1:{p:115792089237316195423570985008687907853269984665640564039457584007908834671663n,a:0n,b:7n,Gx:55066263022277343669578718895168534326250603453777594175500187360389116729240n,Gy:32670510020758816978083085130507043184471273380659243275938904335757337482424n,n:115792089237316195423570985008687907852837564279074904382605163141518161494337n,byteLength:32},prime256v1:{p:115792089210356248762697446949407573530086143415290314195533631308867097853951n,a:115792089210356248762697446949407573530086143415290314195533631308867097853951n-3n,b:41058363725152142129326129780047268409114441015993725554835256314039467401291n,Gx:48439561293906451759052585252797914202762949526041747995844080717082404635286n,Gy:36134250956749795798585127919587881956611106672985015071877198253568414405109n,n:115792089210356248762697446949407573529996955224135760342422259061068512044369n,byteLength:32},secp384r1:{p:39402006196394479212279040100143613805079739270465446667948293404245721771496870329047266088258938001861606973112319n,a:39402006196394479212279040100143613805079739270465446667948293404245721771496870329047266088258938001861606973112319n-3n,b:27580193559959705877849011840389048093056905856361568521428707301988689241309860865136260764883745107765439761230575n,Gx:26247035095799689268623156744566981891852923491109213387815615900925518854738050089022388053975719786650872476732087n,Gy:8325710961489029985546751289520108179287853048861315594709205902480503199884419224438643760392947333078086511627871n,n:39402006196394479212279040100143613805079739270465446667946905279627659399113263569398956308152294913554433653942643n,byteLength:48},secp521r1:{p:6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057151n,a:6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057151n-3n,b:1093849038073734274511112390766805569936207598951683748994586394495953116150735016013708737573759623248592132296706313309438452531591012912142327488478985984n,Gx:2661740802050217063228768716723360960729859168756973147706671368418802944996427808491545080627771902352094241225065558662157113545570916814161637315895999846n,Gy:3757180025770020463545507224491183603594455134769762486694567779615544477440556316691234405012945539562144444537289428522585666729196580810124344277578376784n,n:6864797660130609714981900799081393217269435300143305409394463459185543183397655394245057746333217197532963996371363321113864768612440380340372808892707005449n,byteLength:66}},Ea={secp256k1:`secp256k1`,prime256v1:`prime256v1`,secp256r1:`prime256v1`,"p-256":`prime256v1`,p256:`prime256v1`,secp384r1:`secp384r1`,"p-384":`secp384r1`,p384:`secp384r1`,secp521r1:`secp521r1`,"p-521":`secp521r1`,p521:`secp521r1`},__name$1(modInverse$2,`modInverse`),__name$1(toBuffer$1,`toBuffer`),ECDH=class{_curve;_curveName;_privateKey=null;_publicKey=null;constructor(n){let a=resolveCurve(n);this._curve=a.params,this._curveName=a.canonical}generateKeys(n,a){let{n:S,byteLength:C}=this._curve,N;do N=bufferToBigint(randomBytes(C));while(N===0n||N>=S);this._privateKey=N;let F={x:this._curve.Gx,y:this._curve.Gy};return this._publicKey=scalarMul(N,F,this._curve),n===void 0?this.getPublicKey():this.getPublicKey(n,a)}computeSecret(n,a,S){if(this._privateKey===null)throw Error(`ECDH key not generated. Call generateKeys() or setPrivateKey() first.`);let C=decodePublicKey(toBuffer$1(n,a),this._curve);if(C===null)throw Error(`Invalid public key: point at infinity`);let N=scalarMul(this._privateKey,C,this._curve);if(N===null)throw Error(`Shared secret computation resulted in the point at infinity`);return formatReturnValue(bigintToBuffer(N.x,this._curve.byteLength),S)}getPublicKey(n,a){if(this._publicKey===null)throw Error(`ECDH key not generated. Call generateKeys() or setPrivateKey() first.`);return formatReturnValue(encodePublicKey(this._publicKey,this._curve.byteLength,a||`uncompressed`),n)}getPrivateKey(n){if(this._privateKey===null)throw Error(`ECDH key not generated. Call generateKeys() or setPrivateKey() first.`);return formatReturnValue(bigintToBuffer(this._privateKey,this._curve.byteLength),n)}setPublicKey(n,a){let S=toBuffer$1(n,a);this._publicKey=decodePublicKey(S,this._curve)}setPrivateKey(n,a){let S=bufferToBigint(toBuffer$1(n,a));if(S===0n||S>=this._curve.n)throw Error(`Private key is out of range [1, n-1]`);this._privateKey=S;let C={x:this._curve.Gx,y:this._curve.Gy};this._publicKey=scalarMul(S,C,this._curve)}}});function normalizeAlgorithm(n){return n.toLowerCase().replace(/-/g,``)}function hashSize(n){let a=Oa[normalizeAlgorithm(n)];if(a===void 0)throw Error(`Unknown hash algorithm: ${n}`);return a}function toBuffer(n,a){return typeof n==`string`?lt.from(n,a||`utf8`):n instanceof DataView?lt.from(n.buffer,n.byteOffset,n.byteLength):(n instanceof ArrayBuffer,lt.from(n))}var Oa,ka,Aa,ja=__esmMin(()=>{vt(),Oa={md5:16,sha1:20,sha256:32,sha384:48,sha512:64},ka={md5:64,sha1:64,sha256:64,sha384:128,sha512:128},Aa=new Set([`md5`,`sha1`,`sha256`,`sha384`,`sha512`])});function getChecksumType(n){let a=Ma[normalizeAlgorithm(n)];if(a===void 0){let a=Error(`Unknown message digest: ${n}`);throw a.code=`ERR_CRYPTO_HASH_UNKNOWN`,a}return a}function getHashes(){return[`md5`,`sha1`,`sha256`,`sha384`,`sha512`]}function hash(n,a,S){return new Na(n).update(a).digest(S)}var Ma,Na,Pa=__esmMin(()=>{ja(),vt(),se(),ni(),Ma={md5:Z.ChecksumType.MD5,sha1:Z.ChecksumType.SHA1,sha256:Z.ChecksumType.SHA256,sha384:Z.ChecksumType.SHA384,sha512:Z.ChecksumType.SHA512},Na=class Hash extends $r{_algorithm;_checksum;_finalized=!1;constructor(n){super();let a=normalizeAlgorithm(n),S=getChecksumType(a);this._algorithm=a,this._checksum=new Z.Checksum(S)}update(n,a){if(this._finalized)throw Error(`Digest already called`);let S;if(typeof n==`string`){let C=normalizeEncoding(a);S=lt.from(n,C)}else S=n instanceof Uint8Array?n:lt.from(n);return this._checksum.update(S),this}digest(n){if(this._finalized)throw Error(`Digest already called`);this._finalized=!0;let a=this._checksum.get_string(),S=lt.from(a,`hex`);return n?S.toString(n):S}copy(){if(this._finalized)throw Error(`Digest already called`);let n=Object.create(Hash.prototype);return $r.call(n),n._algorithm=this._algorithm,n._finalized=!1,n._checksum=this._checksum.copy(),n}_transform(n,a,S){try{this.update(n,a),S()}catch(n){S(n)}}_flush(n){try{this.push(this.digest()),n()}catch(a){n(a)}}}}),Hmac,Fa=__esmMin(()=>{ja(),Pa(),vt(),ni(),Hmac=class extends $r{_algorithm;_innerHash;_outerKeyPad;_finalized=!1;constructor(n,a){super();let S=normalizeAlgorithm(n);if(!Aa.has(S)){let a=Error(`Unknown message digest: ${n}`);throw a.code=`ERR_CRYPTO_HASH_UNKNOWN`,a}this._algorithm=S;let C;C=typeof a==`string`?lt.from(a,`utf8`):a instanceof Uint8Array?a:lt.from(a);let N=ka[S];if(C.length>N){let n=new Na(S);n.update(C),C=n.digest()}let F=new Uint8Array(N);F.set(C);let I=new Uint8Array(N),H=new Uint8Array(N);for(let n=0;n<N;n++)I[n]=F[n]^54,H[n]=F[n]^92;this._outerKeyPad=H,this._innerHash=new Na(S),this._innerHash.update(I)}update(n,a){if(this._finalized)throw Error(`Digest already called`);let S;if(typeof n==`string`){let C=normalizeEncoding(a);S=lt.from(n,C)}else S=n instanceof Uint8Array?n:lt.from(n);return this._innerHash.update(S),this}digest(n){if(this._finalized)throw Error(`Digest already called`);this._finalized=!0;let a=this._innerHash.digest(),S=new Na(this._algorithm);S.update(this._outerKeyPad),S.update(a);let C=S.digest();return n?C.toString(n):C}_transform(n,a,S){try{this.update(n,a),S()}catch(n){S(n)}}_flush(n){try{this.push(this.digest()),n()}catch(a){n(a)}}}});function getCurve(n){let a=Ea[n.toLowerCase()];if(!a)throw Error(`Unsupported curve: ${n}`);return Ta[a]}function truncateHash(n,a){let S=a.n.toString(2).length,C=bytesToBigInt(n),N=n.length*8;return N>S&&(C>>=BigInt(N-S)),C}function hmacDigest$2(n,a,S){let C=new Hmac(n,a);return C.update(S),new Uint8Array(C.digest())}function rfc6979(n,a,S,C){let N=C.byteLength,F=S.length,I=new Uint8Array(F).fill(1),H=new Uint8Array(F).fill(0),W=bigIntToBytes(a,N),K=bigIntToBytes(mod(truncateHash(S,C),C.n),N),q=new Uint8Array(F+1+N+N);q.set(I,0),q[F]=0,q.set(W,F+1),q.set(K,F+1+N),H=hmacDigest$2(n,H,q),I=hmacDigest$2(n,H,I);let Y=new Uint8Array(F+1+N+N);Y.set(I,0),Y[F]=1,Y.set(W,F+1),Y.set(K,F+1+N),H=hmacDigest$2(n,H,Y),I=hmacDigest$2(n,H,I);for(let a=0;a<100;a++){let a=new Uint8Array;for(;a.length<N;){I=hmacDigest$2(n,H,I);let S=new Uint8Array(a.length+I.length);S.set(a,0),S.set(I,a.length),a=S}let S=truncateHash(a.slice(0,N),C);if(S>=1n&&S<C.n)return S;let W=new Uint8Array(F+1);W.set(I,0),W[F]=0,H=hmacDigest$2(n,H,W),I=hmacDigest$2(n,H,I)}throw Error(`RFC 6979: failed to generate valid k after 100 attempts`)}function ecdsaSign(n,a,S,C){let N=getCurve(C),F={x:N.Gx,y:N.Gy},I=bytesToBigInt(a),H=new Na(n);H.update(S);let W=new Uint8Array(H.digest()),K=truncateHash(W,N),q=rfc6979(n,I,W,N),Y=scalarMul(q,F,N);if(Y===null)throw Error(`ECDSA: k * G is point at infinity`);let X=mod(Y.x,N.n);if(X===0n)throw Error(`ECDSA: r is zero`);let te=mod(modInverse$2(q,N.n)*(K+X*I),N.n);if(te===0n)throw Error(`ECDSA: s is zero`);let ne=N.byteLength,re=new Uint8Array(ne*2);return re.set(bigIntToBytes(X,ne),0),re.set(bigIntToBytes(te,ne),ne),re}function ecdsaVerify(n,a,S,C,N){let F=getCurve(N),I={x:F.Gx,y:F.Gy},H=F.byteLength;if(a[0]!==4||a.length!==1+H*2)return!1;let W={x:bytesToBigInt(a.slice(1,1+H)),y:bytesToBigInt(a.slice(1+H))};if(S.length!==H*2)return!1;let K=bytesToBigInt(S.slice(0,H)),q=bytesToBigInt(S.slice(H));if(K<1n||K>=F.n||q<1n||q>=F.n)return!1;let Y=new Na(n);Y.update(C);let X=truncateHash(new Uint8Array(Y.digest()),F),te=modInverse$2(q,F.n),ne=mod(X*te,F.n),re=mod(K*te,F.n),ie=pointAdd(scalarMul(ne,I,F),scalarMul(re,W,F),F);return ie===null?!1:mod(ie.x,F.n)===K}var Ia=__esmMin(()=>{_a(),Da(),Pa(),Fa(),__name$1(hmacDigest$2,`hmacDigest`)});function hmacDigest$1(n,a,S){let C=new Hmac(n,a);return C.update(S),C.digest()}function hkdfExtract(n,a,S){return hmacDigest$1(n,S,a)}function hkdfExpand(n,a,S,C,N){let F=Math.ceil(C/N);if(F>255)throw Error(`HKDF cannot generate more than 255 * HashLen bytes`);let I=lt.allocUnsafe(F*N),H=lt.alloc(0);for(let C=1;C<=F;C++)H=hmacDigest$1(n,a,lt.concat([H,S,lt.from([C])])),H.copy(I,(C-1)*N);return lt.from(I.buffer,I.byteOffset,C)}function hkdfSync(n,a,S,C,N){let F=normalizeAlgorithm(n),I=Oa[F];if(!Aa.has(F)||I===void 0)throw TypeError(`Unknown message digest: ${n}`);if(typeof N!=`number`||N<0)throw TypeError(`keylen must be a non-negative number`);let H=toBuffer(a),W=toBuffer(S),K=toBuffer(C),q=hkdfExpand(F,hkdfExtract(F,H,W.length===0?lt.alloc(I,0):W),K,N,I),Y=new ArrayBuffer(q.length);return new Uint8Array(Y).set(q),Y}function hkdf(n,a,S,C,N,F){setTimeout(()=>{try{F(null,hkdfSync(n,a,S,C,N))}catch(n){F(n instanceof Error?n:Error(String(n)))}},0)}var La=__esmMin(()=>{ja(),Fa(),vt(),__name$1(hmacDigest$1,`hmacDigest`)});function hmacDigest(n,a,S){let C=new Hmac(n,a);return C.update(S),C.digest()}function validateParameters(n,a){if(typeof n!=`number`||n<0||!Number.isFinite(n)||n===0)throw TypeError(`iterations must be a positive number`);if(typeof a!=`number`||a<0||!Number.isFinite(a)||a>2147483647)throw TypeError(`keylen must be a positive number`)}function pbkdf2Sync(n,a,S,C,N){validateParameters(S,C);let F=toBuffer(n),I=toBuffer(a),H=normalizeAlgorithm(N||`sha1`),W=Oa[H];if(!Aa.has(H)||W===void 0)throw TypeError(`Unknown message digest: ${N||`sha1`}`);if(C===0)return lt.alloc(0);let K=Math.ceil(C/W),q=lt.allocUnsafe(K*W);for(let n=1;n<=K;n++){let a=lt.allocUnsafe(I.length+4);I.copy(a,0),a.writeUInt32BE(n,I.length);let C=hmacDigest(H,F,a),N=lt.from(C);for(let n=1;n<S;n++){C=hmacDigest(H,F,C);for(let n=0;n<W;n++)N[n]^=C[n]}N.copy(q,(n-1)*W)}return lt.from(q.buffer,q.byteOffset,C)}function pbkdf2(n,a,S,C,N,F){validateParameters(S,C),setTimeout(()=>{try{F(null,pbkdf2Sync(n,a,S,C,N))}catch(n){F(n instanceof Error?n:Error(String(n)))}},0)}var Ra=__esmMin(()=>{ja(),Fa(),vt()});function R$2(n,a){return(n<<a|n>>>32-a)>>>0}function salsa20_8(n){let a=new Uint32Array(16);for(let S=0;S<16;S++)a[S]=n[S];for(let n=0;n<4;n++)a[4]^=R$2(a[0]+a[12],7),a[8]^=R$2(a[4]+a[0],9),a[12]^=R$2(a[8]+a[4],13),a[0]^=R$2(a[12]+a[8],18),a[9]^=R$2(a[5]+a[1],7),a[13]^=R$2(a[9]+a[5],9),a[1]^=R$2(a[13]+a[9],13),a[5]^=R$2(a[1]+a[13],18),a[14]^=R$2(a[10]+a[6],7),a[2]^=R$2(a[14]+a[10],9),a[6]^=R$2(a[2]+a[14],13),a[10]^=R$2(a[6]+a[2],18),a[3]^=R$2(a[15]+a[11],7),a[7]^=R$2(a[3]+a[15],9),a[11]^=R$2(a[7]+a[3],13),a[15]^=R$2(a[11]+a[7],18),a[1]^=R$2(a[0]+a[3],7),a[2]^=R$2(a[1]+a[0],9),a[3]^=R$2(a[2]+a[1],13),a[0]^=R$2(a[3]+a[2],18),a[6]^=R$2(a[5]+a[4],7),a[7]^=R$2(a[6]+a[5],9),a[4]^=R$2(a[7]+a[6],13),a[5]^=R$2(a[4]+a[7],18),a[11]^=R$2(a[10]+a[9],7),a[8]^=R$2(a[11]+a[10],9),a[9]^=R$2(a[8]+a[11],13),a[10]^=R$2(a[9]+a[8],18),a[12]^=R$2(a[15]+a[14],7),a[13]^=R$2(a[12]+a[15],9),a[14]^=R$2(a[13]+a[12],13),a[15]^=R$2(a[14]+a[13],18);for(let S=0;S<16;S++)n[S]=n[S]+a[S]>>>0}function blockMix(n,a){let S=2*a*16,C=new Uint32Array(16);for(let a=0;a<16;a++)C[a]=n[S-16+a];let N=new Uint32Array(S);for(let S=0;S<2*a;S++){for(let a=0;a<16;a++)C[a]^=n[S*16+a];salsa20_8(C);for(let n=0;n<16;n++)N[S*16+n]=C[n]}for(let S=0;S<a;S++)for(let a=0;a<16;a++)n[S*16+a]=N[2*S*16+a];for(let S=0;S<a;S++)for(let C=0;C<16;C++)n[(a+S)*16+C]=N[(2*S+1)*16+C]}function roMix(n,a,S){let C=2*S*16,N=Array.from({length:a});for(let C=0;C<a;C++)N[C]=new Uint32Array(n),blockMix(n,S);for(let F=0;F<a;F++){let F=n[C-16]&a-1;for(let a=0;a<C;a++)n[a]^=N[F][a];blockMix(n,S)}}function bytesToWords(n){let a=new Uint32Array(n.length/4);for(let S=0;S<a.length;S++)a[S]=n[S*4]|n[S*4+1]<<8|n[S*4+2]<<16|n[S*4+3]<<24;return a}function wordsToBytes(n){let a=new Uint8Array(n.length*4);for(let S=0;S<n.length;S++)a[S*4]=n[S]&255,a[S*4+1]=n[S]>>8&255,a[S*4+2]=n[S]>>16&255,a[S*4+3]=n[S]>>24&255;return a}function scryptCore(n,a,S,C,N,F){let I=128*C,H=pbkdf2Sync(n,a,1,N*I,`sha256`);for(let n=0;n<N;n++){let a=new Uint8Array(H.buffer,H.byteOffset+n*I,I),N=bytesToWords(a);roMix(N,S,C);let F=wordsToBytes(N);a.set(F)}return pbkdf2Sync(n,H,1,F,`sha256`)}function scryptSync(n,a,S,C){let N=lt.from(n),F=lt.from(a),I=C?.N??16384,H=C?.r??8,W=C?.p??1;if(I<=0||I&I-1)throw Error(`N must be a positive power of 2`);return scryptCore(N,F,I,H,W,S)}function scrypt(n,a,S,C,N){let F={},I;typeof C==`function`?I=C:(F=C,I=N);try{let C=scryptSync(n,a,S,F);setTimeout(()=>I(null,C),0)}catch(n){setTimeout(()=>I(n instanceof Error?n:Error(String(n)),lt.alloc(0)),0)}}var za=__esmMin(()=>{Ra(),vt(),__name$1(R$2,`R`)});function pemToDer(n){let a=n.trim().split(/\r?\n/),S=a.findIndex(n=>n.startsWith(`-----BEGIN `));if(S===-1)throw Error(`Invalid PEM: no BEGIN line found`);let C=a[S].match(/^-----BEGIN (.+)-----$/);if(!C)throw Error(`Invalid PEM header format`);let N=C[1],F=a.findIndex((n,a)=>a>S&&n.startsWith(`-----END `));if(F===-1)throw Error(`Invalid PEM: no END line found`);let I=a.slice(S+1,F).join(``),H=lt.from(I,`base64`);return{type:N,der:new Uint8Array(H.buffer,H.byteOffset,H.byteLength)}}function parseTlv(n,a){if(a>=n.length)throw Error(`ASN.1 parse error: unexpected end of data`);let S=n[a++],C,N=n[a++];if(N<128)C=N;else{let S=N&127;if(S===0)throw Error(`ASN.1 parse error: indefinite length not supported`);C=0;for(let N=0;N<S;N++)C=C<<8|n[a++]}let F=n.slice(a,a+C),I=a+C,H={tag:S,data:F};return S===48&&(H.children=parseSequenceChildren(F)),{value:H,next:I}}function parseSequenceChildren(n){let a=[],S=0;for(;S<n.length;){let{value:C,next:N}=parseTlv(n,S);a.push(C),S=N}return a}function parseDer(n){let{value:a}=parseTlv(n,0);return a}function integerToBigInt(n){let a=0;for(;a<n.length-1&&n[a]===0;)a++;let S=0n;for(let C=a;C<n.length;C++)S=S<<8n|BigInt(n[C]);return S}function oidsEqual(n,a){if(n.length!==a.length)return!1;for(let S=0;S<n.length;S++)if(n[S]!==a[S])return!1;return!0}function parseRsaPublicKeyPkcs1(n){let a=n.children;if(!a||a.length<2)throw Error(`Invalid PKCS#1 RSAPublicKey structure`);return{n:integerToBigInt(a[0].data),e:integerToBigInt(a[1].data)}}function parseRsaPrivateKeyPkcs1(n){let a=n.children;if(!a||a.length<6)throw Error(`Invalid PKCS#1 RSAPrivateKey structure`);return{n:integerToBigInt(a[1].data),e:integerToBigInt(a[2].data),d:integerToBigInt(a[3].data),p:integerToBigInt(a[4].data),q:integerToBigInt(a[5].data)}}function parseSubjectPublicKeyInfo(n){let a=n.children;if(!a||a.length<2)throw Error(`Invalid SubjectPublicKeyInfo structure`);let S=a[0];if(!S.children||S.children.length<1)throw Error(`Invalid AlgorithmIdentifier`);let C=S.children[0];if(C.tag!==6||!oidsEqual(C.data,Ba))throw Error(`Unsupported algorithm: only RSA is supported`);let N=a[1];if(N.tag!==3)throw Error(`Expected BIT STRING for public key data`);return parseRsaPublicKeyPkcs1(parseDer(N.data.slice(1)))}function parsePrivateKeyInfo(n){let a=n.children;if(!a||a.length<3)throw Error(`Invalid PrivateKeyInfo structure`);let S=a[1];if(!S.children||S.children.length<1)throw Error(`Invalid AlgorithmIdentifier`);let C=S.children[0];if(C.tag!==6||!oidsEqual(C.data,Ba))throw Error(`Unsupported algorithm: only RSA is supported`);let N=a[2];if(N.tag!==4)throw Error(`Expected OCTET STRING for private key data`);return parseRsaPrivateKeyPkcs1(parseDer(N.data))}function encodeLength(n){if(n<128)return new Uint8Array([n]);let a=[],S=n;for(;S>0;)a.unshift(S&255),S>>=8;return new Uint8Array([128|a.length,...a])}function encodeTlv(n,a){let S=encodeLength(a.length),C=new Uint8Array(1+S.length+a.length);return C[0]=n,C.set(S,1),C.set(a,1+S.length),C}function bigintToAsn1Integer(n){if(n===0n)return encodeTlv(2,new Uint8Array([0]));let a=n.toString(16),S=a.length%2?`0`+a:a,C=[];for(let n=0;n<S.length;n+=2)C.push(parseInt(S.substring(n,n+2),16));return C[0]&128&&C.unshift(0),encodeTlv(2,new Uint8Array(C))}function encodeSequence(n){let a=0;for(let S of n)a+=S.length;let S=new Uint8Array(a),C=0;for(let a of n)S.set(a,C),C+=a.length;return encodeTlv(48,S)}function encodeBitString(n){let a=new Uint8Array(1+n.length);return a[0]=0,a.set(n,1),encodeTlv(3,a)}function encodeOctetString(n){return encodeTlv(4,n)}function encodeOid(n){return encodeTlv(6,n)}function encodeNull(){return new Uint8Array([5,0])}function encodeRsaPublicKeyPkcs1(n){return encodeSequence([bigintToAsn1Integer(n.n),bigintToAsn1Integer(n.e)])}function encodeSubjectPublicKeyInfo(n){return encodeSequence([encodeSequence([encodeOid(Ba),encodeNull()]),encodeBitString(encodeRsaPublicKeyPkcs1(n))])}function encodeRsaPrivateKeyPkcs1(n){let a=n.d%(n.p-1n),S=n.d%(n.q-1n),C=modInverse$1(n.q,n.p);return encodeSequence([bigintToAsn1Integer(0n),bigintToAsn1Integer(n.n),bigintToAsn1Integer(n.e),bigintToAsn1Integer(n.d),bigintToAsn1Integer(n.p),bigintToAsn1Integer(n.q),bigintToAsn1Integer(a),bigintToAsn1Integer(S),bigintToAsn1Integer(C)])}function encodePrivateKeyInfo(n){let a=encodeSequence([encodeOid(Ba),encodeNull()]),S=encodeOctetString(encodeRsaPrivateKeyPkcs1(n));return encodeSequence([bigintToAsn1Integer(0n),a,S])}function derToPem(n,a){let S=lt.from(n).toString(`base64`),C=[`-----BEGIN ${a}-----`];for(let n=0;n<S.length;n+=64)C.push(S.substring(n,n+64));return C.push(`-----END ${a}-----`),C.join(`
|
|
10
10
|
`)}function modInverse$1(n,a){let[S,C]=[n%a,a],[N,F]=[1n,0n];for(;C!==0n;){let n=S/C;[S,C]=[C,S-n*C],[N,F]=[F,N-n*F]}return(N%a+a)%a}function parseX509(n){let{der:a}=pemToDer(n);return parseX509Der(a)}function parseX509Der(n){let a=parseDer(n);if(a.tag!==48||!a.children||a.children.length<3)throw Error(`Invalid X.509 certificate structure`);let S=a.children[0],C=a.children[1],N=a.children[2];if(!S.children||S.children.length<6)throw Error(`Invalid TBSCertificate structure`);let F=0;S.children[0].tag===160&&F++;let I=integerToBigInt(S.children[F].data);F++,F++;let H=parseDN(S.children[F]);F++;let W=S.children[F],K=parseAsn1Time(W.children[0]),q=parseAsn1Time(W.children[1]);F++;let Y=parseDN(S.children[F]);F++;let X=null,te=`unknown`;if(F<S.children.length){let n=S.children[F];try{if(n.children&&n.children.length>=2){let a=n.children[0];if(a.children&&a.children.length>=1){let S=a.children[0];S.tag===6&&oidsEqual(S.data,Ba)&&(te=`rsa`,X=parseSubjectPublicKeyInfo(n))}}}catch{}F++}let ne,re;for(let n=F;n<S.children.length;n++){let a=S.children[n];if(a.tag===163&&a.data.length>0){let n=parseDer(a.data);if(n.children){re=n.children;let a=new Uint8Array([85,29,17]);for(let S of n.children)if(S.children&&S.children.length>=2){let n=S.children[0];if(n.tag===6&&oidsEqual(n.data,a)){let n=S.children[S.children.length-1];ne=parseSAN(n.data)}}}}}let ie=`unknown`;C.children&&C.children.length>=1&&(ie=oidToName(C.children[0].data));let ae=N.tag===3?N.data.slice(1):N.data;return{raw:n,tbsCertificate:S.data,serialNumber:I,issuer:H,subject:Y,validFrom:K,validTo:q,publicKey:X,publicKeyAlgorithm:te,signatureAlgorithm:ie,signature:ae,subjectAltName:ne,extensions:re}}function decodeOidString(n){if(n.length===0)return``;let a=[];a.push(Math.floor(n[0]/40)),a.push(n[0]%40);let S=0;for(let C=1;C<n.length;C++)S=S<<7|n[C]&127,n[C]&128||(a.push(S),S=0);return a.join(`.`)}function oidToName(n){let a=decodeOidString(n);return Ha[a]||a}function parseDN(n){if(!n.children)return``;let a=[];for(let S of n.children){let n=S.tag===49?parseSequenceChildren(S.data):S.children||[];for(let S of n)if(S.children&&S.children.length>=2){let n=S.children[0].data,C=decodeOidString(n),N=Va[C]||C,F=S.children[1].data,I=new TextDecoder().decode(F);a.push(`${N}=${I}`)}}return a.join(`, `)}function parseAsn1Time(n){let a=new TextDecoder().decode(n.data);if(n.tag===23){let n=parseInt(a.substring(0,2),10);n=n>=50?1900+n:2e3+n;let S=parseInt(a.substring(2,4),10)-1,C=parseInt(a.substring(4,6),10),N=parseInt(a.substring(6,8),10),F=parseInt(a.substring(8,10),10),I=parseInt(a.substring(10,12),10);return new Date(Date.UTC(n,S,C,N,F,I))}if(n.tag===24){let n=parseInt(a.substring(0,4),10),S=parseInt(a.substring(4,6),10)-1,C=parseInt(a.substring(6,8),10),N=parseInt(a.substring(8,10),10),F=parseInt(a.substring(10,12),10),I=parseInt(a.substring(12,14),10);return new Date(Date.UTC(n,S,C,N,F,I))}throw Error(`Unsupported time tag: 0x${n.tag.toString(16)}`)}function parseSAN(n){let a=[];try{let S=parseDer(n);if(S.tag===48&&S.children){for(let n of S.children)if(n.tag===130)a.push(`DNS:`+new TextDecoder().decode(n.data));else if(n.tag===135){if(n.data.length===4)a.push(`IP Address:`+n.data.join(`.`));else if(n.data.length===16){let S=[];for(let a=0;a<16;a+=2)S.push((n.data[a]<<8|n.data[a+1]).toString(16));a.push(`IP Address:`+S.join(`:`))}}}}catch{}return a}function parsePemKey(n){let{type:a,der:S}=pemToDer(n),C=parseDer(S);if(C.tag!==48)throw Error(`Invalid key format: expected top-level SEQUENCE`);switch(a){case`RSA PUBLIC KEY`:return{type:`rsa-public`,components:parseRsaPublicKeyPkcs1(C)};case`PUBLIC KEY`:return{type:`rsa-public`,components:parseSubjectPublicKeyInfo(C)};case`RSA PRIVATE KEY`:return{type:`rsa-private`,components:parseRsaPrivateKeyPkcs1(C)};case`PRIVATE KEY`:return{type:`rsa-private`,components:parsePrivateKeyInfo(C)};default:throw Error(`Unsupported PEM type: ${a}`)}}function rsaKeySize(n){let a=0,S=n;for(;S>0n;)a++,S>>=1n;return Math.ceil(a/8)}var Ba,Va,Ha,Ua=__esmMin(()=>{vt(),Ba=new Uint8Array([42,134,72,134,247,13,1,1,1]),__name$1(modInverse$1,`modInverse`),Va={"2.5.4.3":`CN`,"2.5.4.6":`C`,"2.5.4.7":`L`,"2.5.4.8":`ST`,"2.5.4.10":`O`,"2.5.4.11":`OU`,"1.2.840.113549.1.9.1":`emailAddress`},Ha={"1.2.840.113549.1.1.1":`rsaEncryption`,"1.2.840.113549.1.1.5":`sha1WithRSAEncryption`,"1.2.840.113549.1.1.11":`sha256WithRSAEncryption`,"1.2.840.113549.1.1.12":`sha384WithRSAEncryption`,"1.2.840.113549.1.1.13":`sha512WithRSAEncryption`}});function normalizeSignAlgorithm(n){let a=n.toLowerCase().replace(/-/g,``);if(a.startsWith(`rsa`)&&(a=a.slice(3)),!Wa[a])throw Error(`Unsupported algorithm: ${n}. Supported: RSA-SHA1, RSA-SHA256, RSA-SHA512`);return a}function extractPem$1(n){if(typeof n==`string`)return n;if(lt.isBuffer(n)||n instanceof Uint8Array)return lt.from(n).toString(`utf8`);if(n&&typeof n==`object`&&`key`in n){let a=n.key;if(typeof a==`string`)return a;if(lt.isBuffer(a)||a instanceof Uint8Array)return lt.from(a).toString(`utf8`)}throw TypeError(`Invalid key argument`)}function createSign(n){return new Sign(n)}function createVerify(n){return new Verify(n)}var Wa,Sign,Verify,Ga=__esmMin(()=>{Ua(),_a(),Pa(),vt(),Wa={sha1:new Uint8Array([48,33,48,9,6,5,43,14,3,2,26,5,0,4,20]),sha256:new Uint8Array([48,49,48,13,6,9,96,134,72,1,101,3,4,2,1,5,0,4,32]),sha512:new Uint8Array([48,81,48,13,6,9,96,134,72,1,101,3,4,2,3,5,0,4,64])},__name$1(extractPem$1,`extractPem`),Sign=class{_algorithm;_hash;_finalized=!1;constructor(n){this._algorithm=normalizeSignAlgorithm(n),this._hash=new Na(this._algorithm)}update(n,a){if(this._finalized)throw Error(`Sign was already finalized`);return this._hash.update(n,a),this}sign(n,a){if(this._finalized)throw Error(`Sign was already finalized`);this._finalized=!0;let S=this._hash.digest(),C=parsePemKey(extractPem$1(n));if(C.type!==`rsa-private`)throw Error(`privateKey must be an RSA private key`);let{n:N,d:F}=C.components,I=rsaKeySize(N),H=Wa[this._algorithm],W=new Uint8Array(H.length+S.length);W.set(H,0),W.set(S,H.length);let K=I-W.length-3;if(K<8)throw Error(`Key is too short for the specified hash algorithm`);let q=new Uint8Array(I);q[0]=0,q[1]=1;for(let n=2;n<2+K;n++)q[n]=255;q[2+K]=0,q.set(W,3+K);let Y=bigIntToBytes(modPow(bytesToBigInt(q),F,N),I),X=lt.from(Y);return a?X.toString(a):X}},Verify=class{_algorithm;_hash;_finalized=!1;constructor(n){this._algorithm=normalizeSignAlgorithm(n),this._hash=new Na(this._algorithm)}update(n,a){if(this._finalized)throw Error(`Verify was already finalized`);return this._hash.update(n,a),this}verify(n,a,S){if(this._finalized)throw Error(`Verify was already finalized`);this._finalized=!0;let C=this._hash.digest(),N=parsePemKey(extractPem$1(n)),F,I;if(N.type===`rsa-public`)F=N.components.n,I=N.components.e;else if(N.type===`rsa-private`)F=N.components.n,I=N.components.e;else throw Error(`publicKey must be an RSA public or private key`);let H=rsaKeySize(F),W;if(W=typeof a==`string`?lt.from(a,S||`base64`):a instanceof Uint8Array?a:lt.from(a),W.length!==H)return!1;let K=bytesToBigInt(W);if(K>=F)return!1;let q=bigIntToBytes(modPow(K,I,F),H);if(q[0]!==0||q[1]!==1)return!1;let Y=2;for(;Y<q.length&&q[Y]===255;)Y++;if(Y>=q.length||q[Y]!==0||Y-2<8)return!1;Y++;let X=q.slice(Y),te=Wa[this._algorithm],ne=new Uint8Array(te.length+C.length);if(ne.set(te,0),ne.set(C,te.length),X.length!==ne.length)return!1;let re=0;for(let n=0;n<X.length;n++)re|=X[n]^ne[n];return re===0}}});function extractPem(n){if(typeof n==`string`)return n;if(lt.isBuffer(n)||n instanceof Uint8Array)return lt.from(n).toString(`utf8`);if(n&&typeof n==`object`&&`key`in n){let a=n.key;if(typeof a==`string`)return a;if(lt.isBuffer(a)||a instanceof Uint8Array)return lt.from(a).toString(`utf8`)}throw TypeError(`Invalid key argument`)}function pkcs1v15Type2Pad(n,a){let S=a-11;if(n.length>S)throw Error(`Data too long for key size. Max ${S} bytes, got ${n.length}`);let C=a-n.length-3,N=new Uint8Array(a);N[0]=0,N[1]=2;let F=randomBytes(C);for(let n=0;n<C;n++){for(;F[n]===0;)F[n]=randomBytes(1)[0];N[2+n]=F[n]}return N[2+C]=0,N.set(n,3+C),N}function pkcs1v15Type1Pad(n,a){let S=a-11;if(n.length>S)throw Error(`Data too long for key size. Max ${S} bytes, got ${n.length}`);let C=a-n.length-3,N=new Uint8Array(a);N[0]=0,N[1]=1;for(let n=2;n<2+C;n++)N[n]=255;return N[2+C]=0,N.set(n,3+C),N}function pkcs1v15Type2Unpad(n){if(n.length<11)throw Error(`Decryption error: message too short`);if(n[0]!==0||n[1]!==2)throw Error(`Decryption error: invalid padding`);let a=2;for(;a<n.length&&n[a]!==0;)a++;if(a>=n.length||a<10)throw Error(`Decryption error: invalid padding`);return n.slice(a+1)}function pkcs1v15Type1Unpad(n){if(n.length<11)throw Error(`Decryption error: message too short`);if(n[0]!==0||n[1]!==1)throw Error(`Decryption error: invalid padding`);let a=2;for(;a<n.length&&n[a]===255;)a++;if(a>=n.length||n[a]!==0||a<10)throw Error(`Decryption error: invalid padding`);return n.slice(a+1)}function publicEncrypt(n,a){let S=parsePemKey(extractPem(n)),C,N;if(S.type===`rsa-public`)C=S.components.n,N=S.components.e;else if(S.type===`rsa-private`)C=S.components.n,N=S.components.e;else throw Error(`Key must be an RSA public or private key`);let F=rsaKeySize(C),I=modPow(bytesToBigInt(pkcs1v15Type2Pad(a instanceof Uint8Array?a:lt.from(a),F)),N,C);return lt.from(bigIntToBytes(I,F))}function privateDecrypt(n,a){let S=parsePemKey(extractPem(n));if(S.type!==`rsa-private`)throw Error(`Key must be an RSA private key`);let{n:C,d:N}=S.components,F=rsaKeySize(C),I=a instanceof Uint8Array?a:lt.from(a);if(I.length!==F)throw Error(`Data length (${I.length}) does not match key length (${F})`);let H=bytesToBigInt(I);if(H>=C)throw Error(`Decryption error: cipher value out of range`);let W=bigIntToBytes(modPow(H,N,C),F);return lt.from(pkcs1v15Type2Unpad(W))}function privateEncrypt(n,a){let S=parsePemKey(extractPem(n));if(S.type!==`rsa-private`)throw Error(`Key must be an RSA private key`);let{n:C,d:N}=S.components,F=rsaKeySize(C),I=modPow(bytesToBigInt(pkcs1v15Type1Pad(a instanceof Uint8Array?a:lt.from(a),F)),N,C);return lt.from(bigIntToBytes(I,F))}function publicDecrypt(n,a){let S=parsePemKey(extractPem(n)),C,N;if(S.type===`rsa-public`)C=S.components.n,N=S.components.e;else if(S.type===`rsa-private`)C=S.components.n,N=S.components.e;else throw Error(`Key must be an RSA public or private key`);let F=rsaKeySize(C),I=a instanceof Uint8Array?a:lt.from(a);if(I.length!==F)throw Error(`Data length (${I.length}) does not match key length (${F})`);let H=bytesToBigInt(I);if(H>=C)throw Error(`Decryption error: cipher value out of range`);let W=bigIntToBytes(modPow(H,N,C),F);return lt.from(pkcs1v15Type1Unpad(W))}var Ka=__esmMin(()=>{Ua(),_a(),ga(),vt()});function mgf1(n,a,S){let C=new Uint8Array(S),N=0,F=0;for(;N<S;){let I=new Uint8Array(4);I[0]=F>>>24&255,I[1]=F>>>16&255,I[2]=F>>>8&255,I[3]=F&255;let H=new Na(n);H.update(a),H.update(I);let W=new Uint8Array(H.digest()),K=Math.min(W.length,S-N);C.set(W.slice(0,K),N),N+=K,F++}return C}var qa=__esmMin(()=>{Pa()});function hashDigest$1(n,a){let S=new Na(n);return S.update(a),new Uint8Array(S.digest())}function emsaPssEncode(n,a,S,C){let N=hashSize(S),F=Math.ceil(a/8);if(F<N+C+2)throw Error(`RSA-PSS: encoding error — key too short`);let I=C>0?new Uint8Array(randomBytes(C)):new Uint8Array,H=new Uint8Array(8+N+C);H.set(n,8),H.set(I,8+N);let W=hashDigest$1(S,H),K=F-N-1,q=new Uint8Array(K);q[K-C-1]=1,q.set(I,K-C);let Y=mgf1(S,W,K),X=new Uint8Array(K);for(let n=0;n<K;n++)X[n]=q[n]^Y[n];let te=8*F-a;te>0&&(X[0]&=255>>>te);let ne=new Uint8Array(F);return ne.set(X,0),ne.set(W,K),ne[F-1]=188,ne}function emsaPssVerify(n,a,S,C,N){let F=hashSize(C),I=Math.ceil(S/8);if(I<F+N+2||a[I-1]!==188)return!1;let H=I-F-1,W=a.slice(0,H),K=a.slice(H,H+F),q=8*I-S;if(q>0&&W[0]&255<<8-q)return!1;let Y=mgf1(C,K,H),X=new Uint8Array(H);for(let n=0;n<H;n++)X[n]=W[n]^Y[n];q>0&&(X[0]&=255>>>q);for(let n=0;n<H-N-1;n++)if(X[n]!==0)return!1;if(X[H-N-1]!==1)return!1;let te=X.slice(H-N),ne=new Uint8Array(8+F+N);ne.set(n,8),ne.set(te,8+F);let re=hashDigest$1(C,ne);if(K.length!==re.length)return!1;let ie=0;for(let n=0;n<K.length;n++)ie|=K[n]^re[n];return ie===0}function rsaPssSign(n,a,S,C){let N=parsePemKey(a);if(N.type!==`rsa-private`)throw Error(`RSA-PSS: expected RSA private key`);let{n:F,d:I}=N.components,H=rsaKeySize(F),W=Math.ceil(H/8);return bigIntToBytes(modPow(bytesToBigInt(emsaPssEncode(hashDigest$1(n,S),H-1,n,C)),I,F),W)}function rsaPssVerify(n,a,S,C,N){let F=parsePemKey(a),I,H;if(F.type===`rsa-public`)({n:I,e:H}=F.components);else if(F.type===`rsa-private`)({n:I,e:H}=F.components);else throw Error(`RSA-PSS: expected RSA key`);let W=rsaKeySize(I),K=Math.ceil(W/8);if(S.length!==K)return!1;let q=bigIntToBytes(modPow(bytesToBigInt(S),H,I),Math.ceil((W-1)/8));return emsaPssVerify(hashDigest$1(n,C),q,W-1,n,N)}var Ja=__esmMin(()=>{Ua(),_a(),ja(),ga(),Pa(),qa(),__name$1(hashDigest$1,`hashDigest`)});function hashDigest(n,a){let S=new Na(n);return S.update(a),new Uint8Array(S.digest())}function rsaOaepEncrypt(n,a,S,C){let N=parsePemKey(a),F,I;if(N.type===`rsa-public`)({n:F,e:I}=N.components);else if(N.type===`rsa-private`)({n:F,e:I}=N.components);else throw Error(`RSA-OAEP: expected RSA key`);let H=Math.ceil(rsaKeySize(F)/8),W=hashSize(n);if(S.length>H-2*W-2)throw Error(`RSA-OAEP: message too long`);let K=hashDigest(n,C||new Uint8Array),q=H-W-1,Y=new Uint8Array(q);Y.set(K,0),Y[q-S.length-1]=1,Y.set(S,q-S.length);let X=new Uint8Array(randomBytes(W)),te=mgf1(n,X,q),ne=new Uint8Array(q);for(let n=0;n<q;n++)ne[n]=Y[n]^te[n];let re=mgf1(n,ne,W),ie=new Uint8Array(W);for(let n=0;n<W;n++)ie[n]=X[n]^re[n];let ae=new Uint8Array(H);return ae[0]=0,ae.set(ie,1),ae.set(ne,1+W),bigIntToBytes(modPow(bytesToBigInt(ae),I,F),H)}function rsaOaepDecrypt(n,a,S,C){let N=parsePemKey(a);if(N.type!==`rsa-private`)throw Error(`RSA-OAEP: expected RSA private key`);let{n:F,d:I}=N.components,H=Math.ceil(rsaKeySize(F)/8),W=hashSize(n);if(S.length!==H||H<2*W+2)throw Error(`RSA-OAEP: decryption error`);let K=bigIntToBytes(modPow(bytesToBigInt(S),I,F),H),q=K[0],Y=K.slice(1,1+W),X=K.slice(1+W),te=H-W-1,ne=mgf1(n,X,W),re=new Uint8Array(W);for(let n=0;n<W;n++)re[n]=Y[n]^ne[n];let ie=mgf1(n,re,te),ae=new Uint8Array(te);for(let n=0;n<te;n++)ae[n]=X[n]^ie[n];let oe=hashDigest(n,C||new Uint8Array),Z=ae.slice(0,W),se=+(q===0);for(let n=0;n<W;n++)se&=+(oe[n]===Z[n]);let ce=-1;for(let n=W;n<te;n++)if(ae[n]===1){ce=n;break}else if(ae[n]!==0){se=0;break}if(ce===-1&&(se=0),!se)throw Error(`RSA-OAEP: decryption error`);return ae.slice(ce+1)}var Ya=__esmMin(()=>{Ua(),_a(),ja(),ga(),Pa(),qa()});function bigintToBase64url(n){if(n===0n)return`AA`;let a=n.toString(16),S=a.length%2?`0`+a:a,C=[];for(let n=0;n<S.length;n+=2)C.push(parseInt(S.substring(n,n+2),16));return lt.from(C).toString(`base64url`)}function base64urlToBigint(n){let a=lt.from(n,`base64url`),S=0n;for(let n=0;n<a.length;n++)S=S<<8n|BigInt(a[n]);return S}function exportJwk(n,a){if(n.type===`rsa-public`)return{kty:`RSA`,n:bigintToBase64url(n.components.n),e:bigintToBase64url(n.components.e)};if(n.type===`rsa-private`){if(a===`public`)return{kty:`RSA`,n:bigintToBase64url(n.components.n),e:bigintToBase64url(n.components.e)};let{n:S,e:C,d:N,p:F,q:I}=n.components,H=N%(F-1n),W=N%(I-1n),K=modInverse(I,F);return{kty:`RSA`,n:bigintToBase64url(S),e:bigintToBase64url(C),d:bigintToBase64url(N),p:bigintToBase64url(F),q:bigintToBase64url(I),dp:bigintToBase64url(H),dq:bigintToBase64url(W),qi:bigintToBase64url(K)}}throw Error(`Unsupported key type for JWK export`)}function importJwkRsa(n){if(n.d){let a={n:base64urlToBigint(n.n),e:base64urlToBigint(n.e),d:base64urlToBigint(n.d),p:base64urlToBigint(n.p),q:base64urlToBigint(n.q)};return{parsed:{type:`rsa-private`,components:a},pem:derToPem(encodeRsaPrivateKeyPkcs1(a),`RSA PRIVATE KEY`)}}let a={n:base64urlToBigint(n.n),e:base64urlToBigint(n.e)};return{parsed:{type:`rsa-public`,components:a},pem:derToPem(encodeSubjectPublicKeyInfo(a),`PUBLIC KEY`)}}function generatePem(n,a,S){if(n.type===`rsa-public`)return S===`pkcs1`?derToPem(encodeRsaPublicKeyPkcs1(n.components),`RSA PUBLIC KEY`):derToPem(encodeSubjectPublicKeyInfo(n.components),`PUBLIC KEY`);if(n.type===`rsa-private`&&a===`public`){let a={n:n.components.n,e:n.components.e};return S===`pkcs1`?derToPem(encodeRsaPublicKeyPkcs1(a),`RSA PUBLIC KEY`):derToPem(encodeSubjectPublicKeyInfo(a),`PUBLIC KEY`)}if(n.type===`rsa-private`)return S===`pkcs8`?derToPem(encodePrivateKeyInfo(n.components),`PRIVATE KEY`):derToPem(encodeRsaPrivateKeyPkcs1(n.components),`RSA PRIVATE KEY`);throw Error(`Cannot generate PEM for this key type`)}function generateDer(n,a,S){if(n.type===`rsa-public`)return S===`pkcs1`?lt.from(encodeRsaPublicKeyPkcs1(n.components)):lt.from(encodeSubjectPublicKeyInfo(n.components));if(n.type===`rsa-private`&&a===`public`){let a={n:n.components.n,e:n.components.e};return S===`pkcs1`?lt.from(encodeRsaPublicKeyPkcs1(a)):lt.from(encodeSubjectPublicKeyInfo(a))}if(n.type===`rsa-private`)return S===`pkcs8`?lt.from(encodePrivateKeyInfo(n.components)):lt.from(encodeRsaPrivateKeyPkcs1(n.components));throw Error(`Cannot generate DER for this key type`)}function modInverse(n,a){let[S,C]=[n%a,a],[N,F]=[1n,0n];for(;C!==0n;){let n=S/C;[S,C]=[C,S-n*C],[N,F]=[F,N-n*F]}return(N%a+a)%a}function createSecretKey(n,a){let S;return S=typeof n==`string`?lt.from(n,a??`utf8`):new Uint8Array(n),new Xa(`secret`,S)}function createPublicKey(n){if(n instanceof Xa){if(n.type===`public`)return n;if(n.type===`private`){let a=n._handle;if(a.parsed.type===`rsa-private`){let n={n:a.parsed.components.n,e:a.parsed.components.e};return new Xa(`public`,{parsed:{type:`rsa-public`,components:n},pem:derToPem(encodeSubjectPublicKeyInfo(n),`PUBLIC KEY`)})}}throw TypeError(`Cannot create public key from secret key`)}if(typeof n==`object`&&!lt.isBuffer(n)&&`key`in n){let a=n;if(a.format===`jwk`){let n=a.key;if(n.kty===`RSA`){let{parsed:a,pem:S}=importJwkRsa({n:n.n,e:n.e});return new Xa(`public`,{parsed:a,pem:S})}throw Error(`Unsupported JWK key type: ${n.kty}`)}}let a=normalizePem(n),S=parsePemKey(a);if(S.type===`rsa-private`){let n={n:S.components.n,e:S.components.e};return new Xa(`public`,{parsed:{type:`rsa-public`,components:n},pem:derToPem(encodeSubjectPublicKeyInfo(n),`PUBLIC KEY`)})}return new Xa(`public`,{parsed:S,pem:a})}function createPrivateKey(n){if(typeof n==`object`&&!lt.isBuffer(n)&&`key`in n){let a=n;if(a.format===`jwk`){let n=a.key;if(n.kty===`RSA`&&n.d){let{parsed:a,pem:S}=importJwkRsa(n);return new Xa(`private`,{parsed:a,pem:S})}throw Error(`JWK does not contain a private key`)}}let a=normalizePem(n),S=parsePemKey(a);if(S.type!==`rsa-private`)throw TypeError(`Key is not a private key`);return new Xa(`private`,{parsed:S,pem:a})}function normalizePem(n){if(typeof n==`string`)return n;if(lt.isBuffer(n))return n.toString(`utf8`);if(n&&typeof n==`object`&&`key`in n){let a=n;if(typeof a.key==`string`)return a.key;if(lt.isBuffer(a.key))return a.key.toString(a.encoding??`utf8`);if(a.key instanceof Xa)return a.key.export({format:`pem`})}throw TypeError(`Invalid key input`)}var Xa,Za=__esmMin(()=>{Ua(),vt(),Xa=class KeyObject{type;_handle;constructor(n,a){if(n!==`secret`&&n!==`public`&&n!==`private`)throw TypeError(`Invalid KeyObject type: ${n}`);this.type=n,this._handle=a}get symmetricKeySize(){if(this.type===`secret`)return this._handle.byteLength}get asymmetricKeyType(){if(this.type===`secret`)return;let n=this._handle;if(n.parsed.type===`rsa-public`||n.parsed.type===`rsa-private`)return`rsa`}get asymmetricKeySize(){if(this.type===`secret`)return;let n=this._handle;if(n.parsed.type===`rsa-public`||n.parsed.type===`rsa-private`)return rsaKeySize(n.parsed.components.n)/8}equals(n){if(!(n instanceof KeyObject)||this.type!==n.type)return!1;if(this.type===`secret`){let a=this._handle,S=n._handle;if(a.byteLength!==S.byteLength)return!1;for(let n=0;n<a.byteLength;n++)if(a[n]!==S[n])return!1;return!0}let a=this._handle,S=n._handle;return a.pem===S.pem}export(n){if(this.type===`secret`){let a=this._handle;return n?.format===`jwk`?{kty:`oct`,k:lt.from(a).toString(`base64url`)}:lt.from(a)}let a=this._handle,S=n?.format??`pem`,C=n?.type;if(S===`jwk`)return exportJwk(a.parsed,this.type);if(S===`pem`)return a.pem&&!a.pem.startsWith(`[`)?a.pem:generatePem(a.parsed,this.type,C);if(S===`der`){if(a.pem&&!a.pem.startsWith(`[`)){let n=a.pem.trim().split(/\r?\n/),S=n.findIndex(n=>n.startsWith(`-----BEGIN `)),C=n.findIndex((n,a)=>a>S&&n.startsWith(`-----END `)),N=n.slice(S+1,C).join(``);return lt.from(N,`base64`)}return generateDer(a.parsed,this.type,C)}throw TypeError(`Unsupported export format: ${S}`)}get[Symbol.toStringTag](){return`KeyObject`}}});function formatFingerprint(n){let a=n.toString(`hex`).toUpperCase(),S=[];for(let n=0;n<a.length;n+=2)S.push(a.substring(n,n+2));return S.join(`:`)}function matchHostname(n,a){let S=n.toLowerCase(),C=a.toLowerCase();if(S===C)return!0;if(S.startsWith(`*.`)){let n=S.substring(2),a=C.split(`.`);if(a.length>=2)return a.slice(1).join(`.`)===n}return!1}function parseDNToObject(n){let a={},S=n.split(`, `);for(let n of S){let S=n.indexOf(`=`);S>0&&(a[n.substring(0,S)]=n.substring(S+1))}return a}var X509Certificate,Qa=__esmMin(()=>{Ua(),Za(),to(),vt(),X509Certificate=class{_components;_pem;constructor(n){if(typeof n==`string`)this._pem=n,this._components=parseX509(n);else{let a=lt.isBuffer(n)?n:lt.from(n),S=a.toString(`utf8`);S.includes(`-----BEGIN CERTIFICATE-----`)?(this._pem=S,this._components=parseX509(S)):(this._components=parseX509Der(new Uint8Array(a.buffer,a.byteOffset,a.byteLength)),this._pem=derToPem(this._components.raw,`CERTIFICATE`))}}get raw(){return lt.from(this._components.raw)}get serialNumber(){return this._components.serialNumber.toString(16).toUpperCase()}get subject(){return this._components.subject}get issuer(){return this._components.issuer}get validFrom(){return this._components.validFrom.toUTCString()}get validTo(){return this._components.validTo.toUTCString()}get fingerprint(){return formatFingerprint(createHash(`sha1`).update(this._components.raw).digest())}get fingerprint256(){return formatFingerprint(createHash(`sha256`).update(this._components.raw).digest())}get fingerprint512(){return formatFingerprint(createHash(`sha512`).update(this._components.raw).digest())}get publicKey(){if(!this._components.publicKey)throw Error(`Certificate does not contain a supported public key type`);let n=derToPem(encodeSubjectPublicKeyInfo(this._components.publicKey),`PUBLIC KEY`);return new Xa(`public`,{parsed:{type:`rsa-public`,components:this._components.publicKey},pem:n})}get subjectAltName(){if(!(!this._components.subjectAltName||this._components.subjectAltName.length===0))return this._components.subjectAltName.join(`, `)}get keyUsage(){}get infoAccess(){}get ca(){return!1}checkHost(n){let a=this._components.subject.match(/CN=([^,]+)/);if(a){let S=a[1].trim();if(matchHostname(S,n))return S}if(this._components.subjectAltName){for(let a of this._components.subjectAltName)if(a.startsWith(`DNS:`)){let S=a.substring(4);if(matchHostname(S,n))return S}}}checkEmail(n){let a=n.toLowerCase(),S=this._components.subject.match(/emailAddress=([^,]+)/);if(S&&S[1].toLowerCase()===a)return S[1]}checkIP(n){if(this._components.subjectAltName){for(let a of this._components.subjectAltName)if(a.startsWith(`IP Address:`)&&a.substring(11)===n)return n}}verify(n){return!0}checkIssued(n){return this.issuer===n.subject}toLegacyObject(){return{subject:parseDNToObject(this._components.subject),issuer:parseDNToObject(this._components.issuer),valid_from:this.validFrom,valid_to:this.validTo,serialNumber:this.serialNumber,fingerprint:this.fingerprint,fingerprint256:this.fingerprint256}}toString(){return this._pem}toJSON(){return this._pem}get[Symbol.toStringTag](){return`X509Certificate`}}}),$a=__exportAll$3({DiffieHellman:()=>DiffieHellman,DiffieHellmanGroup:()=>Ca,Hash:()=>Na,Hmac:()=>Hmac,KeyObject:()=>Xa,Sign:()=>Sign,Verify:()=>Verify,X509Certificate:()=>X509Certificate,constants:()=>oa,createCipher:()=>createCipher,createCipheriv:()=>createCipheriv,createDecipher:()=>createDecipher,createDecipheriv:()=>createDecipheriv,createDiffieHellman:()=>createDiffieHellman,createDiffieHellmanGroup:()=>Sa,createECDH:()=>createECDH,createHash:()=>createHash,createHmac:()=>createHmac,createPrivateKey:()=>createPrivateKey,createPublicKey:()=>createPublicKey,createSecretKey:()=>createSecretKey,createSign:()=>createSign,createVerify:()=>createVerify,default:()=>eo,ecdsaSign:()=>ecdsaSign,ecdsaVerify:()=>ecdsaVerify,getCiphers:()=>getCiphers,getCurves:()=>getCurves,getDiffieHellman:()=>getDiffieHellman,getHashes:()=>getHashes,hash:()=>hash,hkdf:()=>hkdf,hkdfSync:()=>hkdfSync,mgf1:()=>mgf1,pbkdf2:()=>pbkdf2,pbkdf2Sync:()=>pbkdf2Sync,privateDecrypt:()=>privateDecrypt,privateEncrypt:()=>privateEncrypt,publicDecrypt:()=>publicDecrypt,publicEncrypt:()=>publicEncrypt,randomBytes:()=>randomBytes,randomFill:()=>randomFill,randomFillSync:()=>randomFillSync,randomInt:()=>randomInt,randomUUID:()=>randomUUID,rsaOaepDecrypt:()=>rsaOaepDecrypt,rsaOaepEncrypt:()=>rsaOaepEncrypt,rsaPssSign:()=>rsaPssSign,rsaPssVerify:()=>rsaPssVerify,scrypt:()=>scrypt,scryptSync:()=>scryptSync,timingSafeEqual:()=>timingSafeEqual});function createHash(n){return new Na(n)}function createHmac(n,a){return new Hmac(n,a)}var eo,to=__esmMin(()=>{sa(),ca(),ma(),ga(),wa(),Da(),Pa(),Fa(),Ia(),La(),Ra(),za(),Ga(),Ka(),qa(),Ja(),Ya(),Za(),Qa(),eo={Hash:Na,getHashes,hash,Hmac,randomBytes,randomFill,randomFillSync,randomUUID,randomInt,timingSafeEqual,constants:oa,pbkdf2,pbkdf2Sync,hkdf,hkdfSync,scrypt,scryptSync,createHash,createHmac,createCipher,createCipheriv,createDecipher,createDecipheriv,getCiphers,Sign,Verify,createSign,createVerify,createDiffieHellman,getDiffieHellman,DiffieHellman,DiffieHellmanGroup:Ca,createDiffieHellmanGroup:Sa,createECDH,getCurves,ecdsaSign,ecdsaVerify,publicEncrypt,privateDecrypt,privateEncrypt,publicDecrypt,rsaPssSign,rsaPssVerify,rsaOaepEncrypt,rsaOaepDecrypt,mgf1,KeyObject:Xa,createSecretKey,createPublicKey,createPrivateKey,X509Certificate}});let no=!1,ro,io,ao,oo,so,co,lo,uo,fo,po,mo,ho,go,_o,vo,yo;async function loadCrypto(){if(no)return;let n=await Promise.resolve().then(()=>(to(),$a));ro=n.createHash,io=n.createHmac,ao=n.createCipheriv,oo=n.createDecipheriv,so=n.createSign,co=n.createVerify,lo=n.pbkdf2Sync,uo=n.hkdfSync,fo=n.createECDH,po=n.randomBytes,n.publicEncrypt,n.privateDecrypt,n.createPublicKey,n.createPrivateKey,mo=n.ecdsaSign,ho=n.ecdsaVerify,go=n.rsaPssSign,_o=n.rsaPssVerify,vo=n.rsaOaepEncrypt,yo=n.rsaOaepDecrypt,no=!0}const bo=loadCrypto();var SubtleCrypto=class{async digest(n,a){await bo;let S=toNodeHashName(normalizeAlgorithm$1(n).name),C=toUint8Array(a),N=ro(S);N.update(C);let F=N.digest();return F.buffer.slice(F.byteOffset,F.byteOffset+F.byteLength)}async generateKey(n,a,S){await bo;let C=normalizeAlgorithm$1(n);switch(C.name.toUpperCase()){case`AES-CBC`:case`AES-CTR`:case`AES-GCM`:{let N=n.length;if(![128,192,256].includes(N))throw new DOMException(`Invalid AES key length: ${N}`,`OperationError`);validateUsages(S,[`encrypt`,`decrypt`,`wrapKey`,`unwrapKey`]);let F=po(N/8);return new CryptoKey(`secret`,a,{name:C.name,length:N},S,new Uint8Array(F))}case`HMAC`:{let C=n,N=normalizeAlgorithm$1(C.hash),F=C.length||hashSize$1(N.name)*8;validateUsages(S,[`sign`,`verify`]);let I=po(Math.ceil(F/8));return new CryptoKey(`secret`,a,{name:`HMAC`,hash:{name:N.name},length:F},S,new Uint8Array(I))}case`ECDH`:{let C=n.namedCurve,N=toNodeCurveName(C);validateUsages(S,[`deriveKey`,`deriveBits`]);let F=fo(N);F.generateKeys();let I=new Uint8Array(F.getPublicKey()),H=new Uint8Array(F.getPrivateKey());return{publicKey:new CryptoKey(`public`,!0,{name:`ECDH`,namedCurve:C},[],I),privateKey:new CryptoKey(`private`,a,{name:`ECDH`,namedCurve:C},S,{pub:I,priv:H})}}case`ECDSA`:{let C=n.namedCurve,N=toNodeCurveName(C);validateUsages(S,[`sign`,`verify`]);let F=fo(N);F.generateKeys();let I=new Uint8Array(F.getPublicKey()),H=new Uint8Array(F.getPrivateKey());return{publicKey:new CryptoKey(`public`,!0,{name:`ECDSA`,namedCurve:C},[`verify`],I),privateKey:new CryptoKey(`private`,a,{name:`ECDSA`,namedCurve:C},[`sign`],{pub:I,priv:H})}}default:throw new DOMException(`Unsupported algorithm: ${C.name}`,`NotSupportedError`)}}async importKey(n,a,S,C,N){await bo;let F=normalizeAlgorithm$1(S),I=F.name.toUpperCase();switch(I){case`AES-CBC`:case`AES-CTR`:case`AES-GCM`:if(n===`raw`){let n=toUint8Array(a);if(![16,24,32].includes(n.length))throw new DOMException(`Invalid AES key length: ${n.length*8}`,`DataError`);return validateUsages(N,[`encrypt`,`decrypt`,`wrapKey`,`unwrapKey`]),new CryptoKey(`secret`,C,{name:F.name,length:n.length*8},N,new Uint8Array(n))}if(n===`jwk`){let n=a;if(n.kty!==`oct`)throw new DOMException(`JWK kty must be "oct"`,`DataError`);let S=base64urlDecode(n.k);if(![16,24,32].includes(S.length))throw new DOMException(`Invalid AES key length: ${S.length*8}`,`DataError`);return validateUsages(N,[`encrypt`,`decrypt`,`wrapKey`,`unwrapKey`]),new CryptoKey(`secret`,C,{name:F.name,length:S.length*8},N,S)}throw new DOMException(`Unsupported format: ${n}`,`NotSupportedError`);case`HMAC`:{let F=normalizeAlgorithm$1(S.hash);if(n===`raw`){let n=toUint8Array(a);return validateUsages(N,[`sign`,`verify`]),new CryptoKey(`secret`,C,{name:`HMAC`,hash:{name:F.name},length:n.length*8},N,new Uint8Array(n))}if(n===`jwk`){let n=a;if(n.kty!==`oct`)throw new DOMException(`JWK kty must be "oct"`,`DataError`);let S=base64urlDecode(n.k);return validateUsages(N,[`sign`,`verify`]),new CryptoKey(`secret`,C,{name:`HMAC`,hash:{name:F.name},length:S.length*8},N,S)}throw new DOMException(`Unsupported format: ${n}`,`NotSupportedError`)}case`PBKDF2`:if(n===`raw`){let n=toUint8Array(a);return validateUsages(N,[`deriveKey`,`deriveBits`]),new CryptoKey(`secret`,!1,{name:`PBKDF2`},N,new Uint8Array(n))}throw new DOMException(`Unsupported format: ${n}`,`NotSupportedError`);case`HKDF`:if(n===`raw`){let n=toUint8Array(a);return validateUsages(N,[`deriveKey`,`deriveBits`]),new CryptoKey(`secret`,!1,{name:`HKDF`},N,new Uint8Array(n))}throw new DOMException(`Unsupported format: ${n}`,`NotSupportedError`);case`ECDH`:case`ECDSA`:{let H=S.namedCurve;if(n===`raw`){let n=toUint8Array(a);return I===`ECDH`?N.length>0&&validateUsages(N,[`deriveKey`,`deriveBits`]):validateUsages(N,[`verify`]),new CryptoKey(`public`,C,{name:F.name,namedCurve:H},N,new Uint8Array(n))}if(n===`jwk`){let n=a;if(n.kty!==`EC`)throw new DOMException(`JWK kty must be "EC"`,`DataError`);if(n.d){let a=base64urlDecode(n.d),S=base64urlDecode(n.x),W=base64urlDecode(n.y),K=new Uint8Array(1+S.length+W.length);return K[0]=4,K.set(S,1),K.set(W,1+S.length),validateUsages(N,I===`ECDH`?[`deriveKey`,`deriveBits`]:[`sign`]),new CryptoKey(`private`,C,{name:F.name,namedCurve:H},N,{pub:K,priv:a})}else{let a=base64urlDecode(n.x),S=base64urlDecode(n.y),W=new Uint8Array(1+a.length+S.length);return W[0]=4,W.set(a,1),W.set(S,1+a.length),I===`ECDH`?N.length>0&&validateUsages(N,[`deriveKey`,`deriveBits`]):validateUsages(N,[`verify`]),new CryptoKey(`public`,C,{name:F.name,namedCurve:H},N,W)}}throw new DOMException(`Unsupported format: ${n}`,`NotSupportedError`)}default:throw new DOMException(`Unsupported algorithm: ${F.name}`,`NotSupportedError`)}}async exportKey(n,a){if(!a.extractable)throw new DOMException(`Key is not extractable`,`InvalidAccessError`);let S=a.algorithm.name.toUpperCase();if(n===`raw`){if(a.type===`secret`){let n=a._handle;return n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}if(a.type===`public`&&(S===`ECDH`||S===`ECDSA`)){let n=a._handle;return n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}throw new DOMException(`Cannot export in raw format`,`InvalidAccessError`)}if(n===`jwk`){if(a.type===`secret`){let n=a._handle,C={kty:`oct`,k:base64urlEncode(n),ext:a.extractable,key_ops:[...a.usages]};return S.startsWith(`AES-`)?C.alg=`A${a.algorithm.length}${S.replace(`AES-`,``)}`:S===`HMAC`&&(C.alg=`HS${a.algorithm.hash.name.replace(`SHA-`,``)}`),C}if((S===`ECDH`||S===`ECDSA`)&&(a.type===`public`||a.type===`private`)){let n=a.algorithm.namedCurve,S;S=a.type===`public`?a._handle:a._handle.pub;let C=(S.length-1)/2,N=S.slice(1,1+C),F=S.slice(1+C),I={kty:`EC`,crv:n,x:base64urlEncode(N),y:base64urlEncode(F),ext:a.extractable,key_ops:[...a.usages]};return a.type===`private`&&(I.d=base64urlEncode(a._handle.priv)),I}throw new DOMException(`JWK export not supported for ${S} ${a.type}`,`NotSupportedError`)}throw new DOMException(`Unsupported export format: ${n}`,`NotSupportedError`)}async encrypt(n,a,S){await bo,checkUsage(a,`encrypt`);let C=normalizeAlgorithm$1(n),N=C.name.toUpperCase(),F=toUint8Array(S);switch(N){case`AES-CBC`:{let S=toUint8Array(n.iv),C=a._handle,N=C.length*8,I=ao(`aes-${N}-cbc`,C,S),H=I.update(F),W=I.final(),K=new Uint8Array(H.length+W.length);return K.set(new Uint8Array(H),0),K.set(new Uint8Array(W),H.length),K.buffer}case`AES-CTR`:{let S=toUint8Array(n.counter),C=a._handle,N=C.length*8,I=ao(`aes-${N}-ctr`,C,S),H=I.update(F),W=I.final(),K=new Uint8Array(H.length+W.length);return K.set(new Uint8Array(H),0),K.set(new Uint8Array(W),H.length),K.buffer}case`AES-GCM`:{let S=n,C=toUint8Array(S.iv),N=S.additionalData?toUint8Array(S.additionalData):void 0,I=a._handle,H=I.length*8,W=ao(`aes-${H}-gcm`,I,C);N&&W.setAAD(N);let K=W.update(F),q=W.final(),Y=W.getAuthTag(),X=new Uint8Array(K.length+q.length+Y.length);return X.set(new Uint8Array(K),0),X.set(new Uint8Array(q),K.length),X.set(new Uint8Array(Y),K.length+q.length),X.buffer}case`RSA-OAEP`:{let S=a.algorithm.hash.name,C=toNodeHashName(S),N=a._handle,I=n,H=I.label?toUint8Array(I.label):void 0,W=vo(C,N.pem,F,H);return W.buffer.slice(W.byteOffset,W.byteOffset+W.byteLength)}default:throw new DOMException(`Unsupported algorithm: ${C.name}`,`NotSupportedError`)}}async decrypt(n,a,S){await bo,checkUsage(a,`decrypt`);let C=normalizeAlgorithm$1(n),N=C.name.toUpperCase(),F=toUint8Array(S);switch(N){case`AES-CBC`:{let S=toUint8Array(n.iv),C=a._handle,N=C.length*8,I=oo(`aes-${N}-cbc`,C,S),H=I.update(F),W=I.final(),K=new Uint8Array(H.length+W.length);return K.set(new Uint8Array(H),0),K.set(new Uint8Array(W),H.length),K.buffer}case`AES-CTR`:{let S=toUint8Array(n.counter),C=a._handle,N=C.length*8,I=oo(`aes-${N}-ctr`,C,S),H=I.update(F),W=I.final(),K=new Uint8Array(H.length+W.length);return K.set(new Uint8Array(H),0),K.set(new Uint8Array(W),H.length),K.buffer}case`AES-GCM`:{let S=n,C=toUint8Array(S.iv),N=(S.tagLength||128)/8,I=S.additionalData?toUint8Array(S.additionalData):void 0,H=a._handle,W=H.length*8,K=F.slice(0,F.length-N),q=F.slice(F.length-N),Y=oo(`aes-${W}-gcm`,H,C);Y.setAuthTag(q),I&&Y.setAAD(I);let X=Y.update(K),te=Y.final(),ne=new Uint8Array(X.length+te.length);return ne.set(new Uint8Array(X),0),ne.set(new Uint8Array(te),X.length),ne.buffer}case`RSA-OAEP`:{let S=a.algorithm.hash.name,C=toNodeHashName(S),N=a._handle,I=n,H=I.label?toUint8Array(I.label):void 0,W=yo(C,N.pem,F,H);return W.buffer.slice(W.byteOffset,W.byteOffset+W.byteLength)}default:throw new DOMException(`Unsupported algorithm: ${C.name}`,`NotSupportedError`)}}async sign(n,a,S){await bo,checkUsage(a,`sign`);let C=normalizeAlgorithm$1(n),N=C.name.toUpperCase(),F=toUint8Array(S);switch(N){case`HMAC`:{let n=a.algorithm.hash.name,S=toNodeHashName(n),C=a._handle,N=io(S,C);N.update(F);let I=N.digest();return I.buffer.slice(I.byteOffset,I.byteOffset+I.byteLength)}case`RSASSA-PKCS1-V1_5`:{let n=a.algorithm.hash.name,S=toNodeHashName(n),C=a._handle,N=so(S);N.update(F);let I=N.sign(C.pem);return I.buffer.slice(I.byteOffset,I.byteOffset+I.byteLength)}case`ECDSA`:{let S=n,C=toNodeHashName(typeof S.hash==`string`?S.hash:S.hash.name),N=a.algorithm.namedCurve,I=a._handle,H=mo(C,I.priv,F,N);return H.buffer.slice(H.byteOffset,H.byteOffset+H.byteLength)}case`RSA-PSS`:{let S=a.algorithm.hash.name,C=toNodeHashName(S),N=a._handle,I=n.saltLength??hashSize$1(S),H=go(C,N.pem,F,I);return H.buffer.slice(H.byteOffset,H.byteOffset+H.byteLength)}default:throw new DOMException(`Unsupported algorithm: ${C.name}`,`NotSupportedError`)}}async verify(n,a,S,C){await bo,checkUsage(a,`verify`);let N=normalizeAlgorithm$1(n),F=N.name.toUpperCase(),I=toUint8Array(C),H=toUint8Array(S);switch(F){case`HMAC`:{let n=a.algorithm.hash.name,S=toNodeHashName(n),C=a._handle,N=io(S,C);N.update(I);let F=new Uint8Array(N.digest());if(F.length!==H.length)return!1;let W=0;for(let n=0;n<F.length;n++)W|=F[n]^H[n];return W===0}case`RSASSA-PKCS1-V1_5`:{let n=a.algorithm.hash.name,S=toNodeHashName(n),C=a._handle,N=co(S);return N.update(I),N.verify(C.pem,H)}case`ECDSA`:{let S=n,C=toNodeHashName(typeof S.hash==`string`?S.hash:S.hash.name),N=a.algorithm.namedCurve,F=a._handle;return ho(C,F,H,I,N)}case`RSA-PSS`:{let S=a.algorithm.hash.name,C=toNodeHashName(S),N=a._handle,F=n.saltLength??hashSize$1(S);return _o(C,N.pem,H,I,F)}default:throw new DOMException(`Unsupported algorithm: ${N.name}`,`NotSupportedError`)}}async _deriveBitsInternal(n,a,S){await bo;let C=normalizeAlgorithm$1(n);switch(C.name.toUpperCase()){case`PBKDF2`:{let C=n,N=toNodeHashName(normalizeAlgorithm$1(C.hash).name),F=toUint8Array(C.salt),I=C.iterations,H=a._handle,W=lo(H,F,I,S/8,N);return W.buffer.slice(W.byteOffset,W.byteOffset+W.byteLength)}case`HKDF`:{let C=n,N=toNodeHashName(normalizeAlgorithm$1(C.hash).name),F=toUint8Array(C.salt),I=toUint8Array(C.info),H=a._handle;return uo(N,H,F,I,S/8)}case`ECDH`:{let C=n.public,N=a.algorithm.namedCurve,F=toNodeCurveName(N),I=fo(F),H=a._handle;I.setPrivateKey(H.priv);let W=C._handle instanceof Uint8Array?C._handle:C._handle.pub,K=I.computeSecret(W),q=new Uint8Array(K);return S?q.buffer.slice(0,S/8):q.buffer.slice(q.byteOffset,q.byteOffset+q.byteLength)}default:throw new DOMException(`Unsupported algorithm: ${C.name}`,`NotSupportedError`)}}async deriveBits(n,a,S){return checkUsage(a,`deriveBits`),this._deriveBitsInternal(n,a,S)}async deriveKey(n,a,S,C,N){checkUsage(a,`deriveKey`);let F=normalizeAlgorithm$1(S),I,H=F.name.toUpperCase();if(H===`AES-CBC`||H===`AES-CTR`||H===`AES-GCM`)I=S.length;else if(H===`HMAC`){let n=S,a=normalizeAlgorithm$1(n.hash);I=n.length||hashSize$1(a.name)*8}else throw new DOMException(`Unsupported derived key algorithm: ${F.name}`,`NotSupportedError`);let W=await this._deriveBitsInternal(n,a,I);return this.importKey(`raw`,W,S,C,N)}async wrapKey(n,a,S,C){throw new DOMException(`wrapKey not yet implemented`,`NotSupportedError`)}async unwrapKey(n,a,S,C,N,F,I){throw new DOMException(`unwrapKey not yet implemented`,`NotSupportedError`)}};const xo=globalThis.crypto===void 0?null:globalThis.crypto;var CryptoPolyfill=class{subtle=new SubtleCrypto;getRandomValues(n){if(!(n instanceof Int8Array||n instanceof Uint8Array||n instanceof Int16Array||n instanceof Uint16Array||n instanceof Int32Array||n instanceof Uint32Array||n instanceof Uint8ClampedArray||n instanceof BigInt64Array||n instanceof BigUint64Array))throw new DOMException(`The provided value is not of type '(Int8Array or Int16Array or Int32Array or Uint8Array or Uint8ClampedArray or Uint16Array or Uint32Array or BigInt64Array or BigUint64Array)'`,`TypeMismatchError`);if(n.byteLength>65536)throw new DOMException(`The ArrayBufferView's byte length exceeds the number of bytes of entropy available via this API (65536)`,`QuotaExceededError`);let a=new Uint8Array(n.buffer,n.byteOffset,n.byteLength);if(xo&&typeof xo.getRandomValues==`function`)xo.getRandomValues(a);else for(let n=0;n<a.length;n++)a[n]=Math.floor(Math.random()*256);return n}randomUUID(){if(xo&&typeof xo.randomUUID==`function`)return xo.randomUUID();let n=new Uint8Array(16);this.getRandomValues(n),n[6]=n[6]&15|64,n[8]=n[8]&63|128;let a=Array.from(n,n=>n.toString(16).padStart(2,`0`)).join(``);return`${a.slice(0,8)}-${a.slice(8,12)}-${a.slice(12,16)}-${a.slice(16,20)}-${a.slice(20)}`}};const So=xo!==null&&xo.subtle!==void 0&&typeof xo.subtle.digest==`function`,Co=So?xo:new CryptoPolyfill;So?xo.subtle:new SubtleCrypto;const wo=globalThis;(globalThis.crypto===void 0||globalThis.crypto.subtle===void 0)&&(wo.crypto=Co);var To,Eo=__esmMin(()=>{To=class YError extends Error{constructor(n){super(n||`yargs error`),this.name=`YError`,Error.captureStackTrace&&Error.captureStackTrace(this,YError)}}});function applyExtends(n,a,S,C){Oo=C;let N={};if(Object.prototype.hasOwnProperty.call(n,`extends`)){if(typeof n.extends!=`string`)return N;let F=/\.json|\..*rc$/.test(n.extends),I=null;if(F)I=getPathToDefaultConfig(a,n.extends);else try{I=import.meta.resolve(n.extends)}catch{return n}checkForCircularExtends(I),Do.push(I),N=F?JSON.parse(Oo.readFileSync(I,`utf8`)):C.require(n.extends),delete n.extends,N=applyExtends(N,Oo.path.dirname(I),S,Oo)}return Do=[],S?mergeDeep(N,n):Object.assign({},N,n)}function checkForCircularExtends(n){if(Do.indexOf(n)>-1)throw new To(`Circular extended configurations: '${n}'.`)}function getPathToDefaultConfig(n,a){return Oo.path.resolve(n,a)}function mergeDeep(n,a){let S={};function isObject(n){return n&&typeof n==`object`&&!Array.isArray(n)}Object.assign(S,n);for(let C of Object.keys(a))isObject(a[C])&&isObject(S[C])?S[C]=mergeDeep(n[C],a[C]):S[C]=a[C];return S}var Do,Oo,ko=__esmMin(()=>{Eo(),Do=[]});function getProcessArgvBinIndex(){return+!isBundledElectronApp()}function isBundledElectronApp(){return isElectronApp()&&!process.defaultApp}function isElectronApp(){return!!process.versions.electron}function hideBin(n){return n.slice(getProcessArgvBinIndex()+1)}function getProcessArgvBin(){return process.argv[getProcessArgvBinIndex()]}var Ao=__esmMin(()=>{});function findPnpManifest(n){let a=me.File.new_for_path(n);for(;a.has_parent(null);){let n=a.resolve_relative_path(`.pnp.cjs`);if(n.query_exists(null))return n.get_path();a=a.get_parent()}return null}function loadPnpManifest(n){let a=jo.get(n);if(a!==void 0)return a;let S=me.File.new_for_path(n),C;try{let[a,N]=S.load_contents(null);if(!a)return jo.set(n,null),null;C=new TextDecoder().decode(N)}catch{return jo.set(n,null),null}let N=extractRawRuntimeState(C);if(!N)return jo.set(n,null),null;let F=Z.path_get_dirname(n),I=new Map,H=new Map;for(let[n,a]of N.packageRegistryData){let S=new Map;for(let[C,N]of a)S.set(C,N),N.discardFromLookup||H.set(N.packageLocation,{name:n,reference:C});I.set(n,S)}let W={rootDir:F,packages:I,locatorsByLocation:H};return jo.set(n,W),W}function extractRawRuntimeState(n){let a=n.indexOf(`const RAW_RUNTIME_STATE =`);if(a<0)return null;let S=n.indexOf(`'`,a);if(S<0)return null;let C=S+1;for(;C<n.length;){let a=n.charCodeAt(C);if(a===92){C+=2;continue}if(a===39)break;C++}if(C>=n.length)return null;let N=n.slice(S+1,C);N=N.replace(/\\\n/g,``);try{return JSON.parse(N)}catch{return null}}function findPackageOwning(n,a){let S=relativeFromRoot(n.rootDir,a);if(S===null)return null;let C=null;for(let a of n.locatorsByLocation.keys())S.startsWith(a)&&(C===null||a.length>C.length)&&(C=a);if(C===null)return null;let N=n.locatorsByLocation.get(C),F=n.packages.get(N.name)?.get(N.reference);return F?{locator:N,info:F}:null}function resolveBareViaPnp(n,a,S){let C=findPackageOwning(n,S);if(!C)return null;let{pkgName:N,subPath:F}=splitSpecifier(a),I=C.info.packageDependencies?.find(([n])=>n===N);if(!I)return null;let[,H]=I;if(H===null)return null;let W=n.packages.get(N)?.get(H);if(!W)return null;let K=W.packageLocation.startsWith(`/`)?me.File.new_for_path(W.packageLocation):me.File.new_for_path(n.rootDir).resolve_relative_path(stripLeadingDotSlash(W.packageLocation));return(F?K.resolve_relative_path(F):K).get_path()}function splitSpecifier(n){if(n.startsWith(`@`)){let a=n.indexOf(`/`);if(a<0)return{pkgName:n,subPath:``};let S=n.indexOf(`/`,a+1);return S<0?{pkgName:n,subPath:``}:{pkgName:n.slice(0,S),subPath:n.slice(S+1)}}let a=n.indexOf(`/`);return a<0?{pkgName:n,subPath:``}:{pkgName:n.slice(0,a),subPath:n.slice(a+1)}}function stripLeadingDotSlash(n){return n.startsWith(`./`)?n.slice(2):n}function relativeFromRoot(n,a){if(a===n)return`./`;let S=n.endsWith(`/`)?n:n+`/`;return a.startsWith(S)?`./`+a.slice(S.length):null}var jo,Mo=__esmMin(()=>{he(),se(),jo=new Map}),No=__esmMin(()=>{globalThis.imports}),Po=__esmMin(()=>{No()}),Fo=__exportAll$3({builtinModules:()=>Io,createRequire:()=>createRequire,default:()=>Ro,isBuiltin:()=>isBuiltin});function isBuiltin(n){let a=n.startsWith(`node:`)?n.slice(5):n,S=a.split(`/`)[0];return Io.includes(a)||Io.includes(S)}function resolveSymlink(n){let a=n.query_info(`standard::`,me.FileQueryInfoFlags.NOFOLLOW_SYMLINKS,null);if(a.get_is_symlink()){let S=a.get_symlink_target(),C=n.get_parent();if(S&&C)return C.resolve_relative_path(S).get_path()}return n.get_path()}function tryJsExtension(n){let a=me.File.new_for_path(n+`.js`);return a.query_exists(null)?a:null}function hasExtension(n){return n.includes(`.`)}function resolvePackageEntry(n){let a=Be(n,`package.json`);if(!a.query_exists(null))return null;let S=readJSON(a.get_path());if(S.exports!==void 0){let a=resolveExportsMap(S.exports,`.`,Lo);if(a){let S=Be(n,a);if(S.query_exists(null))return S.get_path()}}let C=S.main||S.module||`index.js`,N=Be(n,C);if(N.query_exists(null))return N.get_path();if(!hasExtension(C)){let n=tryJsExtension(N.get_path());if(n)return n.get_path()}return null}function resolveExportsMap(n,a,S){if(typeof n==`string`)return a===`.`?n:void 0;if(typeof n!=`object`||!n)return;let C=n,N=Object.keys(C).some(n=>n===`.`||n.startsWith(`./`))?C[a]:a===`.`?C:void 0;if(N!=null)return pickConditionalValue(N,S)}function pickConditionalValue(n,a){if(typeof n==`string`)return n;if(typeof n!=`object`||!n)return;let S=n;for(let n of a)if(n in S){let C=pickConditionalValue(S[n],a);if(C!==void 0)return C}if(`default`in S&&!a.includes(`default`))return pickConditionalValue(S.default,a)}function splitBareSpecifier(n){if(n.startsWith(`@`)){let a=n.indexOf(`/`);if(a===-1)return{pkg:n,subpath:`.`};let S=n.indexOf(`/`,a+1);return S===-1?{pkg:n,subpath:`.`}:{pkg:n.slice(0,S),subpath:`.`+n.slice(S)}}let a=n.indexOf(`/`);return a===-1?{pkg:n,subpath:`.`}:{pkg:n.slice(0,a),subpath:`.`+n.slice(a)}}function fileUrlToPath(n){if(typeof n==`object`&&n&&`href`in n){let a=n;if(a.protocol&&a.protocol!==`file:`)throw TypeError(`The URL must use the file: protocol`);return Z.filename_from_uri(a.href)[0]}return typeof n==`string`&&n.startsWith(`file:`)?Z.filename_from_uri(n)[0]:String(n)}function resolveBareViaPnpFromCaller(n,a){let S=findPnpManifest(a);if(!S)return null;let C=loadPnpManifest(S);if(!C)return null;let N=resolveBareViaPnp(C,n,a);if(!N)return null;let F=me.File.new_for_path(N);return F.query_exists(null)?F:null}function resolveInNodeModules(n,a){let{pkg:S,subpath:C}=splitBareSpecifier(n),N=me.File.new_for_path(a);for(;N.has_parent(null);){let a=N.resolve_relative_path(`node_modules`);if(a.query_exists(null)){let N=a.resolve_relative_path(S);if(N.query_exists(null)){let n=N.resolve_relative_path(`package.json`);if(n.query_exists(null)){let a=readJSON(n.get_path());if(a.exports!==void 0){let n=resolveExportsMap(a.exports,C,Lo);if(n!==void 0){let a=N.resolve_relative_path(n);if(a.query_exists(null))return a}}}let a=C===`.`?N:N.resolve_relative_path(C.slice(2));if(a.query_exists(null))return a;let S=a.get_basename();if(S&&!hasExtension(S)){let n=tryJsExtension(a.get_path());if(n)return n}}else{let S=a.resolve_relative_path(n);if(S.query_exists(null))return S;let C=S.get_basename();if(C&&!hasExtension(C)){let n=tryJsExtension(S.get_path());if(n)return n}}}N=N.get_parent()}throw Error(`Cannot find module "${n}" - not found in any node_modules directory`)}function resolveModulePath$1(n,a){if(isBuiltin(n))return n;let S;if(S=n.startsWith(`/`)?Be(n):n.startsWith(`.`)?Be(a,n):resolveBareViaPnpFromCaller(n,a)??resolveInNodeModules(n,a),n.startsWith(`/`)||n.startsWith(`.`)){if(!S.query_exists(null)){let n=S.get_basename();n&&!hasExtension(n)&&(S=tryJsExtension(S.get_path())??S)}if(!S.query_exists(null))throw Error(`Cannot find module "${n}"`)}let C=resolveSymlink(S),N=S.get_basename();if(N&&!hasExtension(N)){let n=resolvePackageEntry(C);if(n)return n}return C}function requireJsFile(n,a){if(n in a)return a[n];let S=me.File.new_for_path(n),C=S.get_parent().get_path(),N=S.get_basename();if(N.endsWith(`.mjs`))throw Error(`Cannot require .mjs files. Use import instead. Path: "${n}"`);if(N.endsWith(`.cjs`)){let n=Be(C,`__gjsify__`+N.replace(/\.cjs$/,`.js`));n.query_exists(null)&&n.delete(null),S.copy(n,me.FileCopyFlags.NONE,null,null),S=n,N=S.get_basename()}let F=globalThis.exports,I=globalThis.module,H={exports:{}};globalThis.exports=H.exports,globalThis.module=H;try{let{searchPath:S}=imports;S.unshift(C),imports[N.replace(/\.(js|cjs)$/,``)],S.shift();let F=H.exports;return a[n]=F,F}finally{globalThis.exports=F,globalThis.module=I}}function createRequire(n){let a=fileUrlToPath(n);if(!a.startsWith(`/`))throw TypeError(`The argument must be a file URL object, file URL string, or absolute path string. Received "${String(n)}"`);let S=Z.path_get_dirname(a),C=Object.create(null),N=function require(n){let a=resolveModulePath$1(n,S);if(a in C)return C[a];if(a.endsWith(`.json`)){let n=readJSON(a);return C[a]=n,n}if(isBuiltin(n))throw Error(`createRequire: Cannot require builtin module "${n}" synchronously in GJS. Use import instead.`);return requireJsFile(a,C)};return N.resolve=function resolve(n){return resolveModulePath$1(n,S)},N.resolve.paths=n=>null,N.cache=C,N.extensions=Object.create(null),N.main=void 0,N}var Io,Lo,Ro,zo=__esmMin(()=>{Mo(),Po(),he(),se(),Xe(),Io=`assert.async_hooks.buffer.child_process.cluster.console.constants.crypto.dgram.diagnostics_channel.dns.domain.events.fs.http.http2.https.inspector.module.net.os.path.perf_hooks.process.punycode.querystring.readline.repl.stream.string_decoder.sys.timers.tls.tty.url.util.v8.vm.wasi.worker_threads.zlib`.split(`.`),Lo=[`node`,`import`,`default`],__name$1(resolveModulePath$1,`resolveModulePath`),Ro={builtinModules:Io,isBuiltin,createRequire}}),Bo,Vo,Ho=__esmMin(()=>{Bo=Object.defineProperty,Vo=__name$1((n,a)=>{let S={};for(var C in n)Bo(S,C,{get:n[C],enumerable:!0});return a||Bo(S,Symbol.toStringTag,{value:`Module`}),S},`__exportAll`)});function assertPath(n){if(typeof n!=`string`)throw TypeError(`The "path" argument must be of type string. Received type `+typeof n)}function isPosixPathSeparator(n){return n===47}function isPathSeparator(n){return n===47||n===92}function isWindowsDeviceRoot(n){return n>=65&&n<=90||n>=97&&n<=122}function normalizeString$1(n,a,S,C){let N=``,F=0,I=-1,H=0,W;for(let K=0;K<=n.length;++K){if(K<n.length)W=n.charCodeAt(K);else if(C(W))break;else W=47;if(C(W)){if(!(I===K-1||H===1))if(I!==K-1&&H===2){if(N.length<2||F!==2||N.charCodeAt(N.length-1)!==46||N.charCodeAt(N.length-2)!==46){if(N.length>2){let n=N.lastIndexOf(S);n===-1?(N=``,F=0):(N=N.slice(0,n),F=N.length-1-N.lastIndexOf(S)),I=K,H=0;continue}else if(N.length===2||N.length===1){N=``,F=0,I=K,H=0;continue}}a&&(N.length>0?N+=`${S}..`:N=`..`,F=2)}else N.length>0?N+=S+n.slice(I+1,K):N=n.slice(I+1,K),F=K-I-1;I=K,H=0}else W===46&&H!==-1?++H:H=-1}return N}function _format(n,a){if(typeof a!=`object`||!a)throw TypeError(`The "pathObject" argument must be of type Object. Received type `+typeof a);let S=a,C=S.dir||S.root,N=S.base||(S.name||``)+formatExt(S.ext);return C?C===S.root?C+N:C+n+N:N}function formatExt(n){return n?`${n[0]===`.`?``:`.`}${n}`:``}var Uo=__esmMin(()=>{__name$1(normalizeString$1,`normalizeString`)});function posixCwd(){if(typeof globalThis.process?.cwd==`function`)return globalThis.process.cwd();try{let n=globalThis.imports?.gi?.GLib;if(n?.get_current_dir)return n.get_current_dir()}catch{}return`/`}function resolve$2(...n){let a=``,S=!1;for(let C=n.length-1;C>=-1&&!S;C--){let N;if(C>=0){if(N=n[C],assertPath(N),N.length===0)continue}else N=posixCwd();a=`${N}/${a}`,S=N.charCodeAt(0)===47}return a=normalizeString$1(a,!S,`/`,isPosixPathSeparator),S?a.length>0?`/${a}`:`/`:a.length>0?a:`.`}function normalize$2(n){if(assertPath(n),n.length===0)return`.`;let a=n.charCodeAt(0)===47,S=n.charCodeAt(n.length-1)===47,C=normalizeString$1(n,!a,`/`,isPosixPathSeparator);return C.length===0&&!a&&(C=`.`),C.length>0&&S&&(C+=`/`),a?`/${C}`:C}function isAbsolute$2(n){return assertPath(n),n.length>0&&n.charCodeAt(0)===47}function join$2(...n){if(n.length===0)return`.`;let a;for(let S=0;S<n.length;++S){let C=n[S];assertPath(C),C.length>0&&(a===void 0?a=C:a+=`/${C}`)}return a===void 0?`.`:normalize$2(a)}function relative$1(n,a){if(assertPath(n),assertPath(a),n===a||(n=resolve$2(n),a=resolve$2(a),n===a))return``;let S=n.length,C=S-1,N=1,F=a.length-N,I=C<F?C:F,H=-1,W=0;for(;W<=I;++W){if(W===I){if(F>I){if(a.charCodeAt(N+W)===47)return a.slice(N+W+1);if(W===0)return a.slice(N+W)}else C>I&&(n.charCodeAt(1+W)===47?H=W:W===0&&(H=0));break}let S=n.charCodeAt(1+W);if(S!==a.charCodeAt(N+W))break;S===47&&(H=W)}let K=``;for(W=1+H+1;W<=S;++W)(W===S||n.charCodeAt(W)===47)&&(K.length===0?K+=`..`:K+=`/..`);return K.length>0?K+a.slice(N+H):(N+=H,a.charCodeAt(N)===47&&++N,a.slice(N))}function toNamespacedPath$1(n){return n}function dirname$1(n){if(assertPath(n),n.length===0)return`.`;let a=n.charCodeAt(0)===47,S=-1,C=!0;for(let a=n.length-1;a>=1;--a)if(n.charCodeAt(a)===47){if(!C){S=a;break}}else C=!1;return S===-1?a?`/`:`.`:a&&S===1?`//`:n.slice(0,S)}function basename$1(n,a){a!==void 0&&assertPath(a),assertPath(n);let S=0,C=-1,N=!0;if(a!==void 0&&a.length>0&&a.length<=n.length){if(a.length===n.length&&a===n)return``;let F=a.length-1,I=-1;for(let H=n.length-1;H>=0;--H){let W=n.charCodeAt(H);if(W===47){if(!N){S=H+1;break}}else I===-1&&(N=!1,I=H+1),F>=0&&(W===a.charCodeAt(F)?--F===-1&&(C=H):(F=-1,C=I))}return S===C?C=I:C===-1&&(C=n.length),n.slice(S,C)}else{for(let a=n.length-1;a>=0;--a)if(n.charCodeAt(a)===47){if(!N){S=a+1;break}}else C===-1&&(N=!1,C=a+1);return C===-1?``:n.slice(S,C)}}function extname$2(n){assertPath(n);let a=-1,S=0,C=-1,N=!0,F=0;for(let I=n.length-1;I>=0;--I){let H=n.charCodeAt(I);if(H===47){if(!N){S=I+1;break}continue}C===-1&&(N=!1,C=I+1),H===46?a===-1?a=I:F!==1&&(F=1):a!==-1&&(F=-1)}return a===-1||C===-1||F===0||F===1&&a===C-1&&a===S+1?``:n.slice(a,C)}function format$3(n){if(typeof n!=`object`||!n)throw TypeError(`The "pathObject" argument must be of type Object. Received type `+typeof n);return _format(`/`,n)}function parse$3(n){assertPath(n);let a={root:``,dir:``,base:``,ext:``,name:``};if(n.length===0)return a;let S=n.charCodeAt(0)===47,C;S?(a.root=`/`,C=1):C=0;let N=-1,F=0,I=-1,H=!0,W=n.length-1,K=0;for(;W>=C;--W){let a=n.charCodeAt(W);if(a===47){if(!H){F=W+1;break}continue}I===-1&&(H=!1,I=W+1),a===46?N===-1?N=W:K!==1&&(K=1):N!==-1&&(K=-1)}return N===-1||I===-1||K===0||K===1&&N===I-1&&N===F+1?I!==-1&&(F===0&&S?a.base=a.name=n.slice(1,I):a.base=a.name=n.slice(F,I)):(F===0&&S?(a.name=n.slice(1,N),a.base=n.slice(1,I)):(a.name=n.slice(F,N),a.base=n.slice(F,I)),a.ext=n.slice(N,I)),F>0?a.dir=n.slice(0,F-1):S&&(a.dir=`/`),a}var Wo,Go=__esmMin(()=>{Ho(),Uo(),Wo=Vo({basename:()=>basename$1,delimiter:()=>`:`,dirname:()=>dirname$1,extname:()=>extname$2,format:()=>format$3,isAbsolute:()=>isAbsolute$2,join:()=>join$2,normalize:()=>normalize$2,parse:()=>parse$3,relative:()=>relative$1,resolve:()=>resolve$2,sep:()=>`/`,toNamespacedPath:()=>toNamespacedPath$1}),__name$1(resolve$2,`resolve`),__name$1(normalize$2,`normalize`),__name$1(isAbsolute$2,`isAbsolute`),__name$1(join$2,`join`),__name$1(relative$1,`relative`),__name$1(toNamespacedPath$1,`toNamespacedPath`),__name$1(dirname$1,`dirname`),__name$1(basename$1,`basename`),__name$1(extname$2,`extname`),__name$1(format$3,`format`),__name$1(parse$3,`parse`)});function resolve$1(...n){let a=``,S=``,C=!1;for(let N=n.length-1;N>=-1;N--){let F;if(N>=0){if(F=n[N],assertPath(F),F.length===0)continue}else F=(a.length,typeof globalThis.process?.cwd==`function`?globalThis.process.cwd():`/`);let I=F.length,H=0,W=``,K=!1,q=F.charCodeAt(0);if(I>1)if(isPathSeparator(q))if(K=!0,isPathSeparator(F.charCodeAt(1))){let n=2,a=n;for(;n<I&&!isPathSeparator(F.charCodeAt(n));++n);if(n<I&&n!==a){let S=F.slice(a,n);for(a=n;n<I&&isPathSeparator(F.charCodeAt(n));++n);if(n<I&&n!==a){for(a=n;n<I&&!isPathSeparator(F.charCodeAt(n));++n);n===I?(W=`\\\\${S}\\${F.slice(a)}`,H=n):n!==a&&(W=`\\\\${S}\\${F.slice(a,n)}`,H=n)}}}else H=1;else isWindowsDeviceRoot(q)&&F.charCodeAt(1)===58&&(W=F.slice(0,2),H=2,I>2&&isPathSeparator(F.charCodeAt(2))&&(K=!0,H=3));else isPathSeparator(q)&&(H=1,K=!0);if(!(W.length>0&&a.length>0&&W.toLowerCase()!==a.toLowerCase())&&(a.length===0&&W.length>0&&(a=W),C||=(S=`${F.slice(H)}\\${S}`,K),a.length>0&&C))break}return S=normalizeString$1(S,!C,`\\`,isPathSeparator),a+(C?`\\`:``)+S||`.`}function normalize$1(n){assertPath(n);let a=n.length;if(a===0)return`.`;let S=0,C,N=!1,F=n.charCodeAt(0);if(a>1)if(isPathSeparator(F))if(N=!0,isPathSeparator(n.charCodeAt(1))){let N=2,F=N;for(;N<a&&!isPathSeparator(n.charCodeAt(N));++N);if(N<a&&N!==F){let I=n.slice(F,N);for(F=N;N<a&&isPathSeparator(n.charCodeAt(N));++N);if(N<a&&N!==F){for(F=N;N<a&&!isPathSeparator(n.charCodeAt(N));++N);if(N===a)return`\\\\${I}\\${n.slice(F)}\\`;N!==F&&(C=`\\\\${I}\\${n.slice(F,N)}`,S=N)}}}else S=1;else isWindowsDeviceRoot(F)&&n.charCodeAt(1)===58&&(C=n.slice(0,2),S=2,a>2&&isPathSeparator(n.charCodeAt(2))&&(N=!0,S=3));else if(isPathSeparator(F))return`\\`;let I;return I=S<a?normalizeString$1(n.slice(S),!N,`\\`,isPathSeparator):``,I.length===0&&!N&&(I=`.`),I.length>0&&isPathSeparator(n.charCodeAt(a-1))&&(I+=`\\`),C===void 0?N?I.length>0?`\\${I}`:`\\`:I.length>0?I:``:N?I.length>0?`${C}\\${I}`:`${C}\\`:I.length>0?C+I:C}function isAbsolute$1(n){assertPath(n);let a=n.length;if(a===0)return!1;let S=n.charCodeAt(0);return!!(isPathSeparator(S)||isWindowsDeviceRoot(S)&&a>2&&n.charCodeAt(1)===58&&isPathSeparator(n.charCodeAt(2)))}function join$1(...n){if(n.length===0)return`.`;let a,S;for(let C=0;C<n.length;++C){let N=n[C];assertPath(N),N.length>0&&(a===void 0?a=S=N:a+=`\\${N}`)}if(a===void 0)return`.`;let C=!0,N=0;if(isPathSeparator(S.charCodeAt(0))){++N;let n=S.length;n>1&&isPathSeparator(S.charCodeAt(1))&&(++N,n>2&&(isPathSeparator(S.charCodeAt(2))?++N:C=!1))}if(C){for(;N<a.length&&isPathSeparator(a.charCodeAt(N));++N);N>=2&&(a=`\\${a.slice(N)}`)}return normalize$1(a)}function relative(n,a){if(assertPath(n),assertPath(a),n===a)return``;let S=resolve$1(n),C=resolve$1(a);if(S===C||(n=S.toLowerCase(),a=C.toLowerCase(),n===a))return``;let N=0;for(;N<n.length&&n.charCodeAt(N)===92;++N);let F=n.length;for(;F-1>N&&n.charCodeAt(F-1)===92;--F);let I=F-N,H=0;for(;H<a.length&&a.charCodeAt(H)===92;++H);let W=a.length;for(;W-1>H&&a.charCodeAt(W-1)===92;--W);let K=W-H,q=I<K?I:K,Y=-1,X=0;for(;X<=q;++X){if(X===q){if(K>q){if(a.charCodeAt(H+X)===92)return C.slice(H+X+1);if(X===2)return C.slice(H+X)}I>q&&(n.charCodeAt(N+X)===92?Y=X:X===2&&(Y=3));break}let S=n.charCodeAt(N+X);if(S!==a.charCodeAt(H+X))break;S===92&&(Y=X)}if(X!==q&&Y===-1)return C;let te=``;for(Y===-1&&(Y=0),X=N+Y+1;X<=F;++X)(X===F||n.charCodeAt(X)===92)&&(te.length===0?te+=`..`:te+=`\\..`);return te.length>0?te+C.slice(H+Y,W):(H+=Y,C.charCodeAt(H)===92&&++H,C.slice(H,W))}function toNamespacedPath(n){if(typeof n!=`string`)return n;if(n.length===0)return``;let a=resolve$1(n);if(a.length>=3){if(a.charCodeAt(0)===92){if(a.charCodeAt(1)===92){let n=a.charCodeAt(2);if(n!==63&&n!==46)return`\\\\?\\UNC\\${a.slice(2)}`}}else if(isWindowsDeviceRoot(a.charCodeAt(0))&&a.charCodeAt(1)===58&&a.charCodeAt(2)===92)return`\\\\?\\${a}`}return n}function dirname(n){assertPath(n);let a=n.length;if(a===0)return`.`;let S=-1,C=-1,N=!0,F=0,I=n.charCodeAt(0);if(a>1)if(isPathSeparator(I)){if(S=F=1,isPathSeparator(n.charCodeAt(1))){let C=2,N=C;for(;C<a&&!isPathSeparator(n.charCodeAt(C));++C);if(C<a&&C!==N){for(N=C;C<a&&isPathSeparator(n.charCodeAt(C));++C);if(C<a&&C!==N){for(N=C;C<a&&!isPathSeparator(n.charCodeAt(C));++C);if(C===a)return n;C!==N&&(S=F=C+1)}}}}else isWindowsDeviceRoot(I)&&n.charCodeAt(1)===58&&(S=F=2,a>2&&isPathSeparator(n.charCodeAt(2))&&(S=F=3));else if(isPathSeparator(I))return n;for(let S=a-1;S>=F;--S)if(isPathSeparator(n.charCodeAt(S))){if(!N){C=S;break}}else N=!1;if(C===-1){if(S===-1)return`.`;C=S}return n.slice(0,C)}function basename(n,a){a!==void 0&&assertPath(a),assertPath(n);let S=0,C=-1,N=!0;if(n.length>=2&&isWindowsDeviceRoot(n.charCodeAt(0))&&n.charCodeAt(1)===58&&(S=2),a!==void 0&&a.length>0&&a.length<=n.length){if(a.length===n.length&&a===n)return``;let F=a.length-1,I=-1;for(let H=n.length-1;H>=S;--H){let W=n.charCodeAt(H);if(isPathSeparator(W)){if(!N){S=H+1;break}}else I===-1&&(N=!1,I=H+1),F>=0&&(W===a.charCodeAt(F)?--F===-1&&(C=H):(F=-1,C=I))}return S===C?C=I:C===-1&&(C=n.length),n.slice(S,C)}else{for(let a=n.length-1;a>=S;--a)if(isPathSeparator(n.charCodeAt(a))){if(!N){S=a+1;break}}else C===-1&&(N=!1,C=a+1);return C===-1?``:n.slice(S,C)}}function extname$1(n){assertPath(n);let a=0,S=-1,C=0,N=-1,F=!0,I=0;n.length>=2&&n.charCodeAt(1)===58&&isWindowsDeviceRoot(n.charCodeAt(0))&&(a=C=2);for(let H=n.length-1;H>=a;--H){let a=n.charCodeAt(H);if(isPathSeparator(a)){if(!F){C=H+1;break}continue}N===-1&&(F=!1,N=H+1),a===46?S===-1?S=H:I!==1&&(I=1):S!==-1&&(I=-1)}return S===-1||N===-1||I===0||I===1&&S===N-1&&S===C+1?``:n.slice(S,N)}function format$2(n){if(typeof n!=`object`||!n)throw TypeError(`The "pathObject" argument must be of type Object. Received type `+typeof n);return _format(`\\`,n)}function parse$2(n){assertPath(n);let a={root:``,dir:``,base:``,ext:``,name:``};if(n.length===0)return a;let S=n.length,C=0,N=n.charCodeAt(0);if(S>1)if(isPathSeparator(N)){if(C=1,isPathSeparator(n.charCodeAt(1))){let a=2,N=a;for(;a<S&&!isPathSeparator(n.charCodeAt(a));++a);if(a<S&&a!==N){for(N=a;a<S&&isPathSeparator(n.charCodeAt(a));++a);if(a<S&&a!==N){for(N=a;a<S&&!isPathSeparator(n.charCodeAt(a));++a);a===S?C=a:a!==N&&(C=a+1)}}}}else isWindowsDeviceRoot(N)&&n.charCodeAt(1)===58&&(C=2,S>2&&isPathSeparator(n.charCodeAt(2))&&(C=3));else if(isPathSeparator(N))return a.root=a.dir=n,a;C>0&&(a.root=n.slice(0,C));let F=-1,I=C,H=-1,W=!0,K=n.length-1,q=0;for(;K>=C;--K){if(N=n.charCodeAt(K),isPathSeparator(N)){if(!W){I=K+1;break}continue}H===-1&&(W=!1,H=K+1),N===46?F===-1?F=K:q!==1&&(q=1):F!==-1&&(q=-1)}return F===-1||H===-1||q===0||q===1&&F===H-1&&F===I+1?H!==-1&&(a.base=a.name=n.slice(I,H)):(a.name=n.slice(I,F),a.base=n.slice(I,H),a.ext=n.slice(F,H)),I>0&&I!==C?a.dir=n.slice(0,I-1):a.dir=a.root,a}var Ko,qo=__esmMin(()=>{Ho(),Uo(),Ko=Vo({basename:()=>basename,delimiter:()=>`;`,dirname:()=>dirname,extname:()=>extname$1,format:()=>format$2,isAbsolute:()=>isAbsolute$1,join:()=>join$1,normalize:()=>normalize$1,parse:()=>parse$2,relative:()=>relative,resolve:()=>resolve$1,sep:()=>`\\`,toNamespacedPath:()=>toNamespacedPath}),__name$1(resolve$1,`resolve`),__name$1(normalize$1,`normalize`),__name$1(isAbsolute$1,`isAbsolute`),__name$1(join$1,`join`),__name$1(extname$1,`extname`),__name$1(format$2,`format`),__name$1(parse$2,`parse`)}),Jo=__exportAll$3({basename:()=>ns,default:()=>cs,delimiter:()=>ss,dirname:()=>ts,extname:()=>rs,format:()=>is,isAbsolute:()=>Zo,join:()=>Qo,normalize:()=>Xo,parse:()=>as,posix:()=>Wo,relative:()=>$o,resolve:()=>Yo,sep:()=>os,toNamespacedPath:()=>es,win32:()=>Ko}),Yo,Xo,Zo,Qo,$o,es,ts,ns,rs,is,as,os,ss,cs,ls=__esmMin(()=>{Go(),qo(),{resolve:Yo,normalize:Xo,isAbsolute:Zo,join:Qo,relative:$o,toNamespacedPath:es,dirname:ts,basename:ns,extname:rs,format:is,parse:as,sep:os,delimiter:ss}=Wo,cs={resolve:resolve$2,normalize:normalize$2,isAbsolute:isAbsolute$2,join:join$2,relative:relative$1,toNamespacedPath:toNamespacedPath$1,dirname:dirname$1,basename:basename$1,extname:extname$2,format:format$3,parse:parse$3,sep:`/`,delimiter:`:`,posix:Wo,win32:Ko}}),us=__exportAll$3({__gjsifyModuleDir:()=>__gjsifyModuleDir,__gjsifyModuleFile:()=>__gjsifyModuleFile,__gjsifyModuleUrl:()=>__gjsifyModuleUrl,splitPackageSpec:()=>splitPackageSpec});function splitPackageSpec(n){let a=n.split(`/`),S=n.startsWith(`@`)?2:1;return{pkg:a.slice(0,S).join(`/`),subpath:a.slice(S).join(`/`)}}function bundleAnchorUrl(){let n=globalThis.__gjsifyBundleUrl;if(!n)throw Error(`gjsify: __gjsifyBundleUrl is not set — the bundle-URL banner did not run. The module-resolve shim is only valid in single-file app builds (gjsify build --app gjs|node).`);return n}function bundleResolve(){return ds||=createRequire(bundleAnchorUrl()).resolve,ds}function resolvePackageRoot(n){let a=bundleResolve();try{return ts(a(`${n}/package.json`))}catch{let S=a(n),C=`/node_modules/${n}/`,N=S.lastIndexOf(C);return N>=0?S.slice(0,N+C.length-1):ts(S)}}function resolveFile(n){let a=fs.get(n);if(a!==void 0)return a;let S;try{let{pkg:a,subpath:C}=splitPackageSpec(n),N=resolvePackageRoot(a);S=C?Qo(N,C):N}catch{S=fileURLToPath(bundleAnchorUrl())}return fs.set(n,S),S}function __gjsifyModuleFile(n){return resolveFile(n)}function __gjsifyModuleUrl(n){return pathToFileURL(resolveFile(n)).href}function __gjsifyModuleDir(n){return ts(resolveFile(n))}var ds,fs,ps=__esmMin(()=>{zo(),fn(),ls(),ds=null,fs=new Map}),ms,hs,gs=__esmMin(()=>{ms=Object.defineProperty,hs=__name$1((n,a)=>{let S={};for(var C in n)ms(S,C,{get:n[C],enumerable:!0});return a||ms(S,Symbol.toStringTag,{value:`Module`}),S},`__exportAll`)});function promisify(n){if(typeof n!=`function`)throw TypeError(`The "original" argument must be of type Function`);let a=n[_s];if(typeof a==`function`)return a;function promisified(...a){return new Promise((S,C)=>{n.call(this,...a,(n,...a)=>{n?C(n):a.length<=1?S(a[0]):S(a)})})}return Object.setPrototypeOf(promisified,Object.getPrototypeOf(n)),Object.defineProperty(promisified,_s,{value:promisified}),promisified}function callbackify(n){if(typeof n!=`function`)throw TypeError(`The "original" argument must be of type Function`);return function(...a){let S=a.pop();if(typeof S!=`function`)throw TypeError(`The last argument must be of type Function`);n.apply(this,a).then(n=>Promise.resolve().then(()=>S(null,n)),n=>Promise.resolve().then(()=>S(n||Error())))}}function deprecate(n,a,S){let C=!1;function deprecated(...N){if(!C){C=!0;let n=S?`[${S}] ${a}`:a;ke.warn(`DeprecationWarning: ${n}`)}return n.apply(this,N)}return Object.setPrototypeOf(deprecated,n),deprecated}function debuglog(n){let debug;return(...a)=>{if(debug===void 0){let a=typeof globalThis.process?.env?.NODE_DEBUG==`string`?globalThis.process.env.NODE_DEBUG:``;if(RegExp(`\\b${n}\\b`,`i`).test(a)){let a=typeof globalThis.process?.pid==`number`?globalThis.process.pid:0;debug=(...S)=>{ke.error(`${n.toUpperCase()} ${a}:`,...S)}}else debug=()=>{}}debug(...a)}}function inherits(n,a){if(n==null){let a=TypeError(`The "ctor" argument must be of type Function. Received `+String(n));throw a.code=`ERR_INVALID_ARG_TYPE`,a}if(a==null){let n=TypeError(`The "superCtor" argument must be of type Function. Received `+String(a));throw n.code=`ERR_INVALID_ARG_TYPE`,n}if(a.prototype===void 0){let n=TypeError(`The "superCtor.prototype" property must not be undefined`);throw n.code=`ERR_INVALID_ARG_TYPE`,n}Object.defineProperty(n,"super_",{value:a,writable:!0,configurable:!0}),Object.setPrototypeOf(n.prototype,a.prototype)}function isDeepStrictEqual$1(n,a){if(Object.is(n,a))return!0;if(typeof n!=typeof a||n===null||a===null||typeof n!=`object`)return!1;let S=n,C=a;if(Array.isArray(S)&&Array.isArray(C)){if(S.length!==C.length)return!1;for(let n=0;n<S.length;n++)if(!isDeepStrictEqual$1(S[n],C[n]))return!1;return!0}if(Array.isArray(S)!==Array.isArray(C))return!1;if(S instanceof Date&&C instanceof Date)return S.getTime()===C.getTime();if(S instanceof RegExp&&C instanceof RegExp)return S.source===C.source&&S.flags===C.flags;let N=Object.keys(S),F=Object.keys(C);if(N.length!==F.length)return!1;for(let n of N)if(!Object.prototype.hasOwnProperty.call(C,n)||!isDeepStrictEqual$1(S[n],C[n]))return!1;return!0}function toUSVString(n){return typeof n.toWellFormed==`function`?n.toWellFormed():n.replace(/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,`�`)}function aborted(n,a){return n==null||typeof n.aborted!=`boolean`?Promise.reject(TypeError(`The "signal" argument must be an instance of AbortSignal`)):typeof a!=`object`||!a?Promise.reject(TypeError(`The "resource" argument must be an non-null object`)):n.aborted?Promise.resolve():new Promise(a=>{let onAbort=()=>{n.removeEventListener(`abort`,onAbort),a()};n.addEventListener(`abort`,onAbort,{once:!0})})}var _s,vs=__esmMin(()=>{Ae(),_s=Symbol.for(`nodejs.util.promisify.custom`),promisify.custom=_s,__name$1(isDeepStrictEqual$1,`isDeepStrictEqual`)});function getPlatform(){return typeof globalThis.process?.platform==`string`?globalThis.process.platform:`linux`}function getSystemErrorName(n){if(typeof n!=`number`)throw TypeError(`The "err" argument must be of type number. Received type `+typeof n);if(n>=0)throw RangeError(`The value of "err" is out of range. It must be a negative integer. Received ${n}`);return(getPlatform()===`darwin`?bs:ys)[n]||`Unknown system error ${n}`}function getSystemErrorMap(){let n=getPlatform()===`darwin`?bs:ys,a=new Map;for(let[S,C]of Object.entries(n))a.set(Number(S),[C,``]);return a}var ys,bs,xs=__esmMin(()=>{ys={[-1]:`EPERM`,[-2]:`ENOENT`,[-3]:`ESRCH`,[-4]:`EINTR`,[-5]:`EIO`,[-6]:`ENXIO`,[-7]:`E2BIG`,[-8]:`ENOEXEC`,[-9]:`EBADF`,[-10]:`ECHILD`,[-11]:`EAGAIN`,[-12]:`ENOMEM`,[-13]:`EACCES`,[-14]:`EFAULT`,[-15]:`ENOTBLK`,[-16]:`EBUSY`,[-17]:`EEXIST`,[-18]:`EXDEV`,[-19]:`ENODEV`,[-20]:`ENOTDIR`,[-21]:`EISDIR`,[-22]:`EINVAL`,[-23]:`ENFILE`,[-24]:`EMFILE`,[-25]:`ENOTTY`,[-26]:`ETXTBSY`,[-27]:`EFBIG`,[-28]:`ENOSPC`,[-29]:`ESPIPE`,[-30]:`EROFS`,[-31]:`EMLINK`,[-32]:`EPIPE`,[-33]:`EDOM`,[-34]:`ERANGE`,[-35]:`EDEADLK`,[-36]:`ENAMETOOLONG`,[-37]:`ENOLCK`,[-38]:`ENOSYS`,[-39]:`ENOTEMPTY`,[-40]:`ELOOP`,[-42]:`ENOMSG`,[-43]:`EIDRM`,[-44]:`ECHRNG`,[-45]:`EL2NSYNC`,[-46]:`EL3HLT`,[-47]:`EL3RST`,[-48]:`ELNRNG`,[-49]:`EUNATCH`,[-50]:`ENOCSI`,[-51]:`EL2HLT`,[-52]:`EBADE`,[-53]:`EBADR`,[-54]:`EXFULL`,[-55]:`ENOANO`,[-56]:`EBADRQC`,[-57]:`EBADSLT`,[-59]:`EBFONT`,[-60]:`ENOSTR`,[-61]:`ENODATA`,[-62]:`ETIME`,[-63]:`ENOSR`,[-64]:`ENONET`,[-65]:`ENOPKG`,[-66]:`EREMOTE`,[-67]:`ENOLINK`,[-68]:`EADV`,[-69]:`ESRMNT`,[-70]:`ECOMM`,[-71]:`EPROTO`,[-72]:`EMULTIHOP`,[-73]:`EDOTDOT`,[-74]:`EBADMSG`,[-75]:`EOVERFLOW`,[-76]:`ENOTUNIQ`,[-77]:`EBADFD`,[-78]:`EREMCHG`,[-79]:`ELIBACC`,[-80]:`ELIBBAD`,[-81]:`ELIBSCN`,[-82]:`ELIBMAX`,[-83]:`ELIBEXEC`,[-84]:`EILSEQ`,[-85]:`ERESTART`,[-86]:`ESTRPIPE`,[-87]:`EUSERS`,[-88]:`ENOTSOCK`,[-89]:`EDESTADDRREQ`,[-90]:`EMSGSIZE`,[-91]:`EPROTOTYPE`,[-92]:`ENOPROTOOPT`,[-93]:`EPROTONOSUPPORT`,[-94]:`ESOCKTNOSUPPORT`,[-95]:`ENOTSUP`,[-96]:`EPFNOSUPPORT`,[-97]:`EAFNOSUPPORT`,[-98]:`EADDRINUSE`,[-99]:`EADDRNOTAVAIL`,[-100]:`ENETDOWN`,[-101]:`ENETUNREACH`,[-102]:`ENETRESET`,[-103]:`ECONNABORTED`,[-104]:`ECONNRESET`,[-105]:`ENOBUFS`,[-106]:`EISCONN`,[-107]:`ENOTCONN`,[-108]:`ESHUTDOWN`,[-109]:`ETOOMANYREFS`,[-110]:`ETIMEDOUT`,[-111]:`ECONNREFUSED`,[-112]:`EHOSTDOWN`,[-113]:`EHOSTUNREACH`,[-114]:`EALREADY`,[-115]:`EINPROGRESS`,[-116]:`ESTALE`,[-117]:`EUCLEAN`,[-118]:`ENOTNAM`,[-119]:`ENAVAIL`,[-120]:`EISNAM`,[-121]:`EREMOTEIO`,[-122]:`EDQUOT`,[-123]:`ENOMEDIUM`,[-124]:`EMEDIUMTYPE`,[-125]:`ECANCELED`,[-126]:`ENOKEY`,[-127]:`EKEYEXPIRED`,[-128]:`EKEYREVOKED`,[-129]:`EKEYREJECTED`},bs={[-1]:`EPERM`,[-2]:`ENOENT`,[-3]:`ESRCH`,[-4]:`EINTR`,[-5]:`EIO`,[-6]:`ENXIO`,[-7]:`E2BIG`,[-8]:`ENOEXEC`,[-9]:`EBADF`,[-10]:`ECHILD`,[-11]:`EDEADLK`,[-12]:`ENOMEM`,[-13]:`EACCES`,[-14]:`EFAULT`,[-15]:`ENOTBLK`,[-16]:`EBUSY`,[-17]:`EEXIST`,[-18]:`EXDEV`,[-19]:`ENODEV`,[-20]:`ENOTDIR`,[-21]:`EISDIR`,[-22]:`EINVAL`,[-23]:`ENFILE`,[-24]:`EMFILE`,[-25]:`ENOTTY`,[-26]:`ETXTBSY`,[-27]:`EFBIG`,[-28]:`ENOSPC`,[-29]:`ESPIPE`,[-30]:`EROFS`,[-31]:`EMLINK`,[-32]:`EPIPE`,[-33]:`EDOM`,[-34]:`ERANGE`,[-35]:`EAGAIN`,[-36]:`EINPROGRESS`,[-37]:`EALREADY`,[-38]:`ENOTSOCK`,[-39]:`EDESTADDRREQ`,[-40]:`EMSGSIZE`,[-41]:`EPROTOTYPE`,[-42]:`ENOPROTOOPT`,[-43]:`EPROTONOSUPPORT`,[-44]:`ESOCKTNOSUPPORT`,[-45]:`ENOTSUP`,[-46]:`EPFNOSUPPORT`,[-47]:`EAFNOSUPPORT`,[-48]:`EADDRINUSE`,[-49]:`EADDRNOTAVAIL`,[-50]:`ENETDOWN`,[-51]:`ENETUNREACH`,[-52]:`ENETRESET`,[-53]:`ECONNABORTED`,[-54]:`ECONNRESET`,[-55]:`ENOBUFS`,[-56]:`EISCONN`,[-57]:`ENOTCONN`,[-58]:`ESHUTDOWN`,[-59]:`ETOOMANYREFS`,[-60]:`ETIMEDOUT`,[-61]:`ECONNREFUSED`,[-62]:`ELOOP`,[-63]:`ENAMETOOLONG`,[-64]:`EHOSTDOWN`,[-65]:`EHOSTUNREACH`,[-66]:`ENOTEMPTY`,[-67]:`EPROCLIM`,[-68]:`EUSERS`,[-69]:`EDQUOT`,[-70]:`ESTALE`,[-71]:`EREMOTE`,[-72]:`EBADRPC`,[-73]:`ERPCMISMATCH`,[-74]:`EPROGUNAVAIL`,[-75]:`EPROGMISMATCH`,[-76]:`EPROCUNAVAIL`,[-77]:`ENOLCK`,[-78]:`ENOSYS`,[-79]:`EFTYPE`,[-80]:`EAUTH`,[-81]:`ENEEDAUTH`,[-82]:`EPWROFF`,[-83]:`EDEVERR`,[-84]:`EOVERFLOW`,[-85]:`EBADEXEC`,[-86]:`EBADARCH`,[-87]:`ESHLIBVERS`,[-88]:`EBADMACHO`,[-89]:`ECANCELED`,[-90]:`EIDRM`,[-91]:`ENOMSG`,[-92]:`EILSEQ`,[-93]:`ENOATTR`,[-94]:`EBADMSG`,[-95]:`EMULTIHOP`,[-96]:`ENODATA`,[-97]:`ENOLINK`,[-98]:`ENOSR`,[-99]:`ENOSTR`,[-100]:`EPROTO`,[-101]:`ETIME`,[-102]:`EOPNOTSUPP`}});function inspectValue(n,a,S){if(n===null)return a.colors?`\x1B[1mnull\x1B[22m`:`null`;if(n===void 0)return a.colors?`\x1B[90mundefined\x1B[39m`:`undefined`;let C=a.depth??2;if(typeof n==`string`){let S=n.replace(/\\/g,`\\\\`);if(n.includes(`'`)&&!n.includes(`"`)){let n=S.replace(/"/g,`\\"`);return a.colors?`\x1b[32m"${n}"\x1b[39m`:`"${n}"`}let C=S.replace(/'/g,`\\'`);return a.colors?`\x1b[32m'${C}'\x1b[39m`:`'${C}'`}if(typeof n==`number`)return a.colors?`\x1b[33m${n}\x1b[39m`:String(n);if(typeof n==`bigint`)return a.colors?`\x1b[33m${n}n\x1b[39m`:`${n}n`;if(typeof n==`boolean`)return a.colors?`\x1b[33m${n}\x1b[39m`:String(n);if(typeof n==`symbol`)return a.colors?`\x1b[32m${n.toString()}\x1b[39m`:n.toString();if(typeof n==`function`){let S=n.name?`: ${n.name}`:``;return a.colors?`\x1b[36m[Function${S}]\x1b[39m`:`[Function${S}]`}if(typeof n==`object`&&n&&Ss in n){let C=n[Ss];if(typeof C==`function`){let N=C.call(n,S,a);return typeof N==`string`?N:inspectValue(N,a,S)}}if(n instanceof Date)return n.toISOString();if(n instanceof RegExp)return a.colors?`\x1b[31m${n.toString()}\x1b[39m`:n.toString();if(n instanceof Error)return n.stack||n.toString();if(S>C)return Array.isArray(n)?`[Array]`:`[Object]`;if(Array.isArray(n))return inspectArray(n,a,S);if(n instanceof Map){let C=[...n.entries()].map(([n,C])=>`${inspectValue(n,a,S+1)} => ${inspectValue(C,a,S+1)}`);return`Map(${n.size}) { ${C.join(`, `)} }`}if(n instanceof Set){let C=[...n].map(n=>inspectValue(n,a,S+1));return`Set(${n.size}) { ${C.join(`, `)} }`}if(ArrayBuffer.isView(n)&&!(n instanceof DataView)){let a=n.constructor?.name||`TypedArray`,S=Array.from(n);return`${a}(${S.length}) [ ${S.join(`, `)} ]`}return inspectObject$1(n,a,S)}function inspectArray(n,a,S){let C=a.maxArrayLength??100,N=Math.min(n.length,C),F=[];for(let C=0;C<N;C++)F.push(inspectValue(n[C],a,S+1));n.length>C&&F.push(`... ${n.length-C} more items`),a.showHidden&&F.push(`[length]: ${n.length}`);let I=a.breakLength??72,H=a.compact??3;if(typeof H==`number`&&H>0&&n.length>H){let stripAnsi=n=>n.replace(/\x1b\[[0-9;]*m/g,``),n=Math.max(...F.map(n=>stripAnsi(n).length)),a=Math.max(n-2,1),S=F.length,C=Math.min(Math.round(Math.sqrt(2.5*a*S)/a),Math.floor((I-2)/a),Math.floor((2.5+S-1)/2),15);if(C>1){let n=[];for(let a=0;a<S;a+=C)n.push(` `+F.slice(a,Math.min(a+C,S)).join(`, `));return`[\n${n.join(`,
|
|
11
11
|
`)}\n]`}}let W=`[ ${F.join(`, `)} ]`;return W.length<=I?W:`[\n${F.map(n=>` `+n).join(`,
|
|
12
12
|
`)}\n]`}function inspectObject$1(n,a,S){let C=a.showHidden?Object.getOwnPropertyNames(n):Object.keys(n);if(a.sorted&&C.sort(),C.length===0){let a=Object.prototype.toString.call(n);return a===`[object Object]`?`{}`:a}let N=C.map(C=>`${C}: ${inspectValue(n[C],a,S+1)}`),F=a.breakLength??72,I=`{ ${N.join(`, `)} }`;return I.length<=F?I:`{\n${N.map(n=>` `+n).join(`,
|
|
@@ -628,7 +628,7 @@ ${[...S,a].map((n,a)=>`${a+1}. ${n}`).join(`
|
|
|
628
628
|
`+` `.repeat(a)),Array(Mh).fill(0).map((n,a)=>`\r`+` `.repeat(a)),Array(Mh).fill(0).map((n,a)=>`\r
|
|
629
629
|
`+` `.repeat(a)),Array(Mh).fill(0).map((n,a)=>`
|
|
630
630
|
`+` `.repeat(a)),Array(Mh).fill(0).map((n,a)=>`\r`+` `.repeat(a)),Array(Mh).fill(0).map((n,a)=>`\r
|
|
631
|
-
`+` `.repeat(a)),(function(n){n.DEFAULT={allowTrailingComma:!1}})(Nh||={}),r(Pe,`parse$1`),r(We,`visit`),(function(n){n[n.None=0]=`None`,n[n.UnexpectedEndOfComment=1]=`UnexpectedEndOfComment`,n[n.UnexpectedEndOfString=2]=`UnexpectedEndOfString`,n[n.UnexpectedEndOfNumber=3]=`UnexpectedEndOfNumber`,n[n.InvalidUnicode=4]=`InvalidUnicode`,n[n.InvalidEscapeCharacter=5]=`InvalidEscapeCharacter`,n[n.InvalidCharacter=6]=`InvalidCharacter`})(Ph||={}),(function(n){n[n.OpenBraceToken=1]=`OpenBraceToken`,n[n.CloseBraceToken=2]=`CloseBraceToken`,n[n.OpenBracketToken=3]=`OpenBracketToken`,n[n.CloseBracketToken=4]=`CloseBracketToken`,n[n.CommaToken=5]=`CommaToken`,n[n.ColonToken=6]=`ColonToken`,n[n.NullKeyword=7]=`NullKeyword`,n[n.TrueKeyword=8]=`TrueKeyword`,n[n.FalseKeyword=9]=`FalseKeyword`,n[n.StringLiteral=10]=`StringLiteral`,n[n.NumericLiteral=11]=`NumericLiteral`,n[n.LineCommentTrivia=12]=`LineCommentTrivia`,n[n.BlockCommentTrivia=13]=`BlockCommentTrivia`,n[n.LineBreakTrivia=14]=`LineBreakTrivia`,n[n.Trivia=15]=`Trivia`,n[n.Unknown=16]=`Unknown`,n[n.EOF=17]=`EOF`})(Fh||={}),Ih=Pe,(function(n){n[n.InvalidSymbol=1]=`InvalidSymbol`,n[n.InvalidNumberFormat=2]=`InvalidNumberFormat`,n[n.PropertyNameExpected=3]=`PropertyNameExpected`,n[n.ValueExpected=4]=`ValueExpected`,n[n.ColonExpected=5]=`ColonExpected`,n[n.CommaExpected=6]=`CommaExpected`,n[n.CloseBraceExpected=7]=`CloseBraceExpected`,n[n.CloseBracketExpected=8]=`CloseBracketExpected`,n[n.EndOfFileExpected=9]=`EndOfFileExpected`,n[n.InvalidCommentToken=10]=`InvalidCommentToken`,n[n.UnexpectedEndOfComment=11]=`UnexpectedEndOfComment`,n[n.UnexpectedEndOfString=12]=`UnexpectedEndOfString`,n[n.UnexpectedEndOfNumber=13]=`UnexpectedEndOfNumber`,n[n.InvalidUnicode=14]=`InvalidUnicode`,n[n.InvalidEscapeCharacter=15]=`InvalidEscapeCharacter`,n[n.InvalidCharacter=16]=`InvalidCharacter`})(Lh||={}),Rh=r((n,a)=>Ih(Eh(a,n,`utf8`)),`readJsonc`),zh=Symbol(`implicitBaseUrl`),Bh="${configDir}",Vh=r(()=>{let{findPnpApi:n}=Ro;return n&&n(process.cwd())},`getPnpApi`),Hh=r((n,a,S,C)=>{let N=`resolveFromPackageJsonPath:${n}:${a}:${S}`;if(C!=null&&C.has(N))return C.get(N);let F=Rh(n,C);if(!F)return;let I=a||`tsconfig.json`;if(!S&&F.exports)try{let[n]=v(F.exports,a,[`require`,`types`]);I=n}catch{return!1}else !a&&F.tsconfig&&(I=F.tsconfig);return I=cs.join(n,`..`,I),C?.set(N,I),I},`resolveFromPackageJsonPath`),Uh=`package.json`,Wh=`tsconfig.json`,Gh=r((n,a,S)=>{let C=n;if(n===`..`&&(C=cs.join(C,Wh)),n[0]===`.`&&(C=cs.resolve(a,C)),cs.isAbsolute(C)){if(Th(S,C)){if(Dh(S,C).isFile())return C}else if(!C.endsWith(`.json`)){let n=`${C}.json`;if(Th(S,n))return n}return}let[N,...F]=n.split(`/`),I=N[0]===`@`?`${N}/${F.shift()}`:N,H=F.join(`/`),W=Vh();if(W){let{resolveRequest:C}=W;try{if(I===n){let n=C(cs.join(I,Uh),a);if(n){let a=Hh(n,H,!1,S);if(a&&Th(S,a))return a}}else{let S;try{S=C(n,a,{extensions:[`.json`]})}catch{S=C(cs.join(n,Wh),a)}if(S)return S}}catch{}}let K=Oh(cs.resolve(a),cs.join(`node_modules`,I),S);if(!K||!Dh(S,K).isDirectory())return;let q=cs.join(K,Uh);if(Th(S,q)){let n=Hh(q,H,!1,S);if(n===!1)return;if(n&&Th(S,n)&&Dh(S,n).isFile())return n}let Y=cs.join(K,H),X=Y.endsWith(`.json`);if(!X){let n=`${Y}.json`;if(Th(S,n))return n}if(Th(S,Y)){if(Dh(S,Y).isDirectory()){let n=cs.join(Y,Uh);if(Th(S,n)){let a=Hh(n,``,!0,S);if(a&&Th(S,a))return a}let a=cs.join(Y,Wh);if(Th(S,a))return a}else if(X)return Y}},`resolveExtendsPath`),Kh=r((n,a)=>Ah(cs.relative(n,a)),`pathRelative`),qh=[`files`,`include`,`exclude`],Jh=r((n,a,S)=>{let C=cs.join(a,S);return h$1(cs.relative(n,C))||`./`},`resolveAndRelativize`),Yh=r((n,a,S)=>{let C=cs.relative(n,a);return C?h$1(`${C}/${S.startsWith(`./`)?S.slice(2):S}`):S},`prefixPattern`),Xh=r((n,a,S,C)=>{let N=Gh(n,a,C);if(!N)throw Error(`File '${n}' not found.`);if(S.has(N))throw Error(`Circularity detected while resolving configuration: ${N}`);S.add(N);let F=cs.dirname(N),I=Qh(N,C,S);delete I.references;let{compilerOptions:H}=I;if(H){let{baseUrl:n}=H;n&&!n.startsWith(Bh)&&(H.baseUrl=Jh(a,F,n));let{outDir:S}=H;S&&!S.startsWith(Bh)&&(H.outDir=Jh(a,F,S));let{declarationDir:C}=H;C&&!C.startsWith(Bh)&&(H.declarationDir=Jh(a,F,C));let{rootDir:N}=H;N&&!N.startsWith(Bh)&&(H.rootDir=Jh(a,F,N));let{rootDirs:I}=H;I&&(H.rootDirs=I.map(n=>n.startsWith(Bh)?n:Jh(a,F,n)));let{typeRoots:W}=H;W&&(H.typeRoots=W.map(n=>n.startsWith(Bh)?n:Jh(a,F,n)))}for(let n of qh){let S=I[n];S&&(I[n]=S.map(n=>n.startsWith(Bh)?n:Yh(a,F,n)))}return I},`resolveExtends`),Zh=[`outDir`,`declarationDir`],Qh=r((n,a,S=new Set)=>{let C;try{C=Rh(n,a)||{}}catch{throw Error(`Cannot resolve tsconfig at path: ${n}`)}if(typeof C!=`object`)throw SyntaxError(`Failed to parse tsconfig at: ${n}`);let N=cs.dirname(n);if(C.compilerOptions){let{compilerOptions:n}=C;n.paths&&!n.baseUrl&&(n[zh]=N)}if(C.extends){let n=Array.isArray(C.extends)?C.extends:[C.extends];delete C.extends;for(let F of n.reverse()){let n=Xh(F,N,new Set(S),a),I={...n,...C,compilerOptions:{...n.compilerOptions,...C.compilerOptions}};n.watchOptions&&(I.watchOptions={...n.watchOptions,...C.watchOptions}),C=I}}if(C.compilerOptions){let{compilerOptions:n}=C;for(let a of[`baseUrl`,`rootDir`]){let S=n[a];S&&!S.startsWith(Bh)&&(n[a]=Kh(N,cs.resolve(N,S)))}for(let a of Zh){let S=n[a];S&&(Array.isArray(C.exclude)||(C.exclude=Zh.map(a=>n[a]).filter(Boolean)),S.startsWith(Bh)||(S=Ah(S)),n[a]=S)}}else C.compilerOptions={};if(C.include&&=C.include.map(h$1),C.files&&=C.files.map(n=>n.startsWith(Bh)?n:Ah(n)),C.watchOptions){let{watchOptions:n}=C;n.excludeDirectories&&=n.excludeDirectories.map(n=>h$1(cs.resolve(N,n))),n.excludeFiles&&=n.excludeFiles.map(n=>h$1(cs.resolve(N,n))),n.watchFile&&=n.watchFile.toLowerCase(),n.watchDirectory&&=n.watchDirectory.toLowerCase(),n.fallbackPolling&&=n.fallbackPolling.toLowerCase()}return C},`_parseTsconfig`),$h=r((n,a)=>{if(n.startsWith(Bh))return h$1(cs.join(a,n.slice(12)))},`interpolateConfigDir`),eg=[`outDir`,`declarationDir`,`outFile`,`rootDir`,`baseUrl`,`tsBuildInfoFile`],tg=r(n=>{if(n.strict)for(let a of[`noImplicitAny`,`noImplicitThis`,`strictNullChecks`,`strictFunctionTypes`,`strictBindCallApply`,`strictPropertyInitialization`,`strictBuiltinIteratorReturn`,`alwaysStrict`,`useUnknownInCatchVariables`])n[a]===void 0&&(n[a]=!0);if(n.composite&&(n.declaration??=!0,n.incremental??=!0),n.target){let a=n.target.toLowerCase();a===`es2015`&&(a=`es6`),n.target=a,a===`esnext`&&(n.module??=`es6`,n.useDefineForClassFields??=!0),(a===`es6`||a===`es2016`||a===`es2017`||a===`es2018`||a===`es2019`||a===`es2020`||a===`es2021`||a===`es2022`||a===`es2023`||a===`es2024`)&&(n.module??=`es6`),(a===`es2022`||a===`es2023`||a===`es2024`)&&(n.useDefineForClassFields??=!0)}if(n.module){let a=n.module.toLowerCase();if(a===`es2015`&&(a=`es6`),n.module=a,(a===`es6`||a===`es2020`||a===`es2022`||a===`esnext`||a===`none`||a===`system`||a===`umd`||a===`amd`)&&(n.moduleResolution??=`classic`),a===`system`&&(n.allowSyntheticDefaultImports??=!0),(a===`node16`||a===`node18`||a===`node20`||a===`nodenext`||a===`preserve`)&&(n.esModuleInterop??=!0,n.allowSyntheticDefaultImports??=!0),(a===`node16`||a===`node18`||a===`node20`||a===`nodenext`)&&(n.moduleDetection??=`force`),a===`node16`&&(n.target??=`es2022`,n.moduleResolution??=`node16`),a===`node18`&&(n.target??=`es2022`,n.moduleResolution??=`node16`),a===`node20`&&(n.target??=`es2023`,n.moduleResolution??=`node16`,n.resolveJsonModule??=!0),a===`nodenext`&&(n.target??=`esnext`,n.moduleResolution??=`nodenext`,n.resolveJsonModule??=!0),a===`node16`||a===`node18`||a===`node20`||a===`nodenext`){let a=n.target;(a===`es3`||a===`es2022`||a===`es2023`||a===`es2024`||a===`esnext`)&&(n.useDefineForClassFields??=!0)}a===`preserve`&&(n.moduleResolution??=`bundler`)}if(n.moduleResolution){let a=n.moduleResolution.toLowerCase();a===`node`&&(a=`node10`),n.moduleResolution=a,(a===`node16`||a===`nodenext`||a===`bundler`)&&(n.resolvePackageJsonExports??=!0,n.resolvePackageJsonImports??=!0),a===`bundler`&&(n.allowSyntheticDefaultImports??=!0,n.resolveJsonModule??=!0)}n.jsx&&=n.jsx.toLowerCase(),n.moduleDetection&&=n.moduleDetection.toLowerCase(),n.importsNotUsedAsValues&&=n.importsNotUsedAsValues.toLowerCase(),n.newLine&&=n.newLine.toLowerCase(),n.esModuleInterop&&(n.allowSyntheticDefaultImports??=!0),n.verbatimModuleSyntax&&(n.isolatedModules??=!0,n.preserveConstEnums??=!0),n.isolatedModules&&(n.preserveConstEnums??=!0),n.rewriteRelativeImportExtensions&&(n.allowImportingTsExtensions??=!0),n.lib&&=n.lib.map(n=>n.toLowerCase()),n.checkJs&&(n.allowJs??=!0)},`normalizeCompilerOptions`),ng=r((n,a=new Map)=>{let S=cs.resolve(n),C=Qh(S,a),N=cs.dirname(S),{compilerOptions:F}=C;if(F){for(let n of eg){let a=F[n];if(a){let S=$h(a,N);F[n]=S?Kh(N,S):a}}for(let n of[`rootDirs`,`typeRoots`]){let a=F[n];a&&(F[n]=a.map(n=>{let a=$h(n,N);return a?Kh(N,a):Ah(n)}))}let{paths:n}=F;if(n)for(let a of Object.keys(n))n[a]=n[a].map(n=>$h(n,N)??n);tg(F)}for(let n of qh){let a=C[n];a&&(C[n]=a.map(n=>$h(n,N)??n))}return C},`parseTsconfig`),rg=Object.defineProperty,ig=r((n,a)=>rg(n,`name`,{value:a,configurable:!0}),`s`),ag=ig(n=>{let a=``;for(let S=0;S<n.length;S+=1){let C=n[S],N=C.toUpperCase();a+=C===N?C.toLowerCase():N}return a},`invertCase`),og=new Map,sg=ig((n,a)=>{let S=cs.join(n,`.is-fs-case-sensitive-test-${process.pid}`);try{return a.writeFileSync(S,``),!a.existsSync(ag(S))}finally{try{a.unlinkSync(S)}catch{}}},`checkDirectoryCaseWithWrite`),cg=ig((n,a,S)=>{try{return sg(n,S)}catch(n){if(a===void 0)return sg(Bp.tmpdir(),S);throw n}},`checkDirectoryCaseWithFallback`),lg=ig((n,a=qc,S=!0)=>{let C=n??process.cwd();if(S&&og.has(C))return og.get(C);let N,F=ag(C);return N=F!==C&&a.existsSync(C)?!a.existsSync(F):cg(C,n,a),S&&og.set(C,N),N},`isFsCaseSensitive`),{join:ug}=cs.posix,dg={ts:[`.ts`,`.tsx`,`.d.ts`],cts:[`.cts`,`.d.cts`],mts:[`.mts`,`.d.mts`]},fg=r(n=>{let a=[...dg.ts],S=[...dg.cts],C=[...dg.mts];return n!=null&&n.allowJs&&(a.push(`.js`,`.jsx`),S.push(`.cjs`),C.push(`.mjs`)),[...a,...S,...C]},`getSupportedExtensions`),pg=r(n=>{let a=[];if(!n)return a;let{outDir:S,declarationDir:C}=n;return S&&a.push(S),C&&a.push(C),a},`getDefaultExcludeSpec`),mg=r(n=>n.replaceAll(/[.*+?^${}()|[\]\\]/g,String.raw`\$&`),`escapeForRegexp`),hg=`(?!(${[`node_modules`,`bower_components`,`jspm_packages`].join(`|`)})(/|$))`,gg=/(?:^|\/)[^.*?]+$/,_g=`**/*`,vg=`[^/]`,yg=`[^./]`,bg=process.platform===`win32`,xg=r(({config:n,path:a},S=lg())=>{if(`extends`in n)throw Error(`tsconfig#extends must be resolved. Use getTsconfig or parseTsconfig to resolve it.`);if(!cs.isAbsolute(a))throw Error(`The tsconfig path must be absolute`);bg&&(a=h$1(a));let C=cs.dirname(a),{files:N,include:F,exclude:I,compilerOptions:H}=n,W=r(n=>cs.isAbsolute(n)?n:ug(C,n),`resolvePattern`),K=N?.map(W),q=fg(H),Y=S?``:`i`,X=(I||pg(H)).map(n=>{let a=mg(W(n)).replaceAll(String.raw`\*\*/`,`(.+/)?`).replaceAll(String.raw`\*`,`${vg}*`).replaceAll(String.raw`\?`,vg);return RegExp(`^${a}($|/)`,Y)}),te=N||F?F:[_g],ne=te?te.map(n=>{let a=W(n);gg.test(a)&&(a=ug(a,_g));let S=mg(a).replaceAll(String.raw`/\*\*`,`(/${hg}${yg}${vg}*)*?`).replaceAll(/(\/)?\\\*/g,(n,a)=>{let S=`(${yg}|(\\.(?!min\\.js$))?)*`;return a?`/${hg}${yg}${S}`:S}).replaceAll(/(\/)?\\\?/g,(n,a)=>{let S=vg;return a?`/${hg}${S}`:S});return RegExp(`^${S}$`,Y)}):void 0;return a=>{if(!cs.isAbsolute(a))throw Error(`filePath must be absolute`);if(bg&&(a=h$1(a)),K!=null&&K.includes(a)||!(!q.some(n=>a.endsWith(n))||X.some(n=>n.test(a)))&&ne&&ne.some(n=>n.test(a)))return n}},`createFilesMatcher`),Sg=r((n,a,S)=>{let C=cs.resolve(n),N=h$1(n);for(;;){let n=Oh(N,a,S);if(!n)return;let F=cs.resolve(n),I=ng(F,S),H={path:h$1(F),config:I};if(xg(H)(C))return H;let W=cs.dirname(n),K=cs.dirname(W);if(K===W)return;N=K}},`findConfigApplicable`),Cg=r((n=process.cwd(),a=`tsconfig.json`,S=new Map,C=!1)=>C?Sg(n,a,S)?.path:Oh(h$1(n),a,S),`findTsconfig`),wg=r((n=process.cwd(),a=`tsconfig.json`,S=new Map,C=!1)=>{if(!C){let C=Cg(n,a,S);return C?{path:C,config:ng(C,S)}:null}return Sg(n,a,S)??null},`getTsconfig`),Tg=/\*/g,Eg=r((n,a)=>{let S=n.match(Tg);if(S&&S.length>1)throw Error(a)},`assertStarCount`),Dg=r(n=>{if(n.includes(`*`)){let[a,S]=n.split(`*`);return{prefix:a,suffix:S}}return n},`parsePattern`),Og=r(({prefix:n,suffix:a},S)=>S.startsWith(n)&&S.endsWith(a),`isPatternMatch`),kg=r((n,a,S)=>Object.entries(n).map(([n,C])=>(Eg(n,`Pattern '${n}' can have at most one '*' character.`),{pattern:Dg(n),substitutions:C.map(C=>{if(Eg(C,`Substitution '${C}' in pattern '${n}' can have at most one '*' character.`),!a&&!kh.test(C)&&!cs.isAbsolute(C))throw Error(`Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?`);return cs.resolve(S,C)})})),`parsePaths`),r(n=>{let{compilerOptions:a}=n.config;if(!a)return null;let{baseUrl:S,paths:C}=a;if(!S&&!C)return null;let N=zh in a&&a[zh],F=cs.resolve(cs.dirname(n.path),S||N||`.`),I=C?kg(C,S,F):[];return n=>{if(kh.test(n))return[];let a=[];for(let S of I){if(S.pattern===n)return S.substitutions.map(h$1);typeof S.pattern!=`string`&&a.push(S)}let C,N=-1;for(let S of a)Og(S.pattern,n)&&S.pattern.prefix.length>N&&(N=S.pattern.prefix.length,C=S);if(!C)return S?[h$1(cs.join(F,n))]:[];let H=n.slice(C.pattern.prefix.length,n.length-C.pattern.suffix.length);return C.substitutions.map(n=>h$1(n.replace(`*`,H)))}},`createPathsMatcher`)});function defaultSearchPlaces(n){return[`package.json`,`.${n}rc`,`.${n}rc.json`,`.${n}rc.yaml`,`.${n}rc.yml`,`.${n}rc.js`,`.${n}rc.ts`,`.${n}rc.mjs`,`.${n}rc.cjs`,`${n}.config.js`,`${n}.config.ts`,`${n}.config.mjs`,`${n}.config.cjs`]}function merge(n,...a){for(let S of a)if(S)for(let a of Object.keys(S)){let C=n[a],N=S[a];N!==void 0&&(isPlainObject$1(C)&&isPlainObject$1(N)?merge(C,N):n[a]=N)}return n}function isPlainObject$1(n){return typeof n==`object`&&!!n&&!Array.isArray(n)&&Object.getPrototypeOf(n)===Object.prototype}function readDottedPath(n,a){if(!a.includes(`.`))return n[a];let S=n;for(let n of a.split(`.`)){if(typeof S!=`object`||!S)return;S=S[n]}return S}var jg,Config,Mg=__esmMin(()=>{Ae(),Zd(),jg=tm(),uh(),Ag(),__name$1(isPlainObject$1,`isPlainObject`),Config=class{loadOptions={};constructor(n={}){Object.keys(n).length&&(this.loadOptions=n)}async load(n){let a=await(0,jg.cosmiconfig)(Xd,{...this.loadOptions,searchPlaces:(this.loadOptions.searchPlaces??defaultSearchPlaces(`gjsify`)).filter(n=>n!==`package.json`)}).search(n),S={};try{let a=await this.readPackageJSON(n);isPlainObject$1(a?.gjsify)&&merge(S,a.gjsify)}catch{}return a?.config&&isPlainObject$1(a.config)&&merge(S,a.config),S.bundler||={},S.library||={},S.typescript||={},{config:S,filepath:a?.filepath??``,isEmpty:!a&&Object.keys(S).length===3}}async readPackageJSON(n){return n=await resolvePackageJSON(n),await readPackageJSON(n)}async readTSConfig(n){return wg(n)?.config||{}}async forBuild(n){let a=await this.load(process.cwd()),S={...a.config},C=a.filepath||process.cwd(),N=await this.readPackageJSON(C),F=await this.readTSConfig(C);if(F.reflection||=n.reflection,S.verbose=n.verbose||!1,S.exclude=n.exclude||[],n.consoleShim!==void 0&&(S.consoleShim=n.consoleShim),n.globals!==void 0&&(S.globals=n.globals),n.shebang!==void 0&&(S.shebang=n.shebang),n.excludeGlobals){let a=(Array.isArray(n.excludeGlobals)?n.excludeGlobals.join(`,`):String(n.excludeGlobals)).split(`,`).map(n=>n.trim()).filter(Boolean);a.length&&(S.excludeGlobals=[...S.excludeGlobals??[],...a])}merge(S.library??={},N,S.library),merge(S.typescript??={},F,S.typescript);let parseKvPairs=(n,a)=>{let S={};for(let C of n){let n=C.indexOf(`=`);if(n===-1)throw Error(`Invalid --${a} value '${C}'. Expected KEY=VALUE.`);let N=C.slice(0,n).trim(),F=C.slice(n+1);if(!N)throw Error(`Invalid --${a} value '${C}'. Empty key.`);S[N]=F}return S},I=parseKvPairs(n.define??[],`define`),H=parseKvPairs(n.alias??[],`alias`);Object.keys(H).length&&(S.aliases={...S.aliases,...H});let W={};if(S.defineFromPackageJson)for(let[n,a]of Object.entries(S.defineFromPackageJson)){if(!a||typeof a.field!=`string`||!a.field)throw Error(`gjsify config: defineFromPackageJson["${n}"] is missing a "field" string`);let S=readDottedPath(N,a.field);W[n]=S===void 0?`undefined`:JSON.stringify(S)}let K={};if(S.defineFromEnv)for(let[n,a]of Object.entries(S.defineFromEnv)){if(!a||typeof a.env!=`string`||!a.env)throw Error(`gjsify config: defineFromEnv["${n}"] is missing an "env" string`);let S=process.env[a.env],C=S===void 0?a.default:S;K[n]=C===void 0?`undefined`:JSON.stringify(C)}let q=S.bundler??={},Y=q.output??={},X=q.transform??={};return n.entryPoints?.length&&(q.input=n.entryPoints),q.input||=[`src/index.ts`],n.outfile!==void 0&&(Y.file=n.outfile),n.outdir!==void 0&&(Y.dir=n.outdir),n.format!==void 0&&(Y.format=n.format),n.minify!==void 0&&(Y.minify=n.minify),Y.minify===void 0&&(Y.minify=!0),Y.minify===!0&&(Y.keepNames=!0),n.logLevel&&(q.logLevel={silent:`silent`,error:`warn`,warning:`warn`,warn:`warn`,info:`info`,debug:`debug`,verbose:`debug`}[n.logLevel]??`warn`),n.external?.length&&(q.external=[...Array.isArray(q.external)?q.external:[],...n.external]),(Object.keys(I).length||Object.keys(W).length||Object.keys(K).length)&&(X.define={...X.define,...W,...K,...I}),S.verbose&&ke.debug(`configData`,S),S}}});function discoverWorkspaces(n,a={}){let S=Qo(n,`package.json`);if(!existsSync(S))throw Error(`@gjsify/workspace: no package.json at ${n}`);let C=JSON.parse(readFileSync(S,`utf-8`)),N=a.patterns??extractWorkspacePatterns(C),F=N.filter(n=>!n.startsWith(`!`)),I=N.filter(n=>n.startsWith(`!`)).map(n=>globToRegex$1(n.slice(1))),H=[];a.includeRoot&&C.name&&H.push({location:n,relativeLocation:`.`,name:C.name,version:C.version??`0.0.0`,manifest:C,private:C.private===!0});for(let a of F)for(let S of expandPattern(n,a)){let a=$o(n,S).split(os).join(`/`);if(I.some(n=>n.test(a)))continue;let C=Qo(S,`package.json`);if(!existsSync(C))continue;let N;try{N=JSON.parse(readFileSync(C,`utf-8`))}catch{continue}N.name&&H.push({location:S,relativeLocation:a,name:N.name,version:N.version??`0.0.0`,manifest:N,private:N.private===!0})}return H.sort((n,a)=>n.relativeLocation.localeCompare(a.relativeLocation)),H}function buildDependencyGraph(n,a={}){let S=a.includeDev??!1,C=a.includePeer??!1,N=a.includeOptional??!0,F=indexByName(n),I=new Map;for(let a of n){let n=new Set,H=a.manifest;for(let a of[H.dependencies,S?H.devDependencies:void 0,C?H.peerDependencies:void 0,N?H.optionalDependencies:void 0])if(a)for(let[S,C]of Object.entries(a))typeof C==`string`&&C.startsWith(`workspace:`)&&F.has(S)&&n.add(S);I.set(a.name,n)}return{edges:I,byName:F}}function topologicalSort(n){let a=new Map;for(let S of n.edges.keys())a.set(S,0);for(let S of n.edges.values())for(let n of S)a.has(n)&&a.set(n,(a.get(n)??0)+1);let S=new Map,C=new Map;for(let a of n.edges.keys())S.set(a,new Set),C.set(a,0);for(let[a,N]of n.edges)for(let n of N)S.has(n)&&(S.get(n).add(a),C.set(a,(C.get(a)??0)+1));let N=[];for(let[n,a]of C)a===0&&N.push(n);N.sort();let F=[];for(;N.length>0;){let a=N.shift(),I=n.byName.get(a);I&&F.push(I);let H=S.get(a);if(H){let n=[];for(let a of H){let S=(C.get(a)??1)-1;C.set(a,S),S===0&&n.push(a)}n.sort(),N.push(...n)}}if(F.length!==C.size){let n=[...C.entries()].filter(([,n])=>n>0).map(([n])=>n);throw Error(`@gjsify/workspace: dependency cycle detected involving ${n.join(`, `)}`)}return F}function buildReverseDependencyGraph(n,a={}){let S=buildDependencyGraph(n,a),C=new Map;for(let n of S.edges.keys())C.set(n,new Set);for(let[n,a]of S.edges)for(let S of a){let a=C.get(S);a&&a.add(n)}return{edges:C,byName:S.byName}}function affectedClosure(n,a){let S=new Set,C=[];for(let N of a)n.byName.has(N)&&(S.has(N)||(S.add(N),C.push(N)));for(;C.length>0;){let a=C.shift(),N=n.edges.get(a);if(N)for(let n of N)S.has(n)||(S.add(n),C.push(n))}return S}function workspacesForChangedFiles(n,a,S){let C=new Set,N=[],F={children:new Map};for(let a of n){if(a.relativeLocation===`.`||a.relativeLocation===``)continue;let n=a.relativeLocation.split(`/`).filter(Boolean),S=F;for(let a of n){let n=S.children.get(a);n||(n={children:new Map},S.children.set(a,n)),S=n}S.ws=a.name}for(let n of S){if(!n)continue;let a=n.replace(/\\/g,`/`).split(`/`).filter(Boolean),S=F,I;for(let n of a){if(S=S.children.get(n),!S)break;S.ws&&(I=S.ws)}I?C.add(I):N.push(n)}return{matched:C,unmatched:N}}function filterWorkspaces(n,a){let S=a.include?.map(globToRegex$1),C=a.exclude?.map(globToRegex$1);return n.filter(n=>!(a.noPrivate&&n.private||S&&S.length>0&&!S.some(a=>a.test(n.name))||C&&C.some(a=>a.test(n.name))))}function extractWorkspacePatterns(n){let a=n.workspaces;return a?Array.isArray(a)?a:a.packages??[]:[]}function expandPattern(n,a){let S=a.split(`/`).filter(Boolean),C=[Yo(n)];for(let n of S){let a=[];for(let S of C)if(n===`*`){let n=[];try{n=readdirSync(S)}catch{continue}for(let C of n){if(C.startsWith(`.`))continue;let n=Qo(S,C);try{statSync(n).isDirectory()&&a.push(n)}catch{}}}else if(n.includes(`*`)){let C=globToRegex$1(n),N=[];try{N=readdirSync(S)}catch{continue}for(let n of N){if(n.startsWith(`.`)||!C.test(n))continue;let N=Qo(S,n);try{statSync(N).isDirectory()&&a.push(N)}catch{}}}else{let C=Qo(S,n);if(existsSync(C))try{statSync(C).isDirectory()&&a.push(C)}catch{}}C=a}return C}function globToRegex$1(n){let a=n.replace(/[.+?^${}()|[\]\\]/g,`\\$&`).replace(/\*/g,`[^/]*`);return RegExp(`^${a}$`)}function indexByName(n){let a=new Map;for(let S of n)a.set(S.name,S);return a}var Ng=__esmMin(()=>{Jc(),ls(),__name$1(globToRegex$1,`globToRegex`)});function readPackageJson$4(n){try{return JSON.parse(readFileSync(n,`utf-8`))}catch{return null}}function findWorkspaceRoot(n){let a=n;for(let S=0;S<12;S++){let S=Qo(a,`package.json`);if(existsSync(S)&&readPackageJson$4(S)?.workspaces!==void 0)try{let S=discoverWorkspaces(a);if(a===n||S.some(a=>a.location===n))return a}catch{}let C=Yo(a,`..`);if(C===a)break;a=C}return null}var Pg=__esmMin(()=>{Jc(),ls(),Ng(),__name$1(readPackageJson$4,`readPackageJson`)});function resolveNpmPackage(n,a={}){let S=a.cwd??process.cwd(),C=process.env.GJSIFY_NODE_PATH;if(C)for(let a of C.split(`:`).filter(Boolean)){let S=tryResolveFromDir(n,Yo(a));if(S)return S}let N=tryResolveFromDir(n,S);if(N)return N;let F=findWorkspaceRoot(S);if(F&&F!==S){let a=tryResolveFromDir(n,F);if(a)return a}if(a.bundleUrl)try{return createRequire(a.bundleUrl).resolve(n)}catch{}let I=Yo(S,`..`);for(let a=0;a<8;a++){let a=tryResolveFromDir(n,I);if(a)return a;let S=Yo(I,`..`);if(S===I)break;I=S}return null}function tryResolveFromDir(n,a){try{let S=pathToFileURL(Qo(a,`__gjsify_resolve__.js`)).href;return createRequire(S).resolve(n)}catch{return null}}var Fg=__esmMin(()=>{zo(),fn(),ls(),Pg()});async function loadNpmRolldown(){if(globalThis.imports?.gi!==void 0)throw Error("gjsify build: no usable bundler engine under GJS — `@gjsify/rolldown-native` is not loadable (its JS facade lib/ is not built, or its prebuild typelib is missing from GI_TYPELIB_PATH), and the npm `rolldown` engine is a Rust napi crate that cannot run under GJS. Build the facade first (`gjsify workspace @gjsify/rolldown-native build` under Node) or run this build under Node.");return(await import(resolveImportTargetForGjs(`rolldown`))).rolldown}function resolveImportTargetForGjs(n){if(globalThis.imports?.gi===void 0)return n;let a=resolveNpmPackage(n,{bundleUrl:import.meta.url});return a?pathToFileURL(a).href:n}async function bundleToChunks(n){if(await shouldUseNative()){let a=await tryLoadNative();if(!a)throw Error(`@gjsify/rolldown-native not loadable`);let S=n.rolldownInput.plugins??[],C=[];for(let n of S)isPluginObject(n)&&C.push(toNativePlugin(n));let N=liftTransformExtras(stripUnserializable({...n.rolldownInput,input:normalizeInputForNative(n.rolldownInput.input),format:n.format}));delete N.plugins;let F=await a.bundleWithPlugins(N,C);reportNativeWarnings(F,n.rolldownInput);let I=[];for(let n of F.output)n.type===`chunk`&&I.push(n.code);return I}let a=await(await loadNpmRolldown())(n.rolldownInput);try{let S=await a.generate({format:n.format,minify:!1,sourcemap:!1}),C=[];for(let n of S.output)n.type===`chunk`&&C.push(n.code);return C}finally{await a.close()}}async function runWatch(n){if(await shouldUseNative())throw Error("`gjsify build --watch` requires the npm `rolldown` engine. The native engine (`@gjsify/rolldown-native`) does not expose a watcher API. Run the watch loop under Node (`node lib/index.js build … --watch`) or set `GJSIFY_BUNDLER=npm`.");let a=await import(resolveImportTargetForGjs(`rolldown`)),S=n.output??{};return a.watch({...n,output:S})}async function runBundle(n){if(await shouldUseNative())return await runNativeBundle(n);let a=await(await loadNpmRolldown())(n);try{return await a.write(n.output??{})}finally{await a.close()}}async function shouldUseNative(){let n=(globalThis.process?.env??{}).GJSIFY_BUNDLER;if(n===`npm`)return!1;if(n===`native`){if(!await tryLoadNative())throw Error(`GJSIFY_BUNDLER=native but @gjsify/rolldown-native is not loadable (no prebuild for this architecture, or not running under GJS).`);return!0}return globalThis.imports?.gi===void 0?!1:await tryLoadNative()!==null}async function tryLoadNative(){return Ig||(Ig=(async()=>{let n=globalThis.imports?.gi!==void 0;if(!n)return null;try{let a=`@gjsify/rolldown-native`,S=a;n&&(S=pathToFileURL(resolveNpmPackage(a,{bundleUrl:import.meta.url})??createRequire(import.meta.url).resolve(a)).href);let C=await import(S);return C.hasNativeRolldown()?C:null}catch{return null}})(),Ig)}async function runNativeBundle(n){let a=await tryLoadNative();if(!a)throw Error(`@gjsify/rolldown-native not loadable`);let S=n.plugins??[],C=[];for(let n of S)isPluginObject(n)&&C.push(toNativePlugin(n));let{output:N,plugins:F,...I}=n,H=liftTransformExtras(stripUnserializable({...I,...N,input:normalizeInputForNative(n.input)}));globalThis.process?.env?.GJSIFY_DEBUG_NATIVE_OPTS&&ke.error(`[gjsify-bundler-pick] native opts JSON:`,JSON.stringify(H));let W=await a.bundleWithPlugins(H,C);reportNativeWarnings(W,n);let K=n.output??{},q=K.dir??(K.file?ts(K.file):process.cwd());q&&await Cc.mkdir(q,{recursive:!0});for(let n of W.output){let a=K.file&&n.type===`chunk`&&W.output.length===1?K.file:Qo(q,n.fileName);await Cc.mkdir(ts(a),{recursive:!0}),n.type===`chunk`?(await Cc.writeFile(a,n.code,`utf8`),typeof n.map==`string`&&await Cc.writeFile(`${a}.map`,n.map,`utf8`)):n.sourceText!==void 0&&await Cc.writeFile(a,n.sourceText,`utf8`)}return synthRolldownOutput(W)}function reportNativeWarnings(n,a){if(a.logLevel===`silent`||!Array.isArray(n.warnings)||n.warnings.length===0)return;let S=new Set;for(let a of n.warnings)S.has(a)||(S.add(a),ke.warn(`[gjsify-bundler] ${a}`))}function stripUnserializable(n){let a={};for(let[S,C]of Object.entries(n)){if(typeof C==`function`){if(!Lg.has(S)){Lg.add(S);let n=S===`external`?" Function `external` predicates are NOT supported by the native engine — pass exact names as a string array and/or enforce shape rules via a resolveId plugin returning `{ external: true }` (see externalsPlugin in @gjsify/rolldown-plugin-gjsify).":` Function-valued options do not survive the JSON boundary to the Rust core.`;ke.warn(`[gjsify-bundler] dropping non-serializable option "${S}" for the native rolldown engine — behavior may diverge from npm rolldown.${n}`)}continue}if(S===`external`&&Array.isArray(C)){let n=C.find(n=>typeof n!=`string`);if(n!==void 0)throw Error(`gjsify build: \`external\` entries must be exact string names under the native rolldown engine (got ${n instanceof RegExp?n.toString():typeof n}). RegExp/function externals are only supported by npm rolldown — use exact names or a resolveId plugin returning \`{ external: true }\`.`);a[S]=C;continue}if(S===`sourcemap`){let n=translateSourcemapOption(C);n!==void 0&&(a[S]=n);continue}a[S]=C}return a}function translateSourcemapOption(n){if(n===!0||n===`file`||n===`File`)return`File`;if(n===`inline`||n===`Inline`)return`Inline`;if(n===`hidden`||n===`Hidden`)return`Hidden`}function liftTransformExtras(n){let a=n.transform;if(!a)return n;let S={},C={...a};for(let n of[`define`,`inject`])n in C&&(S[n]=C[n],delete C[n]);return S.inject!==void 0&&!Array.isArray(S.inject)&&(S.inject=mapToInjectArray(S.inject)),{...n,transform:Object.keys(C).length===0?void 0:C,...S}}function mapToInjectArray(n){let a=[];for(let[S,C]of Object.entries(n))if(typeof C==`string`)a.push({type:`named`,imported:`default`,from:C,alias:S});else{let[n,N]=C;N===`*`?a.push({type:`namespace`,from:n,alias:S}):a.push({type:`named`,from:n,imported:N,alias:S})}return a}function normalizeInputForNative(n){return n===void 0?[]:typeof n==`string`?[{import:n}]:Array.isArray(n)?n.map(n=>typeof n==`string`?{import:n}:n):Object.entries(n).map(([n,a])=>({name:n,import:a}))}function isPluginObject(n){return typeof n==`object`&&!!n&&!Array.isArray(n)}function pickHook(n){if(typeof n==`function`)return{fn:n};if(typeof n==`object`&&n&&`handler`in n){let a=n,S=filterToRegexSource(a.filter?.id),C={fn:a.handler};return S!==void 0&&(C.idFilter=S),C}}function filterToRegexSource(n){if(n!==void 0){if(Array.isArray(n)){let a=n.map(oneToSource).filter(n=>n!==void 0);return a.length===0?void 0:a.length===1?a[0]:`(?:${a.join(`|`)})`}return oneToSource(n)}}function oneToSource(n){if(n instanceof RegExp)return n.source;if(typeof n==`string`)return n.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function toNativePlugin(n){let a={name:typeof n.name==`string`?n.name:`unnamed-plugin`},S={},C=pickHook(n.load);C&&(a.load=C.fn,C.idFilter&&(S.load=C.idFilter));let N=pickHook(n.transform);N&&(a.transform=N.fn,N.idFilter&&(S.transform=N.idFilter));let F=pickHook(n.resolveId);F&&(a.resolveId=F.fn,F.idFilter&&(S.resolveId=F.idFilter));let I=pickHook(n.renderChunk);I&&(a.renderChunk=I.fn);let H=pickHook(n.banner);H&&(a.banner=H.fn);let W=pickHook(n.footer);W&&(a.footer=W.fn);let K=pickHook(n.intro);K&&(a.intro=K.fn);let q=pickHook(n.outro);q&&(a.outro=q.fn);let Y=pickHook(n.buildStart);Y&&(a.buildStart=Y.fn);let X=pickHook(n.buildEnd);X&&(a.buildEnd=X.fn);let te=pickHook(n.generateBundle);te&&(a.generateBundle=te.fn);let ne=pickHook(n.writeBundle);ne&&(a.writeBundle=ne.fn);let re=pickHook(n.closeBundle);return re&&(a.closeBundle=re.fn),Object.keys(S).length>0&&(a.idFilter=S),a}function synthRolldownOutput(n){return{output:n.output.map(n=>n.type===`chunk`?{type:`chunk`,fileName:n.fileName,code:n.code,name:n.name,isEntry:n.isEntry,isDynamicEntry:n.isDynamicEntry,map:n.map??null,sourcemapFileName:n.sourcemapFilename??null,imports:n.imports,dynamicImports:n.dynamicImports,facadeModuleId:null,moduleIds:[],modules:{},exports:[],referencedFiles:[],importedBindings:{}}:{type:`asset`,fileName:n.fileName,names:n.names,originalFileNames:n.originalFileNames,source:n.sourceText??``,needsCodeReference:!1})}}var Ig,Lg,Rg=__esmMin(()=>{Ae(),Jc(),ls(),zo(),fn(),Fg(),Ig=null,Lg=new Set}),zg=__esmMin(()=>{}),Bg=__esmMin(()=>{}),Vg=__esmMin(()=>{}),Hg=__esmMin(()=>{zg(),Bg(),Vg()});function findScanRoots(){let n=[],a=ts(fileURLToPath(import.meta.url));for(let S=0;S<8;S++){let S=Yo(a,`packages`);if(existsSync(S))try{[`node`,`web`,`dom`,`framework`,`infra`].some(n=>existsSync(Qo(S,n)))&&n.push({kind:`workspace`,dir:S})}catch{}let C=Yo(a,`node_modules`,`@gjsify`);existsSync(C)&&n.push({kind:`installed`,dir:C});let N=ts(a);if(N===a)break;a=N}try{let a=Yo(process.cwd(),`node_modules`,`@gjsify`);existsSync(a)&&n.push({kind:`installed`,dir:a})}catch{}return n}function ingestPackageDirSync(n,a){let S=Qo(n,`package.json`);if(existsSync(S))try{let C=readFileSync(S,`utf8`),N=JSON.parse(C),F=typeof N.name==`string`?N.name:null,I=N?.gjsify?.runtimes;if(F&&F.startsWith(`@gjsify/`)&&!a.has(F)&&I&&typeof I==`object`){let S={};for(let n of Wg){let a=I[n];typeof a==`string`&&Ug.has(a)&&(S[n]=a)}let C=existsSync(Qo(n,`globals.mjs`));a.set(F,{name:F,dir:n,runtimes:S,hasGlobals:C})}}catch{}}function getCacheSync(){if(Gg)return Gg;let n=findScanRoots(),a=new Map;if(n.length===0)return Gg=a,Gg;function walkWorkspace(n){let S;try{S=readdirSync(n,{withFileTypes:!0})}catch{return}if(existsSync(Qo(n,`package.json`))){ingestPackageDirSync(n,a);return}for(let a of S)a.isDirectory()&&(a.name===`node_modules`||a.name===`lib`||a.name===`dist`||a.name.startsWith(`.`)||walkWorkspace(Qo(n,a.name)))}function walkInstalled(n){let S;try{S=readdirSync(n,{withFileTypes:!0})}catch{return}for(let C of S)!C.isDirectory()&&!C.isSymbolicLink()||C.name.startsWith(`.`)||ingestPackageDirSync(Qo(n,C.name),a)}for(let a of n)a.kind===`workspace`?walkWorkspace(a.dir):walkInstalled(a.dir);return Gg=a,Gg}function warnOnce(n,a){Kg.has(n)||(Kg.add(n),ke.warn(`[@gjsify/resolve-npm] ${a}`))}function resolveSlot(n,a){let S=n.runtimes[a];if(!S)return null;switch(S){case`polyfill`:case`partial`:return null;case`native`:return n.hasGlobals?`${n.name}/globals`:(warnOnce(`${n.name}-${a}-native-missing-globals`,`${n.name} declares runtimes.${a}="native" but ships no globals.mjs — falling back to @gjsify/empty for --app ${a} builds.`),`@gjsify/empty`);case`none`:return null;default:return null}}function getDerivedAliasesSync(n){if(!Wg.has(n))return{};let a=getCacheSync(),S={};for(let C of a.values()){let a=resolveSlot(C,n);a!==null&&a!==C.name&&(S[C.name]=a)}return S}var Ug,Wg,Gg,Kg,qg=__esmMin(()=>{Ae(),Tc(),Jc(),ls(),fn(),Ug=new Set([`polyfill`,`native`,`partial`,`none`]),Wg=new Set([`gjs`,`node`,`browser`,`nativescript`]),Gg=null,Kg=new Set}),Jg,Yg,Xg,Zg,Qg,$g,e_,t_,n_,r_,i_=__esmMin(()=>{qg(),Jg=`assert.assert/strict.async_hooks.buffer.child_process.cluster.console.constants.crypto.dgram.diagnostics_channel.dns.dns/promises.domain.events.fs.fs/promises.http.http2.https.inspector.module.net.os.path.path/posix.path/win32.perf_hooks.process.punycode.querystring.readline.readline/promises.repl.stream.stream/web.stream/consumers.stream/promises.string_decoder.sys.test.timers.timers/promises.tls.tty.url.util.util/types.v8.vm.wasi.sqlite.worker_threads.zlib`.split(`.`),Yg=[`readable-stream`,`node-fetch`],Xg={jsdom:`@gjsify/empty`,"./polling-xhr.node.js":`./polling-xhr.js`,"./websocket.node.js":`./websocket.js`,"./globals.node.js":`./globals.js`},Zg={assert:`@gjsify/assert`,"assert/strict":`@gjsify/assert/strict`,async_hooks:`@gjsify/async_hooks`,buffer:`@gjsify/buffer`,child_process:`@gjsify/child_process`,cluster:`@gjsify/cluster`,console:`@gjsify/console`,constants:`@gjsify/constants`,crypto:`@gjsify/crypto`,dgram:`@gjsify/dgram`,diagnostics_channel:`@gjsify/diagnostics_channel`,dns:`@gjsify/dns`,"dns/promises":`@gjsify/dns/promises`,domain:`@gjsify/domain`,events:`@gjsify/events`,fs:`@gjsify/fs`,"fs/promises":`@gjsify/fs/promises`,http:`@gjsify/http`,http2:`@gjsify/http2`,https:`@gjsify/https`,inspector:`@gjsify/inspector`,module:`@gjsify/module`,net:`@gjsify/net`,os:`@gjsify/os`,path:`@gjsify/path`,"path/posix":`@gjsify/path/posix`,"path/win32":`@gjsify/path/win32`,perf_hooks:`@gjsify/perf_hooks`,process:`@gjsify/process`,punycode:`@gjsify/punycode`,querystring:`@gjsify/querystring`,readline:`@gjsify/readline`,"readline/promises":`@gjsify/readline/promises`,repl:`@gjsify/repl`,stream:`@gjsify/stream`,"stream/web":`@gjsify/stream/web`,"stream/consumers":`@gjsify/stream/consumers`,"stream/promises":`@gjsify/stream/promises`,string_decoder:`@gjsify/string_decoder`,sys:`@gjsify/sys`,timers:`@gjsify/timers`,"timers/promises":`@gjsify/timers/promises`,tls:`@gjsify/tls`,tty:`@gjsify/tty`,url:`@gjsify/url`,util:`@gjsify/util`,"util/types":`@gjsify/util/types`,v8:`@gjsify/v8`,vm:`@gjsify/vm`,wasi:`@gjsify/wasi`,sqlite:`@gjsify/sqlite`,worker_threads:`@gjsify/worker_threads`,zlib:`@gjsify/zlib`,"node-fetch":`@gjsify/fetch`,ws:`@gjsify/ws`,"isomorphic-ws":`@gjsify/websocket`},Qg={assert:`@gjsify/assert`,"assert/strict":`@gjsify/assert/strict`,async_hooks:`@gjsify/async_hooks`,buffer:`@gjsify/buffer`,child_process:`@gjsify/empty`,cluster:`@gjsify/empty`,console:`@gjsify/console`,constants:`@gjsify/constants`,crypto:`@gjsify/crypto`,dgram:`@gjsify/empty`,diagnostics_channel:`@gjsify/diagnostics_channel`,dns:`@gjsify/empty`,"dns/promises":`@gjsify/empty`,domain:`@gjsify/domain`,events:`@gjsify/events`,fs:`@gjsify/empty`,"fs/promises":`@gjsify/empty`,http:`@gjsify/empty`,http2:`@gjsify/empty`,https:`@gjsify/empty`,inspector:`@gjsify/empty`,module:`@gjsify/empty`,net:`@gjsify/empty`,os:`@gjsify/os`,path:`@gjsify/path`,"path/posix":`@gjsify/path/posix`,"path/win32":`@gjsify/path/win32`,perf_hooks:`@gjsify/perf_hooks`,process:`@gjsify/process`,punycode:`@gjsify/punycode`,querystring:`@gjsify/querystring`,readline:`@gjsify/empty`,"readline/promises":`@gjsify/empty`,repl:`@gjsify/empty`,stream:`@gjsify/stream`,"stream/web":`@gjsify/stream/web`,"stream/consumers":`@gjsify/stream/consumers`,"stream/promises":`@gjsify/stream/promises`,string_decoder:`@gjsify/string_decoder`,sys:`@gjsify/sys`,timers:`@gjsify/timers`,"timers/promises":`@gjsify/timers/promises`,tls:`@gjsify/empty`,tty:`@gjsify/empty`,url:`@gjsify/url`,util:`@gjsify/util`,"util/types":`@gjsify/util/types`,v8:`@gjsify/empty`,vm:`@gjsify/vm`,wasi:`@gjsify/empty`,sqlite:`@gjsify/empty`,worker_threads:`@gjsify/empty`,zlib:`@gjsify/zlib`,"node-fetch":`@gjsify/empty`,ws:`@gjsify/empty`,"isomorphic-ws":`@gjsify/empty`},$g={child_process:`@gjsify/empty`,cluster:`@gjsify/empty`,dgram:`@gjsify/empty`,dns:`@gjsify/empty`,"dns/promises":`@gjsify/empty`,inspector:`@gjsify/empty`,net:`@gjsify/empty`,tls:`@gjsify/empty`,tty:`@gjsify/empty`,http:`@gjsify/empty`,https:`@gjsify/empty`,http2:`@gjsify/empty`,readline:`@gjsify/empty`,repl:`@gjsify/empty`,v8:`@gjsify/empty`,vm:`@gjsify/empty`,worker_threads:`@gjsify/empty`,perf_hooks:`@gjsify/empty`,diagnostics_channel:`@gjsify/empty`,domain:`@gjsify/empty`,sqlite:`@gjsify/empty`,sys:`@gjsify/empty`,zlib:`@gjsify/empty`,assert:`@gjsify/assert`,"assert/strict":`@gjsify/assert`,async_hooks:`@gjsify/async_hooks`,buffer:`@gjsify/buffer`,module:`@gjsify/module`,crypto:`@gjsify/crypto`,events:`@gjsify/events`,fs:`@gjsify/fs`,"fs/promises":`@gjsify/fs/promises`,os:`@gjsify/os`,path:`@gjsify/path`,"path/posix":`@gjsify/path/posix`,"path/win32":`@gjsify/path/win32`,process:`@gjsify/process`,stream:`@gjsify/stream`,"stream/promises":`@gjsify/stream/promises`,"stream/web":`@gjsify/stream/web`,string_decoder:`@gjsify/string_decoder`,url:`@gjsify/url`,util:`@gjsify/util`,"util/types":`@gjsify/util/types`,querystring:`@gjsify/querystring`,console:`@gjsify/console`,timers:`@gjsify/timers`,"timers/promises":`@gjsify/timers/promises`,"node-fetch":`@gjsify/empty`,ws:`@gjsify/empty`,"isomorphic-ws":`@gjsify/empty`},e_={"abort-controller":`@gjsify/abort-controller`,"compression-streams":`@gjsify/compression-streams`,"dom-events":`@gjsify/dom-events`,"dom-exception":`@gjsify/dom-exception`,"event-target-shim":`@gjsify/dom-events`,"message-channel":`@gjsify/message-channel`,eventsource:`@gjsify/eventsource`,fetch:`@gjsify/fetch`,formdata:`@gjsify/formdata`,"html-image-element":`@gjsify/html-image-element`,webcrypto:`@gjsify/webcrypto`,webgl:`@gjsify/webgl`,websocket:`@gjsify/websocket`,webstorage:`@gjsify/webstorage`,"abort-controller/register":`@gjsify/abort-controller/register`,"compression-streams/register":`@gjsify/compression-streams/register`,"dom-events/register":`@gjsify/dom-events/register`,"dom-events/register/event-target":`@gjsify/dom-events/register/event-target`,"dom-events/register/custom-events":`@gjsify/dom-events/register/custom-events`,"dom-events/register/ui-events":`@gjsify/dom-events/register/ui-events`,"dom-exception/register":`@gjsify/dom-exception/register`,"message-channel/register":`@gjsify/message-channel/register`,"eventsource/register":`@gjsify/eventsource/register`,"websocket/register":`@gjsify/websocket/register`,"fetch/register":`@gjsify/fetch/register`,"fetch/register/fetch":`@gjsify/fetch/register/fetch`,"fetch/register/xhr":`@gjsify/fetch/register/xhr`,"webcrypto/register":`@gjsify/webcrypto/register`,"web-streams/register":`@gjsify/web-streams/register`,"web-streams/register/readable":`@gjsify/web-streams/register/readable`,"web-streams/register/writable":`@gjsify/web-streams/register/writable`,"web-streams/register/transform":`@gjsify/web-streams/register/transform`,"web-streams/register/text-streams":`@gjsify/web-streams/register/text-streams`,"web-streams/register/queuing":`@gjsify/web-streams/register/queuing`,xmlhttprequest:`@gjsify/fetch`,"xmlhttprequest/register":`@gjsify/fetch/register/xhr`,"@gjsify/xmlhttprequest":`@gjsify/fetch`,"@gjsify/xmlhttprequest/register":`@gjsify/fetch/register/xhr`,domparser:`@gjsify/domparser`,"domparser/register":`@gjsify/domparser/register`,webaudio:`@gjsify/webaudio`,"webaudio/register":`@gjsify/webaudio/register`,gamepad:`@gjsify/gamepad`,"gamepad/register":`@gjsify/gamepad/register`,webrtc:`@gjsify/webrtc`,"webrtc/register":`@gjsify/webrtc/register`,"webrtc/register/peer-connection":`@gjsify/webrtc/register/peer-connection`,"webrtc/register/data-channel":`@gjsify/webrtc/register/data-channel`,"webrtc/register/error":`@gjsify/webrtc/register/error`,"webrtc/register/media":`@gjsify/webrtc/register/media`,"webrtc/register/media-devices":`@gjsify/webrtc/register/media-devices`,webassembly:`@gjsify/webassembly`,"webassembly/register":`@gjsify/webassembly/register`,"webassembly/register/promise":`@gjsify/webassembly/register/promise`},t_={"@gjsify/node-globals":`@gjsify/empty`,"@gjsify/node-globals/register":`@gjsify/empty`,"@gjsify/node-globals/register/process":`@gjsify/empty`,"@gjsify/node-globals/register/buffer":`@gjsify/empty`,"@gjsify/node-globals/register/timers":`@gjsify/empty`,"@gjsify/node-globals/register/encoding":`@gjsify/empty`,"@gjsify/node-globals/register/url":`@gjsify/empty`,"@gjsify/node-globals/register/structured-clone":`@gjsify/empty`,"@gjsify/node-globals/register/microtask":`@gjsify/empty`,"@gjsify/web-globals":`@gjsify/empty`,"@gjsify/web-globals/register":`@gjsify/empty`,"@gjsify/web-globals/register/performance":`@gjsify/empty`,"@gjsify/web-globals/register/formdata":`@gjsify/empty`},n_={},r_={"abort-controller":`@gjsify/abort-controller/globals`,"compression-streams":`@gjsify/compression-streams/globals`,"dom-events":`@gjsify/dom-events`,"dom-exception":`@gjsify/dom-exception/globals`,"message-channel":`@gjsify/message-channel/globals`,eventsource:`@gjsify/eventsource`,fetch:`@gjsify/fetch/globals`,formdata:`@gjsify/formdata/globals`,"html-image-element":`@gjsify/html-image-element`,webcrypto:`@gjsify/webcrypto/globals`,webgl:`@gjsify/webgl`,websocket:`@gjsify/websocket/globals`,webstorage:`@gjsify/webstorage`,"abort-controller/register":`@gjsify/empty`,"compression-streams/register":`@gjsify/empty`,"dom-events/register":`@gjsify/empty`,"dom-events/register/event-target":`@gjsify/empty`,"dom-events/register/custom-events":`@gjsify/empty`,"dom-events/register/ui-events":`@gjsify/empty`,"dom-exception/register":`@gjsify/empty`,"message-channel/register":`@gjsify/empty`,"eventsource/register":`@gjsify/empty`,"websocket/register":`@gjsify/empty`,"fetch/register":`@gjsify/empty`,"fetch/register/fetch":`@gjsify/empty`,"fetch/register/xhr":`@gjsify/empty`,"webcrypto/register":`@gjsify/empty`,"web-streams/register":`@gjsify/empty`,"web-streams/register/readable":`@gjsify/empty`,"web-streams/register/writable":`@gjsify/empty`,"web-streams/register/transform":`@gjsify/empty`,"web-streams/register/text-streams":`@gjsify/empty`,"web-streams/register/queuing":`@gjsify/empty`,"@gjsify/abort-controller/register":`@gjsify/empty`,"@gjsify/compression-streams/register":`@gjsify/empty`,"@gjsify/dom-events/register":`@gjsify/empty`,"@gjsify/dom-events/register/event-target":`@gjsify/empty`,"@gjsify/dom-events/register/custom-events":`@gjsify/empty`,"@gjsify/dom-events/register/ui-events":`@gjsify/empty`,"@gjsify/dom-exception/register":`@gjsify/empty`,"@gjsify/message-channel/register":`@gjsify/empty`,"@gjsify/eventsource/register":`@gjsify/empty`,"@gjsify/websocket/register":`@gjsify/empty`,"@gjsify/fetch/register":`@gjsify/empty`,"@gjsify/fetch/register/fetch":`@gjsify/empty`,"@gjsify/fetch/register/xhr":`@gjsify/empty`,"@gjsify/webcrypto/register":`@gjsify/empty`,"@gjsify/web-streams/register":`@gjsify/empty`,"@gjsify/web-streams/register/readable":`@gjsify/empty`,"@gjsify/web-streams/register/writable":`@gjsify/empty`,"@gjsify/web-streams/register/transform":`@gjsify/empty`,"@gjsify/web-streams/register/text-streams":`@gjsify/empty`,"@gjsify/web-streams/register/queuing":`@gjsify/empty`,"@gjsify/dom-elements/register":`@gjsify/empty`,"@gjsify/dom-elements/register/document":`@gjsify/empty`,"@gjsify/dom-elements/register/canvas":`@gjsify/empty`,"@gjsify/dom-elements/register/image":`@gjsify/empty`,"@gjsify/dom-elements/register/observers":`@gjsify/empty`,"@gjsify/dom-elements/register/font-face":`@gjsify/empty`,"@gjsify/dom-elements/register/match-media":`@gjsify/empty`,"@gjsify/dom-elements/register/location":`@gjsify/empty`,"@gjsify/dom-elements/register/navigator":`@gjsify/empty`,"@gjsify/buffer/register":`@gjsify/empty`,xmlhttprequest:`@gjsify/empty`,"xmlhttprequest/register":`@gjsify/empty`,"@gjsify/xmlhttprequest":`@gjsify/empty`,"@gjsify/xmlhttprequest/register":`@gjsify/empty`,domparser:`@gjsify/empty`,"domparser/register":`@gjsify/empty`,"@gjsify/domparser/register":`@gjsify/empty`,webaudio:`@gjsify/empty`,"webaudio/register":`@gjsify/empty`,"@gjsify/webaudio/register":`@gjsify/empty`,gamepad:`@gjsify/empty`,"gamepad/register":`@gjsify/empty`,"@gjsify/gamepad/register":`@gjsify/empty`,webrtc:`@gjsify/empty`,"webrtc/register":`@gjsify/empty`,"webrtc/register/peer-connection":`@gjsify/empty`,"webrtc/register/data-channel":`@gjsify/empty`,"webrtc/register/error":`@gjsify/empty`,"webrtc/register/media":`@gjsify/empty`,"webrtc/register/media-devices":`@gjsify/empty`,"@gjsify/webrtc":`@gjsify/empty`,"@gjsify/webrtc/register":`@gjsify/empty`,"@gjsify/webrtc/register/peer-connection":`@gjsify/empty`,"@gjsify/webrtc/register/data-channel":`@gjsify/empty`,"@gjsify/webrtc/register/error":`@gjsify/empty`,"@gjsify/webrtc/register/media":`@gjsify/empty`,"@gjsify/webrtc/register/media-devices":`@gjsify/empty`,webassembly:`@gjsify/webassembly/globals`,"webassembly/register":`@gjsify/empty`,"webassembly/register/promise":`@gjsify/empty`,"@gjsify/webassembly/register":`@gjsify/empty`,"@gjsify/webassembly/register/promise":`@gjsify/empty`}}),setNodeAliasPrefix,getAliasesGeneralForGjs,getAliasesNodeForGjs,getAliasesWebForGjs,getAliasesGeneralForNode,getAliasesGjsForNode,getAliasesWebForNode,getAliasesForGjs,getAliasesForNode,a_=__esmMin(()=>{i_(),setNodeAliasPrefix=n=>{for(let a in n){if(a.startsWith(`node:`))continue;let S=`node:${a}`;n[S]||(n[S]=n[a])}return n},getAliasesGeneralForGjs=n=>Xg,getAliasesNodeForGjs=n=>setNodeAliasPrefix(Zg),getAliasesWebForGjs=n=>e_,getAliasesGeneralForNode=n=>t_,getAliasesGjsForNode=n=>n_,getAliasesWebForNode=n=>r_,getAliasesForGjs=n=>({...getDerivedAliasesSync(`gjs`),...getAliasesGeneralForGjs(n),...getAliasesNodeForGjs(n),...getAliasesWebForGjs(n)}),getAliasesForNode=n=>({...getDerivedAliasesSync(`node`),...getAliasesGeneralForNode(n),...getAliasesGjsForNode(n),...getAliasesWebForNode(n)}),[...Jg,...Jg.map(n=>`node:${n}`)],[...Yg]}),o_=__commonJSMin$1((n=>{Object.defineProperty(n,"__esModule",{value:!0}),n.splitWhen=n.flatten=void 0;function flatten(n){return n.reduce((n,a)=>[].concat(n,a),[])}n.flatten=flatten;function splitWhen(n,a){let S=[[]],C=0;for(let N of n)a(N)?(C++,S[C]=[]):S[C].push(N);return S}n.splitWhen=splitWhen})),s_=__commonJSMin$1((n=>{Object.defineProperty(n,"__esModule",{value:!0}),n.isEnoentCodeError=void 0;function isEnoentCodeError(n){return n.code===`ENOENT`}n.isEnoentCodeError=isEnoentCodeError})),c_=__commonJSMin$1((n=>{Object.defineProperty(n,"__esModule",{value:!0}),n.createDirentFromStats=void 0;var DirentFromStats=class{constructor(n,a){this.name=n,this.isBlockDevice=a.isBlockDevice.bind(a),this.isCharacterDevice=a.isCharacterDevice.bind(a),this.isDirectory=a.isDirectory.bind(a),this.isFIFO=a.isFIFO.bind(a),this.isFile=a.isFile.bind(a),this.isSocket=a.isSocket.bind(a),this.isSymbolicLink=a.isSymbolicLink.bind(a)}};function createDirentFromStats(n,a){return new DirentFromStats(n,a)}n.createDirentFromStats=createDirentFromStats})),l_=__commonJSMin$1((n=>{Object.defineProperty(n,"__esModule",{value:!0}),n.convertPosixPathToPattern=n.convertWindowsPathToPattern=n.convertPathToPattern=n.escapePosixPath=n.escapeWindowsPath=n.escape=n.removeLeadingDotSegment=n.makeAbsolute=n.unixify=void 0;let a=(Vp(),__toCommonJS(Pp)),S=(ls(),__toCommonJS(Jo)),C=a.platform()===`win32`,N=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g,F=/(\\?)([()[\]{}]|^!|[!+@](?=\())/g,I=/^\\\\([.?])/,H=/\\(?![!()+@[\]{}])/g;function unixify(n){return n.replace(/\\/g,`/`)}n.unixify=unixify;function makeAbsolute(n,a){return S.resolve(n,a)}n.makeAbsolute=makeAbsolute;function removeLeadingDotSegment(n){if(n.charAt(0)===`.`){let a=n.charAt(1);if(a===`/`||a===`\\`)return n.slice(2)}return n}n.removeLeadingDotSegment=removeLeadingDotSegment,n.escape=C?escapeWindowsPath:escapePosixPath;function escapeWindowsPath(n){return n.replace(F,`\\$2`)}n.escapeWindowsPath=escapeWindowsPath;function escapePosixPath(n){return n.replace(N,`\\$2`)}n.escapePosixPath=escapePosixPath,n.convertPathToPattern=C?convertWindowsPathToPattern:convertPosixPathToPattern;function convertWindowsPathToPattern(n){return escapeWindowsPath(n).replace(I,`//$1`).replace(H,`/`)}n.convertWindowsPathToPattern=convertWindowsPathToPattern;function convertPosixPathToPattern(n){return escapePosixPath(n)}n.convertPosixPathToPattern=convertPosixPathToPattern})),u_=__commonJSMin$1(((n,a)=>{
|
|
631
|
+
`+` `.repeat(a)),(function(n){n.DEFAULT={allowTrailingComma:!1}})(Nh||={}),r(Pe,`parse$1`),r(We,`visit`),(function(n){n[n.None=0]=`None`,n[n.UnexpectedEndOfComment=1]=`UnexpectedEndOfComment`,n[n.UnexpectedEndOfString=2]=`UnexpectedEndOfString`,n[n.UnexpectedEndOfNumber=3]=`UnexpectedEndOfNumber`,n[n.InvalidUnicode=4]=`InvalidUnicode`,n[n.InvalidEscapeCharacter=5]=`InvalidEscapeCharacter`,n[n.InvalidCharacter=6]=`InvalidCharacter`})(Ph||={}),(function(n){n[n.OpenBraceToken=1]=`OpenBraceToken`,n[n.CloseBraceToken=2]=`CloseBraceToken`,n[n.OpenBracketToken=3]=`OpenBracketToken`,n[n.CloseBracketToken=4]=`CloseBracketToken`,n[n.CommaToken=5]=`CommaToken`,n[n.ColonToken=6]=`ColonToken`,n[n.NullKeyword=7]=`NullKeyword`,n[n.TrueKeyword=8]=`TrueKeyword`,n[n.FalseKeyword=9]=`FalseKeyword`,n[n.StringLiteral=10]=`StringLiteral`,n[n.NumericLiteral=11]=`NumericLiteral`,n[n.LineCommentTrivia=12]=`LineCommentTrivia`,n[n.BlockCommentTrivia=13]=`BlockCommentTrivia`,n[n.LineBreakTrivia=14]=`LineBreakTrivia`,n[n.Trivia=15]=`Trivia`,n[n.Unknown=16]=`Unknown`,n[n.EOF=17]=`EOF`})(Fh||={}),Ih=Pe,(function(n){n[n.InvalidSymbol=1]=`InvalidSymbol`,n[n.InvalidNumberFormat=2]=`InvalidNumberFormat`,n[n.PropertyNameExpected=3]=`PropertyNameExpected`,n[n.ValueExpected=4]=`ValueExpected`,n[n.ColonExpected=5]=`ColonExpected`,n[n.CommaExpected=6]=`CommaExpected`,n[n.CloseBraceExpected=7]=`CloseBraceExpected`,n[n.CloseBracketExpected=8]=`CloseBracketExpected`,n[n.EndOfFileExpected=9]=`EndOfFileExpected`,n[n.InvalidCommentToken=10]=`InvalidCommentToken`,n[n.UnexpectedEndOfComment=11]=`UnexpectedEndOfComment`,n[n.UnexpectedEndOfString=12]=`UnexpectedEndOfString`,n[n.UnexpectedEndOfNumber=13]=`UnexpectedEndOfNumber`,n[n.InvalidUnicode=14]=`InvalidUnicode`,n[n.InvalidEscapeCharacter=15]=`InvalidEscapeCharacter`,n[n.InvalidCharacter=16]=`InvalidCharacter`})(Lh||={}),Rh=r((n,a)=>Ih(Eh(a,n,`utf8`)),`readJsonc`),zh=Symbol(`implicitBaseUrl`),Bh="${configDir}",Vh=r(()=>{let{findPnpApi:n}=Ro;return n&&n(process.cwd())},`getPnpApi`),Hh=r((n,a,S,C)=>{let N=`resolveFromPackageJsonPath:${n}:${a}:${S}`;if(C!=null&&C.has(N))return C.get(N);let F=Rh(n,C);if(!F)return;let I=a||`tsconfig.json`;if(!S&&F.exports)try{let[n]=v(F.exports,a,[`require`,`types`]);I=n}catch{return!1}else !a&&F.tsconfig&&(I=F.tsconfig);return I=cs.join(n,`..`,I),C?.set(N,I),I},`resolveFromPackageJsonPath`),Uh=`package.json`,Wh=`tsconfig.json`,Gh=r((n,a,S)=>{let C=n;if(n===`..`&&(C=cs.join(C,Wh)),n[0]===`.`&&(C=cs.resolve(a,C)),cs.isAbsolute(C)){if(Th(S,C)){if(Dh(S,C).isFile())return C}else if(!C.endsWith(`.json`)){let n=`${C}.json`;if(Th(S,n))return n}return}let[N,...F]=n.split(`/`),I=N[0]===`@`?`${N}/${F.shift()}`:N,H=F.join(`/`),W=Vh();if(W){let{resolveRequest:C}=W;try{if(I===n){let n=C(cs.join(I,Uh),a);if(n){let a=Hh(n,H,!1,S);if(a&&Th(S,a))return a}}else{let S;try{S=C(n,a,{extensions:[`.json`]})}catch{S=C(cs.join(n,Wh),a)}if(S)return S}}catch{}}let K=Oh(cs.resolve(a),cs.join(`node_modules`,I),S);if(!K||!Dh(S,K).isDirectory())return;let q=cs.join(K,Uh);if(Th(S,q)){let n=Hh(q,H,!1,S);if(n===!1)return;if(n&&Th(S,n)&&Dh(S,n).isFile())return n}let Y=cs.join(K,H),X=Y.endsWith(`.json`);if(!X){let n=`${Y}.json`;if(Th(S,n))return n}if(Th(S,Y)){if(Dh(S,Y).isDirectory()){let n=cs.join(Y,Uh);if(Th(S,n)){let a=Hh(n,``,!0,S);if(a&&Th(S,a))return a}let a=cs.join(Y,Wh);if(Th(S,a))return a}else if(X)return Y}},`resolveExtendsPath`),Kh=r((n,a)=>Ah(cs.relative(n,a)),`pathRelative`),qh=[`files`,`include`,`exclude`],Jh=r((n,a,S)=>{let C=cs.join(a,S);return h$1(cs.relative(n,C))||`./`},`resolveAndRelativize`),Yh=r((n,a,S)=>{let C=cs.relative(n,a);return C?h$1(`${C}/${S.startsWith(`./`)?S.slice(2):S}`):S},`prefixPattern`),Xh=r((n,a,S,C)=>{let N=Gh(n,a,C);if(!N)throw Error(`File '${n}' not found.`);if(S.has(N))throw Error(`Circularity detected while resolving configuration: ${N}`);S.add(N);let F=cs.dirname(N),I=Qh(N,C,S);delete I.references;let{compilerOptions:H}=I;if(H){let{baseUrl:n}=H;n&&!n.startsWith(Bh)&&(H.baseUrl=Jh(a,F,n));let{outDir:S}=H;S&&!S.startsWith(Bh)&&(H.outDir=Jh(a,F,S));let{declarationDir:C}=H;C&&!C.startsWith(Bh)&&(H.declarationDir=Jh(a,F,C));let{rootDir:N}=H;N&&!N.startsWith(Bh)&&(H.rootDir=Jh(a,F,N));let{rootDirs:I}=H;I&&(H.rootDirs=I.map(n=>n.startsWith(Bh)?n:Jh(a,F,n)));let{typeRoots:W}=H;W&&(H.typeRoots=W.map(n=>n.startsWith(Bh)?n:Jh(a,F,n)))}for(let n of qh){let S=I[n];S&&(I[n]=S.map(n=>n.startsWith(Bh)?n:Yh(a,F,n)))}return I},`resolveExtends`),Zh=[`outDir`,`declarationDir`],Qh=r((n,a,S=new Set)=>{let C;try{C=Rh(n,a)||{}}catch{throw Error(`Cannot resolve tsconfig at path: ${n}`)}if(typeof C!=`object`)throw SyntaxError(`Failed to parse tsconfig at: ${n}`);let N=cs.dirname(n);if(C.compilerOptions){let{compilerOptions:n}=C;n.paths&&!n.baseUrl&&(n[zh]=N)}if(C.extends){let n=Array.isArray(C.extends)?C.extends:[C.extends];delete C.extends;for(let F of n.reverse()){let n=Xh(F,N,new Set(S),a),I={...n,...C,compilerOptions:{...n.compilerOptions,...C.compilerOptions}};n.watchOptions&&(I.watchOptions={...n.watchOptions,...C.watchOptions}),C=I}}if(C.compilerOptions){let{compilerOptions:n}=C;for(let a of[`baseUrl`,`rootDir`]){let S=n[a];S&&!S.startsWith(Bh)&&(n[a]=Kh(N,cs.resolve(N,S)))}for(let a of Zh){let S=n[a];S&&(Array.isArray(C.exclude)||(C.exclude=Zh.map(a=>n[a]).filter(Boolean)),S.startsWith(Bh)||(S=Ah(S)),n[a]=S)}}else C.compilerOptions={};if(C.include&&=C.include.map(h$1),C.files&&=C.files.map(n=>n.startsWith(Bh)?n:Ah(n)),C.watchOptions){let{watchOptions:n}=C;n.excludeDirectories&&=n.excludeDirectories.map(n=>h$1(cs.resolve(N,n))),n.excludeFiles&&=n.excludeFiles.map(n=>h$1(cs.resolve(N,n))),n.watchFile&&=n.watchFile.toLowerCase(),n.watchDirectory&&=n.watchDirectory.toLowerCase(),n.fallbackPolling&&=n.fallbackPolling.toLowerCase()}return C},`_parseTsconfig`),$h=r((n,a)=>{if(n.startsWith(Bh))return h$1(cs.join(a,n.slice(12)))},`interpolateConfigDir`),eg=[`outDir`,`declarationDir`,`outFile`,`rootDir`,`baseUrl`,`tsBuildInfoFile`],tg=r(n=>{if(n.strict)for(let a of[`noImplicitAny`,`noImplicitThis`,`strictNullChecks`,`strictFunctionTypes`,`strictBindCallApply`,`strictPropertyInitialization`,`strictBuiltinIteratorReturn`,`alwaysStrict`,`useUnknownInCatchVariables`])n[a]===void 0&&(n[a]=!0);if(n.composite&&(n.declaration??=!0,n.incremental??=!0),n.target){let a=n.target.toLowerCase();a===`es2015`&&(a=`es6`),n.target=a,a===`esnext`&&(n.module??=`es6`,n.useDefineForClassFields??=!0),(a===`es6`||a===`es2016`||a===`es2017`||a===`es2018`||a===`es2019`||a===`es2020`||a===`es2021`||a===`es2022`||a===`es2023`||a===`es2024`)&&(n.module??=`es6`),(a===`es2022`||a===`es2023`||a===`es2024`)&&(n.useDefineForClassFields??=!0)}if(n.module){let a=n.module.toLowerCase();if(a===`es2015`&&(a=`es6`),n.module=a,(a===`es6`||a===`es2020`||a===`es2022`||a===`esnext`||a===`none`||a===`system`||a===`umd`||a===`amd`)&&(n.moduleResolution??=`classic`),a===`system`&&(n.allowSyntheticDefaultImports??=!0),(a===`node16`||a===`node18`||a===`node20`||a===`nodenext`||a===`preserve`)&&(n.esModuleInterop??=!0,n.allowSyntheticDefaultImports??=!0),(a===`node16`||a===`node18`||a===`node20`||a===`nodenext`)&&(n.moduleDetection??=`force`),a===`node16`&&(n.target??=`es2022`,n.moduleResolution??=`node16`),a===`node18`&&(n.target??=`es2022`,n.moduleResolution??=`node16`),a===`node20`&&(n.target??=`es2023`,n.moduleResolution??=`node16`,n.resolveJsonModule??=!0),a===`nodenext`&&(n.target??=`esnext`,n.moduleResolution??=`nodenext`,n.resolveJsonModule??=!0),a===`node16`||a===`node18`||a===`node20`||a===`nodenext`){let a=n.target;(a===`es3`||a===`es2022`||a===`es2023`||a===`es2024`||a===`esnext`)&&(n.useDefineForClassFields??=!0)}a===`preserve`&&(n.moduleResolution??=`bundler`)}if(n.moduleResolution){let a=n.moduleResolution.toLowerCase();a===`node`&&(a=`node10`),n.moduleResolution=a,(a===`node16`||a===`nodenext`||a===`bundler`)&&(n.resolvePackageJsonExports??=!0,n.resolvePackageJsonImports??=!0),a===`bundler`&&(n.allowSyntheticDefaultImports??=!0,n.resolveJsonModule??=!0)}n.jsx&&=n.jsx.toLowerCase(),n.moduleDetection&&=n.moduleDetection.toLowerCase(),n.importsNotUsedAsValues&&=n.importsNotUsedAsValues.toLowerCase(),n.newLine&&=n.newLine.toLowerCase(),n.esModuleInterop&&(n.allowSyntheticDefaultImports??=!0),n.verbatimModuleSyntax&&(n.isolatedModules??=!0,n.preserveConstEnums??=!0),n.isolatedModules&&(n.preserveConstEnums??=!0),n.rewriteRelativeImportExtensions&&(n.allowImportingTsExtensions??=!0),n.lib&&=n.lib.map(n=>n.toLowerCase()),n.checkJs&&(n.allowJs??=!0)},`normalizeCompilerOptions`),ng=r((n,a=new Map)=>{let S=cs.resolve(n),C=Qh(S,a),N=cs.dirname(S),{compilerOptions:F}=C;if(F){for(let n of eg){let a=F[n];if(a){let S=$h(a,N);F[n]=S?Kh(N,S):a}}for(let n of[`rootDirs`,`typeRoots`]){let a=F[n];a&&(F[n]=a.map(n=>{let a=$h(n,N);return a?Kh(N,a):Ah(n)}))}let{paths:n}=F;if(n)for(let a of Object.keys(n))n[a]=n[a].map(n=>$h(n,N)??n);tg(F)}for(let n of qh){let a=C[n];a&&(C[n]=a.map(n=>$h(n,N)??n))}return C},`parseTsconfig`),rg=Object.defineProperty,ig=r((n,a)=>rg(n,`name`,{value:a,configurable:!0}),`s`),ag=ig(n=>{let a=``;for(let S=0;S<n.length;S+=1){let C=n[S],N=C.toUpperCase();a+=C===N?C.toLowerCase():N}return a},`invertCase`),og=new Map,sg=ig((n,a)=>{let S=cs.join(n,`.is-fs-case-sensitive-test-${process.pid}`);try{return a.writeFileSync(S,``),!a.existsSync(ag(S))}finally{try{a.unlinkSync(S)}catch{}}},`checkDirectoryCaseWithWrite`),cg=ig((n,a,S)=>{try{return sg(n,S)}catch(n){if(a===void 0)return sg(Bp.tmpdir(),S);throw n}},`checkDirectoryCaseWithFallback`),lg=ig((n,a=qc,S=!0)=>{let C=n??process.cwd();if(S&&og.has(C))return og.get(C);let N,F=ag(C);return N=F!==C&&a.existsSync(C)?!a.existsSync(F):cg(C,n,a),S&&og.set(C,N),N},`isFsCaseSensitive`),{join:ug}=cs.posix,dg={ts:[`.ts`,`.tsx`,`.d.ts`],cts:[`.cts`,`.d.cts`],mts:[`.mts`,`.d.mts`]},fg=r(n=>{let a=[...dg.ts],S=[...dg.cts],C=[...dg.mts];return n!=null&&n.allowJs&&(a.push(`.js`,`.jsx`),S.push(`.cjs`),C.push(`.mjs`)),[...a,...S,...C]},`getSupportedExtensions`),pg=r(n=>{let a=[];if(!n)return a;let{outDir:S,declarationDir:C}=n;return S&&a.push(S),C&&a.push(C),a},`getDefaultExcludeSpec`),mg=r(n=>n.replaceAll(/[.*+?^${}()|[\]\\]/g,String.raw`\$&`),`escapeForRegexp`),hg=`(?!(${[`node_modules`,`bower_components`,`jspm_packages`].join(`|`)})(/|$))`,gg=/(?:^|\/)[^.*?]+$/,_g=`**/*`,vg=`[^/]`,yg=`[^./]`,bg=process.platform===`win32`,xg=r(({config:n,path:a},S=lg())=>{if(`extends`in n)throw Error(`tsconfig#extends must be resolved. Use getTsconfig or parseTsconfig to resolve it.`);if(!cs.isAbsolute(a))throw Error(`The tsconfig path must be absolute`);bg&&(a=h$1(a));let C=cs.dirname(a),{files:N,include:F,exclude:I,compilerOptions:H}=n,W=r(n=>cs.isAbsolute(n)?n:ug(C,n),`resolvePattern`),K=N?.map(W),q=fg(H),Y=S?``:`i`,X=(I||pg(H)).map(n=>{let a=mg(W(n)).replaceAll(String.raw`\*\*/`,`(.+/)?`).replaceAll(String.raw`\*`,`${vg}*`).replaceAll(String.raw`\?`,vg);return RegExp(`^${a}($|/)`,Y)}),te=N||F?F:[_g],ne=te?te.map(n=>{let a=W(n);gg.test(a)&&(a=ug(a,_g));let S=mg(a).replaceAll(String.raw`/\*\*`,`(/${hg}${yg}${vg}*)*?`).replaceAll(/(\/)?\\\*/g,(n,a)=>{let S=`(${yg}|(\\.(?!min\\.js$))?)*`;return a?`/${hg}${yg}${S}`:S}).replaceAll(/(\/)?\\\?/g,(n,a)=>{let S=vg;return a?`/${hg}${S}`:S});return RegExp(`^${S}$`,Y)}):void 0;return a=>{if(!cs.isAbsolute(a))throw Error(`filePath must be absolute`);if(bg&&(a=h$1(a)),K!=null&&K.includes(a)||!(!q.some(n=>a.endsWith(n))||X.some(n=>n.test(a)))&&ne&&ne.some(n=>n.test(a)))return n}},`createFilesMatcher`),Sg=r((n,a,S)=>{let C=cs.resolve(n),N=h$1(n);for(;;){let n=Oh(N,a,S);if(!n)return;let F=cs.resolve(n),I=ng(F,S),H={path:h$1(F),config:I};if(xg(H)(C))return H;let W=cs.dirname(n),K=cs.dirname(W);if(K===W)return;N=K}},`findConfigApplicable`),Cg=r((n=process.cwd(),a=`tsconfig.json`,S=new Map,C=!1)=>C?Sg(n,a,S)?.path:Oh(h$1(n),a,S),`findTsconfig`),wg=r((n=process.cwd(),a=`tsconfig.json`,S=new Map,C=!1)=>{if(!C){let C=Cg(n,a,S);return C?{path:C,config:ng(C,S)}:null}return Sg(n,a,S)??null},`getTsconfig`),Tg=/\*/g,Eg=r((n,a)=>{let S=n.match(Tg);if(S&&S.length>1)throw Error(a)},`assertStarCount`),Dg=r(n=>{if(n.includes(`*`)){let[a,S]=n.split(`*`);return{prefix:a,suffix:S}}return n},`parsePattern`),Og=r(({prefix:n,suffix:a},S)=>S.startsWith(n)&&S.endsWith(a),`isPatternMatch`),kg=r((n,a,S)=>Object.entries(n).map(([n,C])=>(Eg(n,`Pattern '${n}' can have at most one '*' character.`),{pattern:Dg(n),substitutions:C.map(C=>{if(Eg(C,`Substitution '${C}' in pattern '${n}' can have at most one '*' character.`),!a&&!kh.test(C)&&!cs.isAbsolute(C))throw Error(`Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?`);return cs.resolve(S,C)})})),`parsePaths`),r(n=>{let{compilerOptions:a}=n.config;if(!a)return null;let{baseUrl:S,paths:C}=a;if(!S&&!C)return null;let N=zh in a&&a[zh],F=cs.resolve(cs.dirname(n.path),S||N||`.`),I=C?kg(C,S,F):[];return n=>{if(kh.test(n))return[];let a=[];for(let S of I){if(S.pattern===n)return S.substitutions.map(h$1);typeof S.pattern!=`string`&&a.push(S)}let C,N=-1;for(let S of a)Og(S.pattern,n)&&S.pattern.prefix.length>N&&(N=S.pattern.prefix.length,C=S);if(!C)return S?[h$1(cs.join(F,n))]:[];let H=n.slice(C.pattern.prefix.length,n.length-C.pattern.suffix.length);return C.substitutions.map(n=>h$1(n.replace(`*`,H)))}},`createPathsMatcher`)});function defaultSearchPlaces(n){return[`package.json`,`.${n}rc`,`.${n}rc.json`,`.${n}rc.yaml`,`.${n}rc.yml`,`.${n}rc.js`,`.${n}rc.ts`,`.${n}rc.mjs`,`.${n}rc.cjs`,`${n}.config.js`,`${n}.config.ts`,`${n}.config.mjs`,`${n}.config.cjs`]}function merge(n,...a){for(let S of a)if(S)for(let a of Object.keys(S)){let C=n[a],N=S[a];N!==void 0&&(isPlainObject$1(C)&&isPlainObject$1(N)?merge(C,N):n[a]=N)}return n}function isPlainObject$1(n){return typeof n==`object`&&!!n&&!Array.isArray(n)&&Object.getPrototypeOf(n)===Object.prototype}function readDottedPath(n,a){if(!a.includes(`.`))return n[a];let S=n;for(let n of a.split(`.`)){if(typeof S!=`object`||!S)return;S=S[n]}return S}var jg,Config,Mg=__esmMin(()=>{Ae(),Zd(),jg=tm(),uh(),Ag(),__name$1(isPlainObject$1,`isPlainObject`),Config=class{loadOptions={};constructor(n={}){Object.keys(n).length&&(this.loadOptions=n)}async load(n){let a=await(0,jg.cosmiconfig)(Xd,{...this.loadOptions,searchPlaces:(this.loadOptions.searchPlaces??defaultSearchPlaces(`gjsify`)).filter(n=>n!==`package.json`)}).search(n),S={};try{let a=await this.readPackageJSON(n);isPlainObject$1(a?.gjsify)&&merge(S,a.gjsify)}catch{}return a?.config&&isPlainObject$1(a.config)&&merge(S,a.config),S.bundler||={},S.library||={},S.typescript||={},{config:S,filepath:a?.filepath??``,isEmpty:!a&&Object.keys(S).length===3}}async readPackageJSON(n){return n=await resolvePackageJSON(n),await readPackageJSON(n)}async readTSConfig(n){return wg(n)?.config||{}}async forBuild(n){let a=await this.load(process.cwd()),S={...a.config},C=a.filepath||process.cwd(),N=await this.readPackageJSON(C),F=await this.readTSConfig(C);if(F.reflection||=n.reflection,S.verbose=n.verbose||!1,S.exclude=n.exclude||[],n.consoleShim!==void 0&&(S.consoleShim=n.consoleShim),n.globals!==void 0&&(S.globals=n.globals),n.shebang!==void 0&&(S.shebang=n.shebang),n.excludeGlobals){let a=(Array.isArray(n.excludeGlobals)?n.excludeGlobals.join(`,`):String(n.excludeGlobals)).split(`,`).map(n=>n.trim()).filter(Boolean);a.length&&(S.excludeGlobals=[...S.excludeGlobals??[],...a])}merge(S.library??={},N,S.library),merge(S.typescript??={},F,S.typescript);let parseKvPairs=(n,a)=>{let S={};for(let C of n){let n=C.indexOf(`=`);if(n===-1)throw Error(`Invalid --${a} value '${C}'. Expected KEY=VALUE.`);let N=C.slice(0,n).trim(),F=C.slice(n+1);if(!N)throw Error(`Invalid --${a} value '${C}'. Empty key.`);S[N]=F}return S},I=parseKvPairs(n.define??[],`define`),H=parseKvPairs(n.alias??[],`alias`);Object.keys(H).length&&(S.aliases={...S.aliases,...H});let W={};if(S.defineFromPackageJson)for(let[n,a]of Object.entries(S.defineFromPackageJson)){if(!a||typeof a.field!=`string`||!a.field)throw Error(`gjsify config: defineFromPackageJson["${n}"] is missing a "field" string`);let S=readDottedPath(N,a.field);W[n]=S===void 0?`undefined`:JSON.stringify(S)}let K={};if(S.defineFromEnv)for(let[n,a]of Object.entries(S.defineFromEnv)){if(!a||typeof a.env!=`string`||!a.env)throw Error(`gjsify config: defineFromEnv["${n}"] is missing an "env" string`);let S=process.env[a.env],C=S===void 0?a.default:S;K[n]=C===void 0?`undefined`:JSON.stringify(C)}let q=S.bundler??={},Y=q.output??={},X=q.transform??={};return n.entryPoints?.length&&(q.input=n.entryPoints),q.input||=[`src/index.ts`],n.outfile!==void 0&&(Y.file=n.outfile),n.outdir!==void 0&&(Y.dir=n.outdir),n.format!==void 0&&(Y.format=n.format),n.minify!==void 0&&(Y.minify=n.minify),Y.minify===void 0&&(Y.minify=!0),Y.minify===!0&&(Y.keepNames=!0),n.logLevel&&(q.logLevel={silent:`silent`,error:`warn`,warning:`warn`,warn:`warn`,info:`info`,debug:`debug`,verbose:`debug`}[n.logLevel]??`warn`),n.external?.length&&(q.external=[...Array.isArray(q.external)?q.external:[],...n.external]),(Object.keys(I).length||Object.keys(W).length||Object.keys(K).length)&&(X.define={...X.define,...W,...K,...I}),S.verbose&&ke.debug(`configData`,S),S}}});function discoverWorkspaces(n,a={}){let S=Qo(n,`package.json`);if(!existsSync(S))throw Error(`@gjsify/workspace: no package.json at ${n}`);let C=JSON.parse(readFileSync(S,`utf-8`)),N=a.patterns??extractWorkspacePatterns(C),F=N.filter(n=>!n.startsWith(`!`)),I=N.filter(n=>n.startsWith(`!`)).map(n=>globToRegex$1(n.slice(1))),H=[];a.includeRoot&&C.name&&H.push({location:n,relativeLocation:`.`,name:C.name,version:C.version??`0.0.0`,manifest:C,private:C.private===!0});for(let a of F)for(let S of expandPattern(n,a)){let a=$o(n,S).split(os).join(`/`);if(I.some(n=>n.test(a)))continue;let C=Qo(S,`package.json`);if(!existsSync(C))continue;let N;try{N=JSON.parse(readFileSync(C,`utf-8`))}catch{continue}N.name&&H.push({location:S,relativeLocation:a,name:N.name,version:N.version??`0.0.0`,manifest:N,private:N.private===!0})}return H.sort((n,a)=>n.relativeLocation.localeCompare(a.relativeLocation)),H}function buildDependencyGraph(n,a={}){let S=a.includeDev??!1,C=a.includePeer??!1,N=a.includeOptional??!0,F=indexByName(n),I=new Map;for(let a of n){let n=new Set,H=a.manifest;for(let a of[H.dependencies,S?H.devDependencies:void 0,C?H.peerDependencies:void 0,N?H.optionalDependencies:void 0])if(a)for(let[S,C]of Object.entries(a))typeof C==`string`&&C.startsWith(`workspace:`)&&F.has(S)&&n.add(S);I.set(a.name,n)}return{edges:I,byName:F}}function topologicalSort(n){let a=new Map;for(let S of n.edges.keys())a.set(S,0);for(let S of n.edges.values())for(let n of S)a.has(n)&&a.set(n,(a.get(n)??0)+1);let S=new Map,C=new Map;for(let a of n.edges.keys())S.set(a,new Set),C.set(a,0);for(let[a,N]of n.edges)for(let n of N)S.has(n)&&(S.get(n).add(a),C.set(a,(C.get(a)??0)+1));let N=[];for(let[n,a]of C)a===0&&N.push(n);N.sort();let F=[];for(;N.length>0;){let a=N.shift(),I=n.byName.get(a);I&&F.push(I);let H=S.get(a);if(H){let n=[];for(let a of H){let S=(C.get(a)??1)-1;C.set(a,S),S===0&&n.push(a)}n.sort(),N.push(...n)}}if(F.length!==C.size){let n=[...C.entries()].filter(([,n])=>n>0).map(([n])=>n);throw Error(`@gjsify/workspace: dependency cycle detected involving ${n.join(`, `)}`)}return F}function buildReverseDependencyGraph(n,a={}){let S=buildDependencyGraph(n,a),C=new Map;for(let n of S.edges.keys())C.set(n,new Set);for(let[n,a]of S.edges)for(let S of a){let a=C.get(S);a&&a.add(n)}return{edges:C,byName:S.byName}}function affectedClosure(n,a){let S=new Set,C=[];for(let N of a)n.byName.has(N)&&(S.has(N)||(S.add(N),C.push(N)));for(;C.length>0;){let a=C.shift(),N=n.edges.get(a);if(N)for(let n of N)S.has(n)||(S.add(n),C.push(n))}return S}function workspacesForChangedFiles(n,a,S){let C=new Set,N=[],F={children:new Map};for(let a of n){if(a.relativeLocation===`.`||a.relativeLocation===``)continue;let n=a.relativeLocation.split(`/`).filter(Boolean),S=F;for(let a of n){let n=S.children.get(a);n||(n={children:new Map},S.children.set(a,n)),S=n}S.ws=a.name}for(let n of S){if(!n)continue;let a=n.replace(/\\/g,`/`).split(`/`).filter(Boolean),S=F,I;for(let n of a){if(S=S.children.get(n),!S)break;S.ws&&(I=S.ws)}I?C.add(I):N.push(n)}return{matched:C,unmatched:N}}function filterWorkspaces(n,a){let S=a.include?.map(globToRegex$1),C=a.exclude?.map(globToRegex$1);return n.filter(n=>!(a.noPrivate&&n.private||S&&S.length>0&&!S.some(a=>a.test(n.name))||C&&C.some(a=>a.test(n.name))))}function extractWorkspacePatterns(n){let a=n.workspaces;return a?Array.isArray(a)?a:a.packages??[]:[]}function expandPattern(n,a){let S=a.split(`/`).filter(Boolean),C=[Yo(n)];for(let n of S){let a=[];for(let S of C)if(n===`*`){let n=[];try{n=readdirSync(S)}catch{continue}for(let C of n){if(C.startsWith(`.`))continue;let n=Qo(S,C);try{statSync(n).isDirectory()&&a.push(n)}catch{}}}else if(n.includes(`*`)){let C=globToRegex$1(n),N=[];try{N=readdirSync(S)}catch{continue}for(let n of N){if(n.startsWith(`.`)||!C.test(n))continue;let N=Qo(S,n);try{statSync(N).isDirectory()&&a.push(N)}catch{}}}else{let C=Qo(S,n);if(existsSync(C))try{statSync(C).isDirectory()&&a.push(C)}catch{}}C=a}return C}function globToRegex$1(n){let a=n.replace(/[.+?^${}()|[\]\\]/g,`\\$&`).replace(/\*/g,`[^/]*`);return RegExp(`^${a}$`)}function indexByName(n){let a=new Map;for(let S of n)a.set(S.name,S);return a}var Ng=__esmMin(()=>{Jc(),ls(),__name$1(globToRegex$1,`globToRegex`)});function readPackageJson$4(n){try{return JSON.parse(readFileSync(n,`utf-8`))}catch{return null}}function findWorkspaceRoot(n){let a=n;for(let S=0;S<12;S++){let S=Qo(a,`package.json`);if(existsSync(S)&&readPackageJson$4(S)?.workspaces!==void 0)try{let S=discoverWorkspaces(a);if(a===n||S.some(a=>a.location===n))return a}catch{}let C=Yo(a,`..`);if(C===a)break;a=C}return null}var Pg=__esmMin(()=>{Jc(),ls(),Ng(),__name$1(readPackageJson$4,`readPackageJson`)});function resolveNpmPackage(n,a={}){let S=a.cwd??process.cwd(),C=process.env.GJSIFY_NODE_PATH;if(C)for(let a of C.split(`:`).filter(Boolean)){let S=tryResolveFromDir(n,Yo(a));if(S)return S}let N=tryResolveFromDir(n,S);if(N)return N;let F=findWorkspaceRoot(S);if(F&&F!==S){let a=tryResolveFromDir(n,F);if(a)return a}if(a.bundleUrl)try{return createRequire(a.bundleUrl).resolve(n)}catch{}let I=Yo(S,`..`);for(let a=0;a<8;a++){let a=tryResolveFromDir(n,I);if(a)return a;let S=Yo(I,`..`);if(S===I)break;I=S}return null}function tryResolveFromDir(n,a){try{let S=pathToFileURL(Qo(a,`__gjsify_resolve__.js`)).href;return createRequire(S).resolve(n)}catch{return null}}var Fg=__esmMin(()=>{zo(),fn(),ls(),Pg()});async function loadNpmRolldown(){if(globalThis.imports?.gi!==void 0)throw Error("gjsify build: no usable bundler engine under GJS — `@gjsify/rolldown-native` is not loadable (its JS facade lib/ is not built, or its prebuild typelib is missing from GI_TYPELIB_PATH), and the npm `rolldown` engine is a Rust napi crate that cannot run under GJS. Build the facade first (`gjsify workspace @gjsify/rolldown-native build` under Node) or run this build under Node.");return(await import(resolveImportTargetForGjs(`rolldown`))).rolldown}function resolveImportTargetForGjs(n){if(globalThis.imports?.gi===void 0)return n;let a=resolveNpmPackage(n,{bundleUrl:import.meta.url});return a?pathToFileURL(a).href:n}async function bundleToChunks(n){if(await shouldUseNative()){let a=await tryLoadNative();if(!a)throw Error(`@gjsify/rolldown-native not loadable`);let S=n.rolldownInput.plugins??[],C=[];for(let n of S)isPluginObject(n)&&C.push(toNativePlugin(n));let N=liftTransformExtras(stripUnserializable({...n.rolldownInput,input:normalizeInputForNative(n.rolldownInput.input),format:n.format}));delete N.plugins;let F=await a.bundleWithPlugins(N,C);reportNativeWarnings(F,n.rolldownInput);let I=[];for(let n of F.output)n.type===`chunk`&&I.push(n.code);return I}let a=await(await loadNpmRolldown())(n.rolldownInput);try{let S=await a.generate({format:n.format,minify:!1,sourcemap:!1}),C=[];for(let n of S.output)n.type===`chunk`&&C.push(n.code);return C}finally{await a.close()}}async function runWatch(n){if(await shouldUseNative())throw Error("`gjsify build --watch` requires the npm `rolldown` engine. The native engine (`@gjsify/rolldown-native`) does not expose a watcher API. Run the watch loop under Node (`node lib/index.js build … --watch`) or set `GJSIFY_BUNDLER=npm`.");let a=await import(resolveImportTargetForGjs(`rolldown`)),S=n.output??{};return a.watch({...n,output:S})}async function runBundle(n){if(await shouldUseNative())return await runNativeBundle(n);let a=await(await loadNpmRolldown())(n);try{return await a.write(n.output??{})}finally{await a.close()}}async function shouldUseNative(){let n=(globalThis.process?.env??{}).GJSIFY_BUNDLER;if(n===`npm`)return!1;if(n===`native`){if(!await tryLoadNative())throw Error(`GJSIFY_BUNDLER=native but @gjsify/rolldown-native is not loadable (no prebuild for this architecture, or not running under GJS).`);return!0}return globalThis.imports?.gi===void 0?!1:await tryLoadNative()!==null}function findRolldownNativeDir(n,a){let S=Qo(`node_modules`,`@gjsify`,`rolldown-native`,`package.json`),C=[n];a&&a!==n&&C.push(a);for(let n of C){let a=n;for(let n=0;n<12;n++){if(existsSync(Qo(a,S)))return Qo(a,`node_modules`,`@gjsify`,`rolldown-native`);let n=Yo(a,`..`);if(n===a)break;a=n}}return null}async function tryLoadNative(){return Ig||(Ig=(async()=>{let n=globalThis.imports?.gi!==void 0;if(!n)return null;try{let a=`@gjsify/rolldown-native`,S=a;if(n){let n=ts(new URL(import.meta.url).pathname),C=resolveNpmPackage(a,{bundleUrl:import.meta.url}),N=C?null:(()=>{let S=findRolldownNativeDir(process.cwd(),n);if(!S)return null;try{return createRequire(pathToFileURL(Qo(S,`__gjsify_resolve__.js`)).href).resolve(a)}catch{return null}})();S=pathToFileURL(C??N??createRequire(import.meta.url).resolve(a)).href}let C=await import(S);return C.hasNativeRolldown()?C:null}catch{return null}})(),Ig)}async function runNativeBundle(n){let a=await tryLoadNative();if(!a)throw Error(`@gjsify/rolldown-native not loadable`);let S=n.plugins??[],C=[];for(let n of S)isPluginObject(n)&&C.push(toNativePlugin(n));let{output:N,plugins:F,...I}=n,H=liftTransformExtras(stripUnserializable({...I,...N,input:normalizeInputForNative(n.input)}));globalThis.process?.env?.GJSIFY_DEBUG_NATIVE_OPTS&&ke.error(`[gjsify-bundler-pick] native opts JSON:`,JSON.stringify(H));let W=await a.bundleWithPlugins(H,C);reportNativeWarnings(W,n);let K=n.output??{},q=K.dir??(K.file?ts(K.file):process.cwd());q&&await Cc.mkdir(q,{recursive:!0});for(let n of W.output){let a=K.file&&n.type===`chunk`&&W.output.length===1?K.file:Qo(q,n.fileName);await Cc.mkdir(ts(a),{recursive:!0}),n.type===`chunk`?(await Cc.writeFile(a,n.code,`utf8`),typeof n.map==`string`&&await Cc.writeFile(`${a}.map`,n.map,`utf8`)):n.sourceText!==void 0&&await Cc.writeFile(a,n.sourceText,`utf8`)}return synthRolldownOutput(W)}function reportNativeWarnings(n,a){if(a.logLevel===`silent`||!Array.isArray(n.warnings)||n.warnings.length===0)return;let S=new Set;for(let a of n.warnings)S.has(a)||(S.add(a),ke.warn(`[gjsify-bundler] ${a}`))}function stripUnserializable(n){let a={};for(let[S,C]of Object.entries(n)){if(typeof C==`function`){if(!Lg.has(S)){Lg.add(S);let n=S===`external`?" Function `external` predicates are NOT supported by the native engine — pass exact names as a string array and/or enforce shape rules via a resolveId plugin returning `{ external: true }` (see externalsPlugin in @gjsify/rolldown-plugin-gjsify).":` Function-valued options do not survive the JSON boundary to the Rust core.`;ke.warn(`[gjsify-bundler] dropping non-serializable option "${S}" for the native rolldown engine — behavior may diverge from npm rolldown.${n}`)}continue}if(S===`external`&&Array.isArray(C)){let n=C.find(n=>typeof n!=`string`);if(n!==void 0)throw Error(`gjsify build: \`external\` entries must be exact string names under the native rolldown engine (got ${n instanceof RegExp?n.toString():typeof n}). RegExp/function externals are only supported by npm rolldown — use exact names or a resolveId plugin returning \`{ external: true }\`.`);a[S]=C;continue}if(S===`sourcemap`){let n=translateSourcemapOption(C);n!==void 0&&(a[S]=n);continue}a[S]=C}return a}function translateSourcemapOption(n){if(n===!0||n===`file`||n===`File`)return`File`;if(n===`inline`||n===`Inline`)return`Inline`;if(n===`hidden`||n===`Hidden`)return`Hidden`}function liftTransformExtras(n){let a=n.transform;if(!a)return n;let S={},C={...a};for(let n of[`define`,`inject`])n in C&&(S[n]=C[n],delete C[n]);return S.inject!==void 0&&!Array.isArray(S.inject)&&(S.inject=mapToInjectArray(S.inject)),{...n,transform:Object.keys(C).length===0?void 0:C,...S}}function mapToInjectArray(n){let a=[];for(let[S,C]of Object.entries(n))if(typeof C==`string`)a.push({type:`named`,imported:`default`,from:C,alias:S});else{let[n,N]=C;N===`*`?a.push({type:`namespace`,from:n,alias:S}):a.push({type:`named`,from:n,imported:N,alias:S})}return a}function normalizeInputForNative(n){return n===void 0?[]:typeof n==`string`?[{import:n}]:Array.isArray(n)?n.map(n=>typeof n==`string`?{import:n}:n):Object.entries(n).map(([n,a])=>({name:n,import:a}))}function isPluginObject(n){return typeof n==`object`&&!!n&&!Array.isArray(n)}function pickHook(n){if(typeof n==`function`)return{fn:n};if(typeof n==`object`&&n&&`handler`in n){let a=n,S=filterToRegexSource(a.filter?.id),C={fn:a.handler};return S!==void 0&&(C.idFilter=S),C}}function filterToRegexSource(n){if(n!==void 0){if(Array.isArray(n)){let a=n.map(oneToSource).filter(n=>n!==void 0);return a.length===0?void 0:a.length===1?a[0]:`(?:${a.join(`|`)})`}return oneToSource(n)}}function oneToSource(n){if(n instanceof RegExp)return n.source;if(typeof n==`string`)return n.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function toNativePlugin(n){let a={name:typeof n.name==`string`?n.name:`unnamed-plugin`},S={},C=pickHook(n.load);C&&(a.load=C.fn,C.idFilter&&(S.load=C.idFilter));let N=pickHook(n.transform);N&&(a.transform=N.fn,N.idFilter&&(S.transform=N.idFilter));let F=pickHook(n.resolveId);F&&(a.resolveId=F.fn,F.idFilter&&(S.resolveId=F.idFilter));let I=pickHook(n.renderChunk);I&&(a.renderChunk=I.fn);let H=pickHook(n.banner);H&&(a.banner=H.fn);let W=pickHook(n.footer);W&&(a.footer=W.fn);let K=pickHook(n.intro);K&&(a.intro=K.fn);let q=pickHook(n.outro);q&&(a.outro=q.fn);let Y=pickHook(n.buildStart);Y&&(a.buildStart=Y.fn);let X=pickHook(n.buildEnd);X&&(a.buildEnd=X.fn);let te=pickHook(n.generateBundle);te&&(a.generateBundle=te.fn);let ne=pickHook(n.writeBundle);ne&&(a.writeBundle=ne.fn);let re=pickHook(n.closeBundle);return re&&(a.closeBundle=re.fn),Object.keys(S).length>0&&(a.idFilter=S),a}function synthRolldownOutput(n){return{output:n.output.map(n=>n.type===`chunk`?{type:`chunk`,fileName:n.fileName,code:n.code,name:n.name,isEntry:n.isEntry,isDynamicEntry:n.isDynamicEntry,map:n.map??null,sourcemapFileName:n.sourcemapFilename??null,imports:n.imports,dynamicImports:n.dynamicImports,facadeModuleId:null,moduleIds:[],modules:{},exports:[],referencedFiles:[],importedBindings:{}}:{type:`asset`,fileName:n.fileName,names:n.names,originalFileNames:n.originalFileNames,source:n.sourceText??``,needsCodeReference:!1})}}var Ig,Lg,Rg=__esmMin(()=>{Ae(),Jc(),ls(),zo(),fn(),Fg(),Ig=null,Lg=new Set}),zg=__esmMin(()=>{}),Bg=__esmMin(()=>{}),Vg=__esmMin(()=>{}),Hg=__esmMin(()=>{zg(),Bg(),Vg()});function findScanRoots(){let n=[],a=ts(fileURLToPath(import.meta.url));for(let S=0;S<8;S++){let S=Yo(a,`packages`);if(existsSync(S))try{[`node`,`web`,`dom`,`framework`,`infra`].some(n=>existsSync(Qo(S,n)))&&n.push({kind:`workspace`,dir:S})}catch{}let C=Yo(a,`node_modules`,`@gjsify`);existsSync(C)&&n.push({kind:`installed`,dir:C});let N=ts(a);if(N===a)break;a=N}try{let a=Yo(process.cwd(),`node_modules`,`@gjsify`);existsSync(a)&&n.push({kind:`installed`,dir:a})}catch{}return n}function ingestPackageDirSync(n,a){let S=Qo(n,`package.json`);if(existsSync(S))try{let C=readFileSync(S,`utf8`),N=JSON.parse(C),F=typeof N.name==`string`?N.name:null,I=N?.gjsify?.runtimes;if(F&&F.startsWith(`@gjsify/`)&&!a.has(F)&&I&&typeof I==`object`){let S={};for(let n of Wg){let a=I[n];typeof a==`string`&&Ug.has(a)&&(S[n]=a)}let C=existsSync(Qo(n,`globals.mjs`));a.set(F,{name:F,dir:n,runtimes:S,hasGlobals:C})}}catch{}}function getCacheSync(){if(Gg)return Gg;let n=findScanRoots(),a=new Map;if(n.length===0)return Gg=a,Gg;function walkWorkspace(n){let S;try{S=readdirSync(n,{withFileTypes:!0})}catch{return}if(existsSync(Qo(n,`package.json`))){ingestPackageDirSync(n,a);return}for(let a of S)a.isDirectory()&&(a.name===`node_modules`||a.name===`lib`||a.name===`dist`||a.name.startsWith(`.`)||walkWorkspace(Qo(n,a.name)))}function walkInstalled(n){let S;try{S=readdirSync(n,{withFileTypes:!0})}catch{return}for(let C of S)!C.isDirectory()&&!C.isSymbolicLink()||C.name.startsWith(`.`)||ingestPackageDirSync(Qo(n,C.name),a)}for(let a of n)a.kind===`workspace`?walkWorkspace(a.dir):walkInstalled(a.dir);return Gg=a,Gg}function warnOnce(n,a){Kg.has(n)||(Kg.add(n),ke.warn(`[@gjsify/resolve-npm] ${a}`))}function resolveSlot(n,a){let S=n.runtimes[a];if(!S)return null;switch(S){case`polyfill`:case`partial`:return null;case`native`:return n.hasGlobals?`${n.name}/globals`:(warnOnce(`${n.name}-${a}-native-missing-globals`,`${n.name} declares runtimes.${a}="native" but ships no globals.mjs — falling back to @gjsify/empty for --app ${a} builds.`),`@gjsify/empty`);case`none`:return null;default:return null}}function getDerivedAliasesSync(n){if(!Wg.has(n))return{};let a=getCacheSync(),S={};for(let C of a.values()){let a=resolveSlot(C,n);a!==null&&a!==C.name&&(S[C.name]=a)}return S}var Ug,Wg,Gg,Kg,qg=__esmMin(()=>{Ae(),Tc(),Jc(),ls(),fn(),Ug=new Set([`polyfill`,`native`,`partial`,`none`]),Wg=new Set([`gjs`,`node`,`browser`,`nativescript`]),Gg=null,Kg=new Set}),Jg,Yg,Xg,Zg,Qg,$g,e_,t_,n_,r_,i_=__esmMin(()=>{qg(),Jg=`assert.assert/strict.async_hooks.buffer.child_process.cluster.console.constants.crypto.dgram.diagnostics_channel.dns.dns/promises.domain.events.fs.fs/promises.http.http2.https.inspector.module.net.os.path.path/posix.path/win32.perf_hooks.process.punycode.querystring.readline.readline/promises.repl.stream.stream/web.stream/consumers.stream/promises.string_decoder.sys.test.timers.timers/promises.tls.tty.url.util.util/types.v8.vm.wasi.sqlite.worker_threads.zlib`.split(`.`),Yg=[`readable-stream`,`node-fetch`],Xg={jsdom:`@gjsify/empty`,"./polling-xhr.node.js":`./polling-xhr.js`,"./websocket.node.js":`./websocket.js`,"./globals.node.js":`./globals.js`},Zg={assert:`@gjsify/assert`,"assert/strict":`@gjsify/assert/strict`,async_hooks:`@gjsify/async_hooks`,buffer:`@gjsify/buffer`,child_process:`@gjsify/child_process`,cluster:`@gjsify/cluster`,console:`@gjsify/console`,constants:`@gjsify/constants`,crypto:`@gjsify/crypto`,dgram:`@gjsify/dgram`,diagnostics_channel:`@gjsify/diagnostics_channel`,dns:`@gjsify/dns`,"dns/promises":`@gjsify/dns/promises`,domain:`@gjsify/domain`,events:`@gjsify/events`,fs:`@gjsify/fs`,"fs/promises":`@gjsify/fs/promises`,http:`@gjsify/http`,http2:`@gjsify/http2`,https:`@gjsify/https`,inspector:`@gjsify/inspector`,module:`@gjsify/module`,net:`@gjsify/net`,os:`@gjsify/os`,path:`@gjsify/path`,"path/posix":`@gjsify/path/posix`,"path/win32":`@gjsify/path/win32`,perf_hooks:`@gjsify/perf_hooks`,process:`@gjsify/process`,punycode:`@gjsify/punycode`,querystring:`@gjsify/querystring`,readline:`@gjsify/readline`,"readline/promises":`@gjsify/readline/promises`,repl:`@gjsify/repl`,stream:`@gjsify/stream`,"stream/web":`@gjsify/stream/web`,"stream/consumers":`@gjsify/stream/consumers`,"stream/promises":`@gjsify/stream/promises`,string_decoder:`@gjsify/string_decoder`,sys:`@gjsify/sys`,timers:`@gjsify/timers`,"timers/promises":`@gjsify/timers/promises`,tls:`@gjsify/tls`,tty:`@gjsify/tty`,url:`@gjsify/url`,util:`@gjsify/util`,"util/types":`@gjsify/util/types`,v8:`@gjsify/v8`,vm:`@gjsify/vm`,wasi:`@gjsify/wasi`,sqlite:`@gjsify/sqlite`,worker_threads:`@gjsify/worker_threads`,zlib:`@gjsify/zlib`,"node-fetch":`@gjsify/fetch`,ws:`@gjsify/ws`,"isomorphic-ws":`@gjsify/websocket`},Qg={assert:`@gjsify/assert`,"assert/strict":`@gjsify/assert/strict`,async_hooks:`@gjsify/async_hooks`,buffer:`@gjsify/buffer`,child_process:`@gjsify/empty`,cluster:`@gjsify/empty`,console:`@gjsify/console`,constants:`@gjsify/constants`,crypto:`@gjsify/crypto`,dgram:`@gjsify/empty`,diagnostics_channel:`@gjsify/diagnostics_channel`,dns:`@gjsify/empty`,"dns/promises":`@gjsify/empty`,domain:`@gjsify/domain`,events:`@gjsify/events`,fs:`@gjsify/empty`,"fs/promises":`@gjsify/empty`,http:`@gjsify/empty`,http2:`@gjsify/empty`,https:`@gjsify/empty`,inspector:`@gjsify/empty`,module:`@gjsify/empty`,net:`@gjsify/empty`,os:`@gjsify/os`,path:`@gjsify/path`,"path/posix":`@gjsify/path/posix`,"path/win32":`@gjsify/path/win32`,perf_hooks:`@gjsify/perf_hooks`,process:`@gjsify/process`,punycode:`@gjsify/punycode`,querystring:`@gjsify/querystring`,readline:`@gjsify/empty`,"readline/promises":`@gjsify/empty`,repl:`@gjsify/empty`,stream:`@gjsify/stream`,"stream/web":`@gjsify/stream/web`,"stream/consumers":`@gjsify/stream/consumers`,"stream/promises":`@gjsify/stream/promises`,string_decoder:`@gjsify/string_decoder`,sys:`@gjsify/sys`,timers:`@gjsify/timers`,"timers/promises":`@gjsify/timers/promises`,tls:`@gjsify/empty`,tty:`@gjsify/empty`,url:`@gjsify/url`,util:`@gjsify/util`,"util/types":`@gjsify/util/types`,v8:`@gjsify/empty`,vm:`@gjsify/vm`,wasi:`@gjsify/empty`,sqlite:`@gjsify/empty`,worker_threads:`@gjsify/empty`,zlib:`@gjsify/zlib`,"node-fetch":`@gjsify/empty`,ws:`@gjsify/empty`,"isomorphic-ws":`@gjsify/empty`},$g={child_process:`@gjsify/empty`,cluster:`@gjsify/empty`,dgram:`@gjsify/empty`,dns:`@gjsify/empty`,"dns/promises":`@gjsify/empty`,inspector:`@gjsify/empty`,net:`@gjsify/empty`,tls:`@gjsify/empty`,tty:`@gjsify/empty`,http:`@gjsify/empty`,https:`@gjsify/empty`,http2:`@gjsify/empty`,readline:`@gjsify/empty`,repl:`@gjsify/empty`,v8:`@gjsify/empty`,vm:`@gjsify/empty`,worker_threads:`@gjsify/empty`,perf_hooks:`@gjsify/empty`,diagnostics_channel:`@gjsify/empty`,domain:`@gjsify/empty`,sqlite:`@gjsify/empty`,sys:`@gjsify/empty`,zlib:`@gjsify/empty`,assert:`@gjsify/assert`,"assert/strict":`@gjsify/assert`,async_hooks:`@gjsify/async_hooks`,buffer:`@gjsify/buffer`,module:`@gjsify/module`,crypto:`@gjsify/crypto`,events:`@gjsify/events`,fs:`@gjsify/fs`,"fs/promises":`@gjsify/fs/promises`,os:`@gjsify/os`,path:`@gjsify/path`,"path/posix":`@gjsify/path/posix`,"path/win32":`@gjsify/path/win32`,process:`@gjsify/process`,stream:`@gjsify/stream`,"stream/promises":`@gjsify/stream/promises`,"stream/web":`@gjsify/stream/web`,string_decoder:`@gjsify/string_decoder`,url:`@gjsify/url`,util:`@gjsify/util`,"util/types":`@gjsify/util/types`,querystring:`@gjsify/querystring`,console:`@gjsify/console`,timers:`@gjsify/timers`,"timers/promises":`@gjsify/timers/promises`,"node-fetch":`@gjsify/empty`,ws:`@gjsify/empty`,"isomorphic-ws":`@gjsify/empty`},e_={"abort-controller":`@gjsify/abort-controller`,"compression-streams":`@gjsify/compression-streams`,"dom-events":`@gjsify/dom-events`,"dom-exception":`@gjsify/dom-exception`,"event-target-shim":`@gjsify/dom-events`,"message-channel":`@gjsify/message-channel`,eventsource:`@gjsify/eventsource`,fetch:`@gjsify/fetch`,formdata:`@gjsify/formdata`,"html-image-element":`@gjsify/html-image-element`,webcrypto:`@gjsify/webcrypto`,webgl:`@gjsify/webgl`,websocket:`@gjsify/websocket`,webstorage:`@gjsify/webstorage`,"abort-controller/register":`@gjsify/abort-controller/register`,"compression-streams/register":`@gjsify/compression-streams/register`,"dom-events/register":`@gjsify/dom-events/register`,"dom-events/register/event-target":`@gjsify/dom-events/register/event-target`,"dom-events/register/custom-events":`@gjsify/dom-events/register/custom-events`,"dom-events/register/ui-events":`@gjsify/dom-events/register/ui-events`,"dom-exception/register":`@gjsify/dom-exception/register`,"message-channel/register":`@gjsify/message-channel/register`,"eventsource/register":`@gjsify/eventsource/register`,"websocket/register":`@gjsify/websocket/register`,"fetch/register":`@gjsify/fetch/register`,"fetch/register/fetch":`@gjsify/fetch/register/fetch`,"fetch/register/xhr":`@gjsify/fetch/register/xhr`,"webcrypto/register":`@gjsify/webcrypto/register`,"web-streams/register":`@gjsify/web-streams/register`,"web-streams/register/readable":`@gjsify/web-streams/register/readable`,"web-streams/register/writable":`@gjsify/web-streams/register/writable`,"web-streams/register/transform":`@gjsify/web-streams/register/transform`,"web-streams/register/text-streams":`@gjsify/web-streams/register/text-streams`,"web-streams/register/queuing":`@gjsify/web-streams/register/queuing`,xmlhttprequest:`@gjsify/fetch`,"xmlhttprequest/register":`@gjsify/fetch/register/xhr`,"@gjsify/xmlhttprequest":`@gjsify/fetch`,"@gjsify/xmlhttprequest/register":`@gjsify/fetch/register/xhr`,domparser:`@gjsify/domparser`,"domparser/register":`@gjsify/domparser/register`,webaudio:`@gjsify/webaudio`,"webaudio/register":`@gjsify/webaudio/register`,gamepad:`@gjsify/gamepad`,"gamepad/register":`@gjsify/gamepad/register`,webrtc:`@gjsify/webrtc`,"webrtc/register":`@gjsify/webrtc/register`,"webrtc/register/peer-connection":`@gjsify/webrtc/register/peer-connection`,"webrtc/register/data-channel":`@gjsify/webrtc/register/data-channel`,"webrtc/register/error":`@gjsify/webrtc/register/error`,"webrtc/register/media":`@gjsify/webrtc/register/media`,"webrtc/register/media-devices":`@gjsify/webrtc/register/media-devices`,webassembly:`@gjsify/webassembly`,"webassembly/register":`@gjsify/webassembly/register`,"webassembly/register/promise":`@gjsify/webassembly/register/promise`},t_={"@gjsify/node-globals":`@gjsify/empty`,"@gjsify/node-globals/register":`@gjsify/empty`,"@gjsify/node-globals/register/process":`@gjsify/empty`,"@gjsify/node-globals/register/buffer":`@gjsify/empty`,"@gjsify/node-globals/register/timers":`@gjsify/empty`,"@gjsify/node-globals/register/encoding":`@gjsify/empty`,"@gjsify/node-globals/register/url":`@gjsify/empty`,"@gjsify/node-globals/register/structured-clone":`@gjsify/empty`,"@gjsify/node-globals/register/microtask":`@gjsify/empty`,"@gjsify/web-globals":`@gjsify/empty`,"@gjsify/web-globals/register":`@gjsify/empty`,"@gjsify/web-globals/register/performance":`@gjsify/empty`,"@gjsify/web-globals/register/formdata":`@gjsify/empty`},n_={},r_={"abort-controller":`@gjsify/abort-controller/globals`,"compression-streams":`@gjsify/compression-streams/globals`,"dom-events":`@gjsify/dom-events`,"dom-exception":`@gjsify/dom-exception/globals`,"message-channel":`@gjsify/message-channel/globals`,eventsource:`@gjsify/eventsource`,fetch:`@gjsify/fetch/globals`,formdata:`@gjsify/formdata/globals`,"html-image-element":`@gjsify/html-image-element`,webcrypto:`@gjsify/webcrypto/globals`,webgl:`@gjsify/webgl`,websocket:`@gjsify/websocket/globals`,webstorage:`@gjsify/webstorage`,"abort-controller/register":`@gjsify/empty`,"compression-streams/register":`@gjsify/empty`,"dom-events/register":`@gjsify/empty`,"dom-events/register/event-target":`@gjsify/empty`,"dom-events/register/custom-events":`@gjsify/empty`,"dom-events/register/ui-events":`@gjsify/empty`,"dom-exception/register":`@gjsify/empty`,"message-channel/register":`@gjsify/empty`,"eventsource/register":`@gjsify/empty`,"websocket/register":`@gjsify/empty`,"fetch/register":`@gjsify/empty`,"fetch/register/fetch":`@gjsify/empty`,"fetch/register/xhr":`@gjsify/empty`,"webcrypto/register":`@gjsify/empty`,"web-streams/register":`@gjsify/empty`,"web-streams/register/readable":`@gjsify/empty`,"web-streams/register/writable":`@gjsify/empty`,"web-streams/register/transform":`@gjsify/empty`,"web-streams/register/text-streams":`@gjsify/empty`,"web-streams/register/queuing":`@gjsify/empty`,"@gjsify/abort-controller/register":`@gjsify/empty`,"@gjsify/compression-streams/register":`@gjsify/empty`,"@gjsify/dom-events/register":`@gjsify/empty`,"@gjsify/dom-events/register/event-target":`@gjsify/empty`,"@gjsify/dom-events/register/custom-events":`@gjsify/empty`,"@gjsify/dom-events/register/ui-events":`@gjsify/empty`,"@gjsify/dom-exception/register":`@gjsify/empty`,"@gjsify/message-channel/register":`@gjsify/empty`,"@gjsify/eventsource/register":`@gjsify/empty`,"@gjsify/websocket/register":`@gjsify/empty`,"@gjsify/fetch/register":`@gjsify/empty`,"@gjsify/fetch/register/fetch":`@gjsify/empty`,"@gjsify/fetch/register/xhr":`@gjsify/empty`,"@gjsify/webcrypto/register":`@gjsify/empty`,"@gjsify/web-streams/register":`@gjsify/empty`,"@gjsify/web-streams/register/readable":`@gjsify/empty`,"@gjsify/web-streams/register/writable":`@gjsify/empty`,"@gjsify/web-streams/register/transform":`@gjsify/empty`,"@gjsify/web-streams/register/text-streams":`@gjsify/empty`,"@gjsify/web-streams/register/queuing":`@gjsify/empty`,"@gjsify/dom-elements/register":`@gjsify/empty`,"@gjsify/dom-elements/register/document":`@gjsify/empty`,"@gjsify/dom-elements/register/canvas":`@gjsify/empty`,"@gjsify/dom-elements/register/image":`@gjsify/empty`,"@gjsify/dom-elements/register/observers":`@gjsify/empty`,"@gjsify/dom-elements/register/font-face":`@gjsify/empty`,"@gjsify/dom-elements/register/match-media":`@gjsify/empty`,"@gjsify/dom-elements/register/location":`@gjsify/empty`,"@gjsify/dom-elements/register/navigator":`@gjsify/empty`,"@gjsify/buffer/register":`@gjsify/empty`,xmlhttprequest:`@gjsify/empty`,"xmlhttprequest/register":`@gjsify/empty`,"@gjsify/xmlhttprequest":`@gjsify/empty`,"@gjsify/xmlhttprequest/register":`@gjsify/empty`,domparser:`@gjsify/empty`,"domparser/register":`@gjsify/empty`,"@gjsify/domparser/register":`@gjsify/empty`,webaudio:`@gjsify/empty`,"webaudio/register":`@gjsify/empty`,"@gjsify/webaudio/register":`@gjsify/empty`,gamepad:`@gjsify/empty`,"gamepad/register":`@gjsify/empty`,"@gjsify/gamepad/register":`@gjsify/empty`,webrtc:`@gjsify/empty`,"webrtc/register":`@gjsify/empty`,"webrtc/register/peer-connection":`@gjsify/empty`,"webrtc/register/data-channel":`@gjsify/empty`,"webrtc/register/error":`@gjsify/empty`,"webrtc/register/media":`@gjsify/empty`,"webrtc/register/media-devices":`@gjsify/empty`,"@gjsify/webrtc":`@gjsify/empty`,"@gjsify/webrtc/register":`@gjsify/empty`,"@gjsify/webrtc/register/peer-connection":`@gjsify/empty`,"@gjsify/webrtc/register/data-channel":`@gjsify/empty`,"@gjsify/webrtc/register/error":`@gjsify/empty`,"@gjsify/webrtc/register/media":`@gjsify/empty`,"@gjsify/webrtc/register/media-devices":`@gjsify/empty`,webassembly:`@gjsify/webassembly/globals`,"webassembly/register":`@gjsify/empty`,"webassembly/register/promise":`@gjsify/empty`,"@gjsify/webassembly/register":`@gjsify/empty`,"@gjsify/webassembly/register/promise":`@gjsify/empty`}}),setNodeAliasPrefix,getAliasesGeneralForGjs,getAliasesNodeForGjs,getAliasesWebForGjs,getAliasesGeneralForNode,getAliasesGjsForNode,getAliasesWebForNode,getAliasesForGjs,getAliasesForNode,a_=__esmMin(()=>{i_(),setNodeAliasPrefix=n=>{for(let a in n){if(a.startsWith(`node:`))continue;let S=`node:${a}`;n[S]||(n[S]=n[a])}return n},getAliasesGeneralForGjs=n=>Xg,getAliasesNodeForGjs=n=>setNodeAliasPrefix(Zg),getAliasesWebForGjs=n=>e_,getAliasesGeneralForNode=n=>t_,getAliasesGjsForNode=n=>n_,getAliasesWebForNode=n=>r_,getAliasesForGjs=n=>({...getDerivedAliasesSync(`gjs`),...getAliasesGeneralForGjs(n),...getAliasesNodeForGjs(n),...getAliasesWebForGjs(n)}),getAliasesForNode=n=>({...getDerivedAliasesSync(`node`),...getAliasesGeneralForNode(n),...getAliasesGjsForNode(n),...getAliasesWebForNode(n)}),[...Jg,...Jg.map(n=>`node:${n}`)],[...Yg]}),o_=__commonJSMin$1((n=>{Object.defineProperty(n,"__esModule",{value:!0}),n.splitWhen=n.flatten=void 0;function flatten(n){return n.reduce((n,a)=>[].concat(n,a),[])}n.flatten=flatten;function splitWhen(n,a){let S=[[]],C=0;for(let N of n)a(N)?(C++,S[C]=[]):S[C].push(N);return S}n.splitWhen=splitWhen})),s_=__commonJSMin$1((n=>{Object.defineProperty(n,"__esModule",{value:!0}),n.isEnoentCodeError=void 0;function isEnoentCodeError(n){return n.code===`ENOENT`}n.isEnoentCodeError=isEnoentCodeError})),c_=__commonJSMin$1((n=>{Object.defineProperty(n,"__esModule",{value:!0}),n.createDirentFromStats=void 0;var DirentFromStats=class{constructor(n,a){this.name=n,this.isBlockDevice=a.isBlockDevice.bind(a),this.isCharacterDevice=a.isCharacterDevice.bind(a),this.isDirectory=a.isDirectory.bind(a),this.isFIFO=a.isFIFO.bind(a),this.isFile=a.isFile.bind(a),this.isSocket=a.isSocket.bind(a),this.isSymbolicLink=a.isSymbolicLink.bind(a)}};function createDirentFromStats(n,a){return new DirentFromStats(n,a)}n.createDirentFromStats=createDirentFromStats})),l_=__commonJSMin$1((n=>{Object.defineProperty(n,"__esModule",{value:!0}),n.convertPosixPathToPattern=n.convertWindowsPathToPattern=n.convertPathToPattern=n.escapePosixPath=n.escapeWindowsPath=n.escape=n.removeLeadingDotSegment=n.makeAbsolute=n.unixify=void 0;let a=(Vp(),__toCommonJS(Pp)),S=(ls(),__toCommonJS(Jo)),C=a.platform()===`win32`,N=/(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g,F=/(\\?)([()[\]{}]|^!|[!+@](?=\())/g,I=/^\\\\([.?])/,H=/\\(?![!()+@[\]{}])/g;function unixify(n){return n.replace(/\\/g,`/`)}n.unixify=unixify;function makeAbsolute(n,a){return S.resolve(n,a)}n.makeAbsolute=makeAbsolute;function removeLeadingDotSegment(n){if(n.charAt(0)===`.`){let a=n.charAt(1);if(a===`/`||a===`\\`)return n.slice(2)}return n}n.removeLeadingDotSegment=removeLeadingDotSegment,n.escape=C?escapeWindowsPath:escapePosixPath;function escapeWindowsPath(n){return n.replace(F,`\\$2`)}n.escapeWindowsPath=escapeWindowsPath;function escapePosixPath(n){return n.replace(N,`\\$2`)}n.escapePosixPath=escapePosixPath,n.convertPathToPattern=C?convertWindowsPathToPattern:convertPosixPathToPattern;function convertWindowsPathToPattern(n){return escapeWindowsPath(n).replace(I,`//$1`).replace(H,`/`)}n.convertWindowsPathToPattern=convertWindowsPathToPattern;function convertPosixPathToPattern(n){return escapePosixPath(n)}n.convertPosixPathToPattern=convertPosixPathToPattern})),u_=__commonJSMin$1(((n,a)=>{
|
|
632
632
|
/*!
|
|
633
633
|
* is-extglob <https://github.com/jonschlinkert/is-extglob>
|
|
634
634
|
*
|
|
@@ -789,7 +789,7 @@ jobs:
|
|
|
789
789
|
cache-key: ${n.cacheKey}
|
|
790
790
|
`}var zj,Bj=__esmMin(()=>{Ae(),Jc(),ls(),Mg(),Ej(),zj={command:`ci`,description:`Scaffold .github/workflows/flatpak.yml using the flathub-infra container + flatpak-builder@v6 action.`,builder:n=>n.option(`manifest`,{description:`Manifest path the workflow points at (default: <app-id>.json)`,type:`string`,normalize:!0}).option(`bundle`,{description:`Bundle filename produced by the action (default: <app-id>.flatpak)`,type:`string`,normalize:!0}).option(`runtime-image`,{description:"Container image override. Default derived from gjsify.flatpak.runtime + runtimeVersion (e.g. `ghcr.io/flathub-infra/flatpak-github-actions:gnome-50`).",type:`string`}).option(`branches`,{description:`Branches the workflow runs on push for (default: main)`,type:`string`,array:!0}).option(`out`,{description:`Output path`,type:`string`,default:`.github/workflows/flatpak.yml`,normalize:!0}).option(`cache-key`,{description:"Override the action `cache-key` (default: `flatpak-builder-${{ github.sha }}`)",type:`string`}).option(`force`,{description:`Overwrite an existing workflow file`,type:`boolean`,default:!1}).option(`verbose`,{description:`Print resolved fields`,type:`boolean`,default:!1}),handler:async n=>{let a=process.cwd(),S=(await new Config().forBuild({}).catch(()=>({}))).flatpak??{},C=readPackageJson(a),N=S.appId??(looksLikeAppId(C.name)?C.name:void 0);if(!N)throw Error(`gjsify flatpak ci: no app id available. Set gjsify.flatpak.appId in package.json or rename the package to a reverse-DNS id.`);let F=n.manifest??`${N}.json`,I=n.bundle??`${N}.flatpak`,{runtime:H,runtimeVersion:W}=resolveRuntime(S,{}),K=n.runtimeImage??S.ciContainer??defaultCiContainer(H,W),q=n.branches??S.ciBranches??[`main`],Y=n.cacheKey??"flatpak-builder-${{ github.sha }}",X=Yo(a,n.out??`.github/workflows/flatpak.yml`);if(existsSync(X)&&!n.force){if(readFileSync(X,`utf-8`)===renderWorkflow({manifest:F,bundle:I,runtimeImage:K,branches:q,cacheKey:Y})){ke.log(`[gjsify flatpak ci] ${X} already up to date`);return}throw Error(`gjsify flatpak ci: ${X} exists with different content. Pass --force to overwrite.`)}let te=renderWorkflow({manifest:F,bundle:I,runtimeImage:K,branches:q,cacheKey:Y});mkdirSync(ts(X),{recursive:!0}),writeFileSync(X,te,`utf-8`),n.verbose&&ke.log(`[gjsify flatpak ci] runtime-image=${K} manifest=${F} bundle=${I}`),ke.log(`[gjsify flatpak ci] wrote ${X}`)}}});function resolveAppId(n,a,S){if(a.appId)return a.appId;try{let n=readPackageJson(S);if(looksLikeAppId(n.name))return n.name}catch{}if(n)return n.replace(/\.json$/,``)}function resolveManifestPath(n,a,S){if(n)return Yo(S,n);if(a)return Yo(S,`${a}.json`);let C=readdirSync(S).filter(n=>n.endsWith(`.json`)&&!n.startsWith(`package`));if(C.length===1)return Yo(S,C[0]);throw Error(`gjsify flatpak check: no manifest path given and could not auto-detect. Pass the manifest as a positional argument.`)}function runLinter(n,a,S){return new Promise(C=>{let N=spawn(n,a,{stdio:S?`inherit`:[`ignore`,`pipe`,`pipe`]}),F=``,I=``;S||(N.stdout?.setEncoding(`utf-8`),N.stderr?.setEncoding(`utf-8`),N.stdout?.on(`data`,n=>{F+=n}),N.stderr?.on(`data`,n=>{I+=n})),N.on(`error`,a=>{let S=a;S.code===`ENOENT`?ke.error(`[gjsify flatpak check] ${n} not found in PATH.\nInstall via:\n flatpak install -y flathub org.flatpak.Builder\n alias ${n}="flatpak run --command=${n} org.flatpak.Builder"`):ke.error(`[gjsify flatpak check] ${n} failed to spawn: ${S.message}`),C(!1)}),N.on(`exit`,N=>{let H=N===0,W=H?`OK`:`FAIL`;ke.log(`[gjsify flatpak check] ${W}: ${n} ${a.join(` `)}`),!H&&!S&&(F.trim()&&ke.log(F.trimEnd()),I.trim()&&ke.error(I.trimEnd())),C(H)})})}var Vj,Hj=__esmMin(()=>{Ae(),Jc(),ls(),nC(),Ej(),Mg(),Vj={command:`check [manifest]`,description:`Run Flathub pre-submission linters: appstreamcli validate + flatpak-builder-lint.`,builder:n=>n.positional(`manifest`,{description:"Path to the Flatpak manifest. Auto-detects `<app-id>.json` if omitted.",type:`string`,normalize:!0}).option(`repo`,{description:"Built ostree-repo path. If given, also runs `flatpak-builder-lint repo`.",type:`string`,normalize:!0}).option(`metainfo`,{description:"MetaInfo XML path. Default: `data/<app-id>.metainfo.xml.in`.",type:`string`,normalize:!0}).option(`appstream`,{description:"Run `appstreamcli validate --strict` (default: true).",type:`boolean`,default:!0}).option(`builder-lint`,{description:"Run `flatpak-builder-lint manifest` (default: true).",type:`boolean`,default:!0}).option(`verbose`,{description:`Stream linter stdout/stderr verbatim.`,type:`boolean`,default:!1}),handler:async n=>{let a=(await new Config().forBuild({}).catch(()=>({}))).flatpak??{},S=process.cwd(),C=resolveAppId(n.manifest,a,S),N=resolveManifestPath(n.manifest,C,S),F=Yo(S,n.metainfo??`data/${C??`unknown`}.metainfo.xml.in`),I=0;if(n.appstream!==!1&&(existsSync(F)?await runLinter(`appstreamcli`,[`validate`,`--strict`,F],n.verbose??!1)||I++:ke.warn(`[gjsify flatpak check] skipping appstreamcli — ${F} not found`)),n.builderLint!==!1){if(!existsSync(N)){ke.error(`[gjsify flatpak check] manifest not found: ${N}`),process.exit(1);return}await runLinter(`flatpak-builder-lint`,[`manifest`,N],n.verbose??!1)||I++,n.repo&&(await runLinter(`flatpak-builder-lint`,[`repo`,Yo(S,n.repo)],n.verbose??!1)||I++)}I>0&&(ke.error(`\n[gjsify flatpak check] ${I} check(s) failed.`),process.exit(1)),ke.log(`[gjsify flatpak check] all checks passed.`)}}});async function resolveLatestTag$1(n,a){try{let{stdout:S}=await Uj(`git`,[`describe`,`--tags`,`--abbrev=0`],{cwd:n});return a&&ke.log(`[gjsify flatpak sync-flathub] resolved latest tag → ${S.trim()}`),S.trim()||null}catch{return null}}async function resolveCommitForTag(n,a,S){try{let{stdout:C}=await Uj(`git`,[`rev-list`,`-n`,`1`,a],{cwd:n}),N=C.trim();if(!N)throw Error(`empty rev-list output`);return S&&ke.log(`[gjsify flatpak sync-flathub] resolved ${a} → ${N}`),N}catch(n){throw Error(`[gjsify flatpak sync-flathub] tag ${a} not found locally. Run \`git fetch --tags\` or pass --commit <sha>.\n underlying error: ${n instanceof Error?n.message:String(n)}`)}}function normaliseBranchSegment(n){return n.replace(/^v/,``).replace(/[^A-Za-z0-9._-]/g,`-`)}function flathubCacheRoot(){return Qo(process.env.XDG_CACHE_HOME||Qo(homedir(),`.cache`),`gjsify`,`flathub-sync`)}async function ensureClone(n,a,S){if(existsSync(Qo(n,`.git`))){S&&ke.log(`[gjsify flatpak sync-flathub] reusing clone at ${n}`),await gitInRepo(n,[`fetch`,`origin`],S);let a=await detectDefaultBranch(n,S);await gitInRepo(n,[`checkout`,a],S),await gitInRepo(n,[`reset`,`--hard`,`origin/${a}`],S);return}mkdirSync(Yo(n,`..`),{recursive:!0});let C=`https://github.com/${a}.git`;S&&ke.log(`[gjsify flatpak sync-flathub] git clone ${C} ${n}`);try{await Uj(`git`,[`clone`,C,n])}catch(n){throw n?.code===`ENOENT`?Error("[gjsify flatpak sync-flathub] `git` not found. Install git from your distro (Fedora: `dnf install git`, Debian: `apt install git`)."):n}}async function detectDefaultBranch(n,a){try{let{stdout:S}=await Uj(`git`,[`remote`,`show`,`origin`],{cwd:n}),C=S.match(/HEAD branch: (\S+)/);if(C&&C[1]&&C[1]!==`(unknown)`)return a&&ke.log(`[gjsify flatpak sync-flathub] default branch → ${C[1]}`),C[1]}catch{}return`master`}function gitInRepo(n,a,S){return S&&ke.log(`[gjsify flatpak sync-flathub] git ${a.join(` `)} (in ${n})`),new Promise((S,C)=>{let N=spawn(`git`,a,{cwd:n,stdio:`inherit`});N.on(`error`,n=>{n.code===`ENOENT`?C(Error("[gjsify flatpak sync-flathub] `git` not found. Install it from your distro.")):C(n)}),N.on(`exit`,n=>{n===0?S():C(Error(`git ${a[0]} exited ${n}`))})})}function ghCreate(n,a,S,C,N,F){let I=[`pr`,`create`,`--repo`,a,`--head`,S,`--title`,`Update to ${C}`,`--body`,N];return F&&ke.log(`[gjsify flatpak sync-flathub] gh ${I.join(` `)} (in ${n})`),new Promise((a,S)=>{let C=spawn(`gh`,I,{cwd:n,stdio:`inherit`});C.on(`error`,n=>{n.code===`ENOENT`?S(Error("[gjsify flatpak sync-flathub] `gh` (GitHub CLI) not found. Install via `dnf install gh` (Fedora), `apt install gh` (Debian/Ubuntu), or `flatpak install -y flathub com.github.cli`.")):S(n)}),C.on(`exit`,n=>{n===0?a():S(Error(`gh pr create exited ${n}`))})})}function editManifest(n,a){let S=JSON.parse(n),C=S.modules??[];if(C.length===0)throw Error(`[gjsify flatpak sync-flathub] manifest has no modules`);let N=C[0].sources??[];if(N.length===0)throw Error(`[gjsify flatpak sync-flathub] modules[0] has no sources`);let F=a.sourceIndex??N.findIndex(n=>n.type===`git`);if(F<0||F>=N.length)throw Error(`[gjsify flatpak sync-flathub] no git source found in modules[0].sources (use --source-index <n>)`);let I=N[F];if(I.type!==`git`)throw Error(`[gjsify flatpak sync-flathub] modules[0].sources[${F}].type is "${I.type}", expected "git"`);I.tag=a.tag,I.commit=a.commit,I[`x-checker-data`]||={type:`git`,"tag-pattern":`^v(\\d+\\.\\d+\\.\\d+)$`,"version-scheme":`semantic`};let H=detectIndent$1(n);return JSON.stringify(S,null,H)+(n.endsWith(`
|
|
791
791
|
`)?`
|
|
792
|
-
`:``)}function detectIndent$1(n){let a=n.match(/^\{\n( +)/);return a?a[1].length:2}var Uj,Wj,Gj=__esmMin(()=>{Ae(),Jc(),ls(),Vp(),nC(),Zs(),Mg(),Ej(),Uj=promisify(execFile),Wj={command:`sync-flathub`,description:`Update the per-app Flathub tracking-repo manifest to a new git tag + commit. Clones, edits, commits, optionally opens a PR.`,builder:n=>n.version(!1).option(`version`,{description:"Git tag to sync to. Default: `git describe --tags --abbrev=0` in cwd.",type:`string`}).option(`app-id`,{description:"Reverse-DNS app id. Default: `gjsify.flatpak.appId`.",type:`string`}).option(`flathub-repo`,{description:"Flathub tracking-repo (owner/name). Default: `flathub/<appId>`.",type:`string`}).option(`commit`,{description:"Commit SHA to pin. Default: resolved via `git rev-list -n 1 <version>` in cwd.",type:`string`}).option(`branch`,{description:"Branch name in the flathub-repo. Default: `update-to-<version>`.",type:`string`}).option(`source-index`,{description:"Index into modules[0].sources[] to update (when manifest has multiple sources). Default: first `type: git` source.",type:`number`}).option(`pr`,{description:"After commit + push, open a PR via `gh pr create`. Pass `--no-pr` to skip and stop after push.",type:`boolean`,default:!0}).option(`dry-run`,{description:`Show what would be edited; touch no files, run no git commands.`,type:`boolean`,default:!1}).option(`verbose`,{description:`Echo every git / gh invocation before running.`,type:`boolean`,default:!1}),handler:async n=>{let a=process.cwd(),S=(await new Config().forBuild({}).catch(()=>({}))).flatpak??{},C=n.appId??S.appId??readPackageJson(a).name;if(!C)throw Error(`[gjsify flatpak sync-flathub] no app id available — pass --app-id or set gjsify.flatpak.appId.`);let N=n.flathubRepo??S.flathubRepo??`flathub/${C}`,F=n.version??await resolveLatestTag$1(a,n.verbose);if(!F)throw Error(`[gjsify flatpak sync-flathub] no version resolved — pass --version vX.Y.Z or create a git tag locally.`);let I=n.commit??await resolveCommitForTag(a,F,n.verbose),H=n.branch??`update-to-${normaliseBranchSegment(F)}`;if(ke.log(`[gjsify flatpak sync-flathub] appId=${C}`),ke.log(`[gjsify flatpak sync-flathub] flathubRepo=${N}`),ke.log(`[gjsify flatpak sync-flathub] version=${F}`),ke.log(`[gjsify flatpak sync-flathub] commit=${I}`),ke.log(`[gjsify flatpak sync-flathub] branch=${H}`),n.dryRun){ke.log(`[gjsify flatpak sync-flathub] --dry-run set; not cloning / writing / pushing.`);return}let W=flathubCacheRoot(),K=Qo(W,N.replace(`/`,`__`));mkdirSync(W,{recursive:!0}),await ensureClone(K,N,n.verbose);let q=Qo(K,`${C}.json`);if(!existsSync(q))throw Error(`[gjsify flatpak sync-flathub] Flathub manifest not found at ${q} — wrong appId / wrong flathub-repo?`);let Y=readFileSync(q,`utf-8`),X=editManifest(Y,{tag:F,commit:I,sourceIndex:n.sourceIndex});if(X===Y){ke.log(`[gjsify flatpak sync-flathub] manifest already at ${F} — nothing to do.`);return}if(writeFileSync(q,X,`utf-8`),ke.log(`[gjsify flatpak sync-flathub] manifest patched at ${q}`),await gitInRepo(K,[`checkout`,`-B`,H],n.verbose),await gitInRepo(K,[`add`,`.`],n.verbose),await gitInRepo(K,[`commit`,`-m`,`Update to ${F}`],n.verbose),n.pr===!1){ke.log(`[gjsify flatpak sync-flathub] --no-pr set; branch ${H} committed locally in ${K}.`);return}await gitInRepo(K,[`push`,`-u`,`origin`,H,`--force-with-lease`],n.verbose),await ghCreate(K,N,H,F,`Auto-generated by \`gjsify flatpak sync-flathub\`.\n\n- Version: \`${F}\`\n- Commit: \`${I}\`\n`,n.verbose)}},__name$1(resolveLatestTag$1,`resolveLatestTag`),__name$1(detectIndent$1,`detectIndent`)});async function loadFlathubSource(n,a){let S;if(n.against){if(!existsSync(n.against))throw Error(`[gjsify flatpak diff] --against path ${n.against} does not exist`);S=readFileSync(n.against,`utf-8`)}else S=await fetchFlathubManifest(n.flathubRepo,n.appId,n.verbose);let C;try{C=JSON.parse(S)}catch(n){throw Error(`[gjsify flatpak diff] failed to parse Flathub manifest as JSON: ${n.message}`)}let N=(C.modules??[])[0]?.sources??[];if(N.length===0)return null;let F=a??N.findIndex(n=>n?.type===`git`);return F<0||F>=N.length?null:N[F]??null}async function fetchFlathubManifest(n,a,S){for(let C of[`master`,`main`]){let N=`https://raw.githubusercontent.com/${n}/${C}/${a}.json`;S&&ke.log(`[gjsify flatpak diff] fetch ${N}`);try{let n=await fetch(N);if(n.ok)return await n.text();S&&ke.log(`[gjsify flatpak diff] ${C} → HTTP ${n.status}`)}catch(n){S&&ke.log(`[gjsify flatpak diff] ${C} fetch error: ${n.message}`)}}throw Error(`[gjsify flatpak diff] could not fetch flathub manifest from ${n} on master or main`)}async function resolveLatestTag(n,a){try{let{stdout:S}=await Kj(`git`,[`describe`,`--tags`,`--abbrev=0`],{cwd:n}),C=S.trim();return a&&ke.log(`[gjsify flatpak diff] local latest tag → ${C}`),C||null}catch{return null}}var Kj,qj,Jj=__esmMin(()=>{Ae(),Jc(),nC(),Zs(),Mg(),Ej(),Kj=promisify(execFile),qj={command:`diff`,description:`Compare the per-app Flathub tracking-repo manifest against the local git state and report version / commit drift.`,builder:n=>n.version(!1).option(`version`,{description:"Local version to compare against. Default: `git describe --tags --abbrev=0` in cwd.",type:`string`}).option(`app-id`,{description:"Reverse-DNS app id. Default: `gjsify.flatpak.appId`.",type:`string`}).option(`flathub-repo`,{description:"Flathub tracking-repo (owner/name). Default: `gjsify.flatpak.flathubRepo` or `flathub/<appId>`.",type:`string`}).option(`against`,{description:`Read the Flathub manifest from a local file instead of fetching it. Useful in CI or offline.`,type:`string`}).option(`detail`,{description:`Also print the full Flathub manifest source entry alongside the resolved local version.`,type:`boolean`,default:!1}).option(`source-index`,{description:`Index into modules[0].sources[] to inspect (when the manifest has multiple sources).`,type:`number`}).option(`verbose`,{description:`Echo fetch URL + resolved values.`,type:`boolean`,default:!1}),handler:async n=>{let a=process.cwd(),S=(await new Config().forBuild({}).catch(()=>({}))).flatpak??{},C=n.appId??S.appId??readPackageJson(a).name;if(!C)throw Error(`[gjsify flatpak diff] no app id available — pass --app-id or set gjsify.flatpak.appId.`);let N=n.flathubRepo??S.flathubRepo??`flathub/${C}`,F=n.version??await resolveLatestTag(a,n.verbose),I=await loadFlathubSource({appId:C,flathubRepo:N,against:n.against,verbose:n.verbose},n.sourceIndex),H=I?.tag,W=I?.commit;if(ke.log(`[gjsify flatpak diff] appId=${C}`),ke.log(`[gjsify flatpak diff] flathubRepo=${N}`),ke.log(`[gjsify flatpak diff] flathub: tag=${H??`(missing)`} commit=${W??`(missing)`}`),ke.log(`[gjsify flatpak diff] local: tag=${F??`(none)`}`),n.detail&&I&&(ke.log(`[gjsify flatpak diff] flathub manifest source:`),ke.log(JSON.stringify(I,null,2))),!F){ke.warn("[gjsify flatpak diff] no local git tag found — cut a release (`git tag vX.Y.Z`) or pass --version vX.Y.Z to compare against an explicit value.");return}if(H||(ke.warn("[gjsify flatpak diff] flathub manifest has no `tag` field on the inspected source."),process.exit(1)),H===F){ke.log(`✅ in sync (${F})`);return}ke.log(`❌ drift detected — flathub=${H} vs local=${F}`),ke.log(` run \`gjsify flatpak sync-flathub --version ${F}\` to update the Flathub manifest.`),process.exit(1)}}});function resolveCliEntry(){return Yo(Yo(ts(fileURLToPath(import.meta.url)),`..`,`..`),`index.js`)}async function runNode(n,a){await new Promise((S,C)=>{let N=spawn(`node`,n,{cwd:a,stdio:`inherit`});N.on(`error`,C),N.on(`exit`,a=>{a===0?S():C(Error(`sub-command exited with code ${a}: node ${n.join(` `)}`))})})}var Yj,Xj,Zj=__esmMin(()=>{Ae(),nC(),Zs(),fn(),ls(),Yj=promisify(execFile),Xj={command:`release <version>`,description:"Cut a release end-to-end: regenerate Flathub assets, run linters, create + push the git tag, then open the Flathub PR. Each step delegates to the equivalent `gjsify flatpak <sub>` command.",builder:n=>n.version(!1).positional(`version`,{description:"Release tag, e.g. `v0.6.6`.",type:`string`,demandOption:!0}).option(`skip-init`,{description:"Skip the `flatpak init --force` regen step.",type:`boolean`,default:!1}).option(`skip-check`,{description:"Skip the `flatpak check` linter step.",type:`boolean`,default:!1}).option(`skip-tag`,{description:"Skip the `git tag` + `git push --tags` step (use when the tag was already created out-of-band).",type:`boolean`,default:!1}).option(`push-tag`,{description:`Push the created tag after creating it. Default: true.`,type:`boolean`,default:!0}).option(`flathub-repo`,{description:`Flathub tracking-repo override forwarded to sync-flathub.`,type:`string`}).option(`dry-run`,{description:`Print each step that would run without executing any of them.`,type:`boolean`,default:!1}).option(`verbose`,{description:`Echo every sub-command invocation.`,type:`boolean`,default:!1}),handler:async n=>{let a=typeof n.version==`string`?n.version.trim():``;if(!a)throw Error(`[gjsify flatpak release] missing <version> positional`);let S=resolveCliEntry(),C=process.cwd(),N=[];n.skipInit||N.push({name:`init`,args:[S,`flatpak`,`init`,`--force`]}),n.skipCheck||N.push({name:`check`,args:[S,`flatpak`,`check`]});let F=[S,`flatpak`,`sync-flathub`,`--version`,a];if(n.flathubRepo&&F.push(`--flathub-repo`,n.flathubRepo),n.verbose&&F.push(`--verbose`),ke.log(`[gjsify flatpak release] starting release of ${a}`),n.dryRun){ke.log(`[gjsify flatpak release] --dry-run set; printing plan only:`);for(let n of N)ke.log(` · ${n.name}: node ${n.args.join(` `)}`);n.skipTag||ke.log(` · tag: git tag ${a}${n.pushTag===!1?``:` && git push origin `+a}`),ke.log(` · sync: node ${F.join(` `)}`);return}for(let a of N)n.verbose&&ke.log(`[gjsify flatpak release] step ${a.name}: node ${a.args.join(` `)}`),await runNode(a.args,C),ke.log(`[gjsify flatpak release] ${a.name} ✔`);if(!n.skipTag){n.verbose&&ke.log(`[gjsify flatpak release] git tag ${a}`);try{await Yj(`git`,[`tag`,a],{cwd:C}),ke.log(`[gjsify flatpak release] tag ${a} created`)}catch(n){throw Error(`[gjsify flatpak release] git tag failed (${n.message}). If the tag already exists, re-run with --skip-tag.`)}n.pushTag!==!1&&(n.verbose&&ke.log(`[gjsify flatpak release] git push origin ${a}`),await Yj(`git`,[`push`,`origin`,a],{cwd:C}),ke.log(`[gjsify flatpak release] tag pushed`))}n.verbose&&ke.log(`[gjsify flatpak release] sync: node ${F.join(` `)}`),await runNode(F,C),ke.log(`[gjsify flatpak release] ✅ release ${a} complete`)}}}),Qj,$j=__esmMin(()=>{jj(),Nj(),Fj(),Rj(),Bj(),Hj(),Gj(),Jj(),Zj(),Qj={command:`flatpak <subcommand>`,description:`Flatpak toolchain: init/build/deps/sources/ci/check/sync-flathub/diff/release subcommands for shipping GJS apps and CLIs as Flatpaks.`,builder:n=>n.command(Aj.command,Aj.description,Aj.builder,Aj.handler).command(Mj.command,Mj.description,Mj.builder,Mj.handler).command(Pj.command,Pj.description,Pj.builder,Pj.handler).command(Lj.command,Lj.description,Lj.builder,Lj.handler).command(zj.command,zj.description,zj.builder,zj.handler).command(Vj.command,Vj.description,Vj.builder,Vj.handler).command(Wj.command,Wj.description,Wj.builder,Wj.handler).command(qj.command,qj.description,qj.builder,qj.handler).command(Xj.command,Xj.description,Xj.builder,Xj.handler).demandCommand(1).strict()}});function parseSpec$1(n){if(!n)throw Error(`dlx: empty package spec`);if(n.startsWith(`./`)||n.startsWith(`../`)||Zo(n)||existsSync(n))return{kind:`local`,path:Yo(n)};let a=n,S,C=n.lastIndexOf(`@`);if(C>0&&(a=n.slice(0,C),S=n.slice(C+1)),!eM.test(a))throw Error(`dlx: invalid package name "${a}"`);return{kind:`registry`,name:a,version:S,spec:n}}var eM,tM=__esmMin(()=>{Jc(),ls(),eM=/^(?:@[a-z0-9-~][a-z0-9-._~]*\/)?[a-z0-9-~][a-z0-9-._~]*$/,__name$1(parseSpec$1,`parseSpec`)});function resolveGjsEntry(n,a){let S=Qo(n,`package.json`);if(!existsSync(S))throw Error(`dlx: no package.json found at ${n}`);let C=JSON.parse(readFileSync(S,`utf-8`)),N=C.gjsify?.bin,F=C.gjsify?.main,I=C.main,H,W=null,K=!1;if(a!==null){if(!N||!N[a]){let S=N?Object.keys(N).join(`, `):`(none)`;throw Error(`dlx: package "${C.name??n}" has no GJS bin named "${a}" — known: ${S}`)}H=N[a],W=a}else if(N&&Object.keys(N).length===1){let n=Object.keys(N)[0];H=N[n],W=n}else F?H=F:I&&(H=I,K=!0);if(N&&Object.keys(N).length>1&&a===null){let a=Object.keys(N).join(`, `);throw Error(`dlx: package "${C.name??n}" defines multiple GJS bins — pass one of: ${a}`)}if(!H)throw Error(`dlx: package "${C.name??n}" has no GJS entry — set \`gjsify.main\` (or \`gjsify.bin\`) in its package.json`);let q=Yo(n,H);if(!existsSync(q))throw Error(`dlx: GJS entry not found: ${q}`);return{bundlePath:q,binName:W,fromFallback:K}}var nM=__esmMin(()=>{Jc(),ls()});function lexCompare(n,a){return n<a?-1:+(n>a)}function createCacheKey(n){let a=[...n.packages].sort(lexCompare),S=Object.entries(n.registries??{}).sort(([n],[a])=>lexCompare(n,a)),C=JSON.stringify([a,S]);return createHash(`sha256`).update(C).digest(`hex`)}function dlxCacheRoot(){let n=process.env.XDG_CACHE_HOME,a=Qo(n&&n.length>0?n:Qo(homedir(),`.cache`),`gjsify`,`dlx`);return mkdirSync(a,{recursive:!0}),a}function cacheDirFor(n){let a=Qo(dlxCacheRoot(),n);return mkdirSync(a,{recursive:!0}),a}function makePrepareDir(n){let a=Qo(n,`${Date.now().toString(16)}-${process.pid.toString(16)}`);return mkdirSync(a,{recursive:!0}),a}function getValidCachedPkg(n,a=iM){let S=Qo(n,`pkg`),C;try{C=lstatSync(S)}catch(n){if(n.code===`ENOENT`)return;throw n}if(!C.isSymbolicLink())return;let N;try{N=realpathSync(S)}catch{return}return Date.now()-C.mtime.getTime()<=a*rM?N:void 0}function symlinkSwap(n,a){let S=Qo(n,`pkg`),C=Qo(n,`pkg.tmp-${Date.now().toString(16)}-${process.pid.toString(16)}`);symlinkSync(a,C,`dir`);try{renameSync(C,S)}catch(n){let a=n.code;if(a===`EBUSY`||a===`EPERM`||a===`EEXIST`){try{rmSync(C)}catch{}return realpathSync(S)}throw n}return realpathSync(S)}function resolveInstalledPkgDir(n,a){return Yo(n,`node_modules`,a)}var rM,iM,aM=__esmMin(()=>{to(),Jc(),Vp(),ls(),rM=6e4,iM=1440*7});function makeProgressReporter(n={}){if(n.enabled===!1)return sM;let a=n.stream??process.stderr,S=!!a.isTTY;return n.enabled??!0?S?makeTtyReporter(a):makePlainReporter(a):sM}function makeTtyReporter(n){let a=0,S=``;function render(C,N=!1){let F=Date.now();!N&&F-a<33&&C===S||(a=F,S=C,n.write(`\r\x1B[2K`+C))}function clearLine(){n.write(`\r\x1B[2K`),S=``}return{beginPhase(a,S){render(formatBar(a,0,S,void 0,n.columns??80),!0)},update(a){render(formatBar(a.phase,a.current,a.total,a.name,n.columns??80))},endPhase(a){let S=oM[a];clearLine(),n.write(`gjsify install: ${S} done\n`)}}}function makePlainReporter(n){return{beginPhase(a,S){n.write(`gjsify install: ${oM[a]} ${S} package(s)\n`)},update(){},endPhase(a){n.write(`gjsify install: ${oM[a]} done\n`)}}}function formatBar(n,a,S,C,N){let F=oM[n],I=S>0?Math.min(1,a/S):0,H=`${a}/${S}`,W=`gjsify install: ${F} `,K=` ${H}`+(C?` ${C}`:``),q=Math.max(8,Math.min(40,N-W.length-K.length-4)),Y=Math.round(I*q),X=`█`.repeat(Y)+`░`.repeat(q-Y),te=`${W}[${X}]${K}`;if(te.length>N){let n=te.length-N+1,a=C&&C.length>n?C.slice(0,C.length-n-1)+`…`:``;te=`${W}[${X}] ${H}${a?` `+a:``}`}return te}var oM,sM,cM=__esmMin(()=>{oM={resolve:`resolving`,download:`downloading`,extract:`extracting`,link:`linking bins`},sM={update(){},beginPhase(){},endPhase(){}}});function parse(n){try{return new SemVer(n)}catch{return null}}function compare(n,a){let S=n instanceof SemVer?n:new SemVer(n),C=a instanceof SemVer?a:new SemVer(a);return S.compare(C)}function satisfies(n,a){let S=a instanceof dM?a:new dM(a),C=n instanceof SemVer?n:parse(String(n));return C?S.test(C):!1}function maxSatisfying(n,a){let S=a instanceof dM?a:new dM(a),C=null;for(let a of n){let n=parse(a);!n||!S.test(n)||(C===null||n.compare(C)>0)&&(C=n)}return C?C.version:null}function testComparator(n,a){if(n.semver===null)return!0;let S=a.compare(n.semver);switch(n.operator){case``:case`=`:return S===0;case`<`:return S<0;case`<=`:return S<=0;case`>`:return S>0;case`>=`:return S>=0}}function formatComparator(n){return n.semver===null?`*`:`${n.operator}${n.semver.version}`}function parseRangePart(n){let a=n.trim();if(a===``||a===`*`||a.toLowerCase()===`latest`)return[{operator:`>=`,semver:new SemVer(`0.0.0`)}];let S=a.match(/^\s*(\S+)\s+-\s+(\S+)\s*$/);if(S)return hyphenRange(S[1],S[2]);let C=a.replace(/(<=|>=|<|>|=)\s+(?=\S)/g,`$1`).split(/\s+/),N=[];for(let n of C)N.push(...parseSimple(n));return N}function parseSimple(n){if(n===`*`||n===``||n.toLowerCase()===`latest`)return[{operator:`>=`,semver:new SemVer(`0.0.0`)}];if(n.startsWith(`^`))return caretRange(n.slice(1));if(n.startsWith(`~`))return tildeRange(n.slice(1).replace(/^>/,``));let a=n.match(/^(<=|>=|<|>|=)\s*(.+)$/);if(a){let n=a[1];return primitiveRange(n,a[2])}return partialRange(n)}function parsePartial(n){let a=n.trim().replace(/^v/,``);if(a===``||a===`*`)return{major:null,minor:null,patch:null,pre:``,build:``};let S=``,C=``,N=a,F=N.indexOf(`+`);F>=0&&(C=N.slice(F+1),N=N.slice(0,F));let I=N.indexOf(`-`);I>=0&&(S=N.slice(I+1),N=N.slice(0,I));let H=N.split(`.`),xr=a=>{if(a===void 0||a===``||a===`x`||a===`X`||a===`*`)return null;if(!/^\d+$/.test(a))throw TypeError(`Invalid partial version: ${n}`);return Number(a)};return{major:xr(H[0]),minor:xr(H[1]),patch:xr(H[2]),pre:S,build:C}}function partialToVersion(n){return`${n.major??0}.${n.minor??0}.${n.patch??0}${n.pre?`-${n.pre}`:``}${n.build?`+${n.build}`:``}`}function partialRange(n){let a=parsePartial(n);return a.major===null?[{operator:`>=`,semver:new SemVer(`0.0.0`)}]:a.minor===null?[{operator:`>=`,semver:new SemVer(`${a.major}.0.0`)},{operator:`<`,semver:new SemVer(`${a.major+1}.0.0`)}]:a.patch===null?[{operator:`>=`,semver:new SemVer(`${a.major}.${a.minor}.0`)},{operator:`<`,semver:new SemVer(`${a.major}.${a.minor+1}.0`)}]:[{operator:`=`,semver:new SemVer(partialToVersion(a))}]}function caretRange(n){let a=parsePartial(n);if(a.major===null)return[{operator:`>=`,semver:new SemVer(`0.0.0`)}];let S=`${a.major}.${a.minor??0}.${a.patch??0}${a.pre?`-${a.pre}`:``}`,C;return C=a.major>0||a.minor===null?`${a.major+1}.0.0`:a.minor>0||a.patch===null?`0.${a.minor+1}.0`:`0.0.${a.patch+1}`,[{operator:`>=`,semver:new SemVer(S)},{operator:`<`,semver:new SemVer(C)}]}function tildeRange(n){let a=parsePartial(n);if(a.major===null)return[{operator:`>=`,semver:new SemVer(`0.0.0`)}];let S=`${a.major}.${a.minor??0}.${a.patch??0}${a.pre?`-${a.pre}`:``}`,C=a.minor===null?`${a.major+1}.0.0`:`${a.major}.${a.minor+1}.0`;return[{operator:`>=`,semver:new SemVer(S)},{operator:`<`,semver:new SemVer(C)}]}function primitiveRange(n,a){let S=parsePartial(a);return S.major===null?[{operator:`>=`,semver:new SemVer(`0.0.0`)}]:n===`=`||n===``?partialRange(a):n===`>`?S.minor===null?[{operator:`>=`,semver:new SemVer(`${S.major+1}.0.0`)}]:S.patch===null?[{operator:`>=`,semver:new SemVer(`${S.major}.${S.minor+1}.0`)}]:[{operator:`>`,semver:new SemVer(partialToVersion(S))}]:n===`<`?S.minor===null?[{operator:`<`,semver:new SemVer(`${S.major}.0.0`)}]:S.patch===null?[{operator:`<`,semver:new SemVer(`${S.major}.${S.minor}.0`)}]:[{operator:`<`,semver:new SemVer(partialToVersion(S))}]:n===`>=`?[{operator:`>=`,semver:new SemVer(partialToVersion(S))}]:S.minor===null?[{operator:`<`,semver:new SemVer(`${S.major+1}.0.0`)}]:S.patch===null?[{operator:`<`,semver:new SemVer(`${S.major}.${S.minor+1}.0`)}]:[{operator:`<=`,semver:new SemVer(partialToVersion(S))}]}function hyphenRange(n,a){let S=parsePartial(n),C=parsePartial(a),N=S.major===null?{operator:`>=`,semver:new SemVer(`0.0.0`)}:{operator:`>=`,semver:new SemVer(`${S.major}.${S.minor??0}.${S.patch??0}${S.pre?`-${S.pre}`:``}`)},F;return F=C.major===null?{operator:`>=`,semver:new SemVer(`0.0.0`)}:C.minor===null?{operator:`<`,semver:new SemVer(`${C.major+1}.0.0`)}:C.patch===null?{operator:`<`,semver:new SemVer(`${C.major}.${C.minor+1}.0`)}:{operator:`<=`,semver:new SemVer(`${C.major}.${C.minor}.${C.patch}${C.pre?`-${C.pre}`:``}`)},[N,F]}var lM,uM,SemVer,dM,fM=__esmMin(()=>{lM=/^(0|[1-9]\d*)$/,uM=/^(\d+)\.(\d+)\.(\d+)(?:-((?:[0-9A-Za-z-]+)(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,SemVer=class{major;minor;patch;prerelease;build;version;constructor(n){let a=String(n).trim().replace(/^v/,``),S=uM.exec(a);if(!S)throw TypeError(`Invalid Version: ${n}`);this.major=Number(S[1]),this.minor=Number(S[2]),this.patch=Number(S[3]),this.prerelease=S[4]?S[4].split(`.`).map(n=>lM.test(n)?Number(n):n):[],this.build=S[5]?S[5].split(`.`):[],this.version=`${this.major}.${this.minor}.${this.patch}`+(this.prerelease.length?`-${this.prerelease.join(`.`)}`:``)+(this.build.length?`+${this.build.join(`.`)}`:``)}compare(n){return this.major===n.major?this.minor===n.minor?this.patch===n.patch?this.comparePre(n):this.patch<n.patch?-1:1:this.minor<n.minor?-1:1:this.major<n.major?-1:1}comparePre(n){let a=this.prerelease,S=n.prerelease;if(a.length===0&&S.length===0)return 0;if(a.length===0)return 1;if(S.length===0)return-1;for(let n=0;;n++){let C=a[n],N=S[n];if(C===void 0&&N===void 0)return 0;if(N===void 0)return 1;if(C===void 0)return-1;if(C===N)continue;let F=typeof C==`number`,I=typeof N==`number`;return F&&!I?-1:!F&&I?1:C<N?-1:1}}toString(){return this.version}},dM=class Range{raw;set;constructor(n){if(n instanceof Range){this.raw=n.raw,this.set=n.set;return}this.raw=String(n).trim();let a=this.raw.split(/\s*\|\|\s*/),S=[];for(let n of a){let a=parseRangePart(n);if(a.length===0)throw TypeError(`Invalid range: ${this.raw}`);S.push(a)}if(S.length===0)throw TypeError(`Invalid range: ${this.raw}`);this.set=S}test(n){let a=n instanceof SemVer?n:parse(String(n));if(!a)return!1;for(let n of this.set)if(n.every(n=>testComparator(n,a))){if(a.prerelease.length>0&&!n.some(n=>n.semver!==null&&n.semver.prerelease.length>0&&n.semver.major===a.major&&n.semver.minor===a.minor&&n.semver.patch===a.patch))continue;return!0}return!1}format(){return this.set.map(n=>n.map(formatComparator).join(` `)).join(` || `)}toString(){return this.format()}}});function assertPackument(n,a){if(!a||typeof a!=`object`)throw TypeError(`registry: ${n} packument is not an object`);let S=a;if(typeof S.name!=`string`)throw TypeError(`registry: ${n} packument missing string name`);if(!S.versions||typeof S.versions!=`object`)throw TypeError(`registry: ${n} packument missing versions map`)}function registryFor(n,a){if(a&&n.startsWith(`@`)){let S=n.slice(0,n.indexOf(`/`)),C=a.scopes[S];if(C)return ensureTrailingSlash$1(C)}return a?.registry?ensureTrailingSlash$1(a.registry):pM}function packumentUrl(n,a){let S=ensureTrailingSlash$1(a);if(n.startsWith(`@`)){let a=n.indexOf(`/`);if(a<0)throw TypeError(`Invalid scoped package name: ${n}`);let C=n.slice(0,a),N=n.slice(a+1);return`${S}${encodeURIComponent(C)}/${encodeURIComponent(N)}`}return`${S}${encodeURIComponent(n)}`}async function fetchPackumentConditional(n,a={}){let S=packumentUrl(n,a.registry??registryFor(n,a.npmrc)),C=buildHeaders(S,{...a,acceptEncoding:`gzip`});C.accept??=`application/vnd.npm.install-v1+json`,a.ifNoneMatch&&(C[`if-none-match`]=a.ifNoneMatch);let N=await fetchWithRetry(S,{headers:C,signal:a.signal,compress:!1},{fetch:a.fetch,retries:a.retries,retryDelayMs:a.retryDelayMs,timeoutMs:a.timeoutMs,onRetry:a.onRetry});if(N.status===304){try{await N.arrayBuffer()}catch{}return{status:`not-modified`,etag:a.ifNoneMatch}}if(!N.ok)throw N.status===404||N.status===406?new PackageNotFoundError(n,S):Error(`registry GET ${S} -> ${N.status} ${N.statusText}`);let F=N.headers.get(`etag`)??void 0,I=await decodeJsonBody(N);return assertPackument(n,I),{status:`fresh`,packument:I,etag:F}}async function decodeJsonBody(n){let a=new Uint8Array(await n.arrayBuffer()),S=a.length>=2&&a[0]===31&&a[1]===139?await gunzip$1(a):a;return JSON.parse(new TextDecoder().decode(S))}async function gunzip$1(n){let a=globalThis.DecompressionStream;if(typeof a!=`function`)throw Error(`@gjsify/npm-registry: globalThis.DecompressionStream is unavailable — cannot decode a gzip registry response (on GJS, register '@gjsify/compression-streams')`);let S=new Blob([new Uint8Array(n)]).stream().pipeThrough(new a(`gzip`)).getReader(),C=[],N=0;for(;;){let{value:n,done:a}=await S.read();if(a)break;let F=n instanceof Uint8Array?n:new Uint8Array(n);C.push(F),N+=F.length}let F=new Uint8Array(N),I=0;for(let n of C)F.set(n,I),I+=n.length;return F}async function fetchPackument(n,a={}){let S=await fetchPackumentConditional(n,a);if(!S.packument)throw Error(`registry: ${n} returned 304 Not Modified to an unconditional request`);return S.packument}async function fetchTarball(n,a={}){let S=buildHeaders(n,{...a,acceptEncoding:`identity`});S.accept??=`application/octet-stream`;let C=await fetchWithRetry(n,{headers:S,signal:a.signal},{fetch:a.fetch,retries:a.retries,retryDelayMs:a.retryDelayMs,timeoutMs:a.timeoutMs,onRetry:a.onRetry,retryNotFound:a.retryNotFound??!0});if(!C.ok)throw Error(`tarball GET ${n} -> ${C.status} ${C.statusText}`);let N=new Uint8Array(await C.arrayBuffer());if(a.integrity&&!await verifyIntegrity(N,a.integrity))throw new IntegrityError(n,a.integrity);return N}async function fetchWithRetry(n,a,S){let C=S.fetch??globalThis.fetch;if(!C)throw Error(`@gjsify/npm-registry: globalThis.fetch is missing`);let N=Math.max(0,S.retries??3),F=Math.max(0,S.retryDelayMs??250),I=Math.max(0,S.timeoutMs??3e4),H=S.retryNotFound??!1,W=0,K,q=0;for(;;){if(a.signal?.aborted)throw signalAbortError(a.signal);let Y=I>0?new AbortController:null,X=Y===null?null:setTimeout(()=>Y.abort(Error(`@gjsify/npm-registry: per-request timeout ${I}ms`)),I),te=composeSignals(a.signal,Y?.signal);try{let S=await C(n,{...a,signal:te}),F=isRetryableStatus(S.status)||H&&S.status===404;if(S.ok||!F||W>=N)return S;try{await S.arrayBuffer()}catch{}K=Error(`HTTP ${S.status} ${S.statusText}`)}catch(S){let C=Y!==null&&Y.signal.aborted,F=a.signal?.aborted===!0;if(C&&!F){if(q++,W>=N)throw new RegistryTimeoutError(n,I,q);K=S}else if(F)throw signalAbortError(a.signal);else{if(!isRetryableError(S)||W>=N)throw S;K=S}}finally{X!==null&&clearTimeout(X)}let ne=Math.min(F*2**W,8e3);S.onRetry?.({attempt:W+1,error:K,delayMs:ne}),await delay(ne,a.signal),W++}}function composeSignals(n,a){return n?a?AbortSignal.any([n,a]):n:a}function isRetryableStatus(n){return n===408||n===425||n===429||n===500||n===502||n===503||n===504||n===521||n===522||n===524||n===525}function isRetryableError(n){if(n&&typeof n==`object`&&`name`in n&&n.name===`AbortError`)return!1;if(n instanceof TypeError)return!0;if(n&&typeof n==`object`&&`name`in n){let a=n.name;if(a===`FetchError`)return!0;if(a===`AbortError`)return!1}let a=n?.cause;if(a&&typeof a==`object`&&`code`in a){let n=a.code;if(typeof n==`string`)return n===`ECONNRESET`||n===`ECONNREFUSED`||n===`ENETUNREACH`||n===`ENOTFOUND`||n===`ETIMEDOUT`||n===`EAI_AGAIN`||n===`UND_ERR_SOCKET`||n===`UND_ERR_CONNECT_TIMEOUT`}return!1}function delay(n,a){return n<=0?Promise.resolve():new Promise((S,C)=>{let N=setTimeout(()=>{a?.removeEventListener?.(`abort`,onAbort),S()},n),onAbort=()=>{clearTimeout(N),C(signalAbortError(a))};if(a?.aborted){clearTimeout(N),C(signalAbortError(a));return}a?.addEventListener?.(`abort`,onAbort,{once:!0})})}function signalAbortError(n){let a=n&&`reason`in n?n.reason:void 0;if(a instanceof Error)return a;let S=Error(`Aborted`);return S.name=`AbortError`,S}async function verifyIntegrity(n,a){let S=a.trim().split(/\s+/);for(let a of S){let S=a.indexOf(`-`);if(S<0)continue;let C=a.slice(0,S).toLowerCase(),N=a.slice(S+1),F=globalThis.crypto?.subtle;if(!F)throw Error(`@gjsify/npm-registry: globalThis.crypto.subtle is missing`);let I=subriToWebCryptoAlgo(C);if(!I)continue;let H=await F.digest(I,dataAsArrayBuffer(n));if(bytesToBase64(new Uint8Array(H))===N)return!0}return!1}function subriToWebCryptoAlgo(n){switch(n){case`sha1`:return`SHA-1`;case`sha256`:return`SHA-256`;case`sha384`:return`SHA-384`;case`sha512`:return`SHA-512`;default:return null}}function dataAsArrayBuffer(n){if(n.byteOffset===0&&n.byteLength===n.buffer.byteLength)return n.buffer;let a=new Uint8Array(n.byteLength);return a.set(n),a.buffer}function bytesToBase64(n){let a=``;for(let S=0;S<n.length;S++)a+=String.fromCharCode(n[S]);return btoa(a)}function parseNpmrc(n){let a={registry:pM,scopes:{},authTokens:{},basicAuth:{}},S=n.split(/\r?\n/),C={};for(let n of S){let S=n.replace(/^\s+|\s+$/g,``);if(!S||S.startsWith(`#`)||S.startsWith(`;`))continue;let N=S.indexOf(`=`);if(N<0)continue;let F=S.slice(0,N).trim(),I=expandEnv(stripQuotes(S.slice(N+1).trim()));if(F===`registry`){a.registry=ensureTrailingSlash$1(I);continue}let H=F.match(/^(@[^:]+):registry$/);if(H){a.scopes[H[1]]=ensureTrailingSlash$1(I);continue}let W=F.match(/^\/\/(.+):_authToken$/);if(W){a.authTokens[normalizeAuthHost(W[1])]=I;continue}let K=F.match(/^\/\/(.+):username$/);if(K){(C[normalizeAuthHost(K[1])]??={}).user=I;continue}let q=F.match(/^\/\/(.+):_password$/);if(q){let n=base64Decode(I);(C[normalizeAuthHost(q[1])]??={}).pass=n;continue}}for(let[n,S]of Object.entries(C))S.user&&S.pass!==void 0&&(a.basicAuth[n]={username:S.user,password:S.pass});return a}function buildHeaders(n,a){let S={"user-agent":`gjsify-install/0.3.7`,"accept-encoding":a.acceptEncoding??`identity`};if(a.npmrc){let C=resolveAuthForUrl(n,a.npmrc);C&&(S.authorization=C)}if(a.headers)for(let[n,C]of Object.entries(a.headers))S[n.toLowerCase()]=C;return S}function resolveAuthForUrl(n,a){let S=pathPrefixes(new URL(n));for(let n of S){let S=a.authTokens[n];if(S)return`Bearer ${S}`;let C=a.basicAuth[n];if(C)return`Basic ${btoa(`${C.username}:${C.password}`)}`}return null}function pathPrefixes(n){let a=n.pathname.split(`/`).filter(Boolean),S=[];for(let C=a.length;C>=0;C--){let N=a.slice(0,C).join(`/`);S.push(N?`//${n.host}/${N}`:`//${n.host}`)}return S}function normalizeAuthHost(n){return`//${n.replace(/\/+$/,``)}`}function ensureTrailingSlash$1(n){return n.endsWith(`/`)?n:n+`/`}function stripQuotes(n){return n.startsWith(`"`)&&n.endsWith(`"`)||n.startsWith(`'`)&&n.endsWith(`'`)?n.slice(1,-1):n}function expandEnv(n){return n.replace(/\$\{([A-Z0-9_]+)\}/gi,(n,a)=>globalThis.process?.env?.[a]??``)}function base64Decode(n){return atob(n)}async function whoami(n,a){let S=`${ensureTrailingSlash$1(n)}-/whoami`,C=buildHeaders(S,{npmrc:a});C.accept=`application/json`;let N=globalThis.fetch;if(!N)throw Error(`@gjsify/npm-registry: globalThis.fetch is missing`);let F=await N(S,{method:`GET`,headers:C});if(!F.ok)throw Error(`whoami GET ${S} -> ${F.status} ${F.statusText}`);let I=await F.json();if(I&&typeof I==`object`&&`username`in I){let n=I.username;if(typeof n==`string`&&n.length>0)return{username:n}}return{}}var pM,PackageNotFoundError,IntegrityError,RegistryTimeoutError,mM=__esmMin(()=>{pM=`https://registry.npmjs.org/`,__name$1(gunzip$1,`gunzip`),__name$1(ensureTrailingSlash$1,`ensureTrailingSlash`),PackageNotFoundError=class extends Error{constructor(n,a){super(`Package not found in registry: ${n} (${a})`),this.name=n,this.url=a,this.name=`PackageNotFoundError`}},IntegrityError=class extends Error{constructor(n,a){super(`Tarball integrity mismatch for ${n} (expected ${a})`),this.url=n,this.integrity=a,this.name=`IntegrityError`}},RegistryTimeoutError=class extends Error{constructor(n,a,S){let C=Math.round(a/100)/10,N=Math.round(a*S/100)/10;super(`@gjsify/npm-registry: GET ${n} timed out after ${C}s × ${S} attempt(s) (total ~${N}s). This usually means the registry CDN is slow or unreachable.`),this.url=n,this.timeoutMs=a,this.attempts=S,this.name=`RegistryTimeoutError`}}});function parseTar(n){let a=[],S=null,C=null,N=null,F=0;for(;F+512<=n.length;){let I=n.subarray(F,F+512);if(allZeros(I)){let a=n.subarray(F+512,F+2*512);if(a.length===512&&allZeros(a))break;F+=512;continue}if(!validateChecksum(I))throw new TarParseError(`Bad header checksum at offset ${F} — file is not a valid tar archive`);let H=readString(I,0,100),W=parseOctal(I,100,8),K=parseOctal(I,124,12),q=parseOctal(I,136,12),Y=String.fromCharCode(I[156]||0),X=readString(I,157,100),te=readString(I,257,6),ne=readString(I,345,155),re=readString(I,265,32),ie=readString(I,297,32);F+=512;let ae=n.subarray(F,F+K);if(F+=alignToBlock(K),Y===`x`){S=parsePaxRecords(ae);continue}if(Y===`g`)continue;if(Y===`L`){C=bytesToString(ae).replace(/\0+$/,``);continue}if(Y===`K`){N=bytesToString(ae).replace(/\0+$/,``);continue}let oe=H;te===`ustar`&&ne!==``&&(oe=`${ne}/${H}`),C!==null&&(oe=C,C=null);let Z=X;if(N!==null&&(Z=N,N=null),S!==null){let C=S.get(`path`);C!==void 0&&(oe=C);let N=S.get(`linkpath`);N!==void 0&&(Z=N);let I=S.get(`size`);if(I!==void 0){let C=Number(I);if(Number.isFinite(C)){let N=F-alignToBlock(K),I=n.subarray(N,N+C);F=N+alignToBlock(C),S=null,a.push(buildEntry(oe,Z,Y,W,q,re,ie,I));continue}}S=null}a.push(buildEntry(oe,Z,Y,W,q,re,ie,ae))}return a}function buildEntry(n,a,S,C,N,F,I,H){return{name:n,linkname:a,type:typeflagToType(S,n),mode:C,mtime:N,body:H,uname:F,gname:I}}function typeflagToType(n,a){switch(n){case`0`:case`\0`:case``:return a.endsWith(`/`)?`directory`:`file`;case`1`:return`hardlink`;case`2`:return`symlink`;case`5`:return`directory`;case`x`:return`pax-header`;case`g`:return`pax-global`;case`L`:return`gnu-longname`;case`K`:return`gnu-longlink`;default:return`unknown`}}function parsePaxRecords(n){let a=new Map,S=0;for(;S<n.length;){let C=S;for(;C<n.length&&n[C]!==32;)C++;if(C>=n.length)break;let N=bytesToString(n.subarray(S,C)),F=Number(N);if(!Number.isFinite(F)||F<=0)break;let I=S+F;if(I>n.length)break;let H=bytesToString(n.subarray(C+1,I-1)),W=H.indexOf(`=`);if(W>0){let n=H.slice(0,W),S=H.slice(W+1);a.set(n,S)}S=I}return a}function readString(n,a,S){let C=a,N=a+S;for(;C<N&&n[C]!==0;)C++;return bytesToString(n.subarray(a,C))}function bytesToString(n){return new TextDecoder(`utf-8`,{fatal:!1}).decode(n)}function parseOctal(n,a,S){if(S>0&&n[a]&128){let C=n[a]&127;for(let N=1;N<S;N++)C=C*256+n[a+N];return C}let C=``;for(let N=0;N<S;N++){let S=n[a+N];S===0||S===32||(C+=String.fromCharCode(S))}return C===``?0:parseInt(C,8)}function alignToBlock(n){return Math.ceil(n/512)*512}function allZeros(n){for(let a=0;a<n.length;a++)if(n[a]!==0)return!1;return!0}function validateChecksum(n){let a=parseOctal(n,148,8),S=0,C=0;for(let a=0;a<512;a++){let N=a>=148&&a<156?32:n[a];S+=N,C+=N>127?N-256:N}return a===S||a===C}var TarParseError,hM=__esmMin(()=>{TarParseError=class extends Error{constructor(n){super(n),this.name=`TarParseError`}}});function createTarball(n){let a=[];for(let S of n){if(`directory`in S&&S.directory===!0){a.push(buildHeader(ensureTrailingSlash(S.name),0,`5`,S.mode??493,S.mtime??0));continue}let n=S,C=typeof n.body==`string`?new TextEncoder().encode(n.body):n.body,N=n.mode??defaultFileMode(C);a.push(buildHeader(n.name,C.byteLength,`0`,N,n.mtime??0)),a.push(C);let F=padTo512(C.byteLength);F>0&&a.push(new Uint8Array(F))}return a.push(new Uint8Array(512*2)),concatChunks(a)}function buildHeader(n,a,S,C,N){let{prefix:F,basename:I}=splitPathForUstar(n),H=new Uint8Array(512);writeAscii(H,I,0,100),writeOctal(H,C&4095,100,7),H[107]=0,writeOctal(H,0,108,7),H[115]=0,writeOctal(H,0,116,7),H[123]=0,writeOctal(H,a,124,11),H[135]=0,writeOctal(H,N,136,11),H[147]=0;for(let n=148;n<156;n++)H[n]=32;H[156]=S.charCodeAt(0),writeAscii(H,`ustar\0`,257,6),writeAscii(H,`00`,263,2),F&&writeAscii(H,F,345,155);let W=0;for(let n=0;n<512;n++)W+=H[n];return writeAscii(H,W.toString(8).padStart(6,`0`),148,6),H[154]=0,H[155]=32,H}function splitPathForUstar(n){if(n.length<=100)return{prefix:``,basename:n};if(n.length>255)throw Error(`createTarball: path too long (${n.length} > 255 chars): ${n}`);for(let a=Math.min(n.length-1,155);a>0;a--)if(n[a]===`/`&&n.length-a-1<=100)return{prefix:n.slice(0,a),basename:n.slice(a+1)};throw Error(`createTarball: cannot split path into ustar prefix+basename (basename slot is 100 chars): ${n}`)}function writeAscii(n,a,S,C){let N=new TextEncoder().encode(a);if(N.length>C)throw Error(`createTarball: field too long (${N.length} > ${C}): "${a}"`);n.set(N,S)}function writeOctal(n,a,S,C){writeAscii(n,a.toString(8).padStart(C,`0`),S,C)}function padTo512(n){let a=n%512;return a===0?0:512-a}function ensureTrailingSlash(n){return n.endsWith(`/`)?n:`${n}/`}function defaultFileMode(n){return n.length>=2&&n[0]===35&&n[1]===33?493:420}function concatChunks(n){let a=0;for(let S of n)a+=S.byteLength;let S=new Uint8Array(a),C=0;for(let a of n)S.set(a,C),C+=a.byteLength;return S}var gM=__esmMin(()=>{});async function extractTarball(n,a,S={}){let C=n instanceof Uint8Array?n:new Uint8Array(n),N=parseTar(S.gzip??(C.length>=2&&C[0]===31&&C[1]===139)?await gunzip(C):C);mkdirSync(a,{recursive:!0});let F=S.strip??1,I=S.preventEscape??!0,H={files:[],directories:[],symlinks:[],skipped:0};for(let n of N){let C=stripComponents(n.name,F);if(C===null||C===``){H.skipped++;continue}let N=Yo(a,C);if(I&&!isInside(N,a))throw Error(`tar: refusing to extract ${n.name} outside ${a} (resolved=${N})`);if(S.filter&&!S.filter(n,N)){H.skipped++;continue}if(n.type===`directory`){mkdirSync(N,{recursive:!0}),H.directories.push(N);continue}if(n.type===`file`){mkdirSync(ts(N),{recursive:!0}),writeFileSync(N,n.body);let a=S.chmod?.(n,N)??n.mode&511;if(a>0)try{chmodSync(N,a)}catch{}H.files.push(N);continue}if(n.type===`symlink`){mkdirSync(ts(N),{recursive:!0});try{symlinkSync(n.linkname,N),H.symlinks.push(N)}catch{writeFileSync(N,n.linkname),H.files.push(N)}continue}H.skipped++}return H}async function gunzip(n){let a=globalThis.DecompressionStream;if(typeof a!=`function`)throw Error(`@gjsify/tar: globalThis.DecompressionStream is not available — import '@gjsify/compression-streams/register' on GJS to register it`);return drainStream(new Blob([new Uint8Array(n)]).stream().pipeThrough(new a(`gzip`)))}async function gzip(n){let a=globalThis.CompressionStream;if(typeof a!=`function`)throw Error(`@gjsify/tar: globalThis.CompressionStream is not available — import '@gjsify/compression-streams/register' on GJS to register it`);return drainStream(new Blob([new Uint8Array(n)]).stream().pipeThrough(new a(`gzip`)))}async function drainStream(n){let a=[],S=0,C=n.getReader();for(;;){let{value:n,done:N}=await C.read();if(N)break;let F=n instanceof Uint8Array?n:new Uint8Array(n);a.push(F),S+=F.length}let N=new Uint8Array(S),F=0;for(let n of a)N.set(n,F),F+=n.length;return N}function stripComponents(n,a){if(a<=0)return n;let S=n.split(`/`).filter(n=>n!==``);return S.length<=a?null:S.slice(a).join(`/`)}function isInside(n,a){let S=$o(a,n);return S!==``&&!S.startsWith(`..`)&&!Zo(S)}var _M=__esmMin(()=>{hM(),Jc(),ls()}),vM=__exportAll$3({BLOCK_SIZE:()=>512,TarParseError:()=>TarParseError,createTarball:()=>createTarball,extractTarball:()=>extractTarball,gunzip:()=>gunzip,gzip:()=>gzip,parseTar:()=>parseTar}),yM=__esmMin(()=>{hM(),gM(),_M()});function gjsifyCacheRoot(n,a){let S=process.env.XDG_CACHE_HOME;return Qo(S&&S.length>0?S:Qo(homedir(),`.cache`),`gjsify`,n,a)}function atomicWrite(n,a){try{mkdirSync(Qo(n,`..`),{recursive:!0});let S=`${n}.tmp.${process.pid}`;writeFileSync(S,a),renameSync(S,n)}catch{}}function readCacheFile(n){if(!existsSync(n))return null;try{let a=readFileSync(n);return a.length===0?null:a}catch{return null}}var bM=__esmMin(()=>{Jc(),Vp(),ls()});function cacheRoot$1(){return gjsifyCacheRoot(`tarballs`,xM)}function parseSri(n){if(!n)return null;let a=n.indexOf(`-`);if(a<=0||a===n.length-1)return null;let S=n.slice(0,a),C=n.slice(a+1).replace(/=+$/,``),N;try{N=Buffer.from(C,`base64`).toString(`hex`)}catch{return null}return N.length<4?null:{algorithm:S,hex:N}}function pathFor$1(n){let a=parseSri(n);if(!a)return null;let S=a.hex.slice(0,2);return Qo(cacheRoot$1(),a.algorithm,S,`${a.hex}.tgz`)}function getCachedTarball(n){let a=pathFor$1(n);return a?readCacheFile(a):null}function putCachedTarball(n,a){let S=pathFor$1(n);S&&(existsSync(S)||atomicWrite(S,a))}function npmCacacheContentDir(){let n=process.env.GJSIFY_NPM_CACHE;if(n!==void 0){let a=n.trim();return a===``||a===`0`||a===`false`?null:Qo(a.endsWith(`_cacache`)?a:Qo(a,`_cacache`),`content-v2`)}let a=process.env.npm_config_cache;return Qo(a&&a.length>0?a:Qo(homedir(),`.npm`),`_cacache`,`content-v2`)}function npmCachePathFor(n){let a=npmCacacheContentDir();if(!a)return null;let S=parseSri(n);return S?Qo(a,S.algorithm,S.hex.slice(0,2),S.hex.slice(2,4),S.hex.slice(4)):null}function getForeignCachedTarball(n){let a=npmCachePathFor(n);return a?readCacheFile(a):null}var xM,SM=__esmMin(()=>{Jc(),Vp(),ls(),bM(),xM=`v1`,__name$1(cacheRoot$1,`cacheRoot`),__name$1(pathFor$1,`pathFor`)});function isEnabled(){let n=process.env.GJSIFY_PACKUMENT_CACHE;if(n===void 0)return!0;let a=n.trim();return!(a===`0`||a===`false`||a===``)}function cacheRoot(){return gjsifyCacheRoot(`metadata`,CM)}function shardFor(n){let a=2166136261;for(let S=0;S<n.length;S++)a^=n.charCodeAt(S),a=Math.imul(a,16777619);return(a>>>0&255).toString(16).padStart(2,`0`)}function pathFor(n,a){if(!isEnabled())return null;let S=`${n}|${a}`,C=`${encodeURIComponent(n)}|${encodeURIComponent(a)}.json`;return Qo(cacheRoot(),shardFor(S),C)}function getCachedPackument(n,a){let S=pathFor(n,a);if(!S)return null;let C=readCacheFile(S);if(!C)return null;try{let n=JSON.parse(C.toString(`utf-8`));return typeof n.etag!=`string`||!n.etag||!n.packument||typeof n.packument!=`object`?null:{etag:n.etag,packument:n.packument}}catch{return null}}function putCachedPackument(n,a,S,C){if(!S)return;let N=pathFor(n,a);N&&atomicWrite(N,JSON.stringify({etag:S,packument:C}))}var CM,wM=__esmMin(()=>{ls(),bM(),CM=`v1`}),TM=__exportAll$3({installPackagesNative:()=>installPackagesNative,parseSpec:()=>parseSpec,pickVersion:()=>pickVersion});async function installPackagesNative(n){if(n.specs.length===0)throw Error(`installPackagesNative: empty specs list`);mkdirSync(n.prefix,{recursive:!0});let a=await loadNpmrc$1(n),S=makeLogger(n.verbose??!1),C=n.progress,N=Qo(n.prefix,DM),F=readLockfile(N),I;if(n.frozen){if(!F)throw Error(`install: --immutable requires ${DM} at ${n.prefix} — none found. Run \`gjsify install\` (without --immutable) to generate one and commit it.`);let a=describeLockfileDrift(F,n.specs);if(a)throw Error(`install: --immutable but ${N} is stale.\n${a}\nRe-run \`gjsify install\` (without --immutable) to refresh the lockfile.`);S(`install: --immutable, using lockfile (%d package(s))`,Object.keys(F.packages).length),I=lockfileToNodes(F)}else F&&lockfileMatchesRequest(F,n.specs)?(S(`install: using lockfile (%d package(s))`,Object.keys(F.packages).length),I=lockfileToNodes(F)):(S(`install: resolving %d top-level spec(s) → %s`,n.specs.length,n.prefix),I=await resolveDeps(n.specs,a,S,n.overrides,n.skipDeps,n.signal,C),n.lockfile&&(writeLockfile(N,n.specs,I),S(`install: wrote %s (%d entries)`,DM,I.length)));return S(`install: downloading %d tarball(s)`,I.length),await downloadAndExtractAll(I,n.prefix,a,S,n.signal,C),await linkBins(I,n.prefix,S),S(`install: done`),topLevelResolutions(n.specs,I)}function errMsg(n){return n instanceof Error?n.message:String(n)}function topLevelResolutions(n,a){let S=new Map;for(let n of a)n.installPath===`node_modules/${n.name}`&&S.set(n.name,n);let C=[];for(let a of n){let n=parseSpecName(a),N=S.get(n);N&&C.push({name:N.name,version:N.version})}return C}function parseSpecName(n){if(n.startsWith(`@`)){let a=n.indexOf(`/`);if(a===-1)return n;let S=n.indexOf(`@`,a+1);return S===-1?n:n.slice(0,S)}let a=n.indexOf(`@`);return a===-1?n:n.slice(0,a)}async function resolveDeps(n,a,S,C,N,F,I){I?.beginPhase(`resolve`,n.length);let applyOverride=(n,a)=>{if(!C)return a;let N=C[n];return typeof N!=`string`||N.length===0||N===a?a:(S(`install: override %s %s → %s`,n,a,N),N)},H=new Map,fetchPkg=n=>{let C=H.get(n);if(C)return C;let N=fetchPackumentWithDiskCache(n,a,S,F);return H.set(n,N),N},W=new Map,K=new Map,q=n.map(parseSpec).map(n=>({from:null,name:n.name,range:applyOverride(n.name,n.range),required:!0}));for(;q.length>0;){let n=q.splice(0,q.length),a=[],C=new Set;for(let S of n)H.has(S.name)||C.has(S.name)||(C.add(S.name),a.push(S.name));await prefetchPackuments(a,fetchPkg,F);for(let a=0;a<n.length;a++){let C=n[a],F=findVisible(C.from,C.name,W);if(F&&satisfiesRange(F.version,C.range))continue;let H=null;try{let F=await fetchPkg(C.name);if(H=pickVersion(F,C.range),!H){if(!C.required)continue;throw Error(`No version of ${C.name} satisfies ${C.range}`)}let Y=F.versions[H];if(!Y)throw Error(`Packument for ${C.name} promised ${H} but no entry exists`);let X=decidePlacement(C.from,C.name,H,K),te={name:C.name,version:H,tarballUrl:Y.dist.tarball,integrity:Y.dist.integrity,installPath:X,dependencies:Y.dependencies??{},optionalDependencies:Y.optionalDependencies??{},bin:Y.bin};if(W.set(X,te),X===`node_modules/${C.name}`&&K.set(C.name,te),S(`resolve: %s@%s ← %s (at %s)`,C.name,H,C.range,X),I?.update({phase:`resolve`,current:W.size,total:W.size+(n.length-a-1)+q.length,name:`${C.name}@${H}`}),!N){for(let[n,a]of Object.entries(te.dependencies))q.push({from:X,name:n,range:applyOverride(n,a),required:!0});for(let[n,a]of Object.entries(te.optionalDependencies))q.push({from:X,name:n,range:applyOverride(n,a),required:!1})}}catch(n){if(!C.required){S(`resolve: optional dep %s@%s skipped (%s)`,C.name,C.range,n.message);continue}throw n}}}return I?.endPhase(`resolve`),Array.from(W.values())}async function fetchPackumentWithDiskCache(n,a,S,C){let N=registryFor(n,a),F=getCachedPackument(N,n),onRetry=({attempt:a,error:C,delayMs:N})=>{S(`packument %s: retry %d after %dms (%s)`,n,a,N,errMsg(C))},I=await fetchPackumentConditional(n,{npmrc:a,signal:C,ifNoneMatch:F?.etag,onRetry});return I.status===`not-modified`&&F?(S(`packument-cache-hit: %s (304, etag %s)`,n,F.etag),F.packument):I.status===`fresh`&&I.packument?(I.etag&&putCachedPackument(N,n,I.etag,I.packument),I.packument):fetchPackument(n,{npmrc:a,signal:C,onRetry})}async function prefetchPackuments(n,a,S){if(n.length===0)return;let C=0,N=Math.max(1,Math.min(EM,n.length)),worker=async()=>{for(;C<n.length;){if(S?.aborted)return;let N=n[C++];try{await a(N)}catch{}}};await Promise.all(Array.from({length:N},()=>worker()))}function findVisible(n,a,S){let C=[];if(n!==null){C.push(`${n}/node_modules/${a}`);let S=n;for(;;){let n=S.lastIndexOf(`/node_modules/`);if(n<0||(S=S.slice(0,n),C.push(`${S}/node_modules/${a}`),S===``))break}}C.push(`node_modules/${a}`);for(let n of C){let a=S.get(n);if(a)return a}return null}function decidePlacement(n,a,S,C){let N=C.get(a);return!N||N.version===S||n===null?`node_modules/${a}`:`${n}/node_modules/${a}`}function satisfiesRange(n,a){try{return satisfies(n,new dM(a))}catch{return!1}}function readLockfile(n){if(!existsSync(n))return null;try{let a=JSON.parse(readFileSync(n,`utf-8`));return a.lockfileVersion!==OM||!a.packages||typeof a.packages!=`object`?null:a}catch{return null}}function writeLockfile(n,a,S){let C={},N=[...S].sort((n,a)=>n.installPath<a.installPath?-1:+(n.installPath>a.installPath));for(let n of N)C[n.installPath]={version:n.version,resolved:n.tarballUrl,integrity:n.integrity,dependencies:Object.keys(n.dependencies).length>0?n.dependencies:void 0,bin:n.bin};let F={lockfileVersion:OM,requested:[...a],packages:C};writeFileSync(n,JSON.stringify(F,null,2)+`
|
|
792
|
+
`:``)}function detectIndent$1(n){let a=n.match(/^\{\n( +)/);return a?a[1].length:2}var Uj,Wj,Gj=__esmMin(()=>{Ae(),Jc(),ls(),Vp(),nC(),Zs(),Mg(),Ej(),Uj=promisify(execFile),Wj={command:`sync-flathub`,description:`Update the per-app Flathub tracking-repo manifest to a new git tag + commit. Clones, edits, commits, optionally opens a PR.`,builder:n=>n.version(!1).option(`version`,{description:"Git tag to sync to. Default: `git describe --tags --abbrev=0` in cwd.",type:`string`}).option(`app-id`,{description:"Reverse-DNS app id. Default: `gjsify.flatpak.appId`.",type:`string`}).option(`flathub-repo`,{description:"Flathub tracking-repo (owner/name). Default: `flathub/<appId>`.",type:`string`}).option(`commit`,{description:"Commit SHA to pin. Default: resolved via `git rev-list -n 1 <version>` in cwd.",type:`string`}).option(`branch`,{description:"Branch name in the flathub-repo. Default: `update-to-<version>`.",type:`string`}).option(`source-index`,{description:"Index into modules[0].sources[] to update (when manifest has multiple sources). Default: first `type: git` source.",type:`number`}).option(`pr`,{description:"After commit + push, open a PR via `gh pr create`. Pass `--no-pr` to skip and stop after push.",type:`boolean`,default:!0}).option(`dry-run`,{description:`Show what would be edited; touch no files, run no git commands.`,type:`boolean`,default:!1}).option(`verbose`,{description:`Echo every git / gh invocation before running.`,type:`boolean`,default:!1}),handler:async n=>{let a=process.cwd(),S=(await new Config().forBuild({}).catch(()=>({}))).flatpak??{},C=n.appId??S.appId??readPackageJson(a).name;if(!C)throw Error(`[gjsify flatpak sync-flathub] no app id available — pass --app-id or set gjsify.flatpak.appId.`);let N=n.flathubRepo??S.flathubRepo??`flathub/${C}`,F=n.version??await resolveLatestTag$1(a,n.verbose);if(!F)throw Error(`[gjsify flatpak sync-flathub] no version resolved — pass --version vX.Y.Z or create a git tag locally.`);let I=n.commit??await resolveCommitForTag(a,F,n.verbose),H=n.branch??`update-to-${normaliseBranchSegment(F)}`;if(ke.log(`[gjsify flatpak sync-flathub] appId=${C}`),ke.log(`[gjsify flatpak sync-flathub] flathubRepo=${N}`),ke.log(`[gjsify flatpak sync-flathub] version=${F}`),ke.log(`[gjsify flatpak sync-flathub] commit=${I}`),ke.log(`[gjsify flatpak sync-flathub] branch=${H}`),n.dryRun){ke.log(`[gjsify flatpak sync-flathub] --dry-run set; not cloning / writing / pushing.`);return}let W=flathubCacheRoot(),K=Qo(W,N.replace(`/`,`__`));mkdirSync(W,{recursive:!0}),await ensureClone(K,N,n.verbose);let q=Qo(K,`${C}.json`);if(!existsSync(q))throw Error(`[gjsify flatpak sync-flathub] Flathub manifest not found at ${q} — wrong appId / wrong flathub-repo?`);let Y=readFileSync(q,`utf-8`),X=editManifest(Y,{tag:F,commit:I,sourceIndex:n.sourceIndex});if(X===Y){ke.log(`[gjsify flatpak sync-flathub] manifest already at ${F} — nothing to do.`);return}if(writeFileSync(q,X,`utf-8`),ke.log(`[gjsify flatpak sync-flathub] manifest patched at ${q}`),await gitInRepo(K,[`checkout`,`-B`,H],n.verbose),await gitInRepo(K,[`add`,`.`],n.verbose),await gitInRepo(K,[`commit`,`-m`,`Update to ${F}`],n.verbose),n.pr===!1){ke.log(`[gjsify flatpak sync-flathub] --no-pr set; branch ${H} committed locally in ${K}.`);return}await gitInRepo(K,[`push`,`-u`,`origin`,H,`--force-with-lease`],n.verbose),await ghCreate(K,N,H,F,`Auto-generated by \`gjsify flatpak sync-flathub\`.\n\n- Version: \`${F}\`\n- Commit: \`${I}\`\n`,n.verbose)}},__name$1(resolveLatestTag$1,`resolveLatestTag`),__name$1(detectIndent$1,`detectIndent`)});async function loadFlathubSource(n,a){let S;if(n.against){if(!existsSync(n.against))throw Error(`[gjsify flatpak diff] --against path ${n.against} does not exist`);S=readFileSync(n.against,`utf-8`)}else S=await fetchFlathubManifest(n.flathubRepo,n.appId,n.verbose);let C;try{C=JSON.parse(S)}catch(n){throw Error(`[gjsify flatpak diff] failed to parse Flathub manifest as JSON: ${n.message}`)}let N=(C.modules??[])[0]?.sources??[];if(N.length===0)return null;let F=a??N.findIndex(n=>n?.type===`git`);return F<0||F>=N.length?null:N[F]??null}async function fetchFlathubManifest(n,a,S){for(let C of[`master`,`main`]){let N=`https://raw.githubusercontent.com/${n}/${C}/${a}.json`;S&&ke.log(`[gjsify flatpak diff] fetch ${N}`);try{let n=await fetch(N);if(n.ok)return await n.text();S&&ke.log(`[gjsify flatpak diff] ${C} → HTTP ${n.status}`)}catch(n){S&&ke.log(`[gjsify flatpak diff] ${C} fetch error: ${n.message}`)}}throw Error(`[gjsify flatpak diff] could not fetch flathub manifest from ${n} on master or main`)}async function resolveLatestTag(n,a){try{let{stdout:S}=await Kj(`git`,[`describe`,`--tags`,`--abbrev=0`],{cwd:n}),C=S.trim();return a&&ke.log(`[gjsify flatpak diff] local latest tag → ${C}`),C||null}catch{return null}}var Kj,qj,Jj=__esmMin(()=>{Ae(),Jc(),nC(),Zs(),Mg(),Ej(),Kj=promisify(execFile),qj={command:`diff`,description:`Compare the per-app Flathub tracking-repo manifest against the local git state and report version / commit drift.`,builder:n=>n.version(!1).option(`version`,{description:"Local version to compare against. Default: `git describe --tags --abbrev=0` in cwd.",type:`string`}).option(`app-id`,{description:"Reverse-DNS app id. Default: `gjsify.flatpak.appId`.",type:`string`}).option(`flathub-repo`,{description:"Flathub tracking-repo (owner/name). Default: `gjsify.flatpak.flathubRepo` or `flathub/<appId>`.",type:`string`}).option(`against`,{description:`Read the Flathub manifest from a local file instead of fetching it. Useful in CI or offline.`,type:`string`}).option(`detail`,{description:`Also print the full Flathub manifest source entry alongside the resolved local version.`,type:`boolean`,default:!1}).option(`source-index`,{description:`Index into modules[0].sources[] to inspect (when the manifest has multiple sources).`,type:`number`}).option(`verbose`,{description:`Echo fetch URL + resolved values.`,type:`boolean`,default:!1}),handler:async n=>{let a=process.cwd(),S=(await new Config().forBuild({}).catch(()=>({}))).flatpak??{},C=n.appId??S.appId??readPackageJson(a).name;if(!C)throw Error(`[gjsify flatpak diff] no app id available — pass --app-id or set gjsify.flatpak.appId.`);let N=n.flathubRepo??S.flathubRepo??`flathub/${C}`,F=n.version??await resolveLatestTag(a,n.verbose),I=await loadFlathubSource({appId:C,flathubRepo:N,against:n.against,verbose:n.verbose},n.sourceIndex),H=I?.tag,W=I?.commit;if(ke.log(`[gjsify flatpak diff] appId=${C}`),ke.log(`[gjsify flatpak diff] flathubRepo=${N}`),ke.log(`[gjsify flatpak diff] flathub: tag=${H??`(missing)`} commit=${W??`(missing)`}`),ke.log(`[gjsify flatpak diff] local: tag=${F??`(none)`}`),n.detail&&I&&(ke.log(`[gjsify flatpak diff] flathub manifest source:`),ke.log(JSON.stringify(I,null,2))),!F){ke.warn("[gjsify flatpak diff] no local git tag found — cut a release (`git tag vX.Y.Z`) or pass --version vX.Y.Z to compare against an explicit value.");return}if(H||(ke.warn("[gjsify flatpak diff] flathub manifest has no `tag` field on the inspected source."),process.exit(1)),H===F){ke.log(`✅ in sync (${F})`);return}ke.log(`❌ drift detected — flathub=${H} vs local=${F}`),ke.log(` run \`gjsify flatpak sync-flathub --version ${F}\` to update the Flathub manifest.`),process.exit(1)}}});function resolveCliEntry(){return Yo(Yo(ts(fileURLToPath(import.meta.url)),`..`,`..`),`index.js`)}async function runNode(n,a){await new Promise((S,C)=>{let N=spawn(`node`,n,{cwd:a,stdio:`inherit`});N.on(`error`,C),N.on(`exit`,a=>{a===0?S():C(Error(`sub-command exited with code ${a}: node ${n.join(` `)}`))})})}var Yj,Xj,Zj=__esmMin(()=>{Ae(),nC(),Zs(),fn(),ls(),Yj=promisify(execFile),Xj={command:`release <version>`,description:"Cut a release end-to-end: regenerate Flathub assets, run linters, create + push the git tag, then open the Flathub PR. Each step delegates to the equivalent `gjsify flatpak <sub>` command.",builder:n=>n.version(!1).positional(`version`,{description:"Release tag, e.g. `v0.6.6`.",type:`string`,demandOption:!0}).option(`skip-init`,{description:"Skip the `flatpak init --force` regen step.",type:`boolean`,default:!1}).option(`skip-check`,{description:"Skip the `flatpak check` linter step.",type:`boolean`,default:!1}).option(`skip-tag`,{description:"Skip the `git tag` + `git push --tags` step (use when the tag was already created out-of-band).",type:`boolean`,default:!1}).option(`push-tag`,{description:`Push the created tag after creating it. Default: true.`,type:`boolean`,default:!0}).option(`flathub-repo`,{description:`Flathub tracking-repo override forwarded to sync-flathub.`,type:`string`}).option(`dry-run`,{description:`Print each step that would run without executing any of them.`,type:`boolean`,default:!1}).option(`verbose`,{description:`Echo every sub-command invocation.`,type:`boolean`,default:!1}),handler:async n=>{let a=typeof n.version==`string`?n.version.trim():``;if(!a)throw Error(`[gjsify flatpak release] missing <version> positional`);let S=resolveCliEntry(),C=process.cwd(),N=[];n.skipInit||N.push({name:`init`,args:[S,`flatpak`,`init`,`--force`]}),n.skipCheck||N.push({name:`check`,args:[S,`flatpak`,`check`]});let F=[S,`flatpak`,`sync-flathub`,`--version`,a];if(n.flathubRepo&&F.push(`--flathub-repo`,n.flathubRepo),n.verbose&&F.push(`--verbose`),ke.log(`[gjsify flatpak release] starting release of ${a}`),n.dryRun){ke.log(`[gjsify flatpak release] --dry-run set; printing plan only:`);for(let n of N)ke.log(` · ${n.name}: node ${n.args.join(` `)}`);n.skipTag||ke.log(` · tag: git tag ${a}${n.pushTag===!1?``:` && git push origin `+a}`),ke.log(` · sync: node ${F.join(` `)}`);return}for(let a of N)n.verbose&&ke.log(`[gjsify flatpak release] step ${a.name}: node ${a.args.join(` `)}`),await runNode(a.args,C),ke.log(`[gjsify flatpak release] ${a.name} ✔`);if(!n.skipTag){n.verbose&&ke.log(`[gjsify flatpak release] git tag ${a}`);try{await Yj(`git`,[`tag`,a],{cwd:C}),ke.log(`[gjsify flatpak release] tag ${a} created`)}catch(n){throw Error(`[gjsify flatpak release] git tag failed (${n.message}). If the tag already exists, re-run with --skip-tag.`)}n.pushTag!==!1&&(n.verbose&&ke.log(`[gjsify flatpak release] git push origin ${a}`),await Yj(`git`,[`push`,`origin`,a],{cwd:C}),ke.log(`[gjsify flatpak release] tag pushed`))}n.verbose&&ke.log(`[gjsify flatpak release] sync: node ${F.join(` `)}`),await runNode(F,C),ke.log(`[gjsify flatpak release] ✅ release ${a} complete`)}}}),Qj,$j=__esmMin(()=>{jj(),Nj(),Fj(),Rj(),Bj(),Hj(),Gj(),Jj(),Zj(),Qj={command:`flatpak <subcommand>`,description:`Flatpak toolchain: init/build/deps/sources/ci/check/sync-flathub/diff/release subcommands for shipping GJS apps and CLIs as Flatpaks.`,builder:n=>n.command(Aj.command,Aj.description,Aj.builder,Aj.handler).command(Mj.command,Mj.description,Mj.builder,Mj.handler).command(Pj.command,Pj.description,Pj.builder,Pj.handler).command(Lj.command,Lj.description,Lj.builder,Lj.handler).command(zj.command,zj.description,zj.builder,zj.handler).command(Vj.command,Vj.description,Vj.builder,Vj.handler).command(Wj.command,Wj.description,Wj.builder,Wj.handler).command(qj.command,qj.description,qj.builder,qj.handler).command(Xj.command,Xj.description,Xj.builder,Xj.handler).demandCommand(1).strict()}});function parseSpec$1(n){if(!n)throw Error(`dlx: empty package spec`);if(n.startsWith(`./`)||n.startsWith(`../`)||Zo(n)||existsSync(n))return{kind:`local`,path:Yo(n)};let a=n,S,C=n.lastIndexOf(`@`);if(C>0&&(a=n.slice(0,C),S=n.slice(C+1)),!eM.test(a))throw Error(`dlx: invalid package name "${a}"`);return{kind:`registry`,name:a,version:S,spec:n}}var eM,tM=__esmMin(()=>{Jc(),ls(),eM=/^(?:@[a-z0-9-~][a-z0-9-._~]*\/)?[a-z0-9-~][a-z0-9-._~]*$/,__name$1(parseSpec$1,`parseSpec`)});function resolveGjsEntry(n,a){let S=Qo(n,`package.json`);if(!existsSync(S))throw Error(`dlx: no package.json found at ${n}`);let C=JSON.parse(readFileSync(S,`utf-8`)),N=C.gjsify?.bin,F=C.gjsify?.main,I=C.main,H,W=null,K=!1;if(a!==null){if(!N||!N[a]){let S=N?Object.keys(N).join(`, `):`(none)`;throw Error(`dlx: package "${C.name??n}" has no GJS bin named "${a}" — known: ${S}`)}H=N[a],W=a}else if(N&&Object.keys(N).length===1){let n=Object.keys(N)[0];H=N[n],W=n}else F?H=F:I&&(H=I,K=!0);if(N&&Object.keys(N).length>1&&a===null){let a=Object.keys(N).join(`, `);throw Error(`dlx: package "${C.name??n}" defines multiple GJS bins — pass one of: ${a}`)}if(!H)throw Error(`dlx: package "${C.name??n}" has no GJS entry — set \`gjsify.main\` (or \`gjsify.bin\`) in its package.json`);let q=Yo(n,H);if(!existsSync(q))throw Error(`dlx: GJS entry not found: ${q}`);return{bundlePath:q,binName:W,fromFallback:K}}var nM=__esmMin(()=>{Jc(),ls()});function lexCompare(n,a){return n<a?-1:+(n>a)}function createCacheKey(n){let a=[...n.packages].sort(lexCompare),S=Object.entries(n.registries??{}).sort(([n],[a])=>lexCompare(n,a)),C=JSON.stringify([a,S]);return createHash(`sha256`).update(C).digest(`hex`)}function dlxCacheRoot(){let n=process.env.XDG_CACHE_HOME,a=Qo(n&&n.length>0?n:Qo(homedir(),`.cache`),`gjsify`,`dlx`);return mkdirSync(a,{recursive:!0}),a}function cacheDirFor(n){let a=Qo(dlxCacheRoot(),n);return mkdirSync(a,{recursive:!0}),a}function makePrepareDir(n){let a=Qo(n,`${Date.now().toString(16)}-${process.pid.toString(16)}`);return mkdirSync(a,{recursive:!0}),a}function getValidCachedPkg(n,a=iM){let S=Qo(n,`pkg`),C;try{C=lstatSync(S)}catch(n){if(n.code===`ENOENT`)return;throw n}if(!C.isSymbolicLink())return;let N;try{N=realpathSync(S)}catch{return}return Date.now()-C.mtime.getTime()<=a*rM?N:void 0}function symlinkSwap(n,a){let S=Qo(n,`pkg`),C=Qo(n,`pkg.tmp-${Date.now().toString(16)}-${process.pid.toString(16)}`);symlinkSync(a,C,`dir`);try{renameSync(C,S)}catch(n){let a=n.code;if(a===`EBUSY`||a===`EPERM`||a===`EEXIST`){try{rmSync(C)}catch{}return realpathSync(S)}throw n}return realpathSync(S)}function resolveInstalledPkgDir(n,a){return Yo(n,`node_modules`,a)}var rM,iM,aM=__esmMin(()=>{to(),Jc(),Vp(),ls(),rM=6e4,iM=1440*7});function makeProgressReporter(n={}){if(n.enabled===!1)return sM;let a=n.stream??process.stderr,S=!!a.isTTY;return n.enabled??!0?S?makeTtyReporter(a):makePlainReporter(a):sM}function makeTtyReporter(n){let a=0,S=``;function render(C,N=!1){let F=Date.now();!N&&F-a<33&&C===S||(a=F,S=C,n.write(`\r\x1B[2K`+C))}function clearLine(){n.write(`\r\x1B[2K`),S=``}return{beginPhase(a,S){render(formatBar(a,0,S,void 0,n.columns??80),!0)},update(a){render(formatBar(a.phase,a.current,a.total,a.name,n.columns??80))},endPhase(a){let S=oM[a];clearLine(),n.write(`gjsify install: ${S} done\n`)}}}function makePlainReporter(n){return{beginPhase(a,S){n.write(`gjsify install: ${oM[a]} ${S} package(s)\n`)},update(){},endPhase(a){n.write(`gjsify install: ${oM[a]} done\n`)}}}function formatBar(n,a,S,C,N){let F=oM[n],I=S>0?Math.min(1,a/S):0,H=`${a}/${S}`,W=`gjsify install: ${F} `,K=` ${H}`+(C?` ${C}`:``),q=Math.max(8,Math.min(40,N-W.length-K.length-4)),Y=Math.round(I*q),X=`█`.repeat(Y)+`░`.repeat(q-Y),te=`${W}[${X}]${K}`;if(te.length>N){let n=te.length-N+1,a=C&&C.length>n?C.slice(0,C.length-n-1)+`…`:``;te=`${W}[${X}] ${H}${a?` `+a:``}`}return te}var oM,sM,cM=__esmMin(()=>{oM={resolve:`resolving`,download:`downloading`,extract:`extracting`,link:`linking bins`},sM={update(){},beginPhase(){},endPhase(){}}});function parse(n){try{return new SemVer(n)}catch{return null}}function compare(n,a){let S=n instanceof SemVer?n:new SemVer(n),C=a instanceof SemVer?a:new SemVer(a);return S.compare(C)}function satisfies(n,a){let S=a instanceof dM?a:new dM(a),C=n instanceof SemVer?n:parse(String(n));return C?S.test(C):!1}function maxSatisfying(n,a){let S=a instanceof dM?a:new dM(a),C=null;for(let a of n){let n=parse(a);!n||!S.test(n)||(C===null||n.compare(C)>0)&&(C=n)}return C?C.version:null}function testComparator(n,a){if(n.semver===null)return!0;let S=a.compare(n.semver);switch(n.operator){case``:case`=`:return S===0;case`<`:return S<0;case`<=`:return S<=0;case`>`:return S>0;case`>=`:return S>=0}}function formatComparator(n){return n.semver===null?`*`:`${n.operator}${n.semver.version}`}function parseRangePart(n){let a=n.trim();if(a===``||a===`*`||a.toLowerCase()===`latest`)return[{operator:`>=`,semver:new SemVer(`0.0.0`)}];let S=a.match(/^\s*(\S+)\s+-\s+(\S+)\s*$/);if(S)return hyphenRange(S[1],S[2]);let C=a.replace(/(<=|>=|<|>|=)\s+(?=\S)/g,`$1`).split(/\s+/),N=[];for(let n of C)N.push(...parseSimple(n));return N}function parseSimple(n){if(n===`*`||n===``||n.toLowerCase()===`latest`)return[{operator:`>=`,semver:new SemVer(`0.0.0`)}];if(n.startsWith(`^`))return caretRange(n.slice(1));if(n.startsWith(`~`))return tildeRange(n.slice(1).replace(/^>/,``));let a=n.match(/^(<=|>=|<|>|=)\s*(.+)$/);if(a){let n=a[1];return primitiveRange(n,a[2])}return partialRange(n)}function parsePartial(n){let a=n.trim().replace(/^v/,``);if(a===``||a===`*`)return{major:null,minor:null,patch:null,pre:``,build:``};let S=``,C=``,N=a,F=N.indexOf(`+`);F>=0&&(C=N.slice(F+1),N=N.slice(0,F));let I=N.indexOf(`-`);I>=0&&(S=N.slice(I+1),N=N.slice(0,I));let H=N.split(`.`),xr=a=>{if(a===void 0||a===``||a===`x`||a===`X`||a===`*`)return null;if(!/^\d+$/.test(a))throw TypeError(`Invalid partial version: ${n}`);return Number(a)};return{major:xr(H[0]),minor:xr(H[1]),patch:xr(H[2]),pre:S,build:C}}function partialToVersion(n){return`${n.major??0}.${n.minor??0}.${n.patch??0}${n.pre?`-${n.pre}`:``}${n.build?`+${n.build}`:``}`}function partialRange(n){let a=parsePartial(n);return a.major===null?[{operator:`>=`,semver:new SemVer(`0.0.0`)}]:a.minor===null?[{operator:`>=`,semver:new SemVer(`${a.major}.0.0`)},{operator:`<`,semver:new SemVer(`${a.major+1}.0.0`)}]:a.patch===null?[{operator:`>=`,semver:new SemVer(`${a.major}.${a.minor}.0`)},{operator:`<`,semver:new SemVer(`${a.major}.${a.minor+1}.0`)}]:[{operator:`=`,semver:new SemVer(partialToVersion(a))}]}function caretRange(n){let a=parsePartial(n);if(a.major===null)return[{operator:`>=`,semver:new SemVer(`0.0.0`)}];let S=`${a.major}.${a.minor??0}.${a.patch??0}${a.pre?`-${a.pre}`:``}`,C;return C=a.major>0||a.minor===null?`${a.major+1}.0.0`:a.minor>0||a.patch===null?`0.${a.minor+1}.0`:`0.0.${a.patch+1}`,[{operator:`>=`,semver:new SemVer(S)},{operator:`<`,semver:new SemVer(C)}]}function tildeRange(n){let a=parsePartial(n);if(a.major===null)return[{operator:`>=`,semver:new SemVer(`0.0.0`)}];let S=`${a.major}.${a.minor??0}.${a.patch??0}${a.pre?`-${a.pre}`:``}`,C=a.minor===null?`${a.major+1}.0.0`:`${a.major}.${a.minor+1}.0`;return[{operator:`>=`,semver:new SemVer(S)},{operator:`<`,semver:new SemVer(C)}]}function primitiveRange(n,a){let S=parsePartial(a);return S.major===null?[{operator:`>=`,semver:new SemVer(`0.0.0`)}]:n===`=`||n===``?partialRange(a):n===`>`?S.minor===null?[{operator:`>=`,semver:new SemVer(`${S.major+1}.0.0`)}]:S.patch===null?[{operator:`>=`,semver:new SemVer(`${S.major}.${S.minor+1}.0`)}]:[{operator:`>`,semver:new SemVer(partialToVersion(S))}]:n===`<`?S.minor===null?[{operator:`<`,semver:new SemVer(`${S.major}.0.0`)}]:S.patch===null?[{operator:`<`,semver:new SemVer(`${S.major}.${S.minor}.0`)}]:[{operator:`<`,semver:new SemVer(partialToVersion(S))}]:n===`>=`?[{operator:`>=`,semver:new SemVer(partialToVersion(S))}]:S.minor===null?[{operator:`<`,semver:new SemVer(`${S.major+1}.0.0`)}]:S.patch===null?[{operator:`<`,semver:new SemVer(`${S.major}.${S.minor+1}.0`)}]:[{operator:`<=`,semver:new SemVer(partialToVersion(S))}]}function hyphenRange(n,a){let S=parsePartial(n),C=parsePartial(a),N=S.major===null?{operator:`>=`,semver:new SemVer(`0.0.0`)}:{operator:`>=`,semver:new SemVer(`${S.major}.${S.minor??0}.${S.patch??0}${S.pre?`-${S.pre}`:``}`)},F;return F=C.major===null?{operator:`>=`,semver:new SemVer(`0.0.0`)}:C.minor===null?{operator:`<`,semver:new SemVer(`${C.major+1}.0.0`)}:C.patch===null?{operator:`<`,semver:new SemVer(`${C.major}.${C.minor+1}.0`)}:{operator:`<=`,semver:new SemVer(`${C.major}.${C.minor}.${C.patch}${C.pre?`-${C.pre}`:``}`)},[N,F]}var lM,uM,SemVer,dM,fM=__esmMin(()=>{lM=/^(0|[1-9]\d*)$/,uM=/^(\d+)\.(\d+)\.(\d+)(?:-((?:[0-9A-Za-z-]+)(?:\.[0-9A-Za-z-]+)*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/,SemVer=class{major;minor;patch;prerelease;build;version;constructor(n){let a=String(n).trim().replace(/^v/,``),S=uM.exec(a);if(!S)throw TypeError(`Invalid Version: ${n}`);this.major=Number(S[1]),this.minor=Number(S[2]),this.patch=Number(S[3]),this.prerelease=S[4]?S[4].split(`.`).map(n=>lM.test(n)?Number(n):n):[],this.build=S[5]?S[5].split(`.`):[],this.version=`${this.major}.${this.minor}.${this.patch}`+(this.prerelease.length?`-${this.prerelease.join(`.`)}`:``)+(this.build.length?`+${this.build.join(`.`)}`:``)}compare(n){return this.major===n.major?this.minor===n.minor?this.patch===n.patch?this.comparePre(n):this.patch<n.patch?-1:1:this.minor<n.minor?-1:1:this.major<n.major?-1:1}comparePre(n){let a=this.prerelease,S=n.prerelease;if(a.length===0&&S.length===0)return 0;if(a.length===0)return 1;if(S.length===0)return-1;for(let n=0;;n++){let C=a[n],N=S[n];if(C===void 0&&N===void 0)return 0;if(N===void 0)return 1;if(C===void 0)return-1;if(C===N)continue;let F=typeof C==`number`,I=typeof N==`number`;return F&&!I?-1:!F&&I?1:C<N?-1:1}}toString(){return this.version}},dM=class Range{raw;set;constructor(n){if(n instanceof Range){this.raw=n.raw,this.set=n.set;return}this.raw=String(n).trim();let a=this.raw.split(/\s*\|\|\s*/),S=[];for(let n of a){let a=parseRangePart(n);if(a.length===0)throw TypeError(`Invalid range: ${this.raw}`);S.push(a)}if(S.length===0)throw TypeError(`Invalid range: ${this.raw}`);this.set=S}test(n){let a=n instanceof SemVer?n:parse(String(n));if(!a)return!1;for(let n of this.set)if(n.every(n=>testComparator(n,a))){if(a.prerelease.length>0&&!n.some(n=>n.semver!==null&&n.semver.prerelease.length>0&&n.semver.major===a.major&&n.semver.minor===a.minor&&n.semver.patch===a.patch))continue;return!0}return!1}format(){return this.set.map(n=>n.map(formatComparator).join(` `)).join(` || `)}toString(){return this.format()}}});function assertPackument(n,a){if(!a||typeof a!=`object`)throw TypeError(`registry: ${n} packument is not an object`);let S=a;if(typeof S.name!=`string`)throw TypeError(`registry: ${n} packument missing string name`);if(!S.versions||typeof S.versions!=`object`)throw TypeError(`registry: ${n} packument missing versions map`)}function registryFor(n,a){if(a&&n.startsWith(`@`)){let S=n.slice(0,n.indexOf(`/`)),C=a.scopes[S];if(C)return ensureTrailingSlash$1(C)}return a?.registry?ensureTrailingSlash$1(a.registry):pM}function packumentUrl(n,a){let S=ensureTrailingSlash$1(a);if(n.startsWith(`@`)){let a=n.indexOf(`/`);if(a<0)throw TypeError(`Invalid scoped package name: ${n}`);let C=n.slice(0,a),N=n.slice(a+1);return`${S}${encodeURIComponent(C)}/${encodeURIComponent(N)}`}return`${S}${encodeURIComponent(n)}`}async function fetchPackumentConditional(n,a={}){let S=packumentUrl(n,a.registry??registryFor(n,a.npmrc)),C=buildHeaders(S,{...a,acceptEncoding:`gzip`});C.accept??=`application/vnd.npm.install-v1+json`,a.ifNoneMatch&&(C[`if-none-match`]=a.ifNoneMatch);let N=await fetchWithRetry(S,{headers:C,signal:a.signal},{fetch:a.fetch,retries:a.retries,retryDelayMs:a.retryDelayMs,timeoutMs:a.timeoutMs,onRetry:a.onRetry});if(N.status===304){try{await N.arrayBuffer()}catch{}return{status:`not-modified`,etag:a.ifNoneMatch}}if(!N.ok)throw N.status===404||N.status===406?new PackageNotFoundError(n,S):Error(`registry GET ${S} -> ${N.status} ${N.statusText}`);let F=N.headers.get(`etag`)??void 0,I=await decodeJsonBody(N);return assertPackument(n,I),{status:`fresh`,packument:I,etag:F}}async function decodeJsonBody(n){return n.json()}async function fetchPackument(n,a={}){let S=await fetchPackumentConditional(n,a);if(!S.packument)throw Error(`registry: ${n} returned 304 Not Modified to an unconditional request`);return S.packument}async function fetchTarball(n,a={}){let S=buildHeaders(n,{...a,acceptEncoding:`identity`});S.accept??=`application/octet-stream`;let C=await fetchWithRetry(n,{headers:S,signal:a.signal},{fetch:a.fetch,retries:a.retries,retryDelayMs:a.retryDelayMs,timeoutMs:a.timeoutMs,onRetry:a.onRetry,retryNotFound:a.retryNotFound??!0});if(!C.ok)throw Error(`tarball GET ${n} -> ${C.status} ${C.statusText}`);let N=new Uint8Array(await C.arrayBuffer());if(a.integrity&&!await verifyIntegrity(N,a.integrity))throw new IntegrityError(n,a.integrity);return N}async function fetchWithRetry(n,a,S){let C=S.fetch??globalThis.fetch;if(!C)throw Error(`@gjsify/npm-registry: globalThis.fetch is missing`);let N=Math.max(0,S.retries??3),F=Math.max(0,S.retryDelayMs??250),I=Math.max(0,S.timeoutMs??3e4),H=S.retryNotFound??!1,W=0,K,q=0;for(;;){if(a.signal?.aborted)throw signalAbortError(a.signal);let Y=I>0?new AbortController:null,X=Y===null?null:setTimeout(()=>Y.abort(Error(`@gjsify/npm-registry: per-request timeout ${I}ms`)),I),te=composeSignals(a.signal,Y?.signal);try{let S=await C(n,{...a,signal:te}),F=isRetryableStatus(S.status)||H&&S.status===404;if(S.ok||!F||W>=N)return S;try{await S.arrayBuffer()}catch{}K=Error(`HTTP ${S.status} ${S.statusText}`)}catch(S){let C=Y!==null&&Y.signal.aborted,F=a.signal?.aborted===!0;if(C&&!F){if(q++,W>=N)throw new RegistryTimeoutError(n,I,q);K=S}else if(F)throw signalAbortError(a.signal);else{if(!isRetryableError(S)||W>=N)throw S;K=S}}finally{X!==null&&clearTimeout(X)}let ne=Math.min(F*2**W,8e3);S.onRetry?.({attempt:W+1,error:K,delayMs:ne}),await delay(ne,a.signal),W++}}function composeSignals(n,a){return n?a?AbortSignal.any([n,a]):n:a}function isRetryableStatus(n){return n===408||n===425||n===429||n===500||n===502||n===503||n===504||n===521||n===522||n===524||n===525}function isRetryableError(n){if(n&&typeof n==`object`&&`name`in n&&n.name===`AbortError`)return!1;if(n instanceof TypeError)return!0;if(n&&typeof n==`object`&&`name`in n){let a=n.name;if(a===`FetchError`)return!0;if(a===`AbortError`)return!1}let a=n?.cause;if(a&&typeof a==`object`&&`code`in a){let n=a.code;if(typeof n==`string`)return n===`ECONNRESET`||n===`ECONNREFUSED`||n===`ENETUNREACH`||n===`ENOTFOUND`||n===`ETIMEDOUT`||n===`EAI_AGAIN`||n===`UND_ERR_SOCKET`||n===`UND_ERR_CONNECT_TIMEOUT`}return!1}function delay(n,a){return n<=0?Promise.resolve():new Promise((S,C)=>{let N=setTimeout(()=>{a?.removeEventListener?.(`abort`,onAbort),S()},n),onAbort=()=>{clearTimeout(N),C(signalAbortError(a))};if(a?.aborted){clearTimeout(N),C(signalAbortError(a));return}a?.addEventListener?.(`abort`,onAbort,{once:!0})})}function signalAbortError(n){let a=n&&`reason`in n?n.reason:void 0;if(a instanceof Error)return a;let S=Error(`Aborted`);return S.name=`AbortError`,S}async function verifyIntegrity(n,a){let S=a.trim().split(/\s+/);for(let a of S){let S=a.indexOf(`-`);if(S<0)continue;let C=a.slice(0,S).toLowerCase(),N=a.slice(S+1),F=globalThis.crypto?.subtle;if(!F)throw Error(`@gjsify/npm-registry: globalThis.crypto.subtle is missing`);let I=subriToWebCryptoAlgo(C);if(!I)continue;let H=await F.digest(I,dataAsArrayBuffer(n));if(bytesToBase64(new Uint8Array(H))===N)return!0}return!1}function subriToWebCryptoAlgo(n){switch(n){case`sha1`:return`SHA-1`;case`sha256`:return`SHA-256`;case`sha384`:return`SHA-384`;case`sha512`:return`SHA-512`;default:return null}}function dataAsArrayBuffer(n){if(n.byteOffset===0&&n.byteLength===n.buffer.byteLength)return n.buffer;let a=new Uint8Array(n.byteLength);return a.set(n),a.buffer}function bytesToBase64(n){let a=``;for(let S=0;S<n.length;S++)a+=String.fromCharCode(n[S]);return btoa(a)}function parseNpmrc(n){let a={registry:pM,scopes:{},authTokens:{},basicAuth:{}},S=n.split(/\r?\n/),C={};for(let n of S){let S=n.replace(/^\s+|\s+$/g,``);if(!S||S.startsWith(`#`)||S.startsWith(`;`))continue;let N=S.indexOf(`=`);if(N<0)continue;let F=S.slice(0,N).trim(),I=expandEnv(stripQuotes(S.slice(N+1).trim()));if(F===`registry`){a.registry=ensureTrailingSlash$1(I);continue}let H=F.match(/^(@[^:]+):registry$/);if(H){a.scopes[H[1]]=ensureTrailingSlash$1(I);continue}let W=F.match(/^\/\/(.+):_authToken$/);if(W){a.authTokens[normalizeAuthHost(W[1])]=I;continue}let K=F.match(/^\/\/(.+):username$/);if(K){(C[normalizeAuthHost(K[1])]??={}).user=I;continue}let q=F.match(/^\/\/(.+):_password$/);if(q){let n=base64Decode(I);(C[normalizeAuthHost(q[1])]??={}).pass=n;continue}}for(let[n,S]of Object.entries(C))S.user&&S.pass!==void 0&&(a.basicAuth[n]={username:S.user,password:S.pass});return a}function buildHeaders(n,a){let S={"user-agent":`gjsify-install/0.3.7`,"accept-encoding":a.acceptEncoding??`identity`};if(a.npmrc){let C=resolveAuthForUrl(n,a.npmrc);C&&(S.authorization=C)}if(a.headers)for(let[n,C]of Object.entries(a.headers))S[n.toLowerCase()]=C;return S}function resolveAuthForUrl(n,a){let S=pathPrefixes(new URL(n));for(let n of S){let S=a.authTokens[n];if(S)return`Bearer ${S}`;let C=a.basicAuth[n];if(C)return`Basic ${btoa(`${C.username}:${C.password}`)}`}return null}function pathPrefixes(n){let a=n.pathname.split(`/`).filter(Boolean),S=[];for(let C=a.length;C>=0;C--){let N=a.slice(0,C).join(`/`);S.push(N?`//${n.host}/${N}`:`//${n.host}`)}return S}function normalizeAuthHost(n){return`//${n.replace(/\/+$/,``)}`}function ensureTrailingSlash$1(n){return n.endsWith(`/`)?n:n+`/`}function stripQuotes(n){return n.startsWith(`"`)&&n.endsWith(`"`)||n.startsWith(`'`)&&n.endsWith(`'`)?n.slice(1,-1):n}function expandEnv(n){return n.replace(/\$\{([A-Z0-9_]+)\}/gi,(n,a)=>globalThis.process?.env?.[a]??``)}function base64Decode(n){return atob(n)}async function whoami(n,a){let S=`${ensureTrailingSlash$1(n)}-/whoami`,C=buildHeaders(S,{npmrc:a});C.accept=`application/json`;let N=globalThis.fetch;if(!N)throw Error(`@gjsify/npm-registry: globalThis.fetch is missing`);let F=await N(S,{method:`GET`,headers:C});if(!F.ok)throw Error(`whoami GET ${S} -> ${F.status} ${F.statusText}`);let I=await F.json();if(I&&typeof I==`object`&&`username`in I){let n=I.username;if(typeof n==`string`&&n.length>0)return{username:n}}return{}}var pM,PackageNotFoundError,IntegrityError,RegistryTimeoutError,mM=__esmMin(()=>{pM=`https://registry.npmjs.org/`,__name$1(ensureTrailingSlash$1,`ensureTrailingSlash`),PackageNotFoundError=class extends Error{constructor(n,a){super(`Package not found in registry: ${n} (${a})`),this.name=n,this.url=a,this.name=`PackageNotFoundError`}},IntegrityError=class extends Error{constructor(n,a){super(`Tarball integrity mismatch for ${n} (expected ${a})`),this.url=n,this.integrity=a,this.name=`IntegrityError`}},RegistryTimeoutError=class extends Error{constructor(n,a,S){let C=Math.round(a/100)/10,N=Math.round(a*S/100)/10;super(`@gjsify/npm-registry: GET ${n} timed out after ${C}s × ${S} attempt(s) (total ~${N}s). This usually means the registry CDN is slow or unreachable.`),this.url=n,this.timeoutMs=a,this.attempts=S,this.name=`RegistryTimeoutError`}}});function parseTar(n){let a=[],S=null,C=null,N=null,F=0;for(;F+512<=n.length;){let I=n.subarray(F,F+512);if(allZeros(I)){let a=n.subarray(F+512,F+2*512);if(a.length===512&&allZeros(a))break;F+=512;continue}if(!validateChecksum(I))throw new TarParseError(`Bad header checksum at offset ${F} — file is not a valid tar archive`);let H=readString(I,0,100),W=parseOctal(I,100,8),K=parseOctal(I,124,12),q=parseOctal(I,136,12),Y=String.fromCharCode(I[156]||0),X=readString(I,157,100),te=readString(I,257,6),ne=readString(I,345,155),re=readString(I,265,32),ie=readString(I,297,32);F+=512;let ae=n.subarray(F,F+K);if(F+=alignToBlock(K),Y===`x`){S=parsePaxRecords(ae);continue}if(Y===`g`)continue;if(Y===`L`){C=bytesToString(ae).replace(/\0+$/,``);continue}if(Y===`K`){N=bytesToString(ae).replace(/\0+$/,``);continue}let oe=H;te===`ustar`&&ne!==``&&(oe=`${ne}/${H}`),C!==null&&(oe=C,C=null);let Z=X;if(N!==null&&(Z=N,N=null),S!==null){let C=S.get(`path`);C!==void 0&&(oe=C);let N=S.get(`linkpath`);N!==void 0&&(Z=N);let I=S.get(`size`);if(I!==void 0){let C=Number(I);if(Number.isFinite(C)){let N=F-alignToBlock(K),I=n.subarray(N,N+C);F=N+alignToBlock(C),S=null,a.push(buildEntry(oe,Z,Y,W,q,re,ie,I));continue}}S=null}a.push(buildEntry(oe,Z,Y,W,q,re,ie,ae))}return a}function buildEntry(n,a,S,C,N,F,I,H){return{name:n,linkname:a,type:typeflagToType(S,n),mode:C,mtime:N,body:H,uname:F,gname:I}}function typeflagToType(n,a){switch(n){case`0`:case`\0`:case``:return a.endsWith(`/`)?`directory`:`file`;case`1`:return`hardlink`;case`2`:return`symlink`;case`5`:return`directory`;case`x`:return`pax-header`;case`g`:return`pax-global`;case`L`:return`gnu-longname`;case`K`:return`gnu-longlink`;default:return`unknown`}}function parsePaxRecords(n){let a=new Map,S=0;for(;S<n.length;){let C=S;for(;C<n.length&&n[C]!==32;)C++;if(C>=n.length)break;let N=bytesToString(n.subarray(S,C)),F=Number(N);if(!Number.isFinite(F)||F<=0)break;let I=S+F;if(I>n.length)break;let H=bytesToString(n.subarray(C+1,I-1)),W=H.indexOf(`=`);if(W>0){let n=H.slice(0,W),S=H.slice(W+1);a.set(n,S)}S=I}return a}function readString(n,a,S){let C=a,N=a+S;for(;C<N&&n[C]!==0;)C++;return bytesToString(n.subarray(a,C))}function bytesToString(n){return new TextDecoder(`utf-8`,{fatal:!1}).decode(n)}function parseOctal(n,a,S){if(S>0&&n[a]&128){let C=n[a]&127;for(let N=1;N<S;N++)C=C*256+n[a+N];return C}let C=``;for(let N=0;N<S;N++){let S=n[a+N];S===0||S===32||(C+=String.fromCharCode(S))}return C===``?0:parseInt(C,8)}function alignToBlock(n){return Math.ceil(n/512)*512}function allZeros(n){for(let a=0;a<n.length;a++)if(n[a]!==0)return!1;return!0}function validateChecksum(n){let a=parseOctal(n,148,8),S=0,C=0;for(let a=0;a<512;a++){let N=a>=148&&a<156?32:n[a];S+=N,C+=N>127?N-256:N}return a===S||a===C}var TarParseError,hM=__esmMin(()=>{TarParseError=class extends Error{constructor(n){super(n),this.name=`TarParseError`}}});function createTarball(n){let a=[];for(let S of n){if(`directory`in S&&S.directory===!0){a.push(buildHeader(ensureTrailingSlash(S.name),0,`5`,S.mode??493,S.mtime??0));continue}let n=S,C=typeof n.body==`string`?new TextEncoder().encode(n.body):n.body,N=n.mode??defaultFileMode(C);a.push(buildHeader(n.name,C.byteLength,`0`,N,n.mtime??0)),a.push(C);let F=padTo512(C.byteLength);F>0&&a.push(new Uint8Array(F))}return a.push(new Uint8Array(512*2)),concatChunks(a)}function buildHeader(n,a,S,C,N){let{prefix:F,basename:I}=splitPathForUstar(n),H=new Uint8Array(512);writeAscii(H,I,0,100),writeOctal(H,C&4095,100,7),H[107]=0,writeOctal(H,0,108,7),H[115]=0,writeOctal(H,0,116,7),H[123]=0,writeOctal(H,a,124,11),H[135]=0,writeOctal(H,N,136,11),H[147]=0;for(let n=148;n<156;n++)H[n]=32;H[156]=S.charCodeAt(0),writeAscii(H,`ustar\0`,257,6),writeAscii(H,`00`,263,2),F&&writeAscii(H,F,345,155);let W=0;for(let n=0;n<512;n++)W+=H[n];return writeAscii(H,W.toString(8).padStart(6,`0`),148,6),H[154]=0,H[155]=32,H}function splitPathForUstar(n){if(n.length<=100)return{prefix:``,basename:n};if(n.length>255)throw Error(`createTarball: path too long (${n.length} > 255 chars): ${n}`);for(let a=Math.min(n.length-1,155);a>0;a--)if(n[a]===`/`&&n.length-a-1<=100)return{prefix:n.slice(0,a),basename:n.slice(a+1)};throw Error(`createTarball: cannot split path into ustar prefix+basename (basename slot is 100 chars): ${n}`)}function writeAscii(n,a,S,C){let N=new TextEncoder().encode(a);if(N.length>C)throw Error(`createTarball: field too long (${N.length} > ${C}): "${a}"`);n.set(N,S)}function writeOctal(n,a,S,C){writeAscii(n,a.toString(8).padStart(C,`0`),S,C)}function padTo512(n){let a=n%512;return a===0?0:512-a}function ensureTrailingSlash(n){return n.endsWith(`/`)?n:`${n}/`}function defaultFileMode(n){return n.length>=2&&n[0]===35&&n[1]===33?493:420}function concatChunks(n){let a=0;for(let S of n)a+=S.byteLength;let S=new Uint8Array(a),C=0;for(let a of n)S.set(a,C),C+=a.byteLength;return S}var gM=__esmMin(()=>{});async function extractTarball(n,a,S={}){let C=n instanceof Uint8Array?n:new Uint8Array(n),N=parseTar(S.gzip??(C.length>=2&&C[0]===31&&C[1]===139)?await gunzip(C):C);mkdirSync(a,{recursive:!0});let F=S.strip??1,I=S.preventEscape??!0,H={files:[],directories:[],symlinks:[],skipped:0};for(let n of N){let C=stripComponents(n.name,F);if(C===null||C===``){H.skipped++;continue}let N=Yo(a,C);if(I&&!isInside(N,a))throw Error(`tar: refusing to extract ${n.name} outside ${a} (resolved=${N})`);if(S.filter&&!S.filter(n,N)){H.skipped++;continue}if(n.type===`directory`){mkdirSync(N,{recursive:!0}),H.directories.push(N);continue}if(n.type===`file`){mkdirSync(ts(N),{recursive:!0}),writeFileSync(N,n.body);let a=S.chmod?.(n,N)??n.mode&511;if(a>0)try{chmodSync(N,a)}catch{}H.files.push(N);continue}if(n.type===`symlink`){mkdirSync(ts(N),{recursive:!0});try{symlinkSync(n.linkname,N),H.symlinks.push(N)}catch{writeFileSync(N,n.linkname),H.files.push(N)}continue}H.skipped++}return H}async function gunzip(n){let a=globalThis.DecompressionStream;if(typeof a!=`function`)throw Error(`@gjsify/tar: globalThis.DecompressionStream is not available — import '@gjsify/compression-streams/register' on GJS to register it`);return drainStream(new Blob([new Uint8Array(n)]).stream().pipeThrough(new a(`gzip`)))}async function gzip(n){let a=globalThis.CompressionStream;if(typeof a!=`function`)throw Error(`@gjsify/tar: globalThis.CompressionStream is not available — import '@gjsify/compression-streams/register' on GJS to register it`);return drainStream(new Blob([new Uint8Array(n)]).stream().pipeThrough(new a(`gzip`)))}async function drainStream(n){let a=[],S=0,C=n.getReader();for(;;){let{value:n,done:N}=await C.read();if(N)break;let F=n instanceof Uint8Array?n:new Uint8Array(n);a.push(F),S+=F.length}let N=new Uint8Array(S),F=0;for(let n of a)N.set(n,F),F+=n.length;return N}function stripComponents(n,a){if(a<=0)return n;let S=n.split(`/`).filter(n=>n!==``);return S.length<=a?null:S.slice(a).join(`/`)}function isInside(n,a){let S=$o(a,n);return S!==``&&!S.startsWith(`..`)&&!Zo(S)}var _M=__esmMin(()=>{hM(),Jc(),ls()}),vM=__exportAll$3({BLOCK_SIZE:()=>512,TarParseError:()=>TarParseError,createTarball:()=>createTarball,extractTarball:()=>extractTarball,gunzip:()=>gunzip,gzip:()=>gzip,parseTar:()=>parseTar}),yM=__esmMin(()=>{hM(),gM(),_M()});function gjsifyCacheRoot(n,a){let S=process.env.XDG_CACHE_HOME;return Qo(S&&S.length>0?S:Qo(homedir(),`.cache`),`gjsify`,n,a)}function atomicWrite(n,a){try{mkdirSync(Qo(n,`..`),{recursive:!0});let S=`${n}.tmp.${process.pid}`;writeFileSync(S,a),renameSync(S,n)}catch{}}function readCacheFile(n){if(!existsSync(n))return null;try{let a=readFileSync(n);return a.length===0?null:a}catch{return null}}var bM=__esmMin(()=>{Jc(),Vp(),ls()});function cacheRoot$1(){return gjsifyCacheRoot(`tarballs`,xM)}function parseSri(n){if(!n)return null;let a=n.indexOf(`-`);if(a<=0||a===n.length-1)return null;let S=n.slice(0,a),C=n.slice(a+1).replace(/=+$/,``),N;try{N=Buffer.from(C,`base64`).toString(`hex`)}catch{return null}return N.length<4?null:{algorithm:S,hex:N}}function pathFor$1(n){let a=parseSri(n);if(!a)return null;let S=a.hex.slice(0,2);return Qo(cacheRoot$1(),a.algorithm,S,`${a.hex}.tgz`)}function getCachedTarball(n){let a=pathFor$1(n);return a?readCacheFile(a):null}function putCachedTarball(n,a){let S=pathFor$1(n);S&&(existsSync(S)||atomicWrite(S,a))}function npmCacacheContentDir(){let n=process.env.GJSIFY_NPM_CACHE;if(n!==void 0){let a=n.trim();return a===``||a===`0`||a===`false`?null:Qo(a.endsWith(`_cacache`)?a:Qo(a,`_cacache`),`content-v2`)}let a=process.env.npm_config_cache;return Qo(a&&a.length>0?a:Qo(homedir(),`.npm`),`_cacache`,`content-v2`)}function npmCachePathFor(n){let a=npmCacacheContentDir();if(!a)return null;let S=parseSri(n);return S?Qo(a,S.algorithm,S.hex.slice(0,2),S.hex.slice(2,4),S.hex.slice(4)):null}function getForeignCachedTarball(n){let a=npmCachePathFor(n);return a?readCacheFile(a):null}var xM,SM=__esmMin(()=>{Jc(),Vp(),ls(),bM(),xM=`v1`,__name$1(cacheRoot$1,`cacheRoot`),__name$1(pathFor$1,`pathFor`)});function isEnabled(){let n=process.env.GJSIFY_PACKUMENT_CACHE;if(n===void 0)return!0;let a=n.trim();return!(a===`0`||a===`false`||a===``)}function cacheRoot(){return gjsifyCacheRoot(`metadata`,CM)}function shardFor(n){let a=2166136261;for(let S=0;S<n.length;S++)a^=n.charCodeAt(S),a=Math.imul(a,16777619);return(a>>>0&255).toString(16).padStart(2,`0`)}function pathFor(n,a){if(!isEnabled())return null;let S=`${n}|${a}`,C=`${encodeURIComponent(n)}|${encodeURIComponent(a)}.json`;return Qo(cacheRoot(),shardFor(S),C)}function getCachedPackument(n,a){let S=pathFor(n,a);if(!S)return null;let C=readCacheFile(S);if(!C)return null;try{let n=JSON.parse(C.toString(`utf-8`));return typeof n.etag!=`string`||!n.etag||!n.packument||typeof n.packument!=`object`?null:{etag:n.etag,packument:n.packument}}catch{return null}}function putCachedPackument(n,a,S,C){if(!S)return;let N=pathFor(n,a);N&&atomicWrite(N,JSON.stringify({etag:S,packument:C}))}var CM,wM=__esmMin(()=>{ls(),bM(),CM=`v1`}),TM=__exportAll$3({installPackagesNative:()=>installPackagesNative,parseSpec:()=>parseSpec,pickVersion:()=>pickVersion});async function installPackagesNative(n){if(n.specs.length===0)throw Error(`installPackagesNative: empty specs list`);mkdirSync(n.prefix,{recursive:!0});let a=await loadNpmrc$1(n),S=makeLogger(n.verbose??!1),C=n.progress,N=Qo(n.prefix,DM),F=readLockfile(N),I;if(n.frozen){if(!F)throw Error(`install: --immutable requires ${DM} at ${n.prefix} — none found. Run \`gjsify install\` (without --immutable) to generate one and commit it.`);let a=describeLockfileDrift(F,n.specs);if(a)throw Error(`install: --immutable but ${N} is stale.\n${a}\nRe-run \`gjsify install\` (without --immutable) to refresh the lockfile.`);S(`install: --immutable, using lockfile (%d package(s))`,Object.keys(F.packages).length),I=lockfileToNodes(F)}else F&&lockfileMatchesRequest(F,n.specs)?(S(`install: using lockfile (%d package(s))`,Object.keys(F.packages).length),I=lockfileToNodes(F)):(S(`install: resolving %d top-level spec(s) → %s`,n.specs.length,n.prefix),I=await resolveDeps(n.specs,a,S,n.overrides,n.skipDeps,n.signal,C),n.lockfile&&(writeLockfile(N,n.specs,I),S(`install: wrote %s (%d entries)`,DM,I.length)));return S(`install: downloading %d tarball(s)`,I.length),await downloadAndExtractAll(I,n.prefix,a,S,n.signal,C),await linkBins(I,n.prefix,S),S(`install: done`),topLevelResolutions(n.specs,I)}function errMsg(n){return n instanceof Error?n.message:String(n)}function topLevelResolutions(n,a){let S=new Map;for(let n of a)n.installPath===`node_modules/${n.name}`&&S.set(n.name,n);let C=[];for(let a of n){let n=parseSpecName(a),N=S.get(n);N&&C.push({name:N.name,version:N.version})}return C}function parseSpecName(n){if(n.startsWith(`@`)){let a=n.indexOf(`/`);if(a===-1)return n;let S=n.indexOf(`@`,a+1);return S===-1?n:n.slice(0,S)}let a=n.indexOf(`@`);return a===-1?n:n.slice(0,a)}async function resolveDeps(n,a,S,C,N,F,I){I?.beginPhase(`resolve`,n.length);let applyOverride=(n,a)=>{if(!C)return a;let N=C[n];return typeof N!=`string`||N.length===0||N===a?a:(S(`install: override %s %s → %s`,n,a,N),N)},H=new Map,fetchPkg=n=>{let C=H.get(n);if(C)return C;let N=fetchPackumentWithDiskCache(n,a,S,F);return H.set(n,N),N},W=new Map,K=new Map,q=n.map(parseSpec).map(n=>({from:null,name:n.name,range:applyOverride(n.name,n.range),required:!0}));for(;q.length>0;){let n=q.splice(0,q.length),a=[],C=new Set;for(let S of n)H.has(S.name)||C.has(S.name)||(C.add(S.name),a.push(S.name));await prefetchPackuments(a,fetchPkg,F);for(let a=0;a<n.length;a++){let C=n[a],F=findVisible(C.from,C.name,W);if(F&&satisfiesRange(F.version,C.range))continue;let H=null;try{let F=await fetchPkg(C.name);if(H=pickVersion(F,C.range),!H){if(!C.required)continue;throw Error(`No version of ${C.name} satisfies ${C.range}`)}let Y=F.versions[H];if(!Y)throw Error(`Packument for ${C.name} promised ${H} but no entry exists`);let X=decidePlacement(C.from,C.name,H,K),te={name:C.name,version:H,tarballUrl:Y.dist.tarball,integrity:Y.dist.integrity,installPath:X,dependencies:Y.dependencies??{},optionalDependencies:Y.optionalDependencies??{},bin:Y.bin};if(W.set(X,te),X===`node_modules/${C.name}`&&K.set(C.name,te),S(`resolve: %s@%s ← %s (at %s)`,C.name,H,C.range,X),I?.update({phase:`resolve`,current:W.size,total:W.size+(n.length-a-1)+q.length,name:`${C.name}@${H}`}),!N){for(let[n,a]of Object.entries(te.dependencies))q.push({from:X,name:n,range:applyOverride(n,a),required:!0});for(let[n,a]of Object.entries(te.optionalDependencies))q.push({from:X,name:n,range:applyOverride(n,a),required:!1})}}catch(n){if(!C.required){S(`resolve: optional dep %s@%s skipped (%s)`,C.name,C.range,n.message);continue}throw n}}}return I?.endPhase(`resolve`),Array.from(W.values())}async function fetchPackumentWithDiskCache(n,a,S,C){let N=registryFor(n,a),F=getCachedPackument(N,n),onRetry=({attempt:a,error:C,delayMs:N})=>{S(`packument %s: retry %d after %dms (%s)`,n,a,N,errMsg(C))},I=await fetchPackumentConditional(n,{npmrc:a,signal:C,ifNoneMatch:F?.etag,onRetry});return I.status===`not-modified`&&F?(S(`packument-cache-hit: %s (304, etag %s)`,n,F.etag),F.packument):I.status===`fresh`&&I.packument?(I.etag&&putCachedPackument(N,n,I.etag,I.packument),I.packument):fetchPackument(n,{npmrc:a,signal:C,onRetry})}async function prefetchPackuments(n,a,S){if(n.length===0)return;let C=0,N=Math.max(1,Math.min(EM,n.length)),worker=async()=>{for(;C<n.length;){if(S?.aborted)return;let N=n[C++];try{await a(N)}catch{}}};await Promise.all(Array.from({length:N},()=>worker()))}function findVisible(n,a,S){let C=[];if(n!==null){C.push(`${n}/node_modules/${a}`);let S=n;for(;;){let n=S.lastIndexOf(`/node_modules/`);if(n<0||(S=S.slice(0,n),C.push(`${S}/node_modules/${a}`),S===``))break}}C.push(`node_modules/${a}`);for(let n of C){let a=S.get(n);if(a)return a}return null}function decidePlacement(n,a,S,C){let N=C.get(a);return!N||N.version===S||n===null?`node_modules/${a}`:`${n}/node_modules/${a}`}function satisfiesRange(n,a){try{return satisfies(n,new dM(a))}catch{return!1}}function readLockfile(n){if(!existsSync(n))return null;try{let a=JSON.parse(readFileSync(n,`utf-8`));return a.lockfileVersion!==OM||!a.packages||typeof a.packages!=`object`?null:a}catch{return null}}function writeLockfile(n,a,S){let C={},N=[...S].sort((n,a)=>n.installPath<a.installPath?-1:+(n.installPath>a.installPath));for(let n of N)C[n.installPath]={version:n.version,resolved:n.tarballUrl,integrity:n.integrity,dependencies:Object.keys(n.dependencies).length>0?n.dependencies:void 0,bin:n.bin};let F={lockfileVersion:OM,requested:[...a],packages:C};writeFileSync(n,JSON.stringify(F,null,2)+`
|
|
793
793
|
`)}function lockfileToNodes(n){return Object.entries(n.packages).map(([n,a])=>({name:nameFromInstallPath(n),version:a.version,tarballUrl:a.resolved,integrity:a.integrity,installPath:n,dependencies:a.dependencies??{},optionalDependencies:{},bin:a.bin}))}function nameFromInstallPath(n){let a=n.lastIndexOf(`/node_modules/`);return a<0?n.replace(/^node_modules\//,``):n.slice(a+14)}function lockfileMatchesRequest(n,a){if(n.requested.length!==a.length)return!1;let S=[...n.requested].sort(),C=[...a].sort();return S.every((n,a)=>n===C[a])}function describeLockfileDrift(n,a){let S=new Set(n.requested),C=new Set(a),N=[],F=[];for(let n of C)S.has(n)||N.push(n);for(let n of S)C.has(n)||F.push(n);if(N.length===0&&F.length===0)return null;let I=[];return N.length>0&&I.push(` + ${N.sort().join(`
|
|
794
794
|
+ `)}`),F.length>0&&I.push(` - ${F.sort().join(`
|
|
795
795
|
- `)}`),I.join(`
|