@gjsify/cli 0.5.2 → 0.6.1

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.
Files changed (2) hide show
  1. package/dist/cli.gjs.mjs +1 -1
  2. package/package.json +17 -17
package/dist/cli.gjs.mjs CHANGED
@@ -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}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)=>{
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/native-fs-bridge`,"fs/promises":`@gjsify/native-fs-bridge`,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
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gjsify/cli",
3
- "version": "0.5.2",
3
+ "version": "0.6.1",
4
4
  "description": "CLI for Gjsify",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",
@@ -120,19 +120,19 @@
120
120
  "cli"
121
121
  ],
122
122
  "dependencies": {
123
- "@gjsify/buffer": "^0.5.2",
124
- "@gjsify/create-app": "^0.5.2",
125
- "@gjsify/node-globals": "^0.5.2",
126
- "@gjsify/node-polyfills": "^0.5.2",
127
- "@gjsify/npm-registry": "^0.5.2",
128
- "@gjsify/resolve-npm": "^0.5.2",
129
- "@gjsify/rolldown-plugin-gjsify": "^0.5.2",
130
- "@gjsify/rolldown-plugin-pnp": "^0.5.2",
131
- "@gjsify/semver": "^0.5.2",
132
- "@gjsify/tar": "^0.5.2",
133
- "@gjsify/tsc": "^0.5.2",
134
- "@gjsify/web-polyfills": "^0.5.2",
135
- "@gjsify/workspace": "^0.5.2",
123
+ "@gjsify/buffer": "^0.6.1",
124
+ "@gjsify/create-app": "^0.6.1",
125
+ "@gjsify/node-globals": "^0.6.1",
126
+ "@gjsify/node-polyfills": "^0.6.1",
127
+ "@gjsify/npm-registry": "^0.6.1",
128
+ "@gjsify/resolve-npm": "^0.6.1",
129
+ "@gjsify/rolldown-plugin-gjsify": "^0.6.1",
130
+ "@gjsify/rolldown-plugin-pnp": "^0.6.1",
131
+ "@gjsify/semver": "^0.6.1",
132
+ "@gjsify/tar": "^0.6.1",
133
+ "@gjsify/tsc": "^0.6.1",
134
+ "@gjsify/web-polyfills": "^0.6.1",
135
+ "@gjsify/workspace": "^0.6.1",
136
136
  "cosmiconfig": "^9.0.2",
137
137
  "get-tsconfig": "^4.14.0",
138
138
  "pkg-types": "^2.3.1",
@@ -140,13 +140,13 @@
140
140
  "yargs": "^18.0.0"
141
141
  },
142
142
  "devDependencies": {
143
- "@gjsify/unit": "^0.5.2",
143
+ "@gjsify/unit": "^0.6.1",
144
144
  "@types/yargs": "^17.0.35",
145
145
  "typescript": "^6.0.3"
146
146
  },
147
147
  "peerDependencies": {
148
- "@gjsify/oxfmt-native": "^0.5.2",
149
- "@gjsify/rolldown-native": "^0.5.2"
148
+ "@gjsify/oxfmt-native": "^0.6.1",
149
+ "@gjsify/rolldown-native": "^0.6.1"
150
150
  },
151
151
  "peerDependenciesMeta": {
152
152
  "@gjsify/oxfmt-native": {