@lukoweb/create-apitogo 0.1.129 → 0.1.131
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -70,4 +70,4 @@ var m=p(181);var g=m.Buffer;function copyProps(t,u){for(var p in t){u[p]=t[p]}}i
|
|
|
70
70
|
*
|
|
71
71
|
* Copyright (c) 2015-present, Jon Schlinkert.
|
|
72
72
|
* Released under the MIT License.
|
|
73
|
-
*/const m=p(952);const toRegexRange=(t,u,p)=>{if(m(t)===false){throw new TypeError("toRegexRange: expected the first argument to be a number")}if(u===void 0||t===u){return String(t)}if(m(u)===false){throw new TypeError("toRegexRange: expected the second argument to be a number.")}let g={relaxZeros:true,...p};if(typeof g.strictZeros==="boolean"){g.relaxZeros=g.strictZeros===false}let y=String(g.relaxZeros);let v=String(g.shorthand);let b=String(g.capture);let w=String(g.wrap);let E=t+":"+u+"="+y+v+b+w;if(toRegexRange.cache.hasOwnProperty(E)){return toRegexRange.cache[E].result}let $=Math.min(t,u);let O=Math.max(t,u);if(Math.abs($-O)===1){let p=t+"|"+u;if(g.capture){return`(${p})`}if(g.wrap===false){return p}return`(?:${p})`}let R=hasPadding(t)||hasPadding(u);let P={min:t,max:u,a:$,b:O};let A=[];let x=[];if(R){P.isPadded=R;P.maxLen=String(P.max).length}if($<0){let t=O<0?Math.abs(O):1;x=splitToPatterns(t,Math.abs($),P,g);$=P.a=0}if(O>=0){A=splitToPatterns($,O,P,g)}P.negatives=x;P.positives=A;P.result=collatePatterns(x,A,g);if(g.capture===true){P.result=`(${P.result})`}else if(g.wrap!==false&&A.length+x.length>1){P.result=`(?:${P.result})`}toRegexRange.cache[E]=P;return P.result};function collatePatterns(t,u,p){let m=filterPatterns(t,u,"-",false,p)||[];let g=filterPatterns(u,t,"",false,p)||[];let y=filterPatterns(t,u,"-?",true,p)||[];let v=m.concat(y).concat(g);return v.join("|")}function splitToRanges(t,u){let p=1;let m=1;let g=countNines(t,p);let y=new Set([u]);while(t<=g&&g<=u){y.add(g);p+=1;g=countNines(t,p)}g=countZeros(u+1,m)-1;while(t<g&&g<=u){y.add(g);m+=1;g=countZeros(u+1,m)-1}y=[...y];y.sort(compare);return y}function rangeToPattern(t,u,p){if(t===u){return{pattern:t,count:[],digits:0}}let m=zip(t,u);let g=m.length;let y="";let v=0;for(let t=0;t<g;t++){let[u,g]=m[t];if(u===g){y+=u}else if(u!=="0"||g!=="9"){y+=toCharacterClass(u,g,p)}else{v++}}if(v){y+=p.shorthand===true?"\\d":"[0-9]"}return{pattern:y,count:[v],digits:g}}function splitToPatterns(t,u,p,m){let g=splitToRanges(t,u);let y=[];let v=t;let b;for(let t=0;t<g.length;t++){let u=g[t];let w=rangeToPattern(String(v),String(u),m);let E="";if(!p.isPadded&&b&&b.pattern===w.pattern){if(b.count.length>1){b.count.pop()}b.count.push(w.count[0]);b.string=b.pattern+toQuantifier(b.count);v=u+1;continue}if(p.isPadded){E=padZeros(u,p,m)}w.string=E+w.pattern+toQuantifier(w.count);y.push(w);v=u+1;b=w}return y}function filterPatterns(t,u,p,m,g){let y=[];for(let g of t){let{string:t}=g;if(!m&&!contains(u,"string",t)){y.push(p+t)}if(m&&contains(u,"string",t)){y.push(p+t)}}return y}function zip(t,u){let p=[];for(let m=0;m<t.length;m++)p.push([t[m],u[m]]);return p}function compare(t,u){return t>u?1:u>t?-1:0}function contains(t,u,p){return t.some((t=>t[u]===p))}function countNines(t,u){return Number(String(t).slice(0,-u)+"9".repeat(u))}function countZeros(t,u){return t-t%Math.pow(10,u)}function toQuantifier(t){let[u=0,p=""]=t;if(p||u>1){return`{${u+(p?","+p:"")}}`}return""}function toCharacterClass(t,u,p){return`[${t}${u-t===1?"":"-"}${u}]`}function hasPadding(t){return/^-?(0+)\d/.test(t)}function padZeros(t,u,p){if(!u.isPadded){return t}let m=Math.abs(u.maxLen-String(t).length);let g=p.relaxZeros!==false;switch(m){case 0:return"";case 1:return g?"0?":"0";case 2:return g?"0{0,2}":"00";default:{return g?`0{0,${m}}`:`0{${m}}`}}}toRegexRange.cache={};toRegexRange.clearCache=()=>toRegexRange.cache={};t.exports=toRegexRange},5059:(t,u,p)=>{const{URL:m}=p(7016);const{join:g}=p(6928);const y=p(7515);const{promisify:v}=p(9023);const{tmpdir:b}=p(857);const w=p(3805);const E=v(y.writeFile);const $=v(y.mkdir);const O=v(y.readFile);const compareVersions=(t,u)=>t.localeCompare(u,"en-US",{numeric:true});const encode=t=>encodeURIComponent(t).replace(/^%40/,"@");const getFile=async(t,u)=>{const p=b();const m=g(p,"update-check");if(!y.existsSync(m)){await $(m)}let v=`${t.name}-${u}.json`;if(t.scope){v=`${t.scope}-${v}`}return g(m,v)};const evaluateCache=async(t,u,p)=>{if(y.existsSync(t)){const m=await O(t,"utf8");const{lastUpdate:g,latest:y}=JSON.parse(m);const v=g+p;if(v>u){return{shouldCheck:false,latest:y}}}return{shouldCheck:true,latest:null}};const updateCache=async(t,u,p)=>{const m=JSON.stringify({latest:u,lastUpdate:p});await E(t,m,"utf8")};const loadPackage=(t,u)=>new Promise(((m,g)=>{const y={host:t.hostname,path:t.pathname,port:t.port,headers:{accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"},timeout:2e3};if(u){y.headers.authorization=`${u.type} ${u.token}`}const{get:v}=p(t.protocol==="https:"?5692:8611);v(y,(t=>{const{statusCode:u}=t;if(u!==200){const p=new Error(`Request failed with code ${u}`);p.code=u;g(p);t.resume();return}let p="";t.setEncoding("utf8");t.on("data",(t=>{p+=t}));t.on("end",(()=>{try{const t=JSON.parse(p);m(t)}catch(t){g(t)}}))})).on("error",g).on("timeout",g)}));const getMostRecent=async({full:t,scope:u},g)=>{const y=w(u);const v=new m(t,y);let b=null;try{b=await loadPackage(v)}catch(t){if(t.code&&String(t.code).startsWith(4)){const t=p(4133);const u=t(y,{recursive:true});b=await loadPackage(v,u)}else{throw t}}const E=b["dist-tags"][g];if(!E){throw new Error(`Distribution tag ${g} is not available`)}return E};const R={interval:36e5,distTag:"latest"};const getDetails=t=>{const u={full:encode(t)};if(t.includes("/")){const p=t.split("/");u.scope=p[0];u.name=p[1]}else{u.scope=null;u.name=t}return u};t.exports=async(t,u)=>{if(typeof t!=="object"){throw new Error("The first parameter should be your package.json file content")}const p=getDetails(t.name);const m=Date.now();const{distTag:g,interval:y}=Object.assign({},R,u);const v=await getFile(p,g);let b=null;let w=true;({shouldCheck:w,latest:b}=await evaluateCache(v,m,y));if(w){b=await getMostRecent(p,g);await updateCache(v,b,m)}const E=compareVersions(t.version,b);if(E===-1){return{latest:b,fromCache:!w}}return null}},8904:(t,u,p)=>{"use strict";const m=p(6737);var g=new RegExp("^(?:@([^/]+?)[/])?([^/]+?)$");var y=["node_modules","favicon.ico"];function validate(t){var u=[];var p=[];if(t===null){p.push("name cannot be null");return done(u,p)}if(t===undefined){p.push("name cannot be undefined");return done(u,p)}if(typeof t!=="string"){p.push("name must be a string");return done(u,p)}if(!t.length){p.push("name length must be greater than zero")}if(t.startsWith(".")){p.push("name cannot start with a period")}if(t.startsWith("-")){p.push("name cannot start with a hyphen")}if(t.match(/^_/)){p.push("name cannot start with an underscore")}if(t.trim()!==t){p.push("name cannot contain leading or trailing spaces")}y.forEach((function(u){if(t.toLowerCase()===u){p.push(u+" is not a valid package name")}}));if(m.includes(t.toLowerCase())){u.push(t+" is a core module name")}if(t.length>214){u.push("name can no longer contain more than 214 characters")}if(t.toLowerCase()!==t){u.push("name can no longer contain capital letters")}if(/[~'!()*]/.test(t.split("/").slice(-1)[0])){u.push('name can no longer contain special characters ("~\'!()*")')}if(encodeURIComponent(t)!==t){var v=t.match(g);if(v){var b=v[1];var w=v[2];if(w.startsWith(".")){p.push("name cannot start with a period")}if(encodeURIComponent(b)===b&&encodeURIComponent(w)===w){return done(u,p)}}p.push("name can only contain URL-friendly characters")}return done(u,p)}var done=function(t,u){var p={validForNewPackages:u.length===0&&t.length===0,validForOldPackages:u.length===0,warnings:t,errors:u};if(!p.warnings.length){delete p.warnings}if(!p.errors.length){delete p.errors}return p};t.exports=validate},1192:(t,u,p)=>{const m=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys";const g=p(6928);const y=m?";":":";const v=p(7105);const getNotFoundError=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"});const getPathInfo=(t,u)=>{const p=u.colon||y;const g=t.match(/\//)||m&&t.match(/\\/)?[""]:[...m?[process.cwd()]:[],...(u.path||process.env.PATH||"").split(p)];const v=m?u.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"";const b=m?v.split(p):[""];if(m){if(t.indexOf(".")!==-1&&b[0]!=="")b.unshift("")}return{pathEnv:g,pathExt:b,pathExtExe:v}};const which=(t,u,p)=>{if(typeof u==="function"){p=u;u={}}if(!u)u={};const{pathEnv:m,pathExt:y,pathExtExe:b}=getPathInfo(t,u);const w=[];const step=p=>new Promise(((y,v)=>{if(p===m.length)return u.all&&w.length?y(w):v(getNotFoundError(t));const b=m[p];const E=/^".*"$/.test(b)?b.slice(1,-1):b;const $=g.join(E,t);const O=!E&&/^\.[\\\/]/.test(t)?t.slice(0,2)+$:$;y(subStep(O,p,0))}));const subStep=(t,p,m)=>new Promise(((g,E)=>{if(m===y.length)return g(step(p+1));const $=y[m];v(t+$,{pathExt:b},((y,v)=>{if(!y&&v){if(u.all)w.push(t+$);else return g(t+$)}return g(subStep(t,p,m+1))}))}));return p?step(0).then((t=>p(null,t)),p):step(0)};const whichSync=(t,u)=>{u=u||{};const{pathEnv:p,pathExt:m,pathExtExe:y}=getPathInfo(t,u);const b=[];for(let w=0;w<p.length;w++){const E=p[w];const $=/^".*"$/.test(E)?E.slice(1,-1):E;const O=g.join($,t);const R=!$&&/^\.[\\\/]/.test(t)?t.slice(0,2)+O:O;for(let t=0;t<m.length;t++){const p=R+m[t];try{const t=v.sync(p,{pathExt:y});if(t){if(u.all)b.push(p);else return p}}catch(t){}}}if(u.all&&b.length)return b;if(u.nothrow)return null;throw getNotFoundError(t)};t.exports=which;which.sync=whichSync},181:t=>{"use strict";t.exports=require("buffer")},5317:t=>{"use strict";t.exports=require("child_process")},4434:t=>{"use strict";t.exports=require("events")},7515:t=>{"use strict";t.exports=require("fs")},8611:t=>{"use strict";t.exports=require("http")},5692:t=>{"use strict";t.exports=require("https")},1421:t=>{"use strict";t.exports=require("node:child_process")},8474:t=>{"use strict";t.exports=require("node:events")},3024:t=>{"use strict";t.exports=require("node:fs")},6760:t=>{"use strict";t.exports=require("node:path")},1708:t=>{"use strict";t.exports=require("node:process")},857:t=>{"use strict";t.exports=require("os")},6928:t=>{"use strict";t.exports=require("path")},3785:t=>{"use strict";t.exports=require("readline")},2203:t=>{"use strict";t.exports=require("stream")},7016:t=>{"use strict";t.exports=require("url")},9023:t=>{"use strict";t.exports=require("util")},4732:(t,u,p)=>{"use strict";const m=p(7028);const g=process.env;Object.defineProperty(u,"_vendors",{value:m.map((function(t){return t.constant}))});u.name=null;u.isPR=null;u.id=null;if(g.CI!=="false"){m.forEach((function(t){const p=Array.isArray(t.env)?t.env:[t.env];const m=p.every((function(t){return checkEnv(t)}));u[t.constant]=m;if(!m){return}u.name=t.name;u.isPR=checkPR(t);u.id=t.constant}))}u.isCI=!!(g.CI!=="false"&&(g.BUILD_ID||g.BUILD_NUMBER||g.CI||g.CI_APP_ID||g.CI_BUILD_ID||g.CI_BUILD_NUMBER||g.CI_NAME||g.CONTINUOUS_INTEGRATION||g.RUN_ID||u.name||false));function checkEnv(t){if(typeof t==="string")return!!g[t];if("env"in t){return g[t.env]&&g[t.env].includes(t.includes)}if("any"in t){return t.any.some((function(t){return!!g[t]}))}return Object.keys(t).every((function(u){return g[u]===t[u]}))}function checkPR(t){switch(typeof t.pr){case"string":return!!g[t.pr];case"object":if("env"in t.pr){if("any"in t.pr){return t.pr.any.some((function(u){return g[t.pr.env]===u}))}else{return t.pr.env in g&&g[t.pr.env]!==t.pr.ne}}else if("any"in t.pr){return t.pr.any.some((function(t){return!!g[t]}))}else{return checkEnv(t.pr)}default:return null}}},206:(t,u,p)=>{const{Argument:m}=p(1455);const{Command:g}=p(4623);const{CommanderError:y,InvalidArgumentError:v}=p(9400);const{Help:b}=p(2559);const{Option:w}=p(1033);u.DM=new g;u.gu=t=>new g(t);u.Ww=(t,u)=>new w(t,u);u.er=(t,u)=>new m(t,u);u.uB=g;u.c$=w;u.ef=m;u._V=b;u.b7=y;u.Di=v;u.a2=v},1455:(t,u,p)=>{const{InvalidArgumentError:m}=p(9400);class Argument{constructor(t,u){this.description=u||"";this.variadic=false;this.parseArg=undefined;this.defaultValue=undefined;this.defaultValueDescription=undefined;this.argChoices=undefined;switch(t[0]){case"<":this.required=true;this._name=t.slice(1,-1);break;case"[":this.required=false;this._name=t.slice(1,-1);break;default:this.required=true;this._name=t;break}if(this._name.endsWith("...")){this.variadic=true;this._name=this._name.slice(0,-3)}}name(){return this._name}_collectValue(t,u){if(u===this.defaultValue||!Array.isArray(u)){return[t]}u.push(t);return u}default(t,u){this.defaultValue=t;this.defaultValueDescription=u;return this}argParser(t){this.parseArg=t;return this}choices(t){this.argChoices=t.slice();this.parseArg=(t,u)=>{if(!this.argChoices.includes(t)){throw new m(`Allowed choices are ${this.argChoices.join(", ")}.`)}if(this.variadic){return this._collectValue(t,u)}return t};return this}argRequired(){this.required=true;return this}argOptional(){this.required=false;return this}}function humanReadableArgName(t){const u=t.name()+(t.variadic===true?"...":"");return t.required?"<"+u+">":"["+u+"]"}u.Argument=Argument;u.humanReadableArgName=humanReadableArgName},4623:(t,u,p)=>{const m=p(8474).EventEmitter;const g=p(1421);const y=p(6760);const v=p(3024);const b=p(1708);const{Argument:w,humanReadableArgName:E}=p(1455);const{CommanderError:$}=p(9400);const{Help:O,stripColor:R}=p(2559);const{Option:P,DualOptions:A}=p(1033);const{suggestSimilar:x}=p(3683);class Command extends m{constructor(t){super();this.commands=[];this.options=[];this.parent=null;this._allowUnknownOption=false;this._allowExcessArguments=false;this.registeredArguments=[];this._args=this.registeredArguments;this.args=[];this.rawArgs=[];this.processedArgs=[];this._scriptPath=null;this._name=t||"";this._optionValues={};this._optionValueSources={};this._storeOptionsAsProperties=false;this._actionHandler=null;this._executableHandler=false;this._executableFile=null;this._executableDir=null;this._defaultCommandName=null;this._exitCallback=null;this._aliases=[];this._combineFlagAndOptionalValue=true;this._description="";this._summary="";this._argsDescription=undefined;this._enablePositionalOptions=false;this._passThroughOptions=false;this._lifeCycleHooks={};this._showHelpAfterError=false;this._showSuggestionAfterError=true;this._savedState=null;this._outputConfiguration={writeOut:t=>b.stdout.write(t),writeErr:t=>b.stderr.write(t),outputError:(t,u)=>u(t),getOutHelpWidth:()=>b.stdout.isTTY?b.stdout.columns:undefined,getErrHelpWidth:()=>b.stderr.isTTY?b.stderr.columns:undefined,getOutHasColors:()=>useColor()??(b.stdout.isTTY&&b.stdout.hasColors?.()),getErrHasColors:()=>useColor()??(b.stderr.isTTY&&b.stderr.hasColors?.()),stripColor:t=>R(t)};this._hidden=false;this._helpOption=undefined;this._addImplicitHelpCommand=undefined;this._helpCommand=undefined;this._helpConfiguration={};this._helpGroupHeading=undefined;this._defaultCommandGroup=undefined;this._defaultOptionGroup=undefined}copyInheritedSettings(t){this._outputConfiguration=t._outputConfiguration;this._helpOption=t._helpOption;this._helpCommand=t._helpCommand;this._helpConfiguration=t._helpConfiguration;this._exitCallback=t._exitCallback;this._storeOptionsAsProperties=t._storeOptionsAsProperties;this._combineFlagAndOptionalValue=t._combineFlagAndOptionalValue;this._allowExcessArguments=t._allowExcessArguments;this._enablePositionalOptions=t._enablePositionalOptions;this._showHelpAfterError=t._showHelpAfterError;this._showSuggestionAfterError=t._showSuggestionAfterError;return this}_getCommandAndAncestors(){const t=[];for(let u=this;u;u=u.parent){t.push(u)}return t}command(t,u,p){let m=u;let g=p;if(typeof m==="object"&&m!==null){g=m;m=null}g=g||{};const[,y,v]=t.match(/([^ ]+) *(.*)/);const b=this.createCommand(y);if(m){b.description(m);b._executableHandler=true}if(g.isDefault)this._defaultCommandName=b._name;b._hidden=!!(g.noHelp||g.hidden);b._executableFile=g.executableFile||null;if(v)b.arguments(v);this._registerCommand(b);b.parent=this;b.copyInheritedSettings(this);if(m)return this;return b}createCommand(t){return new Command(t)}createHelp(){return Object.assign(new O,this.configureHelp())}configureHelp(t){if(t===undefined)return this._helpConfiguration;this._helpConfiguration=t;return this}configureOutput(t){if(t===undefined)return this._outputConfiguration;this._outputConfiguration={...this._outputConfiguration,...t};return this}showHelpAfterError(t=true){if(typeof t!=="string")t=!!t;this._showHelpAfterError=t;return this}showSuggestionAfterError(t=true){this._showSuggestionAfterError=!!t;return this}addCommand(t,u){if(!t._name){throw new Error(`Command passed to .addCommand() must have a name\n- specify the name in Command constructor or using .name()`)}u=u||{};if(u.isDefault)this._defaultCommandName=t._name;if(u.noHelp||u.hidden)t._hidden=true;this._registerCommand(t);t.parent=this;t._checkForBrokenPassThrough();return this}createArgument(t,u){return new w(t,u)}argument(t,u,p,m){const g=this.createArgument(t,u);if(typeof p==="function"){g.default(m).argParser(p)}else{g.default(p)}this.addArgument(g);return this}arguments(t){t.trim().split(/ +/).forEach((t=>{this.argument(t)}));return this}addArgument(t){const u=this.registeredArguments.slice(-1)[0];if(u?.variadic){throw new Error(`only the last argument can be variadic '${u.name()}'`)}if(t.required&&t.defaultValue!==undefined&&t.parseArg===undefined){throw new Error(`a default value for a required argument is never used: '${t.name()}'`)}this.registeredArguments.push(t);return this}helpCommand(t,u){if(typeof t==="boolean"){this._addImplicitHelpCommand=t;if(t&&this._defaultCommandGroup){this._initCommandGroup(this._getHelpCommand())}return this}const p=t??"help [command]";const[,m,g]=p.match(/([^ ]+) *(.*)/);const y=u??"display help for command";const v=this.createCommand(m);v.helpOption(false);if(g)v.arguments(g);if(y)v.description(y);this._addImplicitHelpCommand=true;this._helpCommand=v;if(t||u)this._initCommandGroup(v);return this}addHelpCommand(t,u){if(typeof t!=="object"){this.helpCommand(t,u);return this}this._addImplicitHelpCommand=true;this._helpCommand=t;this._initCommandGroup(t);return this}_getHelpCommand(){const t=this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"));if(t){if(this._helpCommand===undefined){this.helpCommand(undefined,undefined)}return this._helpCommand}return null}hook(t,u){const p=["preSubcommand","preAction","postAction"];if(!p.includes(t)){throw new Error(`Unexpected value for event passed to hook : '${t}'.\nExpecting one of '${p.join("', '")}'`)}if(this._lifeCycleHooks[t]){this._lifeCycleHooks[t].push(u)}else{this._lifeCycleHooks[t]=[u]}return this}exitOverride(t){if(t){this._exitCallback=t}else{this._exitCallback=t=>{if(t.code!=="commander.executeSubCommandAsync"){throw t}else{}}}return this}_exit(t,u,p){if(this._exitCallback){this._exitCallback(new $(t,u,p))}b.exit(t)}action(t){const listener=u=>{const p=this.registeredArguments.length;const m=u.slice(0,p);if(this._storeOptionsAsProperties){m[p]=this}else{m[p]=this.opts()}m.push(this);return t.apply(this,m)};this._actionHandler=listener;return this}createOption(t,u){return new P(t,u)}_callParseArg(t,u,p,m){try{return t.parseArg(u,p)}catch(t){if(t.code==="commander.invalidArgument"){const u=`${m} ${t.message}`;this.error(u,{exitCode:t.exitCode,code:t.code})}throw t}}_registerOption(t){const u=t.short&&this._findOption(t.short)||t.long&&this._findOption(t.long);if(u){const p=t.long&&this._findOption(t.long)?t.long:t.short;throw new Error(`Cannot add option '${t.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${p}'\n- already used by option '${u.flags}'`)}this._initOptionGroup(t);this.options.push(t)}_registerCommand(t){const knownBy=t=>[t.name()].concat(t.aliases());const u=knownBy(t).find((t=>this._findCommand(t)));if(u){const p=knownBy(this._findCommand(u)).join("|");const m=knownBy(t).join("|");throw new Error(`cannot add command '${m}' as already have command '${p}'`)}this._initCommandGroup(t);this.commands.push(t)}addOption(t){this._registerOption(t);const u=t.name();const p=t.attributeName();if(t.negate){const u=t.long.replace(/^--no-/,"--");if(!this._findOption(u)){this.setOptionValueWithSource(p,t.defaultValue===undefined?true:t.defaultValue,"default")}}else if(t.defaultValue!==undefined){this.setOptionValueWithSource(p,t.defaultValue,"default")}const handleOptionValue=(u,m,g)=>{if(u==null&&t.presetArg!==undefined){u=t.presetArg}const y=this.getOptionValue(p);if(u!==null&&t.parseArg){u=this._callParseArg(t,u,y,m)}else if(u!==null&&t.variadic){u=t._collectValue(u,y)}if(u==null){if(t.negate){u=false}else if(t.isBoolean()||t.optional){u=true}else{u=""}}this.setOptionValueWithSource(p,u,g)};this.on("option:"+u,(u=>{const p=`error: option '${t.flags}' argument '${u}' is invalid.`;handleOptionValue(u,p,"cli")}));if(t.envVar){this.on("optionEnv:"+u,(u=>{const p=`error: option '${t.flags}' value '${u}' from env '${t.envVar}' is invalid.`;handleOptionValue(u,p,"env")}))}return this}_optionEx(t,u,p,m,g){if(typeof u==="object"&&u instanceof P){throw new Error("To add an Option object use addOption() instead of option() or requiredOption()")}const y=this.createOption(u,p);y.makeOptionMandatory(!!t.mandatory);if(typeof m==="function"){y.default(g).argParser(m)}else if(m instanceof RegExp){const t=m;m=(u,p)=>{const m=t.exec(u);return m?m[0]:p};y.default(g).argParser(m)}else{y.default(m)}return this.addOption(y)}option(t,u,p,m){return this._optionEx({},t,u,p,m)}requiredOption(t,u,p,m){return this._optionEx({mandatory:true},t,u,p,m)}combineFlagAndOptionalValue(t=true){this._combineFlagAndOptionalValue=!!t;return this}allowUnknownOption(t=true){this._allowUnknownOption=!!t;return this}allowExcessArguments(t=true){this._allowExcessArguments=!!t;return this}enablePositionalOptions(t=true){this._enablePositionalOptions=!!t;return this}passThroughOptions(t=true){this._passThroughOptions=!!t;this._checkForBrokenPassThrough();return this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions){throw new Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}}storeOptionsAsProperties(t=true){if(this.options.length){throw new Error("call .storeOptionsAsProperties() before adding options")}if(Object.keys(this._optionValues).length){throw new Error("call .storeOptionsAsProperties() before setting option values")}this._storeOptionsAsProperties=!!t;return this}getOptionValue(t){if(this._storeOptionsAsProperties){return this[t]}return this._optionValues[t]}setOptionValue(t,u){return this.setOptionValueWithSource(t,u,undefined)}setOptionValueWithSource(t,u,p){if(this._storeOptionsAsProperties){this[t]=u}else{this._optionValues[t]=u}this._optionValueSources[t]=p;return this}getOptionValueSource(t){return this._optionValueSources[t]}getOptionValueSourceWithGlobals(t){let u;this._getCommandAndAncestors().forEach((p=>{if(p.getOptionValueSource(t)!==undefined){u=p.getOptionValueSource(t)}}));return u}_prepareUserArgs(t,u){if(t!==undefined&&!Array.isArray(t)){throw new Error("first parameter to parse must be array or undefined")}u=u||{};if(t===undefined&&u.from===undefined){if(b.versions?.electron){u.from="electron"}const t=b.execArgv??[];if(t.includes("-e")||t.includes("--eval")||t.includes("-p")||t.includes("--print")){u.from="eval"}}if(t===undefined){t=b.argv}this.rawArgs=t.slice();let p;switch(u.from){case undefined:case"node":this._scriptPath=t[1];p=t.slice(2);break;case"electron":if(b.defaultApp){this._scriptPath=t[1];p=t.slice(2)}else{p=t.slice(1)}break;case"user":p=t.slice(0);break;case"eval":p=t.slice(1);break;default:throw new Error(`unexpected parse option { from: '${u.from}' }`)}if(!this._name&&this._scriptPath)this.nameFromFilename(this._scriptPath);this._name=this._name||"program";return p}parse(t,u){this._prepareForParse();const p=this._prepareUserArgs(t,u);this._parseCommand([],p);return this}async parseAsync(t,u){this._prepareForParse();const p=this._prepareUserArgs(t,u);await this._parseCommand([],p);return this}_prepareForParse(){if(this._savedState===null){this.saveStateBeforeParse()}else{this.restoreStateBeforeParse()}}saveStateBeforeParse(){this._savedState={_name:this._name,_optionValues:{...this._optionValues},_optionValueSources:{...this._optionValueSources}}}restoreStateBeforeParse(){if(this._storeOptionsAsProperties)throw new Error(`Can not call parse again when storeOptionsAsProperties is true.\n- either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name;this._scriptPath=null;this.rawArgs=[];this._optionValues={...this._savedState._optionValues};this._optionValueSources={...this._savedState._optionValueSources};this.args=[];this.processedArgs=[]}_checkForMissingExecutable(t,u,p){if(v.existsSync(t))return;const m=u?`searched for local subcommand relative to directory '${u}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory";const g=`'${t}' does not exist\n - if '${p}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead\n - if the default executable name is not suitable, use the executableFile option to supply a custom name or path\n - ${m}`;throw new Error(g)}_executeSubCommand(t,u){u=u.slice();let p=false;const m=[".js",".ts",".tsx",".mjs",".cjs"];function findFile(t,u){const p=y.resolve(t,u);if(v.existsSync(p))return p;if(m.includes(y.extname(u)))return undefined;const g=m.find((t=>v.existsSync(`${p}${t}`)));if(g)return`${p}${g}`;return undefined}this._checkForMissingMandatoryOptions();this._checkForConflictingOptions();let w=t._executableFile||`${this._name}-${t._name}`;let E=this._executableDir||"";if(this._scriptPath){let t;try{t=v.realpathSync(this._scriptPath)}catch{t=this._scriptPath}E=y.resolve(y.dirname(t),E)}if(E){let u=findFile(E,w);if(!u&&!t._executableFile&&this._scriptPath){const p=y.basename(this._scriptPath,y.extname(this._scriptPath));if(p!==this._name){u=findFile(E,`${p}-${t._name}`)}}w=u||w}p=m.includes(y.extname(w));let O;if(b.platform!=="win32"){if(p){u.unshift(w);u=incrementNodeInspectorPort(b.execArgv).concat(u);O=g.spawn(b.argv[0],u,{stdio:"inherit"})}else{O=g.spawn(w,u,{stdio:"inherit"})}}else{this._checkForMissingExecutable(w,E,t._name);u.unshift(w);u=incrementNodeInspectorPort(b.execArgv).concat(u);O=g.spawn(b.execPath,u,{stdio:"inherit"})}if(!O.killed){const t=["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"];t.forEach((t=>{b.on(t,(()=>{if(O.killed===false&&O.exitCode===null){O.kill(t)}}))}))}const R=this._exitCallback;O.on("close",(t=>{t=t??1;if(!R){b.exit(t)}else{R(new $(t,"commander.executeSubCommandAsync","(close)"))}}));O.on("error",(u=>{if(u.code==="ENOENT"){this._checkForMissingExecutable(w,E,t._name)}else if(u.code==="EACCES"){throw new Error(`'${w}' not executable`)}if(!R){b.exit(1)}else{const t=new $(1,"commander.executeSubCommandAsync","(error)");t.nestedError=u;R(t)}}));this.runningCommand=O}_dispatchSubcommand(t,u,p){const m=this._findCommand(t);if(!m)this.help({error:true});m._prepareForParse();let g;g=this._chainOrCallSubCommandHook(g,m,"preSubcommand");g=this._chainOrCall(g,(()=>{if(m._executableHandler){this._executeSubCommand(m,u.concat(p))}else{return m._parseCommand(u,p)}}));return g}_dispatchHelpCommand(t){if(!t){this.help()}const u=this._findCommand(t);if(u&&!u._executableHandler){u.help()}return this._dispatchSubcommand(t,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){this.registeredArguments.forEach(((t,u)=>{if(t.required&&this.args[u]==null){this.missingArgument(t.name())}}));if(this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic){return}if(this.args.length>this.registeredArguments.length){this._excessArguments(this.args)}}_processArguments(){const myParseArg=(t,u,p)=>{let m=u;if(u!==null&&t.parseArg){const g=`error: command-argument value '${u}' is invalid for argument '${t.name()}'.`;m=this._callParseArg(t,u,p,g)}return m};this._checkNumberOfArguments();const t=[];this.registeredArguments.forEach(((u,p)=>{let m=u.defaultValue;if(u.variadic){if(p<this.args.length){m=this.args.slice(p);if(u.parseArg){m=m.reduce(((t,p)=>myParseArg(u,p,t)),u.defaultValue)}}else if(m===undefined){m=[]}}else if(p<this.args.length){m=this.args[p];if(u.parseArg){m=myParseArg(u,m,u.defaultValue)}}t[p]=m}));this.processedArgs=t}_chainOrCall(t,u){if(t?.then&&typeof t.then==="function"){return t.then((()=>u()))}return u()}_chainOrCallHooks(t,u){let p=t;const m=[];this._getCommandAndAncestors().reverse().filter((t=>t._lifeCycleHooks[u]!==undefined)).forEach((t=>{t._lifeCycleHooks[u].forEach((u=>{m.push({hookedCommand:t,callback:u})}))}));if(u==="postAction"){m.reverse()}m.forEach((t=>{p=this._chainOrCall(p,(()=>t.callback(t.hookedCommand,this)))}));return p}_chainOrCallSubCommandHook(t,u,p){let m=t;if(this._lifeCycleHooks[p]!==undefined){this._lifeCycleHooks[p].forEach((t=>{m=this._chainOrCall(m,(()=>t(this,u)))}))}return m}_parseCommand(t,u){const p=this.parseOptions(u);this._parseOptionsEnv();this._parseOptionsImplied();t=t.concat(p.operands);u=p.unknown;this.args=t.concat(u);if(t&&this._findCommand(t[0])){return this._dispatchSubcommand(t[0],t.slice(1),u)}if(this._getHelpCommand()&&t[0]===this._getHelpCommand().name()){return this._dispatchHelpCommand(t[1])}if(this._defaultCommandName){this._outputHelpIfRequested(u);return this._dispatchSubcommand(this._defaultCommandName,t,u)}if(this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName){this.help({error:true})}this._outputHelpIfRequested(p.unknown);this._checkForMissingMandatoryOptions();this._checkForConflictingOptions();const checkForUnknownOptions=()=>{if(p.unknown.length>0){this.unknownOption(p.unknown[0])}};const m=`command:${this.name()}`;if(this._actionHandler){checkForUnknownOptions();this._processArguments();let p;p=this._chainOrCallHooks(p,"preAction");p=this._chainOrCall(p,(()=>this._actionHandler(this.processedArgs)));if(this.parent){p=this._chainOrCall(p,(()=>{this.parent.emit(m,t,u)}))}p=this._chainOrCallHooks(p,"postAction");return p}if(this.parent?.listenerCount(m)){checkForUnknownOptions();this._processArguments();this.parent.emit(m,t,u)}else if(t.length){if(this._findCommand("*")){return this._dispatchSubcommand("*",t,u)}if(this.listenerCount("command:*")){this.emit("command:*",t,u)}else if(this.commands.length){this.unknownCommand()}else{checkForUnknownOptions();this._processArguments()}}else if(this.commands.length){checkForUnknownOptions();this.help({error:true})}else{checkForUnknownOptions();this._processArguments()}}_findCommand(t){if(!t)return undefined;return this.commands.find((u=>u._name===t||u._aliases.includes(t)))}_findOption(t){return this.options.find((u=>u.is(t)))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach((t=>{t.options.forEach((u=>{if(u.mandatory&&t.getOptionValue(u.attributeName())===undefined){t.missingMandatoryOptionValue(u)}}))}))}_checkForConflictingLocalOptions(){const t=this.options.filter((t=>{const u=t.attributeName();if(this.getOptionValue(u)===undefined){return false}return this.getOptionValueSource(u)!=="default"}));const u=t.filter((t=>t.conflictsWith.length>0));u.forEach((u=>{const p=t.find((t=>u.conflictsWith.includes(t.attributeName())));if(p){this._conflictingOption(u,p)}}))}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach((t=>{t._checkForConflictingLocalOptions()}))}parseOptions(t){const u=[];const p=[];let m=u;function maybeOption(t){return t.length>1&&t[0]==="-"}const negativeNumberArg=t=>{if(!/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(t))return false;return!this._getCommandAndAncestors().some((t=>t.options.map((t=>t.short)).some((t=>/^-\d$/.test(t)))))};let g=null;let y=null;let v=0;while(v<t.length||y){const b=y??t[v++];y=null;if(b==="--"){if(m===p)m.push(b);m.push(...t.slice(v));break}if(g&&(!maybeOption(b)||negativeNumberArg(b))){this.emit(`option:${g.name()}`,b);continue}g=null;if(maybeOption(b)){const u=this._findOption(b);if(u){if(u.required){const p=t[v++];if(p===undefined)this.optionMissingArgument(u);this.emit(`option:${u.name()}`,p)}else if(u.optional){let p=null;if(v<t.length&&(!maybeOption(t[v])||negativeNumberArg(t[v]))){p=t[v++]}this.emit(`option:${u.name()}`,p)}else{this.emit(`option:${u.name()}`)}g=u.variadic?u:null;continue}}if(b.length>2&&b[0]==="-"&&b[1]!=="-"){const t=this._findOption(`-${b[1]}`);if(t){if(t.required||t.optional&&this._combineFlagAndOptionalValue){this.emit(`option:${t.name()}`,b.slice(2))}else{this.emit(`option:${t.name()}`);y=`-${b.slice(2)}`}continue}}if(/^--[^=]+=/.test(b)){const t=b.indexOf("=");const u=this._findOption(b.slice(0,t));if(u&&(u.required||u.optional)){this.emit(`option:${u.name()}`,b.slice(t+1));continue}}if(m===u&&maybeOption(b)&&!(this.commands.length===0&&negativeNumberArg(b))){m=p}if((this._enablePositionalOptions||this._passThroughOptions)&&u.length===0&&p.length===0){if(this._findCommand(b)){u.push(b);p.push(...t.slice(v));break}else if(this._getHelpCommand()&&b===this._getHelpCommand().name()){u.push(b,...t.slice(v));break}else if(this._defaultCommandName){p.push(b,...t.slice(v));break}}if(this._passThroughOptions){m.push(b,...t.slice(v));break}m.push(b)}return{operands:u,unknown:p}}opts(){if(this._storeOptionsAsProperties){const t={};const u=this.options.length;for(let p=0;p<u;p++){const u=this.options[p].attributeName();t[u]=u===this._versionOptionName?this._version:this[u]}return t}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce(((t,u)=>Object.assign(t,u.opts())),{})}error(t,u){this._outputConfiguration.outputError(`${t}\n`,this._outputConfiguration.writeErr);if(typeof this._showHelpAfterError==="string"){this._outputConfiguration.writeErr(`${this._showHelpAfterError}\n`)}else if(this._showHelpAfterError){this._outputConfiguration.writeErr("\n");this.outputHelp({error:true})}const p=u||{};const m=p.exitCode||1;const g=p.code||"commander.error";this._exit(m,g,t)}_parseOptionsEnv(){this.options.forEach((t=>{if(t.envVar&&t.envVar in b.env){const u=t.attributeName();if(this.getOptionValue(u)===undefined||["default","config","env"].includes(this.getOptionValueSource(u))){if(t.required||t.optional){this.emit(`optionEnv:${t.name()}`,b.env[t.envVar])}else{this.emit(`optionEnv:${t.name()}`)}}}}))}_parseOptionsImplied(){const t=new A(this.options);const hasCustomOptionValue=t=>this.getOptionValue(t)!==undefined&&!["default","implied"].includes(this.getOptionValueSource(t));this.options.filter((u=>u.implied!==undefined&&hasCustomOptionValue(u.attributeName())&&t.valueFromOption(this.getOptionValue(u.attributeName()),u))).forEach((t=>{Object.keys(t.implied).filter((t=>!hasCustomOptionValue(t))).forEach((u=>{this.setOptionValueWithSource(u,t.implied[u],"implied")}))}))}missingArgument(t){const u=`error: missing required argument '${t}'`;this.error(u,{code:"commander.missingArgument"})}optionMissingArgument(t){const u=`error: option '${t.flags}' argument missing`;this.error(u,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(t){const u=`error: required option '${t.flags}' not specified`;this.error(u,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(t,u){const findBestOptionFromValue=t=>{const u=t.attributeName();const p=this.getOptionValue(u);const m=this.options.find((t=>t.negate&&u===t.attributeName()));const g=this.options.find((t=>!t.negate&&u===t.attributeName()));if(m&&(m.presetArg===undefined&&p===false||m.presetArg!==undefined&&p===m.presetArg)){return m}return g||t};const getErrorMessage=t=>{const u=findBestOptionFromValue(t);const p=u.attributeName();const m=this.getOptionValueSource(p);if(m==="env"){return`environment variable '${u.envVar}'`}return`option '${u.flags}'`};const p=`error: ${getErrorMessage(t)} cannot be used with ${getErrorMessage(u)}`;this.error(p,{code:"commander.conflictingOption"})}unknownOption(t){if(this._allowUnknownOption)return;let u="";if(t.startsWith("--")&&this._showSuggestionAfterError){let p=[];let m=this;do{const t=m.createHelp().visibleOptions(m).filter((t=>t.long)).map((t=>t.long));p=p.concat(t);m=m.parent}while(m&&!m._enablePositionalOptions);u=x(t,p)}const p=`error: unknown option '${t}'${u}`;this.error(p,{code:"commander.unknownOption"})}_excessArguments(t){if(this._allowExcessArguments)return;const u=this.registeredArguments.length;const p=u===1?"":"s";const m=this.parent?` for '${this.name()}'`:"";const g=`error: too many arguments${m}. Expected ${u} argument${p} but got ${t.length}.`;this.error(g,{code:"commander.excessArguments"})}unknownCommand(){const t=this.args[0];let u="";if(this._showSuggestionAfterError){const p=[];this.createHelp().visibleCommands(this).forEach((t=>{p.push(t.name());if(t.alias())p.push(t.alias())}));u=x(t,p)}const p=`error: unknown command '${t}'${u}`;this.error(p,{code:"commander.unknownCommand"})}version(t,u,p){if(t===undefined)return this._version;this._version=t;u=u||"-V, --version";p=p||"output the version number";const m=this.createOption(u,p);this._versionOptionName=m.attributeName();this._registerOption(m);this.on("option:"+m.name(),(()=>{this._outputConfiguration.writeOut(`${t}\n`);this._exit(0,"commander.version",t)}));return this}description(t,u){if(t===undefined&&u===undefined)return this._description;this._description=t;if(u){this._argsDescription=u}return this}summary(t){if(t===undefined)return this._summary;this._summary=t;return this}alias(t){if(t===undefined)return this._aliases[0];let u=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler){u=this.commands[this.commands.length-1]}if(t===u._name)throw new Error("Command alias can't be the same as its name");const p=this.parent?._findCommand(t);if(p){const u=[p.name()].concat(p.aliases()).join("|");throw new Error(`cannot add alias '${t}' to command '${this.name()}' as already have command '${u}'`)}u._aliases.push(t);return this}aliases(t){if(t===undefined)return this._aliases;t.forEach((t=>this.alias(t)));return this}usage(t){if(t===undefined){if(this._usage)return this._usage;const t=this.registeredArguments.map((t=>E(t)));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?t:[]).join(" ")}this._usage=t;return this}name(t){if(t===undefined)return this._name;this._name=t;return this}helpGroup(t){if(t===undefined)return this._helpGroupHeading??"";this._helpGroupHeading=t;return this}commandsGroup(t){if(t===undefined)return this._defaultCommandGroup??"";this._defaultCommandGroup=t;return this}optionsGroup(t){if(t===undefined)return this._defaultOptionGroup??"";this._defaultOptionGroup=t;return this}_initOptionGroup(t){if(this._defaultOptionGroup&&!t.helpGroupHeading)t.helpGroup(this._defaultOptionGroup)}_initCommandGroup(t){if(this._defaultCommandGroup&&!t.helpGroup())t.helpGroup(this._defaultCommandGroup)}nameFromFilename(t){this._name=y.basename(t,y.extname(t));return this}executableDir(t){if(t===undefined)return this._executableDir;this._executableDir=t;return this}helpInformation(t){const u=this.createHelp();const p=this._getOutputContext(t);u.prepareContext({error:p.error,helpWidth:p.helpWidth,outputHasColors:p.hasColors});const m=u.formatHelp(this,u);if(p.hasColors)return m;return this._outputConfiguration.stripColor(m)}_getOutputContext(t){t=t||{};const u=!!t.error;let p;let m;let g;if(u){p=t=>this._outputConfiguration.writeErr(t);m=this._outputConfiguration.getErrHasColors();g=this._outputConfiguration.getErrHelpWidth()}else{p=t=>this._outputConfiguration.writeOut(t);m=this._outputConfiguration.getOutHasColors();g=this._outputConfiguration.getOutHelpWidth()}const write=t=>{if(!m)t=this._outputConfiguration.stripColor(t);return p(t)};return{error:u,write:write,hasColors:m,helpWidth:g}}outputHelp(t){let u;if(typeof t==="function"){u=t;t=undefined}const p=this._getOutputContext(t);const m={error:p.error,write:p.write,command:this};this._getCommandAndAncestors().reverse().forEach((t=>t.emit("beforeAllHelp",m)));this.emit("beforeHelp",m);let g=this.helpInformation({error:p.error});if(u){g=u(g);if(typeof g!=="string"&&!Buffer.isBuffer(g)){throw new Error("outputHelp callback must return a string or a Buffer")}}p.write(g);if(this._getHelpOption()?.long){this.emit(this._getHelpOption().long)}this.emit("afterHelp",m);this._getCommandAndAncestors().forEach((t=>t.emit("afterAllHelp",m)))}helpOption(t,u){if(typeof t==="boolean"){if(t){if(this._helpOption===null)this._helpOption=undefined;if(this._defaultOptionGroup){this._initOptionGroup(this._getHelpOption())}}else{this._helpOption=null}return this}this._helpOption=this.createOption(t??"-h, --help",u??"display help for command");if(t||u)this._initOptionGroup(this._helpOption);return this}_getHelpOption(){if(this._helpOption===undefined){this.helpOption(undefined,undefined)}return this._helpOption}addHelpOption(t){this._helpOption=t;this._initOptionGroup(t);return this}help(t){this.outputHelp(t);let u=Number(b.exitCode??0);if(u===0&&t&&typeof t!=="function"&&t.error){u=1}this._exit(u,"commander.help","(outputHelp)")}addHelpText(t,u){const p=["beforeAll","before","after","afterAll"];if(!p.includes(t)){throw new Error(`Unexpected value for position to addHelpText.\nExpecting one of '${p.join("', '")}'`)}const m=`${t}Help`;this.on(m,(t=>{let p;if(typeof u==="function"){p=u({error:t.error,command:t.command})}else{p=u}if(p){t.write(`${p}\n`)}}));return this}_outputHelpIfRequested(t){const u=this._getHelpOption();const p=u&&t.find((t=>u.is(t)));if(p){this.outputHelp();this._exit(0,"commander.helpDisplayed","(outputHelp)")}}}function incrementNodeInspectorPort(t){return t.map((t=>{if(!t.startsWith("--inspect")){return t}let u;let p="127.0.0.1";let m="9229";let g;if((g=t.match(/^(--inspect(-brk)?)$/))!==null){u=g[1]}else if((g=t.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null){u=g[1];if(/^\d+$/.test(g[3])){m=g[3]}else{p=g[3]}}else if((g=t.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null){u=g[1];p=g[3];m=g[4]}if(u&&m!=="0"){return`${u}=${p}:${parseInt(m)+1}`}return t}))}function useColor(){if(b.env.NO_COLOR||b.env.FORCE_COLOR==="0"||b.env.FORCE_COLOR==="false")return false;if(b.env.FORCE_COLOR||b.env.CLICOLOR_FORCE!==undefined)return true;return undefined}u.Command=Command;u.useColor=useColor},9400:(t,u)=>{class CommanderError extends Error{constructor(t,u,p){super(p);Error.captureStackTrace(this,this.constructor);this.name=this.constructor.name;this.code=u;this.exitCode=t;this.nestedError=undefined}}class InvalidArgumentError extends CommanderError{constructor(t){super(1,"commander.invalidArgument",t);Error.captureStackTrace(this,this.constructor);this.name=this.constructor.name}}u.CommanderError=CommanderError;u.InvalidArgumentError=InvalidArgumentError},2559:(t,u,p)=>{const{humanReadableArgName:m}=p(1455);class Help{constructor(){this.helpWidth=undefined;this.minWidthToWrap=40;this.sortSubcommands=false;this.sortOptions=false;this.showGlobalOptions=false}prepareContext(t){this.helpWidth=this.helpWidth??t.helpWidth??80}visibleCommands(t){const u=t.commands.filter((t=>!t._hidden));const p=t._getHelpCommand();if(p&&!p._hidden){u.push(p)}if(this.sortSubcommands){u.sort(((t,u)=>t.name().localeCompare(u.name())))}return u}compareOptions(t,u){const getSortKey=t=>t.short?t.short.replace(/^-/,""):t.long.replace(/^--/,"");return getSortKey(t).localeCompare(getSortKey(u))}visibleOptions(t){const u=t.options.filter((t=>!t.hidden));const p=t._getHelpOption();if(p&&!p.hidden){const m=p.short&&t._findOption(p.short);const g=p.long&&t._findOption(p.long);if(!m&&!g){u.push(p)}else if(p.long&&!g){u.push(t.createOption(p.long,p.description))}else if(p.short&&!m){u.push(t.createOption(p.short,p.description))}}if(this.sortOptions){u.sort(this.compareOptions)}return u}visibleGlobalOptions(t){if(!this.showGlobalOptions)return[];const u=[];for(let p=t.parent;p;p=p.parent){const t=p.options.filter((t=>!t.hidden));u.push(...t)}if(this.sortOptions){u.sort(this.compareOptions)}return u}visibleArguments(t){if(t._argsDescription){t.registeredArguments.forEach((u=>{u.description=u.description||t._argsDescription[u.name()]||""}))}if(t.registeredArguments.find((t=>t.description))){return t.registeredArguments}return[]}subcommandTerm(t){const u=t.registeredArguments.map((t=>m(t))).join(" ");return t._name+(t._aliases[0]?"|"+t._aliases[0]:"")+(t.options.length?" [options]":"")+(u?" "+u:"")}optionTerm(t){return t.flags}argumentTerm(t){return t.name()}longestSubcommandTermLength(t,u){return u.visibleCommands(t).reduce(((t,p)=>Math.max(t,this.displayWidth(u.styleSubcommandTerm(u.subcommandTerm(p))))),0)}longestOptionTermLength(t,u){return u.visibleOptions(t).reduce(((t,p)=>Math.max(t,this.displayWidth(u.styleOptionTerm(u.optionTerm(p))))),0)}longestGlobalOptionTermLength(t,u){return u.visibleGlobalOptions(t).reduce(((t,p)=>Math.max(t,this.displayWidth(u.styleOptionTerm(u.optionTerm(p))))),0)}longestArgumentTermLength(t,u){return u.visibleArguments(t).reduce(((t,p)=>Math.max(t,this.displayWidth(u.styleArgumentTerm(u.argumentTerm(p))))),0)}commandUsage(t){let u=t._name;if(t._aliases[0]){u=u+"|"+t._aliases[0]}let p="";for(let u=t.parent;u;u=u.parent){p=u.name()+" "+p}return p+u+" "+t.usage()}commandDescription(t){return t.description()}subcommandDescription(t){return t.summary()||t.description()}optionDescription(t){const u=[];if(t.argChoices){u.push(`choices: ${t.argChoices.map((t=>JSON.stringify(t))).join(", ")}`)}if(t.defaultValue!==undefined){const p=t.required||t.optional||t.isBoolean()&&typeof t.defaultValue==="boolean";if(p){u.push(`default: ${t.defaultValueDescription||JSON.stringify(t.defaultValue)}`)}}if(t.presetArg!==undefined&&t.optional){u.push(`preset: ${JSON.stringify(t.presetArg)}`)}if(t.envVar!==undefined){u.push(`env: ${t.envVar}`)}if(u.length>0){const p=`(${u.join(", ")})`;if(t.description){return`${t.description} ${p}`}return p}return t.description}argumentDescription(t){const u=[];if(t.argChoices){u.push(`choices: ${t.argChoices.map((t=>JSON.stringify(t))).join(", ")}`)}if(t.defaultValue!==undefined){u.push(`default: ${t.defaultValueDescription||JSON.stringify(t.defaultValue)}`)}if(u.length>0){const p=`(${u.join(", ")})`;if(t.description){return`${t.description} ${p}`}return p}return t.description}formatItemList(t,u,p){if(u.length===0)return[];return[p.styleTitle(t),...u,""]}groupItems(t,u,p){const m=new Map;t.forEach((t=>{const u=p(t);if(!m.has(u))m.set(u,[])}));u.forEach((t=>{const u=p(t);if(!m.has(u)){m.set(u,[])}m.get(u).push(t)}));return m}formatHelp(t,u){const p=u.padWidth(t,u);const m=u.helpWidth??80;function callFormatItem(t,m){return u.formatItem(t,p,m,u)}let g=[`${u.styleTitle("Usage:")} ${u.styleUsage(u.commandUsage(t))}`,""];const y=u.commandDescription(t);if(y.length>0){g=g.concat([u.boxWrap(u.styleCommandDescription(y),m),""])}const v=u.visibleArguments(t).map((t=>callFormatItem(u.styleArgumentTerm(u.argumentTerm(t)),u.styleArgumentDescription(u.argumentDescription(t)))));g=g.concat(this.formatItemList("Arguments:",v,u));const b=this.groupItems(t.options,u.visibleOptions(t),(t=>t.helpGroupHeading??"Options:"));b.forEach(((t,p)=>{const m=t.map((t=>callFormatItem(u.styleOptionTerm(u.optionTerm(t)),u.styleOptionDescription(u.optionDescription(t)))));g=g.concat(this.formatItemList(p,m,u))}));if(u.showGlobalOptions){const p=u.visibleGlobalOptions(t).map((t=>callFormatItem(u.styleOptionTerm(u.optionTerm(t)),u.styleOptionDescription(u.optionDescription(t)))));g=g.concat(this.formatItemList("Global Options:",p,u))}const w=this.groupItems(t.commands,u.visibleCommands(t),(t=>t.helpGroup()||"Commands:"));w.forEach(((t,p)=>{const m=t.map((t=>callFormatItem(u.styleSubcommandTerm(u.subcommandTerm(t)),u.styleSubcommandDescription(u.subcommandDescription(t)))));g=g.concat(this.formatItemList(p,m,u))}));return g.join("\n")}displayWidth(t){return stripColor(t).length}styleTitle(t){return t}styleUsage(t){return t.split(" ").map((t=>{if(t==="[options]")return this.styleOptionText(t);if(t==="[command]")return this.styleSubcommandText(t);if(t[0]==="["||t[0]==="<")return this.styleArgumentText(t);return this.styleCommandText(t)})).join(" ")}styleCommandDescription(t){return this.styleDescriptionText(t)}styleOptionDescription(t){return this.styleDescriptionText(t)}styleSubcommandDescription(t){return this.styleDescriptionText(t)}styleArgumentDescription(t){return this.styleDescriptionText(t)}styleDescriptionText(t){return t}styleOptionTerm(t){return this.styleOptionText(t)}styleSubcommandTerm(t){return t.split(" ").map((t=>{if(t==="[options]")return this.styleOptionText(t);if(t[0]==="["||t[0]==="<")return this.styleArgumentText(t);return this.styleSubcommandText(t)})).join(" ")}styleArgumentTerm(t){return this.styleArgumentText(t)}styleOptionText(t){return t}styleArgumentText(t){return t}styleSubcommandText(t){return t}styleCommandText(t){return t}padWidth(t,u){return Math.max(u.longestOptionTermLength(t,u),u.longestGlobalOptionTermLength(t,u),u.longestSubcommandTermLength(t,u),u.longestArgumentTermLength(t,u))}preformatted(t){return/\n[^\S\r\n]/.test(t)}formatItem(t,u,p,m){const g=2;const y=" ".repeat(g);if(!p)return y+t;const v=t.padEnd(u+t.length-m.displayWidth(t));const b=2;const w=this.helpWidth??80;const E=w-u-b-g;let $;if(E<this.minWidthToWrap||m.preformatted(p)){$=p}else{const t=m.boxWrap(p,E);$=t.replace(/\n/g,"\n"+" ".repeat(u+b))}return y+v+" ".repeat(b)+$.replace(/\n/g,`\n${y}`)}boxWrap(t,u){if(u<this.minWidthToWrap)return t;const p=t.split(/\r\n|\n/);const m=/[\s]*[^\s]+/g;const g=[];p.forEach((t=>{const p=t.match(m);if(p===null){g.push("");return}let y=[p.shift()];let v=this.displayWidth(y[0]);p.forEach((t=>{const p=this.displayWidth(t);if(v+p<=u){y.push(t);v+=p;return}g.push(y.join(""));const m=t.trimStart();y=[m];v=this.displayWidth(m)}));g.push(y.join(""))}));return g.join("\n")}}function stripColor(t){const u=/\x1b\[\d*(;\d*)*m/g;return t.replace(u,"")}u.Help=Help;u.stripColor=stripColor},1033:(t,u,p)=>{const{InvalidArgumentError:m}=p(9400);class Option{constructor(t,u){this.flags=t;this.description=u||"";this.required=t.includes("<");this.optional=t.includes("[");this.variadic=/\w\.\.\.[>\]]$/.test(t);this.mandatory=false;const p=splitOptionFlags(t);this.short=p.shortFlag;this.long=p.longFlag;this.negate=false;if(this.long){this.negate=this.long.startsWith("--no-")}this.defaultValue=undefined;this.defaultValueDescription=undefined;this.presetArg=undefined;this.envVar=undefined;this.parseArg=undefined;this.hidden=false;this.argChoices=undefined;this.conflictsWith=[];this.implied=undefined;this.helpGroupHeading=undefined}default(t,u){this.defaultValue=t;this.defaultValueDescription=u;return this}preset(t){this.presetArg=t;return this}conflicts(t){this.conflictsWith=this.conflictsWith.concat(t);return this}implies(t){let u=t;if(typeof t==="string"){u={[t]:true}}this.implied=Object.assign(this.implied||{},u);return this}env(t){this.envVar=t;return this}argParser(t){this.parseArg=t;return this}makeOptionMandatory(t=true){this.mandatory=!!t;return this}hideHelp(t=true){this.hidden=!!t;return this}_collectValue(t,u){if(u===this.defaultValue||!Array.isArray(u)){return[t]}u.push(t);return u}choices(t){this.argChoices=t.slice();this.parseArg=(t,u)=>{if(!this.argChoices.includes(t)){throw new m(`Allowed choices are ${this.argChoices.join(", ")}.`)}if(this.variadic){return this._collectValue(t,u)}return t};return this}name(){if(this.long){return this.long.replace(/^--/,"")}return this.short.replace(/^-/,"")}attributeName(){if(this.negate){return camelcase(this.name().replace(/^no-/,""))}return camelcase(this.name())}helpGroup(t){this.helpGroupHeading=t;return this}is(t){return this.short===t||this.long===t}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class DualOptions{constructor(t){this.positiveOptions=new Map;this.negativeOptions=new Map;this.dualOptions=new Set;t.forEach((t=>{if(t.negate){this.negativeOptions.set(t.attributeName(),t)}else{this.positiveOptions.set(t.attributeName(),t)}}));this.negativeOptions.forEach(((t,u)=>{if(this.positiveOptions.has(u)){this.dualOptions.add(u)}}))}valueFromOption(t,u){const p=u.attributeName();if(!this.dualOptions.has(p))return true;const m=this.negativeOptions.get(p).presetArg;const g=m!==undefined?m:false;return u.negate===(g===t)}}function camelcase(t){return t.split("-").reduce(((t,u)=>t+u[0].toUpperCase()+u.slice(1)))}function splitOptionFlags(t){let u;let p;const m=/^-[^-]$/;const g=/^--[^-]/;const y=t.split(/[ |,]+/).concat("guard");if(m.test(y[0]))u=y.shift();if(g.test(y[0]))p=y.shift();if(!u&&m.test(y[0]))u=y.shift();if(!u&&g.test(y[0])){u=p;p=y.shift()}if(y[0].startsWith("-")){const u=y[0];const p=`option creation failed due to '${u}' in option flags '${t}'`;if(/^-[^-][^-]/.test(u))throw new Error(`${p}\n- a short flag is a single dash and a single character\n - either use a single dash and a single character (for a short flag)\n - or use a double dash for a long option (and can have two, like '--ws, --workspace')`);if(m.test(u))throw new Error(`${p}\n- too many short flags`);if(g.test(u))throw new Error(`${p}\n- too many long flags`);throw new Error(`${p}\n- unrecognised flag format`)}if(u===undefined&&p===undefined)throw new Error(`option creation failed due to no flags found in '${t}'.`);return{shortFlag:u,longFlag:p}}u.Option=Option;u.DualOptions=DualOptions},3683:(t,u)=>{const p=3;function editDistance(t,u){if(Math.abs(t.length-u.length)>p)return Math.max(t.length,u.length);const m=[];for(let u=0;u<=t.length;u++){m[u]=[u]}for(let t=0;t<=u.length;t++){m[0][t]=t}for(let p=1;p<=u.length;p++){for(let g=1;g<=t.length;g++){let y=1;if(t[g-1]===u[p-1]){y=0}else{y=1}m[g][p]=Math.min(m[g-1][p]+1,m[g][p-1]+1,m[g-1][p-1]+y);if(g>1&&p>1&&t[g-1]===u[p-2]&&t[g-2]===u[p-1]){m[g][p]=Math.min(m[g][p],m[g-2][p-2]+1)}}}return m[t.length][u.length]}function suggestSimilar(t,u){if(!u||u.length===0)return"";u=Array.from(new Set(u));const m=t.startsWith("--");if(m){t=t.slice(2);u=u.map((t=>t.slice(2)))}let g=[];let y=p;const v=.4;u.forEach((u=>{if(u.length<=1)return;const p=editDistance(t,u);const m=Math.max(t.length,u.length);const b=(m-p)/m;if(b>v){if(p<y){y=p;g=[u]}else if(p===y){g.push(u)}}}));g.sort(((t,u)=>t.localeCompare(u)));if(m){g=g.map((t=>`--${t}`))}if(g.length>1){return`\n(Did you mean one of ${g.join(", ")}?)`}if(g.length===1){return`\n(Did you mean ${g[0]}?)`}return""}u.suggestSimilar=suggestSimilar},6564:(t,u,p)=>{"use strict";const{normalizeIPv6:m,removeDotSegments:g,recomposeAuthority:y,normalizeComponentEncoding:v,isIPv4:b,nonSimpleDomain:w}=p(1097);const{SCHEMES:E,getSchemeHandler:$}=p(2424);function normalize(t,u){if(typeof t==="string"){t=serialize(parse(t,u),u)}else if(typeof t==="object"){t=parse(serialize(t,u),u)}return t}function resolve(t,u,p){const m=p?Object.assign({scheme:"null"},p):{scheme:"null"};const g=resolveComponent(parse(t,m),parse(u,m),m,true);m.skipEscape=true;return serialize(g,m)}function resolveComponent(t,u,p,m){const y={};if(!m){t=parse(serialize(t,p),p);u=parse(serialize(u,p),p)}p=p||{};if(!p.tolerant&&u.scheme){y.scheme=u.scheme;y.userinfo=u.userinfo;y.host=u.host;y.port=u.port;y.path=g(u.path||"");y.query=u.query}else{if(u.userinfo!==undefined||u.host!==undefined||u.port!==undefined){y.userinfo=u.userinfo;y.host=u.host;y.port=u.port;y.path=g(u.path||"");y.query=u.query}else{if(!u.path){y.path=t.path;if(u.query!==undefined){y.query=u.query}else{y.query=t.query}}else{if(u.path[0]==="/"){y.path=g(u.path)}else{if((t.userinfo!==undefined||t.host!==undefined||t.port!==undefined)&&!t.path){y.path="/"+u.path}else if(!t.path){y.path=u.path}else{y.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+u.path}y.path=g(y.path)}y.query=u.query}y.userinfo=t.userinfo;y.host=t.host;y.port=t.port}y.scheme=t.scheme}y.fragment=u.fragment;return y}function equal(t,u,p){if(typeof t==="string"){t=unescape(t);t=serialize(v(parse(t,p),true),{...p,skipEscape:true})}else if(typeof t==="object"){t=serialize(v(t,true),{...p,skipEscape:true})}if(typeof u==="string"){u=unescape(u);u=serialize(v(parse(u,p),true),{...p,skipEscape:true})}else if(typeof u==="object"){u=serialize(v(u,true),{...p,skipEscape:true})}return t.toLowerCase()===u.toLowerCase()}function serialize(t,u){const p={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""};const m=Object.assign({},u);const v=[];const b=$(m.scheme||p.scheme);if(b&&b.serialize)b.serialize(p,m);if(p.path!==undefined){if(!m.skipEscape){p.path=escape(p.path);if(p.scheme!==undefined){p.path=p.path.split("%3A").join(":")}}else{p.path=unescape(p.path)}}if(m.reference!=="suffix"&&p.scheme){v.push(p.scheme,":")}const w=y(p);if(w!==undefined){if(m.reference!=="suffix"){v.push("//")}v.push(w);if(p.path&&p.path[0]!=="/"){v.push("/")}}if(p.path!==undefined){let t=p.path;if(!m.absolutePath&&(!b||!b.absolutePath)){t=g(t)}if(w===undefined&&t[0]==="/"&&t[1]==="/"){t="/%2F"+t.slice(2)}v.push(t)}if(p.query!==undefined){v.push("?",p.query)}if(p.fragment!==undefined){v.push("#",p.fragment)}return v.join("")}const O=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function parse(t,u){const p=Object.assign({},u);const g={scheme:undefined,userinfo:undefined,host:"",port:undefined,path:"",query:undefined,fragment:undefined};let y=false;if(p.reference==="suffix"){if(p.scheme){t=p.scheme+":"+t}else{t="//"+t}}const v=t.match(O);if(v){g.scheme=v[1];g.userinfo=v[3];g.host=v[4];g.port=parseInt(v[5],10);g.path=v[6]||"";g.query=v[7];g.fragment=v[8];if(isNaN(g.port)){g.port=v[5]}if(g.host){const t=b(g.host);if(t===false){const t=m(g.host);g.host=t.host.toLowerCase();y=t.isIPV6}else{y=true}}if(g.scheme===undefined&&g.userinfo===undefined&&g.host===undefined&&g.port===undefined&&g.query===undefined&&!g.path){g.reference="same-document"}else if(g.scheme===undefined){g.reference="relative"}else if(g.fragment===undefined){g.reference="absolute"}else{g.reference="uri"}if(p.reference&&p.reference!=="suffix"&&p.reference!==g.reference){g.error=g.error||"URI is not a "+p.reference+" reference."}const u=$(p.scheme||g.scheme);if(!p.unicodeSupport&&(!u||!u.unicodeSupport)){if(g.host&&(p.domainHost||u&&u.domainHost)&&y===false&&w(g.host)){try{g.host=URL.domainToASCII(g.host.toLowerCase())}catch(t){g.error=g.error||"Host's domain name can not be converted to ASCII: "+t}}}if(!u||u&&!u.skipNormalize){if(t.indexOf("%")!==-1){if(g.scheme!==undefined){g.scheme=unescape(g.scheme)}if(g.host!==undefined){g.host=unescape(g.host)}}if(g.path){g.path=escape(unescape(g.path))}if(g.fragment){g.fragment=encodeURI(decodeURIComponent(g.fragment))}}if(u&&u.parse){u.parse(g,p)}}else{g.error=g.error||"URI can not be parsed."}return g}const R={SCHEMES:E,normalize:normalize,resolve:resolve,resolveComponent:resolveComponent,equal:equal,serialize:serialize,parse:parse};t.exports=R;t.exports["default"]=R;t.exports.fastUri=R},2424:(t,u,p)=>{"use strict";const{isUUID:m}=p(1097);const g=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;const y=["http","https","ws","wss","urn","urn:uuid"];function isValidSchemeName(t){return y.indexOf(t)!==-1}function wsIsSecure(t){if(t.secure===true){return true}else if(t.secure===false){return false}else if(t.scheme){return t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S")}else{return false}}function httpParse(t){if(!t.host){t.error=t.error||"HTTP URIs must have a host."}return t}function httpSerialize(t){const u=String(t.scheme).toLowerCase()==="https";if(t.port===(u?443:80)||t.port===""){t.port=undefined}if(!t.path){t.path="/"}return t}function wsParse(t){t.secure=wsIsSecure(t);t.resourceName=(t.path||"/")+(t.query?"?"+t.query:"");t.path=undefined;t.query=undefined;return t}function wsSerialize(t){if(t.port===(wsIsSecure(t)?443:80)||t.port===""){t.port=undefined}if(typeof t.secure==="boolean"){t.scheme=t.secure?"wss":"ws";t.secure=undefined}if(t.resourceName){const[u,p]=t.resourceName.split("?");t.path=u&&u!=="/"?u:undefined;t.query=p;t.resourceName=undefined}t.fragment=undefined;return t}function urnParse(t,u){if(!t.path){t.error="URN can not be parsed";return t}const p=t.path.match(g);if(p){const m=u.scheme||t.scheme||"urn";t.nid=p[1].toLowerCase();t.nss=p[2];const g=`${m}:${u.nid||t.nid}`;const y=getSchemeHandler(g);t.path=undefined;if(y){t=y.parse(t,u)}}else{t.error=t.error||"URN can not be parsed."}return t}function urnSerialize(t,u){if(t.nid===undefined){throw new Error("URN without nid cannot be serialized")}const p=u.scheme||t.scheme||"urn";const m=t.nid.toLowerCase();const g=`${p}:${u.nid||m}`;const y=getSchemeHandler(g);if(y){t=y.serialize(t,u)}const v=t;const b=t.nss;v.path=`${m||u.nid}:${b}`;u.skipEscape=true;return v}function urnuuidParse(t,u){const p=t;p.uuid=p.nss;p.nss=undefined;if(!u.tolerant&&(!p.uuid||!m(p.uuid))){p.error=p.error||"UUID is not valid."}return p}function urnuuidSerialize(t){const u=t;u.nss=(t.uuid||"").toLowerCase();return u}const v={scheme:"http",domainHost:true,parse:httpParse,serialize:httpSerialize};const b={scheme:"https",domainHost:v.domainHost,parse:httpParse,serialize:httpSerialize};const w={scheme:"ws",domainHost:true,parse:wsParse,serialize:wsSerialize};const E={scheme:"wss",domainHost:w.domainHost,parse:w.parse,serialize:w.serialize};const $={scheme:"urn",parse:urnParse,serialize:urnSerialize,skipNormalize:true};const O={scheme:"urn:uuid",parse:urnuuidParse,serialize:urnuuidSerialize,skipNormalize:true};const R={http:v,https:b,ws:w,wss:E,urn:$,"urn:uuid":O};Object.setPrototypeOf(R,null);function getSchemeHandler(t){return t&&(R[t]||R[t.toLowerCase()])||undefined}t.exports={wsIsSecure:wsIsSecure,SCHEMES:R,isValidSchemeName:isValidSchemeName,getSchemeHandler:getSchemeHandler}},1097:t=>{"use strict";const u=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu);const p=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function stringArrayToHexStripped(t){let u="";let p=0;let m=0;for(m=0;m<t.length;m++){p=t[m].charCodeAt(0);if(p===48){continue}if(!(p>=48&&p<=57||p>=65&&p<=70||p>=97&&p<=102)){return""}u+=t[m];break}for(m+=1;m<t.length;m++){p=t[m].charCodeAt(0);if(!(p>=48&&p<=57||p>=65&&p<=70||p>=97&&p<=102)){return""}u+=t[m]}return u}const m=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function consumeIsZone(t){t.length=0;return true}function consumeHextets(t,u,p){if(t.length){const m=stringArrayToHexStripped(t);if(m!==""){u.push(m)}else{p.error=true;return false}t.length=0}return true}function getIPV6(t){let u=0;const p={error:false,address:"",zone:""};const m=[];const g=[];let y=false;let v=false;let b=consumeHextets;for(let w=0;w<t.length;w++){const E=t[w];if(E==="["||E==="]"){continue}if(E===":"){if(y===true){v=true}if(!b(g,m,p)){break}if(++u>7){p.error=true;break}if(w>0&&t[w-1]===":"){y=true}m.push(":");continue}else if(E==="%"){if(!b(g,m,p)){break}b=consumeIsZone}else{g.push(E);continue}}if(g.length){if(b===consumeIsZone){p.zone=g.join("")}else if(v){m.push(g.join(""))}else{m.push(stringArrayToHexStripped(g))}}p.address=m.join("");return p}function normalizeIPv6(t){if(findToken(t,":")<2){return{host:t,isIPV6:false}}const u=getIPV6(t);if(!u.error){let t=u.address;let p=u.address;if(u.zone){t+="%"+u.zone;p+="%25"+u.zone}return{host:t,isIPV6:true,escapedHost:p}}else{return{host:t,isIPV6:false}}}function findToken(t,u){let p=0;for(let m=0;m<t.length;m++){if(t[m]===u)p++}return p}function removeDotSegments(t){let u=t;const p=[];let m=-1;let g=0;while(g=u.length){if(g===1){if(u==="."){break}else if(u==="/"){p.push("/");break}else{p.push(u);break}}else if(g===2){if(u[0]==="."){if(u[1]==="."){break}else if(u[1]==="/"){u=u.slice(2);continue}}else if(u[0]==="/"){if(u[1]==="."||u[1]==="/"){p.push("/");break}}}else if(g===3){if(u==="/.."){if(p.length!==0){p.pop()}p.push("/");break}}if(u[0]==="."){if(u[1]==="."){if(u[2]==="/"){u=u.slice(3);continue}}else if(u[1]==="/"){u=u.slice(2);continue}}else if(u[0]==="/"){if(u[1]==="."){if(u[2]==="/"){u=u.slice(2);continue}else if(u[2]==="."){if(u[3]==="/"){u=u.slice(3);if(p.length!==0){p.pop()}continue}}}}if((m=u.indexOf("/",1))===-1){p.push(u);break}else{p.push(u.slice(0,m));u=u.slice(m)}}return p.join("")}function normalizeComponentEncoding(t,u){const p=u!==true?escape:unescape;if(t.scheme!==undefined){t.scheme=p(t.scheme)}if(t.userinfo!==undefined){t.userinfo=p(t.userinfo)}if(t.host!==undefined){t.host=p(t.host)}if(t.path!==undefined){t.path=p(t.path)}if(t.query!==undefined){t.query=p(t.query)}if(t.fragment!==undefined){t.fragment=p(t.fragment)}return t}function recomposeAuthority(t){const u=[];if(t.userinfo!==undefined){u.push(t.userinfo);u.push("@")}if(t.host!==undefined){let m=unescape(t.host);if(!p(m)){const u=normalizeIPv6(m);if(u.isIPV6===true){m=`[${u.escapedHost}]`}else{m=t.host}}u.push(m)}if(typeof t.port==="number"||typeof t.port==="string"){u.push(":");u.push(String(t.port))}return u.length?u.join(""):undefined}t.exports={nonSimpleDomain:m,recomposeAuthority:recomposeAuthority,normalizeComponentEncoding:normalizeComponentEncoding,removeDotSegments:removeDotSegments,isIPv4:p,isUUID:u,normalizeIPv6:normalizeIPv6,stringArrayToHexStripped:stringArrayToHexStripped}},2200:t=>{"use strict";t.exports=JSON.parse('{"$id":"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#","description":"Meta-schema for $data reference (JSON AnySchema extension proposal)","type":"object","required":["$data"],"properties":{"$data":{"type":"string","anyOf":[{"format":"relative-json-pointer"},{"format":"json-pointer"}]}},"additionalProperties":false}')},5727:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/applicator","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/applicator":true},"$dynamicAnchor":"meta","title":"Applicator vocabulary meta-schema","type":["object","boolean"],"properties":{"prefixItems":{"$ref":"#/$defs/schemaArray"},"items":{"$dynamicRef":"#meta"},"contains":{"$dynamicRef":"#meta"},"additionalProperties":{"$dynamicRef":"#meta"},"properties":{"type":"object","additionalProperties":{"$dynamicRef":"#meta"},"default":{}},"patternProperties":{"type":"object","additionalProperties":{"$dynamicRef":"#meta"},"propertyNames":{"format":"regex"},"default":{}},"dependentSchemas":{"type":"object","additionalProperties":{"$dynamicRef":"#meta"},"default":{}},"propertyNames":{"$dynamicRef":"#meta"},"if":{"$dynamicRef":"#meta"},"then":{"$dynamicRef":"#meta"},"else":{"$dynamicRef":"#meta"},"allOf":{"$ref":"#/$defs/schemaArray"},"anyOf":{"$ref":"#/$defs/schemaArray"},"oneOf":{"$ref":"#/$defs/schemaArray"},"not":{"$dynamicRef":"#meta"}},"$defs":{"schemaArray":{"type":"array","minItems":1,"items":{"$dynamicRef":"#meta"}}}}')},1447:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/content","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/content":true},"$dynamicAnchor":"meta","title":"Content vocabulary meta-schema","type":["object","boolean"],"properties":{"contentEncoding":{"type":"string"},"contentMediaType":{"type":"string"},"contentSchema":{"$dynamicRef":"#meta"}}}')},4877:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/core","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/core":true},"$dynamicAnchor":"meta","title":"Core vocabulary meta-schema","type":["object","boolean"],"properties":{"$id":{"$ref":"#/$defs/uriReferenceString","$comment":"Non-empty fragments not allowed.","pattern":"^[^#]*#?$"},"$schema":{"$ref":"#/$defs/uriString"},"$ref":{"$ref":"#/$defs/uriReferenceString"},"$anchor":{"$ref":"#/$defs/anchorString"},"$dynamicRef":{"$ref":"#/$defs/uriReferenceString"},"$dynamicAnchor":{"$ref":"#/$defs/anchorString"},"$vocabulary":{"type":"object","propertyNames":{"$ref":"#/$defs/uriString"},"additionalProperties":{"type":"boolean"}},"$comment":{"type":"string"},"$defs":{"type":"object","additionalProperties":{"$dynamicRef":"#meta"}}},"$defs":{"anchorString":{"type":"string","pattern":"^[A-Za-z_][-A-Za-z0-9._]*$"},"uriString":{"type":"string","format":"uri"},"uriReferenceString":{"type":"string","format":"uri-reference"}}}')},9041:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/format-annotation","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/format-annotation":true},"$dynamicAnchor":"meta","title":"Format vocabulary meta-schema for annotation results","type":["object","boolean"],"properties":{"format":{"type":"string"}}}')},5118:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/meta-data","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/meta-data":true},"$dynamicAnchor":"meta","title":"Meta-data vocabulary meta-schema","type":["object","boolean"],"properties":{"title":{"type":"string"},"description":{"type":"string"},"default":true,"deprecated":{"type":"boolean","default":false},"readOnly":{"type":"boolean","default":false},"writeOnly":{"type":"boolean","default":false},"examples":{"type":"array","items":true}}}')},8606:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/unevaluated","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/unevaluated":true},"$dynamicAnchor":"meta","title":"Unevaluated applicator vocabulary meta-schema","type":["object","boolean"],"properties":{"unevaluatedItems":{"$dynamicRef":"#meta"},"unevaluatedProperties":{"$dynamicRef":"#meta"}}}')},3073:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/validation","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/validation":true},"$dynamicAnchor":"meta","title":"Validation vocabulary meta-schema","type":["object","boolean"],"properties":{"type":{"anyOf":[{"$ref":"#/$defs/simpleTypes"},{"type":"array","items":{"$ref":"#/$defs/simpleTypes"},"minItems":1,"uniqueItems":true}]},"const":true,"enum":{"type":"array","items":true},"multipleOf":{"type":"number","exclusiveMinimum":0},"maximum":{"type":"number"},"exclusiveMaximum":{"type":"number"},"minimum":{"type":"number"},"exclusiveMinimum":{"type":"number"},"maxLength":{"$ref":"#/$defs/nonNegativeInteger"},"minLength":{"$ref":"#/$defs/nonNegativeIntegerDefault0"},"pattern":{"type":"string","format":"regex"},"maxItems":{"$ref":"#/$defs/nonNegativeInteger"},"minItems":{"$ref":"#/$defs/nonNegativeIntegerDefault0"},"uniqueItems":{"type":"boolean","default":false},"maxContains":{"$ref":"#/$defs/nonNegativeInteger"},"minContains":{"$ref":"#/$defs/nonNegativeInteger","default":1},"maxProperties":{"$ref":"#/$defs/nonNegativeInteger"},"minProperties":{"$ref":"#/$defs/nonNegativeIntegerDefault0"},"required":{"$ref":"#/$defs/stringArray"},"dependentRequired":{"type":"object","additionalProperties":{"$ref":"#/$defs/stringArray"}}},"$defs":{"nonNegativeInteger":{"type":"integer","minimum":0},"nonNegativeIntegerDefault0":{"$ref":"#/$defs/nonNegativeInteger","default":0},"simpleTypes":{"enum":["array","boolean","integer","null","number","object","string"]},"stringArray":{"type":"array","items":{"type":"string"},"uniqueItems":true,"default":[]}}}')},1115:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/schema","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/core":true,"https://json-schema.org/draft/2020-12/vocab/applicator":true,"https://json-schema.org/draft/2020-12/vocab/unevaluated":true,"https://json-schema.org/draft/2020-12/vocab/validation":true,"https://json-schema.org/draft/2020-12/vocab/meta-data":true,"https://json-schema.org/draft/2020-12/vocab/format-annotation":true,"https://json-schema.org/draft/2020-12/vocab/content":true},"$dynamicAnchor":"meta","title":"Core and Validation specifications meta-schema","allOf":[{"$ref":"meta/core"},{"$ref":"meta/applicator"},{"$ref":"meta/unevaluated"},{"$ref":"meta/validation"},{"$ref":"meta/meta-data"},{"$ref":"meta/format-annotation"},{"$ref":"meta/content"}],"type":["object","boolean"],"$comment":"This meta-schema also defines keywords that have appeared in previous drafts in order to prevent incompatible extensions as they remain in common use.","properties":{"definitions":{"$comment":"\\"definitions\\" has been replaced by \\"$defs\\".","type":"object","additionalProperties":{"$dynamicRef":"#meta"},"deprecated":true,"default":{}},"dependencies":{"$comment":"\\"dependencies\\" has been split and replaced by \\"dependentSchemas\\" and \\"dependentRequired\\" in order to serve their differing semantics.","type":"object","additionalProperties":{"anyOf":[{"$dynamicRef":"#meta"},{"$ref":"meta/validation#/$defs/stringArray"}]},"deprecated":true,"default":{}},"$recursiveAnchor":{"$comment":"\\"$recursiveAnchor\\" has been replaced by \\"$dynamicAnchor\\".","$ref":"meta/core#/$defs/anchorString","deprecated":true},"$recursiveRef":{"$comment":"\\"$recursiveRef\\" has been replaced by \\"$dynamicRef\\".","$ref":"meta/core#/$defs/uriReferenceString","deprecated":true}}}')},7578:t=>{"use strict";t.exports=JSON.parse('{"$schema":"http://json-schema.org/draft-07/schema#","$id":"http://json-schema.org/draft-07/schema#","title":"Core schema meta-schema","definitions":{"schemaArray":{"type":"array","minItems":1,"items":{"$ref":"#"}},"nonNegativeInteger":{"type":"integer","minimum":0},"nonNegativeIntegerDefault0":{"allOf":[{"$ref":"#/definitions/nonNegativeInteger"},{"default":0}]},"simpleTypes":{"enum":["array","boolean","integer","null","number","object","string"]},"stringArray":{"type":"array","items":{"type":"string"},"uniqueItems":true,"default":[]}},"type":["object","boolean"],"properties":{"$id":{"type":"string","format":"uri-reference"},"$schema":{"type":"string","format":"uri"},"$ref":{"type":"string","format":"uri-reference"},"$comment":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"default":true,"readOnly":{"type":"boolean","default":false},"examples":{"type":"array","items":true},"multipleOf":{"type":"number","exclusiveMinimum":0},"maximum":{"type":"number"},"exclusiveMaximum":{"type":"number"},"minimum":{"type":"number"},"exclusiveMinimum":{"type":"number"},"maxLength":{"$ref":"#/definitions/nonNegativeInteger"},"minLength":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"pattern":{"type":"string","format":"regex"},"additionalItems":{"$ref":"#"},"items":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/schemaArray"}],"default":true},"maxItems":{"$ref":"#/definitions/nonNegativeInteger"},"minItems":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"uniqueItems":{"type":"boolean","default":false},"contains":{"$ref":"#"},"maxProperties":{"$ref":"#/definitions/nonNegativeInteger"},"minProperties":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"required":{"$ref":"#/definitions/stringArray"},"additionalProperties":{"$ref":"#"},"definitions":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"properties":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"patternProperties":{"type":"object","additionalProperties":{"$ref":"#"},"propertyNames":{"format":"regex"},"default":{}},"dependencies":{"type":"object","additionalProperties":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/stringArray"}]}},"propertyNames":{"$ref":"#"},"const":true,"enum":{"type":"array","items":true,"minItems":1,"uniqueItems":true},"type":{"anyOf":[{"$ref":"#/definitions/simpleTypes"},{"type":"array","items":{"$ref":"#/definitions/simpleTypes"},"minItems":1,"uniqueItems":true}]},"format":{"type":"string"},"contentMediaType":{"type":"string"},"contentEncoding":{"type":"string"},"if":{"$ref":"#"},"then":{"$ref":"#"},"else":{"$ref":"#"},"allOf":{"$ref":"#/definitions/schemaArray"},"anyOf":{"$ref":"#/definitions/schemaArray"},"oneOf":{"$ref":"#/definitions/schemaArray"},"not":{"$ref":"#"}},"default":true}')},7028:t=>{"use strict";t.exports=JSON.parse('[{"name":"Agola CI","constant":"AGOLA","env":"AGOLA_GIT_REF","pr":"AGOLA_PULL_REQUEST_ID"},{"name":"Alpic","constant":"ALPIC","env":"ALPIC_HOST"},{"name":"Appcircle","constant":"APPCIRCLE","env":"AC_APPCIRCLE","pr":{"env":"AC_GIT_PR","ne":"false"}},{"name":"AppVeyor","constant":"APPVEYOR","env":"APPVEYOR","pr":"APPVEYOR_PULL_REQUEST_NUMBER"},{"name":"AWS CodeBuild","constant":"CODEBUILD","env":"CODEBUILD_BUILD_ARN","pr":{"env":"CODEBUILD_WEBHOOK_EVENT","any":["PULL_REQUEST_CREATED","PULL_REQUEST_UPDATED","PULL_REQUEST_REOPENED"]}},{"name":"Azure Pipelines","constant":"AZURE_PIPELINES","env":"TF_BUILD","pr":{"BUILD_REASON":"PullRequest"}},{"name":"Bamboo","constant":"BAMBOO","env":"bamboo_planKey"},{"name":"Bitbucket Pipelines","constant":"BITBUCKET","env":"BITBUCKET_COMMIT","pr":"BITBUCKET_PR_ID"},{"name":"Bitrise","constant":"BITRISE","env":"BITRISE_IO","pr":"BITRISE_PULL_REQUEST"},{"name":"Buddy","constant":"BUDDY","env":"BUDDY_WORKSPACE_ID","pr":"BUDDY_EXECUTION_PULL_REQUEST_ID"},{"name":"Buildkite","constant":"BUILDKITE","env":"BUILDKITE","pr":{"env":"BUILDKITE_PULL_REQUEST","ne":"false"}},{"name":"CircleCI","constant":"CIRCLE","env":"CIRCLECI","pr":"CIRCLE_PULL_REQUEST"},{"name":"Cirrus CI","constant":"CIRRUS","env":"CIRRUS_CI","pr":"CIRRUS_PR"},{"name":"Cloudflare Pages","constant":"CLOUDFLARE_PAGES","env":"CF_PAGES"},{"name":"Cloudflare Workers","constant":"CLOUDFLARE_WORKERS","env":"WORKERS_CI"},{"name":"Codefresh","constant":"CODEFRESH","env":"CF_BUILD_ID","pr":{"any":["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{"name":"Codemagic","constant":"CODEMAGIC","env":"CM_BUILD_ID","pr":"CM_PULL_REQUEST"},{"name":"Codeship","constant":"CODESHIP","env":{"CI_NAME":"codeship"}},{"name":"Drone","constant":"DRONE","env":"DRONE","pr":{"DRONE_BUILD_EVENT":"pull_request"}},{"name":"dsari","constant":"DSARI","env":"DSARI"},{"name":"Earthly","constant":"EARTHLY","env":"EARTHLY_CI"},{"name":"Expo Application Services","constant":"EAS","env":"EAS_BUILD"},{"name":"Gerrit","constant":"GERRIT","env":"GERRIT_PROJECT"},{"name":"Gitea Actions","constant":"GITEA_ACTIONS","env":"GITEA_ACTIONS"},{"name":"GitHub Actions","constant":"GITHUB_ACTIONS","env":"GITHUB_ACTIONS","pr":{"GITHUB_EVENT_NAME":"pull_request"}},{"name":"GitLab CI","constant":"GITLAB","env":"GITLAB_CI","pr":"CI_MERGE_REQUEST_ID"},{"name":"GoCD","constant":"GOCD","env":"GO_PIPELINE_LABEL"},{"name":"Google Cloud Build","constant":"GOOGLE_CLOUD_BUILD","env":"BUILDER_OUTPUT"},{"name":"Harness CI","constant":"HARNESS","env":"HARNESS_BUILD_ID"},{"name":"Heroku","constant":"HEROKU","env":{"env":"NODE","includes":"/app/.heroku/node/bin/node"}},{"name":"Hudson","constant":"HUDSON","env":"HUDSON_URL"},{"name":"Jenkins","constant":"JENKINS","env":["JENKINS_URL","BUILD_ID"],"pr":{"any":["ghprbPullId","CHANGE_ID"]}},{"name":"LayerCI","constant":"LAYERCI","env":"LAYERCI","pr":"LAYERCI_PULL_REQUEST"},{"name":"Magnum CI","constant":"MAGNUM","env":"MAGNUM"},{"name":"Netlify CI","constant":"NETLIFY","env":"NETLIFY","pr":{"env":"PULL_REQUEST","ne":"false"}},{"name":"Nevercode","constant":"NEVERCODE","env":"NEVERCODE","pr":{"env":"NEVERCODE_PULL_REQUEST","ne":"false"}},{"name":"Prow","constant":"PROW","env":"PROW_JOB_ID"},{"name":"ReleaseHub","constant":"RELEASEHUB","env":"RELEASE_BUILD_ID"},{"name":"Render","constant":"RENDER","env":"RENDER","pr":{"IS_PULL_REQUEST":"true"}},{"name":"Sail CI","constant":"SAIL","env":"SAILCI","pr":"SAIL_PULL_REQUEST_NUMBER"},{"name":"Screwdriver","constant":"SCREWDRIVER","env":"SCREWDRIVER","pr":{"env":"SD_PULL_REQUEST","ne":"false"}},{"name":"Semaphore","constant":"SEMAPHORE","env":"SEMAPHORE","pr":"PULL_REQUEST_NUMBER"},{"name":"Sourcehut","constant":"SOURCEHUT","env":{"CI_NAME":"sourcehut"}},{"name":"Strider CD","constant":"STRIDER","env":"STRIDER"},{"name":"TaskCluster","constant":"TASKCLUSTER","env":["TASK_ID","RUN_ID"]},{"name":"TeamCity","constant":"TEAMCITY","env":"TEAMCITY_VERSION"},{"name":"Travis CI","constant":"TRAVIS","env":"TRAVIS","pr":{"env":"TRAVIS_PULL_REQUEST","ne":"false"}},{"name":"Vela","constant":"VELA","env":"VELA","pr":{"VELA_PULL_REQUEST":"1"}},{"name":"Vercel","constant":"VERCEL","env":{"any":["NOW_BUILDER","VERCEL"]},"pr":"VERCEL_GIT_PULL_REQUEST_ID"},{"name":"Visual Studio App Center","constant":"APPCENTER","env":"APPCENTER_BUILD_ID"},{"name":"Woodpecker","constant":"WOODPECKER","env":{"CI":"woodpecker"},"pr":{"CI_BUILD_EVENT":"pull_request"}},{"name":"Xcode Cloud","constant":"XCODE_CLOUD","env":"CI_XCODE_PROJECT","pr":"CI_PULL_REQUEST_NUMBER"},{"name":"Xcode Server","constant":"XCODE_SERVER","env":"XCS"}]')},6737:t=>{"use strict";t.exports=JSON.parse('["_http_agent","_http_client","_http_common","_http_incoming","_http_outgoing","_http_server","_stream_duplex","_stream_passthrough","_stream_readable","_stream_transform","_stream_wrap","_stream_writable","_tls_common","_tls_wrap","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","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib","node:sea","node:sqlite","node:test","node:test/reporters"]')}};var u={};function __nccwpck_require__(p){var m=u[p];if(m!==undefined){return m.exports}var g=u[p]={exports:{}};var y=true;try{t[p](g,g.exports,__nccwpck_require__);y=false}finally{if(y)delete u[p]}return g.exports}(()=>{__nccwpck_require__.n=t=>{var u=t&&t.__esModule?()=>t["default"]:()=>t;__nccwpck_require__.d(u,{a:u});return u}})();(()=>{var t=Object.getPrototypeOf?t=>Object.getPrototypeOf(t):t=>t.__proto__;var u;__nccwpck_require__.t=function(p,m){if(m&1)p=this(p);if(m&8)return p;if(typeof p==="object"&&p){if(m&4&&p.__esModule)return p;if(m&16&&typeof p.then==="function")return p}var g=Object.create(null);__nccwpck_require__.r(g);var y={};u=u||[null,t({}),t([]),t(t)];for(var v=m&2&&p;typeof v=="object"&&!~u.indexOf(v);v=t(v)){Object.getOwnPropertyNames(v).forEach((t=>y[t]=()=>p[t]))}y["default"]=()=>p;__nccwpck_require__.d(g,y);return g}})();(()=>{__nccwpck_require__.d=(t,u)=>{for(var p in u){if(__nccwpck_require__.o(u,p)&&!__nccwpck_require__.o(t,p)){Object.defineProperty(t,p,{enumerable:true,get:u[p]})}}}})();(()=>{__nccwpck_require__.o=(t,u)=>Object.prototype.hasOwnProperty.call(t,u)})();(()=>{__nccwpck_require__.r=t=>{if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(t,"__esModule",{value:true})}})();if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";var p={};(()=>{"use strict";var t=__nccwpck_require__(3024);var u=__nccwpck_require__(6760);var p=__nccwpck_require__.n(u);var m=__nccwpck_require__(4732);var g=__nccwpck_require__.n(m);var y=__nccwpck_require__(206);const{DM:v,gu:b,er:w,Ww:E,b7:$,Di:O,a2:R,uB:P,ef:A,c$:x,_V:T}=y;const k=require("node:util");var C=__nccwpck_require__(1708);const I=require("node:crypto");const N=require("node:assert");const isObject=t=>{const u=typeof t;return t!==null&&(u==="object"||u==="function")};const isEmptyObject=t=>{if(!isObject(t)){return false}for(const u in t){if(Object.hasOwn(t,u)){return false}}return true};const D=new Set(["__proto__","prototype","constructor"]);const L=1e6;const isDigit=t=>t>="0"&&t<="9";function shouldCoerceToNumber(t){if(t==="0"){return true}if(/^[1-9]\d*$/.test(t)){const u=Number.parseInt(t,10);return u<=Number.MAX_SAFE_INTEGER&&u<=L}return false}function processSegment(t,u){if(D.has(t)){return false}if(t&&shouldCoerceToNumber(t)){u.push(Number.parseInt(t,10))}else{u.push(t)}return true}function parsePath(t){if(typeof t!=="string"){throw new TypeError(`Expected a string, got ${typeof t}`)}const u=[];let p="";let m="start";let g=false;let y=0;for(const v of t){y++;if(g){p+=v;g=false;continue}if(v==="\\"){if(m==="index"){throw new Error(`Invalid character '${v}' in an index at position ${y}`)}if(m==="indexEnd"){throw new Error(`Invalid character '${v}' after an index at position ${y}`)}g=true;m=m==="start"?"property":m;continue}switch(v){case".":{if(m==="index"){throw new Error(`Invalid character '${v}' in an index at position ${y}`)}if(m==="indexEnd"){m="property";break}if(!processSegment(p,u)){return[]}p="";m="property";break}case"[":{if(m==="index"){throw new Error(`Invalid character '${v}' in an index at position ${y}`)}if(m==="indexEnd"){m="index";break}if(m==="property"||m==="start"){if((p||m==="property")&&!processSegment(p,u)){return[]}p=""}m="index";break}case"]":{if(m==="index"){if(p===""){const t=u.pop()||"";p=t+"[]";m="property"}else{const t=Number.parseInt(p,10);const g=!Number.isNaN(t)&&Number.isFinite(t)&&t>=0&&t<=Number.MAX_SAFE_INTEGER&&t<=L&&p===String(t);if(g){u.push(t)}else{u.push(p)}p="";m="indexEnd"}break}if(m==="indexEnd"){throw new Error(`Invalid character '${v}' after an index at position ${y}`)}p+=v;break}default:{if(m==="index"&&!isDigit(v)){throw new Error(`Invalid character '${v}' in an index at position ${y}`)}if(m==="indexEnd"){throw new Error(`Invalid character '${v}' after an index at position ${y}`)}if(m==="start"){m="property"}p+=v}}}if(g){p+="\\"}switch(m){case"property":{if(!processSegment(p,u)){return[]}break}case"index":{throw new Error("Index was not closed")}case"start":{u.push("");break}}return u}function normalizePath(t){if(typeof t==="string"){return parsePath(t)}if(Array.isArray(t)){const u=[];for(const[p,m]of t.entries()){if(typeof m!=="string"&&typeof m!=="number"){throw new TypeError(`Expected a string or number for path segment at index ${p}, got ${typeof m}`)}if(typeof m==="number"&&!Number.isFinite(m)){throw new TypeError(`Path segment at index ${p} must be a finite number, got ${m}`)}if(D.has(m)){return[]}if(typeof m==="string"&&shouldCoerceToNumber(m)){u.push(Number.parseInt(m,10))}else{u.push(m)}}return u}return[]}function getProperty(t,u,p){if(!isObject(t)||typeof u!=="string"&&!Array.isArray(u)){return p===undefined?t:p}const m=normalizePath(u);if(m.length===0){return p}for(let u=0;u<m.length;u++){const g=m[u];t=t[g];if(t===undefined||t===null){if(u!==m.length-1){return p}break}}return t===undefined?p:t}function setProperty(t,u,p){if(!isObject(t)||typeof u!=="string"&&!Array.isArray(u)){return t}const m=t;const g=normalizePath(u);if(g.length===0){return t}for(let u=0;u<g.length;u++){const m=g[u];if(u===g.length-1){t[m]=p}else if(!isObject(t[m])){const p=g[u+1];const y=typeof p==="number";t[m]=y?[]:{}}t=t[m]}return m}function deleteProperty(t,u){if(!isObject(t)||typeof u!=="string"&&!Array.isArray(u)){return false}const p=normalizePath(u);if(p.length===0){return false}for(let u=0;u<p.length;u++){const m=p[u];if(u===p.length-1){const u=Object.hasOwn(t,m);if(!u){return false}delete t[m];return true}t=t[m];if(!isObject(t)){return false}}}function hasProperty(t,u){if(!isObject(t)||typeof u!=="string"&&!Array.isArray(u)){return false}const p=normalizePath(u);if(p.length===0){return false}for(const u of p){if(!isObject(t)||!(u in t)){return false}t=t[u]}return true}function escapePath(t){if(typeof t!=="string"){throw new TypeError(`Expected a string, got ${typeof t}`)}return t.replaceAll(/[\\.[]/g,String.raw`\$&`)}function normalizeEntries(t){const u=Object.entries(t);if(Array.isArray(t)){return u.map((([t,u])=>{const p=shouldCoerceToNumber(t)?Number.parseInt(t,10):t;return[p,u]}))}return u}function stringifyPath(t,u={}){if(!Array.isArray(t)){throw new TypeError(`Expected an array, got ${typeof t}`)}const{preferDotForIndices:p=false}=u;const m=[];for(const[u,g]of t.entries()){if(typeof g!=="string"&&typeof g!=="number"){throw new TypeError(`Expected a string or number for path segment at index ${u}, got ${typeof g}`)}if(typeof g==="number"){if(!Number.isInteger(g)||g<0){const t=escapePath(String(g));m.push(u===0?t:`.${t}`)}else if(p&&u>0){m.push(`.${g}`)}else{m.push(`[${g}]`)}}else if(typeof g==="string"){if(g===""){if(u===0){}else{m.push(".")}}else if(shouldCoerceToNumber(g)){const t=Number.parseInt(g,10);if(p&&u>0){m.push(`.${t}`)}else{m.push(`[${t}]`)}}else{const t=escapePath(g);m.push(u===0?t:`.${t}`)}}}return m.join("")}function*deepKeysIterator(t,u=[],p=new Set){if(!isObject(t)||isEmptyObject(t)){if(u.length>0){yield stringifyPath(u)}return}if(p.has(t)){return}p.add(t);for(const[m,g]of normalizeEntries(t)){u.push(m);yield*deepKeysIterator(g,u,p);u.pop()}p.delete(t)}function deepKeys(t){return[...deepKeysIterator(t)]}function unflatten(t){const u={};if(!isObject(t)){return u}for(const[p,m]of Object.entries(t)){setProperty(u,p,m)}return u}const j=require("node:os");var M=__nccwpck_require__.n(j);const U=j.homedir();const B=j.tmpdir();const{env:H}=C;const macos=t=>{const p=u.join(U,"Library");return{data:u.join(p,"Application Support",t),config:u.join(p,"Preferences",t),cache:u.join(p,"Caches",t),log:u.join(p,"Logs",t),temp:u.join(B,t)}};const windows=t=>{const p=H.APPDATA||u.join(U,"AppData","Roaming");const m=H.LOCALAPPDATA||u.join(U,"AppData","Local");return{data:u.join(m,t,"Data"),config:u.join(p,t,"Config"),cache:u.join(m,t,"Cache"),log:u.join(m,t,"Log"),temp:u.join(B,t)}};const linux=t=>{const p=u.basename(U);return{data:u.join(H.XDG_DATA_HOME||u.join(U,".local","share"),t),config:u.join(H.XDG_CONFIG_HOME||u.join(U,".config"),t),cache:u.join(H.XDG_CACHE_HOME||u.join(U,".cache"),t),log:u.join(H.XDG_STATE_HOME||u.join(U,".local","state"),t),temp:u.join(B,p,t)}};function envPaths(t,{suffix:u="nodejs"}={}){if(typeof t!=="string"){throw new TypeError(`Expected a string, got ${typeof t}`)}if(u){t+=`-${u}`}if(C.platform==="darwin"){return macos(t)}if(C.platform==="win32"){return windows(t)}return linux(t)}var V=__nccwpck_require__(8474);const z=require("node:stream");const attemptifyAsync=(t,u)=>{const{onError:p}=u;return function attemptified(...u){return t.apply(undefined,u).catch(p)}};const G=attemptifyAsync;const attemptifySync=(t,u)=>{const{onError:p}=u;return function attemptified(...u){try{return t.apply(undefined,u)}catch(t){return p(t)}}};const W=attemptifySync;const q=250;const retryifyAsync=(t,u)=>{const{isRetriable:p}=u;return function retryified(u){const{timeout:m}=u;const g=u.interval??q;const y=Date.now()+m;return function attempt(...u){return t.apply(undefined,u).catch((t=>{if(!p(t))throw t;if(Date.now()>=y)throw t;const m=Math.round(g*Math.random());if(m>0){const t=new Promise((t=>setTimeout(t,m)));return t.then((()=>attempt.apply(undefined,u)))}else{return attempt.apply(undefined,u)}}))}}};const Y=retryifyAsync;const retryifySync=(t,u)=>{const{isRetriable:p}=u;return function retryified(u){const{timeout:m}=u;const g=Date.now()+m;return function attempt(...u){while(true){try{return t.apply(undefined,u)}catch(t){if(!p(t))throw t;if(Date.now()>=g)throw t;continue}}}}};const J=retryifySync;const Z={isChangeErrorOk:t=>{if(!Z.isNodeError(t))return false;const{code:u}=t;if(u==="ENOSYS")return true;if(!se&&(u==="EINVAL"||u==="EPERM"))return true;return false},isNodeError:t=>t instanceof Error,isRetriableError:t=>{if(!Z.isNodeError(t))return false;const{code:u}=t;if(u==="EMFILE"||u==="ENFILE"||u==="EAGAIN"||u==="EBUSY"||u==="EACCESS"||u==="EACCES"||u==="EACCS"||u==="EPERM")return true;return false},onChangeError:t=>{if(!Z.isNodeError(t))throw t;if(Z.isChangeErrorOk(t))return;throw t}};const X=Z;const Q={onError:X.onChangeError};const ee={onError:()=>undefined};const se=C.getuid?!C.getuid():false;const ie={isRetriable:X.isRetriableError};const ne={attempt:{chmod:G((0,k.promisify)(t.chmod),Q),chown:G((0,k.promisify)(t.chown),Q),close:G((0,k.promisify)(t.close),ee),fsync:G((0,k.promisify)(t.fsync),ee),mkdir:G((0,k.promisify)(t.mkdir),ee),realpath:G((0,k.promisify)(t.realpath),ee),stat:G((0,k.promisify)(t.stat),ee),unlink:G((0,k.promisify)(t.unlink),ee),chmodSync:W(t.chmodSync,Q),chownSync:W(t.chownSync,Q),closeSync:W(t.closeSync,ee),existsSync:W(t.existsSync,ee),fsyncSync:W(t.fsync,ee),mkdirSync:W(t.mkdirSync,ee),realpathSync:W(t.realpathSync,ee),statSync:W(t.statSync,ee),unlinkSync:W(t.unlinkSync,ee)},retry:{close:Y((0,k.promisify)(t.close),ie),fsync:Y((0,k.promisify)(t.fsync),ie),open:Y((0,k.promisify)(t.open),ie),readFile:Y((0,k.promisify)(t.readFile),ie),rename:Y((0,k.promisify)(t.rename),ie),stat:Y((0,k.promisify)(t.stat),ie),write:Y((0,k.promisify)(t.write),ie),writeFile:Y((0,k.promisify)(t.writeFile),ie),closeSync:J(t.closeSync,ie),fsyncSync:J(t.fsyncSync,ie),openSync:J(t.openSync,ie),readFileSync:J(t.readFileSync,ie),renameSync:J(t.renameSync,ie),statSync:J(t.statSync,ie),writeSync:J(t.writeSync,ie),writeFileSync:J(t.writeFileSync,ie)}};const ae=ne;const le="utf8";const ue=438;const he=511;const de={};const fe={};const pe=C.geteuid?C.geteuid():-1;const me=C.getegid?C.getegid():-1;const ge=200;const ye=7500;const ve=1e3;const _e=!!C.getuid;const be=C.getuid?!C.getuid():false;const we=128;const NOOP=()=>{};const lang_isException=t=>t instanceof Error&&"code"in t;const lang_isFunction=t=>typeof t==="function";const lang_isString=t=>typeof t==="string";const lang_isUndefined=t=>t===undefined;const Ee={};const $e={next:t=>{const u=Ee[t];if(!u)return;u.shift();const p=u[0];if(p){p((()=>$e.next(t)))}else{delete Ee[t]}},schedule:t=>new Promise((u=>{let p=Ee[t];if(!p)p=Ee[t]=[];p.push(u);if(p.length>1)return;u((()=>$e.next(t)))}))};const Oe=null&&$e;const Re=C.platform==="linux";const Pe=C.platform==="win32";const Ae=["SIGHUP","SIGINT","SIGTERM"];if(!Pe){Ae.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT")}if(Re){Ae.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT")}const xe=Ae;class Interceptor{constructor(){this.callbacks=new Set;this.exited=false;this.exit=t=>{if(this.exited)return;this.exited=true;for(const t of this.callbacks){t()}if(t){if(Pe&&(t!=="SIGINT"&&t!=="SIGTERM"&&t!=="SIGKILL")){C.kill(C.pid,"SIGTERM")}else{C.kill(C.pid,t)}}};this.hook=()=>{C.once("exit",(()=>this.exit()));for(const t of xe){try{C.once(t,(()=>this.exit(t)))}catch{}}};this.register=t=>{this.callbacks.add(t);return()=>{this.callbacks.delete(t)}};this.hook()}}const Te=new Interceptor;const ke=Te.register;const Ce=ke;const Ie={store:{},create:t=>{const u=`000000${Math.floor(Math.random()*16777215).toString(16)}`.slice(-6);const p=Date.now().toString().slice(-10);const m="tmp-";const g=`.${m}${p}${u}`;const y=`${t}${g}`;return y},get:(t,u,p=true)=>{const m=Ie.truncate(u(t));if(m in Ie.store)return Ie.get(t,u,p);Ie.store[m]=p;const disposer=()=>delete Ie.store[m];return[m,disposer]},purge:t=>{if(!Ie.store[t])return;delete Ie.store[t];ae.attempt.unlink(t)},purgeSync:t=>{if(!Ie.store[t])return;delete Ie.store[t];ae.attempt.unlinkSync(t)},purgeSyncAll:()=>{for(const t in Ie.store){Ie.purgeSync(t)}},truncate:t=>{const p=u.basename(t);if(p.length<=we)return t;const m=/^(\.?)(.*?)((?:\.[^.]+)?(?:\.tmp-\d{10}[a-f0-9]{6})?)$/.exec(p);if(!m)return t;const g=p.length-we;return`${t.slice(0,-p.length)}${m[1]}${m[2].slice(0,-g)}${m[3]}`}};Ce(Ie.purgeSyncAll);const Ne=Ie;function readFile(t,u=DEFAULT_READ_OPTIONS){if(isString(u))return readFile(t,{encoding:u});const p=u.timeout??DEFAULT_TIMEOUT_ASYNC;const m={timeout:p,interval:DEFAULT_INTERVAL_ASYNC};return fs.retry.readFile(m)(t,u)}function readFileSync(t,u=DEFAULT_READ_OPTIONS){if(isString(u))return readFileSync(t,{encoding:u});const p=u.timeout??DEFAULT_TIMEOUT_SYNC;const m={timeout:p};return fs.retry.readFileSync(m)(t,u)}function writeFile(t,u,p,m){if(isFunction(p))return writeFile(t,u,DEFAULT_WRITE_OPTIONS,p);const g=writeFileAsync(t,u,p);if(m)g.then(m,m);return g}async function writeFileAsync(t,u,p=DEFAULT_WRITE_OPTIONS){if(isString(p))return writeFileAsync(t,u,{encoding:p});const m=p.timeout??DEFAULT_TIMEOUT_ASYNC;const g={timeout:m,interval:DEFAULT_INTERVAL_ASYNC};let y=null;let v=null;let b=null;let w=null;let E=null;try{if(p.schedule)y=await p.schedule(t);v=await Scheduler.schedule(t);const m=await fs.attempt.realpath(t);const $=!!m;t=m||t;[w,b]=Temp.get(t,p.tmpCreate||Temp.create,!(p.tmpPurge===false));const O=IS_POSIX&&isUndefined(p.chown);const R=isUndefined(p.mode);if($&&(O||R)){const u=await fs.attempt.stat(t);if(u){p={...p};if(O){p.chown={uid:u.uid,gid:u.gid}}if(R){p.mode=u.mode}}}if(!$){const u=path.dirname(t);await fs.attempt.mkdir(u,{mode:DEFAULT_FOLDER_MODE,recursive:true})}E=await fs.retry.open(g)(w,"w",p.mode||DEFAULT_FILE_MODE);if(p.tmpCreated){p.tmpCreated(w)}if(isString(u)){await fs.retry.write(g)(E,u,0,p.encoding||DEFAULT_ENCODING)}else if(u instanceof Readable){const t=createWriteStream(w,{fd:E,autoClose:false});const p=once(t,"finish");u.pipe(t);await p}else if(!isUndefined(u)){await fs.retry.write(g)(E,u,0,u.length,0)}if(p.fsync!==false){if(p.fsyncWait!==false){await fs.retry.fsync(g)(E)}else{fs.attempt.fsync(E)}}await fs.retry.close(g)(E);E=null;if(p.chown&&(p.chown.uid!==DEFAULT_USER_UID||p.chown.gid!==DEFAULT_USER_GID)){await fs.attempt.chown(w,p.chown.uid,p.chown.gid)}if(p.mode&&p.mode!==DEFAULT_FILE_MODE){await fs.attempt.chmod(w,p.mode)}try{await fs.retry.rename(g)(w,t)}catch(u){if(!isException(u))throw u;if(u.code!=="ENAMETOOLONG")throw u;await fs.retry.rename(g)(w,Temp.truncate(t))}b();w=null}finally{if(E)await fs.attempt.close(E);if(w)Temp.purge(w);if(y)y();if(v)v()}}function writeFileSync(t,p,m=fe){if(lang_isString(m))return writeFileSync(t,p,{encoding:m});const g=m.timeout??ve;const y={timeout:g};let v=null;let b=null;let w=null;try{const g=ae.attempt.realpathSync(t);const E=!!g;t=g||t;[b,v]=Ne.get(t,m.tmpCreate||Ne.create,!(m.tmpPurge===false));const $=_e&&lang_isUndefined(m.chown);const O=lang_isUndefined(m.mode);if(E&&($||O)){const u=ae.attempt.statSync(t);if(u){m={...m};if($){m.chown={uid:u.uid,gid:u.gid}}if(O){m.mode=u.mode}}}if(!E){const p=u.dirname(t);ae.attempt.mkdirSync(p,{mode:he,recursive:true})}w=ae.retry.openSync(y)(b,"w",m.mode||ue);if(m.tmpCreated){m.tmpCreated(b)}if(lang_isString(p)){ae.retry.writeSync(y)(w,p,0,m.encoding||le)}else if(!lang_isUndefined(p)){ae.retry.writeSync(y)(w,p,0,p.length,0)}if(m.fsync!==false){if(m.fsyncWait!==false){ae.retry.fsyncSync(y)(w)}else{ae.attempt.fsync(w)}}ae.retry.closeSync(y)(w);w=null;if(m.chown&&(m.chown.uid!==pe||m.chown.gid!==me)){ae.attempt.chownSync(b,m.chown.uid,m.chown.gid)}if(m.mode&&m.mode!==ue){ae.attempt.chmodSync(b,m.mode)}try{ae.retry.renameSync(y)(b,t)}catch(u){if(!lang_isException(u))throw u;if(u.code!=="ENAMETOOLONG")throw u;ae.retry.renameSync(y)(b,Ne.truncate(t))}v();b=null}finally{if(w)ae.attempt.closeSync(w);if(b)Ne.purge(b)}}var De=__nccwpck_require__(8861);var Le=__nccwpck_require__(8631);const copyProperty=(t,u,p,m)=>{if(p==="length"||p==="prototype"){return}if(p==="arguments"||p==="caller"){return}const g=Object.getOwnPropertyDescriptor(t,p);const y=Object.getOwnPropertyDescriptor(u,p);if(!canCopyProperty(g,y)&&m){return}Object.defineProperty(t,p,y)};const canCopyProperty=function(t,u){return t===undefined||t.configurable||t.writable===u.writable&&t.enumerable===u.enumerable&&t.configurable===u.configurable&&(t.writable||t.value===u.value)};const changePrototype=(t,u)=>{const p=Object.getPrototypeOf(u);if(p===Object.getPrototypeOf(t)){return}Object.setPrototypeOf(t,p)};const wrappedToString=(t,u)=>`/* Wrapped ${t}*/\n${u}`;const je=Object.getOwnPropertyDescriptor(Function.prototype,"toString");const Me=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name");const changeToString=(t,u,p)=>{const m=p===""?"":`with ${p.trim()}() `;const g=wrappedToString.bind(null,m,u.toString());Object.defineProperty(g,"name",Me);const{writable:y,enumerable:v,configurable:b}=je;Object.defineProperty(t,"toString",{value:g,writable:y,enumerable:v,configurable:b})};function mimicFunction(t,u,{ignoreNonConfigurable:p=false}={}){const{name:m}=t;for(const m of Reflect.ownKeys(u)){copyProperty(t,u,m,p)}changePrototype(t,u);changeToString(t,u,m);return t}const debounceFunction=(t,u={})=>{if(typeof t!=="function"){throw new TypeError(`Expected the first argument to be a function, got \`${typeof t}\``)}const{wait:p=0,maxWait:m=Number.POSITIVE_INFINITY,before:g=false,after:y=true}=u;if(p<0||m<0){throw new RangeError("`wait` and `maxWait` must not be negative.")}if(!g&&!y){throw new Error("Both `before` and `after` are false, function wouldn't be called.")}let v;let b;let w;const debouncedFunction=function(...u){const E=this;const later=()=>{v=undefined;if(b){clearTimeout(b);b=undefined}if(y){w=t.apply(E,u)}};const maxLater=()=>{b=undefined;if(v){clearTimeout(v);v=undefined}if(y){w=t.apply(E,u)}};const $=g&&!v;clearTimeout(v);v=setTimeout(later,p);if(m>0&&m!==Number.POSITIVE_INFINITY&&!b){b=setTimeout(maxLater,m)}if($){w=t.apply(E,u)}return w};mimicFunction(debouncedFunction,t);debouncedFunction.cancel=()=>{if(v){clearTimeout(v);v=undefined}if(b){clearTimeout(b);b=undefined}};return debouncedFunction};const Fe=debounceFunction;var Ue=__nccwpck_require__(4423);const Be=Object.prototype.toString;const He="[object Uint8Array]";const Ve="[object ArrayBuffer]";function isType(t,u,p){if(!t){return false}if(t.constructor===u){return true}return Be.call(t)===p}function isUint8Array(t){return isType(t,Uint8Array,He)}function isArrayBuffer(t){return isType(t,ArrayBuffer,Ve)}function isUint8ArrayOrArrayBuffer(t){return isUint8Array(t)||isArrayBuffer(t)}function assertUint8Array(t){if(!isUint8Array(t)){throw new TypeError(`Expected \`Uint8Array\`, got \`${typeof t}\``)}}function assertUint8ArrayOrArrayBuffer(t){if(!isUint8ArrayOrArrayBuffer(t)){throw new TypeError(`Expected \`Uint8Array\` or \`ArrayBuffer\`, got \`${typeof t}\``)}}function toUint8Array(t){if(t instanceof ArrayBuffer){return new Uint8Array(t)}if(ArrayBuffer.isView(t)){return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}throw new TypeError(`Unsupported value, got \`${typeof t}\`.`)}function concatUint8Arrays(t,u){if(t.length===0){return new Uint8Array(0)}u??=t.reduce(((t,u)=>t+u.length),0);const p=new Uint8Array(u);let m=0;for(const u of t){assertUint8Array(u);p.set(u,m);m+=u.length}return p}function areUint8ArraysEqual(t,u){assertUint8Array(t);assertUint8Array(u);if(t===u){return true}if(t.length!==u.length){return false}for(let p=0;p<t.length;p++){if(t[p]!==u[p]){return false}}return true}function compareUint8Arrays(t,u){assertUint8Array(t);assertUint8Array(u);const p=Math.min(t.length,u.length);for(let m=0;m<p;m++){const p=t[m]-u[m];if(p!==0){return Math.sign(p)}}return Math.sign(t.length-u.length)}const ze={utf8:new globalThis.TextDecoder("utf8")};function uint8ArrayToString(t,u="utf8"){assertUint8ArrayOrArrayBuffer(t);ze[u]??=new globalThis.TextDecoder(u);return ze[u].decode(t)}function assertString(t){if(typeof t!=="string"){throw new TypeError(`Expected \`string\`, got \`${typeof t}\``)}}const Ge=new globalThis.TextEncoder;function stringToUint8Array(t){assertString(t);return Ge.encode(t)}function base64ToBase64Url(t){return t.replaceAll("+","-").replaceAll("/","_").replace(/=+$/,"")}function base64UrlToBase64(t){const u=t.replaceAll("-","+").replaceAll("_","/");const p=(4-u.length%4)%4;return u+"=".repeat(p)}const We=65535;function uint8ArrayToBase64(t,{urlSafe:u=false}={}){assertUint8Array(t);let p="";for(let u=0;u<t.length;u+=We){const m=t.subarray(u,u+We);p+=globalThis.btoa(String.fromCodePoint.apply(undefined,m))}return u?base64ToBase64Url(p):p}function base64ToUint8Array(t){assertString(t);return Uint8Array.from(globalThis.atob(base64UrlToBase64(t)),(t=>t.codePointAt(0)))}function stringToBase64(t,{urlSafe:u=false}={}){assertString(t);return uint8ArrayToBase64(stringToUint8Array(t),{urlSafe:u})}function base64ToString(t){assertString(t);return uint8ArrayToString(base64ToUint8Array(t))}const qe=Array.from({length:256},((t,u)=>u.toString(16).padStart(2,"0")));function uint8ArrayToHex(t){assertUint8Array(t);let u="";for(let p=0;p<t.length;p++){u+=qe[t[p]]}return u}const Ke={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,b:11,c:12,d:13,e:14,f:15,A:10,B:11,C:12,D:13,E:14,F:15};function hexToUint8Array(t){assertString(t);if(t.length%2!==0){throw new Error("Invalid Hex string length.")}const u=t.length/2;const p=new Uint8Array(u);for(let m=0;m<u;m++){const u=Ke[t[m*2]];const g=Ke[t[m*2+1]];if(u===undefined||g===undefined){throw new Error(`Invalid Hex character encountered at position ${m*2}`)}p[m]=u<<4|g}return p}function getUintBE(t){const{byteLength:u}=t;if(u===6){return t.getUint16(0)*2**32+t.getUint32(2)}if(u===5){return t.getUint8(0)*2**32+t.getUint32(1)}if(u===4){return t.getUint32(0)}if(u===3){return t.getUint8(0)*2**16+t.getUint16(1)}if(u===2){return t.getUint16(0)}if(u===1){return t.getUint8(0)}}function indexOf(t,u){const p=t.length;const m=u.length;if(m===0){return-1}if(m>p){return-1}const g=p-m;for(let p=0;p<=g;p++){let g=true;for(let y=0;y<m;y++){if(t[p+y]!==u[y]){g=false;break}}if(g){return p}}return-1}function includes(t,u){return indexOf(t,u)!==-1}const Ye="aes-256-cbc";const Je=new Set(["aes-256-cbc","aes-256-gcm","aes-256-ctr"]);const isSupportedEncryptionAlgorithm=t=>typeof t==="string"&&Je.has(t);const createPlainObject=()=>Object.create(null);const isExist=t=>t!==undefined;const checkValueType=(t,u)=>{const p=new Set(["undefined","symbol","function"]);const m=typeof u;if(p.has(m)){throw new TypeError(`Setting a value of type \`${m}\` for key \`${t}\` is not allowed as it's not supported by JSON`)}};const Ze="__internal__";const Xe=`${Ze}.migrations.version`;class Conf{path;events;#e;#t;#r;#s;#i={};#n=false;#o;#a;#c;constructor(t={}){const u=this.#l(t);this.#s=u;this.#u(u);this.#h(u);this.#d(u);this.events=new EventTarget;this.#t=u.encryptionKey;this.#r=u.encryptionAlgorithm??Ye;this.path=this.#f(u);this.#p(u);if(u.watch){this._watch()}}get(t,u){if(this.#s.accessPropertiesByDotNotation){return this._get(t,u)}const{store:p}=this;return t in p?p[t]:u}set(t,u){if(typeof t!=="string"&&typeof t!=="object"){throw new TypeError(`Expected \`key\` to be of type \`string\` or \`object\`, got ${typeof t}`)}if(typeof t!=="object"&&u===undefined){throw new TypeError("Use `delete()` to clear values")}if(this._containsReservedKey(t)){throw new TypeError(`Please don't use the ${Ze} key, as it's used to manage this module internal operations.`)}const{store:p}=this;const set=(t,u)=>{checkValueType(t,u);if(this.#s.accessPropertiesByDotNotation){setProperty(p,t,u)}else{if(t==="__proto__"||t==="constructor"||t==="prototype"){return}p[t]=u}};if(typeof t==="object"){const u=t;for(const[t,p]of Object.entries(u)){set(t,p)}}else{set(t,u)}this.store=p}has(t){if(this.#s.accessPropertiesByDotNotation){return hasProperty(this.store,t)}return t in this.store}appendToArray(t,u){checkValueType(t,u);const p=this.#s.accessPropertiesByDotNotation?this._get(t,[]):t in this.store?this.store[t]:[];if(!Array.isArray(p)){throw new TypeError(`The key \`${t}\` is already set to a non-array value`)}this.set(t,[...p,u])}reset(...t){for(const u of t){if(isExist(this.#i[u])){this.set(u,this.#i[u])}}}delete(t){const{store:u}=this;if(this.#s.accessPropertiesByDotNotation){deleteProperty(u,t)}else{delete u[t]}this.store=u}clear(){const t=createPlainObject();for(const u of Object.keys(this.#i)){if(isExist(this.#i[u])){checkValueType(u,this.#i[u]);if(this.#s.accessPropertiesByDotNotation){setProperty(t,u,this.#i[u])}else{t[u]=this.#i[u]}}}this.store=t}onDidChange(t,u){if(typeof t!=="string"){throw new TypeError(`Expected \`key\` to be of type \`string\`, got ${typeof t}`)}if(typeof u!=="function"){throw new TypeError(`Expected \`callback\` to be of type \`function\`, got ${typeof u}`)}return this._handleValueChange((()=>this.get(t)),u)}onDidAnyChange(t){if(typeof t!=="function"){throw new TypeError(`Expected \`callback\` to be of type \`function\`, got ${typeof t}`)}return this._handleStoreChange(t)}get size(){const t=Object.keys(this.store);return t.filter((t=>!this._isReservedKeyPath(t))).length}get store(){try{const u=t.readFileSync(this.path,this.#t?null:"utf8");const p=this._decryptData(u);const parseStore=t=>{const u=this._deserialize(t);if(!this.#n){this._validate(u)}return Object.assign(createPlainObject(),u)};return parseStore(p)}catch(t){if(t?.code==="ENOENT"){this._ensureDirectory();return createPlainObject()}if(this.#s.clearInvalidConfig){const u=t;if(u.name==="SyntaxError"){return createPlainObject()}if(u.message?.startsWith("Config schema violation:")){return createPlainObject()}if(u.message==="Failed to decrypt config data."){return createPlainObject()}}throw t}}set store(u){this._ensureDirectory();if(!hasProperty(u,Ze)){try{const p=t.readFileSync(this.path,this.#t?null:"utf8");const m=this._decryptData(p);const g=this._deserialize(m);if(hasProperty(g,Ze)){setProperty(u,Ze,getProperty(g,Ze))}}catch{}}if(!this.#n){this._validate(u)}this._write(u);this.events.dispatchEvent(new Event("change"))}*[Symbol.iterator](){for(const[t,u]of Object.entries(this.store)){if(!this._isReservedKeyPath(t)){yield[t,u]}}}_closeWatcher(){if(this.#o){this.#o.close();this.#o=undefined}if(this.#a){t.unwatchFile(this.path);this.#a=false}this.#c=undefined}_decryptData(t){const u=this.#t;if(!u){return typeof t==="string"?t:uint8ArrayToString(t)}const p=this.#r;const m=p==="aes-256-gcm"?16:0;const g=":".codePointAt(0);const y=typeof t==="string"?t.codePointAt(16):t[16];const v=g!==undefined&&y===g;if(!v){if(p==="aes-256-cbc"){return typeof t==="string"?t:uint8ArrayToString(t)}throw new Error("Failed to decrypt config data.")}const getEncryptedPayload=t=>{if(m===0){return{ciphertext:t}}const u=t.length-m;if(u<0){throw new Error("Invalid authentication tag length.")}return{ciphertext:t.slice(0,u),authenticationTag:t.slice(u)}};const b=t.slice(0,16);const w=t.slice(17);const E=typeof w==="string"?stringToUint8Array(w):w;const decrypt=t=>{const{ciphertext:m,authenticationTag:g}=getEncryptedPayload(E);const y=I.pbkdf2Sync(u,t,1e4,32,"sha512");const v=I.createDecipheriv(p,y,b);if(g){v.setAuthTag(g)}return uint8ArrayToString(concatUint8Arrays([v.update(m),v.final()]))};try{return decrypt(b)}catch{try{return decrypt(b.toString())}catch{}}if(p==="aes-256-cbc"){return typeof t==="string"?t:uint8ArrayToString(t)}throw new Error("Failed to decrypt config data.")}_handleStoreChange(t){let u=this.store;const onChange=()=>{const p=u;const m=this.store;if((0,k.isDeepStrictEqual)(m,p)){return}u=m;t.call(this,m,p)};this.events.addEventListener("change",onChange);return()=>{this.events.removeEventListener("change",onChange)}}_handleValueChange(t,u){let p=t();const onChange=()=>{const m=p;const g=t();if((0,k.isDeepStrictEqual)(g,m)){return}p=g;u.call(this,g,m)};this.events.addEventListener("change",onChange);return()=>{this.events.removeEventListener("change",onChange)}}_deserialize=t=>JSON.parse(t);_serialize=t=>JSON.stringify(t,undefined,"\t");_validate(t){if(!this.#e){return}const u=this.#e(t);if(u||!this.#e.errors){return}const p=this.#e.errors.map((({instancePath:t,message:u=""})=>`\`${t.slice(1)}\` ${u}`));throw new Error("Config schema violation: "+p.join("; "))}_ensureDirectory(){t.mkdirSync(u.dirname(this.path),{recursive:true})}_write(u){let p=this._serialize(u);const m=this.#t;if(m){const t=I.randomBytes(16);const u=I.pbkdf2Sync(m,t,1e4,32,"sha512");const g=I.createCipheriv(this.#r,u,t);const y=concatUint8Arrays([g.update(stringToUint8Array(p)),g.final()]);const v=[t,stringToUint8Array(":"),y];if(this.#r==="aes-256-gcm"){v.push(g.getAuthTag())}p=concatUint8Arrays(v)}if(C.env.SNAP){t.writeFileSync(this.path,p,{mode:this.#s.configFileMode})}else{try{writeFileSync(this.path,p,{mode:this.#s.configFileMode})}catch(u){if(u?.code==="EXDEV"){t.writeFileSync(this.path,p,{mode:this.#s.configFileMode});return}throw u}}}_watch(){this._ensureDirectory();if(!t.existsSync(this.path)){this._write(createPlainObject())}if(C.platform==="win32"||C.platform==="darwin"){this.#c??=Fe((()=>{this.events.dispatchEvent(new Event("change"))}),{wait:100});const p=u.dirname(this.path);const m=u.basename(this.path);this.#o=t.watch(p,{persistent:false,encoding:"utf8"},((t,u)=>{if(u&&u!==m){return}if(typeof this.#c==="function"){this.#c()}}))}else{this.#c??=Fe((()=>{this.events.dispatchEvent(new Event("change"))}),{wait:1e3});t.watchFile(this.path,{persistent:false},((t,u)=>{if(typeof this.#c==="function"){this.#c()}}));this.#a=true}}_migrate(t,u,p){let m=this._get(Xe,"0.0.0");const g=Object.keys(t).filter((t=>this._shouldPerformMigration(t,m,u)));let y=structuredClone(this.store);for(const v of g){try{if(p){p(this,{fromVersion:m,toVersion:v,finalVersion:u,versions:g})}const b=t[v];b?.(this);this._set(Xe,v);m=v;y=structuredClone(this.store)}catch(t){this.store=y;const u=t instanceof Error?t.message:String(t);throw new Error(`Something went wrong during the migration! Changes applied to the store until this failed migration will be restored. ${u}`)}}if(this._isVersionInRangeFormat(m)||!Ue.eq(m,u)){this._set(Xe,u)}}_containsReservedKey(t){if(typeof t==="string"){return this._isReservedKeyPath(t)}if(!t||typeof t!=="object"){return false}return this._objectContainsReservedKey(t)}_objectContainsReservedKey(t){if(!t||typeof t!=="object"){return false}for(const[u,p]of Object.entries(t)){if(this._isReservedKeyPath(u)){return true}if(this._objectContainsReservedKey(p)){return true}}return false}_isReservedKeyPath(t){return t===Ze||t.startsWith(`${Ze}.`)}_isVersionInRangeFormat(t){return Ue.clean(t)===null}_shouldPerformMigration(t,u,p){if(this._isVersionInRangeFormat(t)){if(u!=="0.0.0"&&Ue.satisfies(u,t)){return false}return Ue.satisfies(p,t)}if(Ue.lte(t,u)){return false}if(Ue.gt(t,p)){return false}return true}_get(t,u){return getProperty(this.store,t,u)}_set(t,u){const{store:p}=this;setProperty(p,t,u);this.store=p}#l(t){const u={configName:"config",fileExtension:"json",projectSuffix:"nodejs",clearInvalidConfig:false,accessPropertiesByDotNotation:true,configFileMode:438,...t};u.encryptionAlgorithm??=Ye;if(!isSupportedEncryptionAlgorithm(u.encryptionAlgorithm)){throw new TypeError(`The \`encryptionAlgorithm\` option must be one of: ${[...Je].join(", ")}`)}if(!u.cwd){if(!u.projectName){throw new Error("Please specify the `projectName` option.")}u.cwd=envPaths(u.projectName,{suffix:u.projectSuffix}).config}if(typeof u.fileExtension==="string"){u.fileExtension=u.fileExtension.replace(/^\.+/,"")}return u}#u(t){if(!(t.schema??t.ajvOptions??t.rootSchema)){return}if(t.schema&&typeof t.schema!=="object"){throw new TypeError("The `schema` option must be an object.")}const u=Le["default"];const p=new De.Ajv2020({allErrors:true,useDefaults:true,...t.ajvOptions});u(p);const m={...t.rootSchema,type:"object",properties:t.schema};this.#e=p.compile(m);this.#m(t.schema)}#m(t){const u=Object.entries(t??{});for(const[t,p]of u){if(!p||typeof p!=="object"){continue}if(!Object.hasOwn(p,"default")){continue}const{default:u}=p;if(u===undefined){continue}this.#i[t]=u}}#h(t){if(t.defaults){Object.assign(this.#i,t.defaults)}}#d(t){if(t.serialize){this._serialize=t.serialize}if(t.deserialize){this._deserialize=t.deserialize}}#f(t){const p=typeof t.fileExtension==="string"?t.fileExtension:undefined;const m=p?`.${p}`:"";return u.resolve(t.cwd,`${t.configName??"config"}${m}`)}#p(t){if(t.migrations){this.#g(t);this._validate(this.store);return}const u=this.store;const p=Object.assign(createPlainObject(),t.defaults??{},u);this._validate(p);try{N.deepEqual(u,p)}catch{this.store=p}}#g(t){const{migrations:u,projectVersion:p}=t;if(!u){return}if(!p){throw new Error("Please specify the `projectVersion` option.")}this.#n=true;try{const m=this.store;const g=Object.assign(createPlainObject(),t.defaults??{},m);try{N.deepEqual(m,g)}catch{this._write(g)}this._migrate(u,p,t.beforeEachMigration)}finally{this.#n=false}}}var Qe=__nccwpck_require__(9212);var et=__nccwpck_require__(6133);var tt=__nccwpck_require__.n(et);var rt=__nccwpck_require__(5059);var st=__nccwpck_require__.n(rt);var it=__nccwpck_require__(9642);var nt=__nccwpck_require__.n(it);const ot=require("node:fs/promises");var ct=__nccwpck_require__.n(ot);const ut=["openapi.yaml","openapi.yml","openapi.json","swagger.yaml","swagger.yml","swagger.json"];const ht=["docs","documents","documentation","doc"];const dt=new Set(["node_modules",".git","dist","build",".next","coverage",".turbo",".cache",".apitogo"]);const ft="apitogo.config.json";const pt="pages";async function pathExists(t){try{await(0,ot.access)(t);return true}catch{return false}}function isDocsDir(t){return ht.includes(t.toLowerCase())}function toPosix(t){return t.split(p().sep).join(p().posix.sep)}function toSiteRelative(t,u){const m=toPosix(p().relative(t,u));if(!m||m==="."){return"./"}if(p().isAbsolute(m)||m.startsWith("..")){return m}return m.startsWith("./")?m:`./${m}`}function liteParseOpenApi(t,u){var m,g,y;const v=p().extname(u).toLowerCase();if(v===".json"){try{const u=JSON.parse(t);if(typeof u.openapi!=="string"||!u.openapi.startsWith("3.")){return{valid:false}}return{valid:true,version:u.openapi,title:(m=u.info)===null||m===void 0?void 0:m.title}}catch{return{valid:false}}}const b=t.match(/^\s*openapi:\s*['"]?(3\.\d+(?:\.\d+)?)['"]?/m);if(!(b===null||b===void 0?void 0:b[1])){return{valid:false}}const w=t.match(/^\s*info:\s*\n((?:[ \t].*\n)+)/m);const E=(g=w===null||w===void 0?void 0:w[1])===null||g===void 0?void 0:g.match(/^\s*title:\s*['"]?(.+?)['"]?\s*$/m);return{valid:true,version:b[1],title:(y=E===null||E===void 0?void 0:E[1])===null||y===void 0?void 0:y.trim()}}async function collectOpenApiCandidates(t){const u=p().resolve(t);const m=p().dirname(u);const g=new Set;const y=[];const collect=async t=>{const u=p().resolve(t);if(g.has(u)){return}g.add(u);for(const t of ut){const m=p().join(u,t);if(await pathExists(m)){y.push(m)}}};if(m&&m!==u){await collect(m);try{const t=await(0,ot.readdir)(m,{withFileTypes:true});for(const g of t){if(!g.isDirectory()||dt.has(g.name)){continue}const t=p().join(m,g.name);if(p().resolve(t)===u){continue}await collect(t)}}catch{}}await collect(u);return[...new Set(y)]}async function wireOpenApi(t){const u=p().join(t,ft);if(!await pathExists(u)){return null}for(const p of await collectOpenApiCandidates(t)){const m=liteParseOpenApi(await(0,ot.readFile)(p,"utf8"),p);if(!m.valid){continue}const g=toSiteRelative(t,p);const y=JSON.parse(await(0,ot.readFile)(u,"utf8"));y.apis=[{type:"file",input:g,path:"api"}];const v=y.backend&&typeof y.backend==="object"&&!Array.isArray(y.backend)?{...y.backend}:{};y.backend={...v,openApiPath:g};const b=Array.isArray(y.navigation)?[...y.navigation]:[];const w=b.some((t=>typeof t==="object"&&t!==null&&t.to==="/api"));if(!w){b.push({type:"link",to:"/api",label:"API Reference"})}y.navigation=b;await(0,ot.writeFile)(u,`${JSON.stringify(y,null,2)}\n`,"utf8");const E=m.title?` (${m.title})`:"";return`OpenAPI: wired ${g}${E} → /api`}return"OpenAPI: none found nearby"}async function collectMarkdownFiles(t){const u=[];let m;try{m=await(0,ot.readdir)(t,{withFileTypes:true})}catch{return u}for(const g of m){if(g.name.startsWith(".")){continue}const m=p().join(t,g.name);if(g.isDirectory()){if(dt.has(g.name)||g.isSymbolicLink()){continue}u.push(...await collectMarkdownFiles(m));continue}if((g.isFile()||g.isSymbolicLink())&&/\.mdx?$/i.test(g.name)){u.push(m)}}return u}async function discoverDocsDirectories(t){const u=p().resolve(t);const m=p().dirname(u);const g=new Set([u]);if(m&&m!==u){g.add(m);try{const t=await(0,ot.readdir)(m,{withFileTypes:true});for(const u of t){if(!u.isDirectory()||dt.has(u.name)){continue}g.add(p().join(m,u.name))}}catch{}}const y=[];const v=new Set;for(const t of g){const consider=async t=>{const m=p().resolve(t);if(m===u||v.has(m)){return}try{const t=await(0,ot.lstat)(m);if(!t.isDirectory()){return}}catch{return}const g=await collectMarkdownFiles(m);if(g.length===0){return}v.add(m);y.push(m)};if(isDocsDir(p().basename(t))){await consider(t)}try{const u=await(0,ot.readdir)(t,{withFileTypes:true});for(const m of u){if(!m.isDirectory()||dt.has(m.name)){continue}if(!isDocsDir(m.name)){continue}await consider(p().join(t,m.name))}}catch{}}return y}async function alreadyLinked(t,u){try{const m=await(0,ot.lstat)(t);if(!m.isSymbolicLink()){return false}const g=await(0,ot.readlink)(t);return p().resolve(p().dirname(t),g)===p().resolve(u)}catch{return false}}async function wireDocs(t){const u=await discoverDocsDirectories(t);if(u.length===0){return`Docs: none found in ${ht.join("/")}/ folders nearby`}const m=p().join(t,pt);await(0,ot.mkdir)(m,{recursive:true});const g=[];const y=[];let v=0;for(const b of u){const u=p().basename(b).toLowerCase().replace(/[^a-z0-9]+/g,"-")||"docs";const w=p().join(m,u);const E=(await collectMarkdownFiles(b)).sort(((t,u)=>t.localeCompare(u)));for(const u of E){const m=toPosix(p().relative(b,u));const y=p().join(w,m);if(await alreadyLinked(y,u)){const u=toPosix(p().relative(t,y));g.push(`/${u.replace(/^pages\/?/,"").replace(/\.mdx?$/i,"")}`);v+=1;continue}if(await pathExists(y)){continue}await(0,ot.mkdir)(p().dirname(y),{recursive:true});await(0,ot.symlink)(p().relative(p().dirname(y),u),y,process.platform==="win32"?"file":undefined);const E=toPosix(p().relative(t,y));const $=`/${E.replace(/^pages\/?/,"").replace(/\.mdx?$/i,"")}`;g.push($);v+=1}y.push(` ${toSiteRelative(t,b)} → ${toSiteRelative(t,w)}`)}const b=p().join(t,ft);if(g.length>0&&await pathExists(b)){const t=JSON.parse(await(0,ot.readFile)(b,"utf8"));const u=Array.isArray(t.navigation)?[...t.navigation]:[];const p=u.findIndex((t=>typeof t==="object"&&t!==null&&t.type==="category"&&t.label==="Documentation"));const m={type:"category",label:"Documentation",items:g};if(p>=0){u[p]=m}else{u.unshift(m)}t.navigation=u;await(0,ot.writeFile)(b,`${JSON.stringify(t,null,2)}\n`,"utf8")}return[`Docs: linked ${v} markdown file${v===1?"":"s"} (not copied)`,...y].join("\n")}async function discoverAndWireNearby(t){const u=await wireOpenApi(t);const p=await wireDocs(t);return[u,p].filter((t=>Boolean(t)))}const yt=require("node:stream/promises");var vt=__nccwpck_require__(4434);var _t=__nccwpck_require__(7515);const bt=require("node:string_decoder");var wt=__nccwpck_require__(6928);const Et=require("assert");var St=__nccwpck_require__(181);const $t=require("zlib");var Ot=__nccwpck_require__.t($t,2);var Rt=Object.defineProperty;var Ar=(t,u)=>{for(var p in u)Rt(t,p,{get:u[p],enumerable:!0})};var Pt=typeof process=="object"&&process?process:{stdout:null,stderr:null},Cr=t=>!!t&&typeof t=="object"&&(t instanceof _r||t instanceof z||Fr(t)||kr(t)),Fr=t=>!!t&&typeof t=="object"&&t instanceof V.EventEmitter&&typeof t.pipe=="function"&&t.pipe!==z.Writable.prototype.pipe,kr=t=>!!t&&typeof t=="object"&&t instanceof V.EventEmitter&&typeof t.write=="function"&&typeof t.end=="function",At=Symbol("EOF"),kt=Symbol("maybeEmitEnd"),Ct=Symbol("emittedEnd"),It=Symbol("emittingEnd"),Nt=Symbol("emittedError"),Dt=Symbol("closed"),jt=Symbol("read"),Mt=Symbol("flush"),Ft=Symbol("flushChunk"),Ut=Symbol("encoding"),Bt=Symbol("decoder"),Ht=Symbol("flowing"),Vt=Symbol("paused"),zt=Symbol("resume"),Gt=Symbol("buffer"),Wt=Symbol("pipes"),qt=Symbol("bufferLength"),Kt=Symbol("bufferPush"),Yt=Symbol("bufferShift"),Jt=Symbol("objectMode"),Zt=Symbol("destroyed"),Xt=Symbol("error"),Qt=Symbol("emitData"),er=Symbol("emitEnd"),rr=Symbol("emitEnd2"),sr=Symbol("async"),ir=Symbol("abort"),nr=Symbol("aborted"),cr=Symbol("signal"),lr=Symbol("dataListeners"),mr=Symbol("discarded"),te=t=>Promise.resolve().then(t),vr=t=>t(),Mr=t=>t==="end"||t==="finish"||t==="prefinish",Br=t=>t instanceof ArrayBuffer||!!t&&typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,Pr=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t),gr=class{src;dest;opts;ondrain;constructor(t,u,p){this.src=t,this.dest=u,this.opts=p,this.ondrain=()=>t[zt](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(t){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},yr=class extends gr{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,u,p){super(t,u,p),this.proxyErrors=t=>this.dest.emit("error",t),t.on("error",this.proxyErrors)}},zr=t=>!!t.objectMode,Ur=t=>!t.objectMode&&!!t.encoding&&t.encoding!=="buffer",_r=class extends V.EventEmitter{[Ht]=!1;[Vt]=!1;[Wt]=[];[Gt]=[];[Jt];[Ut];[sr];[Bt];[At]=!1;[Ct]=!1;[It]=!1;[Dt]=!1;[Nt]=null;[qt]=0;[Zt]=!1;[cr];[nr]=!1;[lr]=0;[mr]=!1;writable=!0;readable=!0;constructor(...t){let u=t[0]||{};if(super(),u.objectMode&&typeof u.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");zr(u)?(this[Jt]=!0,this[Ut]=null):Ur(u)?(this[Ut]=u.encoding,this[Jt]=!1):(this[Jt]=!1,this[Ut]=null),this[sr]=!!u.async,this[Bt]=this[Ut]?new bt.StringDecoder(this[Ut]):null,u&&u.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[Gt]}),u&&u.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[Wt]});let{signal:p}=u;p&&(this[cr]=p,p.aborted?this[ir]():p.addEventListener("abort",(()=>this[ir]())))}get bufferLength(){return this[qt]}get encoding(){return this[Ut]}set encoding(t){throw new Error("Encoding must be set at instantiation time")}setEncoding(t){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[Jt]}set objectMode(t){throw new Error("objectMode must be set at instantiation time")}get async(){return this[sr]}set async(t){this[sr]=this[sr]||!!t}[ir](){this[nr]=!0,this.emit("abort",this[cr]?.reason),this.destroy(this[cr]?.reason)}get aborted(){return this[nr]}set aborted(t){}write(t,u,p){if(this[nr])return!1;if(this[At])throw new Error("write after end");if(this[Zt])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof u=="function"&&(p=u,u="utf8"),u||(u="utf8");let m=this[sr]?te:vr;if(!this[Jt]&&!Buffer.isBuffer(t)){if(Pr(t))t=Buffer.from(t.buffer,t.byteOffset,t.byteLength);else if(Br(t))t=Buffer.from(t);else if(typeof t!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[Jt]?(this[Ht]&&this[qt]!==0&&this[Mt](!0),this[Ht]?this.emit("data",t):this[Kt](t),this[qt]!==0&&this.emit("readable"),p&&m(p),this[Ht]):t.length?(typeof t=="string"&&!(u===this[Ut]&&!this[Bt]?.lastNeed)&&(t=Buffer.from(t,u)),Buffer.isBuffer(t)&&this[Ut]&&(t=this[Bt].write(t)),this[Ht]&&this[qt]!==0&&this[Mt](!0),this[Ht]?this.emit("data",t):this[Kt](t),this[qt]!==0&&this.emit("readable"),p&&m(p),this[Ht]):(this[qt]!==0&&this.emit("readable"),p&&m(p),this[Ht])}read(t){if(this[Zt])return null;if(this[mr]=!1,this[qt]===0||t===0||t&&t>this[qt])return this[kt](),null;this[Jt]&&(t=null),this[Gt].length>1&&!this[Jt]&&(this[Gt]=[this[Ut]?this[Gt].join(""):Buffer.concat(this[Gt],this[qt])]);let u=this[jt](t||null,this[Gt][0]);return this[kt](),u}[jt](t,u){if(this[Jt])this[Yt]();else{let p=u;t===p.length||t===null?this[Yt]():typeof p=="string"?(this[Gt][0]=p.slice(t),u=p.slice(0,t),this[qt]-=t):(this[Gt][0]=p.subarray(t),u=p.subarray(0,t),this[qt]-=t)}return this.emit("data",u),!this[Gt].length&&!this[At]&&this.emit("drain"),u}end(t,u,p){return typeof t=="function"&&(p=t,t=void 0),typeof u=="function"&&(p=u,u="utf8"),t!==void 0&&this.write(t,u),p&&this.once("end",p),this[At]=!0,this.writable=!1,(this[Ht]||!this[Vt])&&this[kt](),this}[zt](){this[Zt]||(!this[lr]&&!this[Wt].length&&(this[mr]=!0),this[Vt]=!1,this[Ht]=!0,this.emit("resume"),this[Gt].length?this[Mt]():this[At]?this[kt]():this.emit("drain"))}resume(){return this[zt]()}pause(){this[Ht]=!1,this[Vt]=!0,this[mr]=!1}get destroyed(){return this[Zt]}get flowing(){return this[Ht]}get paused(){return this[Vt]}[Kt](t){this[Jt]?this[qt]+=1:this[qt]+=t.length,this[Gt].push(t)}[Yt](){return this[Jt]?this[qt]-=1:this[qt]-=this[Gt][0].length,this[Gt].shift()}[Mt](t=!1){do{}while(this[Ft](this[Yt]())&&this[Gt].length);!t&&!this[Gt].length&&!this[At]&&this.emit("drain")}[Ft](t){return this.emit("data",t),this[Ht]}pipe(t,u){if(this[Zt])return t;this[mr]=!1;let p=this[Ct];return u=u||{},t===Pt.stdout||t===Pt.stderr?u.end=!1:u.end=u.end!==!1,u.proxyErrors=!!u.proxyErrors,p?u.end&&t.end():(this[Wt].push(u.proxyErrors?new yr(this,t,u):new gr(this,t,u)),this[sr]?te((()=>this[zt]())):this[zt]()),t}unpipe(t){let u=this[Wt].find((u=>u.dest===t));u&&(this[Wt].length===1?(this[Ht]&&this[lr]===0&&(this[Ht]=!1),this[Wt]=[]):this[Wt].splice(this[Wt].indexOf(u),1),u.unpipe())}addListener(t,u){return this.on(t,u)}on(t,u){let p=super.on(t,u);if(t==="data")this[mr]=!1,this[lr]++,!this[Wt].length&&!this[Ht]&&this[zt]();else if(t==="readable"&&this[qt]!==0)super.emit("readable");else if(Mr(t)&&this[Ct])super.emit(t),this.removeAllListeners(t);else if(t==="error"&&this[Nt]){let t=u;this[sr]?te((()=>t.call(this,this[Nt]))):t.call(this,this[Nt])}return p}removeListener(t,u){return this.off(t,u)}off(t,u){let p=super.off(t,u);return t==="data"&&(this[lr]=this.listeners("data").length,this[lr]===0&&!this[mr]&&!this[Wt].length&&(this[Ht]=!1)),p}removeAllListeners(t){let u=super.removeAllListeners(t);return(t==="data"||t===void 0)&&(this[lr]=0,!this[mr]&&!this[Wt].length&&(this[Ht]=!1)),u}get emittedEnd(){return this[Ct]}[kt](){!this[It]&&!this[Ct]&&!this[Zt]&&this[Gt].length===0&&this[At]&&(this[It]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Dt]&&this.emit("close"),this[It]=!1)}emit(t,...u){let p=u[0];if(t!=="error"&&t!=="close"&&t!==Zt&&this[Zt])return!1;if(t==="data")return!this[Jt]&&!p?!1:this[sr]?(te((()=>this[Qt](p))),!0):this[Qt](p);if(t==="end")return this[er]();if(t==="close"){if(this[Dt]=!0,!this[Ct]&&!this[Zt])return!1;let t=super.emit("close");return this.removeAllListeners("close"),t}else if(t==="error"){this[Nt]=p,super.emit(Xt,p);let t=!this[cr]||this.listeners("error").length?super.emit("error",p):!1;return this[kt](),t}else if(t==="resume"){let t=super.emit("resume");return this[kt](),t}else if(t==="finish"||t==="prefinish"){let u=super.emit(t);return this.removeAllListeners(t),u}let m=super.emit(t,...u);return this[kt](),m}[Qt](t){for(let u of this[Wt])u.dest.write(t)===!1&&this.pause();let u=this[mr]?!1:super.emit("data",t);return this[kt](),u}[er](){return this[Ct]?!1:(this[Ct]=!0,this.readable=!1,this[sr]?(te((()=>this[rr]())),!0):this[rr]())}[rr](){if(this[Bt]){let t=this[Bt].end();if(t){for(let u of this[Wt])u.dest.write(t);this[mr]||super.emit("data",t)}}for(let t of this[Wt])t.end();let t=super.emit("end");return this.removeAllListeners("end"),t}async collect(){let t=Object.assign([],{dataLength:0});this[Jt]||(t.dataLength=0);let u=this.promise();return this.on("data",(u=>{t.push(u),this[Jt]||(t.dataLength+=u.length)})),await u,t}async concat(){if(this[Jt])throw new Error("cannot concat in objectMode");let t=await this.collect();return this[Ut]?t.join(""):Buffer.concat(t,t.dataLength)}async promise(){return new Promise(((t,u)=>{this.on(Zt,(()=>u(new Error("stream destroyed")))),this.on("error",(t=>u(t))),this.on("end",(()=>t()))}))}[Symbol.asyncIterator](){this[mr]=!1;let t=!1,e=async()=>(this.pause(),t=!0,{value:void 0,done:!0});return{next:()=>{if(t)return e();let u=this.read();if(u!==null)return Promise.resolve({done:!1,value:u});if(this[At])return e();let p,m,h=t=>{this.off("data",a),this.off("end",l),this.off(Zt,c),e(),m(t)},a=t=>{this.off("error",h),this.off("end",l),this.off(Zt,c),this.pause(),p({value:t,done:!!this[At]})},l=()=>{this.off("error",h),this.off("data",a),this.off(Zt,c),e(),p({done:!0,value:void 0})},c=()=>h(new Error("stream destroyed"));return new Promise(((t,u)=>{m=u,p=t,this.once(Zt,c),this.once("error",h),this.once("end",l),this.once("data",a)}))},throw:e,return:e,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[mr]=!1;let t=!1,e=()=>(this.pause(),this.off(Xt,e),this.off(Zt,e),this.off("end",e),t=!0,{done:!0,value:void 0}),i=()=>{if(t)return e();let u=this.read();return u===null?e():{done:!1,value:u}};return this.once("end",e),this.once(Xt,e),this.once(Zt,e),{next:i,throw:e,return:e,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(t){if(this[Zt])return t?this.emit("error",t):this.emit(Zt),this;this[Zt]=!0,this[mr]=!0,this[Gt].length=0,this[qt]=0;let u=this;return typeof u.close=="function"&&!this[Dt]&&u.close(),t?this.emit("error",t):this.emit(Zt),this}static get isStream(){return Cr}};var br=_t.writev,Er=Symbol("_autoClose"),Sr=Symbol("_close"),Or=Symbol("_ended"),Rr=Symbol("_fd"),xr=Symbol("_finished"),Ir=Symbol("_flags"),Nr=Symbol("_flush"),Dr=Symbol("_handleChunk"),Lr=Symbol("_makeBuf"),Hr=Symbol("_mode"),Vr=Symbol("_needDrain"),Gr=Symbol("_onerror"),Wr=Symbol("_onopen"),Kr=Symbol("_onread"),Yr=Symbol("_onwrite"),Xr=Symbol("_open"),es=Symbol("_path"),ts=Symbol("_pos"),rs=Symbol("_queue"),ss=Symbol("_read"),is=Symbol("_readSize"),ns=Symbol("_reading"),os=Symbol("_remain"),as=Symbol("_size"),ls=Symbol("_write"),hs=Symbol("_writing"),ps=Symbol("_defaultFlag"),ms=Symbol("_errored"),gs=class extends _r{[ms]=!1;[Rr];[es];[is];[ns]=!1;[as];[os];[Er];constructor(t,u){if(u=u||{},super(u),this.readable=!0,this.writable=!1,typeof t!="string")throw new TypeError("path must be a string");this[ms]=!1,this[Rr]=typeof u.fd=="number"?u.fd:void 0,this[es]=t,this[is]=u.readSize||16*1024*1024,this[ns]=!1,this[as]=typeof u.size=="number"?u.size:1/0,this[os]=this[as],this[Er]=typeof u.autoClose=="boolean"?u.autoClose:!0,typeof this[Rr]=="number"?this[ss]():this[Xr]()}get fd(){return this[Rr]}get path(){return this[es]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[Xr](){_t.open(this[es],"r",((t,u)=>this[Wr](t,u)))}[Wr](t,u){t?this[Gr](t):(this[Rr]=u,this.emit("open",u),this[ss]())}[Lr](){return Buffer.allocUnsafe(Math.min(this[is],this[os]))}[ss](){if(!this[ns]){this[ns]=!0;let t=this[Lr]();if(t.length===0)return process.nextTick((()=>this[Kr](null,0,t)));_t.read(this[Rr],t,0,t.length,null,((t,u,p)=>this[Kr](t,u,p)))}}[Kr](t,u,p){this[ns]=!1,t?this[Gr](t):this[Dr](u,p)&&this[ss]()}[Sr](){if(this[Er]&&typeof this[Rr]=="number"){let t=this[Rr];this[Rr]=void 0,_t.close(t,(t=>t?this.emit("error",t):this.emit("close")))}}[Gr](t){this[ns]=!0,this[Sr](),this.emit("error",t)}[Dr](t,u){let p=!1;return this[os]-=t,t>0&&(p=super.write(t<u.length?u.subarray(0,t):u)),(t===0||this[os]<=0)&&(p=!1,this[Sr](),super.end()),p}emit(t,...u){switch(t){case"prefinish":case"finish":return!1;case"drain":return typeof this[Rr]=="number"&&this[ss](),!1;case"error":return this[ms]?!1:(this[ms]=!0,super.emit(t,...u));default:return super.emit(t,...u)}}},ys=class extends gs{[Xr](){let t=!0;try{this[Wr](null,_t.openSync(this[es],"r")),t=!1}finally{t&&this[Sr]()}}[ss](){let t=!0;try{if(!this[ns]){this[ns]=!0;do{let t=this[Lr](),u=t.length===0?0:_t.readSync(this[Rr],t,0,t.length,null);if(!this[Dr](u,t))break}while(!0);this[ns]=!1}t=!1}finally{t&&this[Sr]()}}[Sr](){if(this[Er]&&typeof this[Rr]=="number"){let t=this[Rr];this[Rr]=void 0,_t.closeSync(t),this.emit("close")}}},vs=class extends vt{readable=!1;writable=!0;[ms]=!1;[hs]=!1;[Or]=!1;[rs]=[];[Vr]=!1;[es];[Hr];[Er];[Rr];[ps];[Ir];[xr]=!1;[ts];constructor(t,u){u=u||{},super(u),this[es]=t,this[Rr]=typeof u.fd=="number"?u.fd:void 0,this[Hr]=u.mode===void 0?438:u.mode,this[ts]=typeof u.start=="number"?u.start:void 0,this[Er]=typeof u.autoClose=="boolean"?u.autoClose:!0;let p=this[ts]!==void 0?"r+":"w";this[ps]=u.flags===void 0,this[Ir]=u.flags===void 0?p:u.flags,this[Rr]===void 0&&this[Xr]()}emit(t,...u){if(t==="error"){if(this[ms])return!1;this[ms]=!0}return super.emit(t,...u)}get fd(){return this[Rr]}get path(){return this[es]}[Gr](t){this[Sr](),this[hs]=!0,this.emit("error",t)}[Xr](){_t.open(this[es],this[Ir],this[Hr],((t,u)=>this[Wr](t,u)))}[Wr](t,u){this[ps]&&this[Ir]==="r+"&&t&&t.code==="ENOENT"?(this[Ir]="w",this[Xr]()):t?this[Gr](t):(this[Rr]=u,this.emit("open",u),this[hs]||this[Nr]())}end(t,u){return t&&this.write(t,u),this[Or]=!0,!this[hs]&&!this[rs].length&&typeof this[Rr]=="number"&&this[Yr](null,0),this}write(t,u){return typeof t=="string"&&(t=Buffer.from(t,u)),this[Or]?(this.emit("error",new Error("write() after end()")),!1):this[Rr]===void 0||this[hs]||this[rs].length?(this[rs].push(t),this[Vr]=!0,!1):(this[hs]=!0,this[ls](t),!0)}[ls](t){_t.write(this[Rr],t,0,t.length,this[ts],((t,u)=>this[Yr](t,u)))}[Yr](t,u){t?this[Gr](t):(this[ts]!==void 0&&typeof u=="number"&&(this[ts]+=u),this[rs].length?this[Nr]():(this[hs]=!1,this[Or]&&!this[xr]?(this[xr]=!0,this[Sr](),this.emit("finish")):this[Vr]&&(this[Vr]=!1,this.emit("drain"))))}[Nr](){if(this[rs].length===0)this[Or]&&this[Yr](null,0);else if(this[rs].length===1)this[ls](this[rs].pop());else{let t=this[rs];this[rs]=[],br(this[Rr],t,this[ts],((t,u)=>this[Yr](t,u)))}}[Sr](){if(this[Er]&&typeof this[Rr]=="number"){let t=this[Rr];this[Rr]=void 0,_t.close(t,(t=>t?this.emit("error",t):this.emit("close")))}}},_s=class extends vs{[Xr](){let t;if(this[ps]&&this[Ir]==="r+")try{t=_t.openSync(this[es],this[Ir],this[Hr])}catch(t){if(t?.code==="ENOENT")return this[Ir]="w",this[Xr]();throw t}else t=_t.openSync(this[es],this[Ir],this[Hr]);this[Wr](null,t)}[Sr](){if(this[Er]&&typeof this[Rr]=="number"){let t=this[Rr];this[Rr]=void 0,_t.closeSync(t),this.emit("close")}}[ls](t){let u=!0;try{this[Yr](null,_t.writeSync(this[Rr],t,0,t.length,this[ts])),u=!1}finally{if(u)try{this[Sr]()}catch{}}}};var bs=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"],["onentry","onReadEntry"]]),As=t=>!!t.sync&&!!t.file,Is=t=>!t.sync&&!!t.file,Cs=t=>!!t.sync&&!t.file,Fs=t=>!t.sync&&!t.file;var ks=t=>!!t.file;var Zr=t=>{let u=bs.get(t);return u||t},re=(t={})=>{if(!t)return{};let u={};for(let[p,m]of Object.entries(t)){let t=Zr(p);u[t]=m}return u.chmod===void 0&&u.noChmod===!1&&(u.chmod=!0),delete u.noChmod,u};var K=(t,u,p,m,g)=>Object.assign(((y=[],v,b)=>{Array.isArray(y)&&(v=y,y={}),typeof v=="function"&&(b=v,v=void 0),v?v=Array.from(v):v=[];let w=re(y);if(g?.(w,v),As(w)){if(typeof b=="function")throw new TypeError("callback not supported for sync tar functions");return t(w,v)}else if(Is(w)){let t=u(w,v),p=b||void 0;return p?t.then((()=>p()),p):t}else if(Cs(w)){if(typeof b=="function")throw new TypeError("callback not supported for sync tar functions");return p(w,v)}else if(Fs(w)){if(typeof b=="function")throw new TypeError("callback only supported with file option");return m(w,v)}else throw new Error("impossible options??")}),{syncFile:t,asyncFile:u,syncNoFile:p,asyncNoFile:m,validate:g});var ws=$t.constants||{ZLIB_VERNUM:4736},Es=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},ws));var Ss=St.Buffer.concat,$s=Object.getOwnPropertyDescriptor(St.Buffer,"concat"),$r=t=>t,Os=$s?.writable===!0||$s?.set!==void 0?t=>{St.Buffer.concat=t?$r:Ss}:t=>{},Rs=Symbol("_superWrite"),xs=class extends Error{code;errno;constructor(t,u){super("zlib: "+t.message,{cause:t}),this.code=t.code,this.errno=t.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+t.message,Error.captureStackTrace(this,u??this.constructor)}get name(){return"ZlibError"}},Ts=Symbol("flushFlag"),Ns=class extends _r{#y=!1;#v=!1;#_;#b;#w;#E;#S;get sawError(){return this.#y}get handle(){return this.#E}get flushFlag(){return this.#_}constructor(t,u){if(!t||typeof t!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(t),this.#_=t.flush??0,this.#b=t.finishFlush??0,this.#w=t.fullFlushFlag??0,typeof Ot[u]!="function")throw new TypeError("Compression method not supported: "+u);try{this.#E=new Ot[u](t)}catch(t){throw new xs(t,this.constructor)}this.#S=t=>{this.#y||(this.#y=!0,this.close(),this.emit("error",t))},this.#E?.on("error",(t=>this.#S(new xs(t)))),this.once("end",(()=>this.close))}close(){this.#E&&(this.#E.close(),this.#E=void 0,this.emit("close"))}reset(){if(!this.#y)return Et(this.#E,"zlib binding closed"),this.#E.reset?.()}flush(t){this.ended||(typeof t!="number"&&(t=this.#w),this.write(Object.assign(St.Buffer.alloc(0),{[Ts]:t})))}end(t,u,p){return typeof t=="function"&&(p=t,u=void 0,t=void 0),typeof u=="function"&&(p=u,u=void 0),t&&(u?this.write(t,u):this.write(t)),this.flush(this.#b),this.#v=!0,super.end(p)}get ended(){return this.#v}[Rs](t){return super.write(t)}write(t,u,p){if(typeof u=="function"&&(p=u,u="utf8"),typeof t=="string"&&(t=St.Buffer.from(t,u)),this.#y)return;Et(this.#E,"zlib binding closed");let m=this.#E._handle,g=m.close;m.close=()=>{};let y=this.#E.close;this.#E.close=()=>{},Os(!0);let v;try{let u=typeof t[Ts]=="number"?t[Ts]:this.#_;v=this.#E._processChunk(t,u),Os(!1)}catch(t){Os(!1),this.#S(new xs(t,this.write))}finally{this.#E&&(this.#E._handle=m,m.close=g,this.#E.close=y,this.#E.removeAllListeners("error"))}this.#E&&this.#E.on("error",(t=>this.#S(new xs(t,this.write))));let b;if(v)if(Array.isArray(v)&&v.length>0){let t=v[0];b=this[Rs](St.Buffer.from(t));for(let t=1;t<v.length;t++)b=this[Rs](v[t])}else b=this[Rs](St.Buffer.from(v));return p&&p(),b}},Ds=class extends Ns{#y;#v;constructor(t,u){t=t||{},t.flush=t.flush||Es.Z_NO_FLUSH,t.finishFlush=t.finishFlush||Es.Z_FINISH,t.fullFlushFlag=Es.Z_FULL_FLUSH,super(t,u),this.#y=t.level,this.#v=t.strategy}params(t,u){if(!this.sawError){if(!this.handle)throw new Error("cannot switch params when binding is closed");if(!this.handle.params)throw new Error("not supported in this implementation");if(this.#y!==t||this.#v!==u){this.flush(Es.Z_SYNC_FLUSH),Et(this.handle,"zlib binding closed");let p=this.handle.flush;this.handle.flush=(t,u)=>{typeof t=="function"&&(u=t,t=this.flushFlag),this.flush(t),u?.()};try{this.handle.params(t,u)}finally{this.handle.flush=p}this.handle&&(this.#y=t,this.#v=u)}}}};var Ls=class extends Ds{#y;constructor(t){super(t,"Gzip"),this.#y=t&&!!t.portable}[Rs](t){return this.#y?(this.#y=!1,t[9]=255,super[Rs](t)):super[Rs](t)}};var js=class extends Ds{constructor(t){super(t,"Unzip")}},Ms=class extends Ns{constructor(t,u){t=t||{},t.flush=t.flush||Es.BROTLI_OPERATION_PROCESS,t.finishFlush=t.finishFlush||Es.BROTLI_OPERATION_FINISH,t.fullFlushFlag=Es.BROTLI_OPERATION_FLUSH,super(t,u)}},Hs=class extends Ms{constructor(t){super(t,"BrotliCompress")}},Gs=class extends Ms{constructor(t){super(t,"BrotliDecompress")}},Ws=class extends Ns{constructor(t,u){t=t||{},t.flush=t.flush||Es.ZSTD_e_continue,t.finishFlush=t.finishFlush||Es.ZSTD_e_end,t.fullFlushFlag=Es.ZSTD_e_flush,super(t,u)}},qs=class extends Ws{constructor(t){super(t,"ZstdCompress")}},Ks=class extends Ws{constructor(t){super(t,"ZstdDecompress")}};var Bs=(t,u)=>{if(Number.isSafeInteger(t))t<0?jr(t,u):qr(t,u);else throw Error("cannot encode number outside of javascript safe integer range");return u},qr=(t,u)=>{u[0]=128;for(var p=u.length;p>1;p--)u[p-1]=t&255,t=Math.floor(t/256)},jr=(t,u)=>{u[0]=255;var p=!1;t=t*-1;for(var m=u.length;m>1;m--){var g=t&255;t=Math.floor(t/256),p?u[m-1]=zs(g):g===0?u[m-1]=0:(p=!0,u[m-1]=Us(g))}},Ps=t=>{let u=t[0],p=u===128?Jr(t.subarray(1,t.length)):u===255?Qr(t):null;if(p===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(p))throw Error("parsed number outside of javascript safe integer range");return p},Qr=t=>{for(var u=t.length,p=0,m=!1,g=u-1;g>-1;g--){var y=Number(t[g]),v;m?v=zs(y):y===0?v=y:(m=!0,v=Us(y)),v!==0&&(p-=v*Math.pow(256,u-g-1))}return p},Jr=t=>{for(var u=t.length,p=0,m=u-1;m>-1;m--){var g=Number(t[m]);g!==0&&(p+=g*Math.pow(256,u-m-1))}return p},zs=t=>(255^t)&255,Us=t=>(255^t)+1&255;var Ys={};Ar(Ys,{code:()=>Zs,isCode:()=>oe,isName:()=>en,name:()=>Js});var oe=t=>Js.has(t),en=t=>Zs.has(t),Js=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]),Zs=new Map(Array.from(Js).map((t=>[t[1],t[0]])));var Xs=class{cksumValid=!1;needPax=!1;nullBlock=!1;block;path;mode;uid;gid;size;cksum;#y="Unsupported";linkpath;uname;gname;devmaj=0;devmin=0;atime;ctime;mtime;charset;comment;constructor(t,u=0,p,m){Buffer.isBuffer(t)?this.decode(t,u||0,p,m):t&&this.#v(t)}decode(t,u,p,m){if(u||(u=0),!t||!(t.length>=u+512))throw new Error("need 512 bytes for header");this.path=p?.path??Tt(t,u,100),this.mode=p?.mode??m?.mode??at(t,u+100,8),this.uid=p?.uid??m?.uid??at(t,u+108,8),this.gid=p?.gid??m?.gid??at(t,u+116,8),this.size=p?.size??m?.size??at(t,u+124,12),this.mtime=p?.mtime??m?.mtime??Bi(t,u+136,12),this.cksum=at(t,u+148,12),m&&this.#v(m,!0),p&&this.#v(p);let g=Tt(t,u+156,1);if(oe(g)&&(this.#y=g||"0"),this.#y==="0"&&this.path.slice(-1)==="/"&&(this.#y="5"),this.#y==="5"&&(this.size=0),this.linkpath=Tt(t,u+157,100),t.subarray(u+257,u+265).toString()==="ustar\x0000")if(this.uname=p?.uname??m?.uname??Tt(t,u+265,32),this.gname=p?.gname??m?.gname??Tt(t,u+297,32),this.devmaj=p?.devmaj??m?.devmaj??at(t,u+329,8)??0,this.devmin=p?.devmin??m?.devmin??at(t,u+337,8)??0,t[u+475]!==0){let p=Tt(t,u+345,155);this.path=p+"/"+this.path}else{let g=Tt(t,u+345,130);g&&(this.path=g+"/"+this.path),this.atime=p?.atime??m?.atime??Bi(t,u+476,12),this.ctime=p?.ctime??m?.ctime??Bi(t,u+488,12)}let y=256;for(let p=u;p<u+148;p++)y+=t[p];for(let p=u+156;p<u+512;p++)y+=t[p];this.cksumValid=y===this.cksum,this.cksum===void 0&&y===256&&(this.nullBlock=!0)}#v(t,u=!1){Object.assign(this,Object.fromEntries(Object.entries(t).filter((([t,p])=>!(p==null||t==="path"&&u||t==="linkpath"&&u||t==="global")))))}encode(t,u=0){if(t||(t=this.block=Buffer.alloc(512)),this.#y==="Unsupported"&&(this.#y="0"),!(t.length>=u+512))throw new Error("need 512 bytes for header");let p=this.ctime||this.atime?130:155,m=sn(this.path||"",p),g=m[0],y=m[1];this.needPax=!!m[2],this.needPax=xt(t,u,100,g)||this.needPax,this.needPax=lt(t,u+100,8,this.mode)||this.needPax,this.needPax=lt(t,u+108,8,this.uid)||this.needPax,this.needPax=lt(t,u+116,8,this.gid)||this.needPax,this.needPax=lt(t,u+124,12,this.size)||this.needPax,this.needPax=Pi(t,u+136,12,this.mtime)||this.needPax,t[u+156]=this.#y.charCodeAt(0),this.needPax=xt(t,u+157,100,this.linkpath)||this.needPax,t.write("ustar\x0000",u+257,8),this.needPax=xt(t,u+265,32,this.uname)||this.needPax,this.needPax=xt(t,u+297,32,this.gname)||this.needPax,this.needPax=lt(t,u+329,8,this.devmaj)||this.needPax,this.needPax=lt(t,u+337,8,this.devmin)||this.needPax,this.needPax=xt(t,u+345,p,y)||this.needPax,t[u+475]!==0?this.needPax=xt(t,u+345,155,y)||this.needPax:(this.needPax=xt(t,u+345,130,y)||this.needPax,this.needPax=Pi(t,u+476,12,this.atime)||this.needPax,this.needPax=Pi(t,u+488,12,this.ctime)||this.needPax);let v=256;for(let p=u;p<u+148;p++)v+=t[p];for(let p=u+156;p<u+512;p++)v+=t[p];return this.cksum=v,lt(t,u+148,8,this.cksum),this.cksumValid=!0,this.needPax}get type(){return this.#y==="Unsupported"?this.#y:Js.get(this.#y)}get typeKey(){return this.#y}set type(t){let u=String(Zs.get(t));if(oe(u)||u==="Unsupported")this.#y=u;else if(oe(t))this.#y=t;else throw new TypeError("invalid entry type: "+t)}},sn=(t,p)=>{let m=t,g="",y,v=u.posix.parse(t).root||".";if(Buffer.byteLength(m)<100)y=[m,g,!1];else{g=u.posix.dirname(m),m=u.posix.basename(m);do{Buffer.byteLength(m)<=100&&Buffer.byteLength(g)<=p?y=[m,g,!1]:Buffer.byteLength(m)>100&&Buffer.byteLength(g)<=p?y=[m.slice(0,99),g,!0]:(m=u.posix.join(u.posix.basename(g),m),g=u.posix.dirname(g))}while(g!==v&&y===void 0);y||(y=[t.slice(0,99),"",!0])}return y},Tt=(t,u,p)=>t.subarray(u,u+p).toString("utf8").replace(/\0.*/,""),Bi=(t,u,p)=>rn(at(t,u,p)),rn=t=>t===void 0?void 0:new Date(t*1e3),at=(t,u,p)=>Number(t[u])&128?Ps(t.subarray(u,u+p)):on(t,u,p),nn=t=>isNaN(t)?void 0:t,on=(t,u,p)=>nn(parseInt(t.subarray(u,u+p).toString("utf8").replace(/\0.*$/,"").trim(),8)),Qs={12:8589934591,8:2097151},lt=(t,u,p,m)=>m===void 0?!1:m>Qs[p]||m<0?(Bs(m,t.subarray(u,u+p)),!0):(an(t,u,p,m),!1),an=(t,u,p,m)=>t.write(ln(m,p),u,p,"ascii"),ln=(t,u)=>cn(Math.floor(t).toString(8),u),cn=(t,u)=>(t.length===u-1?t:new Array(u-t.length-1).join("0")+t+" ")+"\0",Pi=(t,u,p,m)=>m===void 0?!1:lt(t,u,p,m.getTime()/1e3),ei=new Array(156).join("\0"),xt=(t,u,p,m)=>m===void 0?!1:(t.write(m+ei,u,p,"utf8"),m.length!==Buffer.byteLength(m)||m.length>p);var ti=class s{atime;mtime;ctime;charset;comment;gid;uid;gname;uname;linkpath;dev;ino;nlink;path;size;mode;global;constructor(t,u=!1){this.atime=t.atime,this.charset=t.charset,this.comment=t.comment,this.ctime=t.ctime,this.dev=t.dev,this.gid=t.gid,this.global=u,this.gname=t.gname,this.ino=t.ino,this.linkpath=t.linkpath,this.mtime=t.mtime,this.nlink=t.nlink,this.path=t.path,this.size=t.size,this.uid=t.uid,this.uname=t.uname}encode(){let t=this.encodeBody();if(t==="")return Buffer.allocUnsafe(0);let p=Buffer.byteLength(t),m=512*Math.ceil(1+p/512),g=Buffer.allocUnsafe(m);for(let t=0;t<512;t++)g[t]=0;new Xs({path:("PaxHeader/"+(0,u.basename)(this.path??"")).slice(0,99),mode:this.mode||420,uid:this.uid,gid:this.gid,size:p,mtime:this.mtime,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime,ctime:this.ctime}).encode(g),g.write(t,512,p,"utf8");for(let t=p+512;t<g.length;t++)g[t]=0;return g}encodeBody(){return this.encodeField("path")+this.encodeField("ctime")+this.encodeField("atime")+this.encodeField("dev")+this.encodeField("ino")+this.encodeField("nlink")+this.encodeField("charset")+this.encodeField("comment")+this.encodeField("gid")+this.encodeField("gname")+this.encodeField("linkpath")+this.encodeField("mtime")+this.encodeField("size")+this.encodeField("uid")+this.encodeField("uname")}encodeField(t){if(this[t]===void 0)return"";let u=this[t],p=u instanceof Date?u.getTime()/1e3:u,m=" "+(t==="dev"||t==="ino"||t==="nlink"?"SCHILY.":"")+t+"="+p+`\n`,g=Buffer.byteLength(m),y=Math.floor(Math.log(g)/Math.log(10))+1;return g+y>=Math.pow(10,y)&&(y+=1),y+g+m}static parse(t,u,p=!1){return new s(un(mn(t),u),p)}},un=(t,u)=>u?Object.assign({},u,t):t,mn=t=>t.replace(/\n$/,"").split(`\n`).reduce(pn,Object.create(null)),pn=(t,u)=>{let p=parseInt(u,10);if(p!==Buffer.byteLength(u)+1)return t;u=u.slice((p+" ").length);let m=u.split("="),g=m.shift();if(!g)return t;let y=g.replace(/^SCHILY\.(dev|ino|nlink)/,"$1"),v=m.join("=");return t[y]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(y)?new Date(Number(v)*1e3):/^[0-9]+$/.test(v)?+v:v,t};var ri=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,si=ri!=="win32"?t=>t:t=>t&&t.replace(/\\/g,"/");var ii=class extends _r{extended;globalExtended;header;startBlockSize;blockRemain;remain;type;meta=!1;ignore=!1;path;mode;uid;gid;uname;gname;size=0;mtime;atime;ctime;linkpath;dev;ino;nlink;invalid=!1;absolute;unsupported=!1;constructor(t,u,p){switch(super({}),this.pause(),this.extended=u,this.globalExtended=p,this.header=t,this.remain=t.size??0,this.startBlockSize=512*Math.ceil(this.remain/512),this.blockRemain=this.startBlockSize,this.type=t.type,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}if(!t.path)throw new Error("no path provided for tar.ReadEntry");this.path=si(t.path),this.mode=t.mode,this.mode&&(this.mode=this.mode&4095),this.uid=t.uid,this.gid=t.gid,this.uname=t.uname,this.gname=t.gname,this.size=this.remain,this.mtime=t.mtime,this.atime=t.atime,this.ctime=t.ctime,this.linkpath=t.linkpath?si(t.linkpath):void 0,this.uname=t.uname,this.gname=t.gname,u&&this.#y(u),p&&this.#y(p,!0)}write(t){let u=t.length;if(u>this.blockRemain)throw new Error("writing more to entry than is appropriate");let p=this.remain,m=this.blockRemain;return this.remain=Math.max(0,p-u),this.blockRemain=Math.max(0,m-u),this.ignore?!0:p>=u?super.write(t):super.write(t.subarray(0,p))}#y(t,u=!1){t.path&&(t.path=si(t.path)),t.linkpath&&(t.linkpath=si(t.linkpath)),Object.assign(this,Object.fromEntries(Object.entries(t).filter((([t,p])=>!(p==null||t==="path"&&u)))))}};var Lt=(t,u,p,m={})=>{t.file&&(m.file=t.file),t.cwd&&(m.cwd=t.cwd),m.code=p instanceof Error&&p.code||u,m.tarCode=u,!t.strict&&m.recoverable!==!1?(p instanceof Error&&(m=Object.assign(p,m),p=p.message),t.emit("warn",u,p,m)):p instanceof Error?t.emit("error",Object.assign(p,m)):t.emit("error",Object.assign(new Error(`${u}: ${p}`),m))};var ni=1024*1024,oi=Buffer.from([31,139]),ai=Buffer.from([40,181,47,253]),ci=Math.max(oi.length,ai.length),li=Symbol("state"),ui=Symbol("writeEntry"),hi=Symbol("readEntry"),fi=Symbol("nextEntry"),pi=Symbol("processEntry"),mi=Symbol("extendedHeader"),gi=Symbol("globalExtendedHeader"),yi=Symbol("meta"),vi=Symbol("emitMeta"),_i=Symbol("buffer"),bi=Symbol("queue"),wi=Symbol("ended"),Ei=Symbol("emittedEnd"),Si=Symbol("emit"),Oi=Symbol("unzip"),Ri=Symbol("consumeChunk"),Ai=Symbol("consumeChunkSub"),xi=Symbol("consumeBody"),Ti=Symbol("consumeMeta"),ki=Symbol("consumeHeader"),Ci=Symbol("consuming"),Ii=Symbol("bufferConcat"),Ni=Symbol("maybeEnd"),Di=Symbol("writing"),Li=Symbol("aborted"),ji=Symbol("onDone"),Mi=Symbol("sawValidEntry"),Fi=Symbol("sawNullBlock"),Ui=Symbol("sawEOF"),Hi=Symbol("closeStream"),Rn=()=>!0,Vi=class extends vt.EventEmitter{file;strict;maxMetaEntrySize;filter;brotli;zstd;writable=!0;readable=!1;[bi]=[];[_i];[hi];[ui];[li]="begin";[yi]="";[mi];[gi];[wi]=!1;[Oi];[Li]=!1;[Mi];[Fi]=!1;[Ui]=!1;[Di]=!1;[Ci]=!1;[Ei]=!1;constructor(t={}){super(),this.file=t.file||"",this.on(ji,(()=>{(this[li]==="begin"||this[Mi]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")})),t.ondone?this.on(ji,t.ondone):this.on(ji,(()=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")})),this.strict=!!t.strict,this.maxMetaEntrySize=t.maxMetaEntrySize||ni,this.filter=typeof t.filter=="function"?t.filter:Rn;let u=t.file&&(t.file.endsWith(".tar.br")||t.file.endsWith(".tbr"));this.brotli=!(t.gzip||t.zstd)&&t.brotli!==void 0?t.brotli:u?void 0:!1;let p=t.file&&(t.file.endsWith(".tar.zst")||t.file.endsWith(".tzst"));this.zstd=!(t.gzip||t.brotli)&&t.zstd!==void 0?t.zstd:p?!0:void 0,this.on("end",(()=>this[Hi]())),typeof t.onwarn=="function"&&this.on("warn",t.onwarn),typeof t.onReadEntry=="function"&&this.on("entry",t.onReadEntry)}warn(t,u,p={}){Lt(this,t,u,p)}[ki](t,u){this[Mi]===void 0&&(this[Mi]=!1);let p;try{p=new Xs(t,u,this[mi],this[gi])}catch(t){return this.warn("TAR_ENTRY_INVALID",t)}if(p.nullBlock)this[Fi]?(this[Ui]=!0,this[li]==="begin"&&(this[li]="header"),this[Si]("eof")):(this[Fi]=!0,this[Si]("nullBlock"));else if(this[Fi]=!1,!p.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:p});else if(!p.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:p});else{let t=p.type;if(/^(Symbolic)?Link$/.test(t)&&!p.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:p});else if(!/^(Symbolic)?Link$/.test(t)&&!/^(Global)?ExtendedHeader$/.test(t)&&p.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:p});else{let t=this[ui]=new ii(p,this[mi],this[gi]);if(!this[Mi])if(t.remain){let o=()=>{t.invalid||(this[Mi]=!0)};t.on("end",o)}else this[Mi]=!0;t.meta?t.size>this.maxMetaEntrySize?(t.ignore=!0,this[Si]("ignoredEntry",t),this[li]="ignore",t.resume()):t.size>0&&(this[yi]="",t.on("data",(t=>this[yi]+=t)),this[li]="meta"):(this[mi]=void 0,t.ignore=t.ignore||!this.filter(t.path,t),t.ignore?(this[Si]("ignoredEntry",t),this[li]=t.remain?"ignore":"header",t.resume()):(t.remain?this[li]="body":(this[li]="header",t.end()),this[hi]?this[bi].push(t):(this[bi].push(t),this[fi]())))}}}[Hi](){queueMicrotask((()=>this.emit("close")))}[pi](t){let u=!0;if(!t)this[hi]=void 0,u=!1;else if(Array.isArray(t)){let[u,...p]=t;this.emit(u,...p)}else this[hi]=t,this.emit("entry",t),t.emittedEnd||(t.on("end",(()=>this[fi]())),u=!1);return u}[fi](){do{}while(this[pi](this[bi].shift()));if(!this[bi].length){let t=this[hi];!t||t.flowing||t.size===t.remain?this[Di]||this.emit("drain"):t.once("drain",(()=>this.emit("drain")))}}[xi](t,u){let p=this[ui];if(!p)throw new Error("attempt to consume body without entry??");let m=p.blockRemain??0,g=m>=t.length&&u===0?t:t.subarray(u,u+m);return p.write(g),p.blockRemain||(this[li]="header",this[ui]=void 0,p.end()),g.length}[Ti](t,u){let p=this[ui],m=this[xi](t,u);return!this[ui]&&p&&this[vi](p),m}[Si](t,u,p){!this[bi].length&&!this[hi]?this.emit(t,u,p):this[bi].push([t,u,p])}[vi](t){switch(this[Si]("meta",this[yi]),t.type){case"ExtendedHeader":case"OldExtendedHeader":this[mi]=ti.parse(this[yi],this[mi],!1);break;case"GlobalExtendedHeader":this[gi]=ti.parse(this[yi],this[gi],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":{let t=this[mi]??Object.create(null);this[mi]=t,t.path=this[yi].replace(/\0.*/,"");break}case"NextFileHasLongLinkpath":{let t=this[mi]||Object.create(null);this[mi]=t,t.linkpath=this[yi].replace(/\0.*/,"");break}default:throw new Error("unknown meta: "+t.type)}}abort(t){this[Li]=!0,this.emit("abort",t),this.warn("TAR_ABORT",t,{recoverable:!1})}write(t,u,p){if(typeof u=="function"&&(p=u,u=void 0),typeof t=="string"&&(t=Buffer.from(t,typeof u=="string"?u:"utf8")),this[Li])return p?.(),!1;if((this[Oi]===void 0||this.brotli===void 0&&this[Oi]===!1)&&t){if(this[_i]&&(t=Buffer.concat([this[_i],t]),this[_i]=void 0),t.length<ci)return this[_i]=t,p?.(),!0;for(let u=0;this[Oi]===void 0&&u<oi.length;u++)t[u]!==oi[u]&&(this[Oi]=!1);let u=!1;if(this[Oi]===!1&&this.zstd!==!1){u=!0;for(let p=0;p<ai.length;p++)if(t[p]!==ai[p]){u=!1;break}}let m=this.brotli===void 0&&!u;if(this[Oi]===!1&&m)if(t.length<512)if(this[wi])this.brotli=!0;else return this[_i]=t,p?.(),!0;else try{new Xs(t.subarray(0,512)),this.brotli=!1}catch{this.brotli=!0}if(this[Oi]===void 0||this[Oi]===!1&&(this.brotli||u)){let m=this[wi];this[wi]=!1,this[Oi]=this[Oi]===void 0?new js({}):u?new Ks({}):new Gs({}),this[Oi].on("data",(t=>this[Ri](t))),this[Oi].on("error",(t=>this.abort(t))),this[Oi].on("end",(()=>{this[wi]=!0,this[Ri]()})),this[Di]=!0;let g=!!this[Oi][m?"end":"write"](t);return this[Di]=!1,p?.(),g}}this[Di]=!0,this[Oi]?this[Oi].write(t):this[Ri](t),this[Di]=!1;let m=this[bi].length?!1:this[hi]?this[hi].flowing:!0;return!m&&!this[bi].length&&this[hi]?.once("drain",(()=>this.emit("drain"))),p?.(),m}[Ii](t){t&&!this[Li]&&(this[_i]=this[_i]?Buffer.concat([this[_i],t]):t)}[Ni](){if(this[wi]&&!this[Ei]&&!this[Li]&&!this[Ci]){this[Ei]=!0;let t=this[ui];if(t&&t.blockRemain){let u=this[_i]?this[_i].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${t.blockRemain} more bytes, only ${u} available)`,{entry:t}),this[_i]&&t.write(this[_i]),t.end()}this[Si](ji)}}[Ri](t){if(this[Ci]&&t)this[Ii](t);else if(!t&&!this[_i])this[Ni]();else if(t){if(this[Ci]=!0,this[_i]){this[Ii](t);let u=this[_i];this[_i]=void 0,this[Ai](u)}else this[Ai](t);for(;this[_i]&&this[_i]?.length>=512&&!this[Li]&&!this[Ui];){let t=this[_i];this[_i]=void 0,this[Ai](t)}this[Ci]=!1}(!this[_i]||this[wi])&&this[Ni]()}[Ai](t){let u=0,p=t.length;for(;u+512<=p&&!this[Li]&&!this[Ui];)switch(this[li]){case"begin":case"header":this[ki](t,u),u+=512;break;case"ignore":case"body":u+=this[xi](t,u);break;case"meta":u+=this[Ti](t,u);break;default:throw new Error("invalid state: "+this[li])}u<p&&(this[_i]?this[_i]=Buffer.concat([t.subarray(u),this[_i]]):this[_i]=t.subarray(u))}end(t,u,p){return typeof t=="function"&&(p=t,u=void 0,t=void 0),typeof u=="function"&&(p=u,u=void 0),typeof t=="string"&&(t=Buffer.from(t,u)),p&&this.once("finish",p),this[Li]||(this[Oi]?(t&&this[Oi].write(t),this[Oi].end()):(this[wi]=!0,(this.brotli===void 0||this.zstd===void 0)&&(t=t||Buffer.alloc(0)),t&&this.write(t),this[Ni]())),this}};var mt=t=>{let u=t.length-1,p=-1;for(;u>-1&&t.charAt(u)==="/";)p=u,u--;return p===-1?t:t.slice(0,p)};var _n=t=>{let u=t.onReadEntry;t.onReadEntry=u?t=>{u(t),t.resume()}:t=>t.resume()},Yi=(t,u)=>{let p=new Map(u.map((t=>[mt(t),!0]))),m=t.filter,r=(t,u="")=>{let m=u||(0,wt.parse)(t).root||".",g;if(t===m)g=!1;else{let u=p.get(t);u!==void 0?g=u:g=r((0,wt.dirname)(t),m)}return p.set(t,g),g};t.filter=m?(t,u)=>m(t,u)&&r(mt(t)):t=>r(mt(t))},On=u=>{let p=new Vi(u),m=u.file,g;try{g=t.openSync(m,"r");let y=t.fstatSync(g),v=u.maxReadSize||16*1024*1024;if(y.size<v){let u=Buffer.allocUnsafe(y.size),m=t.readSync(g,u,0,y.size,0);p.end(m===u.byteLength?u:u.subarray(0,m))}else{let u=0,m=Buffer.allocUnsafe(v);for(;u<y.size;){let y=t.readSync(g,m,0,v,u);if(y===0)break;u+=y,p.write(m.subarray(0,y))}p.end()}}finally{if(typeof g=="number")try{t.closeSync(g)}catch{}}},Tn=(u,p)=>{let m=new Vi(u),g=u.maxReadSize||16*1024*1024,y=u.file;return new Promise(((u,p)=>{m.on("error",p),m.on("end",u),t.stat(y,((t,u)=>{if(t)p(t);else{let t=new gs(y,{readSize:g,size:u.size});t.on("error",p),t.pipe(m)}}))}))},zi=K(On,Tn,(t=>new Vi(t)),(t=>new Vi(t)),((t,u)=>{u?.length&&Yi(t,u),t.noResume||_n(t)}));var Ki=(t,u,p)=>(t&=4095,p&&(t=(t|384)&-19),u&&(t&256&&(t|=64),t&32&&(t|=8),t&4&&(t|=1)),t);var{isAbsolute:Gi,parse:Wi}=u.win32,ce=t=>{let u="",p=Wi(t);for(;Gi(t)||p.root;){let m=t.charAt(0)==="/"&&t.slice(0,4)!=="//?/"?"/":p.root;t=t.slice(m.length),u+=m,p=Wi(t)}return[u,t]};var qi=["|","<",">","?",":"],Ji=qi.map((t=>String.fromCharCode(61440+t.charCodeAt(0)))),Zi=new Map(qi.map(((t,u)=>[t,Ji[u]]))),Xi=new Map(Ji.map(((t,u)=>[t,qi[u]]))),$i=t=>qi.reduce(((t,u)=>t.split(u).join(Zi.get(u))),t),Vs=t=>Ji.reduce(((t,u)=>t.split(u).join(Xi.get(u))),t);var tr=(t,u)=>u?(t=si(t).replace(/^\.(\/|$)/,""),mt(u)+"/"+t):si(t),Qi=16*1024*1024,tn=Symbol("process"),hn=Symbol("file"),dn=Symbol("directory"),fn=Symbol("symlink"),gn=Symbol("hardlink"),yn=Symbol("header"),bn=Symbol("read"),wn=Symbol("lstat"),En=Symbol("onlstat"),Sn=Symbol("onread"),An=Symbol("onreadlink"),xn=Symbol("openfile"),Nn=Symbol("onopenfile"),Dn=Symbol("close"),Ln=Symbol("mode"),Un=Symbol("awaitDrain"),Hn=Symbol("ondrain"),Vn=Symbol("prefix"),zn=class extends _r{path;portable;myuid=process.getuid&&process.getuid()||0;myuser=process.env.USER||"";maxReadSize;linkCache;statCache;preservePaths;cwd;strict;mtime;noPax;noMtime;prefix;fd;blockLen=0;blockRemain=0;buf;pos=0;remain=0;length=0;offset=0;win32;absolute;header;type;linkpath;stat;onWriteEntry;#y=!1;constructor(t,u={}){let p=re(u);super(),this.path=si(t),this.portable=!!p.portable,this.maxReadSize=p.maxReadSize||Qi,this.linkCache=p.linkCache||new Map,this.statCache=p.statCache||new Map,this.preservePaths=!!p.preservePaths,this.cwd=si(p.cwd||process.cwd()),this.strict=!!p.strict,this.noPax=!!p.noPax,this.noMtime=!!p.noMtime,this.mtime=p.mtime,this.prefix=p.prefix?si(p.prefix):void 0,this.onWriteEntry=p.onWriteEntry,typeof p.onwarn=="function"&&this.on("warn",p.onwarn);let m=!1;if(!this.preservePaths){let[t,u]=ce(this.path);t&&typeof u=="string"&&(this.path=u,m=t)}this.win32=!!p.win32||process.platform==="win32",this.win32&&(this.path=Vs(this.path.replace(/\\/g,"/")),t=t.replace(/\\/g,"/")),this.absolute=si(p.absolute||wt.resolve(this.cwd,t)),this.path===""&&(this.path="./"),m&&this.warn("TAR_ENTRY_INFO",`stripping ${m} from absolute path`,{entry:this,path:m+this.path});let g=this.statCache.get(this.absolute);g?this[En](g):this[wn]()}warn(t,u,p={}){return Lt(this,t,u,p)}emit(t,...u){return t==="error"&&(this.#y=!0),super.emit(t,...u)}[wn](){_t.lstat(this.absolute,((t,u)=>{if(t)return this.emit("error",t);this[En](u)}))}[En](t){this.statCache.set(this.absolute,t),this.stat=t,t.isFile()||(t.size=0),this.type=In(t),this.emit("stat",t),this[tn]()}[tn](){switch(this.type){case"File":return this[hn]();case"Directory":return this[dn]();case"SymbolicLink":return this[fn]();default:return this.end()}}[Ln](t){return Ki(t,this.type==="Directory",this.portable)}[Vn](t){return tr(t,this.prefix)}[yn](){if(!this.stat)throw new Error("cannot write header before stat");this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.onWriteEntry?.(this),this.header=new Xs({path:this[Vn](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Vn](this.linkpath):this.linkpath,mode:this[Ln](this.stat.mode),uid:this.portable?void 0:this.stat.uid,gid:this.portable?void 0:this.stat.gid,size:this.stat.size,mtime:this.noMtime?void 0:this.mtime||this.stat.mtime,type:this.type==="Unsupported"?void 0:this.type,uname:this.portable?void 0:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?void 0:this.stat.atime,ctime:this.portable?void 0:this.stat.ctime}),this.header.encode()&&!this.noPax&&super.write(new ti({atime:this.portable?void 0:this.header.atime,ctime:this.portable?void 0:this.header.ctime,gid:this.portable?void 0:this.header.gid,mtime:this.noMtime?void 0:this.mtime||this.header.mtime,path:this[Vn](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Vn](this.linkpath):this.linkpath,size:this.header.size,uid:this.portable?void 0:this.header.uid,uname:this.portable?void 0:this.header.uname,dev:this.portable?void 0:this.stat.dev,ino:this.portable?void 0:this.stat.ino,nlink:this.portable?void 0:this.stat.nlink}).encode());let t=this.header?.block;if(!t)throw new Error("failed to encode header");super.write(t)}[dn](){if(!this.stat)throw new Error("cannot create directory entry without stat");this.path.slice(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[yn](),this.end()}[fn](){_t.readlink(this.absolute,((t,u)=>{if(t)return this.emit("error",t);this[An](u)}))}[An](t){this.linkpath=si(t),this[yn](),this.end()}[gn](t){if(!this.stat)throw new Error("cannot create link entry without stat");this.type="Link",this.linkpath=si(wt.relative(this.cwd,t)),this.stat.size=0,this[yn](),this.end()}[hn](){if(!this.stat)throw new Error("cannot create file entry without stat");if(this.stat.nlink>1){let t=`${this.stat.dev}:${this.stat.ino}`,u=this.linkCache.get(t);if(u?.indexOf(this.cwd)===0)return this[gn](u);this.linkCache.set(t,this.absolute)}if(this[yn](),this.stat.size===0)return this.end();this[xn]()}[xn](){_t.open(this.absolute,"r",((t,u)=>{if(t)return this.emit("error",t);this[Nn](u)}))}[Nn](t){if(this.fd=t,this.#y)return this[Dn]();if(!this.stat)throw new Error("should stat before calling onopenfile");this.blockLen=512*Math.ceil(this.stat.size/512),this.blockRemain=this.blockLen;let u=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(u),this.offset=0,this.pos=0,this.remain=this.stat.size,this.length=this.buf.length,this[bn]()}[bn](){let{fd:t,buf:u,offset:p,length:m,pos:g}=this;if(t===void 0||u===void 0)throw new Error("cannot read file without first opening");_t.read(t,u,p,m,g,((t,u)=>{if(t)return this[Dn]((()=>this.emit("error",t)));this[Sn](u)}))}[Dn](t=()=>{}){this.fd!==void 0&&_t.close(this.fd,t)}[Sn](t){if(t<=0&&this.remain>0){let t=Object.assign(new Error("encountered unexpected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[Dn]((()=>this.emit("error",t)))}if(t>this.remain){let t=Object.assign(new Error("did not encounter expected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[Dn]((()=>this.emit("error",t)))}if(!this.buf)throw new Error("should have created buffer prior to reading");if(t===this.remain)for(let u=t;u<this.length&&t<this.blockRemain;u++)this.buf[u+this.offset]=0,t++,this.remain++;let u=this.offset===0&&t===this.buf.length?this.buf:this.buf.subarray(this.offset,this.offset+t);this.write(u)?this[Hn]():this[Un]((()=>this[Hn]()))}[Un](t){this.once("drain",t)}write(t,u,p){if(typeof u=="function"&&(p=u,u=void 0),typeof t=="string"&&(t=Buffer.from(t,typeof u=="string"?u:"utf8")),this.blockRemain<t.length){let t=Object.assign(new Error("writing more data than expected"),{path:this.absolute});return this.emit("error",t)}return this.remain-=t.length,this.blockRemain-=t.length,this.pos+=t.length,this.offset+=t.length,super.write(t,null,p)}[Hn](){if(!this.remain)return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),this[Dn]((t=>t?this.emit("error",t):this.end()));if(!this.buf)throw new Error("buffer lost somehow in ONDRAIN");this.offset>=this.length&&(this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length)),this.offset=0),this.length=this.buf.length-this.offset,this[bn]()}},Gn=class extends zn{sync=!0;[wn](){this[En](_t.lstatSync(this.absolute))}[fn](){this[An](_t.readlinkSync(this.absolute))}[xn](){this[Nn](_t.openSync(this.absolute,"r"))}[bn](){let t=!0;try{let{fd:u,buf:p,offset:m,length:g,pos:y}=this;if(u===void 0||p===void 0)throw new Error("fd and buf must be set in READ method");let v=_t.readSync(u,p,m,g,y);this[Sn](v),t=!1}finally{if(t)try{this[Dn]((()=>{}))}catch{}}}[Un](t){t()}[Dn](t=()=>{}){this.fd!==void 0&&_t.closeSync(this.fd),t()}},Wn=class extends _r{blockLen=0;blockRemain=0;buf=0;pos=0;remain=0;length=0;preservePaths;portable;strict;noPax;noMtime;readEntry;type;prefix;path;mode;uid;gid;uname;gname;header;mtime;atime;ctime;linkpath;size;onWriteEntry;warn(t,u,p={}){return Lt(this,t,u,p)}constructor(t,u={}){let p=re(u);super(),this.preservePaths=!!p.preservePaths,this.portable=!!p.portable,this.strict=!!p.strict,this.noPax=!!p.noPax,this.noMtime=!!p.noMtime,this.onWriteEntry=p.onWriteEntry,this.readEntry=t;let{type:m}=t;if(m==="Unsupported")throw new Error("writing entry that should be ignored");this.type=m,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.prefix=p.prefix,this.path=si(t.path),this.mode=t.mode!==void 0?this[Ln](t.mode):void 0,this.uid=this.portable?void 0:t.uid,this.gid=this.portable?void 0:t.gid,this.uname=this.portable?void 0:t.uname,this.gname=this.portable?void 0:t.gname,this.size=t.size,this.mtime=this.noMtime?void 0:p.mtime||t.mtime,this.atime=this.portable?void 0:t.atime,this.ctime=this.portable?void 0:t.ctime,this.linkpath=t.linkpath!==void 0?si(t.linkpath):void 0,typeof p.onwarn=="function"&&this.on("warn",p.onwarn);let g=!1;if(!this.preservePaths){let[t,u]=ce(this.path);t&&typeof u=="string"&&(this.path=u,g=t)}this.remain=t.size,this.blockRemain=t.startBlockSize,this.onWriteEntry?.(this),this.header=new Xs({path:this[Vn](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Vn](this.linkpath):this.linkpath,mode:this.mode,uid:this.portable?void 0:this.uid,gid:this.portable?void 0:this.gid,size:this.size,mtime:this.noMtime?void 0:this.mtime,type:this.type,uname:this.portable?void 0:this.uname,atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime}),g&&this.warn("TAR_ENTRY_INFO",`stripping ${g} from absolute path`,{entry:this,path:g+this.path}),this.header.encode()&&!this.noPax&&super.write(new ti({atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime,gid:this.portable?void 0:this.gid,mtime:this.noMtime?void 0:this.mtime,path:this[Vn](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Vn](this.linkpath):this.linkpath,size:this.size,uid:this.portable?void 0:this.uid,uname:this.portable?void 0:this.uname,dev:this.portable?void 0:this.readEntry.dev,ino:this.portable?void 0:this.readEntry.ino,nlink:this.portable?void 0:this.readEntry.nlink}).encode());let y=this.header?.block;if(!y)throw new Error("failed to encode header");super.write(y),t.pipe(this)}[Vn](t){return tr(t,this.prefix)}[Ln](t){return Ki(t,this.type==="Directory",this.portable)}write(t,u,p){typeof u=="function"&&(p=u,u=void 0),typeof t=="string"&&(t=Buffer.from(t,typeof u=="string"?u:"utf8"));let m=t.length;if(m>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=m,super.write(t,p)}end(t,u,p){return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),typeof t=="function"&&(p=t,u=void 0,t=void 0),typeof u=="function"&&(p=u,u=void 0),typeof t=="string"&&(t=Buffer.from(t,u??"utf8")),p&&this.once("finish",p),t?super.end(t,p):super.end(p),this}},In=t=>t.isFile()?"File":t.isDirectory()?"Directory":t.isSymbolicLink()?"SymbolicLink":"Unsupported";var qn=class s{tail;head;length=0;static create(t=[]){return new s(t)}constructor(t=[]){for(let u of t)this.push(u)}*[Symbol.iterator](){for(let t=this.head;t;t=t.next)yield t.value}removeNode(t){if(t.list!==this)throw new Error("removing node which does not belong to this list");let u=t.next,p=t.prev;return u&&(u.prev=p),p&&(p.next=u),t===this.head&&(this.head=u),t===this.tail&&(this.tail=p),this.length--,t.next=void 0,t.prev=void 0,t.list=void 0,u}unshiftNode(t){if(t===this.head)return;t.list&&t.list.removeNode(t);let u=this.head;t.list=this,t.next=u,u&&(u.prev=t),this.head=t,this.tail||(this.tail=t),this.length++}pushNode(t){if(t===this.tail)return;t.list&&t.list.removeNode(t);let u=this.tail;t.list=this,t.prev=u,u&&(u.next=t),this.tail=t,this.head||(this.head=t),this.length++}push(...t){for(let u=0,p=t.length;u<p;u++)Fn(this,t[u]);return this.length}unshift(...t){for(var u=0,p=t.length;u<p;u++)kn(this,t[u]);return this.length}pop(){if(!this.tail)return;let t=this.tail.value,u=this.tail;return this.tail=this.tail.prev,this.tail?this.tail.next=void 0:this.head=void 0,u.list=void 0,this.length--,t}shift(){if(!this.head)return;let t=this.head.value,u=this.head;return this.head=this.head.next,this.head?this.head.prev=void 0:this.tail=void 0,u.list=void 0,this.length--,t}forEach(t,u){u=u||this;for(let p=this.head,m=0;p;m++)t.call(u,p.value,m,this),p=p.next}forEachReverse(t,u){u=u||this;for(let p=this.tail,m=this.length-1;p;m--)t.call(u,p.value,m,this),p=p.prev}get(t){let u=0,p=this.head;for(;p&&u<t;u++)p=p.next;if(u===t&&p)return p.value}getReverse(t){let u=0,p=this.tail;for(;p&&u<t;u++)p=p.prev;if(u===t&&p)return p.value}map(t,u){u=u||this;let p=new s;for(let m=this.head;m;)p.push(t.call(u,m.value,this)),m=m.next;return p}mapReverse(t,u){u=u||this;var p=new s;for(let m=this.tail;m;)p.push(t.call(u,m.value,this)),m=m.prev;return p}reduce(t,u){let p,m=this.head;if(arguments.length>1)p=u;else if(this.head)m=this.head.next,p=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var g=0;m;g++)p=t(p,m.value,g),m=m.next;return p}reduceReverse(t,u){let p,m=this.tail;if(arguments.length>1)p=u;else if(this.tail)m=this.tail.prev,p=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(let u=this.length-1;m;u--)p=t(p,m.value,u),m=m.prev;return p}toArray(){let t=new Array(this.length);for(let u=0,p=this.head;p;u++)t[u]=p.value,p=p.next;return t}toArrayReverse(){let t=new Array(this.length);for(let u=0,p=this.tail;p;u++)t[u]=p.value,p=p.prev;return t}slice(t=0,u=this.length){u<0&&(u+=this.length),t<0&&(t+=this.length);let p=new s;if(u<t||u<0)return p;t<0&&(t=0),u>this.length&&(u=this.length);let m=this.head,g=0;for(g=0;m&&g<t;g++)m=m.next;for(;m&&g<u;g++,m=m.next)p.push(m.value);return p}sliceReverse(t=0,u=this.length){u<0&&(u+=this.length),t<0&&(t+=this.length);let p=new s;if(u<t||u<0)return p;t<0&&(t=0),u>this.length&&(u=this.length);let m=this.length,g=this.tail;for(;g&&m>u;m--)g=g.prev;for(;g&&m>t;m--,g=g.prev)p.push(g.value);return p}splice(t,u=0,...p){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);let m=this.head;for(let u=0;m&&u<t;u++)m=m.next;let g=[];for(let t=0;m&&t<u;t++)g.push(m.value),m=this.removeNode(m);m?m!==this.tail&&(m=m.prev):m=this.tail;for(let t of p)m=Cn(this,m,t);return g}reverse(){let t=this.head,u=this.tail;for(let u=t;u;u=u.prev){let t=u.prev;u.prev=u.next,u.next=t}return this.head=u,this.tail=t,this}};function Cn(t,u,p){let m=u,g=u?u.next:t.head,y=new Kn(p,m,g,t);return y.next===void 0&&(t.tail=y),y.prev===void 0&&(t.head=y),t.length++,y}function Fn(t,u){t.tail=new Kn(u,t.tail,void 0,t),t.head||(t.head=t.tail),t.length++}function kn(t,u){t.head=new Kn(u,void 0,t.head,t),t.tail||(t.tail=t.head),t.length++}var Kn=class{list;next;prev;value;constructor(t,u,p,m){this.list=m,this.value=t,u?(u.next=this,this.prev=u):this.prev=void 0,p?(p.prev=this,this.next=p):this.next=void 0}};var Yn=class{path;absolute;entry;stat;readdir;pending=!1;ignore=!1;piped=!1;constructor(t,u){this.path=t||"./",this.absolute=u}},Jn=Buffer.alloc(1024),Zn=Symbol("onStat"),to=Symbol("ended"),ro=Symbol("queue"),so=Symbol("current"),io=Symbol("process"),lo=Symbol("processing"),go=Symbol("processJob"),yo=Symbol("jobs"),vo=Symbol("jobDone"),_o=Symbol("addFSEntry"),bo=Symbol("addTarEntry"),Eo=Symbol("stat"),So=Symbol("readdir"),$o=Symbol("onreaddir"),Oo=Symbol("pipe"),Ro=Symbol("entry"),Po=Symbol("entryOpt"),Ao=Symbol("writeEntryClass"),xo=Symbol("write"),To=Symbol("ondrain"),ko=class extends _r{sync=!1;opt;cwd;maxReadSize;preservePaths;strict;noPax;prefix;linkCache;statCache;file;portable;zip;readdirCache;noDirRecurse;follow;noMtime;mtime;filter;jobs;[Ao];onWriteEntry;[ro];[yo]=0;[lo]=!1;[to]=!1;constructor(t={}){if(super(),this.opt=t,this.file=t.file||"",this.cwd=t.cwd||process.cwd(),this.maxReadSize=t.maxReadSize,this.preservePaths=!!t.preservePaths,this.strict=!!t.strict,this.noPax=!!t.noPax,this.prefix=si(t.prefix||""),this.linkCache=t.linkCache||new Map,this.statCache=t.statCache||new Map,this.readdirCache=t.readdirCache||new Map,this.onWriteEntry=t.onWriteEntry,this[Ao]=zn,typeof t.onwarn=="function"&&this.on("warn",t.onwarn),this.portable=!!t.portable,t.gzip||t.brotli||t.zstd){if((t.gzip?1:0)+(t.brotli?1:0)+(t.zstd?1:0)>1)throw new TypeError("gzip, brotli, zstd are mutually exclusive");if(t.gzip&&(typeof t.gzip!="object"&&(t.gzip={}),this.portable&&(t.gzip.portable=!0),this.zip=new Ls(t.gzip)),t.brotli&&(typeof t.brotli!="object"&&(t.brotli={}),this.zip=new Hs(t.brotli)),t.zstd&&(typeof t.zstd!="object"&&(t.zstd={}),this.zip=new qs(t.zstd)),!this.zip)throw new Error("impossible");let u=this.zip;u.on("data",(t=>super.write(t))),u.on("end",(()=>super.end())),u.on("drain",(()=>this[To]())),this.on("resume",(()=>u.resume()))}else this.on("drain",this[To]);this.noDirRecurse=!!t.noDirRecurse,this.follow=!!t.follow,this.noMtime=!!t.noMtime,t.mtime&&(this.mtime=t.mtime),this.filter=typeof t.filter=="function"?t.filter:()=>!0,this[ro]=new qn,this[yo]=0,this.jobs=Number(t.jobs)||4,this[lo]=!1,this[to]=!1}[xo](t){return super.write(t)}add(t){return this.write(t),this}end(t,u,p){return typeof t=="function"&&(p=t,t=void 0),typeof u=="function"&&(p=u,u=void 0),t&&this.add(t),this[to]=!0,this[io](),p&&p(),this}write(t){if(this[to])throw new Error("write after end");return t instanceof ii?this[bo](t):this[_o](t),this.flowing}[bo](t){let u=si(wt.resolve(this.cwd,t.path));if(!this.filter(t.path,t))t.resume();else{let p=new Yn(t.path,u);p.entry=new Wn(t,this[Po](p)),p.entry.on("end",(()=>this[vo](p))),this[yo]+=1,this[ro].push(p)}this[io]()}[_o](t){let u=si(wt.resolve(this.cwd,t));this[ro].push(new Yn(t,u)),this[io]()}[Eo](t){t.pending=!0,this[yo]+=1;let u=this.follow?"stat":"lstat";_t[u](t.absolute,((u,p)=>{t.pending=!1,this[yo]-=1,u?this.emit("error",u):this[Zn](t,p)}))}[Zn](t,u){this.statCache.set(t.absolute,u),t.stat=u,this.filter(t.path,u)?u.isFile()&&u.nlink>1&&t===this[so]&&!this.linkCache.get(`${u.dev}:${u.ino}`)&&!this.sync&&this[go](t):t.ignore=!0,this[io]()}[So](t){t.pending=!0,this[yo]+=1,_t.readdir(t.absolute,((u,p)=>{if(t.pending=!1,this[yo]-=1,u)return this.emit("error",u);this[$o](t,p)}))}[$o](t,u){this.readdirCache.set(t.absolute,u),t.readdir=u,this[io]()}[io](){if(!this[lo]){this[lo]=!0;for(let t=this[ro].head;t&&this[yo]<this.jobs;t=t.next)if(this[go](t.value),t.value.ignore){let u=t.next;this[ro].removeNode(t),t.next=u}this[lo]=!1,this[to]&&!this[ro].length&&this[yo]===0&&(this.zip?this.zip.end(Jn):(super.write(Jn),super.end()))}}get[so](){return this[ro]&&this[ro].head&&this[ro].head.value}[vo](t){this[ro].shift(),this[yo]-=1,this[io]()}[go](t){if(!t.pending){if(t.entry){t===this[so]&&!t.piped&&this[Oo](t);return}if(!t.stat){let u=this.statCache.get(t.absolute);u?this[Zn](t,u):this[Eo](t)}if(t.stat&&!t.ignore){if(!this.noDirRecurse&&t.stat.isDirectory()&&!t.readdir){let u=this.readdirCache.get(t.absolute);if(u?this[$o](t,u):this[So](t),!t.readdir)return}if(t.entry=this[Ro](t),!t.entry){t.ignore=!0;return}t===this[so]&&!t.piped&&this[Oo](t)}}}[Po](t){return{onwarn:(t,u,p)=>this.warn(t,u,p),noPax:this.noPax,cwd:this.cwd,absolute:t.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime,prefix:this.prefix,onWriteEntry:this.onWriteEntry}}[Ro](t){this[yo]+=1;try{return new this[Ao](t.path,this[Po](t)).on("end",(()=>this[vo](t))).on("error",(t=>this.emit("error",t)))}catch(t){this.emit("error",t)}}[To](){this[so]&&this[so].entry&&this[so].entry.resume()}[Oo](t){t.piped=!0,t.readdir&&t.readdir.forEach((u=>{let p=t.path,m=p==="./"?"":p.replace(/\/*$/,"/");this[_o](m+u)}));let u=t.entry,p=this.zip;if(!u)throw new Error("cannot pipe without source");p?u.on("data",(t=>{p.write(t)||u.pause()})):u.on("data",(t=>{super.write(t)||u.pause()}))}pause(){return this.zip&&this.zip.pause(),super.pause()}warn(t,u,p={}){Lt(this,t,u,p)}},Co=class extends ko{sync=!0;constructor(t){super(t),this[Ao]=Gn}pause(){}resume(){}[Eo](t){let u=this.follow?"statSync":"lstatSync";this[Zn](t,_t[u](t.absolute))}[So](t){this[$o](t,_t.readdirSync(t.absolute))}[Oo](t){let u=t.entry,p=this.zip;if(t.readdir&&t.readdir.forEach((u=>{let p=t.path,m=p==="./"?"":p.replace(/\/*$/,"/");this[_o](m+u)})),!u)throw new Error("Cannot pipe without source");p?u.on("data",(t=>{p.write(t)})):u.on("data",(t=>{super[xo](t)}))}};var vn=(t,u)=>{let p=new Co(t),m=new _s(t.file,{mode:t.mode||438});p.pipe(m),hr(p,u)},Mn=(t,u)=>{let p=new ko(t),m=new vs(t.file,{mode:t.mode||438});p.pipe(m);let g=new Promise(((t,u)=>{m.on("error",u),m.on("close",t),p.on("error",u)}));return ar(p,u),g},hr=(t,p)=>{p.forEach((p=>{p.charAt(0)==="@"?zi({file:u.resolve(t.cwd,p.slice(1)),sync:!0,noResume:!0,onReadEntry:u=>t.add(u)}):t.add(p)})),t.end()},ar=async(t,p)=>{for(let m=0;m<p.length;m++){let g=String(p[m]);g.charAt(0)==="@"?await zi({file:u.resolve(String(t.cwd),g.slice(1)),noResume:!0,onReadEntry:u=>{t.add(u)}}):t.add(g)}t.end()},Bn=(t,u)=>{let p=new Co(t);return hr(p,u),p},Pn=(t,u)=>{let p=new ko(t);return ar(p,u),p},Io=K(vn,Mn,Bn,Pn,((t,u)=>{if(!u?.length)throw new TypeError("no paths specified to add to archive")}));var No=process.env.__FAKE_PLATFORM__||process.platform,Do=No==="win32",{O_CREAT:Lo,O_TRUNC:jo,O_WRONLY:Mo}=_t.constants,Fo=Number(process.env.__FAKE_FS_O_FILENAME__)||_t.constants.UV_FS_O_FILEMAP||0,Uo=Do&&!!Fo,Bo=512*1024,Ho=Fo|jo|Lo|Mo,Vo=Uo?t=>t<Bo?Ho:"w":()=>"w";var cs=(u,p,m)=>{try{return t.lchownSync(u,p,m)}catch(t){if(t?.code!=="ENOENT")throw t}},di=(u,p,m,g)=>{t.lchown(u,p,m,(t=>{g(t&&t?.code!=="ENOENT"?t:null)}))},$n=(t,p,m,g,y)=>{if(p.isDirectory())index_min_fs(u.resolve(t,p.name),m,g,(v=>{if(v)return y(v);let b=u.resolve(t,p.name);di(b,m,g,y)}));else{let v=u.resolve(t,p.name);di(v,m,g,y)}},index_min_fs=(u,p,m,g)=>{t.readdir(u,{withFileTypes:!0},((t,y)=>{if(t){if(t.code==="ENOENT")return g();if(t.code!=="ENOTDIR"&&t.code!=="ENOTSUP")return g(t)}if(t||!y.length)return di(u,p,m,g);let v=y.length,b=null,a=t=>{if(!b){if(t)return g(b=t);if(--v===0)return di(u,p,m,g)}};for(let t of y)$n(u,t,p,m,a)}))},Xn=(t,p,m,g)=>{p.isDirectory()&&ds(u.resolve(t,p.name),m,g),cs(u.resolve(t,p.name),m,g)},ds=(u,p,m)=>{let g;try{g=t.readdirSync(u,{withFileTypes:!0})}catch(t){let g=t;if(g?.code==="ENOENT")return;if(g?.code==="ENOTDIR"||g?.code==="ENOTSUP")return cs(u,p,m);throw g}for(let t of g)Xn(u,t,p,m);return cs(u,p,m)};var zo=class extends Error{path;code;syscall="chdir";constructor(t,u){super(`${u}: Cannot cd into '${t}'`),this.path=t,this.code=u}get name(){return"CwdError"}};var Go=class extends Error{path;symlink;syscall="symlink";code="TAR_SYMLINK_ERROR";constructor(t,u){super("TAR_SYMLINK_ERROR: Cannot extract through symbolic link"),this.symlink=t,this.path=u}get name(){return"SymlinkError"}};var jn=(u,p)=>{t.stat(u,((t,m)=>{(t||!m.isDirectory())&&(t=new zo(u,t?.code||"ENOTDIR")),p(t)}))},fr=(p,m,g)=>{p=si(p);let y=m.umask??18,v=m.mode|448,b=(v&y)!==0,w=m.uid,E=m.gid,$=typeof w=="number"&&typeof E=="number"&&(w!==m.processUid||E!==m.processGid),O=m.preserve,R=m.unlink,P=si(m.cwd),S=(u,m)=>{u?g(u):m&&$?index_min_fs(m,w,E,(t=>S(t))):b?t.chmod(p,v,g):g()};if(p===P)return jn(p,S);if(O)return ot.mkdir(p,{mode:v,recursive:!0}).then((t=>S(null,t??void 0)),S);let A=si(u.relative(P,p)).split("/");us(P,A,v,R,P,void 0,S)},us=(p,m,g,y,v,b,w)=>{if(!m.length)return w(null,b);let E=m.shift(),$=si(u.resolve(p+"/"+E));t.mkdir($,g,dr($,m,g,y,v,b,w))},dr=(u,p,m,g,y,v,b)=>w=>{w?t.lstat(u,((E,$)=>{if(E)E.path=E.path&&si(E.path),b(E);else if($.isDirectory())us(u,p,m,g,y,v,b);else if(g)t.unlink(u,(w=>{if(w)return b(w);t.mkdir(u,m,dr(u,p,m,g,y,v,b))}));else{if($.isSymbolicLink())return b(new Go(u,u+"/"+p.join("/")));b(w)}})):(v=v||u,us(u,p,m,g,y,v,b))},Qn=u=>{let p=!1,m;try{p=t.statSync(u).isDirectory()}catch(t){m=t?.code}finally{if(!p)throw new zo(u,m??"ENOTDIR")}},ur=(p,m)=>{p=si(p);let g=m.umask??18,y=m.mode|448,v=(y&g)!==0,b=m.uid,w=m.gid,E=typeof b=="number"&&typeof w=="number"&&(b!==m.processUid||w!==m.processGid),$=m.preserve,O=m.unlink,R=si(m.cwd),d=u=>{u&&E&&ds(u,b,w),v&&t.chmodSync(p,y)};if(p===R)return Qn(R),d();if($)return d(t.mkdirSync(p,{mode:y,recursive:!0})??void 0);let P=si(u.relative(R,p)).split("/"),A;for(let p=P.shift(),m=R;p&&(m+="/"+p);p=P.shift()){m=si(u.resolve(m));try{t.mkdirSync(m,y),A=A||m}catch{let u=t.lstatSync(m);if(u.isDirectory())continue;if(O){t.unlinkSync(m),t.mkdirSync(m,y),A=A||m;continue}else if(u.isSymbolicLink())return new Go(m,m+"/"+P.join("/"))}}return d(A)};var Wo=Object.create(null),qo=1e4,Ko=new Set,pr=t=>{Ko.has(t)?Ko.delete(t):Wo[t]=t.normalize("NFD").toLocaleLowerCase("en").toLocaleUpperCase("en"),Ko.add(t);let u=Wo[t],p=Ko.size-qo;if(p>qo/10){for(let t of Ko)if(Ko.delete(t),delete Wo[t],--p<=0)break}return u};var Yo=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,Jo=Yo==="win32",eo=t=>t.split("/").slice(0,-1).reduce(((t,p)=>{let m=t[t.length-1];return m!==void 0&&(p=(0,u.join)(m,p)),t.push(p||"/"),t}),[]),Zo=class{#y=new Map;#v=new Map;#_=new Set;reserve(t,p){t=Jo?["win32 parallelization disabled"]:t.map((t=>mt((0,u.join)(pr(t)))));let m=new Set(t.map((t=>eo(t))).reduce(((t,u)=>t.concat(u))));this.#v.set(p,{dirs:m,paths:t});for(let u of t){let t=this.#y.get(u);t?t.push(p):this.#y.set(u,[p])}for(let t of m){let u=this.#y.get(t);if(!u)this.#y.set(t,[new Set([p])]);else{let t=u[u.length-1];t instanceof Set?t.add(p):u.push(new Set([p]))}}return this.#w(p)}#b(t){let u=this.#v.get(t);if(!u)throw new Error("function does not have any path reservations");return{paths:u.paths.map((t=>this.#y.get(t))),dirs:[...u.dirs].map((t=>this.#y.get(t)))}}check(t){let{paths:u,dirs:p}=this.#b(t);return u.every((u=>u&&u[0]===t))&&p.every((u=>u&&u[0]instanceof Set&&u[0].has(t)))}#w(t){return this.#_.has(t)||!this.check(t)?!1:(this.#_.add(t),t((()=>this.#E(t))),!0)}#E(t){if(!this.#_.has(t))return!1;let u=this.#v.get(t);if(!u)throw new Error("invalid reservation");let{paths:p,dirs:m}=u,g=new Set;for(let u of p){let p=this.#y.get(u);if(!p||p?.[0]!==t)continue;let m=p[1];if(!m){this.#y.delete(u);continue}if(p.shift(),typeof m=="function")g.add(m);else for(let t of m)g.add(t)}for(let u of m){let p=this.#y.get(u),m=p?.[0];if(!(!p||!(m instanceof Set)))if(m.size===1&&p.length===1){this.#y.delete(u);continue}else if(m.size===1){p.shift();let t=p[0];typeof t=="function"&&g.add(t)}else m.delete(t)}return this.#_.delete(t),g.forEach((t=>this.#w(t))),!0}};var wr=()=>process.umask();var Xo=Symbol("onEntry"),Qo=Symbol("checkFs"),ea=Symbol("checkFs2"),ta=Symbol("isReusable"),ra=Symbol("makeFs"),sa=Symbol("file"),ia=Symbol("directory"),na=Symbol("link"),oa=Symbol("symlink"),aa=Symbol("hardlink"),ca=Symbol("ensureNoSymlink"),la=Symbol("unsupported"),ua=Symbol("checkPath"),ha=Symbol("stripAbsolutePath"),da=Symbol("mkdir"),fa=Symbol("onError"),pa=Symbol("pending"),ma=Symbol("pend"),ga=Symbol("unpend"),ya=Symbol("ended"),va=Symbol("maybeClose"),_a=Symbol("skip"),ba=Symbol("doChown"),wa=Symbol("uid"),Ea=Symbol("gid"),Sa=Symbol("checkedCwd"),$a=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,Oa=$a==="win32",Ra=1024,no=(u,p)=>{if(!Oa)return t.unlink(u,p);let m=u+".DELETE."+(0,I.randomBytes)(16).toString("hex");t.rename(u,m,(u=>{if(u)return p(u);t.unlink(m,p)}))},oo=u=>{if(!Oa)return t.unlinkSync(u);let p=u+".DELETE."+(0,I.randomBytes)(16).toString("hex");t.renameSync(u,p),t.unlinkSync(p)},Tr=(t,u,p)=>t!==void 0&&t===t>>>0?t:u!==void 0&&u===u>>>0?u:p,Pa=class extends Vi{[ya]=!1;[Sa]=!1;[pa]=0;reservations=new Zo;transform;writable=!0;readable=!1;uid;gid;setOwner;preserveOwner;processGid;processUid;maxDepth;forceChown;win32;newer;keep;noMtime;preservePaths;unlink;cwd;strip;processUmask;umask;dmode;fmode;chmod;constructor(t={}){if(t.ondone=()=>{this[ya]=!0,this[va]()},super(t),this.transform=t.transform,this.chmod=!!t.chmod,typeof t.uid=="number"||typeof t.gid=="number"){if(typeof t.uid!="number"||typeof t.gid!="number")throw new TypeError("cannot set owner without number uid and gid");if(t.preserveOwner)throw new TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=t.uid,this.gid=t.gid,this.setOwner=!0}else this.uid=void 0,this.gid=void 0,this.setOwner=!1;t.preserveOwner===void 0&&typeof t.uid!="number"?this.preserveOwner=!!(process.getuid&&process.getuid()===0):this.preserveOwner=!!t.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():void 0,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():void 0,this.maxDepth=typeof t.maxDepth=="number"?t.maxDepth:Ra,this.forceChown=t.forceChown===!0,this.win32=!!t.win32||Oa,this.newer=!!t.newer,this.keep=!!t.keep,this.noMtime=!!t.noMtime,this.preservePaths=!!t.preservePaths,this.unlink=!!t.unlink,this.cwd=si(u.resolve(t.cwd||process.cwd())),this.strip=Number(t.strip)||0,this.processUmask=this.chmod?typeof t.processUmask=="number"?t.processUmask:wr():0,this.umask=typeof t.umask=="number"?t.umask:this.processUmask,this.dmode=t.dmode||511&~this.umask,this.fmode=t.fmode||438&~this.umask,this.on("entry",(t=>this[Xo](t)))}warn(t,u,p={}){return(t==="TAR_BAD_ARCHIVE"||t==="TAR_ABORT")&&(p.recoverable=!1),super.warn(t,u,p)}[va](){this[ya]&&this[pa]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"))}[ha](t,p){let m=t[p],{type:g}=t;if(!m||this.preservePaths)return!0;let[y,v]=ce(m),b=v.replace(/\\/g,"/").split("/");if(b.includes("..")||Oa&&/^[a-z]:\.\.$/i.test(b[0]??"")){if(p==="path"||g==="Link")return this.warn("TAR_ENTRY_ERROR",`${p} contains '..'`,{entry:t,[p]:m}),!1;{let g=u.posix.dirname(t.path),y=u.posix.normalize(u.posix.join(g,b.join("/")));if(y.startsWith("../")||y==="..")return this.warn("TAR_ENTRY_ERROR",`${p} escapes extraction directory`,{entry:t,[p]:m}),!1}}return y&&(t[p]=String(v),this.warn("TAR_ENTRY_INFO",`stripping ${y} from absolute ${p}`,{entry:t,[p]:m})),!0}[ua](t){let p=si(t.path),m=p.split("/");if(this.strip){if(m.length<this.strip)return!1;if(t.type==="Link"){let u=si(String(t.linkpath)).split("/");if(u.length>=this.strip)t.linkpath=u.slice(this.strip).join("/");else return!1}m.splice(0,this.strip),t.path=m.join("/")}if(isFinite(this.maxDepth)&&m.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:t,path:p,depth:m.length,maxDepth:this.maxDepth}),!1;if(!this[ha](t,"path")||!this[ha](t,"linkpath"))return!1;if(u.isAbsolute(t.path)?t.absolute=si(u.resolve(t.path)):t.absolute=si(u.resolve(this.cwd,t.path)),!this.preservePaths&&typeof t.absolute=="string"&&t.absolute.indexOf(this.cwd+"/")!==0&&t.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:t,path:si(t.path),resolvedPath:t.absolute,cwd:this.cwd}),!1;if(t.absolute===this.cwd&&t.type!=="Directory"&&t.type!=="GNUDumpDir")return!1;if(this.win32){let{root:p}=u.win32.parse(String(t.absolute));t.absolute=p+$i(String(t.absolute).slice(p.length));let{root:m}=u.win32.parse(t.path);t.path=m+$i(t.path.slice(m.length))}return!0}[Xo](t){if(!this[ua](t))return t.resume();switch(N.equal(typeof t.absolute,"string"),t.type){case"Directory":case"GNUDumpDir":t.mode&&(t.mode=t.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[Qo](t);default:return this[la](t)}}[fa](t,u){t.name==="CwdError"?this.emit("error",t):(this.warn("TAR_ENTRY_ERROR",t,{entry:u}),this[ga](),u.resume())}[da](t,u,p){fr(si(t),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:u},p)}[ba](t){return this.forceChown||this.preserveOwner&&(typeof t.uid=="number"&&t.uid!==this.processUid||typeof t.gid=="number"&&t.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[wa](t){return Tr(this.uid,t.uid,this.processUid)}[Ea](t){return Tr(this.gid,t.gid,this.processGid)}[sa](u,p){let m=typeof u.mode=="number"?u.mode&4095:this.fmode,g=new vs(String(u.absolute),{flags:Vo(u.size),mode:m,autoClose:!1});g.on("error",(m=>{g.fd&&t.close(g.fd,(()=>{})),g.write=()=>!0,this[fa](m,u),p()}));let y=1,o=m=>{if(m){g.fd&&t.close(g.fd,(()=>{})),this[fa](m,u),p();return}--y===0&&g.fd!==void 0&&t.close(g.fd,(t=>{t?this[fa](t,u):this[ga](),p()}))};g.on("finish",(()=>{let p=String(u.absolute),m=g.fd;if(typeof m=="number"&&u.mtime&&!this.noMtime){y++;let g=u.atime||new Date,v=u.mtime;t.futimes(m,g,v,(u=>u?t.utimes(p,g,v,(t=>o(t&&u))):o()))}if(typeof m=="number"&&this[ba](u)){y++;let g=this[wa](u),v=this[Ea](u);typeof g=="number"&&typeof v=="number"&&t.fchown(m,g,v,(u=>u?t.chown(p,g,v,(t=>o(t&&u))):o()))}o()}));let v=this.transform&&this.transform(u)||u;v!==u&&(v.on("error",(t=>{this[fa](t,u),p()})),u.pipe(v)),v.pipe(g)}[ia](u,p){let m=typeof u.mode=="number"?u.mode&4095:this.dmode;this[da](String(u.absolute),m,(m=>{if(m){this[fa](m,u),p();return}let g=1,o=()=>{--g===0&&(p(),this[ga](),u.resume())};u.mtime&&!this.noMtime&&(g++,t.utimes(String(u.absolute),u.atime||new Date,u.mtime,o)),this[ba](u)&&(g++,t.chown(String(u.absolute),Number(this[wa](u)),Number(this[Ea](u)),o)),o()}))}[la](t){t.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${t.type}`,{entry:t}),t.resume()}[oa](t,p){let m=si(u.relative(this.cwd,u.resolve(u.dirname(String(t.absolute)),String(t.linkpath)))).split("/");this[ca](t,this.cwd,m,(()=>this[na](t,String(t.linkpath),"symlink",p)),(u=>{this[fa](u,t),p()}))}[aa](t,p){let m=si(u.resolve(this.cwd,String(t.linkpath))),g=si(String(t.linkpath)).split("/");this[ca](t,this.cwd,g,(()=>this[na](t,m,"link",p)),(u=>{this[fa](u,t),p()}))}[ca](p,m,g,y,v){let b=g.shift();if(this.preservePaths||b===void 0)return y();let w=u.resolve(m,b);t.lstat(w,((t,m)=>{if(t)return y();if(m?.isSymbolicLink())return v(new Go(w,u.resolve(w,g.join("/"))));this[ca](p,w,g,y,v)}))}[ma](){this[pa]++}[ga](){this[pa]--,this[va]()}[_a](t){this[ga](),t.resume()}[ta](t,u){return t.type==="File"&&!this.unlink&&u.isFile()&&u.nlink<=1&&!Oa}[Qo](t){this[ma]();let u=[t.path];t.linkpath&&u.push(t.linkpath),this.reservations.reserve(u,(u=>this[ea](t,u)))}[ea](p,m){let i=t=>{m(t)},r=()=>{this[da](this.cwd,this.dmode,(t=>{if(t){this[fa](t,p),i();return}this[Sa]=!0,n()}))},n=()=>{if(p.absolute!==this.cwd){let t=si(u.dirname(String(p.absolute)));if(t!==this.cwd)return this[da](t,this.dmode,(t=>{if(t){this[fa](t,p),i();return}o()}))}o()},o=()=>{t.lstat(String(p.absolute),((u,m)=>{if(m&&(this.keep||this.newer&&m.mtime>(p.mtime??m.mtime))){this[_a](p),i();return}if(u||this[ta](p,m))return this[ra](null,p,i);if(m.isDirectory()){if(p.type==="Directory"){let u=this.chmod&&p.mode&&(m.mode&4095)!==p.mode,c=t=>this[ra](t??null,p,i);return u?t.chmod(String(p.absolute),Number(p.mode),c):c()}if(p.absolute!==this.cwd)return t.rmdir(String(p.absolute),(t=>this[ra](t??null,p,i)))}if(p.absolute===this.cwd)return this[ra](null,p,i);no(String(p.absolute),(t=>this[ra](t??null,p,i)))}))};this[Sa]?n():r()}[ra](t,u,p){if(t){this[fa](t,u),p();return}switch(u.type){case"File":case"OldFile":case"ContiguousFile":return this[sa](u,p);case"Link":return this[aa](u,p);case"SymbolicLink":return this[oa](u,p);case"Directory":case"GNUDumpDir":return this[ia](u,p)}}[na](u,p,m,g){t[m](p,String(u.absolute),(t=>{t?this[fa](t,u):(this[ga](),u.resume()),g()}))}},Se=t=>{try{return[null,t()]}catch(t){return[t,null]}},Aa=class extends Pa{sync=!0;[ra](t,u){return super[ra](t,u,(()=>{}))}[Qo](p){if(!this[Sa]){let t=this[da](this.cwd,this.dmode);if(t)return this[fa](t,p);this[Sa]=!0}if(p.absolute!==this.cwd){let t=si(u.dirname(String(p.absolute)));if(t!==this.cwd){let u=this[da](t,this.dmode);if(u)return this[fa](u,p)}}let[m,g]=Se((()=>t.lstatSync(String(p.absolute))));if(g&&(this.keep||this.newer&&g.mtime>(p.mtime??g.mtime)))return this[_a](p);if(m||this[ta](p,g))return this[ra](null,p);if(g.isDirectory()){if(p.type==="Directory"){let u=this.chmod&&p.mode&&(g.mode&4095)!==p.mode,[m]=u?Se((()=>{t.chmodSync(String(p.absolute),Number(p.mode))})):[];return this[ra](m,p)}let[u]=Se((()=>t.rmdirSync(String(p.absolute))));this[ra](u,p)}let[y]=p.absolute===this.cwd?[]:Se((()=>oo(String(p.absolute))));this[ra](y,p)}[sa](u,p){let m=typeof u.mode=="number"?u.mode&4095:this.fmode,r=m=>{let y;try{t.closeSync(g)}catch(t){y=t}(m||y)&&this[fa](m||y,u),p()},g;try{g=t.openSync(String(u.absolute),Vo(u.size),m)}catch(t){return r(t)}let y=this.transform&&this.transform(u)||u;y!==u&&(y.on("error",(t=>this[fa](t,u))),u.pipe(y)),y.on("data",(u=>{try{t.writeSync(g,u,0,u.length)}catch(t){r(t)}})),y.on("end",(()=>{let p=null;if(u.mtime&&!this.noMtime){let m=u.atime||new Date,y=u.mtime;try{t.futimesSync(g,m,y)}catch(g){try{t.utimesSync(String(u.absolute),m,y)}catch{p=g}}}if(this[ba](u)){let m=this[wa](u),y=this[Ea](u);try{t.fchownSync(g,Number(m),Number(y))}catch(g){try{t.chownSync(String(u.absolute),Number(m),Number(y))}catch{p=p||g}}}r(p)}))}[ia](u,p){let m=typeof u.mode=="number"?u.mode&4095:this.dmode,g=this[da](String(u.absolute),m);if(g){this[fa](g,u),p();return}if(u.mtime&&!this.noMtime)try{t.utimesSync(String(u.absolute),u.atime||new Date,u.mtime)}catch{}if(this[ba](u))try{t.chownSync(String(u.absolute),Number(this[wa](u)),Number(this[Ea](u)))}catch{}p(),u.resume()}[da](t,u){try{return ur(si(t),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:u})}catch(t){return t}}[ca](p,m,g,y,v){if(this.preservePaths||!g.length)return y();let b=m;for(let p of g){b=u.resolve(b,p);let[w,E]=Se((()=>t.lstatSync(b)));if(w)return y();if(E.isSymbolicLink())return v(new Go(b,u.resolve(m,g.join("/"))))}y()}[na](u,p,m,g){let y=`${m}Sync`;try{t[y](p,String(u.absolute)),g(),u.resume()}catch(t){return this[fa](t,u)}}};var ho=u=>{let p=new Aa(u),m=u.file,g=t.statSync(m),y=u.maxReadSize||16*1024*1024;new ys(m,{readSize:y,size:g.size}).pipe(p)},ao=(u,p)=>{let m=new Pa(u),g=u.maxReadSize||16*1024*1024,y=u.file;return new Promise(((u,p)=>{m.on("error",p),m.on("close",u),t.stat(y,((t,u)=>{if(t)p(t);else{let t=new gs(y,{readSize:g,size:u.size});t.on("error",p),t.pipe(m)}}))}))},xa=K(ho,ao,(t=>new Aa(t)),(t=>new Pa(t)),((t,u)=>{u?.length&&Yi(t,u)}));var co=(u,p)=>{let m=new Co(u),g=!0,y,v;try{try{y=t.openSync(u.file,"r+")}catch(p){if(p?.code==="ENOENT")y=t.openSync(u.file,"w+");else throw p}let b=t.fstatSync(y),w=Buffer.alloc(512);e:for(v=0;v<b.size;v+=512){for(let u=0,p=0;u<512;u+=p){if(p=t.readSync(y,w,u,w.length-u,v+u),v===0&&w[0]===31&&w[1]===139)throw new Error("cannot append to compressed archives");if(!p)break e}let p=new Xs(w);if(!p.cksumValid)break;let m=512*Math.ceil((p.size||0)/512);if(v+m+512>b.size)break;v+=m,u.mtimeCache&&p.mtime&&u.mtimeCache.set(String(p.path),p.mtime)}g=!1,fo(u,m,v,y,p)}finally{if(g)try{t.closeSync(y)}catch{}}},fo=(t,u,p,m,g)=>{let y=new _s(t.file,{fd:m,start:p});u.pipe(y),mo(u,g)},uo=(u,p)=>{p=Array.from(p);let m=new ko(u),i=(p,m,g)=>{let a=(u,m)=>{u?t.close(p,(t=>g(u))):g(null,m)},y=0;if(m===0)return a(null,0);let v=0,b=Buffer.alloc(512),S=(g,w)=>{if(g||typeof w>"u")return a(g);if(v+=w,v<512&&w)return t.read(p,b,v,b.length-v,y+v,S);if(y===0&&b[0]===31&&b[1]===139)return a(new Error("cannot append to compressed archives"));if(v<512)return a(null,y);let E=new Xs(b);if(!E.cksumValid)return a(null,y);let $=512*Math.ceil((E.size??0)/512);if(y+$+512>m||(y+=$+512,y>=m))return a(null,y);u.mtimeCache&&E.mtime&&u.mtimeCache.set(String(E.path),E.mtime),v=0,t.read(p,b,0,512,y,S)};t.read(p,b,0,512,y,S)};return new Promise(((g,y)=>{m.on("error",y);let v="r+",a=(b,w)=>{if(b&&b.code==="ENOENT"&&v==="r+")return v="w+",t.open(u.file,v,a);if(b||!w)return y(b);t.fstat(w,((v,b)=>{if(v)return t.close(w,(()=>y(v)));i(w,b.size,((t,v)=>{if(t)return y(t);let b=new vs(u.file,{fd:w,start:v});m.pipe(b),b.on("error",y),b.on("close",g),po(m,p)}))}))};t.open(u.file,v,a)}))},mo=(t,p)=>{p.forEach((p=>{p.charAt(0)==="@"?zi({file:u.resolve(t.cwd,p.slice(1)),sync:!0,noResume:!0,onReadEntry:u=>t.add(u)}):t.add(p)})),t.end()},po=async(t,p)=>{for(let m=0;m<p.length;m++){let g=String(p[m]);g.charAt(0)==="@"?await zi({file:u.resolve(String(t.cwd),g.slice(1)),noResume:!0,onReadEntry:u=>t.add(u)}):t.add(g)}t.end()},Ta=K(co,uo,(()=>{throw new TypeError("file is required")}),(()=>{throw new TypeError("file is required")}),((t,u)=>{if(!ks(t))throw new TypeError("file is required");if(t.gzip||t.brotli||t.zstd||t.file.endsWith(".br")||t.file.endsWith(".tbr"))throw new TypeError("cannot append to compressed archives");if(!u?.length)throw new TypeError("no paths specified to add/replace")}));var ka=K(Ta.syncFile,Ta.asyncFile,Ta.syncNoFile,Ta.asyncNoFile,((t,u=[])=>{Ta.validate?.(t,u),wo(t)})),wo=t=>{let u=t.filter;t.mtimeCache||(t.mtimeCache=new Map),t.filter=u?(p,m)=>u(p,m)&&!((t.mtimeCache?.get(p)??m.mtime??0)>(m.mtime??0)):(u,p)=>!((t.mtimeCache?.get(u)??p.mtime??0)>(p.mtime??0))};async function isUrlOk(t){try{const u=await fetch(t,{method:"HEAD"});return u.status===200}catch{return false}}async function getRepoInfo(t,u){const[,p,m,g,y,...v]=t.pathname.split("/");const b=u?u.replace(/^\//,""):v.join("/");if(g===undefined||g===""&&y===undefined){try{const t=await fetch(`https://api.github.com/repos/${p}/${m}`);if(t.status!==200){return}const u=await t.json();return{username:p,name:m,branch:u.default_branch,filePath:b}}catch{return}}const w=u?`${y}/${v.join("/")}`.replace(new RegExp(`/${b}|/$`),""):y;if(p&&m&&w&&g==="tree"){return{username:p,name:m,branch:w,filePath:b}}}function hasRepo({username:t,name:u,branch:p,filePath:m}){const g=`https://api.github.com/repos/${t}/${u}/contents`;const y=`${m?`/${m}`:""}/package.json`;return isUrlOk(`${g}${y}?ref=${p}`)}function existsInRepo(t){try{const u=new URL(t);return isUrlOk(u.href)}catch{return isUrlOk(`https://api.github.com/repos/zuplo/zudoku/contents/examples/${encodeURIComponent(t)}`)}}async function downloadTarStream(t){const u=await fetch(t);if(!u.body){throw new Error(`Failed to download: ${t}`)}return z.Readable.fromWeb(u.body)}async function downloadAndExtractRepo(t,{username:p,name:m,branch:g,filePath:y}){let v=null;await(0,yt.pipeline)(await downloadTarStream(`https://codeload.github.com/${p}/${m}/tar.gz/${g}`),xa({cwd:t,strip:y?y.split("/").length+1:1,filter:t=>{if(v===null){const p=t.split(u.sep);v=p.length?p[0]:null}return t.startsWith(`${v}${y?`/${y}/`:"/"}`)}}))}async function downloadAndExtractExample(t,u){if(u==="__internal-testing-retry"){throw new Error("This is an internal example for testing the CLI.")}await(0,yt.pipeline)(await downloadTarStream("https://codeload.github.com/zuplo/zudoku/tar.gz/canary"),xa({cwd:t,strip:2+u.split("/").length,filter:t=>t.includes(`zudoku-canary/examples/${u}/`)}))}var Ca=__nccwpck_require__(1421);function isInGitRepository(){try{(0,Ca.execSync)("git rev-parse --is-inside-work-tree",{stdio:"ignore"});return true}catch{}return false}function isInMercurialRepository(){try{(0,Ca.execSync)("hg --cwd . root",{stdio:"ignore"});return true}catch{}return false}function isDefaultBranchSet(){try{(0,Ca.execSync)("git config init.defaultBranch",{stdio:"ignore"});return true}catch{}return false}function tryGitInit(p){let m=false;try{(0,Ca.execSync)("git --version",{stdio:"ignore"});if(isInGitRepository()||isInMercurialRepository()){return false}(0,Ca.execSync)("git init",{stdio:"ignore"});m=true;if(!isDefaultBranchSet()){(0,Ca.execSync)("git checkout -b main",{stdio:"ignore"})}(0,Ca.execSync)("git add -A",{stdio:"ignore"});(0,Ca.execSync)('git commit -m "Initial commit from Create Next App"',{stdio:"ignore"});return true}catch{if(m){try{(0,t.rmSync)((0,u.join)(p,".git"),{recursive:true,force:true})}catch{}}return false}}var Ia=__nccwpck_require__(670);var Na=__nccwpck_require__.n(Ia);async function install(t,u){const p=["install"];if(!u){console.log((0,Qe.yellow)("You appear to be offline.\nFalling back to the local cache."));p.push("--offline")}return new Promise(((u,m)=>{const g=Na()(t,p,{stdio:"inherit",env:{...process.env,ADBLOCK:"1",NODE_ENV:"development",DISABLE_OPENCOLLECTIVE:"1"}});g.on("close",(g=>{if(g!==0){m({command:`${t} ${p.join(" ")}`});return}u()}))}))}function isFolderEmpty(p,m){const g=[".DS_Store",".git",".gitattributes",".gitignore",".gitlab-ci.yml",".hg",".hgcheck",".hgignore",".idea",".npmignore",".travis.yml","LICENSE","Thumbs.db","docs","mkdocs.yml","npm-debug.log","yarn-debug.log","yarn-error.log","yarnrc.yml",".yarn"];const y=(0,t.readdirSync)(p).filter((t=>!g.includes(t)&&!/\.iml$/.test(t)));if(y.length>0){console.log(`The directory ${(0,Qe.green)(m)} contains files that could conflict:`);console.log();for(const m of y){try{const g=(0,t.lstatSync)((0,u.join)(p,m));if(g.isDirectory()){console.log(` ${(0,Qe.blue)(m)}/`)}else{console.log(` ${m}`)}}catch{console.log(` ${m}`)}}console.log();console.log("Either try using a new directory name, or remove the files listed above.");console.log();return false}return true}const Da=require("node:dns/promises");const La=require("node:url");var ja=__nccwpck_require__.n(La);function getProxy(){if(process.env.https_proxy){return process.env.https_proxy}try{const t=(0,Ca.execSync)("npm config get https-proxy").toString().trim();return t!=="null"?t:undefined}catch{return}}async function getOnline(){try{await(0,Da.lookup)("registry.yarnpkg.com");return true}catch{const t=getProxy();if(!t){return false}const{hostname:u}=ja().parse(t);if(!u){return false}try{await(0,Da.lookup)(u);return true}catch{return false}}}const Ma=require("node:constants");async function isWriteable(t){try{await(0,ot.access)(t,Ma.W_OK);return true}catch{return false}}var Fa=__nccwpck_require__(2457);const identity=t=>t;const copy=async(t,p,{cwd:m,rename:g=identity,parents:y=true}={})=>{const v=typeof t==="string"?[t]:t;if(v.length===0||!p){throw new TypeError("`src` and `dest` are required")}const b=await(0,Fa.async)(v,{cwd:m,dot:true,absolute:false,stats:false});const w=m?(0,u.resolve)(m,p):p;return Promise.all(b.map((async t=>{const p=(0,u.dirname)(t);const v=g((0,u.basename)(t));const b=m?(0,u.resolve)(m,t):t;const E=y?(0,u.join)(w,p,v):(0,u.join)(w,v);await(0,ot.mkdir)((0,u.dirname)(E),{recursive:true});return(0,ot.copyFile)(b,E)})))};var Ua;const Ba=__dirname.endsWith("dist")?p().dirname(__dirname):p().dirname(__dirname);const Ha=__dirname.endsWith("dist")?p().join(__dirname,"templates"):__dirname;const Va=p().resolve(Ba,"../..");const za=(Ua=process.env.ComSpec)!==null&&Ua!==void 0?Ua:"cmd.exe";const formatAppTitle=t=>t.split(/[-_\s]+/).filter(Boolean).map((t=>t.charAt(0).toUpperCase()+t.slice(1))).join(" ");const resolveCoreApitogoPackageName=async()=>{const t=JSON.parse(await ct().readFile(p().join(Ba,"package.json"),"utf8"));return t.name.replace("/create-apitogo","/apitogo")};const Ga="@lukow"+"eb";const normalizeDependencyVersion=t=>t.replace(/^[\^~>=<]+/,"");const Wa="0.577.0";const ensureRequiredApitogoModules=(t,u,p)=>{var m,g,y,v;const b=u.slice(0,u.indexOf("/"));const w=`${b}/apitogo-module-landing`;const E=`${b}/apitogo-module-user-panel`;const $=`${b}/apitogo-plugin-dev-portal-billing`;const O=`^${normalizeDependencyVersion(p)}`;(m=t[w])!==null&&m!==void 0?m:t[w]=O;(g=t[E])!==null&&g!==void 0?g:t[E]=O;(y=t[$])!==null&&y!==void 0?y:t[$]=O;(v=t["lucide-react"])!==null&&v!==void 0?v:t["lucide-react"]=Wa};const ensureSecondaryApitogoAliases=(t,u,p)=>{if(u.startsWith(`${Ga}/`)){return}const alias=t=>`npm:${t}@${normalizeDependencyVersion(p)}`;const m=u.slice(0,u.indexOf("/"));t[`${Ga}/apitogo`]=alias(u);t[`${Ga}/apitogo-module-landing`]=alias(`${m}/apitogo-module-landing`);t[`${Ga}/apitogo-module-user-panel`]=alias(`${m}/apitogo-module-user-panel`);t[`${Ga}/apitogo-plugin-dev-portal-billing`]=alias(`${m}/apitogo-plugin-dev-portal-billing`)};const parseWorkspaceCatalog=async t=>{var u,p,m;const g=await ct().readFile(t,"utf8");const y={};let v=false;for(const t of g.split(/\r?\n/)){if(!v){v=t.trim()==="catalog:";continue}if(!t.startsWith(" "))break;const g=t.match(/^ {2}(?:"([^"]+)"|([^:]+)):\s+(.+)$/);if(!g)continue;const b=(u=g[1])!==null&&u!==void 0?u:(p=g[2])===null||p===void 0?void 0:p.trim();const w=(m=g[3])===null||m===void 0?void 0:m.trim();if(b&&w)y[b]=w}return y};const replaceCatalogVersions=(t,u)=>{if(Array.isArray(t)){return t.map((t=>replaceCatalogVersions(t,u)))}if(!t||typeof t!=="object"){return t}return Object.fromEntries(Object.entries(t).map((([t,p])=>{var m;return[t,p==="catalog:"?(m=u[t])!==null&&m!==void 0?m:p:replaceCatalogVersions(p,u)]})))};const stageLocalZudokuPackage=async(t,u)=>{var m,g;const y=await parseWorkspaceCatalog(p().join(Va,"pnpm-workspace.yaml"));const v=p().join(t,"package.json");const b=JSON.parse(await ct().readFile(v,"utf8"));const w=replaceCatalogVersions(b,y);const E=new Set(["package.json",...Array.isArray(b.files)?b.files:[]]);await ct().rm(u,{recursive:true,force:true});await ct().mkdir(u,{recursive:true});for(const m of E){if(m==="package.json")continue;const g=p().join(t,m);const y=p().join(u,m);const v=await ct().stat(g).catch((()=>null));if(!v)continue;if(v.isDirectory()){await ct().cp(g,y,{recursive:true})}else{await ct().mkdir(p().dirname(y),{recursive:true});await ct().copyFile(g,y)}}(m=w.scripts)===null||m===void 0?true:delete m.prepublishOnly;(g=w.scripts)===null||g===void 0?true:delete g.postpublish;if(w.scripts&&Object.keys(w.scripts).length===0){delete w.scripts}await ct().writeFile(p().join(u,"package.json"),JSON.stringify(w,null,2)+M().EOL)};const getTemplateFile=({template:t,mode:u,file:m})=>p().join(Ha,t,u,m);const installTemplate=async({appName:t,root:u,packageManager:m,isOnline:g,template:y,mode:v,eslint:b,skipInstall:w,zudokuVersion:E})=>{var $;console.log((0,Qe.bold)(`Using ${m}.`));console.log("\nInitializing project with template:",y,"\n");const O=p().join(Ha,y,v);const R=["**"];if(!b)R.push("!eslintrc.json");await copy(R,u,{parents:true,cwd:O,rename(t){switch(t){case"gitignore":case"eslintrc.json":{return`.${t}`}case"env":{return".env"}case"README-template.md":{return"README.md"}case"zudoku.config.tsx":{return"apitogo.config.tsx"}case"zudoku.config.jsx":{return"apitogo.config.jsx"}default:{return t}}}});const P=formatAppTitle(t);const substituteAppTitle=t=>t.split("__APP_TITLE__").join(P);const A=v==="ts"?"apitogo.config.tsx":"apitogo.config.jsx";const x=p().join(u,A);const T=await ct().readFile(x,"utf8");await ct().writeFile(x,substituteAppTitle(T),"utf8");const k=p().join(u,"apitogo.config.json");try{const t=await ct().readFile(k,"utf8");await ct().writeFile(k,substituteAppTitle(t),"utf8")}catch{}const C=($=process.env.ZUDOKU_PRIVATE_TEST_VERSION)!==null&&$!==void 0?$:E;const I=p().join(Va,"packages","zudoku");const N=p().join(I,"package.json");const D=await ct().access(N).then((async()=>{const t=p().join(u,".apitogo-local");const m=p().join(t,"zudoku-package");await ct().mkdir(t,{recursive:true});await stageLocalZudokuPackage(I,m);const g=p().relative(m,t);const y=(process.platform==="win32"?(0,Ca.execFileSync)(za,["/d","/c","npm","pack","--pack-destination",g],{cwd:m,encoding:"utf8"}):(0,Ca.execFileSync)("npm",["pack","--pack-destination",g],{cwd:m,encoding:"utf8"})).trim().split(/\r?\n/).at(-1);if(!y){throw new Error("Failed to pack local zudoku package.")}return`file:.apitogo-local/${y}`})).catch((()=>C));const L=await resolveCoreApitogoPackageName();const j={name:t,version:"0.1.0",type:"module",private:true,scripts:{dev:"apitogo run",build:"apitogo build",preview:"apitogo build --preview",deploy:"apitogo deploy",lint:"eslint"},dependencies:{react:">=19.0.0","react-dom":">=19.0.0",[L]:D},devDependencies:{}};if(!D.startsWith("file:")){ensureRequiredApitogoModules(j.dependencies,L,D);ensureSecondaryApitogoAliases(j.dependencies,L,D)}if(v==="ts"){j.devDependencies={...j.devDependencies,"@types/node":"^22","@types/react":"^19","@types/react-dom":"^19",typescript:"^5"}}if(b){j.devDependencies={...j.devDependencies,eslint:"^8"}}if(b&&v==="ts"){j.devDependencies={...j.devDependencies,"@typescript-eslint/eslint-plugin":"^8","@typescript-eslint/parser":"^8"}}const U=Object.keys(j.devDependencies).length;if(!U)delete j.devDependencies;await ct().writeFile(p().join(u,"package.json"),JSON.stringify(j,null,2)+M().EOL);if(w)return;console.log("\nInstalling dependencies:");for(const t in j.dependencies)console.log(`- ${(0,Qe.cyan)(t)}`);if(U){console.log("\nInstalling devDependencies:");for(const t in j.devDependencies)console.log(`- ${(0,Qe.cyan)(t)}`)}console.log();await install(m,g)};class DownloadError extends Error{}async function createApp({appPath:p,packageManager:m,example:g,examplePath:y,typescript:v,eslint:b,skipInstall:w,zudokuVersion:E,withExamples:$=true}){let O;const R=v?"ts":"js";const P=$?"default":"empty";if(g){let L;try{L=new URL(g)}catch(j){const M=j;if(M.code!=="ERR_INVALID_URL"){console.error(j);process.exit(1)}}if(L){if(L.origin!=="https://github.com"){console.error(`Invalid URL: ${(0,Qe.red)(`"${g}"`)}. Only GitHub repositories are supported. Please use a GitHub URL and try again.`);process.exit(1)}O=await getRepoInfo(L,y);if(!O){console.error(`Found invalid GitHub URL: ${(0,Qe.red)(`"${g}"`)}. Please fix the URL and try again.`);process.exit(1)}const U=await hasRepo(O);if(!U){console.error(`Could not locate the repository for ${(0,Qe.red)(`"${g}"`)}. Please check that the repository exists and try again.`);process.exit(1)}}else if(g!=="__internal-testing-retry"){const B=await existsInRepo(g);if(!B){console.error(`Could not locate an example named ${(0,Qe.red)(`"${g}"`)}. It could be due to the following:\n`,`1. Your spelling of example ${(0,Qe.red)(`"${g}"`)} might be incorrect.\n`,`2. You might not be connected to the internet or you are behind a proxy.`);process.exit(1)}}}const A=(0,u.resolve)(p);if(!await isWriteable((0,u.dirname)(A))){console.error("The application path is not writable, please check folder permissions and try again.");console.error("It is likely you do not have write permissions for this folder.");process.exit(1)}const x=(0,u.basename)(A);(0,t.mkdirSync)(A,{recursive:true});if(!isFolderEmpty(A,x)){process.exit(1)}const T=m==="yarn";const k=!T||await getOnline();const C=process.cwd();console.log(`Creating a new API ToGo app in ${(0,Qe.green)(A)}.`);console.log();process.chdir(A);const I=(0,u.join)(A,"package.json");let N=false;if(g){try{if(O){const V=O;console.log(`Downloading files from repo ${(0,Qe.cyan)(g)}. This might take a moment.`);console.log();await nt()((()=>downloadAndExtractRepo(A,V)),{retries:3})}else{console.log(`Downloading files for example ${(0,Qe.cyan)(g)}. This might take a moment.`);console.log();await nt()((()=>downloadAndExtractExample(A,g)),{retries:3})}}catch(z){function isErrorLike(t){return typeof t==="object"&&t!==null&&typeof t.message==="string"}throw new DownloadError(isErrorLike(z)?z.message:String(z))}const H=(0,u.join)(A,".gitignore");if(!(0,t.existsSync)(H)){(0,t.copyFileSync)(getTemplateFile({template:P,mode:R,file:"gitignore"}),H)}N=(0,t.existsSync)(I);if(!w&&N){console.log("Installing packages. This might take a couple of minutes.");console.log();await install(m,k);console.log()}}else{await installTemplate({appName:x,root:A,template:P,mode:R,packageManager:m,isOnline:k,eslint:b,skipInstall:w,zudokuVersion:E})}if(!g){try{const G=await discoverAndWireNearby(A);if(G.length>0){console.log("Discovered nearby API docs:");for(const W of G){console.log(` ${W}`)}console.log()}}catch(q){console.log("Could not auto-wire nearby OpenAPI/docs:",q instanceof Error?q.message:String(q));console.log()}}if(tryGitInit(A)){console.log("Initialized a git repository.");console.log()}let D;if((0,u.join)(C,x)===p){D=x}else{D=p}console.log(`${(0,Qe.green)("Success!")} Created ${x} at ${p}`);if(N){console.log("Inside that directory, you can run several commands:");console.log();console.log((0,Qe.cyan)(` ${m} ${T?"":"run "}dev`));console.log(" Starts the development server.");console.log();console.log((0,Qe.cyan)(` ${m} ${T?"":"run "}build`));console.log(" Builds the app for production.");console.log();console.log((0,Qe.cyan)(` ${m} start`));console.log(" Runs the built app in production mode.");console.log();console.log("We suggest that you begin by typing:");console.log();console.log((0,Qe.cyan)(" cd"),D);console.log(` ${(0,Qe.cyan)(`${m} ${T?"":"run "}dev`)}`)}console.log()}function getPkgManager(){var t;const u=(t=process.env.npm_config_user_agent)!==null&&t!==void 0?t:"";if(u.startsWith("yarn")){return"yarn"}if(u.startsWith("pnpm")){return"pnpm"}if(u.startsWith("bun")){return"bun"}return"npm"}var qa=__nccwpck_require__(8904);var Ka=__nccwpck_require__.n(qa);function validateNpmName(t){const u=Ka()(t);if(u.validForNewPackages){return{valid:true}}return{valid:false,problems:[...u.errors||[],...u.warnings||[]]}}let Ya="";const handleSigTerm=()=>process.exit(0);process.on("SIGINT",handleSigTerm);process.on("SIGTERM",handleSigTerm);const onPromptState=t=>{if(t.aborted){process.stdout.write("[?25h");process.stdout.write("\n");process.exit(1)}};const Ja=JSON.parse((0,t.readFileSync)(p().resolve(__dirname,"../package.json"),"utf-8"));const Za=new P(Ja.name).version(Ja.version,"-v, --version","Output the current version of @lukoweb/create-apitogo.").description("Create a new APItoGo developer portal.\n\nRun without arguments for an interactive setup, or pass flags such as --typescript --eslint.\nAuto-discovers nearby OpenAPI and docs/ folders after scaffold.").argument("[directory]",'Project directory (defaults to "dev-portal")').usage("[directory] [options]").helpOption("-h, --help","Display this help message.").option("--ts, --typescript","Initialize as a TypeScript project (default).").option("--js, --javascript","Initialize as a JavaScript project.").option("--eslint","Initialize with ESLint config. Use --no-eslint to skip.").option("--include-examples, --with-examples","Use the default template (sample homepage, docs, OpenAPI, and plans). On by default. Use --no-include-examples for the empty template.").option("--import-alias <prefix/*>",'Specify import alias to use (default "@/*").').option("--use-npm","Use npm as the package manager.").option("--use-pnpm","Use pnpm as the package manager.").option("--use-yarn","Use Yarn as the package manager.").option("--use-bun","Use Bun as the package manager.").option("--reset, --reset-preferences","Reset the preferences saved for @lukoweb/create-apitogo.").option("--skip-install","Skip installing packages after scaffolding.").option("-y, --yes","Skip remaining prompts and use defaults for unspecified options.").option("-e, --example <example-name|github-url>","Bootstrap from an example in the Zudoku repo or a public GitHub URL.").option("--example-path <path-to-example>","Path to the example within the repo (use when the branch name contains slashes).").addHelpText("after",`\nExamples:\n $ npx @lukoweb/create-apitogo@latest\n $ npx @lukoweb/create-apitogo@latest dev-portal --typescript --eslint\n $ npx @lukoweb/create-apitogo@latest dev-portal --javascript --no-eslint\n $ npx @lukoweb/create-apitogo@latest dev-portal --typescript --eslint --no-include-examples\n`).action((t=>{if(t&&!t.startsWith("--no-")){Ya=t}})).allowUnknownOption().parse(process.argv);const Xa=Za.opts();const{args:Qa}=Za;const ec=Xa.useNpm?"npm":Xa.usePnpm?"pnpm":Xa.useYarn?"yarn":Xa.useBun?"bun":getPkgManager();async function run(){const p=new Conf({projectName:"@lukoweb/create-apitogo"});if(Xa.resetPreferences){const{resetPreferences:t}=await tt()({onState:onPromptState,type:"toggle",name:"resetPreferences",message:"Would you like to reset the saved preferences?",initial:false,active:"Yes",inactive:"No"});if(t){p.clear();console.log("The preferences have been reset successfully!")}process.exit(0)}const m=g().isCI||Xa.yes;const y=!Qa.includes("--no-include-examples")&&Xa.includeExamples!==false;const v=Qa.includes("--no-eslint");if(typeof Ya==="string"){Ya=Ya.trim()}if(!Ya){if(m){Ya="dev-portal"}else{const t=await tt()({onState:onPromptState,type:"text",name:"path",message:"What is your project named?",initial:"dev-portal",validate:t=>{const p=validateNpmName((0,u.basename)((0,u.resolve)(t)));if(p.valid){return true}return`Invalid project name: ${p.problems[0]}`}});if(typeof t.path==="string"){Ya=t.path.trim()}}}if(!Ya){console.log("\nPlease specify the project directory:\n"+` ${(0,Qe.cyan)(Xa.name())} ${(0,Qe.green)("<project-directory>")}\n`+"For example:\n"+` ${(0,Qe.cyan)(Xa.name())} ${(0,Qe.green)("my-zudoku-app")}\n\n`+`Run ${(0,Qe.cyan)(`${Xa.name()} --help`)} to see all options.`);process.exit(1)}const b=(0,u.resolve)(Ya);const w=(0,u.basename)(b);const E=validateNpmName(w);if(!E.valid){console.error(`Could not create a project called ${(0,Qe.red)(`"${w}"`)} because of npm naming restrictions:`);E.problems.forEach((t=>console.error(` ${(0,Qe.red)((0,Qe.bold)("*"))} ${t}`)));process.exit(1)}if(Xa.example===true){console.error("Please provide an example name or url, otherwise remove the example option.");process.exit(1)}if((0,t.existsSync)(b)&&!isFolderEmpty(b,w)){process.exit(1)}const $=typeof Xa.example==="string"&&Xa.example.trim();const O=p.get("preferences")||{};if(!$){const t={typescript:true,eslint:true};const getPrefOrDefault=u=>{var p;return(p=O[u])!==null&&p!==void 0?p:t[u]};if(!Xa.typescript&&!Xa.javascript){if(m){Xa.typescript=getPrefOrDefault("typescript")}else{const t=(0,Qe.blue)("TypeScript");const{typescript:u}=await tt()({type:"toggle",name:"typescript",message:`Would you like to use ${t}?`,initial:getPrefOrDefault("typescript"),active:"Yes",inactive:"No"},{onCancel:()=>{console.error("Exiting.");process.exit(1)}});Xa.typescript=Boolean(u);Xa.javascript=!u;O.typescript=Boolean(u)}}if(v){Xa.eslint=false}else if(!Xa.eslint){if(m){Xa.eslint=getPrefOrDefault("eslint")}else{const t=(0,Qe.blue)("ESLint");const{eslint:u}=await tt()({onState:onPromptState,type:"toggle",name:"eslint",message:`Would you like to use ${t}?`,initial:getPrefOrDefault("eslint"),active:"Yes",inactive:"No"});Xa.eslint=Boolean(u);O.eslint=Boolean(u)}}}try{await createApp({appPath:b,packageManager:ec,example:$&&$!=="default"?$:undefined,examplePath:Xa.examplePath,typescript:Xa.typescript,eslint:Xa.eslint,skipInstall:Xa.skipInstall,zudokuVersion:Ja.version,withExamples:y})}catch(t){if(!(t instanceof DownloadError)){throw t}const u=await tt()({onState:onPromptState,type:"confirm",name:"builtin",message:`Could not download "${$}" because of a connectivity issue between your machine and GitHub.\n`+`Do you want to use the default template instead?`,initial:true});if(!u.builtin){throw t}await createApp({appPath:b,packageManager:ec,typescript:Xa.typescript,eslint:Xa.eslint,skipInstall:Xa.skipInstall,zudokuVersion:Ja.version,withExamples:true})}p.set("preferences",O)}const tc=st()(Ja).catch((()=>null));async function notifyUpdate(){var t;try{if((t=await tc)===null||t===void 0?void 0:t.latest){const t={npm:"npm i -g",yarn:"yarn global add",pnpm:"pnpm add -g",bun:"bun add -g"};const u=`${t[ec]} @lukoweb/create-apitogo`;console.log((0,Qe.yellow)((0,Qe.bold)("A new version of `@lukoweb/create-apitogo` is available!"))+"\n"+"You can update by running: "+(0,Qe.cyan)(u)+"\n")}process.exit(0)}catch{}}async function exit(t){console.log();console.log("Aborting installation.");if(t.command){console.log(` ${(0,Qe.cyan)(t.command)} has failed.`)}else{console.log(`${(0,Qe.red)("Unexpected error. Please report it as a bug:")}\n`,t)}console.log();await notifyUpdate();process.exit(1)}run().then(notifyUpdate).catch(exit)})();module.exports=p})();
|
|
73
|
+
*/const m=p(952);const toRegexRange=(t,u,p)=>{if(m(t)===false){throw new TypeError("toRegexRange: expected the first argument to be a number")}if(u===void 0||t===u){return String(t)}if(m(u)===false){throw new TypeError("toRegexRange: expected the second argument to be a number.")}let g={relaxZeros:true,...p};if(typeof g.strictZeros==="boolean"){g.relaxZeros=g.strictZeros===false}let y=String(g.relaxZeros);let v=String(g.shorthand);let b=String(g.capture);let w=String(g.wrap);let E=t+":"+u+"="+y+v+b+w;if(toRegexRange.cache.hasOwnProperty(E)){return toRegexRange.cache[E].result}let $=Math.min(t,u);let O=Math.max(t,u);if(Math.abs($-O)===1){let p=t+"|"+u;if(g.capture){return`(${p})`}if(g.wrap===false){return p}return`(?:${p})`}let R=hasPadding(t)||hasPadding(u);let P={min:t,max:u,a:$,b:O};let A=[];let x=[];if(R){P.isPadded=R;P.maxLen=String(P.max).length}if($<0){let t=O<0?Math.abs(O):1;x=splitToPatterns(t,Math.abs($),P,g);$=P.a=0}if(O>=0){A=splitToPatterns($,O,P,g)}P.negatives=x;P.positives=A;P.result=collatePatterns(x,A,g);if(g.capture===true){P.result=`(${P.result})`}else if(g.wrap!==false&&A.length+x.length>1){P.result=`(?:${P.result})`}toRegexRange.cache[E]=P;return P.result};function collatePatterns(t,u,p){let m=filterPatterns(t,u,"-",false,p)||[];let g=filterPatterns(u,t,"",false,p)||[];let y=filterPatterns(t,u,"-?",true,p)||[];let v=m.concat(y).concat(g);return v.join("|")}function splitToRanges(t,u){let p=1;let m=1;let g=countNines(t,p);let y=new Set([u]);while(t<=g&&g<=u){y.add(g);p+=1;g=countNines(t,p)}g=countZeros(u+1,m)-1;while(t<g&&g<=u){y.add(g);m+=1;g=countZeros(u+1,m)-1}y=[...y];y.sort(compare);return y}function rangeToPattern(t,u,p){if(t===u){return{pattern:t,count:[],digits:0}}let m=zip(t,u);let g=m.length;let y="";let v=0;for(let t=0;t<g;t++){let[u,g]=m[t];if(u===g){y+=u}else if(u!=="0"||g!=="9"){y+=toCharacterClass(u,g,p)}else{v++}}if(v){y+=p.shorthand===true?"\\d":"[0-9]"}return{pattern:y,count:[v],digits:g}}function splitToPatterns(t,u,p,m){let g=splitToRanges(t,u);let y=[];let v=t;let b;for(let t=0;t<g.length;t++){let u=g[t];let w=rangeToPattern(String(v),String(u),m);let E="";if(!p.isPadded&&b&&b.pattern===w.pattern){if(b.count.length>1){b.count.pop()}b.count.push(w.count[0]);b.string=b.pattern+toQuantifier(b.count);v=u+1;continue}if(p.isPadded){E=padZeros(u,p,m)}w.string=E+w.pattern+toQuantifier(w.count);y.push(w);v=u+1;b=w}return y}function filterPatterns(t,u,p,m,g){let y=[];for(let g of t){let{string:t}=g;if(!m&&!contains(u,"string",t)){y.push(p+t)}if(m&&contains(u,"string",t)){y.push(p+t)}}return y}function zip(t,u){let p=[];for(let m=0;m<t.length;m++)p.push([t[m],u[m]]);return p}function compare(t,u){return t>u?1:u>t?-1:0}function contains(t,u,p){return t.some((t=>t[u]===p))}function countNines(t,u){return Number(String(t).slice(0,-u)+"9".repeat(u))}function countZeros(t,u){return t-t%Math.pow(10,u)}function toQuantifier(t){let[u=0,p=""]=t;if(p||u>1){return`{${u+(p?","+p:"")}}`}return""}function toCharacterClass(t,u,p){return`[${t}${u-t===1?"":"-"}${u}]`}function hasPadding(t){return/^-?(0+)\d/.test(t)}function padZeros(t,u,p){if(!u.isPadded){return t}let m=Math.abs(u.maxLen-String(t).length);let g=p.relaxZeros!==false;switch(m){case 0:return"";case 1:return g?"0?":"0";case 2:return g?"0{0,2}":"00";default:{return g?`0{0,${m}}`:`0{${m}}`}}}toRegexRange.cache={};toRegexRange.clearCache=()=>toRegexRange.cache={};t.exports=toRegexRange},5059:(t,u,p)=>{const{URL:m}=p(7016);const{join:g}=p(6928);const y=p(7515);const{promisify:v}=p(9023);const{tmpdir:b}=p(857);const w=p(3805);const E=v(y.writeFile);const $=v(y.mkdir);const O=v(y.readFile);const compareVersions=(t,u)=>t.localeCompare(u,"en-US",{numeric:true});const encode=t=>encodeURIComponent(t).replace(/^%40/,"@");const getFile=async(t,u)=>{const p=b();const m=g(p,"update-check");if(!y.existsSync(m)){await $(m)}let v=`${t.name}-${u}.json`;if(t.scope){v=`${t.scope}-${v}`}return g(m,v)};const evaluateCache=async(t,u,p)=>{if(y.existsSync(t)){const m=await O(t,"utf8");const{lastUpdate:g,latest:y}=JSON.parse(m);const v=g+p;if(v>u){return{shouldCheck:false,latest:y}}}return{shouldCheck:true,latest:null}};const updateCache=async(t,u,p)=>{const m=JSON.stringify({latest:u,lastUpdate:p});await E(t,m,"utf8")};const loadPackage=(t,u)=>new Promise(((m,g)=>{const y={host:t.hostname,path:t.pathname,port:t.port,headers:{accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"},timeout:2e3};if(u){y.headers.authorization=`${u.type} ${u.token}`}const{get:v}=p(t.protocol==="https:"?5692:8611);v(y,(t=>{const{statusCode:u}=t;if(u!==200){const p=new Error(`Request failed with code ${u}`);p.code=u;g(p);t.resume();return}let p="";t.setEncoding("utf8");t.on("data",(t=>{p+=t}));t.on("end",(()=>{try{const t=JSON.parse(p);m(t)}catch(t){g(t)}}))})).on("error",g).on("timeout",g)}));const getMostRecent=async({full:t,scope:u},g)=>{const y=w(u);const v=new m(t,y);let b=null;try{b=await loadPackage(v)}catch(t){if(t.code&&String(t.code).startsWith(4)){const t=p(4133);const u=t(y,{recursive:true});b=await loadPackage(v,u)}else{throw t}}const E=b["dist-tags"][g];if(!E){throw new Error(`Distribution tag ${g} is not available`)}return E};const R={interval:36e5,distTag:"latest"};const getDetails=t=>{const u={full:encode(t)};if(t.includes("/")){const p=t.split("/");u.scope=p[0];u.name=p[1]}else{u.scope=null;u.name=t}return u};t.exports=async(t,u)=>{if(typeof t!=="object"){throw new Error("The first parameter should be your package.json file content")}const p=getDetails(t.name);const m=Date.now();const{distTag:g,interval:y}=Object.assign({},R,u);const v=await getFile(p,g);let b=null;let w=true;({shouldCheck:w,latest:b}=await evaluateCache(v,m,y));if(w){b=await getMostRecent(p,g);await updateCache(v,b,m)}const E=compareVersions(t.version,b);if(E===-1){return{latest:b,fromCache:!w}}return null}},8904:(t,u,p)=>{"use strict";const m=p(6737);var g=new RegExp("^(?:@([^/]+?)[/])?([^/]+?)$");var y=["node_modules","favicon.ico"];function validate(t){var u=[];var p=[];if(t===null){p.push("name cannot be null");return done(u,p)}if(t===undefined){p.push("name cannot be undefined");return done(u,p)}if(typeof t!=="string"){p.push("name must be a string");return done(u,p)}if(!t.length){p.push("name length must be greater than zero")}if(t.startsWith(".")){p.push("name cannot start with a period")}if(t.startsWith("-")){p.push("name cannot start with a hyphen")}if(t.match(/^_/)){p.push("name cannot start with an underscore")}if(t.trim()!==t){p.push("name cannot contain leading or trailing spaces")}y.forEach((function(u){if(t.toLowerCase()===u){p.push(u+" is not a valid package name")}}));if(m.includes(t.toLowerCase())){u.push(t+" is a core module name")}if(t.length>214){u.push("name can no longer contain more than 214 characters")}if(t.toLowerCase()!==t){u.push("name can no longer contain capital letters")}if(/[~'!()*]/.test(t.split("/").slice(-1)[0])){u.push('name can no longer contain special characters ("~\'!()*")')}if(encodeURIComponent(t)!==t){var v=t.match(g);if(v){var b=v[1];var w=v[2];if(w.startsWith(".")){p.push("name cannot start with a period")}if(encodeURIComponent(b)===b&&encodeURIComponent(w)===w){return done(u,p)}}p.push("name can only contain URL-friendly characters")}return done(u,p)}var done=function(t,u){var p={validForNewPackages:u.length===0&&t.length===0,validForOldPackages:u.length===0,warnings:t,errors:u};if(!p.warnings.length){delete p.warnings}if(!p.errors.length){delete p.errors}return p};t.exports=validate},1192:(t,u,p)=>{const m=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys";const g=p(6928);const y=m?";":":";const v=p(7105);const getNotFoundError=t=>Object.assign(new Error(`not found: ${t}`),{code:"ENOENT"});const getPathInfo=(t,u)=>{const p=u.colon||y;const g=t.match(/\//)||m&&t.match(/\\/)?[""]:[...m?[process.cwd()]:[],...(u.path||process.env.PATH||"").split(p)];const v=m?u.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"";const b=m?v.split(p):[""];if(m){if(t.indexOf(".")!==-1&&b[0]!=="")b.unshift("")}return{pathEnv:g,pathExt:b,pathExtExe:v}};const which=(t,u,p)=>{if(typeof u==="function"){p=u;u={}}if(!u)u={};const{pathEnv:m,pathExt:y,pathExtExe:b}=getPathInfo(t,u);const w=[];const step=p=>new Promise(((y,v)=>{if(p===m.length)return u.all&&w.length?y(w):v(getNotFoundError(t));const b=m[p];const E=/^".*"$/.test(b)?b.slice(1,-1):b;const $=g.join(E,t);const O=!E&&/^\.[\\\/]/.test(t)?t.slice(0,2)+$:$;y(subStep(O,p,0))}));const subStep=(t,p,m)=>new Promise(((g,E)=>{if(m===y.length)return g(step(p+1));const $=y[m];v(t+$,{pathExt:b},((y,v)=>{if(!y&&v){if(u.all)w.push(t+$);else return g(t+$)}return g(subStep(t,p,m+1))}))}));return p?step(0).then((t=>p(null,t)),p):step(0)};const whichSync=(t,u)=>{u=u||{};const{pathEnv:p,pathExt:m,pathExtExe:y}=getPathInfo(t,u);const b=[];for(let w=0;w<p.length;w++){const E=p[w];const $=/^".*"$/.test(E)?E.slice(1,-1):E;const O=g.join($,t);const R=!$&&/^\.[\\\/]/.test(t)?t.slice(0,2)+O:O;for(let t=0;t<m.length;t++){const p=R+m[t];try{const t=v.sync(p,{pathExt:y});if(t){if(u.all)b.push(p);else return p}}catch(t){}}}if(u.all&&b.length)return b;if(u.nothrow)return null;throw getNotFoundError(t)};t.exports=which;which.sync=whichSync},181:t=>{"use strict";t.exports=require("buffer")},5317:t=>{"use strict";t.exports=require("child_process")},4434:t=>{"use strict";t.exports=require("events")},7515:t=>{"use strict";t.exports=require("fs")},8611:t=>{"use strict";t.exports=require("http")},5692:t=>{"use strict";t.exports=require("https")},1421:t=>{"use strict";t.exports=require("node:child_process")},8474:t=>{"use strict";t.exports=require("node:events")},3024:t=>{"use strict";t.exports=require("node:fs")},6760:t=>{"use strict";t.exports=require("node:path")},1708:t=>{"use strict";t.exports=require("node:process")},857:t=>{"use strict";t.exports=require("os")},6928:t=>{"use strict";t.exports=require("path")},3785:t=>{"use strict";t.exports=require("readline")},2203:t=>{"use strict";t.exports=require("stream")},7016:t=>{"use strict";t.exports=require("url")},9023:t=>{"use strict";t.exports=require("util")},4732:(t,u,p)=>{"use strict";const m=p(7028);const g=process.env;Object.defineProperty(u,"_vendors",{value:m.map((function(t){return t.constant}))});u.name=null;u.isPR=null;u.id=null;if(g.CI!=="false"){m.forEach((function(t){const p=Array.isArray(t.env)?t.env:[t.env];const m=p.every((function(t){return checkEnv(t)}));u[t.constant]=m;if(!m){return}u.name=t.name;u.isPR=checkPR(t);u.id=t.constant}))}u.isCI=!!(g.CI!=="false"&&(g.BUILD_ID||g.BUILD_NUMBER||g.CI||g.CI_APP_ID||g.CI_BUILD_ID||g.CI_BUILD_NUMBER||g.CI_NAME||g.CONTINUOUS_INTEGRATION||g.RUN_ID||u.name||false));function checkEnv(t){if(typeof t==="string")return!!g[t];if("env"in t){return g[t.env]&&g[t.env].includes(t.includes)}if("any"in t){return t.any.some((function(t){return!!g[t]}))}return Object.keys(t).every((function(u){return g[u]===t[u]}))}function checkPR(t){switch(typeof t.pr){case"string":return!!g[t.pr];case"object":if("env"in t.pr){if("any"in t.pr){return t.pr.any.some((function(u){return g[t.pr.env]===u}))}else{return t.pr.env in g&&g[t.pr.env]!==t.pr.ne}}else if("any"in t.pr){return t.pr.any.some((function(t){return!!g[t]}))}else{return checkEnv(t.pr)}default:return null}}},206:(t,u,p)=>{const{Argument:m}=p(1455);const{Command:g}=p(4623);const{CommanderError:y,InvalidArgumentError:v}=p(9400);const{Help:b}=p(2559);const{Option:w}=p(1033);u.DM=new g;u.gu=t=>new g(t);u.Ww=(t,u)=>new w(t,u);u.er=(t,u)=>new m(t,u);u.uB=g;u.c$=w;u.ef=m;u._V=b;u.b7=y;u.Di=v;u.a2=v},1455:(t,u,p)=>{const{InvalidArgumentError:m}=p(9400);class Argument{constructor(t,u){this.description=u||"";this.variadic=false;this.parseArg=undefined;this.defaultValue=undefined;this.defaultValueDescription=undefined;this.argChoices=undefined;switch(t[0]){case"<":this.required=true;this._name=t.slice(1,-1);break;case"[":this.required=false;this._name=t.slice(1,-1);break;default:this.required=true;this._name=t;break}if(this._name.endsWith("...")){this.variadic=true;this._name=this._name.slice(0,-3)}}name(){return this._name}_collectValue(t,u){if(u===this.defaultValue||!Array.isArray(u)){return[t]}u.push(t);return u}default(t,u){this.defaultValue=t;this.defaultValueDescription=u;return this}argParser(t){this.parseArg=t;return this}choices(t){this.argChoices=t.slice();this.parseArg=(t,u)=>{if(!this.argChoices.includes(t)){throw new m(`Allowed choices are ${this.argChoices.join(", ")}.`)}if(this.variadic){return this._collectValue(t,u)}return t};return this}argRequired(){this.required=true;return this}argOptional(){this.required=false;return this}}function humanReadableArgName(t){const u=t.name()+(t.variadic===true?"...":"");return t.required?"<"+u+">":"["+u+"]"}u.Argument=Argument;u.humanReadableArgName=humanReadableArgName},4623:(t,u,p)=>{const m=p(8474).EventEmitter;const g=p(1421);const y=p(6760);const v=p(3024);const b=p(1708);const{Argument:w,humanReadableArgName:E}=p(1455);const{CommanderError:$}=p(9400);const{Help:O,stripColor:R}=p(2559);const{Option:P,DualOptions:A}=p(1033);const{suggestSimilar:x}=p(3683);class Command extends m{constructor(t){super();this.commands=[];this.options=[];this.parent=null;this._allowUnknownOption=false;this._allowExcessArguments=false;this.registeredArguments=[];this._args=this.registeredArguments;this.args=[];this.rawArgs=[];this.processedArgs=[];this._scriptPath=null;this._name=t||"";this._optionValues={};this._optionValueSources={};this._storeOptionsAsProperties=false;this._actionHandler=null;this._executableHandler=false;this._executableFile=null;this._executableDir=null;this._defaultCommandName=null;this._exitCallback=null;this._aliases=[];this._combineFlagAndOptionalValue=true;this._description="";this._summary="";this._argsDescription=undefined;this._enablePositionalOptions=false;this._passThroughOptions=false;this._lifeCycleHooks={};this._showHelpAfterError=false;this._showSuggestionAfterError=true;this._savedState=null;this._outputConfiguration={writeOut:t=>b.stdout.write(t),writeErr:t=>b.stderr.write(t),outputError:(t,u)=>u(t),getOutHelpWidth:()=>b.stdout.isTTY?b.stdout.columns:undefined,getErrHelpWidth:()=>b.stderr.isTTY?b.stderr.columns:undefined,getOutHasColors:()=>useColor()??(b.stdout.isTTY&&b.stdout.hasColors?.()),getErrHasColors:()=>useColor()??(b.stderr.isTTY&&b.stderr.hasColors?.()),stripColor:t=>R(t)};this._hidden=false;this._helpOption=undefined;this._addImplicitHelpCommand=undefined;this._helpCommand=undefined;this._helpConfiguration={};this._helpGroupHeading=undefined;this._defaultCommandGroup=undefined;this._defaultOptionGroup=undefined}copyInheritedSettings(t){this._outputConfiguration=t._outputConfiguration;this._helpOption=t._helpOption;this._helpCommand=t._helpCommand;this._helpConfiguration=t._helpConfiguration;this._exitCallback=t._exitCallback;this._storeOptionsAsProperties=t._storeOptionsAsProperties;this._combineFlagAndOptionalValue=t._combineFlagAndOptionalValue;this._allowExcessArguments=t._allowExcessArguments;this._enablePositionalOptions=t._enablePositionalOptions;this._showHelpAfterError=t._showHelpAfterError;this._showSuggestionAfterError=t._showSuggestionAfterError;return this}_getCommandAndAncestors(){const t=[];for(let u=this;u;u=u.parent){t.push(u)}return t}command(t,u,p){let m=u;let g=p;if(typeof m==="object"&&m!==null){g=m;m=null}g=g||{};const[,y,v]=t.match(/([^ ]+) *(.*)/);const b=this.createCommand(y);if(m){b.description(m);b._executableHandler=true}if(g.isDefault)this._defaultCommandName=b._name;b._hidden=!!(g.noHelp||g.hidden);b._executableFile=g.executableFile||null;if(v)b.arguments(v);this._registerCommand(b);b.parent=this;b.copyInheritedSettings(this);if(m)return this;return b}createCommand(t){return new Command(t)}createHelp(){return Object.assign(new O,this.configureHelp())}configureHelp(t){if(t===undefined)return this._helpConfiguration;this._helpConfiguration=t;return this}configureOutput(t){if(t===undefined)return this._outputConfiguration;this._outputConfiguration={...this._outputConfiguration,...t};return this}showHelpAfterError(t=true){if(typeof t!=="string")t=!!t;this._showHelpAfterError=t;return this}showSuggestionAfterError(t=true){this._showSuggestionAfterError=!!t;return this}addCommand(t,u){if(!t._name){throw new Error(`Command passed to .addCommand() must have a name\n- specify the name in Command constructor or using .name()`)}u=u||{};if(u.isDefault)this._defaultCommandName=t._name;if(u.noHelp||u.hidden)t._hidden=true;this._registerCommand(t);t.parent=this;t._checkForBrokenPassThrough();return this}createArgument(t,u){return new w(t,u)}argument(t,u,p,m){const g=this.createArgument(t,u);if(typeof p==="function"){g.default(m).argParser(p)}else{g.default(p)}this.addArgument(g);return this}arguments(t){t.trim().split(/ +/).forEach((t=>{this.argument(t)}));return this}addArgument(t){const u=this.registeredArguments.slice(-1)[0];if(u?.variadic){throw new Error(`only the last argument can be variadic '${u.name()}'`)}if(t.required&&t.defaultValue!==undefined&&t.parseArg===undefined){throw new Error(`a default value for a required argument is never used: '${t.name()}'`)}this.registeredArguments.push(t);return this}helpCommand(t,u){if(typeof t==="boolean"){this._addImplicitHelpCommand=t;if(t&&this._defaultCommandGroup){this._initCommandGroup(this._getHelpCommand())}return this}const p=t??"help [command]";const[,m,g]=p.match(/([^ ]+) *(.*)/);const y=u??"display help for command";const v=this.createCommand(m);v.helpOption(false);if(g)v.arguments(g);if(y)v.description(y);this._addImplicitHelpCommand=true;this._helpCommand=v;if(t||u)this._initCommandGroup(v);return this}addHelpCommand(t,u){if(typeof t!=="object"){this.helpCommand(t,u);return this}this._addImplicitHelpCommand=true;this._helpCommand=t;this._initCommandGroup(t);return this}_getHelpCommand(){const t=this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"));if(t){if(this._helpCommand===undefined){this.helpCommand(undefined,undefined)}return this._helpCommand}return null}hook(t,u){const p=["preSubcommand","preAction","postAction"];if(!p.includes(t)){throw new Error(`Unexpected value for event passed to hook : '${t}'.\nExpecting one of '${p.join("', '")}'`)}if(this._lifeCycleHooks[t]){this._lifeCycleHooks[t].push(u)}else{this._lifeCycleHooks[t]=[u]}return this}exitOverride(t){if(t){this._exitCallback=t}else{this._exitCallback=t=>{if(t.code!=="commander.executeSubCommandAsync"){throw t}else{}}}return this}_exit(t,u,p){if(this._exitCallback){this._exitCallback(new $(t,u,p))}b.exit(t)}action(t){const listener=u=>{const p=this.registeredArguments.length;const m=u.slice(0,p);if(this._storeOptionsAsProperties){m[p]=this}else{m[p]=this.opts()}m.push(this);return t.apply(this,m)};this._actionHandler=listener;return this}createOption(t,u){return new P(t,u)}_callParseArg(t,u,p,m){try{return t.parseArg(u,p)}catch(t){if(t.code==="commander.invalidArgument"){const u=`${m} ${t.message}`;this.error(u,{exitCode:t.exitCode,code:t.code})}throw t}}_registerOption(t){const u=t.short&&this._findOption(t.short)||t.long&&this._findOption(t.long);if(u){const p=t.long&&this._findOption(t.long)?t.long:t.short;throw new Error(`Cannot add option '${t.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${p}'\n- already used by option '${u.flags}'`)}this._initOptionGroup(t);this.options.push(t)}_registerCommand(t){const knownBy=t=>[t.name()].concat(t.aliases());const u=knownBy(t).find((t=>this._findCommand(t)));if(u){const p=knownBy(this._findCommand(u)).join("|");const m=knownBy(t).join("|");throw new Error(`cannot add command '${m}' as already have command '${p}'`)}this._initCommandGroup(t);this.commands.push(t)}addOption(t){this._registerOption(t);const u=t.name();const p=t.attributeName();if(t.negate){const u=t.long.replace(/^--no-/,"--");if(!this._findOption(u)){this.setOptionValueWithSource(p,t.defaultValue===undefined?true:t.defaultValue,"default")}}else if(t.defaultValue!==undefined){this.setOptionValueWithSource(p,t.defaultValue,"default")}const handleOptionValue=(u,m,g)=>{if(u==null&&t.presetArg!==undefined){u=t.presetArg}const y=this.getOptionValue(p);if(u!==null&&t.parseArg){u=this._callParseArg(t,u,y,m)}else if(u!==null&&t.variadic){u=t._collectValue(u,y)}if(u==null){if(t.negate){u=false}else if(t.isBoolean()||t.optional){u=true}else{u=""}}this.setOptionValueWithSource(p,u,g)};this.on("option:"+u,(u=>{const p=`error: option '${t.flags}' argument '${u}' is invalid.`;handleOptionValue(u,p,"cli")}));if(t.envVar){this.on("optionEnv:"+u,(u=>{const p=`error: option '${t.flags}' value '${u}' from env '${t.envVar}' is invalid.`;handleOptionValue(u,p,"env")}))}return this}_optionEx(t,u,p,m,g){if(typeof u==="object"&&u instanceof P){throw new Error("To add an Option object use addOption() instead of option() or requiredOption()")}const y=this.createOption(u,p);y.makeOptionMandatory(!!t.mandatory);if(typeof m==="function"){y.default(g).argParser(m)}else if(m instanceof RegExp){const t=m;m=(u,p)=>{const m=t.exec(u);return m?m[0]:p};y.default(g).argParser(m)}else{y.default(m)}return this.addOption(y)}option(t,u,p,m){return this._optionEx({},t,u,p,m)}requiredOption(t,u,p,m){return this._optionEx({mandatory:true},t,u,p,m)}combineFlagAndOptionalValue(t=true){this._combineFlagAndOptionalValue=!!t;return this}allowUnknownOption(t=true){this._allowUnknownOption=!!t;return this}allowExcessArguments(t=true){this._allowExcessArguments=!!t;return this}enablePositionalOptions(t=true){this._enablePositionalOptions=!!t;return this}passThroughOptions(t=true){this._passThroughOptions=!!t;this._checkForBrokenPassThrough();return this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions){throw new Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}}storeOptionsAsProperties(t=true){if(this.options.length){throw new Error("call .storeOptionsAsProperties() before adding options")}if(Object.keys(this._optionValues).length){throw new Error("call .storeOptionsAsProperties() before setting option values")}this._storeOptionsAsProperties=!!t;return this}getOptionValue(t){if(this._storeOptionsAsProperties){return this[t]}return this._optionValues[t]}setOptionValue(t,u){return this.setOptionValueWithSource(t,u,undefined)}setOptionValueWithSource(t,u,p){if(this._storeOptionsAsProperties){this[t]=u}else{this._optionValues[t]=u}this._optionValueSources[t]=p;return this}getOptionValueSource(t){return this._optionValueSources[t]}getOptionValueSourceWithGlobals(t){let u;this._getCommandAndAncestors().forEach((p=>{if(p.getOptionValueSource(t)!==undefined){u=p.getOptionValueSource(t)}}));return u}_prepareUserArgs(t,u){if(t!==undefined&&!Array.isArray(t)){throw new Error("first parameter to parse must be array or undefined")}u=u||{};if(t===undefined&&u.from===undefined){if(b.versions?.electron){u.from="electron"}const t=b.execArgv??[];if(t.includes("-e")||t.includes("--eval")||t.includes("-p")||t.includes("--print")){u.from="eval"}}if(t===undefined){t=b.argv}this.rawArgs=t.slice();let p;switch(u.from){case undefined:case"node":this._scriptPath=t[1];p=t.slice(2);break;case"electron":if(b.defaultApp){this._scriptPath=t[1];p=t.slice(2)}else{p=t.slice(1)}break;case"user":p=t.slice(0);break;case"eval":p=t.slice(1);break;default:throw new Error(`unexpected parse option { from: '${u.from}' }`)}if(!this._name&&this._scriptPath)this.nameFromFilename(this._scriptPath);this._name=this._name||"program";return p}parse(t,u){this._prepareForParse();const p=this._prepareUserArgs(t,u);this._parseCommand([],p);return this}async parseAsync(t,u){this._prepareForParse();const p=this._prepareUserArgs(t,u);await this._parseCommand([],p);return this}_prepareForParse(){if(this._savedState===null){this.saveStateBeforeParse()}else{this.restoreStateBeforeParse()}}saveStateBeforeParse(){this._savedState={_name:this._name,_optionValues:{...this._optionValues},_optionValueSources:{...this._optionValueSources}}}restoreStateBeforeParse(){if(this._storeOptionsAsProperties)throw new Error(`Can not call parse again when storeOptionsAsProperties is true.\n- either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name;this._scriptPath=null;this.rawArgs=[];this._optionValues={...this._savedState._optionValues};this._optionValueSources={...this._savedState._optionValueSources};this.args=[];this.processedArgs=[]}_checkForMissingExecutable(t,u,p){if(v.existsSync(t))return;const m=u?`searched for local subcommand relative to directory '${u}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory";const g=`'${t}' does not exist\n - if '${p}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead\n - if the default executable name is not suitable, use the executableFile option to supply a custom name or path\n - ${m}`;throw new Error(g)}_executeSubCommand(t,u){u=u.slice();let p=false;const m=[".js",".ts",".tsx",".mjs",".cjs"];function findFile(t,u){const p=y.resolve(t,u);if(v.existsSync(p))return p;if(m.includes(y.extname(u)))return undefined;const g=m.find((t=>v.existsSync(`${p}${t}`)));if(g)return`${p}${g}`;return undefined}this._checkForMissingMandatoryOptions();this._checkForConflictingOptions();let w=t._executableFile||`${this._name}-${t._name}`;let E=this._executableDir||"";if(this._scriptPath){let t;try{t=v.realpathSync(this._scriptPath)}catch{t=this._scriptPath}E=y.resolve(y.dirname(t),E)}if(E){let u=findFile(E,w);if(!u&&!t._executableFile&&this._scriptPath){const p=y.basename(this._scriptPath,y.extname(this._scriptPath));if(p!==this._name){u=findFile(E,`${p}-${t._name}`)}}w=u||w}p=m.includes(y.extname(w));let O;if(b.platform!=="win32"){if(p){u.unshift(w);u=incrementNodeInspectorPort(b.execArgv).concat(u);O=g.spawn(b.argv[0],u,{stdio:"inherit"})}else{O=g.spawn(w,u,{stdio:"inherit"})}}else{this._checkForMissingExecutable(w,E,t._name);u.unshift(w);u=incrementNodeInspectorPort(b.execArgv).concat(u);O=g.spawn(b.execPath,u,{stdio:"inherit"})}if(!O.killed){const t=["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"];t.forEach((t=>{b.on(t,(()=>{if(O.killed===false&&O.exitCode===null){O.kill(t)}}))}))}const R=this._exitCallback;O.on("close",(t=>{t=t??1;if(!R){b.exit(t)}else{R(new $(t,"commander.executeSubCommandAsync","(close)"))}}));O.on("error",(u=>{if(u.code==="ENOENT"){this._checkForMissingExecutable(w,E,t._name)}else if(u.code==="EACCES"){throw new Error(`'${w}' not executable`)}if(!R){b.exit(1)}else{const t=new $(1,"commander.executeSubCommandAsync","(error)");t.nestedError=u;R(t)}}));this.runningCommand=O}_dispatchSubcommand(t,u,p){const m=this._findCommand(t);if(!m)this.help({error:true});m._prepareForParse();let g;g=this._chainOrCallSubCommandHook(g,m,"preSubcommand");g=this._chainOrCall(g,(()=>{if(m._executableHandler){this._executeSubCommand(m,u.concat(p))}else{return m._parseCommand(u,p)}}));return g}_dispatchHelpCommand(t){if(!t){this.help()}const u=this._findCommand(t);if(u&&!u._executableHandler){u.help()}return this._dispatchSubcommand(t,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){this.registeredArguments.forEach(((t,u)=>{if(t.required&&this.args[u]==null){this.missingArgument(t.name())}}));if(this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic){return}if(this.args.length>this.registeredArguments.length){this._excessArguments(this.args)}}_processArguments(){const myParseArg=(t,u,p)=>{let m=u;if(u!==null&&t.parseArg){const g=`error: command-argument value '${u}' is invalid for argument '${t.name()}'.`;m=this._callParseArg(t,u,p,g)}return m};this._checkNumberOfArguments();const t=[];this.registeredArguments.forEach(((u,p)=>{let m=u.defaultValue;if(u.variadic){if(p<this.args.length){m=this.args.slice(p);if(u.parseArg){m=m.reduce(((t,p)=>myParseArg(u,p,t)),u.defaultValue)}}else if(m===undefined){m=[]}}else if(p<this.args.length){m=this.args[p];if(u.parseArg){m=myParseArg(u,m,u.defaultValue)}}t[p]=m}));this.processedArgs=t}_chainOrCall(t,u){if(t?.then&&typeof t.then==="function"){return t.then((()=>u()))}return u()}_chainOrCallHooks(t,u){let p=t;const m=[];this._getCommandAndAncestors().reverse().filter((t=>t._lifeCycleHooks[u]!==undefined)).forEach((t=>{t._lifeCycleHooks[u].forEach((u=>{m.push({hookedCommand:t,callback:u})}))}));if(u==="postAction"){m.reverse()}m.forEach((t=>{p=this._chainOrCall(p,(()=>t.callback(t.hookedCommand,this)))}));return p}_chainOrCallSubCommandHook(t,u,p){let m=t;if(this._lifeCycleHooks[p]!==undefined){this._lifeCycleHooks[p].forEach((t=>{m=this._chainOrCall(m,(()=>t(this,u)))}))}return m}_parseCommand(t,u){const p=this.parseOptions(u);this._parseOptionsEnv();this._parseOptionsImplied();t=t.concat(p.operands);u=p.unknown;this.args=t.concat(u);if(t&&this._findCommand(t[0])){return this._dispatchSubcommand(t[0],t.slice(1),u)}if(this._getHelpCommand()&&t[0]===this._getHelpCommand().name()){return this._dispatchHelpCommand(t[1])}if(this._defaultCommandName){this._outputHelpIfRequested(u);return this._dispatchSubcommand(this._defaultCommandName,t,u)}if(this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName){this.help({error:true})}this._outputHelpIfRequested(p.unknown);this._checkForMissingMandatoryOptions();this._checkForConflictingOptions();const checkForUnknownOptions=()=>{if(p.unknown.length>0){this.unknownOption(p.unknown[0])}};const m=`command:${this.name()}`;if(this._actionHandler){checkForUnknownOptions();this._processArguments();let p;p=this._chainOrCallHooks(p,"preAction");p=this._chainOrCall(p,(()=>this._actionHandler(this.processedArgs)));if(this.parent){p=this._chainOrCall(p,(()=>{this.parent.emit(m,t,u)}))}p=this._chainOrCallHooks(p,"postAction");return p}if(this.parent?.listenerCount(m)){checkForUnknownOptions();this._processArguments();this.parent.emit(m,t,u)}else if(t.length){if(this._findCommand("*")){return this._dispatchSubcommand("*",t,u)}if(this.listenerCount("command:*")){this.emit("command:*",t,u)}else if(this.commands.length){this.unknownCommand()}else{checkForUnknownOptions();this._processArguments()}}else if(this.commands.length){checkForUnknownOptions();this.help({error:true})}else{checkForUnknownOptions();this._processArguments()}}_findCommand(t){if(!t)return undefined;return this.commands.find((u=>u._name===t||u._aliases.includes(t)))}_findOption(t){return this.options.find((u=>u.is(t)))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach((t=>{t.options.forEach((u=>{if(u.mandatory&&t.getOptionValue(u.attributeName())===undefined){t.missingMandatoryOptionValue(u)}}))}))}_checkForConflictingLocalOptions(){const t=this.options.filter((t=>{const u=t.attributeName();if(this.getOptionValue(u)===undefined){return false}return this.getOptionValueSource(u)!=="default"}));const u=t.filter((t=>t.conflictsWith.length>0));u.forEach((u=>{const p=t.find((t=>u.conflictsWith.includes(t.attributeName())));if(p){this._conflictingOption(u,p)}}))}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach((t=>{t._checkForConflictingLocalOptions()}))}parseOptions(t){const u=[];const p=[];let m=u;function maybeOption(t){return t.length>1&&t[0]==="-"}const negativeNumberArg=t=>{if(!/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(t))return false;return!this._getCommandAndAncestors().some((t=>t.options.map((t=>t.short)).some((t=>/^-\d$/.test(t)))))};let g=null;let y=null;let v=0;while(v<t.length||y){const b=y??t[v++];y=null;if(b==="--"){if(m===p)m.push(b);m.push(...t.slice(v));break}if(g&&(!maybeOption(b)||negativeNumberArg(b))){this.emit(`option:${g.name()}`,b);continue}g=null;if(maybeOption(b)){const u=this._findOption(b);if(u){if(u.required){const p=t[v++];if(p===undefined)this.optionMissingArgument(u);this.emit(`option:${u.name()}`,p)}else if(u.optional){let p=null;if(v<t.length&&(!maybeOption(t[v])||negativeNumberArg(t[v]))){p=t[v++]}this.emit(`option:${u.name()}`,p)}else{this.emit(`option:${u.name()}`)}g=u.variadic?u:null;continue}}if(b.length>2&&b[0]==="-"&&b[1]!=="-"){const t=this._findOption(`-${b[1]}`);if(t){if(t.required||t.optional&&this._combineFlagAndOptionalValue){this.emit(`option:${t.name()}`,b.slice(2))}else{this.emit(`option:${t.name()}`);y=`-${b.slice(2)}`}continue}}if(/^--[^=]+=/.test(b)){const t=b.indexOf("=");const u=this._findOption(b.slice(0,t));if(u&&(u.required||u.optional)){this.emit(`option:${u.name()}`,b.slice(t+1));continue}}if(m===u&&maybeOption(b)&&!(this.commands.length===0&&negativeNumberArg(b))){m=p}if((this._enablePositionalOptions||this._passThroughOptions)&&u.length===0&&p.length===0){if(this._findCommand(b)){u.push(b);p.push(...t.slice(v));break}else if(this._getHelpCommand()&&b===this._getHelpCommand().name()){u.push(b,...t.slice(v));break}else if(this._defaultCommandName){p.push(b,...t.slice(v));break}}if(this._passThroughOptions){m.push(b,...t.slice(v));break}m.push(b)}return{operands:u,unknown:p}}opts(){if(this._storeOptionsAsProperties){const t={};const u=this.options.length;for(let p=0;p<u;p++){const u=this.options[p].attributeName();t[u]=u===this._versionOptionName?this._version:this[u]}return t}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce(((t,u)=>Object.assign(t,u.opts())),{})}error(t,u){this._outputConfiguration.outputError(`${t}\n`,this._outputConfiguration.writeErr);if(typeof this._showHelpAfterError==="string"){this._outputConfiguration.writeErr(`${this._showHelpAfterError}\n`)}else if(this._showHelpAfterError){this._outputConfiguration.writeErr("\n");this.outputHelp({error:true})}const p=u||{};const m=p.exitCode||1;const g=p.code||"commander.error";this._exit(m,g,t)}_parseOptionsEnv(){this.options.forEach((t=>{if(t.envVar&&t.envVar in b.env){const u=t.attributeName();if(this.getOptionValue(u)===undefined||["default","config","env"].includes(this.getOptionValueSource(u))){if(t.required||t.optional){this.emit(`optionEnv:${t.name()}`,b.env[t.envVar])}else{this.emit(`optionEnv:${t.name()}`)}}}}))}_parseOptionsImplied(){const t=new A(this.options);const hasCustomOptionValue=t=>this.getOptionValue(t)!==undefined&&!["default","implied"].includes(this.getOptionValueSource(t));this.options.filter((u=>u.implied!==undefined&&hasCustomOptionValue(u.attributeName())&&t.valueFromOption(this.getOptionValue(u.attributeName()),u))).forEach((t=>{Object.keys(t.implied).filter((t=>!hasCustomOptionValue(t))).forEach((u=>{this.setOptionValueWithSource(u,t.implied[u],"implied")}))}))}missingArgument(t){const u=`error: missing required argument '${t}'`;this.error(u,{code:"commander.missingArgument"})}optionMissingArgument(t){const u=`error: option '${t.flags}' argument missing`;this.error(u,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(t){const u=`error: required option '${t.flags}' not specified`;this.error(u,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(t,u){const findBestOptionFromValue=t=>{const u=t.attributeName();const p=this.getOptionValue(u);const m=this.options.find((t=>t.negate&&u===t.attributeName()));const g=this.options.find((t=>!t.negate&&u===t.attributeName()));if(m&&(m.presetArg===undefined&&p===false||m.presetArg!==undefined&&p===m.presetArg)){return m}return g||t};const getErrorMessage=t=>{const u=findBestOptionFromValue(t);const p=u.attributeName();const m=this.getOptionValueSource(p);if(m==="env"){return`environment variable '${u.envVar}'`}return`option '${u.flags}'`};const p=`error: ${getErrorMessage(t)} cannot be used with ${getErrorMessage(u)}`;this.error(p,{code:"commander.conflictingOption"})}unknownOption(t){if(this._allowUnknownOption)return;let u="";if(t.startsWith("--")&&this._showSuggestionAfterError){let p=[];let m=this;do{const t=m.createHelp().visibleOptions(m).filter((t=>t.long)).map((t=>t.long));p=p.concat(t);m=m.parent}while(m&&!m._enablePositionalOptions);u=x(t,p)}const p=`error: unknown option '${t}'${u}`;this.error(p,{code:"commander.unknownOption"})}_excessArguments(t){if(this._allowExcessArguments)return;const u=this.registeredArguments.length;const p=u===1?"":"s";const m=this.parent?` for '${this.name()}'`:"";const g=`error: too many arguments${m}. Expected ${u} argument${p} but got ${t.length}.`;this.error(g,{code:"commander.excessArguments"})}unknownCommand(){const t=this.args[0];let u="";if(this._showSuggestionAfterError){const p=[];this.createHelp().visibleCommands(this).forEach((t=>{p.push(t.name());if(t.alias())p.push(t.alias())}));u=x(t,p)}const p=`error: unknown command '${t}'${u}`;this.error(p,{code:"commander.unknownCommand"})}version(t,u,p){if(t===undefined)return this._version;this._version=t;u=u||"-V, --version";p=p||"output the version number";const m=this.createOption(u,p);this._versionOptionName=m.attributeName();this._registerOption(m);this.on("option:"+m.name(),(()=>{this._outputConfiguration.writeOut(`${t}\n`);this._exit(0,"commander.version",t)}));return this}description(t,u){if(t===undefined&&u===undefined)return this._description;this._description=t;if(u){this._argsDescription=u}return this}summary(t){if(t===undefined)return this._summary;this._summary=t;return this}alias(t){if(t===undefined)return this._aliases[0];let u=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler){u=this.commands[this.commands.length-1]}if(t===u._name)throw new Error("Command alias can't be the same as its name");const p=this.parent?._findCommand(t);if(p){const u=[p.name()].concat(p.aliases()).join("|");throw new Error(`cannot add alias '${t}' to command '${this.name()}' as already have command '${u}'`)}u._aliases.push(t);return this}aliases(t){if(t===undefined)return this._aliases;t.forEach((t=>this.alias(t)));return this}usage(t){if(t===undefined){if(this._usage)return this._usage;const t=this.registeredArguments.map((t=>E(t)));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?t:[]).join(" ")}this._usage=t;return this}name(t){if(t===undefined)return this._name;this._name=t;return this}helpGroup(t){if(t===undefined)return this._helpGroupHeading??"";this._helpGroupHeading=t;return this}commandsGroup(t){if(t===undefined)return this._defaultCommandGroup??"";this._defaultCommandGroup=t;return this}optionsGroup(t){if(t===undefined)return this._defaultOptionGroup??"";this._defaultOptionGroup=t;return this}_initOptionGroup(t){if(this._defaultOptionGroup&&!t.helpGroupHeading)t.helpGroup(this._defaultOptionGroup)}_initCommandGroup(t){if(this._defaultCommandGroup&&!t.helpGroup())t.helpGroup(this._defaultCommandGroup)}nameFromFilename(t){this._name=y.basename(t,y.extname(t));return this}executableDir(t){if(t===undefined)return this._executableDir;this._executableDir=t;return this}helpInformation(t){const u=this.createHelp();const p=this._getOutputContext(t);u.prepareContext({error:p.error,helpWidth:p.helpWidth,outputHasColors:p.hasColors});const m=u.formatHelp(this,u);if(p.hasColors)return m;return this._outputConfiguration.stripColor(m)}_getOutputContext(t){t=t||{};const u=!!t.error;let p;let m;let g;if(u){p=t=>this._outputConfiguration.writeErr(t);m=this._outputConfiguration.getErrHasColors();g=this._outputConfiguration.getErrHelpWidth()}else{p=t=>this._outputConfiguration.writeOut(t);m=this._outputConfiguration.getOutHasColors();g=this._outputConfiguration.getOutHelpWidth()}const write=t=>{if(!m)t=this._outputConfiguration.stripColor(t);return p(t)};return{error:u,write:write,hasColors:m,helpWidth:g}}outputHelp(t){let u;if(typeof t==="function"){u=t;t=undefined}const p=this._getOutputContext(t);const m={error:p.error,write:p.write,command:this};this._getCommandAndAncestors().reverse().forEach((t=>t.emit("beforeAllHelp",m)));this.emit("beforeHelp",m);let g=this.helpInformation({error:p.error});if(u){g=u(g);if(typeof g!=="string"&&!Buffer.isBuffer(g)){throw new Error("outputHelp callback must return a string or a Buffer")}}p.write(g);if(this._getHelpOption()?.long){this.emit(this._getHelpOption().long)}this.emit("afterHelp",m);this._getCommandAndAncestors().forEach((t=>t.emit("afterAllHelp",m)))}helpOption(t,u){if(typeof t==="boolean"){if(t){if(this._helpOption===null)this._helpOption=undefined;if(this._defaultOptionGroup){this._initOptionGroup(this._getHelpOption())}}else{this._helpOption=null}return this}this._helpOption=this.createOption(t??"-h, --help",u??"display help for command");if(t||u)this._initOptionGroup(this._helpOption);return this}_getHelpOption(){if(this._helpOption===undefined){this.helpOption(undefined,undefined)}return this._helpOption}addHelpOption(t){this._helpOption=t;this._initOptionGroup(t);return this}help(t){this.outputHelp(t);let u=Number(b.exitCode??0);if(u===0&&t&&typeof t!=="function"&&t.error){u=1}this._exit(u,"commander.help","(outputHelp)")}addHelpText(t,u){const p=["beforeAll","before","after","afterAll"];if(!p.includes(t)){throw new Error(`Unexpected value for position to addHelpText.\nExpecting one of '${p.join("', '")}'`)}const m=`${t}Help`;this.on(m,(t=>{let p;if(typeof u==="function"){p=u({error:t.error,command:t.command})}else{p=u}if(p){t.write(`${p}\n`)}}));return this}_outputHelpIfRequested(t){const u=this._getHelpOption();const p=u&&t.find((t=>u.is(t)));if(p){this.outputHelp();this._exit(0,"commander.helpDisplayed","(outputHelp)")}}}function incrementNodeInspectorPort(t){return t.map((t=>{if(!t.startsWith("--inspect")){return t}let u;let p="127.0.0.1";let m="9229";let g;if((g=t.match(/^(--inspect(-brk)?)$/))!==null){u=g[1]}else if((g=t.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null){u=g[1];if(/^\d+$/.test(g[3])){m=g[3]}else{p=g[3]}}else if((g=t.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null){u=g[1];p=g[3];m=g[4]}if(u&&m!=="0"){return`${u}=${p}:${parseInt(m)+1}`}return t}))}function useColor(){if(b.env.NO_COLOR||b.env.FORCE_COLOR==="0"||b.env.FORCE_COLOR==="false")return false;if(b.env.FORCE_COLOR||b.env.CLICOLOR_FORCE!==undefined)return true;return undefined}u.Command=Command;u.useColor=useColor},9400:(t,u)=>{class CommanderError extends Error{constructor(t,u,p){super(p);Error.captureStackTrace(this,this.constructor);this.name=this.constructor.name;this.code=u;this.exitCode=t;this.nestedError=undefined}}class InvalidArgumentError extends CommanderError{constructor(t){super(1,"commander.invalidArgument",t);Error.captureStackTrace(this,this.constructor);this.name=this.constructor.name}}u.CommanderError=CommanderError;u.InvalidArgumentError=InvalidArgumentError},2559:(t,u,p)=>{const{humanReadableArgName:m}=p(1455);class Help{constructor(){this.helpWidth=undefined;this.minWidthToWrap=40;this.sortSubcommands=false;this.sortOptions=false;this.showGlobalOptions=false}prepareContext(t){this.helpWidth=this.helpWidth??t.helpWidth??80}visibleCommands(t){const u=t.commands.filter((t=>!t._hidden));const p=t._getHelpCommand();if(p&&!p._hidden){u.push(p)}if(this.sortSubcommands){u.sort(((t,u)=>t.name().localeCompare(u.name())))}return u}compareOptions(t,u){const getSortKey=t=>t.short?t.short.replace(/^-/,""):t.long.replace(/^--/,"");return getSortKey(t).localeCompare(getSortKey(u))}visibleOptions(t){const u=t.options.filter((t=>!t.hidden));const p=t._getHelpOption();if(p&&!p.hidden){const m=p.short&&t._findOption(p.short);const g=p.long&&t._findOption(p.long);if(!m&&!g){u.push(p)}else if(p.long&&!g){u.push(t.createOption(p.long,p.description))}else if(p.short&&!m){u.push(t.createOption(p.short,p.description))}}if(this.sortOptions){u.sort(this.compareOptions)}return u}visibleGlobalOptions(t){if(!this.showGlobalOptions)return[];const u=[];for(let p=t.parent;p;p=p.parent){const t=p.options.filter((t=>!t.hidden));u.push(...t)}if(this.sortOptions){u.sort(this.compareOptions)}return u}visibleArguments(t){if(t._argsDescription){t.registeredArguments.forEach((u=>{u.description=u.description||t._argsDescription[u.name()]||""}))}if(t.registeredArguments.find((t=>t.description))){return t.registeredArguments}return[]}subcommandTerm(t){const u=t.registeredArguments.map((t=>m(t))).join(" ");return t._name+(t._aliases[0]?"|"+t._aliases[0]:"")+(t.options.length?" [options]":"")+(u?" "+u:"")}optionTerm(t){return t.flags}argumentTerm(t){return t.name()}longestSubcommandTermLength(t,u){return u.visibleCommands(t).reduce(((t,p)=>Math.max(t,this.displayWidth(u.styleSubcommandTerm(u.subcommandTerm(p))))),0)}longestOptionTermLength(t,u){return u.visibleOptions(t).reduce(((t,p)=>Math.max(t,this.displayWidth(u.styleOptionTerm(u.optionTerm(p))))),0)}longestGlobalOptionTermLength(t,u){return u.visibleGlobalOptions(t).reduce(((t,p)=>Math.max(t,this.displayWidth(u.styleOptionTerm(u.optionTerm(p))))),0)}longestArgumentTermLength(t,u){return u.visibleArguments(t).reduce(((t,p)=>Math.max(t,this.displayWidth(u.styleArgumentTerm(u.argumentTerm(p))))),0)}commandUsage(t){let u=t._name;if(t._aliases[0]){u=u+"|"+t._aliases[0]}let p="";for(let u=t.parent;u;u=u.parent){p=u.name()+" "+p}return p+u+" "+t.usage()}commandDescription(t){return t.description()}subcommandDescription(t){return t.summary()||t.description()}optionDescription(t){const u=[];if(t.argChoices){u.push(`choices: ${t.argChoices.map((t=>JSON.stringify(t))).join(", ")}`)}if(t.defaultValue!==undefined){const p=t.required||t.optional||t.isBoolean()&&typeof t.defaultValue==="boolean";if(p){u.push(`default: ${t.defaultValueDescription||JSON.stringify(t.defaultValue)}`)}}if(t.presetArg!==undefined&&t.optional){u.push(`preset: ${JSON.stringify(t.presetArg)}`)}if(t.envVar!==undefined){u.push(`env: ${t.envVar}`)}if(u.length>0){const p=`(${u.join(", ")})`;if(t.description){return`${t.description} ${p}`}return p}return t.description}argumentDescription(t){const u=[];if(t.argChoices){u.push(`choices: ${t.argChoices.map((t=>JSON.stringify(t))).join(", ")}`)}if(t.defaultValue!==undefined){u.push(`default: ${t.defaultValueDescription||JSON.stringify(t.defaultValue)}`)}if(u.length>0){const p=`(${u.join(", ")})`;if(t.description){return`${t.description} ${p}`}return p}return t.description}formatItemList(t,u,p){if(u.length===0)return[];return[p.styleTitle(t),...u,""]}groupItems(t,u,p){const m=new Map;t.forEach((t=>{const u=p(t);if(!m.has(u))m.set(u,[])}));u.forEach((t=>{const u=p(t);if(!m.has(u)){m.set(u,[])}m.get(u).push(t)}));return m}formatHelp(t,u){const p=u.padWidth(t,u);const m=u.helpWidth??80;function callFormatItem(t,m){return u.formatItem(t,p,m,u)}let g=[`${u.styleTitle("Usage:")} ${u.styleUsage(u.commandUsage(t))}`,""];const y=u.commandDescription(t);if(y.length>0){g=g.concat([u.boxWrap(u.styleCommandDescription(y),m),""])}const v=u.visibleArguments(t).map((t=>callFormatItem(u.styleArgumentTerm(u.argumentTerm(t)),u.styleArgumentDescription(u.argumentDescription(t)))));g=g.concat(this.formatItemList("Arguments:",v,u));const b=this.groupItems(t.options,u.visibleOptions(t),(t=>t.helpGroupHeading??"Options:"));b.forEach(((t,p)=>{const m=t.map((t=>callFormatItem(u.styleOptionTerm(u.optionTerm(t)),u.styleOptionDescription(u.optionDescription(t)))));g=g.concat(this.formatItemList(p,m,u))}));if(u.showGlobalOptions){const p=u.visibleGlobalOptions(t).map((t=>callFormatItem(u.styleOptionTerm(u.optionTerm(t)),u.styleOptionDescription(u.optionDescription(t)))));g=g.concat(this.formatItemList("Global Options:",p,u))}const w=this.groupItems(t.commands,u.visibleCommands(t),(t=>t.helpGroup()||"Commands:"));w.forEach(((t,p)=>{const m=t.map((t=>callFormatItem(u.styleSubcommandTerm(u.subcommandTerm(t)),u.styleSubcommandDescription(u.subcommandDescription(t)))));g=g.concat(this.formatItemList(p,m,u))}));return g.join("\n")}displayWidth(t){return stripColor(t).length}styleTitle(t){return t}styleUsage(t){return t.split(" ").map((t=>{if(t==="[options]")return this.styleOptionText(t);if(t==="[command]")return this.styleSubcommandText(t);if(t[0]==="["||t[0]==="<")return this.styleArgumentText(t);return this.styleCommandText(t)})).join(" ")}styleCommandDescription(t){return this.styleDescriptionText(t)}styleOptionDescription(t){return this.styleDescriptionText(t)}styleSubcommandDescription(t){return this.styleDescriptionText(t)}styleArgumentDescription(t){return this.styleDescriptionText(t)}styleDescriptionText(t){return t}styleOptionTerm(t){return this.styleOptionText(t)}styleSubcommandTerm(t){return t.split(" ").map((t=>{if(t==="[options]")return this.styleOptionText(t);if(t[0]==="["||t[0]==="<")return this.styleArgumentText(t);return this.styleSubcommandText(t)})).join(" ")}styleArgumentTerm(t){return this.styleArgumentText(t)}styleOptionText(t){return t}styleArgumentText(t){return t}styleSubcommandText(t){return t}styleCommandText(t){return t}padWidth(t,u){return Math.max(u.longestOptionTermLength(t,u),u.longestGlobalOptionTermLength(t,u),u.longestSubcommandTermLength(t,u),u.longestArgumentTermLength(t,u))}preformatted(t){return/\n[^\S\r\n]/.test(t)}formatItem(t,u,p,m){const g=2;const y=" ".repeat(g);if(!p)return y+t;const v=t.padEnd(u+t.length-m.displayWidth(t));const b=2;const w=this.helpWidth??80;const E=w-u-b-g;let $;if(E<this.minWidthToWrap||m.preformatted(p)){$=p}else{const t=m.boxWrap(p,E);$=t.replace(/\n/g,"\n"+" ".repeat(u+b))}return y+v+" ".repeat(b)+$.replace(/\n/g,`\n${y}`)}boxWrap(t,u){if(u<this.minWidthToWrap)return t;const p=t.split(/\r\n|\n/);const m=/[\s]*[^\s]+/g;const g=[];p.forEach((t=>{const p=t.match(m);if(p===null){g.push("");return}let y=[p.shift()];let v=this.displayWidth(y[0]);p.forEach((t=>{const p=this.displayWidth(t);if(v+p<=u){y.push(t);v+=p;return}g.push(y.join(""));const m=t.trimStart();y=[m];v=this.displayWidth(m)}));g.push(y.join(""))}));return g.join("\n")}}function stripColor(t){const u=/\x1b\[\d*(;\d*)*m/g;return t.replace(u,"")}u.Help=Help;u.stripColor=stripColor},1033:(t,u,p)=>{const{InvalidArgumentError:m}=p(9400);class Option{constructor(t,u){this.flags=t;this.description=u||"";this.required=t.includes("<");this.optional=t.includes("[");this.variadic=/\w\.\.\.[>\]]$/.test(t);this.mandatory=false;const p=splitOptionFlags(t);this.short=p.shortFlag;this.long=p.longFlag;this.negate=false;if(this.long){this.negate=this.long.startsWith("--no-")}this.defaultValue=undefined;this.defaultValueDescription=undefined;this.presetArg=undefined;this.envVar=undefined;this.parseArg=undefined;this.hidden=false;this.argChoices=undefined;this.conflictsWith=[];this.implied=undefined;this.helpGroupHeading=undefined}default(t,u){this.defaultValue=t;this.defaultValueDescription=u;return this}preset(t){this.presetArg=t;return this}conflicts(t){this.conflictsWith=this.conflictsWith.concat(t);return this}implies(t){let u=t;if(typeof t==="string"){u={[t]:true}}this.implied=Object.assign(this.implied||{},u);return this}env(t){this.envVar=t;return this}argParser(t){this.parseArg=t;return this}makeOptionMandatory(t=true){this.mandatory=!!t;return this}hideHelp(t=true){this.hidden=!!t;return this}_collectValue(t,u){if(u===this.defaultValue||!Array.isArray(u)){return[t]}u.push(t);return u}choices(t){this.argChoices=t.slice();this.parseArg=(t,u)=>{if(!this.argChoices.includes(t)){throw new m(`Allowed choices are ${this.argChoices.join(", ")}.`)}if(this.variadic){return this._collectValue(t,u)}return t};return this}name(){if(this.long){return this.long.replace(/^--/,"")}return this.short.replace(/^-/,"")}attributeName(){if(this.negate){return camelcase(this.name().replace(/^no-/,""))}return camelcase(this.name())}helpGroup(t){this.helpGroupHeading=t;return this}is(t){return this.short===t||this.long===t}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class DualOptions{constructor(t){this.positiveOptions=new Map;this.negativeOptions=new Map;this.dualOptions=new Set;t.forEach((t=>{if(t.negate){this.negativeOptions.set(t.attributeName(),t)}else{this.positiveOptions.set(t.attributeName(),t)}}));this.negativeOptions.forEach(((t,u)=>{if(this.positiveOptions.has(u)){this.dualOptions.add(u)}}))}valueFromOption(t,u){const p=u.attributeName();if(!this.dualOptions.has(p))return true;const m=this.negativeOptions.get(p).presetArg;const g=m!==undefined?m:false;return u.negate===(g===t)}}function camelcase(t){return t.split("-").reduce(((t,u)=>t+u[0].toUpperCase()+u.slice(1)))}function splitOptionFlags(t){let u;let p;const m=/^-[^-]$/;const g=/^--[^-]/;const y=t.split(/[ |,]+/).concat("guard");if(m.test(y[0]))u=y.shift();if(g.test(y[0]))p=y.shift();if(!u&&m.test(y[0]))u=y.shift();if(!u&&g.test(y[0])){u=p;p=y.shift()}if(y[0].startsWith("-")){const u=y[0];const p=`option creation failed due to '${u}' in option flags '${t}'`;if(/^-[^-][^-]/.test(u))throw new Error(`${p}\n- a short flag is a single dash and a single character\n - either use a single dash and a single character (for a short flag)\n - or use a double dash for a long option (and can have two, like '--ws, --workspace')`);if(m.test(u))throw new Error(`${p}\n- too many short flags`);if(g.test(u))throw new Error(`${p}\n- too many long flags`);throw new Error(`${p}\n- unrecognised flag format`)}if(u===undefined&&p===undefined)throw new Error(`option creation failed due to no flags found in '${t}'.`);return{shortFlag:u,longFlag:p}}u.Option=Option;u.DualOptions=DualOptions},3683:(t,u)=>{const p=3;function editDistance(t,u){if(Math.abs(t.length-u.length)>p)return Math.max(t.length,u.length);const m=[];for(let u=0;u<=t.length;u++){m[u]=[u]}for(let t=0;t<=u.length;t++){m[0][t]=t}for(let p=1;p<=u.length;p++){for(let g=1;g<=t.length;g++){let y=1;if(t[g-1]===u[p-1]){y=0}else{y=1}m[g][p]=Math.min(m[g-1][p]+1,m[g][p-1]+1,m[g-1][p-1]+y);if(g>1&&p>1&&t[g-1]===u[p-2]&&t[g-2]===u[p-1]){m[g][p]=Math.min(m[g][p],m[g-2][p-2]+1)}}}return m[t.length][u.length]}function suggestSimilar(t,u){if(!u||u.length===0)return"";u=Array.from(new Set(u));const m=t.startsWith("--");if(m){t=t.slice(2);u=u.map((t=>t.slice(2)))}let g=[];let y=p;const v=.4;u.forEach((u=>{if(u.length<=1)return;const p=editDistance(t,u);const m=Math.max(t.length,u.length);const b=(m-p)/m;if(b>v){if(p<y){y=p;g=[u]}else if(p===y){g.push(u)}}}));g.sort(((t,u)=>t.localeCompare(u)));if(m){g=g.map((t=>`--${t}`))}if(g.length>1){return`\n(Did you mean one of ${g.join(", ")}?)`}if(g.length===1){return`\n(Did you mean ${g[0]}?)`}return""}u.suggestSimilar=suggestSimilar},6564:(t,u,p)=>{"use strict";const{normalizeIPv6:m,removeDotSegments:g,recomposeAuthority:y,normalizeComponentEncoding:v,isIPv4:b,nonSimpleDomain:w}=p(1097);const{SCHEMES:E,getSchemeHandler:$}=p(2424);function normalize(t,u){if(typeof t==="string"){t=serialize(parse(t,u),u)}else if(typeof t==="object"){t=parse(serialize(t,u),u)}return t}function resolve(t,u,p){const m=p?Object.assign({scheme:"null"},p):{scheme:"null"};const g=resolveComponent(parse(t,m),parse(u,m),m,true);m.skipEscape=true;return serialize(g,m)}function resolveComponent(t,u,p,m){const y={};if(!m){t=parse(serialize(t,p),p);u=parse(serialize(u,p),p)}p=p||{};if(!p.tolerant&&u.scheme){y.scheme=u.scheme;y.userinfo=u.userinfo;y.host=u.host;y.port=u.port;y.path=g(u.path||"");y.query=u.query}else{if(u.userinfo!==undefined||u.host!==undefined||u.port!==undefined){y.userinfo=u.userinfo;y.host=u.host;y.port=u.port;y.path=g(u.path||"");y.query=u.query}else{if(!u.path){y.path=t.path;if(u.query!==undefined){y.query=u.query}else{y.query=t.query}}else{if(u.path[0]==="/"){y.path=g(u.path)}else{if((t.userinfo!==undefined||t.host!==undefined||t.port!==undefined)&&!t.path){y.path="/"+u.path}else if(!t.path){y.path=u.path}else{y.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+u.path}y.path=g(y.path)}y.query=u.query}y.userinfo=t.userinfo;y.host=t.host;y.port=t.port}y.scheme=t.scheme}y.fragment=u.fragment;return y}function equal(t,u,p){if(typeof t==="string"){t=unescape(t);t=serialize(v(parse(t,p),true),{...p,skipEscape:true})}else if(typeof t==="object"){t=serialize(v(t,true),{...p,skipEscape:true})}if(typeof u==="string"){u=unescape(u);u=serialize(v(parse(u,p),true),{...p,skipEscape:true})}else if(typeof u==="object"){u=serialize(v(u,true),{...p,skipEscape:true})}return t.toLowerCase()===u.toLowerCase()}function serialize(t,u){const p={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""};const m=Object.assign({},u);const v=[];const b=$(m.scheme||p.scheme);if(b&&b.serialize)b.serialize(p,m);if(p.path!==undefined){if(!m.skipEscape){p.path=escape(p.path);if(p.scheme!==undefined){p.path=p.path.split("%3A").join(":")}}else{p.path=unescape(p.path)}}if(m.reference!=="suffix"&&p.scheme){v.push(p.scheme,":")}const w=y(p);if(w!==undefined){if(m.reference!=="suffix"){v.push("//")}v.push(w);if(p.path&&p.path[0]!=="/"){v.push("/")}}if(p.path!==undefined){let t=p.path;if(!m.absolutePath&&(!b||!b.absolutePath)){t=g(t)}if(w===undefined&&t[0]==="/"&&t[1]==="/"){t="/%2F"+t.slice(2)}v.push(t)}if(p.query!==undefined){v.push("?",p.query)}if(p.fragment!==undefined){v.push("#",p.fragment)}return v.join("")}const O=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function parse(t,u){const p=Object.assign({},u);const g={scheme:undefined,userinfo:undefined,host:"",port:undefined,path:"",query:undefined,fragment:undefined};let y=false;if(p.reference==="suffix"){if(p.scheme){t=p.scheme+":"+t}else{t="//"+t}}const v=t.match(O);if(v){g.scheme=v[1];g.userinfo=v[3];g.host=v[4];g.port=parseInt(v[5],10);g.path=v[6]||"";g.query=v[7];g.fragment=v[8];if(isNaN(g.port)){g.port=v[5]}if(g.host){const t=b(g.host);if(t===false){const t=m(g.host);g.host=t.host.toLowerCase();y=t.isIPV6}else{y=true}}if(g.scheme===undefined&&g.userinfo===undefined&&g.host===undefined&&g.port===undefined&&g.query===undefined&&!g.path){g.reference="same-document"}else if(g.scheme===undefined){g.reference="relative"}else if(g.fragment===undefined){g.reference="absolute"}else{g.reference="uri"}if(p.reference&&p.reference!=="suffix"&&p.reference!==g.reference){g.error=g.error||"URI is not a "+p.reference+" reference."}const u=$(p.scheme||g.scheme);if(!p.unicodeSupport&&(!u||!u.unicodeSupport)){if(g.host&&(p.domainHost||u&&u.domainHost)&&y===false&&w(g.host)){try{g.host=URL.domainToASCII(g.host.toLowerCase())}catch(t){g.error=g.error||"Host's domain name can not be converted to ASCII: "+t}}}if(!u||u&&!u.skipNormalize){if(t.indexOf("%")!==-1){if(g.scheme!==undefined){g.scheme=unescape(g.scheme)}if(g.host!==undefined){g.host=unescape(g.host)}}if(g.path){g.path=escape(unescape(g.path))}if(g.fragment){g.fragment=encodeURI(decodeURIComponent(g.fragment))}}if(u&&u.parse){u.parse(g,p)}}else{g.error=g.error||"URI can not be parsed."}return g}const R={SCHEMES:E,normalize:normalize,resolve:resolve,resolveComponent:resolveComponent,equal:equal,serialize:serialize,parse:parse};t.exports=R;t.exports["default"]=R;t.exports.fastUri=R},2424:(t,u,p)=>{"use strict";const{isUUID:m}=p(1097);const g=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;const y=["http","https","ws","wss","urn","urn:uuid"];function isValidSchemeName(t){return y.indexOf(t)!==-1}function wsIsSecure(t){if(t.secure===true){return true}else if(t.secure===false){return false}else if(t.scheme){return t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S")}else{return false}}function httpParse(t){if(!t.host){t.error=t.error||"HTTP URIs must have a host."}return t}function httpSerialize(t){const u=String(t.scheme).toLowerCase()==="https";if(t.port===(u?443:80)||t.port===""){t.port=undefined}if(!t.path){t.path="/"}return t}function wsParse(t){t.secure=wsIsSecure(t);t.resourceName=(t.path||"/")+(t.query?"?"+t.query:"");t.path=undefined;t.query=undefined;return t}function wsSerialize(t){if(t.port===(wsIsSecure(t)?443:80)||t.port===""){t.port=undefined}if(typeof t.secure==="boolean"){t.scheme=t.secure?"wss":"ws";t.secure=undefined}if(t.resourceName){const[u,p]=t.resourceName.split("?");t.path=u&&u!=="/"?u:undefined;t.query=p;t.resourceName=undefined}t.fragment=undefined;return t}function urnParse(t,u){if(!t.path){t.error="URN can not be parsed";return t}const p=t.path.match(g);if(p){const m=u.scheme||t.scheme||"urn";t.nid=p[1].toLowerCase();t.nss=p[2];const g=`${m}:${u.nid||t.nid}`;const y=getSchemeHandler(g);t.path=undefined;if(y){t=y.parse(t,u)}}else{t.error=t.error||"URN can not be parsed."}return t}function urnSerialize(t,u){if(t.nid===undefined){throw new Error("URN without nid cannot be serialized")}const p=u.scheme||t.scheme||"urn";const m=t.nid.toLowerCase();const g=`${p}:${u.nid||m}`;const y=getSchemeHandler(g);if(y){t=y.serialize(t,u)}const v=t;const b=t.nss;v.path=`${m||u.nid}:${b}`;u.skipEscape=true;return v}function urnuuidParse(t,u){const p=t;p.uuid=p.nss;p.nss=undefined;if(!u.tolerant&&(!p.uuid||!m(p.uuid))){p.error=p.error||"UUID is not valid."}return p}function urnuuidSerialize(t){const u=t;u.nss=(t.uuid||"").toLowerCase();return u}const v={scheme:"http",domainHost:true,parse:httpParse,serialize:httpSerialize};const b={scheme:"https",domainHost:v.domainHost,parse:httpParse,serialize:httpSerialize};const w={scheme:"ws",domainHost:true,parse:wsParse,serialize:wsSerialize};const E={scheme:"wss",domainHost:w.domainHost,parse:w.parse,serialize:w.serialize};const $={scheme:"urn",parse:urnParse,serialize:urnSerialize,skipNormalize:true};const O={scheme:"urn:uuid",parse:urnuuidParse,serialize:urnuuidSerialize,skipNormalize:true};const R={http:v,https:b,ws:w,wss:E,urn:$,"urn:uuid":O};Object.setPrototypeOf(R,null);function getSchemeHandler(t){return t&&(R[t]||R[t.toLowerCase()])||undefined}t.exports={wsIsSecure:wsIsSecure,SCHEMES:R,isValidSchemeName:isValidSchemeName,getSchemeHandler:getSchemeHandler}},1097:t=>{"use strict";const u=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu);const p=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function stringArrayToHexStripped(t){let u="";let p=0;let m=0;for(m=0;m<t.length;m++){p=t[m].charCodeAt(0);if(p===48){continue}if(!(p>=48&&p<=57||p>=65&&p<=70||p>=97&&p<=102)){return""}u+=t[m];break}for(m+=1;m<t.length;m++){p=t[m].charCodeAt(0);if(!(p>=48&&p<=57||p>=65&&p<=70||p>=97&&p<=102)){return""}u+=t[m]}return u}const m=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function consumeIsZone(t){t.length=0;return true}function consumeHextets(t,u,p){if(t.length){const m=stringArrayToHexStripped(t);if(m!==""){u.push(m)}else{p.error=true;return false}t.length=0}return true}function getIPV6(t){let u=0;const p={error:false,address:"",zone:""};const m=[];const g=[];let y=false;let v=false;let b=consumeHextets;for(let w=0;w<t.length;w++){const E=t[w];if(E==="["||E==="]"){continue}if(E===":"){if(y===true){v=true}if(!b(g,m,p)){break}if(++u>7){p.error=true;break}if(w>0&&t[w-1]===":"){y=true}m.push(":");continue}else if(E==="%"){if(!b(g,m,p)){break}b=consumeIsZone}else{g.push(E);continue}}if(g.length){if(b===consumeIsZone){p.zone=g.join("")}else if(v){m.push(g.join(""))}else{m.push(stringArrayToHexStripped(g))}}p.address=m.join("");return p}function normalizeIPv6(t){if(findToken(t,":")<2){return{host:t,isIPV6:false}}const u=getIPV6(t);if(!u.error){let t=u.address;let p=u.address;if(u.zone){t+="%"+u.zone;p+="%25"+u.zone}return{host:t,isIPV6:true,escapedHost:p}}else{return{host:t,isIPV6:false}}}function findToken(t,u){let p=0;for(let m=0;m<t.length;m++){if(t[m]===u)p++}return p}function removeDotSegments(t){let u=t;const p=[];let m=-1;let g=0;while(g=u.length){if(g===1){if(u==="."){break}else if(u==="/"){p.push("/");break}else{p.push(u);break}}else if(g===2){if(u[0]==="."){if(u[1]==="."){break}else if(u[1]==="/"){u=u.slice(2);continue}}else if(u[0]==="/"){if(u[1]==="."||u[1]==="/"){p.push("/");break}}}else if(g===3){if(u==="/.."){if(p.length!==0){p.pop()}p.push("/");break}}if(u[0]==="."){if(u[1]==="."){if(u[2]==="/"){u=u.slice(3);continue}}else if(u[1]==="/"){u=u.slice(2);continue}}else if(u[0]==="/"){if(u[1]==="."){if(u[2]==="/"){u=u.slice(2);continue}else if(u[2]==="."){if(u[3]==="/"){u=u.slice(3);if(p.length!==0){p.pop()}continue}}}}if((m=u.indexOf("/",1))===-1){p.push(u);break}else{p.push(u.slice(0,m));u=u.slice(m)}}return p.join("")}function normalizeComponentEncoding(t,u){const p=u!==true?escape:unescape;if(t.scheme!==undefined){t.scheme=p(t.scheme)}if(t.userinfo!==undefined){t.userinfo=p(t.userinfo)}if(t.host!==undefined){t.host=p(t.host)}if(t.path!==undefined){t.path=p(t.path)}if(t.query!==undefined){t.query=p(t.query)}if(t.fragment!==undefined){t.fragment=p(t.fragment)}return t}function recomposeAuthority(t){const u=[];if(t.userinfo!==undefined){u.push(t.userinfo);u.push("@")}if(t.host!==undefined){let m=unescape(t.host);if(!p(m)){const u=normalizeIPv6(m);if(u.isIPV6===true){m=`[${u.escapedHost}]`}else{m=t.host}}u.push(m)}if(typeof t.port==="number"||typeof t.port==="string"){u.push(":");u.push(String(t.port))}return u.length?u.join(""):undefined}t.exports={nonSimpleDomain:m,recomposeAuthority:recomposeAuthority,normalizeComponentEncoding:normalizeComponentEncoding,removeDotSegments:removeDotSegments,isIPv4:p,isUUID:u,normalizeIPv6:normalizeIPv6,stringArrayToHexStripped:stringArrayToHexStripped}},2200:t=>{"use strict";t.exports=JSON.parse('{"$id":"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#","description":"Meta-schema for $data reference (JSON AnySchema extension proposal)","type":"object","required":["$data"],"properties":{"$data":{"type":"string","anyOf":[{"format":"relative-json-pointer"},{"format":"json-pointer"}]}},"additionalProperties":false}')},5727:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/applicator","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/applicator":true},"$dynamicAnchor":"meta","title":"Applicator vocabulary meta-schema","type":["object","boolean"],"properties":{"prefixItems":{"$ref":"#/$defs/schemaArray"},"items":{"$dynamicRef":"#meta"},"contains":{"$dynamicRef":"#meta"},"additionalProperties":{"$dynamicRef":"#meta"},"properties":{"type":"object","additionalProperties":{"$dynamicRef":"#meta"},"default":{}},"patternProperties":{"type":"object","additionalProperties":{"$dynamicRef":"#meta"},"propertyNames":{"format":"regex"},"default":{}},"dependentSchemas":{"type":"object","additionalProperties":{"$dynamicRef":"#meta"},"default":{}},"propertyNames":{"$dynamicRef":"#meta"},"if":{"$dynamicRef":"#meta"},"then":{"$dynamicRef":"#meta"},"else":{"$dynamicRef":"#meta"},"allOf":{"$ref":"#/$defs/schemaArray"},"anyOf":{"$ref":"#/$defs/schemaArray"},"oneOf":{"$ref":"#/$defs/schemaArray"},"not":{"$dynamicRef":"#meta"}},"$defs":{"schemaArray":{"type":"array","minItems":1,"items":{"$dynamicRef":"#meta"}}}}')},1447:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/content","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/content":true},"$dynamicAnchor":"meta","title":"Content vocabulary meta-schema","type":["object","boolean"],"properties":{"contentEncoding":{"type":"string"},"contentMediaType":{"type":"string"},"contentSchema":{"$dynamicRef":"#meta"}}}')},4877:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/core","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/core":true},"$dynamicAnchor":"meta","title":"Core vocabulary meta-schema","type":["object","boolean"],"properties":{"$id":{"$ref":"#/$defs/uriReferenceString","$comment":"Non-empty fragments not allowed.","pattern":"^[^#]*#?$"},"$schema":{"$ref":"#/$defs/uriString"},"$ref":{"$ref":"#/$defs/uriReferenceString"},"$anchor":{"$ref":"#/$defs/anchorString"},"$dynamicRef":{"$ref":"#/$defs/uriReferenceString"},"$dynamicAnchor":{"$ref":"#/$defs/anchorString"},"$vocabulary":{"type":"object","propertyNames":{"$ref":"#/$defs/uriString"},"additionalProperties":{"type":"boolean"}},"$comment":{"type":"string"},"$defs":{"type":"object","additionalProperties":{"$dynamicRef":"#meta"}}},"$defs":{"anchorString":{"type":"string","pattern":"^[A-Za-z_][-A-Za-z0-9._]*$"},"uriString":{"type":"string","format":"uri"},"uriReferenceString":{"type":"string","format":"uri-reference"}}}')},9041:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/format-annotation","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/format-annotation":true},"$dynamicAnchor":"meta","title":"Format vocabulary meta-schema for annotation results","type":["object","boolean"],"properties":{"format":{"type":"string"}}}')},5118:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/meta-data","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/meta-data":true},"$dynamicAnchor":"meta","title":"Meta-data vocabulary meta-schema","type":["object","boolean"],"properties":{"title":{"type":"string"},"description":{"type":"string"},"default":true,"deprecated":{"type":"boolean","default":false},"readOnly":{"type":"boolean","default":false},"writeOnly":{"type":"boolean","default":false},"examples":{"type":"array","items":true}}}')},8606:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/unevaluated","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/unevaluated":true},"$dynamicAnchor":"meta","title":"Unevaluated applicator vocabulary meta-schema","type":["object","boolean"],"properties":{"unevaluatedItems":{"$dynamicRef":"#meta"},"unevaluatedProperties":{"$dynamicRef":"#meta"}}}')},3073:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/meta/validation","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/validation":true},"$dynamicAnchor":"meta","title":"Validation vocabulary meta-schema","type":["object","boolean"],"properties":{"type":{"anyOf":[{"$ref":"#/$defs/simpleTypes"},{"type":"array","items":{"$ref":"#/$defs/simpleTypes"},"minItems":1,"uniqueItems":true}]},"const":true,"enum":{"type":"array","items":true},"multipleOf":{"type":"number","exclusiveMinimum":0},"maximum":{"type":"number"},"exclusiveMaximum":{"type":"number"},"minimum":{"type":"number"},"exclusiveMinimum":{"type":"number"},"maxLength":{"$ref":"#/$defs/nonNegativeInteger"},"minLength":{"$ref":"#/$defs/nonNegativeIntegerDefault0"},"pattern":{"type":"string","format":"regex"},"maxItems":{"$ref":"#/$defs/nonNegativeInteger"},"minItems":{"$ref":"#/$defs/nonNegativeIntegerDefault0"},"uniqueItems":{"type":"boolean","default":false},"maxContains":{"$ref":"#/$defs/nonNegativeInteger"},"minContains":{"$ref":"#/$defs/nonNegativeInteger","default":1},"maxProperties":{"$ref":"#/$defs/nonNegativeInteger"},"minProperties":{"$ref":"#/$defs/nonNegativeIntegerDefault0"},"required":{"$ref":"#/$defs/stringArray"},"dependentRequired":{"type":"object","additionalProperties":{"$ref":"#/$defs/stringArray"}}},"$defs":{"nonNegativeInteger":{"type":"integer","minimum":0},"nonNegativeIntegerDefault0":{"$ref":"#/$defs/nonNegativeInteger","default":0},"simpleTypes":{"enum":["array","boolean","integer","null","number","object","string"]},"stringArray":{"type":"array","items":{"type":"string"},"uniqueItems":true,"default":[]}}}')},1115:t=>{"use strict";t.exports=JSON.parse('{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://json-schema.org/draft/2020-12/schema","$vocabulary":{"https://json-schema.org/draft/2020-12/vocab/core":true,"https://json-schema.org/draft/2020-12/vocab/applicator":true,"https://json-schema.org/draft/2020-12/vocab/unevaluated":true,"https://json-schema.org/draft/2020-12/vocab/validation":true,"https://json-schema.org/draft/2020-12/vocab/meta-data":true,"https://json-schema.org/draft/2020-12/vocab/format-annotation":true,"https://json-schema.org/draft/2020-12/vocab/content":true},"$dynamicAnchor":"meta","title":"Core and Validation specifications meta-schema","allOf":[{"$ref":"meta/core"},{"$ref":"meta/applicator"},{"$ref":"meta/unevaluated"},{"$ref":"meta/validation"},{"$ref":"meta/meta-data"},{"$ref":"meta/format-annotation"},{"$ref":"meta/content"}],"type":["object","boolean"],"$comment":"This meta-schema also defines keywords that have appeared in previous drafts in order to prevent incompatible extensions as they remain in common use.","properties":{"definitions":{"$comment":"\\"definitions\\" has been replaced by \\"$defs\\".","type":"object","additionalProperties":{"$dynamicRef":"#meta"},"deprecated":true,"default":{}},"dependencies":{"$comment":"\\"dependencies\\" has been split and replaced by \\"dependentSchemas\\" and \\"dependentRequired\\" in order to serve their differing semantics.","type":"object","additionalProperties":{"anyOf":[{"$dynamicRef":"#meta"},{"$ref":"meta/validation#/$defs/stringArray"}]},"deprecated":true,"default":{}},"$recursiveAnchor":{"$comment":"\\"$recursiveAnchor\\" has been replaced by \\"$dynamicAnchor\\".","$ref":"meta/core#/$defs/anchorString","deprecated":true},"$recursiveRef":{"$comment":"\\"$recursiveRef\\" has been replaced by \\"$dynamicRef\\".","$ref":"meta/core#/$defs/uriReferenceString","deprecated":true}}}')},7578:t=>{"use strict";t.exports=JSON.parse('{"$schema":"http://json-schema.org/draft-07/schema#","$id":"http://json-schema.org/draft-07/schema#","title":"Core schema meta-schema","definitions":{"schemaArray":{"type":"array","minItems":1,"items":{"$ref":"#"}},"nonNegativeInteger":{"type":"integer","minimum":0},"nonNegativeIntegerDefault0":{"allOf":[{"$ref":"#/definitions/nonNegativeInteger"},{"default":0}]},"simpleTypes":{"enum":["array","boolean","integer","null","number","object","string"]},"stringArray":{"type":"array","items":{"type":"string"},"uniqueItems":true,"default":[]}},"type":["object","boolean"],"properties":{"$id":{"type":"string","format":"uri-reference"},"$schema":{"type":"string","format":"uri"},"$ref":{"type":"string","format":"uri-reference"},"$comment":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"default":true,"readOnly":{"type":"boolean","default":false},"examples":{"type":"array","items":true},"multipleOf":{"type":"number","exclusiveMinimum":0},"maximum":{"type":"number"},"exclusiveMaximum":{"type":"number"},"minimum":{"type":"number"},"exclusiveMinimum":{"type":"number"},"maxLength":{"$ref":"#/definitions/nonNegativeInteger"},"minLength":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"pattern":{"type":"string","format":"regex"},"additionalItems":{"$ref":"#"},"items":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/schemaArray"}],"default":true},"maxItems":{"$ref":"#/definitions/nonNegativeInteger"},"minItems":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"uniqueItems":{"type":"boolean","default":false},"contains":{"$ref":"#"},"maxProperties":{"$ref":"#/definitions/nonNegativeInteger"},"minProperties":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"required":{"$ref":"#/definitions/stringArray"},"additionalProperties":{"$ref":"#"},"definitions":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"properties":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"patternProperties":{"type":"object","additionalProperties":{"$ref":"#"},"propertyNames":{"format":"regex"},"default":{}},"dependencies":{"type":"object","additionalProperties":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/stringArray"}]}},"propertyNames":{"$ref":"#"},"const":true,"enum":{"type":"array","items":true,"minItems":1,"uniqueItems":true},"type":{"anyOf":[{"$ref":"#/definitions/simpleTypes"},{"type":"array","items":{"$ref":"#/definitions/simpleTypes"},"minItems":1,"uniqueItems":true}]},"format":{"type":"string"},"contentMediaType":{"type":"string"},"contentEncoding":{"type":"string"},"if":{"$ref":"#"},"then":{"$ref":"#"},"else":{"$ref":"#"},"allOf":{"$ref":"#/definitions/schemaArray"},"anyOf":{"$ref":"#/definitions/schemaArray"},"oneOf":{"$ref":"#/definitions/schemaArray"},"not":{"$ref":"#"}},"default":true}')},7028:t=>{"use strict";t.exports=JSON.parse('[{"name":"Agola CI","constant":"AGOLA","env":"AGOLA_GIT_REF","pr":"AGOLA_PULL_REQUEST_ID"},{"name":"Alpic","constant":"ALPIC","env":"ALPIC_HOST"},{"name":"Appcircle","constant":"APPCIRCLE","env":"AC_APPCIRCLE","pr":{"env":"AC_GIT_PR","ne":"false"}},{"name":"AppVeyor","constant":"APPVEYOR","env":"APPVEYOR","pr":"APPVEYOR_PULL_REQUEST_NUMBER"},{"name":"AWS CodeBuild","constant":"CODEBUILD","env":"CODEBUILD_BUILD_ARN","pr":{"env":"CODEBUILD_WEBHOOK_EVENT","any":["PULL_REQUEST_CREATED","PULL_REQUEST_UPDATED","PULL_REQUEST_REOPENED"]}},{"name":"Azure Pipelines","constant":"AZURE_PIPELINES","env":"TF_BUILD","pr":{"BUILD_REASON":"PullRequest"}},{"name":"Bamboo","constant":"BAMBOO","env":"bamboo_planKey"},{"name":"Bitbucket Pipelines","constant":"BITBUCKET","env":"BITBUCKET_COMMIT","pr":"BITBUCKET_PR_ID"},{"name":"Bitrise","constant":"BITRISE","env":"BITRISE_IO","pr":"BITRISE_PULL_REQUEST"},{"name":"Buddy","constant":"BUDDY","env":"BUDDY_WORKSPACE_ID","pr":"BUDDY_EXECUTION_PULL_REQUEST_ID"},{"name":"Buildkite","constant":"BUILDKITE","env":"BUILDKITE","pr":{"env":"BUILDKITE_PULL_REQUEST","ne":"false"}},{"name":"CircleCI","constant":"CIRCLE","env":"CIRCLECI","pr":"CIRCLE_PULL_REQUEST"},{"name":"Cirrus CI","constant":"CIRRUS","env":"CIRRUS_CI","pr":"CIRRUS_PR"},{"name":"Cloudflare Pages","constant":"CLOUDFLARE_PAGES","env":"CF_PAGES"},{"name":"Cloudflare Workers","constant":"CLOUDFLARE_WORKERS","env":"WORKERS_CI"},{"name":"Codefresh","constant":"CODEFRESH","env":"CF_BUILD_ID","pr":{"any":["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{"name":"Codemagic","constant":"CODEMAGIC","env":"CM_BUILD_ID","pr":"CM_PULL_REQUEST"},{"name":"Codeship","constant":"CODESHIP","env":{"CI_NAME":"codeship"}},{"name":"Drone","constant":"DRONE","env":"DRONE","pr":{"DRONE_BUILD_EVENT":"pull_request"}},{"name":"dsari","constant":"DSARI","env":"DSARI"},{"name":"Earthly","constant":"EARTHLY","env":"EARTHLY_CI"},{"name":"Expo Application Services","constant":"EAS","env":"EAS_BUILD"},{"name":"Gerrit","constant":"GERRIT","env":"GERRIT_PROJECT"},{"name":"Gitea Actions","constant":"GITEA_ACTIONS","env":"GITEA_ACTIONS"},{"name":"GitHub Actions","constant":"GITHUB_ACTIONS","env":"GITHUB_ACTIONS","pr":{"GITHUB_EVENT_NAME":"pull_request"}},{"name":"GitLab CI","constant":"GITLAB","env":"GITLAB_CI","pr":"CI_MERGE_REQUEST_ID"},{"name":"GoCD","constant":"GOCD","env":"GO_PIPELINE_LABEL"},{"name":"Google Cloud Build","constant":"GOOGLE_CLOUD_BUILD","env":"BUILDER_OUTPUT"},{"name":"Harness CI","constant":"HARNESS","env":"HARNESS_BUILD_ID"},{"name":"Heroku","constant":"HEROKU","env":{"env":"NODE","includes":"/app/.heroku/node/bin/node"}},{"name":"Hudson","constant":"HUDSON","env":"HUDSON_URL"},{"name":"Jenkins","constant":"JENKINS","env":["JENKINS_URL","BUILD_ID"],"pr":{"any":["ghprbPullId","CHANGE_ID"]}},{"name":"LayerCI","constant":"LAYERCI","env":"LAYERCI","pr":"LAYERCI_PULL_REQUEST"},{"name":"Magnum CI","constant":"MAGNUM","env":"MAGNUM"},{"name":"Netlify CI","constant":"NETLIFY","env":"NETLIFY","pr":{"env":"PULL_REQUEST","ne":"false"}},{"name":"Nevercode","constant":"NEVERCODE","env":"NEVERCODE","pr":{"env":"NEVERCODE_PULL_REQUEST","ne":"false"}},{"name":"Prow","constant":"PROW","env":"PROW_JOB_ID"},{"name":"ReleaseHub","constant":"RELEASEHUB","env":"RELEASE_BUILD_ID"},{"name":"Render","constant":"RENDER","env":"RENDER","pr":{"IS_PULL_REQUEST":"true"}},{"name":"Sail CI","constant":"SAIL","env":"SAILCI","pr":"SAIL_PULL_REQUEST_NUMBER"},{"name":"Screwdriver","constant":"SCREWDRIVER","env":"SCREWDRIVER","pr":{"env":"SD_PULL_REQUEST","ne":"false"}},{"name":"Semaphore","constant":"SEMAPHORE","env":"SEMAPHORE","pr":"PULL_REQUEST_NUMBER"},{"name":"Sourcehut","constant":"SOURCEHUT","env":{"CI_NAME":"sourcehut"}},{"name":"Strider CD","constant":"STRIDER","env":"STRIDER"},{"name":"TaskCluster","constant":"TASKCLUSTER","env":["TASK_ID","RUN_ID"]},{"name":"TeamCity","constant":"TEAMCITY","env":"TEAMCITY_VERSION"},{"name":"Travis CI","constant":"TRAVIS","env":"TRAVIS","pr":{"env":"TRAVIS_PULL_REQUEST","ne":"false"}},{"name":"Vela","constant":"VELA","env":"VELA","pr":{"VELA_PULL_REQUEST":"1"}},{"name":"Vercel","constant":"VERCEL","env":{"any":["NOW_BUILDER","VERCEL"]},"pr":"VERCEL_GIT_PULL_REQUEST_ID"},{"name":"Visual Studio App Center","constant":"APPCENTER","env":"APPCENTER_BUILD_ID"},{"name":"Woodpecker","constant":"WOODPECKER","env":{"CI":"woodpecker"},"pr":{"CI_BUILD_EVENT":"pull_request"}},{"name":"Xcode Cloud","constant":"XCODE_CLOUD","env":"CI_XCODE_PROJECT","pr":"CI_PULL_REQUEST_NUMBER"},{"name":"Xcode Server","constant":"XCODE_SERVER","env":"XCS"}]')},6737:t=>{"use strict";t.exports=JSON.parse('["_http_agent","_http_client","_http_common","_http_incoming","_http_outgoing","_http_server","_stream_duplex","_stream_passthrough","_stream_readable","_stream_transform","_stream_wrap","_stream_writable","_tls_common","_tls_wrap","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","inspector/promises","module","net","os","path","path/posix","path/win32","perf_hooks","process","punycode","querystring","readline","readline/promises","repl","stream","stream/consumers","stream/promises","stream/web","string_decoder","sys","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib","node:sea","node:sqlite","node:test","node:test/reporters"]')}};var u={};function __nccwpck_require__(p){var m=u[p];if(m!==undefined){return m.exports}var g=u[p]={exports:{}};var y=true;try{t[p](g,g.exports,__nccwpck_require__);y=false}finally{if(y)delete u[p]}return g.exports}(()=>{__nccwpck_require__.n=t=>{var u=t&&t.__esModule?()=>t["default"]:()=>t;__nccwpck_require__.d(u,{a:u});return u}})();(()=>{var t=Object.getPrototypeOf?t=>Object.getPrototypeOf(t):t=>t.__proto__;var u;__nccwpck_require__.t=function(p,m){if(m&1)p=this(p);if(m&8)return p;if(typeof p==="object"&&p){if(m&4&&p.__esModule)return p;if(m&16&&typeof p.then==="function")return p}var g=Object.create(null);__nccwpck_require__.r(g);var y={};u=u||[null,t({}),t([]),t(t)];for(var v=m&2&&p;typeof v=="object"&&!~u.indexOf(v);v=t(v)){Object.getOwnPropertyNames(v).forEach((t=>y[t]=()=>p[t]))}y["default"]=()=>p;__nccwpck_require__.d(g,y);return g}})();(()=>{__nccwpck_require__.d=(t,u)=>{for(var p in u){if(__nccwpck_require__.o(u,p)&&!__nccwpck_require__.o(t,p)){Object.defineProperty(t,p,{enumerable:true,get:u[p]})}}}})();(()=>{__nccwpck_require__.o=(t,u)=>Object.prototype.hasOwnProperty.call(t,u)})();(()=>{__nccwpck_require__.r=t=>{if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(t,"__esModule",{value:true})}})();if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";var p={};(()=>{"use strict";var t=__nccwpck_require__(3024);var u=__nccwpck_require__(6760);var p=__nccwpck_require__.n(u);var m=__nccwpck_require__(4732);var g=__nccwpck_require__.n(m);var y=__nccwpck_require__(206);const{DM:v,gu:b,er:w,Ww:E,b7:$,Di:O,a2:R,uB:P,ef:A,c$:x,_V:T}=y;const k=require("node:util");var C=__nccwpck_require__(1708);const I=require("node:crypto");const N=require("node:assert");const isObject=t=>{const u=typeof t;return t!==null&&(u==="object"||u==="function")};const isEmptyObject=t=>{if(!isObject(t)){return false}for(const u in t){if(Object.hasOwn(t,u)){return false}}return true};const D=new Set(["__proto__","prototype","constructor"]);const L=1e6;const isDigit=t=>t>="0"&&t<="9";function shouldCoerceToNumber(t){if(t==="0"){return true}if(/^[1-9]\d*$/.test(t)){const u=Number.parseInt(t,10);return u<=Number.MAX_SAFE_INTEGER&&u<=L}return false}function processSegment(t,u){if(D.has(t)){return false}if(t&&shouldCoerceToNumber(t)){u.push(Number.parseInt(t,10))}else{u.push(t)}return true}function parsePath(t){if(typeof t!=="string"){throw new TypeError(`Expected a string, got ${typeof t}`)}const u=[];let p="";let m="start";let g=false;let y=0;for(const v of t){y++;if(g){p+=v;g=false;continue}if(v==="\\"){if(m==="index"){throw new Error(`Invalid character '${v}' in an index at position ${y}`)}if(m==="indexEnd"){throw new Error(`Invalid character '${v}' after an index at position ${y}`)}g=true;m=m==="start"?"property":m;continue}switch(v){case".":{if(m==="index"){throw new Error(`Invalid character '${v}' in an index at position ${y}`)}if(m==="indexEnd"){m="property";break}if(!processSegment(p,u)){return[]}p="";m="property";break}case"[":{if(m==="index"){throw new Error(`Invalid character '${v}' in an index at position ${y}`)}if(m==="indexEnd"){m="index";break}if(m==="property"||m==="start"){if((p||m==="property")&&!processSegment(p,u)){return[]}p=""}m="index";break}case"]":{if(m==="index"){if(p===""){const t=u.pop()||"";p=t+"[]";m="property"}else{const t=Number.parseInt(p,10);const g=!Number.isNaN(t)&&Number.isFinite(t)&&t>=0&&t<=Number.MAX_SAFE_INTEGER&&t<=L&&p===String(t);if(g){u.push(t)}else{u.push(p)}p="";m="indexEnd"}break}if(m==="indexEnd"){throw new Error(`Invalid character '${v}' after an index at position ${y}`)}p+=v;break}default:{if(m==="index"&&!isDigit(v)){throw new Error(`Invalid character '${v}' in an index at position ${y}`)}if(m==="indexEnd"){throw new Error(`Invalid character '${v}' after an index at position ${y}`)}if(m==="start"){m="property"}p+=v}}}if(g){p+="\\"}switch(m){case"property":{if(!processSegment(p,u)){return[]}break}case"index":{throw new Error("Index was not closed")}case"start":{u.push("");break}}return u}function normalizePath(t){if(typeof t==="string"){return parsePath(t)}if(Array.isArray(t)){const u=[];for(const[p,m]of t.entries()){if(typeof m!=="string"&&typeof m!=="number"){throw new TypeError(`Expected a string or number for path segment at index ${p}, got ${typeof m}`)}if(typeof m==="number"&&!Number.isFinite(m)){throw new TypeError(`Path segment at index ${p} must be a finite number, got ${m}`)}if(D.has(m)){return[]}if(typeof m==="string"&&shouldCoerceToNumber(m)){u.push(Number.parseInt(m,10))}else{u.push(m)}}return u}return[]}function getProperty(t,u,p){if(!isObject(t)||typeof u!=="string"&&!Array.isArray(u)){return p===undefined?t:p}const m=normalizePath(u);if(m.length===0){return p}for(let u=0;u<m.length;u++){const g=m[u];t=t[g];if(t===undefined||t===null){if(u!==m.length-1){return p}break}}return t===undefined?p:t}function setProperty(t,u,p){if(!isObject(t)||typeof u!=="string"&&!Array.isArray(u)){return t}const m=t;const g=normalizePath(u);if(g.length===0){return t}for(let u=0;u<g.length;u++){const m=g[u];if(u===g.length-1){t[m]=p}else if(!isObject(t[m])){const p=g[u+1];const y=typeof p==="number";t[m]=y?[]:{}}t=t[m]}return m}function deleteProperty(t,u){if(!isObject(t)||typeof u!=="string"&&!Array.isArray(u)){return false}const p=normalizePath(u);if(p.length===0){return false}for(let u=0;u<p.length;u++){const m=p[u];if(u===p.length-1){const u=Object.hasOwn(t,m);if(!u){return false}delete t[m];return true}t=t[m];if(!isObject(t)){return false}}}function hasProperty(t,u){if(!isObject(t)||typeof u!=="string"&&!Array.isArray(u)){return false}const p=normalizePath(u);if(p.length===0){return false}for(const u of p){if(!isObject(t)||!(u in t)){return false}t=t[u]}return true}function escapePath(t){if(typeof t!=="string"){throw new TypeError(`Expected a string, got ${typeof t}`)}return t.replaceAll(/[\\.[]/g,String.raw`\$&`)}function normalizeEntries(t){const u=Object.entries(t);if(Array.isArray(t)){return u.map((([t,u])=>{const p=shouldCoerceToNumber(t)?Number.parseInt(t,10):t;return[p,u]}))}return u}function stringifyPath(t,u={}){if(!Array.isArray(t)){throw new TypeError(`Expected an array, got ${typeof t}`)}const{preferDotForIndices:p=false}=u;const m=[];for(const[u,g]of t.entries()){if(typeof g!=="string"&&typeof g!=="number"){throw new TypeError(`Expected a string or number for path segment at index ${u}, got ${typeof g}`)}if(typeof g==="number"){if(!Number.isInteger(g)||g<0){const t=escapePath(String(g));m.push(u===0?t:`.${t}`)}else if(p&&u>0){m.push(`.${g}`)}else{m.push(`[${g}]`)}}else if(typeof g==="string"){if(g===""){if(u===0){}else{m.push(".")}}else if(shouldCoerceToNumber(g)){const t=Number.parseInt(g,10);if(p&&u>0){m.push(`.${t}`)}else{m.push(`[${t}]`)}}else{const t=escapePath(g);m.push(u===0?t:`.${t}`)}}}return m.join("")}function*deepKeysIterator(t,u=[],p=new Set){if(!isObject(t)||isEmptyObject(t)){if(u.length>0){yield stringifyPath(u)}return}if(p.has(t)){return}p.add(t);for(const[m,g]of normalizeEntries(t)){u.push(m);yield*deepKeysIterator(g,u,p);u.pop()}p.delete(t)}function deepKeys(t){return[...deepKeysIterator(t)]}function unflatten(t){const u={};if(!isObject(t)){return u}for(const[p,m]of Object.entries(t)){setProperty(u,p,m)}return u}const j=require("node:os");var M=__nccwpck_require__.n(j);const U=j.homedir();const B=j.tmpdir();const{env:H}=C;const macos=t=>{const p=u.join(U,"Library");return{data:u.join(p,"Application Support",t),config:u.join(p,"Preferences",t),cache:u.join(p,"Caches",t),log:u.join(p,"Logs",t),temp:u.join(B,t)}};const windows=t=>{const p=H.APPDATA||u.join(U,"AppData","Roaming");const m=H.LOCALAPPDATA||u.join(U,"AppData","Local");return{data:u.join(m,t,"Data"),config:u.join(p,t,"Config"),cache:u.join(m,t,"Cache"),log:u.join(m,t,"Log"),temp:u.join(B,t)}};const linux=t=>{const p=u.basename(U);return{data:u.join(H.XDG_DATA_HOME||u.join(U,".local","share"),t),config:u.join(H.XDG_CONFIG_HOME||u.join(U,".config"),t),cache:u.join(H.XDG_CACHE_HOME||u.join(U,".cache"),t),log:u.join(H.XDG_STATE_HOME||u.join(U,".local","state"),t),temp:u.join(B,p,t)}};function envPaths(t,{suffix:u="nodejs"}={}){if(typeof t!=="string"){throw new TypeError(`Expected a string, got ${typeof t}`)}if(u){t+=`-${u}`}if(C.platform==="darwin"){return macos(t)}if(C.platform==="win32"){return windows(t)}return linux(t)}var V=__nccwpck_require__(8474);const z=require("node:stream");const attemptifyAsync=(t,u)=>{const{onError:p}=u;return function attemptified(...u){return t.apply(undefined,u).catch(p)}};const G=attemptifyAsync;const attemptifySync=(t,u)=>{const{onError:p}=u;return function attemptified(...u){try{return t.apply(undefined,u)}catch(t){return p(t)}}};const W=attemptifySync;const q=250;const retryifyAsync=(t,u)=>{const{isRetriable:p}=u;return function retryified(u){const{timeout:m}=u;const g=u.interval??q;const y=Date.now()+m;return function attempt(...u){return t.apply(undefined,u).catch((t=>{if(!p(t))throw t;if(Date.now()>=y)throw t;const m=Math.round(g*Math.random());if(m>0){const t=new Promise((t=>setTimeout(t,m)));return t.then((()=>attempt.apply(undefined,u)))}else{return attempt.apply(undefined,u)}}))}}};const Y=retryifyAsync;const retryifySync=(t,u)=>{const{isRetriable:p}=u;return function retryified(u){const{timeout:m}=u;const g=Date.now()+m;return function attempt(...u){while(true){try{return t.apply(undefined,u)}catch(t){if(!p(t))throw t;if(Date.now()>=g)throw t;continue}}}}};const J=retryifySync;const Z={isChangeErrorOk:t=>{if(!Z.isNodeError(t))return false;const{code:u}=t;if(u==="ENOSYS")return true;if(!se&&(u==="EINVAL"||u==="EPERM"))return true;return false},isNodeError:t=>t instanceof Error,isRetriableError:t=>{if(!Z.isNodeError(t))return false;const{code:u}=t;if(u==="EMFILE"||u==="ENFILE"||u==="EAGAIN"||u==="EBUSY"||u==="EACCESS"||u==="EACCES"||u==="EACCS"||u==="EPERM")return true;return false},onChangeError:t=>{if(!Z.isNodeError(t))throw t;if(Z.isChangeErrorOk(t))return;throw t}};const X=Z;const Q={onError:X.onChangeError};const ee={onError:()=>undefined};const se=C.getuid?!C.getuid():false;const ie={isRetriable:X.isRetriableError};const ne={attempt:{chmod:G((0,k.promisify)(t.chmod),Q),chown:G((0,k.promisify)(t.chown),Q),close:G((0,k.promisify)(t.close),ee),fsync:G((0,k.promisify)(t.fsync),ee),mkdir:G((0,k.promisify)(t.mkdir),ee),realpath:G((0,k.promisify)(t.realpath),ee),stat:G((0,k.promisify)(t.stat),ee),unlink:G((0,k.promisify)(t.unlink),ee),chmodSync:W(t.chmodSync,Q),chownSync:W(t.chownSync,Q),closeSync:W(t.closeSync,ee),existsSync:W(t.existsSync,ee),fsyncSync:W(t.fsync,ee),mkdirSync:W(t.mkdirSync,ee),realpathSync:W(t.realpathSync,ee),statSync:W(t.statSync,ee),unlinkSync:W(t.unlinkSync,ee)},retry:{close:Y((0,k.promisify)(t.close),ie),fsync:Y((0,k.promisify)(t.fsync),ie),open:Y((0,k.promisify)(t.open),ie),readFile:Y((0,k.promisify)(t.readFile),ie),rename:Y((0,k.promisify)(t.rename),ie),stat:Y((0,k.promisify)(t.stat),ie),write:Y((0,k.promisify)(t.write),ie),writeFile:Y((0,k.promisify)(t.writeFile),ie),closeSync:J(t.closeSync,ie),fsyncSync:J(t.fsyncSync,ie),openSync:J(t.openSync,ie),readFileSync:J(t.readFileSync,ie),renameSync:J(t.renameSync,ie),statSync:J(t.statSync,ie),writeSync:J(t.writeSync,ie),writeFileSync:J(t.writeFileSync,ie)}};const ae=ne;const le="utf8";const ue=438;const he=511;const de={};const fe={};const pe=C.geteuid?C.geteuid():-1;const me=C.getegid?C.getegid():-1;const ge=200;const ye=7500;const ve=1e3;const _e=!!C.getuid;const be=C.getuid?!C.getuid():false;const we=128;const NOOP=()=>{};const lang_isException=t=>t instanceof Error&&"code"in t;const lang_isFunction=t=>typeof t==="function";const lang_isString=t=>typeof t==="string";const lang_isUndefined=t=>t===undefined;const Ee={};const $e={next:t=>{const u=Ee[t];if(!u)return;u.shift();const p=u[0];if(p){p((()=>$e.next(t)))}else{delete Ee[t]}},schedule:t=>new Promise((u=>{let p=Ee[t];if(!p)p=Ee[t]=[];p.push(u);if(p.length>1)return;u((()=>$e.next(t)))}))};const Oe=null&&$e;const Re=C.platform==="linux";const Pe=C.platform==="win32";const Ae=["SIGHUP","SIGINT","SIGTERM"];if(!Pe){Ae.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT")}if(Re){Ae.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT")}const xe=Ae;class Interceptor{constructor(){this.callbacks=new Set;this.exited=false;this.exit=t=>{if(this.exited)return;this.exited=true;for(const t of this.callbacks){t()}if(t){if(Pe&&(t!=="SIGINT"&&t!=="SIGTERM"&&t!=="SIGKILL")){C.kill(C.pid,"SIGTERM")}else{C.kill(C.pid,t)}}};this.hook=()=>{C.once("exit",(()=>this.exit()));for(const t of xe){try{C.once(t,(()=>this.exit(t)))}catch{}}};this.register=t=>{this.callbacks.add(t);return()=>{this.callbacks.delete(t)}};this.hook()}}const Te=new Interceptor;const ke=Te.register;const Ce=ke;const Ie={store:{},create:t=>{const u=`000000${Math.floor(Math.random()*16777215).toString(16)}`.slice(-6);const p=Date.now().toString().slice(-10);const m="tmp-";const g=`.${m}${p}${u}`;const y=`${t}${g}`;return y},get:(t,u,p=true)=>{const m=Ie.truncate(u(t));if(m in Ie.store)return Ie.get(t,u,p);Ie.store[m]=p;const disposer=()=>delete Ie.store[m];return[m,disposer]},purge:t=>{if(!Ie.store[t])return;delete Ie.store[t];ae.attempt.unlink(t)},purgeSync:t=>{if(!Ie.store[t])return;delete Ie.store[t];ae.attempt.unlinkSync(t)},purgeSyncAll:()=>{for(const t in Ie.store){Ie.purgeSync(t)}},truncate:t=>{const p=u.basename(t);if(p.length<=we)return t;const m=/^(\.?)(.*?)((?:\.[^.]+)?(?:\.tmp-\d{10}[a-f0-9]{6})?)$/.exec(p);if(!m)return t;const g=p.length-we;return`${t.slice(0,-p.length)}${m[1]}${m[2].slice(0,-g)}${m[3]}`}};Ce(Ie.purgeSyncAll);const Ne=Ie;function readFile(t,u=DEFAULT_READ_OPTIONS){if(isString(u))return readFile(t,{encoding:u});const p=u.timeout??DEFAULT_TIMEOUT_ASYNC;const m={timeout:p,interval:DEFAULT_INTERVAL_ASYNC};return fs.retry.readFile(m)(t,u)}function readFileSync(t,u=DEFAULT_READ_OPTIONS){if(isString(u))return readFileSync(t,{encoding:u});const p=u.timeout??DEFAULT_TIMEOUT_SYNC;const m={timeout:p};return fs.retry.readFileSync(m)(t,u)}function writeFile(t,u,p,m){if(isFunction(p))return writeFile(t,u,DEFAULT_WRITE_OPTIONS,p);const g=writeFileAsync(t,u,p);if(m)g.then(m,m);return g}async function writeFileAsync(t,u,p=DEFAULT_WRITE_OPTIONS){if(isString(p))return writeFileAsync(t,u,{encoding:p});const m=p.timeout??DEFAULT_TIMEOUT_ASYNC;const g={timeout:m,interval:DEFAULT_INTERVAL_ASYNC};let y=null;let v=null;let b=null;let w=null;let E=null;try{if(p.schedule)y=await p.schedule(t);v=await Scheduler.schedule(t);const m=await fs.attempt.realpath(t);const $=!!m;t=m||t;[w,b]=Temp.get(t,p.tmpCreate||Temp.create,!(p.tmpPurge===false));const O=IS_POSIX&&isUndefined(p.chown);const R=isUndefined(p.mode);if($&&(O||R)){const u=await fs.attempt.stat(t);if(u){p={...p};if(O){p.chown={uid:u.uid,gid:u.gid}}if(R){p.mode=u.mode}}}if(!$){const u=path.dirname(t);await fs.attempt.mkdir(u,{mode:DEFAULT_FOLDER_MODE,recursive:true})}E=await fs.retry.open(g)(w,"w",p.mode||DEFAULT_FILE_MODE);if(p.tmpCreated){p.tmpCreated(w)}if(isString(u)){await fs.retry.write(g)(E,u,0,p.encoding||DEFAULT_ENCODING)}else if(u instanceof Readable){const t=createWriteStream(w,{fd:E,autoClose:false});const p=once(t,"finish");u.pipe(t);await p}else if(!isUndefined(u)){await fs.retry.write(g)(E,u,0,u.length,0)}if(p.fsync!==false){if(p.fsyncWait!==false){await fs.retry.fsync(g)(E)}else{fs.attempt.fsync(E)}}await fs.retry.close(g)(E);E=null;if(p.chown&&(p.chown.uid!==DEFAULT_USER_UID||p.chown.gid!==DEFAULT_USER_GID)){await fs.attempt.chown(w,p.chown.uid,p.chown.gid)}if(p.mode&&p.mode!==DEFAULT_FILE_MODE){await fs.attempt.chmod(w,p.mode)}try{await fs.retry.rename(g)(w,t)}catch(u){if(!isException(u))throw u;if(u.code!=="ENAMETOOLONG")throw u;await fs.retry.rename(g)(w,Temp.truncate(t))}b();w=null}finally{if(E)await fs.attempt.close(E);if(w)Temp.purge(w);if(y)y();if(v)v()}}function writeFileSync(t,p,m=fe){if(lang_isString(m))return writeFileSync(t,p,{encoding:m});const g=m.timeout??ve;const y={timeout:g};let v=null;let b=null;let w=null;try{const g=ae.attempt.realpathSync(t);const E=!!g;t=g||t;[b,v]=Ne.get(t,m.tmpCreate||Ne.create,!(m.tmpPurge===false));const $=_e&&lang_isUndefined(m.chown);const O=lang_isUndefined(m.mode);if(E&&($||O)){const u=ae.attempt.statSync(t);if(u){m={...m};if($){m.chown={uid:u.uid,gid:u.gid}}if(O){m.mode=u.mode}}}if(!E){const p=u.dirname(t);ae.attempt.mkdirSync(p,{mode:he,recursive:true})}w=ae.retry.openSync(y)(b,"w",m.mode||ue);if(m.tmpCreated){m.tmpCreated(b)}if(lang_isString(p)){ae.retry.writeSync(y)(w,p,0,m.encoding||le)}else if(!lang_isUndefined(p)){ae.retry.writeSync(y)(w,p,0,p.length,0)}if(m.fsync!==false){if(m.fsyncWait!==false){ae.retry.fsyncSync(y)(w)}else{ae.attempt.fsync(w)}}ae.retry.closeSync(y)(w);w=null;if(m.chown&&(m.chown.uid!==pe||m.chown.gid!==me)){ae.attempt.chownSync(b,m.chown.uid,m.chown.gid)}if(m.mode&&m.mode!==ue){ae.attempt.chmodSync(b,m.mode)}try{ae.retry.renameSync(y)(b,t)}catch(u){if(!lang_isException(u))throw u;if(u.code!=="ENAMETOOLONG")throw u;ae.retry.renameSync(y)(b,Ne.truncate(t))}v();b=null}finally{if(w)ae.attempt.closeSync(w);if(b)Ne.purge(b)}}var De=__nccwpck_require__(8861);var Le=__nccwpck_require__(8631);const copyProperty=(t,u,p,m)=>{if(p==="length"||p==="prototype"){return}if(p==="arguments"||p==="caller"){return}const g=Object.getOwnPropertyDescriptor(t,p);const y=Object.getOwnPropertyDescriptor(u,p);if(!canCopyProperty(g,y)&&m){return}Object.defineProperty(t,p,y)};const canCopyProperty=function(t,u){return t===undefined||t.configurable||t.writable===u.writable&&t.enumerable===u.enumerable&&t.configurable===u.configurable&&(t.writable||t.value===u.value)};const changePrototype=(t,u)=>{const p=Object.getPrototypeOf(u);if(p===Object.getPrototypeOf(t)){return}Object.setPrototypeOf(t,p)};const wrappedToString=(t,u)=>`/* Wrapped ${t}*/\n${u}`;const je=Object.getOwnPropertyDescriptor(Function.prototype,"toString");const Me=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name");const changeToString=(t,u,p)=>{const m=p===""?"":`with ${p.trim()}() `;const g=wrappedToString.bind(null,m,u.toString());Object.defineProperty(g,"name",Me);const{writable:y,enumerable:v,configurable:b}=je;Object.defineProperty(t,"toString",{value:g,writable:y,enumerable:v,configurable:b})};function mimicFunction(t,u,{ignoreNonConfigurable:p=false}={}){const{name:m}=t;for(const m of Reflect.ownKeys(u)){copyProperty(t,u,m,p)}changePrototype(t,u);changeToString(t,u,m);return t}const debounceFunction=(t,u={})=>{if(typeof t!=="function"){throw new TypeError(`Expected the first argument to be a function, got \`${typeof t}\``)}const{wait:p=0,maxWait:m=Number.POSITIVE_INFINITY,before:g=false,after:y=true}=u;if(p<0||m<0){throw new RangeError("`wait` and `maxWait` must not be negative.")}if(!g&&!y){throw new Error("Both `before` and `after` are false, function wouldn't be called.")}let v;let b;let w;const debouncedFunction=function(...u){const E=this;const later=()=>{v=undefined;if(b){clearTimeout(b);b=undefined}if(y){w=t.apply(E,u)}};const maxLater=()=>{b=undefined;if(v){clearTimeout(v);v=undefined}if(y){w=t.apply(E,u)}};const $=g&&!v;clearTimeout(v);v=setTimeout(later,p);if(m>0&&m!==Number.POSITIVE_INFINITY&&!b){b=setTimeout(maxLater,m)}if($){w=t.apply(E,u)}return w};mimicFunction(debouncedFunction,t);debouncedFunction.cancel=()=>{if(v){clearTimeout(v);v=undefined}if(b){clearTimeout(b);b=undefined}};return debouncedFunction};const Fe=debounceFunction;var Ue=__nccwpck_require__(4423);const Be=Object.prototype.toString;const He="[object Uint8Array]";const Ve="[object ArrayBuffer]";function isType(t,u,p){if(!t){return false}if(t.constructor===u){return true}return Be.call(t)===p}function isUint8Array(t){return isType(t,Uint8Array,He)}function isArrayBuffer(t){return isType(t,ArrayBuffer,Ve)}function isUint8ArrayOrArrayBuffer(t){return isUint8Array(t)||isArrayBuffer(t)}function assertUint8Array(t){if(!isUint8Array(t)){throw new TypeError(`Expected \`Uint8Array\`, got \`${typeof t}\``)}}function assertUint8ArrayOrArrayBuffer(t){if(!isUint8ArrayOrArrayBuffer(t)){throw new TypeError(`Expected \`Uint8Array\` or \`ArrayBuffer\`, got \`${typeof t}\``)}}function toUint8Array(t){if(t instanceof ArrayBuffer){return new Uint8Array(t)}if(ArrayBuffer.isView(t)){return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}throw new TypeError(`Unsupported value, got \`${typeof t}\`.`)}function concatUint8Arrays(t,u){if(t.length===0){return new Uint8Array(0)}u??=t.reduce(((t,u)=>t+u.length),0);const p=new Uint8Array(u);let m=0;for(const u of t){assertUint8Array(u);p.set(u,m);m+=u.length}return p}function areUint8ArraysEqual(t,u){assertUint8Array(t);assertUint8Array(u);if(t===u){return true}if(t.length!==u.length){return false}for(let p=0;p<t.length;p++){if(t[p]!==u[p]){return false}}return true}function compareUint8Arrays(t,u){assertUint8Array(t);assertUint8Array(u);const p=Math.min(t.length,u.length);for(let m=0;m<p;m++){const p=t[m]-u[m];if(p!==0){return Math.sign(p)}}return Math.sign(t.length-u.length)}const ze={utf8:new globalThis.TextDecoder("utf8")};function uint8ArrayToString(t,u="utf8"){assertUint8ArrayOrArrayBuffer(t);ze[u]??=new globalThis.TextDecoder(u);return ze[u].decode(t)}function assertString(t){if(typeof t!=="string"){throw new TypeError(`Expected \`string\`, got \`${typeof t}\``)}}const Ge=new globalThis.TextEncoder;function stringToUint8Array(t){assertString(t);return Ge.encode(t)}function base64ToBase64Url(t){return t.replaceAll("+","-").replaceAll("/","_").replace(/=+$/,"")}function base64UrlToBase64(t){const u=t.replaceAll("-","+").replaceAll("_","/");const p=(4-u.length%4)%4;return u+"=".repeat(p)}const We=65535;function uint8ArrayToBase64(t,{urlSafe:u=false}={}){assertUint8Array(t);let p="";for(let u=0;u<t.length;u+=We){const m=t.subarray(u,u+We);p+=globalThis.btoa(String.fromCodePoint.apply(undefined,m))}return u?base64ToBase64Url(p):p}function base64ToUint8Array(t){assertString(t);return Uint8Array.from(globalThis.atob(base64UrlToBase64(t)),(t=>t.codePointAt(0)))}function stringToBase64(t,{urlSafe:u=false}={}){assertString(t);return uint8ArrayToBase64(stringToUint8Array(t),{urlSafe:u})}function base64ToString(t){assertString(t);return uint8ArrayToString(base64ToUint8Array(t))}const qe=Array.from({length:256},((t,u)=>u.toString(16).padStart(2,"0")));function uint8ArrayToHex(t){assertUint8Array(t);let u="";for(let p=0;p<t.length;p++){u+=qe[t[p]]}return u}const Ke={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,b:11,c:12,d:13,e:14,f:15,A:10,B:11,C:12,D:13,E:14,F:15};function hexToUint8Array(t){assertString(t);if(t.length%2!==0){throw new Error("Invalid Hex string length.")}const u=t.length/2;const p=new Uint8Array(u);for(let m=0;m<u;m++){const u=Ke[t[m*2]];const g=Ke[t[m*2+1]];if(u===undefined||g===undefined){throw new Error(`Invalid Hex character encountered at position ${m*2}`)}p[m]=u<<4|g}return p}function getUintBE(t){const{byteLength:u}=t;if(u===6){return t.getUint16(0)*2**32+t.getUint32(2)}if(u===5){return t.getUint8(0)*2**32+t.getUint32(1)}if(u===4){return t.getUint32(0)}if(u===3){return t.getUint8(0)*2**16+t.getUint16(1)}if(u===2){return t.getUint16(0)}if(u===1){return t.getUint8(0)}}function indexOf(t,u){const p=t.length;const m=u.length;if(m===0){return-1}if(m>p){return-1}const g=p-m;for(let p=0;p<=g;p++){let g=true;for(let y=0;y<m;y++){if(t[p+y]!==u[y]){g=false;break}}if(g){return p}}return-1}function includes(t,u){return indexOf(t,u)!==-1}const Ye="aes-256-cbc";const Je=new Set(["aes-256-cbc","aes-256-gcm","aes-256-ctr"]);const isSupportedEncryptionAlgorithm=t=>typeof t==="string"&&Je.has(t);const createPlainObject=()=>Object.create(null);const isExist=t=>t!==undefined;const checkValueType=(t,u)=>{const p=new Set(["undefined","symbol","function"]);const m=typeof u;if(p.has(m)){throw new TypeError(`Setting a value of type \`${m}\` for key \`${t}\` is not allowed as it's not supported by JSON`)}};const Ze="__internal__";const Xe=`${Ze}.migrations.version`;class Conf{path;events;#e;#t;#r;#s;#i={};#n=false;#o;#a;#c;constructor(t={}){const u=this.#l(t);this.#s=u;this.#u(u);this.#h(u);this.#d(u);this.events=new EventTarget;this.#t=u.encryptionKey;this.#r=u.encryptionAlgorithm??Ye;this.path=this.#f(u);this.#p(u);if(u.watch){this._watch()}}get(t,u){if(this.#s.accessPropertiesByDotNotation){return this._get(t,u)}const{store:p}=this;return t in p?p[t]:u}set(t,u){if(typeof t!=="string"&&typeof t!=="object"){throw new TypeError(`Expected \`key\` to be of type \`string\` or \`object\`, got ${typeof t}`)}if(typeof t!=="object"&&u===undefined){throw new TypeError("Use `delete()` to clear values")}if(this._containsReservedKey(t)){throw new TypeError(`Please don't use the ${Ze} key, as it's used to manage this module internal operations.`)}const{store:p}=this;const set=(t,u)=>{checkValueType(t,u);if(this.#s.accessPropertiesByDotNotation){setProperty(p,t,u)}else{if(t==="__proto__"||t==="constructor"||t==="prototype"){return}p[t]=u}};if(typeof t==="object"){const u=t;for(const[t,p]of Object.entries(u)){set(t,p)}}else{set(t,u)}this.store=p}has(t){if(this.#s.accessPropertiesByDotNotation){return hasProperty(this.store,t)}return t in this.store}appendToArray(t,u){checkValueType(t,u);const p=this.#s.accessPropertiesByDotNotation?this._get(t,[]):t in this.store?this.store[t]:[];if(!Array.isArray(p)){throw new TypeError(`The key \`${t}\` is already set to a non-array value`)}this.set(t,[...p,u])}reset(...t){for(const u of t){if(isExist(this.#i[u])){this.set(u,this.#i[u])}}}delete(t){const{store:u}=this;if(this.#s.accessPropertiesByDotNotation){deleteProperty(u,t)}else{delete u[t]}this.store=u}clear(){const t=createPlainObject();for(const u of Object.keys(this.#i)){if(isExist(this.#i[u])){checkValueType(u,this.#i[u]);if(this.#s.accessPropertiesByDotNotation){setProperty(t,u,this.#i[u])}else{t[u]=this.#i[u]}}}this.store=t}onDidChange(t,u){if(typeof t!=="string"){throw new TypeError(`Expected \`key\` to be of type \`string\`, got ${typeof t}`)}if(typeof u!=="function"){throw new TypeError(`Expected \`callback\` to be of type \`function\`, got ${typeof u}`)}return this._handleValueChange((()=>this.get(t)),u)}onDidAnyChange(t){if(typeof t!=="function"){throw new TypeError(`Expected \`callback\` to be of type \`function\`, got ${typeof t}`)}return this._handleStoreChange(t)}get size(){const t=Object.keys(this.store);return t.filter((t=>!this._isReservedKeyPath(t))).length}get store(){try{const u=t.readFileSync(this.path,this.#t?null:"utf8");const p=this._decryptData(u);const parseStore=t=>{const u=this._deserialize(t);if(!this.#n){this._validate(u)}return Object.assign(createPlainObject(),u)};return parseStore(p)}catch(t){if(t?.code==="ENOENT"){this._ensureDirectory();return createPlainObject()}if(this.#s.clearInvalidConfig){const u=t;if(u.name==="SyntaxError"){return createPlainObject()}if(u.message?.startsWith("Config schema violation:")){return createPlainObject()}if(u.message==="Failed to decrypt config data."){return createPlainObject()}}throw t}}set store(u){this._ensureDirectory();if(!hasProperty(u,Ze)){try{const p=t.readFileSync(this.path,this.#t?null:"utf8");const m=this._decryptData(p);const g=this._deserialize(m);if(hasProperty(g,Ze)){setProperty(u,Ze,getProperty(g,Ze))}}catch{}}if(!this.#n){this._validate(u)}this._write(u);this.events.dispatchEvent(new Event("change"))}*[Symbol.iterator](){for(const[t,u]of Object.entries(this.store)){if(!this._isReservedKeyPath(t)){yield[t,u]}}}_closeWatcher(){if(this.#o){this.#o.close();this.#o=undefined}if(this.#a){t.unwatchFile(this.path);this.#a=false}this.#c=undefined}_decryptData(t){const u=this.#t;if(!u){return typeof t==="string"?t:uint8ArrayToString(t)}const p=this.#r;const m=p==="aes-256-gcm"?16:0;const g=":".codePointAt(0);const y=typeof t==="string"?t.codePointAt(16):t[16];const v=g!==undefined&&y===g;if(!v){if(p==="aes-256-cbc"){return typeof t==="string"?t:uint8ArrayToString(t)}throw new Error("Failed to decrypt config data.")}const getEncryptedPayload=t=>{if(m===0){return{ciphertext:t}}const u=t.length-m;if(u<0){throw new Error("Invalid authentication tag length.")}return{ciphertext:t.slice(0,u),authenticationTag:t.slice(u)}};const b=t.slice(0,16);const w=t.slice(17);const E=typeof w==="string"?stringToUint8Array(w):w;const decrypt=t=>{const{ciphertext:m,authenticationTag:g}=getEncryptedPayload(E);const y=I.pbkdf2Sync(u,t,1e4,32,"sha512");const v=I.createDecipheriv(p,y,b);if(g){v.setAuthTag(g)}return uint8ArrayToString(concatUint8Arrays([v.update(m),v.final()]))};try{return decrypt(b)}catch{try{return decrypt(b.toString())}catch{}}if(p==="aes-256-cbc"){return typeof t==="string"?t:uint8ArrayToString(t)}throw new Error("Failed to decrypt config data.")}_handleStoreChange(t){let u=this.store;const onChange=()=>{const p=u;const m=this.store;if((0,k.isDeepStrictEqual)(m,p)){return}u=m;t.call(this,m,p)};this.events.addEventListener("change",onChange);return()=>{this.events.removeEventListener("change",onChange)}}_handleValueChange(t,u){let p=t();const onChange=()=>{const m=p;const g=t();if((0,k.isDeepStrictEqual)(g,m)){return}p=g;u.call(this,g,m)};this.events.addEventListener("change",onChange);return()=>{this.events.removeEventListener("change",onChange)}}_deserialize=t=>JSON.parse(t);_serialize=t=>JSON.stringify(t,undefined,"\t");_validate(t){if(!this.#e){return}const u=this.#e(t);if(u||!this.#e.errors){return}const p=this.#e.errors.map((({instancePath:t,message:u=""})=>`\`${t.slice(1)}\` ${u}`));throw new Error("Config schema violation: "+p.join("; "))}_ensureDirectory(){t.mkdirSync(u.dirname(this.path),{recursive:true})}_write(u){let p=this._serialize(u);const m=this.#t;if(m){const t=I.randomBytes(16);const u=I.pbkdf2Sync(m,t,1e4,32,"sha512");const g=I.createCipheriv(this.#r,u,t);const y=concatUint8Arrays([g.update(stringToUint8Array(p)),g.final()]);const v=[t,stringToUint8Array(":"),y];if(this.#r==="aes-256-gcm"){v.push(g.getAuthTag())}p=concatUint8Arrays(v)}if(C.env.SNAP){t.writeFileSync(this.path,p,{mode:this.#s.configFileMode})}else{try{writeFileSync(this.path,p,{mode:this.#s.configFileMode})}catch(u){if(u?.code==="EXDEV"){t.writeFileSync(this.path,p,{mode:this.#s.configFileMode});return}throw u}}}_watch(){this._ensureDirectory();if(!t.existsSync(this.path)){this._write(createPlainObject())}if(C.platform==="win32"||C.platform==="darwin"){this.#c??=Fe((()=>{this.events.dispatchEvent(new Event("change"))}),{wait:100});const p=u.dirname(this.path);const m=u.basename(this.path);this.#o=t.watch(p,{persistent:false,encoding:"utf8"},((t,u)=>{if(u&&u!==m){return}if(typeof this.#c==="function"){this.#c()}}))}else{this.#c??=Fe((()=>{this.events.dispatchEvent(new Event("change"))}),{wait:1e3});t.watchFile(this.path,{persistent:false},((t,u)=>{if(typeof this.#c==="function"){this.#c()}}));this.#a=true}}_migrate(t,u,p){let m=this._get(Xe,"0.0.0");const g=Object.keys(t).filter((t=>this._shouldPerformMigration(t,m,u)));let y=structuredClone(this.store);for(const v of g){try{if(p){p(this,{fromVersion:m,toVersion:v,finalVersion:u,versions:g})}const b=t[v];b?.(this);this._set(Xe,v);m=v;y=structuredClone(this.store)}catch(t){this.store=y;const u=t instanceof Error?t.message:String(t);throw new Error(`Something went wrong during the migration! Changes applied to the store until this failed migration will be restored. ${u}`)}}if(this._isVersionInRangeFormat(m)||!Ue.eq(m,u)){this._set(Xe,u)}}_containsReservedKey(t){if(typeof t==="string"){return this._isReservedKeyPath(t)}if(!t||typeof t!=="object"){return false}return this._objectContainsReservedKey(t)}_objectContainsReservedKey(t){if(!t||typeof t!=="object"){return false}for(const[u,p]of Object.entries(t)){if(this._isReservedKeyPath(u)){return true}if(this._objectContainsReservedKey(p)){return true}}return false}_isReservedKeyPath(t){return t===Ze||t.startsWith(`${Ze}.`)}_isVersionInRangeFormat(t){return Ue.clean(t)===null}_shouldPerformMigration(t,u,p){if(this._isVersionInRangeFormat(t)){if(u!=="0.0.0"&&Ue.satisfies(u,t)){return false}return Ue.satisfies(p,t)}if(Ue.lte(t,u)){return false}if(Ue.gt(t,p)){return false}return true}_get(t,u){return getProperty(this.store,t,u)}_set(t,u){const{store:p}=this;setProperty(p,t,u);this.store=p}#l(t){const u={configName:"config",fileExtension:"json",projectSuffix:"nodejs",clearInvalidConfig:false,accessPropertiesByDotNotation:true,configFileMode:438,...t};u.encryptionAlgorithm??=Ye;if(!isSupportedEncryptionAlgorithm(u.encryptionAlgorithm)){throw new TypeError(`The \`encryptionAlgorithm\` option must be one of: ${[...Je].join(", ")}`)}if(!u.cwd){if(!u.projectName){throw new Error("Please specify the `projectName` option.")}u.cwd=envPaths(u.projectName,{suffix:u.projectSuffix}).config}if(typeof u.fileExtension==="string"){u.fileExtension=u.fileExtension.replace(/^\.+/,"")}return u}#u(t){if(!(t.schema??t.ajvOptions??t.rootSchema)){return}if(t.schema&&typeof t.schema!=="object"){throw new TypeError("The `schema` option must be an object.")}const u=Le["default"];const p=new De.Ajv2020({allErrors:true,useDefaults:true,...t.ajvOptions});u(p);const m={...t.rootSchema,type:"object",properties:t.schema};this.#e=p.compile(m);this.#m(t.schema)}#m(t){const u=Object.entries(t??{});for(const[t,p]of u){if(!p||typeof p!=="object"){continue}if(!Object.hasOwn(p,"default")){continue}const{default:u}=p;if(u===undefined){continue}this.#i[t]=u}}#h(t){if(t.defaults){Object.assign(this.#i,t.defaults)}}#d(t){if(t.serialize){this._serialize=t.serialize}if(t.deserialize){this._deserialize=t.deserialize}}#f(t){const p=typeof t.fileExtension==="string"?t.fileExtension:undefined;const m=p?`.${p}`:"";return u.resolve(t.cwd,`${t.configName??"config"}${m}`)}#p(t){if(t.migrations){this.#g(t);this._validate(this.store);return}const u=this.store;const p=Object.assign(createPlainObject(),t.defaults??{},u);this._validate(p);try{N.deepEqual(u,p)}catch{this.store=p}}#g(t){const{migrations:u,projectVersion:p}=t;if(!u){return}if(!p){throw new Error("Please specify the `projectVersion` option.")}this.#n=true;try{const m=this.store;const g=Object.assign(createPlainObject(),t.defaults??{},m);try{N.deepEqual(m,g)}catch{this._write(g)}this._migrate(u,p,t.beforeEachMigration)}finally{this.#n=false}}}var Qe=__nccwpck_require__(9212);var et=__nccwpck_require__(6133);var tt=__nccwpck_require__.n(et);var rt=__nccwpck_require__(5059);var st=__nccwpck_require__.n(rt);var it=__nccwpck_require__(9642);var nt=__nccwpck_require__.n(it);const ot=require("node:fs/promises");var ct=__nccwpck_require__.n(ot);const ut=["openapi.yaml","openapi.yml","openapi.json","swagger.yaml","swagger.yml","swagger.json"];const ht=["docs","documents","documentation","doc"];const dt=new Set(["node_modules",".git","dist","build",".next","coverage",".turbo",".cache",".apitogo"]);const ft="apitogo.config.json";const pt="pages";const yt="/introduction";function isRecord(t){return t!==null&&typeof t==="object"&&!Array.isArray(t)}function headerNavigation(t){if(!isRecord(t.header))return null;const{navigation:u}=t.header;if(!Array.isArray(u)||u.length===0)return null;return[...u]}function setHeaderNavigation(t,u){t.header={...t.header,navigation:u}}function isHeaderDocsItem(t){return isRecord(t)&&(t.to===yt||typeof t.label==="string"&&t.label.trim().toLowerCase()==="docs")}const vt=["introduction","getting-started","index","overview"];function landingDocRoute(t){const rank=t=>{var u;const p=vt.indexOf((u=t.split("/").at(-1))!==null&&u!==void 0?u:t);return p===-1?vt.length:p};return[...t].sort(((t,u)=>rank(t)-rank(u)||t.localeCompare(u)))[0]}function ensureHeaderDocs(t,u){var p;const m=headerNavigation(t);if(!m)return;const g=m.findIndex(isHeaderDocsItem);if(g>=0){if(((p=m[g])===null||p===void 0?void 0:p.to)!==yt)return;m[g]={...m[g],to:u}}else{m.push({label:"Docs",to:u})}setHeaderNavigation(t,m)}function ensureHeaderApiReference(t){const u=headerNavigation(t);if(!u||u.some((t=>t.to==="/api")))return;const p=u.findIndex(isHeaderDocsItem);const m={label:"API Reference",to:"/api"};if(p>=0){u.splice(p+1,0,m)}else{u.push(m)}setHeaderNavigation(t,u)}async function pathExists(t){try{await(0,ot.access)(t);return true}catch{return false}}function isDocsDir(t){return ht.includes(t.toLowerCase())}function toPosix(t){return t.split(p().sep).join(p().posix.sep)}function toSiteRelative(t,u){const m=toPosix(p().relative(t,u));if(!m||m==="."){return"./"}if(p().isAbsolute(m)||m.startsWith("..")){return m}return m.startsWith("./")?m:`./${m}`}function liteParseOpenApi(t,u){var m,g,y;const v=p().extname(u).toLowerCase();if(v===".json"){try{const u=JSON.parse(t);if(typeof u.openapi!=="string"||!u.openapi.startsWith("3.")){return{valid:false}}return{valid:true,version:u.openapi,title:(m=u.info)===null||m===void 0?void 0:m.title}}catch{return{valid:false}}}const b=t.match(/^\s*openapi:\s*['"]?(3\.\d+(?:\.\d+)?)['"]?/m);if(!(b===null||b===void 0?void 0:b[1])){return{valid:false}}const w=t.match(/^\s*info:\s*\n((?:[ \t].*\n)+)/m);const E=(g=w===null||w===void 0?void 0:w[1])===null||g===void 0?void 0:g.match(/^\s*title:\s*['"]?(.+?)['"]?\s*$/m);return{valid:true,version:b[1],title:(y=E===null||E===void 0?void 0:E[1])===null||y===void 0?void 0:y.trim()}}async function collectOpenApiCandidates(t){const u=p().resolve(t);const m=p().dirname(u);const g=new Set;const y=[];const collect=async t=>{const u=p().resolve(t);if(g.has(u)){return}g.add(u);for(const t of ut){const m=p().join(u,t);if(await pathExists(m)){y.push(m)}}};if(m&&m!==u){await collect(m);try{const t=await(0,ot.readdir)(m,{withFileTypes:true});for(const g of t){if(!g.isDirectory()||dt.has(g.name)){continue}const t=p().join(m,g.name);if(p().resolve(t)===u){continue}await collect(t)}}catch{}}await collect(u);return[...new Set(y)]}async function wireOpenApi(t){const u=p().join(t,ft);if(!await pathExists(u)){return null}for(const p of await collectOpenApiCandidates(t)){const m=liteParseOpenApi(await(0,ot.readFile)(p,"utf8"),p);if(!m.valid){continue}const g=toSiteRelative(t,p);const y=JSON.parse(await(0,ot.readFile)(u,"utf8"));y.apis=[{type:"file",input:g,path:"api"}];const v=y.backend&&typeof y.backend==="object"&&!Array.isArray(y.backend)?{...y.backend}:{};y.backend={...v,openApiPath:g};const b=Array.isArray(y.navigation)?[...y.navigation]:[];const w=b.some((t=>typeof t==="object"&&t!==null&&t.to==="/api"));if(!w){b.push({type:"link",to:"/api",label:"API Reference"})}y.navigation=b;ensureHeaderApiReference(y);await(0,ot.writeFile)(u,`${JSON.stringify(y,null,2)}\n`,"utf8");const E=m.title?` (${m.title})`:"";return`OpenAPI: wired ${g}${E} → /api`}return"OpenAPI: none found nearby"}async function collectMarkdownFiles(t){const u=[];let m;try{m=await(0,ot.readdir)(t,{withFileTypes:true})}catch{return u}for(const g of m){if(g.name.startsWith(".")){continue}const m=p().join(t,g.name);if(g.isDirectory()){if(dt.has(g.name)||g.isSymbolicLink()){continue}u.push(...await collectMarkdownFiles(m));continue}if((g.isFile()||g.isSymbolicLink())&&/\.mdx?$/i.test(g.name)){u.push(m)}}return u}async function discoverDocsDirectories(t){const u=p().resolve(t);const m=p().dirname(u);const g=new Set([u]);if(m&&m!==u){g.add(m);try{const t=await(0,ot.readdir)(m,{withFileTypes:true});for(const u of t){if(!u.isDirectory()||dt.has(u.name)){continue}g.add(p().join(m,u.name))}}catch{}}const y=[];const v=new Set;for(const t of g){const consider=async t=>{const m=p().resolve(t);if(m===u||v.has(m)){return}try{const t=await(0,ot.lstat)(m);if(!t.isDirectory()){return}}catch{return}const g=await collectMarkdownFiles(m);if(g.length===0){return}v.add(m);y.push(m)};if(isDocsDir(p().basename(t))){await consider(t)}try{const u=await(0,ot.readdir)(t,{withFileTypes:true});for(const m of u){if(!m.isDirectory()||dt.has(m.name)){continue}if(!isDocsDir(m.name)){continue}await consider(p().join(t,m.name))}}catch{}}return y}async function alreadyLinked(t,u){try{const m=await(0,ot.lstat)(t);if(!m.isSymbolicLink()){return false}const g=await(0,ot.readlink)(t);return p().resolve(p().dirname(t),g)===p().resolve(u)}catch{return false}}async function wireDocs(t){const u=await discoverDocsDirectories(t);if(u.length===0){return`Docs: none found in ${ht.join("/")}/ folders nearby`}const m=p().join(t,pt);await(0,ot.mkdir)(m,{recursive:true});const g=[];const y=[];let v=0;for(const b of u){const u=p().basename(b).toLowerCase().replace(/[^a-z0-9]+/g,"-")||"docs";const w=p().join(m,u);const E=(await collectMarkdownFiles(b)).sort(((t,u)=>t.localeCompare(u)));for(const u of E){const m=toPosix(p().relative(b,u));const y=p().join(w,m);if(await alreadyLinked(y,u)){const u=toPosix(p().relative(t,y));g.push(`/${u.replace(/^pages\/?/,"").replace(/\.mdx?$/i,"")}`);v+=1;continue}if(await pathExists(y)){continue}await(0,ot.mkdir)(p().dirname(y),{recursive:true});await(0,ot.symlink)(p().relative(p().dirname(y),u),y,process.platform==="win32"?"file":undefined);const E=toPosix(p().relative(t,y));const $=`/${E.replace(/^pages\/?/,"").replace(/\.mdx?$/i,"")}`;g.push($);v+=1}y.push(` ${toSiteRelative(t,b)} → ${toSiteRelative(t,w)}`)}const b=p().join(t,ft);if(g.length>0&&await pathExists(b)){const t=JSON.parse(await(0,ot.readFile)(b,"utf8"));const u=Array.isArray(t.navigation)?[...t.navigation]:[];const p=u.findIndex((t=>typeof t==="object"&&t!==null&&t.type==="category"&&t.label==="Documentation"));if(p>=0){const t=u[p];const m=Array.isArray(t.items)?[...t.items]:[];const y=JSON.stringify(m);for(const t of g){if(!y.includes(JSON.stringify(t))){m.push(t)}}u[p]={...t,items:m}}else{u.unshift({type:"category",label:"Documentation",items:g})}t.navigation=u;const m=landingDocRoute(g);if(m){ensureHeaderDocs(t,m)}await(0,ot.writeFile)(b,`${JSON.stringify(t,null,2)}\n`,"utf8")}return[`Docs: linked ${v} markdown file${v===1?"":"s"} (not copied)`,...y].join("\n")}async function discoverAndWireNearby(t){const u=await wireOpenApi(t);const p=await wireDocs(t);return[u,p].filter((t=>Boolean(t)))}const _t=require("node:stream/promises");var bt=__nccwpck_require__(4434);var wt=__nccwpck_require__(7515);const Et=require("node:string_decoder");var St=__nccwpck_require__(6928);const $t=require("assert");var Ot=__nccwpck_require__(181);const Rt=require("zlib");var Pt=__nccwpck_require__.t(Rt,2);var At=Object.defineProperty;var Ar=(t,u)=>{for(var p in u)At(t,p,{get:u[p],enumerable:!0})};var kt=typeof process=="object"&&process?process:{stdout:null,stderr:null},Cr=t=>!!t&&typeof t=="object"&&(t instanceof Er||t instanceof z||Fr(t)||kr(t)),Fr=t=>!!t&&typeof t=="object"&&t instanceof V.EventEmitter&&typeof t.pipe=="function"&&t.pipe!==z.Writable.prototype.pipe,kr=t=>!!t&&typeof t=="object"&&t instanceof V.EventEmitter&&typeof t.write=="function"&&typeof t.end=="function",Ct=Symbol("EOF"),It=Symbol("maybeEmitEnd"),Nt=Symbol("emittedEnd"),Dt=Symbol("emittingEnd"),jt=Symbol("emittedError"),Mt=Symbol("closed"),Ft=Symbol("read"),Ut=Symbol("flush"),Bt=Symbol("flushChunk"),Ht=Symbol("encoding"),Vt=Symbol("decoder"),zt=Symbol("flowing"),Gt=Symbol("paused"),Wt=Symbol("resume"),qt=Symbol("buffer"),Kt=Symbol("pipes"),Yt=Symbol("bufferLength"),Jt=Symbol("bufferPush"),Zt=Symbol("bufferShift"),Xt=Symbol("objectMode"),Qt=Symbol("destroyed"),er=Symbol("error"),rr=Symbol("emitData"),sr=Symbol("emitEnd"),ir=Symbol("emitEnd2"),nr=Symbol("async"),cr=Symbol("abort"),lr=Symbol("aborted"),mr=Symbol("signal"),gr=Symbol("dataListeners"),yr=Symbol("discarded"),te=t=>Promise.resolve().then(t),vr=t=>t(),Mr=t=>t==="end"||t==="finish"||t==="prefinish",Br=t=>t instanceof ArrayBuffer||!!t&&typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,Pr=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t),_r=class{src;dest;opts;ondrain;constructor(t,u,p){this.src=t,this.dest=u,this.opts=p,this.ondrain=()=>t[Wt](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(t){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},br=class extends _r{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(t,u,p){super(t,u,p),this.proxyErrors=t=>this.dest.emit("error",t),t.on("error",this.proxyErrors)}},zr=t=>!!t.objectMode,Ur=t=>!t.objectMode&&!!t.encoding&&t.encoding!=="buffer",Er=class extends V.EventEmitter{[zt]=!1;[Gt]=!1;[Kt]=[];[qt]=[];[Xt];[Ht];[nr];[Vt];[Ct]=!1;[Nt]=!1;[Dt]=!1;[Mt]=!1;[jt]=null;[Yt]=0;[Qt]=!1;[mr];[lr]=!1;[gr]=0;[yr]=!1;writable=!0;readable=!0;constructor(...t){let u=t[0]||{};if(super(),u.objectMode&&typeof u.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");zr(u)?(this[Xt]=!0,this[Ht]=null):Ur(u)?(this[Ht]=u.encoding,this[Xt]=!1):(this[Xt]=!1,this[Ht]=null),this[nr]=!!u.async,this[Vt]=this[Ht]?new Et.StringDecoder(this[Ht]):null,u&&u.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[qt]}),u&&u.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[Kt]});let{signal:p}=u;p&&(this[mr]=p,p.aborted?this[cr]():p.addEventListener("abort",(()=>this[cr]())))}get bufferLength(){return this[Yt]}get encoding(){return this[Ht]}set encoding(t){throw new Error("Encoding must be set at instantiation time")}setEncoding(t){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[Xt]}set objectMode(t){throw new Error("objectMode must be set at instantiation time")}get async(){return this[nr]}set async(t){this[nr]=this[nr]||!!t}[cr](){this[lr]=!0,this.emit("abort",this[mr]?.reason),this.destroy(this[mr]?.reason)}get aborted(){return this[lr]}set aborted(t){}write(t,u,p){if(this[lr])return!1;if(this[Ct])throw new Error("write after end");if(this[Qt])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof u=="function"&&(p=u,u="utf8"),u||(u="utf8");let m=this[nr]?te:vr;if(!this[Xt]&&!Buffer.isBuffer(t)){if(Pr(t))t=Buffer.from(t.buffer,t.byteOffset,t.byteLength);else if(Br(t))t=Buffer.from(t);else if(typeof t!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[Xt]?(this[zt]&&this[Yt]!==0&&this[Ut](!0),this[zt]?this.emit("data",t):this[Jt](t),this[Yt]!==0&&this.emit("readable"),p&&m(p),this[zt]):t.length?(typeof t=="string"&&!(u===this[Ht]&&!this[Vt]?.lastNeed)&&(t=Buffer.from(t,u)),Buffer.isBuffer(t)&&this[Ht]&&(t=this[Vt].write(t)),this[zt]&&this[Yt]!==0&&this[Ut](!0),this[zt]?this.emit("data",t):this[Jt](t),this[Yt]!==0&&this.emit("readable"),p&&m(p),this[zt]):(this[Yt]!==0&&this.emit("readable"),p&&m(p),this[zt])}read(t){if(this[Qt])return null;if(this[yr]=!1,this[Yt]===0||t===0||t&&t>this[Yt])return this[It](),null;this[Xt]&&(t=null),this[qt].length>1&&!this[Xt]&&(this[qt]=[this[Ht]?this[qt].join(""):Buffer.concat(this[qt],this[Yt])]);let u=this[Ft](t||null,this[qt][0]);return this[It](),u}[Ft](t,u){if(this[Xt])this[Zt]();else{let p=u;t===p.length||t===null?this[Zt]():typeof p=="string"?(this[qt][0]=p.slice(t),u=p.slice(0,t),this[Yt]-=t):(this[qt][0]=p.subarray(t),u=p.subarray(0,t),this[Yt]-=t)}return this.emit("data",u),!this[qt].length&&!this[Ct]&&this.emit("drain"),u}end(t,u,p){return typeof t=="function"&&(p=t,t=void 0),typeof u=="function"&&(p=u,u="utf8"),t!==void 0&&this.write(t,u),p&&this.once("end",p),this[Ct]=!0,this.writable=!1,(this[zt]||!this[Gt])&&this[It](),this}[Wt](){this[Qt]||(!this[gr]&&!this[Kt].length&&(this[yr]=!0),this[Gt]=!1,this[zt]=!0,this.emit("resume"),this[qt].length?this[Ut]():this[Ct]?this[It]():this.emit("drain"))}resume(){return this[Wt]()}pause(){this[zt]=!1,this[Gt]=!0,this[yr]=!1}get destroyed(){return this[Qt]}get flowing(){return this[zt]}get paused(){return this[Gt]}[Jt](t){this[Xt]?this[Yt]+=1:this[Yt]+=t.length,this[qt].push(t)}[Zt](){return this[Xt]?this[Yt]-=1:this[Yt]-=this[qt][0].length,this[qt].shift()}[Ut](t=!1){do{}while(this[Bt](this[Zt]())&&this[qt].length);!t&&!this[qt].length&&!this[Ct]&&this.emit("drain")}[Bt](t){return this.emit("data",t),this[zt]}pipe(t,u){if(this[Qt])return t;this[yr]=!1;let p=this[Nt];return u=u||{},t===kt.stdout||t===kt.stderr?u.end=!1:u.end=u.end!==!1,u.proxyErrors=!!u.proxyErrors,p?u.end&&t.end():(this[Kt].push(u.proxyErrors?new br(this,t,u):new _r(this,t,u)),this[nr]?te((()=>this[Wt]())):this[Wt]()),t}unpipe(t){let u=this[Kt].find((u=>u.dest===t));u&&(this[Kt].length===1?(this[zt]&&this[gr]===0&&(this[zt]=!1),this[Kt]=[]):this[Kt].splice(this[Kt].indexOf(u),1),u.unpipe())}addListener(t,u){return this.on(t,u)}on(t,u){let p=super.on(t,u);if(t==="data")this[yr]=!1,this[gr]++,!this[Kt].length&&!this[zt]&&this[Wt]();else if(t==="readable"&&this[Yt]!==0)super.emit("readable");else if(Mr(t)&&this[Nt])super.emit(t),this.removeAllListeners(t);else if(t==="error"&&this[jt]){let t=u;this[nr]?te((()=>t.call(this,this[jt]))):t.call(this,this[jt])}return p}removeListener(t,u){return this.off(t,u)}off(t,u){let p=super.off(t,u);return t==="data"&&(this[gr]=this.listeners("data").length,this[gr]===0&&!this[yr]&&!this[Kt].length&&(this[zt]=!1)),p}removeAllListeners(t){let u=super.removeAllListeners(t);return(t==="data"||t===void 0)&&(this[gr]=0,!this[yr]&&!this[Kt].length&&(this[zt]=!1)),u}get emittedEnd(){return this[Nt]}[It](){!this[Dt]&&!this[Nt]&&!this[Qt]&&this[qt].length===0&&this[Ct]&&(this[Dt]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[Mt]&&this.emit("close"),this[Dt]=!1)}emit(t,...u){let p=u[0];if(t!=="error"&&t!=="close"&&t!==Qt&&this[Qt])return!1;if(t==="data")return!this[Xt]&&!p?!1:this[nr]?(te((()=>this[rr](p))),!0):this[rr](p);if(t==="end")return this[sr]();if(t==="close"){if(this[Mt]=!0,!this[Nt]&&!this[Qt])return!1;let t=super.emit("close");return this.removeAllListeners("close"),t}else if(t==="error"){this[jt]=p,super.emit(er,p);let t=!this[mr]||this.listeners("error").length?super.emit("error",p):!1;return this[It](),t}else if(t==="resume"){let t=super.emit("resume");return this[It](),t}else if(t==="finish"||t==="prefinish"){let u=super.emit(t);return this.removeAllListeners(t),u}let m=super.emit(t,...u);return this[It](),m}[rr](t){for(let u of this[Kt])u.dest.write(t)===!1&&this.pause();let u=this[yr]?!1:super.emit("data",t);return this[It](),u}[sr](){return this[Nt]?!1:(this[Nt]=!0,this.readable=!1,this[nr]?(te((()=>this[ir]())),!0):this[ir]())}[ir](){if(this[Vt]){let t=this[Vt].end();if(t){for(let u of this[Kt])u.dest.write(t);this[yr]||super.emit("data",t)}}for(let t of this[Kt])t.end();let t=super.emit("end");return this.removeAllListeners("end"),t}async collect(){let t=Object.assign([],{dataLength:0});this[Xt]||(t.dataLength=0);let u=this.promise();return this.on("data",(u=>{t.push(u),this[Xt]||(t.dataLength+=u.length)})),await u,t}async concat(){if(this[Xt])throw new Error("cannot concat in objectMode");let t=await this.collect();return this[Ht]?t.join(""):Buffer.concat(t,t.dataLength)}async promise(){return new Promise(((t,u)=>{this.on(Qt,(()=>u(new Error("stream destroyed")))),this.on("error",(t=>u(t))),this.on("end",(()=>t()))}))}[Symbol.asyncIterator](){this[yr]=!1;let t=!1,e=async()=>(this.pause(),t=!0,{value:void 0,done:!0});return{next:()=>{if(t)return e();let u=this.read();if(u!==null)return Promise.resolve({done:!1,value:u});if(this[Ct])return e();let p,m,h=t=>{this.off("data",a),this.off("end",l),this.off(Qt,c),e(),m(t)},a=t=>{this.off("error",h),this.off("end",l),this.off(Qt,c),this.pause(),p({value:t,done:!!this[Ct]})},l=()=>{this.off("error",h),this.off("data",a),this.off(Qt,c),e(),p({done:!0,value:void 0})},c=()=>h(new Error("stream destroyed"));return new Promise(((t,u)=>{m=u,p=t,this.once(Qt,c),this.once("error",h),this.once("end",l),this.once("data",a)}))},throw:e,return:e,[Symbol.asyncIterator](){return this},[Symbol.asyncDispose]:async()=>{}}}[Symbol.iterator](){this[yr]=!1;let t=!1,e=()=>(this.pause(),this.off(er,e),this.off(Qt,e),this.off("end",e),t=!0,{done:!0,value:void 0}),i=()=>{if(t)return e();let u=this.read();return u===null?e():{done:!1,value:u}};return this.once("end",e),this.once(er,e),this.once(Qt,e),{next:i,throw:e,return:e,[Symbol.iterator](){return this},[Symbol.dispose]:()=>{}}}destroy(t){if(this[Qt])return t?this.emit("error",t):this.emit(Qt),this;this[Qt]=!0,this[yr]=!0,this[qt].length=0,this[Yt]=0;let u=this;return typeof u.close=="function"&&!this[Mt]&&u.close(),t?this.emit("error",t):this.emit(Qt),this}static get isStream(){return Cr}};var Sr=wt.writev,Or=Symbol("_autoClose"),Rr=Symbol("_close"),xr=Symbol("_ended"),Ir=Symbol("_fd"),Nr=Symbol("_finished"),Dr=Symbol("_flags"),Lr=Symbol("_flush"),Hr=Symbol("_handleChunk"),Vr=Symbol("_makeBuf"),Gr=Symbol("_mode"),Wr=Symbol("_needDrain"),Kr=Symbol("_onerror"),Yr=Symbol("_onopen"),Xr=Symbol("_onread"),es=Symbol("_onwrite"),ts=Symbol("_open"),rs=Symbol("_path"),ss=Symbol("_pos"),is=Symbol("_queue"),ns=Symbol("_read"),os=Symbol("_readSize"),as=Symbol("_reading"),ls=Symbol("_remain"),hs=Symbol("_size"),ps=Symbol("_write"),ms=Symbol("_writing"),gs=Symbol("_defaultFlag"),ys=Symbol("_errored"),vs=class extends Er{[ys]=!1;[Ir];[rs];[os];[as]=!1;[hs];[ls];[Or];constructor(t,u){if(u=u||{},super(u),this.readable=!0,this.writable=!1,typeof t!="string")throw new TypeError("path must be a string");this[ys]=!1,this[Ir]=typeof u.fd=="number"?u.fd:void 0,this[rs]=t,this[os]=u.readSize||16*1024*1024,this[as]=!1,this[hs]=typeof u.size=="number"?u.size:1/0,this[ls]=this[hs],this[Or]=typeof u.autoClose=="boolean"?u.autoClose:!0,typeof this[Ir]=="number"?this[ns]():this[ts]()}get fd(){return this[Ir]}get path(){return this[rs]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[ts](){wt.open(this[rs],"r",((t,u)=>this[Yr](t,u)))}[Yr](t,u){t?this[Kr](t):(this[Ir]=u,this.emit("open",u),this[ns]())}[Vr](){return Buffer.allocUnsafe(Math.min(this[os],this[ls]))}[ns](){if(!this[as]){this[as]=!0;let t=this[Vr]();if(t.length===0)return process.nextTick((()=>this[Xr](null,0,t)));wt.read(this[Ir],t,0,t.length,null,((t,u,p)=>this[Xr](t,u,p)))}}[Xr](t,u,p){this[as]=!1,t?this[Kr](t):this[Hr](u,p)&&this[ns]()}[Rr](){if(this[Or]&&typeof this[Ir]=="number"){let t=this[Ir];this[Ir]=void 0,wt.close(t,(t=>t?this.emit("error",t):this.emit("close")))}}[Kr](t){this[as]=!0,this[Rr](),this.emit("error",t)}[Hr](t,u){let p=!1;return this[ls]-=t,t>0&&(p=super.write(t<u.length?u.subarray(0,t):u)),(t===0||this[ls]<=0)&&(p=!1,this[Rr](),super.end()),p}emit(t,...u){switch(t){case"prefinish":case"finish":return!1;case"drain":return typeof this[Ir]=="number"&&this[ns](),!1;case"error":return this[ys]?!1:(this[ys]=!0,super.emit(t,...u));default:return super.emit(t,...u)}}},_s=class extends vs{[ts](){let t=!0;try{this[Yr](null,wt.openSync(this[rs],"r")),t=!1}finally{t&&this[Rr]()}}[ns](){let t=!0;try{if(!this[as]){this[as]=!0;do{let t=this[Vr](),u=t.length===0?0:wt.readSync(this[Ir],t,0,t.length,null);if(!this[Hr](u,t))break}while(!0);this[as]=!1}t=!1}finally{t&&this[Rr]()}}[Rr](){if(this[Or]&&typeof this[Ir]=="number"){let t=this[Ir];this[Ir]=void 0,wt.closeSync(t),this.emit("close")}}},bs=class extends bt{readable=!1;writable=!0;[ys]=!1;[ms]=!1;[xr]=!1;[is]=[];[Wr]=!1;[rs];[Gr];[Or];[Ir];[gs];[Dr];[Nr]=!1;[ss];constructor(t,u){u=u||{},super(u),this[rs]=t,this[Ir]=typeof u.fd=="number"?u.fd:void 0,this[Gr]=u.mode===void 0?438:u.mode,this[ss]=typeof u.start=="number"?u.start:void 0,this[Or]=typeof u.autoClose=="boolean"?u.autoClose:!0;let p=this[ss]!==void 0?"r+":"w";this[gs]=u.flags===void 0,this[Dr]=u.flags===void 0?p:u.flags,this[Ir]===void 0&&this[ts]()}emit(t,...u){if(t==="error"){if(this[ys])return!1;this[ys]=!0}return super.emit(t,...u)}get fd(){return this[Ir]}get path(){return this[rs]}[Kr](t){this[Rr](),this[ms]=!0,this.emit("error",t)}[ts](){wt.open(this[rs],this[Dr],this[Gr],((t,u)=>this[Yr](t,u)))}[Yr](t,u){this[gs]&&this[Dr]==="r+"&&t&&t.code==="ENOENT"?(this[Dr]="w",this[ts]()):t?this[Kr](t):(this[Ir]=u,this.emit("open",u),this[ms]||this[Lr]())}end(t,u){return t&&this.write(t,u),this[xr]=!0,!this[ms]&&!this[is].length&&typeof this[Ir]=="number"&&this[es](null,0),this}write(t,u){return typeof t=="string"&&(t=Buffer.from(t,u)),this[xr]?(this.emit("error",new Error("write() after end()")),!1):this[Ir]===void 0||this[ms]||this[is].length?(this[is].push(t),this[Wr]=!0,!1):(this[ms]=!0,this[ps](t),!0)}[ps](t){wt.write(this[Ir],t,0,t.length,this[ss],((t,u)=>this[es](t,u)))}[es](t,u){t?this[Kr](t):(this[ss]!==void 0&&typeof u=="number"&&(this[ss]+=u),this[is].length?this[Lr]():(this[ms]=!1,this[xr]&&!this[Nr]?(this[Nr]=!0,this[Rr](),this.emit("finish")):this[Wr]&&(this[Wr]=!1,this.emit("drain"))))}[Lr](){if(this[is].length===0)this[xr]&&this[es](null,0);else if(this[is].length===1)this[ps](this[is].pop());else{let t=this[is];this[is]=[],Sr(this[Ir],t,this[ss],((t,u)=>this[es](t,u)))}}[Rr](){if(this[Or]&&typeof this[Ir]=="number"){let t=this[Ir];this[Ir]=void 0,wt.close(t,(t=>t?this.emit("error",t):this.emit("close")))}}},ws=class extends bs{[ts](){let t;if(this[gs]&&this[Dr]==="r+")try{t=wt.openSync(this[rs],this[Dr],this[Gr])}catch(t){if(t?.code==="ENOENT")return this[Dr]="w",this[ts]();throw t}else t=wt.openSync(this[rs],this[Dr],this[Gr]);this[Yr](null,t)}[Rr](){if(this[Or]&&typeof this[Ir]=="number"){let t=this[Ir];this[Ir]=void 0,wt.closeSync(t),this.emit("close")}}[ps](t){let u=!0;try{this[es](null,wt.writeSync(this[Ir],t,0,t.length,this[ss])),u=!1}finally{if(u)try{this[Rr]()}catch{}}}};var Es=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"],["onentry","onReadEntry"]]),As=t=>!!t.sync&&!!t.file,Is=t=>!t.sync&&!!t.file,Cs=t=>!!t.sync&&!t.file,Fs=t=>!t.sync&&!t.file;var ks=t=>!!t.file;var Zr=t=>{let u=Es.get(t);return u||t},re=(t={})=>{if(!t)return{};let u={};for(let[p,m]of Object.entries(t)){let t=Zr(p);u[t]=m}return u.chmod===void 0&&u.noChmod===!1&&(u.chmod=!0),delete u.noChmod,u};var K=(t,u,p,m,g)=>Object.assign(((y=[],v,b)=>{Array.isArray(y)&&(v=y,y={}),typeof v=="function"&&(b=v,v=void 0),v?v=Array.from(v):v=[];let w=re(y);if(g?.(w,v),As(w)){if(typeof b=="function")throw new TypeError("callback not supported for sync tar functions");return t(w,v)}else if(Is(w)){let t=u(w,v),p=b||void 0;return p?t.then((()=>p()),p):t}else if(Cs(w)){if(typeof b=="function")throw new TypeError("callback not supported for sync tar functions");return p(w,v)}else if(Fs(w)){if(typeof b=="function")throw new TypeError("callback only supported with file option");return m(w,v)}else throw new Error("impossible options??")}),{syncFile:t,asyncFile:u,syncNoFile:p,asyncNoFile:m,validate:g});var Ss=Rt.constants||{ZLIB_VERNUM:4736},$s=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},Ss));var Os=Ot.Buffer.concat,Rs=Object.getOwnPropertyDescriptor(Ot.Buffer,"concat"),$r=t=>t,xs=Rs?.writable===!0||Rs?.set!==void 0?t=>{Ot.Buffer.concat=t?$r:Os}:t=>{},Ts=Symbol("_superWrite"),Ns=class extends Error{code;errno;constructor(t,u){super("zlib: "+t.message,{cause:t}),this.code=t.code,this.errno=t.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+t.message,Error.captureStackTrace(this,u??this.constructor)}get name(){return"ZlibError"}},Ds=Symbol("flushFlag"),Ls=class extends Er{#y=!1;#v=!1;#_;#b;#w;#E;#S;get sawError(){return this.#y}get handle(){return this.#E}get flushFlag(){return this.#_}constructor(t,u){if(!t||typeof t!="object")throw new TypeError("invalid options for ZlibBase constructor");if(super(t),this.#_=t.flush??0,this.#b=t.finishFlush??0,this.#w=t.fullFlushFlag??0,typeof Pt[u]!="function")throw new TypeError("Compression method not supported: "+u);try{this.#E=new Pt[u](t)}catch(t){throw new Ns(t,this.constructor)}this.#S=t=>{this.#y||(this.#y=!0,this.close(),this.emit("error",t))},this.#E?.on("error",(t=>this.#S(new Ns(t)))),this.once("end",(()=>this.close))}close(){this.#E&&(this.#E.close(),this.#E=void 0,this.emit("close"))}reset(){if(!this.#y)return $t(this.#E,"zlib binding closed"),this.#E.reset?.()}flush(t){this.ended||(typeof t!="number"&&(t=this.#w),this.write(Object.assign(Ot.Buffer.alloc(0),{[Ds]:t})))}end(t,u,p){return typeof t=="function"&&(p=t,u=void 0,t=void 0),typeof u=="function"&&(p=u,u=void 0),t&&(u?this.write(t,u):this.write(t)),this.flush(this.#b),this.#v=!0,super.end(p)}get ended(){return this.#v}[Ts](t){return super.write(t)}write(t,u,p){if(typeof u=="function"&&(p=u,u="utf8"),typeof t=="string"&&(t=Ot.Buffer.from(t,u)),this.#y)return;$t(this.#E,"zlib binding closed");let m=this.#E._handle,g=m.close;m.close=()=>{};let y=this.#E.close;this.#E.close=()=>{},xs(!0);let v;try{let u=typeof t[Ds]=="number"?t[Ds]:this.#_;v=this.#E._processChunk(t,u),xs(!1)}catch(t){xs(!1),this.#S(new Ns(t,this.write))}finally{this.#E&&(this.#E._handle=m,m.close=g,this.#E.close=y,this.#E.removeAllListeners("error"))}this.#E&&this.#E.on("error",(t=>this.#S(new Ns(t,this.write))));let b;if(v)if(Array.isArray(v)&&v.length>0){let t=v[0];b=this[Ts](Ot.Buffer.from(t));for(let t=1;t<v.length;t++)b=this[Ts](v[t])}else b=this[Ts](Ot.Buffer.from(v));return p&&p(),b}},js=class extends Ls{#y;#v;constructor(t,u){t=t||{},t.flush=t.flush||$s.Z_NO_FLUSH,t.finishFlush=t.finishFlush||$s.Z_FINISH,t.fullFlushFlag=$s.Z_FULL_FLUSH,super(t,u),this.#y=t.level,this.#v=t.strategy}params(t,u){if(!this.sawError){if(!this.handle)throw new Error("cannot switch params when binding is closed");if(!this.handle.params)throw new Error("not supported in this implementation");if(this.#y!==t||this.#v!==u){this.flush($s.Z_SYNC_FLUSH),$t(this.handle,"zlib binding closed");let p=this.handle.flush;this.handle.flush=(t,u)=>{typeof t=="function"&&(u=t,t=this.flushFlag),this.flush(t),u?.()};try{this.handle.params(t,u)}finally{this.handle.flush=p}this.handle&&(this.#y=t,this.#v=u)}}}};var Ms=class extends js{#y;constructor(t){super(t,"Gzip"),this.#y=t&&!!t.portable}[Ts](t){return this.#y?(this.#y=!1,t[9]=255,super[Ts](t)):super[Ts](t)}};var Hs=class extends js{constructor(t){super(t,"Unzip")}},Gs=class extends Ls{constructor(t,u){t=t||{},t.flush=t.flush||$s.BROTLI_OPERATION_PROCESS,t.finishFlush=t.finishFlush||$s.BROTLI_OPERATION_FINISH,t.fullFlushFlag=$s.BROTLI_OPERATION_FLUSH,super(t,u)}},Ws=class extends Gs{constructor(t){super(t,"BrotliCompress")}},qs=class extends Gs{constructor(t){super(t,"BrotliDecompress")}},Ks=class extends Ls{constructor(t,u){t=t||{},t.flush=t.flush||$s.ZSTD_e_continue,t.finishFlush=t.finishFlush||$s.ZSTD_e_end,t.fullFlushFlag=$s.ZSTD_e_flush,super(t,u)}},Ys=class extends Ks{constructor(t){super(t,"ZstdCompress")}},Js=class extends Ks{constructor(t){super(t,"ZstdDecompress")}};var Bs=(t,u)=>{if(Number.isSafeInteger(t))t<0?jr(t,u):qr(t,u);else throw Error("cannot encode number outside of javascript safe integer range");return u},qr=(t,u)=>{u[0]=128;for(var p=u.length;p>1;p--)u[p-1]=t&255,t=Math.floor(t/256)},jr=(t,u)=>{u[0]=255;var p=!1;t=t*-1;for(var m=u.length;m>1;m--){var g=t&255;t=Math.floor(t/256),p?u[m-1]=zs(g):g===0?u[m-1]=0:(p=!0,u[m-1]=Us(g))}},Ps=t=>{let u=t[0],p=u===128?Jr(t.subarray(1,t.length)):u===255?Qr(t):null;if(p===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(p))throw Error("parsed number outside of javascript safe integer range");return p},Qr=t=>{for(var u=t.length,p=0,m=!1,g=u-1;g>-1;g--){var y=Number(t[g]),v;m?v=zs(y):y===0?v=y:(m=!0,v=Us(y)),v!==0&&(p-=v*Math.pow(256,u-g-1))}return p},Jr=t=>{for(var u=t.length,p=0,m=u-1;m>-1;m--){var g=Number(t[m]);g!==0&&(p+=g*Math.pow(256,u-m-1))}return p},zs=t=>(255^t)&255,Us=t=>(255^t)+1&255;var Zs={};Ar(Zs,{code:()=>Qs,isCode:()=>oe,isName:()=>en,name:()=>Xs});var oe=t=>Xs.has(t),en=t=>Qs.has(t),Xs=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]),Qs=new Map(Array.from(Xs).map((t=>[t[1],t[0]])));var ei=class{cksumValid=!1;needPax=!1;nullBlock=!1;block;path;mode;uid;gid;size;cksum;#y="Unsupported";linkpath;uname;gname;devmaj=0;devmin=0;atime;ctime;mtime;charset;comment;constructor(t,u=0,p,m){Buffer.isBuffer(t)?this.decode(t,u||0,p,m):t&&this.#v(t)}decode(t,u,p,m){if(u||(u=0),!t||!(t.length>=u+512))throw new Error("need 512 bytes for header");this.path=p?.path??Tt(t,u,100),this.mode=p?.mode??m?.mode??at(t,u+100,8),this.uid=p?.uid??m?.uid??at(t,u+108,8),this.gid=p?.gid??m?.gid??at(t,u+116,8),this.size=p?.size??m?.size??at(t,u+124,12),this.mtime=p?.mtime??m?.mtime??Bi(t,u+136,12),this.cksum=at(t,u+148,12),m&&this.#v(m,!0),p&&this.#v(p);let g=Tt(t,u+156,1);if(oe(g)&&(this.#y=g||"0"),this.#y==="0"&&this.path.slice(-1)==="/"&&(this.#y="5"),this.#y==="5"&&(this.size=0),this.linkpath=Tt(t,u+157,100),t.subarray(u+257,u+265).toString()==="ustar\x0000")if(this.uname=p?.uname??m?.uname??Tt(t,u+265,32),this.gname=p?.gname??m?.gname??Tt(t,u+297,32),this.devmaj=p?.devmaj??m?.devmaj??at(t,u+329,8)??0,this.devmin=p?.devmin??m?.devmin??at(t,u+337,8)??0,t[u+475]!==0){let p=Tt(t,u+345,155);this.path=p+"/"+this.path}else{let g=Tt(t,u+345,130);g&&(this.path=g+"/"+this.path),this.atime=p?.atime??m?.atime??Bi(t,u+476,12),this.ctime=p?.ctime??m?.ctime??Bi(t,u+488,12)}let y=256;for(let p=u;p<u+148;p++)y+=t[p];for(let p=u+156;p<u+512;p++)y+=t[p];this.cksumValid=y===this.cksum,this.cksum===void 0&&y===256&&(this.nullBlock=!0)}#v(t,u=!1){Object.assign(this,Object.fromEntries(Object.entries(t).filter((([t,p])=>!(p==null||t==="path"&&u||t==="linkpath"&&u||t==="global")))))}encode(t,u=0){if(t||(t=this.block=Buffer.alloc(512)),this.#y==="Unsupported"&&(this.#y="0"),!(t.length>=u+512))throw new Error("need 512 bytes for header");let p=this.ctime||this.atime?130:155,m=sn(this.path||"",p),g=m[0],y=m[1];this.needPax=!!m[2],this.needPax=xt(t,u,100,g)||this.needPax,this.needPax=lt(t,u+100,8,this.mode)||this.needPax,this.needPax=lt(t,u+108,8,this.uid)||this.needPax,this.needPax=lt(t,u+116,8,this.gid)||this.needPax,this.needPax=lt(t,u+124,12,this.size)||this.needPax,this.needPax=Pi(t,u+136,12,this.mtime)||this.needPax,t[u+156]=this.#y.charCodeAt(0),this.needPax=xt(t,u+157,100,this.linkpath)||this.needPax,t.write("ustar\x0000",u+257,8),this.needPax=xt(t,u+265,32,this.uname)||this.needPax,this.needPax=xt(t,u+297,32,this.gname)||this.needPax,this.needPax=lt(t,u+329,8,this.devmaj)||this.needPax,this.needPax=lt(t,u+337,8,this.devmin)||this.needPax,this.needPax=xt(t,u+345,p,y)||this.needPax,t[u+475]!==0?this.needPax=xt(t,u+345,155,y)||this.needPax:(this.needPax=xt(t,u+345,130,y)||this.needPax,this.needPax=Pi(t,u+476,12,this.atime)||this.needPax,this.needPax=Pi(t,u+488,12,this.ctime)||this.needPax);let v=256;for(let p=u;p<u+148;p++)v+=t[p];for(let p=u+156;p<u+512;p++)v+=t[p];return this.cksum=v,lt(t,u+148,8,this.cksum),this.cksumValid=!0,this.needPax}get type(){return this.#y==="Unsupported"?this.#y:Xs.get(this.#y)}get typeKey(){return this.#y}set type(t){let u=String(Qs.get(t));if(oe(u)||u==="Unsupported")this.#y=u;else if(oe(t))this.#y=t;else throw new TypeError("invalid entry type: "+t)}},sn=(t,p)=>{let m=t,g="",y,v=u.posix.parse(t).root||".";if(Buffer.byteLength(m)<100)y=[m,g,!1];else{g=u.posix.dirname(m),m=u.posix.basename(m);do{Buffer.byteLength(m)<=100&&Buffer.byteLength(g)<=p?y=[m,g,!1]:Buffer.byteLength(m)>100&&Buffer.byteLength(g)<=p?y=[m.slice(0,99),g,!0]:(m=u.posix.join(u.posix.basename(g),m),g=u.posix.dirname(g))}while(g!==v&&y===void 0);y||(y=[t.slice(0,99),"",!0])}return y},Tt=(t,u,p)=>t.subarray(u,u+p).toString("utf8").replace(/\0.*/,""),Bi=(t,u,p)=>rn(at(t,u,p)),rn=t=>t===void 0?void 0:new Date(t*1e3),at=(t,u,p)=>Number(t[u])&128?Ps(t.subarray(u,u+p)):on(t,u,p),nn=t=>isNaN(t)?void 0:t,on=(t,u,p)=>nn(parseInt(t.subarray(u,u+p).toString("utf8").replace(/\0.*$/,"").trim(),8)),ti={12:8589934591,8:2097151},lt=(t,u,p,m)=>m===void 0?!1:m>ti[p]||m<0?(Bs(m,t.subarray(u,u+p)),!0):(an(t,u,p,m),!1),an=(t,u,p,m)=>t.write(ln(m,p),u,p,"ascii"),ln=(t,u)=>cn(Math.floor(t).toString(8),u),cn=(t,u)=>(t.length===u-1?t:new Array(u-t.length-1).join("0")+t+" ")+"\0",Pi=(t,u,p,m)=>m===void 0?!1:lt(t,u,p,m.getTime()/1e3),ri=new Array(156).join("\0"),xt=(t,u,p,m)=>m===void 0?!1:(t.write(m+ri,u,p,"utf8"),m.length!==Buffer.byteLength(m)||m.length>p);var si=class s{atime;mtime;ctime;charset;comment;gid;uid;gname;uname;linkpath;dev;ino;nlink;path;size;mode;global;constructor(t,u=!1){this.atime=t.atime,this.charset=t.charset,this.comment=t.comment,this.ctime=t.ctime,this.dev=t.dev,this.gid=t.gid,this.global=u,this.gname=t.gname,this.ino=t.ino,this.linkpath=t.linkpath,this.mtime=t.mtime,this.nlink=t.nlink,this.path=t.path,this.size=t.size,this.uid=t.uid,this.uname=t.uname}encode(){let t=this.encodeBody();if(t==="")return Buffer.allocUnsafe(0);let p=Buffer.byteLength(t),m=512*Math.ceil(1+p/512),g=Buffer.allocUnsafe(m);for(let t=0;t<512;t++)g[t]=0;new ei({path:("PaxHeader/"+(0,u.basename)(this.path??"")).slice(0,99),mode:this.mode||420,uid:this.uid,gid:this.gid,size:p,mtime:this.mtime,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime,ctime:this.ctime}).encode(g),g.write(t,512,p,"utf8");for(let t=p+512;t<g.length;t++)g[t]=0;return g}encodeBody(){return this.encodeField("path")+this.encodeField("ctime")+this.encodeField("atime")+this.encodeField("dev")+this.encodeField("ino")+this.encodeField("nlink")+this.encodeField("charset")+this.encodeField("comment")+this.encodeField("gid")+this.encodeField("gname")+this.encodeField("linkpath")+this.encodeField("mtime")+this.encodeField("size")+this.encodeField("uid")+this.encodeField("uname")}encodeField(t){if(this[t]===void 0)return"";let u=this[t],p=u instanceof Date?u.getTime()/1e3:u,m=" "+(t==="dev"||t==="ino"||t==="nlink"?"SCHILY.":"")+t+"="+p+`\n`,g=Buffer.byteLength(m),y=Math.floor(Math.log(g)/Math.log(10))+1;return g+y>=Math.pow(10,y)&&(y+=1),y+g+m}static parse(t,u,p=!1){return new s(un(mn(t),u),p)}},un=(t,u)=>u?Object.assign({},u,t):t,mn=t=>t.replace(/\n$/,"").split(`\n`).reduce(pn,Object.create(null)),pn=(t,u)=>{let p=parseInt(u,10);if(p!==Buffer.byteLength(u)+1)return t;u=u.slice((p+" ").length);let m=u.split("="),g=m.shift();if(!g)return t;let y=g.replace(/^SCHILY\.(dev|ino|nlink)/,"$1"),v=m.join("=");return t[y]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(y)?new Date(Number(v)*1e3):/^[0-9]+$/.test(v)?+v:v,t};var ii=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,ni=ii!=="win32"?t=>t:t=>t&&t.replace(/\\/g,"/");var oi=class extends Er{extended;globalExtended;header;startBlockSize;blockRemain;remain;type;meta=!1;ignore=!1;path;mode;uid;gid;uname;gname;size=0;mtime;atime;ctime;linkpath;dev;ino;nlink;invalid=!1;absolute;unsupported=!1;constructor(t,u,p){switch(super({}),this.pause(),this.extended=u,this.globalExtended=p,this.header=t,this.remain=t.size??0,this.startBlockSize=512*Math.ceil(this.remain/512),this.blockRemain=this.startBlockSize,this.type=t.type,this.type){case"File":case"OldFile":case"Link":case"SymbolicLink":case"CharacterDevice":case"BlockDevice":case"Directory":case"FIFO":case"ContiguousFile":case"GNUDumpDir":break;case"NextFileHasLongLinkpath":case"NextFileHasLongPath":case"OldGnuLongPath":case"GlobalExtendedHeader":case"ExtendedHeader":case"OldExtendedHeader":this.meta=!0;break;default:this.ignore=!0}if(!t.path)throw new Error("no path provided for tar.ReadEntry");this.path=ni(t.path),this.mode=t.mode,this.mode&&(this.mode=this.mode&4095),this.uid=t.uid,this.gid=t.gid,this.uname=t.uname,this.gname=t.gname,this.size=this.remain,this.mtime=t.mtime,this.atime=t.atime,this.ctime=t.ctime,this.linkpath=t.linkpath?ni(t.linkpath):void 0,this.uname=t.uname,this.gname=t.gname,u&&this.#y(u),p&&this.#y(p,!0)}write(t){let u=t.length;if(u>this.blockRemain)throw new Error("writing more to entry than is appropriate");let p=this.remain,m=this.blockRemain;return this.remain=Math.max(0,p-u),this.blockRemain=Math.max(0,m-u),this.ignore?!0:p>=u?super.write(t):super.write(t.subarray(0,p))}#y(t,u=!1){t.path&&(t.path=ni(t.path)),t.linkpath&&(t.linkpath=ni(t.linkpath)),Object.assign(this,Object.fromEntries(Object.entries(t).filter((([t,p])=>!(p==null||t==="path"&&u)))))}};var Lt=(t,u,p,m={})=>{t.file&&(m.file=t.file),t.cwd&&(m.cwd=t.cwd),m.code=p instanceof Error&&p.code||u,m.tarCode=u,!t.strict&&m.recoverable!==!1?(p instanceof Error&&(m=Object.assign(p,m),p=p.message),t.emit("warn",u,p,m)):p instanceof Error?t.emit("error",Object.assign(p,m)):t.emit("error",Object.assign(new Error(`${u}: ${p}`),m))};var ai=1024*1024,ci=Buffer.from([31,139]),li=Buffer.from([40,181,47,253]),ui=Math.max(ci.length,li.length),hi=Symbol("state"),fi=Symbol("writeEntry"),pi=Symbol("readEntry"),mi=Symbol("nextEntry"),gi=Symbol("processEntry"),yi=Symbol("extendedHeader"),vi=Symbol("globalExtendedHeader"),_i=Symbol("meta"),bi=Symbol("emitMeta"),wi=Symbol("buffer"),Ei=Symbol("queue"),Si=Symbol("ended"),Oi=Symbol("emittedEnd"),Ri=Symbol("emit"),Ai=Symbol("unzip"),xi=Symbol("consumeChunk"),Ti=Symbol("consumeChunkSub"),ki=Symbol("consumeBody"),Ci=Symbol("consumeMeta"),Ii=Symbol("consumeHeader"),Ni=Symbol("consuming"),Di=Symbol("bufferConcat"),Li=Symbol("maybeEnd"),ji=Symbol("writing"),Mi=Symbol("aborted"),Fi=Symbol("onDone"),Ui=Symbol("sawValidEntry"),Hi=Symbol("sawNullBlock"),Vi=Symbol("sawEOF"),zi=Symbol("closeStream"),Rn=()=>!0,Gi=class extends bt.EventEmitter{file;strict;maxMetaEntrySize;filter;brotli;zstd;writable=!0;readable=!1;[Ei]=[];[wi];[pi];[fi];[hi]="begin";[_i]="";[yi];[vi];[Si]=!1;[Ai];[Mi]=!1;[Ui];[Hi]=!1;[Vi]=!1;[ji]=!1;[Ni]=!1;[Oi]=!1;constructor(t={}){super(),this.file=t.file||"",this.on(Fi,(()=>{(this[hi]==="begin"||this[Ui]===!1)&&this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")})),t.ondone?this.on(Fi,t.ondone):this.on(Fi,(()=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")})),this.strict=!!t.strict,this.maxMetaEntrySize=t.maxMetaEntrySize||ai,this.filter=typeof t.filter=="function"?t.filter:Rn;let u=t.file&&(t.file.endsWith(".tar.br")||t.file.endsWith(".tbr"));this.brotli=!(t.gzip||t.zstd)&&t.brotli!==void 0?t.brotli:u?void 0:!1;let p=t.file&&(t.file.endsWith(".tar.zst")||t.file.endsWith(".tzst"));this.zstd=!(t.gzip||t.brotli)&&t.zstd!==void 0?t.zstd:p?!0:void 0,this.on("end",(()=>this[zi]())),typeof t.onwarn=="function"&&this.on("warn",t.onwarn),typeof t.onReadEntry=="function"&&this.on("entry",t.onReadEntry)}warn(t,u,p={}){Lt(this,t,u,p)}[Ii](t,u){this[Ui]===void 0&&(this[Ui]=!1);let p;try{p=new ei(t,u,this[yi],this[vi])}catch(t){return this.warn("TAR_ENTRY_INVALID",t)}if(p.nullBlock)this[Hi]?(this[Vi]=!0,this[hi]==="begin"&&(this[hi]="header"),this[Ri]("eof")):(this[Hi]=!0,this[Ri]("nullBlock"));else if(this[Hi]=!1,!p.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:p});else if(!p.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:p});else{let t=p.type;if(/^(Symbolic)?Link$/.test(t)&&!p.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:p});else if(!/^(Symbolic)?Link$/.test(t)&&!/^(Global)?ExtendedHeader$/.test(t)&&p.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:p});else{let t=this[fi]=new oi(p,this[yi],this[vi]);if(!this[Ui])if(t.remain){let o=()=>{t.invalid||(this[Ui]=!0)};t.on("end",o)}else this[Ui]=!0;t.meta?t.size>this.maxMetaEntrySize?(t.ignore=!0,this[Ri]("ignoredEntry",t),this[hi]="ignore",t.resume()):t.size>0&&(this[_i]="",t.on("data",(t=>this[_i]+=t)),this[hi]="meta"):(this[yi]=void 0,t.ignore=t.ignore||!this.filter(t.path,t),t.ignore?(this[Ri]("ignoredEntry",t),this[hi]=t.remain?"ignore":"header",t.resume()):(t.remain?this[hi]="body":(this[hi]="header",t.end()),this[pi]?this[Ei].push(t):(this[Ei].push(t),this[mi]())))}}}[zi](){queueMicrotask((()=>this.emit("close")))}[gi](t){let u=!0;if(!t)this[pi]=void 0,u=!1;else if(Array.isArray(t)){let[u,...p]=t;this.emit(u,...p)}else this[pi]=t,this.emit("entry",t),t.emittedEnd||(t.on("end",(()=>this[mi]())),u=!1);return u}[mi](){do{}while(this[gi](this[Ei].shift()));if(!this[Ei].length){let t=this[pi];!t||t.flowing||t.size===t.remain?this[ji]||this.emit("drain"):t.once("drain",(()=>this.emit("drain")))}}[ki](t,u){let p=this[fi];if(!p)throw new Error("attempt to consume body without entry??");let m=p.blockRemain??0,g=m>=t.length&&u===0?t:t.subarray(u,u+m);return p.write(g),p.blockRemain||(this[hi]="header",this[fi]=void 0,p.end()),g.length}[Ci](t,u){let p=this[fi],m=this[ki](t,u);return!this[fi]&&p&&this[bi](p),m}[Ri](t,u,p){!this[Ei].length&&!this[pi]?this.emit(t,u,p):this[Ei].push([t,u,p])}[bi](t){switch(this[Ri]("meta",this[_i]),t.type){case"ExtendedHeader":case"OldExtendedHeader":this[yi]=si.parse(this[_i],this[yi],!1);break;case"GlobalExtendedHeader":this[vi]=si.parse(this[_i],this[vi],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":{let t=this[yi]??Object.create(null);this[yi]=t,t.path=this[_i].replace(/\0.*/,"");break}case"NextFileHasLongLinkpath":{let t=this[yi]||Object.create(null);this[yi]=t,t.linkpath=this[_i].replace(/\0.*/,"");break}default:throw new Error("unknown meta: "+t.type)}}abort(t){this[Mi]=!0,this.emit("abort",t),this.warn("TAR_ABORT",t,{recoverable:!1})}write(t,u,p){if(typeof u=="function"&&(p=u,u=void 0),typeof t=="string"&&(t=Buffer.from(t,typeof u=="string"?u:"utf8")),this[Mi])return p?.(),!1;if((this[Ai]===void 0||this.brotli===void 0&&this[Ai]===!1)&&t){if(this[wi]&&(t=Buffer.concat([this[wi],t]),this[wi]=void 0),t.length<ui)return this[wi]=t,p?.(),!0;for(let u=0;this[Ai]===void 0&&u<ci.length;u++)t[u]!==ci[u]&&(this[Ai]=!1);let u=!1;if(this[Ai]===!1&&this.zstd!==!1){u=!0;for(let p=0;p<li.length;p++)if(t[p]!==li[p]){u=!1;break}}let m=this.brotli===void 0&&!u;if(this[Ai]===!1&&m)if(t.length<512)if(this[Si])this.brotli=!0;else return this[wi]=t,p?.(),!0;else try{new ei(t.subarray(0,512)),this.brotli=!1}catch{this.brotli=!0}if(this[Ai]===void 0||this[Ai]===!1&&(this.brotli||u)){let m=this[Si];this[Si]=!1,this[Ai]=this[Ai]===void 0?new Hs({}):u?new Js({}):new qs({}),this[Ai].on("data",(t=>this[xi](t))),this[Ai].on("error",(t=>this.abort(t))),this[Ai].on("end",(()=>{this[Si]=!0,this[xi]()})),this[ji]=!0;let g=!!this[Ai][m?"end":"write"](t);return this[ji]=!1,p?.(),g}}this[ji]=!0,this[Ai]?this[Ai].write(t):this[xi](t),this[ji]=!1;let m=this[Ei].length?!1:this[pi]?this[pi].flowing:!0;return!m&&!this[Ei].length&&this[pi]?.once("drain",(()=>this.emit("drain"))),p?.(),m}[Di](t){t&&!this[Mi]&&(this[wi]=this[wi]?Buffer.concat([this[wi],t]):t)}[Li](){if(this[Si]&&!this[Oi]&&!this[Mi]&&!this[Ni]){this[Oi]=!0;let t=this[fi];if(t&&t.blockRemain){let u=this[wi]?this[wi].length:0;this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${t.blockRemain} more bytes, only ${u} available)`,{entry:t}),this[wi]&&t.write(this[wi]),t.end()}this[Ri](Fi)}}[xi](t){if(this[Ni]&&t)this[Di](t);else if(!t&&!this[wi])this[Li]();else if(t){if(this[Ni]=!0,this[wi]){this[Di](t);let u=this[wi];this[wi]=void 0,this[Ti](u)}else this[Ti](t);for(;this[wi]&&this[wi]?.length>=512&&!this[Mi]&&!this[Vi];){let t=this[wi];this[wi]=void 0,this[Ti](t)}this[Ni]=!1}(!this[wi]||this[Si])&&this[Li]()}[Ti](t){let u=0,p=t.length;for(;u+512<=p&&!this[Mi]&&!this[Vi];)switch(this[hi]){case"begin":case"header":this[Ii](t,u),u+=512;break;case"ignore":case"body":u+=this[ki](t,u);break;case"meta":u+=this[Ci](t,u);break;default:throw new Error("invalid state: "+this[hi])}u<p&&(this[wi]?this[wi]=Buffer.concat([t.subarray(u),this[wi]]):this[wi]=t.subarray(u))}end(t,u,p){return typeof t=="function"&&(p=t,u=void 0,t=void 0),typeof u=="function"&&(p=u,u=void 0),typeof t=="string"&&(t=Buffer.from(t,u)),p&&this.once("finish",p),this[Mi]||(this[Ai]?(t&&this[Ai].write(t),this[Ai].end()):(this[Si]=!0,(this.brotli===void 0||this.zstd===void 0)&&(t=t||Buffer.alloc(0)),t&&this.write(t),this[Li]())),this}};var mt=t=>{let u=t.length-1,p=-1;for(;u>-1&&t.charAt(u)==="/";)p=u,u--;return p===-1?t:t.slice(0,p)};var _n=t=>{let u=t.onReadEntry;t.onReadEntry=u?t=>{u(t),t.resume()}:t=>t.resume()},Yi=(t,u)=>{let p=new Map(u.map((t=>[mt(t),!0]))),m=t.filter,r=(t,u="")=>{let m=u||(0,St.parse)(t).root||".",g;if(t===m)g=!1;else{let u=p.get(t);u!==void 0?g=u:g=r((0,St.dirname)(t),m)}return p.set(t,g),g};t.filter=m?(t,u)=>m(t,u)&&r(mt(t)):t=>r(mt(t))},On=u=>{let p=new Gi(u),m=u.file,g;try{g=t.openSync(m,"r");let y=t.fstatSync(g),v=u.maxReadSize||16*1024*1024;if(y.size<v){let u=Buffer.allocUnsafe(y.size),m=t.readSync(g,u,0,y.size,0);p.end(m===u.byteLength?u:u.subarray(0,m))}else{let u=0,m=Buffer.allocUnsafe(v);for(;u<y.size;){let y=t.readSync(g,m,0,v,u);if(y===0)break;u+=y,p.write(m.subarray(0,y))}p.end()}}finally{if(typeof g=="number")try{t.closeSync(g)}catch{}}},Tn=(u,p)=>{let m=new Gi(u),g=u.maxReadSize||16*1024*1024,y=u.file;return new Promise(((u,p)=>{m.on("error",p),m.on("end",u),t.stat(y,((t,u)=>{if(t)p(t);else{let t=new vs(y,{readSize:g,size:u.size});t.on("error",p),t.pipe(m)}}))}))},Wi=K(On,Tn,(t=>new Gi(t)),(t=>new Gi(t)),((t,u)=>{u?.length&&Yi(t,u),t.noResume||_n(t)}));var Ki=(t,u,p)=>(t&=4095,p&&(t=(t|384)&-19),u&&(t&256&&(t|=64),t&32&&(t|=8),t&4&&(t|=1)),t);var{isAbsolute:qi,parse:Ji}=u.win32,ce=t=>{let u="",p=Ji(t);for(;qi(t)||p.root;){let m=t.charAt(0)==="/"&&t.slice(0,4)!=="//?/"?"/":p.root;t=t.slice(m.length),u+=m,p=Ji(t)}return[u,t]};var Zi=["|","<",">","?",":"],Xi=Zi.map((t=>String.fromCharCode(61440+t.charCodeAt(0)))),Qi=new Map(Zi.map(((t,u)=>[t,Xi[u]]))),tn=new Map(Xi.map(((t,u)=>[t,Zi[u]]))),$i=t=>Zi.reduce(((t,u)=>t.split(u).join(Qi.get(u))),t),Vs=t=>Xi.reduce(((t,u)=>t.split(u).join(tn.get(u))),t);var tr=(t,u)=>u?(t=ni(t).replace(/^\.(\/|$)/,""),mt(u)+"/"+t):ni(t),hn=16*1024*1024,dn=Symbol("process"),fn=Symbol("file"),gn=Symbol("directory"),yn=Symbol("symlink"),bn=Symbol("hardlink"),wn=Symbol("header"),En=Symbol("read"),Sn=Symbol("lstat"),An=Symbol("onlstat"),xn=Symbol("onread"),Nn=Symbol("onreadlink"),Dn=Symbol("openfile"),Ln=Symbol("onopenfile"),Un=Symbol("close"),Hn=Symbol("mode"),Vn=Symbol("awaitDrain"),zn=Symbol("ondrain"),Gn=Symbol("prefix"),Wn=class extends Er{path;portable;myuid=process.getuid&&process.getuid()||0;myuser=process.env.USER||"";maxReadSize;linkCache;statCache;preservePaths;cwd;strict;mtime;noPax;noMtime;prefix;fd;blockLen=0;blockRemain=0;buf;pos=0;remain=0;length=0;offset=0;win32;absolute;header;type;linkpath;stat;onWriteEntry;#y=!1;constructor(t,u={}){let p=re(u);super(),this.path=ni(t),this.portable=!!p.portable,this.maxReadSize=p.maxReadSize||hn,this.linkCache=p.linkCache||new Map,this.statCache=p.statCache||new Map,this.preservePaths=!!p.preservePaths,this.cwd=ni(p.cwd||process.cwd()),this.strict=!!p.strict,this.noPax=!!p.noPax,this.noMtime=!!p.noMtime,this.mtime=p.mtime,this.prefix=p.prefix?ni(p.prefix):void 0,this.onWriteEntry=p.onWriteEntry,typeof p.onwarn=="function"&&this.on("warn",p.onwarn);let m=!1;if(!this.preservePaths){let[t,u]=ce(this.path);t&&typeof u=="string"&&(this.path=u,m=t)}this.win32=!!p.win32||process.platform==="win32",this.win32&&(this.path=Vs(this.path.replace(/\\/g,"/")),t=t.replace(/\\/g,"/")),this.absolute=ni(p.absolute||St.resolve(this.cwd,t)),this.path===""&&(this.path="./"),m&&this.warn("TAR_ENTRY_INFO",`stripping ${m} from absolute path`,{entry:this,path:m+this.path});let g=this.statCache.get(this.absolute);g?this[An](g):this[Sn]()}warn(t,u,p={}){return Lt(this,t,u,p)}emit(t,...u){return t==="error"&&(this.#y=!0),super.emit(t,...u)}[Sn](){wt.lstat(this.absolute,((t,u)=>{if(t)return this.emit("error",t);this[An](u)}))}[An](t){this.statCache.set(this.absolute,t),this.stat=t,t.isFile()||(t.size=0),this.type=In(t),this.emit("stat",t),this[dn]()}[dn](){switch(this.type){case"File":return this[fn]();case"Directory":return this[gn]();case"SymbolicLink":return this[yn]();default:return this.end()}}[Hn](t){return Ki(t,this.type==="Directory",this.portable)}[Gn](t){return tr(t,this.prefix)}[wn](){if(!this.stat)throw new Error("cannot write header before stat");this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.onWriteEntry?.(this),this.header=new ei({path:this[Gn](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Gn](this.linkpath):this.linkpath,mode:this[Hn](this.stat.mode),uid:this.portable?void 0:this.stat.uid,gid:this.portable?void 0:this.stat.gid,size:this.stat.size,mtime:this.noMtime?void 0:this.mtime||this.stat.mtime,type:this.type==="Unsupported"?void 0:this.type,uname:this.portable?void 0:this.stat.uid===this.myuid?this.myuser:"",atime:this.portable?void 0:this.stat.atime,ctime:this.portable?void 0:this.stat.ctime}),this.header.encode()&&!this.noPax&&super.write(new si({atime:this.portable?void 0:this.header.atime,ctime:this.portable?void 0:this.header.ctime,gid:this.portable?void 0:this.header.gid,mtime:this.noMtime?void 0:this.mtime||this.header.mtime,path:this[Gn](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Gn](this.linkpath):this.linkpath,size:this.header.size,uid:this.portable?void 0:this.header.uid,uname:this.portable?void 0:this.header.uname,dev:this.portable?void 0:this.stat.dev,ino:this.portable?void 0:this.stat.ino,nlink:this.portable?void 0:this.stat.nlink}).encode());let t=this.header?.block;if(!t)throw new Error("failed to encode header");super.write(t)}[gn](){if(!this.stat)throw new Error("cannot create directory entry without stat");this.path.slice(-1)!=="/"&&(this.path+="/"),this.stat.size=0,this[wn](),this.end()}[yn](){wt.readlink(this.absolute,((t,u)=>{if(t)return this.emit("error",t);this[Nn](u)}))}[Nn](t){this.linkpath=ni(t),this[wn](),this.end()}[bn](t){if(!this.stat)throw new Error("cannot create link entry without stat");this.type="Link",this.linkpath=ni(St.relative(this.cwd,t)),this.stat.size=0,this[wn](),this.end()}[fn](){if(!this.stat)throw new Error("cannot create file entry without stat");if(this.stat.nlink>1){let t=`${this.stat.dev}:${this.stat.ino}`,u=this.linkCache.get(t);if(u?.indexOf(this.cwd)===0)return this[bn](u);this.linkCache.set(t,this.absolute)}if(this[wn](),this.stat.size===0)return this.end();this[Dn]()}[Dn](){wt.open(this.absolute,"r",((t,u)=>{if(t)return this.emit("error",t);this[Ln](u)}))}[Ln](t){if(this.fd=t,this.#y)return this[Un]();if(!this.stat)throw new Error("should stat before calling onopenfile");this.blockLen=512*Math.ceil(this.stat.size/512),this.blockRemain=this.blockLen;let u=Math.min(this.blockLen,this.maxReadSize);this.buf=Buffer.allocUnsafe(u),this.offset=0,this.pos=0,this.remain=this.stat.size,this.length=this.buf.length,this[En]()}[En](){let{fd:t,buf:u,offset:p,length:m,pos:g}=this;if(t===void 0||u===void 0)throw new Error("cannot read file without first opening");wt.read(t,u,p,m,g,((t,u)=>{if(t)return this[Un]((()=>this.emit("error",t)));this[xn](u)}))}[Un](t=()=>{}){this.fd!==void 0&&wt.close(this.fd,t)}[xn](t){if(t<=0&&this.remain>0){let t=Object.assign(new Error("encountered unexpected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[Un]((()=>this.emit("error",t)))}if(t>this.remain){let t=Object.assign(new Error("did not encounter expected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[Un]((()=>this.emit("error",t)))}if(!this.buf)throw new Error("should have created buffer prior to reading");if(t===this.remain)for(let u=t;u<this.length&&t<this.blockRemain;u++)this.buf[u+this.offset]=0,t++,this.remain++;let u=this.offset===0&&t===this.buf.length?this.buf:this.buf.subarray(this.offset,this.offset+t);this.write(u)?this[zn]():this[Vn]((()=>this[zn]()))}[Vn](t){this.once("drain",t)}write(t,u,p){if(typeof u=="function"&&(p=u,u=void 0),typeof t=="string"&&(t=Buffer.from(t,typeof u=="string"?u:"utf8")),this.blockRemain<t.length){let t=Object.assign(new Error("writing more data than expected"),{path:this.absolute});return this.emit("error",t)}return this.remain-=t.length,this.blockRemain-=t.length,this.pos+=t.length,this.offset+=t.length,super.write(t,null,p)}[zn](){if(!this.remain)return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),this[Un]((t=>t?this.emit("error",t):this.end()));if(!this.buf)throw new Error("buffer lost somehow in ONDRAIN");this.offset>=this.length&&(this.buf=Buffer.allocUnsafe(Math.min(this.blockRemain,this.buf.length)),this.offset=0),this.length=this.buf.length-this.offset,this[En]()}},qn=class extends Wn{sync=!0;[Sn](){this[An](wt.lstatSync(this.absolute))}[yn](){this[Nn](wt.readlinkSync(this.absolute))}[Dn](){this[Ln](wt.openSync(this.absolute,"r"))}[En](){let t=!0;try{let{fd:u,buf:p,offset:m,length:g,pos:y}=this;if(u===void 0||p===void 0)throw new Error("fd and buf must be set in READ method");let v=wt.readSync(u,p,m,g,y);this[xn](v),t=!1}finally{if(t)try{this[Un]((()=>{}))}catch{}}}[Vn](t){t()}[Un](t=()=>{}){this.fd!==void 0&&wt.closeSync(this.fd),t()}},Kn=class extends Er{blockLen=0;blockRemain=0;buf=0;pos=0;remain=0;length=0;preservePaths;portable;strict;noPax;noMtime;readEntry;type;prefix;path;mode;uid;gid;uname;gname;header;mtime;atime;ctime;linkpath;size;onWriteEntry;warn(t,u,p={}){return Lt(this,t,u,p)}constructor(t,u={}){let p=re(u);super(),this.preservePaths=!!p.preservePaths,this.portable=!!p.portable,this.strict=!!p.strict,this.noPax=!!p.noPax,this.noMtime=!!p.noMtime,this.onWriteEntry=p.onWriteEntry,this.readEntry=t;let{type:m}=t;if(m==="Unsupported")throw new Error("writing entry that should be ignored");this.type=m,this.type==="Directory"&&this.portable&&(this.noMtime=!0),this.prefix=p.prefix,this.path=ni(t.path),this.mode=t.mode!==void 0?this[Hn](t.mode):void 0,this.uid=this.portable?void 0:t.uid,this.gid=this.portable?void 0:t.gid,this.uname=this.portable?void 0:t.uname,this.gname=this.portable?void 0:t.gname,this.size=t.size,this.mtime=this.noMtime?void 0:p.mtime||t.mtime,this.atime=this.portable?void 0:t.atime,this.ctime=this.portable?void 0:t.ctime,this.linkpath=t.linkpath!==void 0?ni(t.linkpath):void 0,typeof p.onwarn=="function"&&this.on("warn",p.onwarn);let g=!1;if(!this.preservePaths){let[t,u]=ce(this.path);t&&typeof u=="string"&&(this.path=u,g=t)}this.remain=t.size,this.blockRemain=t.startBlockSize,this.onWriteEntry?.(this),this.header=new ei({path:this[Gn](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Gn](this.linkpath):this.linkpath,mode:this.mode,uid:this.portable?void 0:this.uid,gid:this.portable?void 0:this.gid,size:this.size,mtime:this.noMtime?void 0:this.mtime,type:this.type,uname:this.portable?void 0:this.uname,atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime}),g&&this.warn("TAR_ENTRY_INFO",`stripping ${g} from absolute path`,{entry:this,path:g+this.path}),this.header.encode()&&!this.noPax&&super.write(new si({atime:this.portable?void 0:this.atime,ctime:this.portable?void 0:this.ctime,gid:this.portable?void 0:this.gid,mtime:this.noMtime?void 0:this.mtime,path:this[Gn](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[Gn](this.linkpath):this.linkpath,size:this.size,uid:this.portable?void 0:this.uid,uname:this.portable?void 0:this.uname,dev:this.portable?void 0:this.readEntry.dev,ino:this.portable?void 0:this.readEntry.ino,nlink:this.portable?void 0:this.readEntry.nlink}).encode());let y=this.header?.block;if(!y)throw new Error("failed to encode header");super.write(y),t.pipe(this)}[Gn](t){return tr(t,this.prefix)}[Hn](t){return Ki(t,this.type==="Directory",this.portable)}write(t,u,p){typeof u=="function"&&(p=u,u=void 0),typeof t=="string"&&(t=Buffer.from(t,typeof u=="string"?u:"utf8"));let m=t.length;if(m>this.blockRemain)throw new Error("writing more to entry than is appropriate");return this.blockRemain-=m,super.write(t,p)}end(t,u,p){return this.blockRemain&&super.write(Buffer.alloc(this.blockRemain)),typeof t=="function"&&(p=t,u=void 0,t=void 0),typeof u=="function"&&(p=u,u=void 0),typeof t=="string"&&(t=Buffer.from(t,u??"utf8")),p&&this.once("finish",p),t?super.end(t,p):super.end(p),this}},In=t=>t.isFile()?"File":t.isDirectory()?"Directory":t.isSymbolicLink()?"SymbolicLink":"Unsupported";var Yn=class s{tail;head;length=0;static create(t=[]){return new s(t)}constructor(t=[]){for(let u of t)this.push(u)}*[Symbol.iterator](){for(let t=this.head;t;t=t.next)yield t.value}removeNode(t){if(t.list!==this)throw new Error("removing node which does not belong to this list");let u=t.next,p=t.prev;return u&&(u.prev=p),p&&(p.next=u),t===this.head&&(this.head=u),t===this.tail&&(this.tail=p),this.length--,t.next=void 0,t.prev=void 0,t.list=void 0,u}unshiftNode(t){if(t===this.head)return;t.list&&t.list.removeNode(t);let u=this.head;t.list=this,t.next=u,u&&(u.prev=t),this.head=t,this.tail||(this.tail=t),this.length++}pushNode(t){if(t===this.tail)return;t.list&&t.list.removeNode(t);let u=this.tail;t.list=this,t.prev=u,u&&(u.next=t),this.tail=t,this.head||(this.head=t),this.length++}push(...t){for(let u=0,p=t.length;u<p;u++)Fn(this,t[u]);return this.length}unshift(...t){for(var u=0,p=t.length;u<p;u++)kn(this,t[u]);return this.length}pop(){if(!this.tail)return;let t=this.tail.value,u=this.tail;return this.tail=this.tail.prev,this.tail?this.tail.next=void 0:this.head=void 0,u.list=void 0,this.length--,t}shift(){if(!this.head)return;let t=this.head.value,u=this.head;return this.head=this.head.next,this.head?this.head.prev=void 0:this.tail=void 0,u.list=void 0,this.length--,t}forEach(t,u){u=u||this;for(let p=this.head,m=0;p;m++)t.call(u,p.value,m,this),p=p.next}forEachReverse(t,u){u=u||this;for(let p=this.tail,m=this.length-1;p;m--)t.call(u,p.value,m,this),p=p.prev}get(t){let u=0,p=this.head;for(;p&&u<t;u++)p=p.next;if(u===t&&p)return p.value}getReverse(t){let u=0,p=this.tail;for(;p&&u<t;u++)p=p.prev;if(u===t&&p)return p.value}map(t,u){u=u||this;let p=new s;for(let m=this.head;m;)p.push(t.call(u,m.value,this)),m=m.next;return p}mapReverse(t,u){u=u||this;var p=new s;for(let m=this.tail;m;)p.push(t.call(u,m.value,this)),m=m.prev;return p}reduce(t,u){let p,m=this.head;if(arguments.length>1)p=u;else if(this.head)m=this.head.next,p=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var g=0;m;g++)p=t(p,m.value,g),m=m.next;return p}reduceReverse(t,u){let p,m=this.tail;if(arguments.length>1)p=u;else if(this.tail)m=this.tail.prev,p=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(let u=this.length-1;m;u--)p=t(p,m.value,u),m=m.prev;return p}toArray(){let t=new Array(this.length);for(let u=0,p=this.head;p;u++)t[u]=p.value,p=p.next;return t}toArrayReverse(){let t=new Array(this.length);for(let u=0,p=this.tail;p;u++)t[u]=p.value,p=p.prev;return t}slice(t=0,u=this.length){u<0&&(u+=this.length),t<0&&(t+=this.length);let p=new s;if(u<t||u<0)return p;t<0&&(t=0),u>this.length&&(u=this.length);let m=this.head,g=0;for(g=0;m&&g<t;g++)m=m.next;for(;m&&g<u;g++,m=m.next)p.push(m.value);return p}sliceReverse(t=0,u=this.length){u<0&&(u+=this.length),t<0&&(t+=this.length);let p=new s;if(u<t||u<0)return p;t<0&&(t=0),u>this.length&&(u=this.length);let m=this.length,g=this.tail;for(;g&&m>u;m--)g=g.prev;for(;g&&m>t;m--,g=g.prev)p.push(g.value);return p}splice(t,u=0,...p){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);let m=this.head;for(let u=0;m&&u<t;u++)m=m.next;let g=[];for(let t=0;m&&t<u;t++)g.push(m.value),m=this.removeNode(m);m?m!==this.tail&&(m=m.prev):m=this.tail;for(let t of p)m=Cn(this,m,t);return g}reverse(){let t=this.head,u=this.tail;for(let u=t;u;u=u.prev){let t=u.prev;u.prev=u.next,u.next=t}return this.head=u,this.tail=t,this}};function Cn(t,u,p){let m=u,g=u?u.next:t.head,y=new Jn(p,m,g,t);return y.next===void 0&&(t.tail=y),y.prev===void 0&&(t.head=y),t.length++,y}function Fn(t,u){t.tail=new Jn(u,t.tail,void 0,t),t.head||(t.head=t.tail),t.length++}function kn(t,u){t.head=new Jn(u,void 0,t.head,t),t.tail||(t.tail=t.head),t.length++}var Jn=class{list;next;prev;value;constructor(t,u,p,m){this.list=m,this.value=t,u?(u.next=this,this.prev=u):this.prev=void 0,p?(p.prev=this,this.next=p):this.next=void 0}};var Zn=class{path;absolute;entry;stat;readdir;pending=!1;ignore=!1;piped=!1;constructor(t,u){this.path=t||"./",this.absolute=u}},to=Buffer.alloc(1024),ro=Symbol("onStat"),so=Symbol("ended"),io=Symbol("queue"),lo=Symbol("current"),go=Symbol("process"),yo=Symbol("processing"),vo=Symbol("processJob"),_o=Symbol("jobs"),bo=Symbol("jobDone"),Eo=Symbol("addFSEntry"),So=Symbol("addTarEntry"),$o=Symbol("stat"),Oo=Symbol("readdir"),Ro=Symbol("onreaddir"),Po=Symbol("pipe"),Ao=Symbol("entry"),xo=Symbol("entryOpt"),To=Symbol("writeEntryClass"),ko=Symbol("write"),Co=Symbol("ondrain"),Io=class extends Er{sync=!1;opt;cwd;maxReadSize;preservePaths;strict;noPax;prefix;linkCache;statCache;file;portable;zip;readdirCache;noDirRecurse;follow;noMtime;mtime;filter;jobs;[To];onWriteEntry;[io];[_o]=0;[yo]=!1;[so]=!1;constructor(t={}){if(super(),this.opt=t,this.file=t.file||"",this.cwd=t.cwd||process.cwd(),this.maxReadSize=t.maxReadSize,this.preservePaths=!!t.preservePaths,this.strict=!!t.strict,this.noPax=!!t.noPax,this.prefix=ni(t.prefix||""),this.linkCache=t.linkCache||new Map,this.statCache=t.statCache||new Map,this.readdirCache=t.readdirCache||new Map,this.onWriteEntry=t.onWriteEntry,this[To]=Wn,typeof t.onwarn=="function"&&this.on("warn",t.onwarn),this.portable=!!t.portable,t.gzip||t.brotli||t.zstd){if((t.gzip?1:0)+(t.brotli?1:0)+(t.zstd?1:0)>1)throw new TypeError("gzip, brotli, zstd are mutually exclusive");if(t.gzip&&(typeof t.gzip!="object"&&(t.gzip={}),this.portable&&(t.gzip.portable=!0),this.zip=new Ms(t.gzip)),t.brotli&&(typeof t.brotli!="object"&&(t.brotli={}),this.zip=new Ws(t.brotli)),t.zstd&&(typeof t.zstd!="object"&&(t.zstd={}),this.zip=new Ys(t.zstd)),!this.zip)throw new Error("impossible");let u=this.zip;u.on("data",(t=>super.write(t))),u.on("end",(()=>super.end())),u.on("drain",(()=>this[Co]())),this.on("resume",(()=>u.resume()))}else this.on("drain",this[Co]);this.noDirRecurse=!!t.noDirRecurse,this.follow=!!t.follow,this.noMtime=!!t.noMtime,t.mtime&&(this.mtime=t.mtime),this.filter=typeof t.filter=="function"?t.filter:()=>!0,this[io]=new Yn,this[_o]=0,this.jobs=Number(t.jobs)||4,this[yo]=!1,this[so]=!1}[ko](t){return super.write(t)}add(t){return this.write(t),this}end(t,u,p){return typeof t=="function"&&(p=t,t=void 0),typeof u=="function"&&(p=u,u=void 0),t&&this.add(t),this[so]=!0,this[go](),p&&p(),this}write(t){if(this[so])throw new Error("write after end");return t instanceof oi?this[So](t):this[Eo](t),this.flowing}[So](t){let u=ni(St.resolve(this.cwd,t.path));if(!this.filter(t.path,t))t.resume();else{let p=new Zn(t.path,u);p.entry=new Kn(t,this[xo](p)),p.entry.on("end",(()=>this[bo](p))),this[_o]+=1,this[io].push(p)}this[go]()}[Eo](t){let u=ni(St.resolve(this.cwd,t));this[io].push(new Zn(t,u)),this[go]()}[$o](t){t.pending=!0,this[_o]+=1;let u=this.follow?"stat":"lstat";wt[u](t.absolute,((u,p)=>{t.pending=!1,this[_o]-=1,u?this.emit("error",u):this[ro](t,p)}))}[ro](t,u){this.statCache.set(t.absolute,u),t.stat=u,this.filter(t.path,u)?u.isFile()&&u.nlink>1&&t===this[lo]&&!this.linkCache.get(`${u.dev}:${u.ino}`)&&!this.sync&&this[vo](t):t.ignore=!0,this[go]()}[Oo](t){t.pending=!0,this[_o]+=1,wt.readdir(t.absolute,((u,p)=>{if(t.pending=!1,this[_o]-=1,u)return this.emit("error",u);this[Ro](t,p)}))}[Ro](t,u){this.readdirCache.set(t.absolute,u),t.readdir=u,this[go]()}[go](){if(!this[yo]){this[yo]=!0;for(let t=this[io].head;t&&this[_o]<this.jobs;t=t.next)if(this[vo](t.value),t.value.ignore){let u=t.next;this[io].removeNode(t),t.next=u}this[yo]=!1,this[so]&&!this[io].length&&this[_o]===0&&(this.zip?this.zip.end(to):(super.write(to),super.end()))}}get[lo](){return this[io]&&this[io].head&&this[io].head.value}[bo](t){this[io].shift(),this[_o]-=1,this[go]()}[vo](t){if(!t.pending){if(t.entry){t===this[lo]&&!t.piped&&this[Po](t);return}if(!t.stat){let u=this.statCache.get(t.absolute);u?this[ro](t,u):this[$o](t)}if(t.stat&&!t.ignore){if(!this.noDirRecurse&&t.stat.isDirectory()&&!t.readdir){let u=this.readdirCache.get(t.absolute);if(u?this[Ro](t,u):this[Oo](t),!t.readdir)return}if(t.entry=this[Ao](t),!t.entry){t.ignore=!0;return}t===this[lo]&&!t.piped&&this[Po](t)}}}[xo](t){return{onwarn:(t,u,p)=>this.warn(t,u,p),noPax:this.noPax,cwd:this.cwd,absolute:t.absolute,preservePaths:this.preservePaths,maxReadSize:this.maxReadSize,strict:this.strict,portable:this.portable,linkCache:this.linkCache,statCache:this.statCache,noMtime:this.noMtime,mtime:this.mtime,prefix:this.prefix,onWriteEntry:this.onWriteEntry}}[Ao](t){this[_o]+=1;try{return new this[To](t.path,this[xo](t)).on("end",(()=>this[bo](t))).on("error",(t=>this.emit("error",t)))}catch(t){this.emit("error",t)}}[Co](){this[lo]&&this[lo].entry&&this[lo].entry.resume()}[Po](t){t.piped=!0,t.readdir&&t.readdir.forEach((u=>{let p=t.path,m=p==="./"?"":p.replace(/\/*$/,"/");this[Eo](m+u)}));let u=t.entry,p=this.zip;if(!u)throw new Error("cannot pipe without source");p?u.on("data",(t=>{p.write(t)||u.pause()})):u.on("data",(t=>{super.write(t)||u.pause()}))}pause(){return this.zip&&this.zip.pause(),super.pause()}warn(t,u,p={}){Lt(this,t,u,p)}},No=class extends Io{sync=!0;constructor(t){super(t),this[To]=qn}pause(){}resume(){}[$o](t){let u=this.follow?"statSync":"lstatSync";this[ro](t,wt[u](t.absolute))}[Oo](t){this[Ro](t,wt.readdirSync(t.absolute))}[Po](t){let u=t.entry,p=this.zip;if(t.readdir&&t.readdir.forEach((u=>{let p=t.path,m=p==="./"?"":p.replace(/\/*$/,"/");this[Eo](m+u)})),!u)throw new Error("Cannot pipe without source");p?u.on("data",(t=>{p.write(t)})):u.on("data",(t=>{super[ko](t)}))}};var vn=(t,u)=>{let p=new No(t),m=new ws(t.file,{mode:t.mode||438});p.pipe(m),hr(p,u)},Mn=(t,u)=>{let p=new Io(t),m=new bs(t.file,{mode:t.mode||438});p.pipe(m);let g=new Promise(((t,u)=>{m.on("error",u),m.on("close",t),p.on("error",u)}));return ar(p,u),g},hr=(t,p)=>{p.forEach((p=>{p.charAt(0)==="@"?Wi({file:u.resolve(t.cwd,p.slice(1)),sync:!0,noResume:!0,onReadEntry:u=>t.add(u)}):t.add(p)})),t.end()},ar=async(t,p)=>{for(let m=0;m<p.length;m++){let g=String(p[m]);g.charAt(0)==="@"?await Wi({file:u.resolve(String(t.cwd),g.slice(1)),noResume:!0,onReadEntry:u=>{t.add(u)}}):t.add(g)}t.end()},Bn=(t,u)=>{let p=new No(t);return hr(p,u),p},Pn=(t,u)=>{let p=new Io(t);return ar(p,u),p},Do=K(vn,Mn,Bn,Pn,((t,u)=>{if(!u?.length)throw new TypeError("no paths specified to add to archive")}));var Lo=process.env.__FAKE_PLATFORM__||process.platform,jo=Lo==="win32",{O_CREAT:Mo,O_TRUNC:Fo,O_WRONLY:Uo}=wt.constants,Bo=Number(process.env.__FAKE_FS_O_FILENAME__)||wt.constants.UV_FS_O_FILEMAP||0,Ho=jo&&!!Bo,Vo=512*1024,zo=Bo|Fo|Mo|Uo,Go=Ho?t=>t<Vo?zo:"w":()=>"w";var cs=(u,p,m)=>{try{return t.lchownSync(u,p,m)}catch(t){if(t?.code!=="ENOENT")throw t}},di=(u,p,m,g)=>{t.lchown(u,p,m,(t=>{g(t&&t?.code!=="ENOENT"?t:null)}))},$n=(t,p,m,g,y)=>{if(p.isDirectory())index_min_fs(u.resolve(t,p.name),m,g,(v=>{if(v)return y(v);let b=u.resolve(t,p.name);di(b,m,g,y)}));else{let v=u.resolve(t,p.name);di(v,m,g,y)}},index_min_fs=(u,p,m,g)=>{t.readdir(u,{withFileTypes:!0},((t,y)=>{if(t){if(t.code==="ENOENT")return g();if(t.code!=="ENOTDIR"&&t.code!=="ENOTSUP")return g(t)}if(t||!y.length)return di(u,p,m,g);let v=y.length,b=null,a=t=>{if(!b){if(t)return g(b=t);if(--v===0)return di(u,p,m,g)}};for(let t of y)$n(u,t,p,m,a)}))},Xn=(t,p,m,g)=>{p.isDirectory()&&ds(u.resolve(t,p.name),m,g),cs(u.resolve(t,p.name),m,g)},ds=(u,p,m)=>{let g;try{g=t.readdirSync(u,{withFileTypes:!0})}catch(t){let g=t;if(g?.code==="ENOENT")return;if(g?.code==="ENOTDIR"||g?.code==="ENOTSUP")return cs(u,p,m);throw g}for(let t of g)Xn(u,t,p,m);return cs(u,p,m)};var Wo=class extends Error{path;code;syscall="chdir";constructor(t,u){super(`${u}: Cannot cd into '${t}'`),this.path=t,this.code=u}get name(){return"CwdError"}};var qo=class extends Error{path;symlink;syscall="symlink";code="TAR_SYMLINK_ERROR";constructor(t,u){super("TAR_SYMLINK_ERROR: Cannot extract through symbolic link"),this.symlink=t,this.path=u}get name(){return"SymlinkError"}};var jn=(u,p)=>{t.stat(u,((t,m)=>{(t||!m.isDirectory())&&(t=new Wo(u,t?.code||"ENOTDIR")),p(t)}))},fr=(p,m,g)=>{p=ni(p);let y=m.umask??18,v=m.mode|448,b=(v&y)!==0,w=m.uid,E=m.gid,$=typeof w=="number"&&typeof E=="number"&&(w!==m.processUid||E!==m.processGid),O=m.preserve,R=m.unlink,P=ni(m.cwd),S=(u,m)=>{u?g(u):m&&$?index_min_fs(m,w,E,(t=>S(t))):b?t.chmod(p,v,g):g()};if(p===P)return jn(p,S);if(O)return ot.mkdir(p,{mode:v,recursive:!0}).then((t=>S(null,t??void 0)),S);let A=ni(u.relative(P,p)).split("/");us(P,A,v,R,P,void 0,S)},us=(p,m,g,y,v,b,w)=>{if(!m.length)return w(null,b);let E=m.shift(),$=ni(u.resolve(p+"/"+E));t.mkdir($,g,dr($,m,g,y,v,b,w))},dr=(u,p,m,g,y,v,b)=>w=>{w?t.lstat(u,((E,$)=>{if(E)E.path=E.path&&ni(E.path),b(E);else if($.isDirectory())us(u,p,m,g,y,v,b);else if(g)t.unlink(u,(w=>{if(w)return b(w);t.mkdir(u,m,dr(u,p,m,g,y,v,b))}));else{if($.isSymbolicLink())return b(new qo(u,u+"/"+p.join("/")));b(w)}})):(v=v||u,us(u,p,m,g,y,v,b))},Qn=u=>{let p=!1,m;try{p=t.statSync(u).isDirectory()}catch(t){m=t?.code}finally{if(!p)throw new Wo(u,m??"ENOTDIR")}},ur=(p,m)=>{p=ni(p);let g=m.umask??18,y=m.mode|448,v=(y&g)!==0,b=m.uid,w=m.gid,E=typeof b=="number"&&typeof w=="number"&&(b!==m.processUid||w!==m.processGid),$=m.preserve,O=m.unlink,R=ni(m.cwd),d=u=>{u&&E&&ds(u,b,w),v&&t.chmodSync(p,y)};if(p===R)return Qn(R),d();if($)return d(t.mkdirSync(p,{mode:y,recursive:!0})??void 0);let P=ni(u.relative(R,p)).split("/"),A;for(let p=P.shift(),m=R;p&&(m+="/"+p);p=P.shift()){m=ni(u.resolve(m));try{t.mkdirSync(m,y),A=A||m}catch{let u=t.lstatSync(m);if(u.isDirectory())continue;if(O){t.unlinkSync(m),t.mkdirSync(m,y),A=A||m;continue}else if(u.isSymbolicLink())return new qo(m,m+"/"+P.join("/"))}}return d(A)};var Ko=Object.create(null),Yo=1e4,Jo=new Set,pr=t=>{Jo.has(t)?Jo.delete(t):Ko[t]=t.normalize("NFD").toLocaleLowerCase("en").toLocaleUpperCase("en"),Jo.add(t);let u=Ko[t],p=Jo.size-Yo;if(p>Yo/10){for(let t of Jo)if(Jo.delete(t),delete Ko[t],--p<=0)break}return u};var Zo=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,Xo=Zo==="win32",eo=t=>t.split("/").slice(0,-1).reduce(((t,p)=>{let m=t[t.length-1];return m!==void 0&&(p=(0,u.join)(m,p)),t.push(p||"/"),t}),[]),Qo=class{#y=new Map;#v=new Map;#_=new Set;reserve(t,p){t=Xo?["win32 parallelization disabled"]:t.map((t=>mt((0,u.join)(pr(t)))));let m=new Set(t.map((t=>eo(t))).reduce(((t,u)=>t.concat(u))));this.#v.set(p,{dirs:m,paths:t});for(let u of t){let t=this.#y.get(u);t?t.push(p):this.#y.set(u,[p])}for(let t of m){let u=this.#y.get(t);if(!u)this.#y.set(t,[new Set([p])]);else{let t=u[u.length-1];t instanceof Set?t.add(p):u.push(new Set([p]))}}return this.#w(p)}#b(t){let u=this.#v.get(t);if(!u)throw new Error("function does not have any path reservations");return{paths:u.paths.map((t=>this.#y.get(t))),dirs:[...u.dirs].map((t=>this.#y.get(t)))}}check(t){let{paths:u,dirs:p}=this.#b(t);return u.every((u=>u&&u[0]===t))&&p.every((u=>u&&u[0]instanceof Set&&u[0].has(t)))}#w(t){return this.#_.has(t)||!this.check(t)?!1:(this.#_.add(t),t((()=>this.#E(t))),!0)}#E(t){if(!this.#_.has(t))return!1;let u=this.#v.get(t);if(!u)throw new Error("invalid reservation");let{paths:p,dirs:m}=u,g=new Set;for(let u of p){let p=this.#y.get(u);if(!p||p?.[0]!==t)continue;let m=p[1];if(!m){this.#y.delete(u);continue}if(p.shift(),typeof m=="function")g.add(m);else for(let t of m)g.add(t)}for(let u of m){let p=this.#y.get(u),m=p?.[0];if(!(!p||!(m instanceof Set)))if(m.size===1&&p.length===1){this.#y.delete(u);continue}else if(m.size===1){p.shift();let t=p[0];typeof t=="function"&&g.add(t)}else m.delete(t)}return this.#_.delete(t),g.forEach((t=>this.#w(t))),!0}};var wr=()=>process.umask();var ea=Symbol("onEntry"),ta=Symbol("checkFs"),ra=Symbol("checkFs2"),sa=Symbol("isReusable"),ia=Symbol("makeFs"),na=Symbol("file"),oa=Symbol("directory"),aa=Symbol("link"),ca=Symbol("symlink"),la=Symbol("hardlink"),ua=Symbol("ensureNoSymlink"),ha=Symbol("unsupported"),da=Symbol("checkPath"),fa=Symbol("stripAbsolutePath"),pa=Symbol("mkdir"),ma=Symbol("onError"),ga=Symbol("pending"),ya=Symbol("pend"),va=Symbol("unpend"),_a=Symbol("ended"),ba=Symbol("maybeClose"),wa=Symbol("skip"),Ea=Symbol("doChown"),Sa=Symbol("uid"),$a=Symbol("gid"),Oa=Symbol("checkedCwd"),Ra=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,Pa=Ra==="win32",Aa=1024,no=(u,p)=>{if(!Pa)return t.unlink(u,p);let m=u+".DELETE."+(0,I.randomBytes)(16).toString("hex");t.rename(u,m,(u=>{if(u)return p(u);t.unlink(m,p)}))},oo=u=>{if(!Pa)return t.unlinkSync(u);let p=u+".DELETE."+(0,I.randomBytes)(16).toString("hex");t.renameSync(u,p),t.unlinkSync(p)},Tr=(t,u,p)=>t!==void 0&&t===t>>>0?t:u!==void 0&&u===u>>>0?u:p,xa=class extends Gi{[_a]=!1;[Oa]=!1;[ga]=0;reservations=new Qo;transform;writable=!0;readable=!1;uid;gid;setOwner;preserveOwner;processGid;processUid;maxDepth;forceChown;win32;newer;keep;noMtime;preservePaths;unlink;cwd;strip;processUmask;umask;dmode;fmode;chmod;constructor(t={}){if(t.ondone=()=>{this[_a]=!0,this[ba]()},super(t),this.transform=t.transform,this.chmod=!!t.chmod,typeof t.uid=="number"||typeof t.gid=="number"){if(typeof t.uid!="number"||typeof t.gid!="number")throw new TypeError("cannot set owner without number uid and gid");if(t.preserveOwner)throw new TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=t.uid,this.gid=t.gid,this.setOwner=!0}else this.uid=void 0,this.gid=void 0,this.setOwner=!1;t.preserveOwner===void 0&&typeof t.uid!="number"?this.preserveOwner=!!(process.getuid&&process.getuid()===0):this.preserveOwner=!!t.preserveOwner,this.processUid=(this.preserveOwner||this.setOwner)&&process.getuid?process.getuid():void 0,this.processGid=(this.preserveOwner||this.setOwner)&&process.getgid?process.getgid():void 0,this.maxDepth=typeof t.maxDepth=="number"?t.maxDepth:Aa,this.forceChown=t.forceChown===!0,this.win32=!!t.win32||Pa,this.newer=!!t.newer,this.keep=!!t.keep,this.noMtime=!!t.noMtime,this.preservePaths=!!t.preservePaths,this.unlink=!!t.unlink,this.cwd=ni(u.resolve(t.cwd||process.cwd())),this.strip=Number(t.strip)||0,this.processUmask=this.chmod?typeof t.processUmask=="number"?t.processUmask:wr():0,this.umask=typeof t.umask=="number"?t.umask:this.processUmask,this.dmode=t.dmode||511&~this.umask,this.fmode=t.fmode||438&~this.umask,this.on("entry",(t=>this[ea](t)))}warn(t,u,p={}){return(t==="TAR_BAD_ARCHIVE"||t==="TAR_ABORT")&&(p.recoverable=!1),super.warn(t,u,p)}[ba](){this[_a]&&this[ga]===0&&(this.emit("prefinish"),this.emit("finish"),this.emit("end"))}[fa](t,p){let m=t[p],{type:g}=t;if(!m||this.preservePaths)return!0;let[y,v]=ce(m),b=v.replace(/\\/g,"/").split("/");if(b.includes("..")||Pa&&/^[a-z]:\.\.$/i.test(b[0]??"")){if(p==="path"||g==="Link")return this.warn("TAR_ENTRY_ERROR",`${p} contains '..'`,{entry:t,[p]:m}),!1;{let g=u.posix.dirname(t.path),y=u.posix.normalize(u.posix.join(g,b.join("/")));if(y.startsWith("../")||y==="..")return this.warn("TAR_ENTRY_ERROR",`${p} escapes extraction directory`,{entry:t,[p]:m}),!1}}return y&&(t[p]=String(v),this.warn("TAR_ENTRY_INFO",`stripping ${y} from absolute ${p}`,{entry:t,[p]:m})),!0}[da](t){let p=ni(t.path),m=p.split("/");if(this.strip){if(m.length<this.strip)return!1;if(t.type==="Link"){let u=ni(String(t.linkpath)).split("/");if(u.length>=this.strip)t.linkpath=u.slice(this.strip).join("/");else return!1}m.splice(0,this.strip),t.path=m.join("/")}if(isFinite(this.maxDepth)&&m.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:t,path:p,depth:m.length,maxDepth:this.maxDepth}),!1;if(!this[fa](t,"path")||!this[fa](t,"linkpath"))return!1;if(u.isAbsolute(t.path)?t.absolute=ni(u.resolve(t.path)):t.absolute=ni(u.resolve(this.cwd,t.path)),!this.preservePaths&&typeof t.absolute=="string"&&t.absolute.indexOf(this.cwd+"/")!==0&&t.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:t,path:ni(t.path),resolvedPath:t.absolute,cwd:this.cwd}),!1;if(t.absolute===this.cwd&&t.type!=="Directory"&&t.type!=="GNUDumpDir")return!1;if(this.win32){let{root:p}=u.win32.parse(String(t.absolute));t.absolute=p+$i(String(t.absolute).slice(p.length));let{root:m}=u.win32.parse(t.path);t.path=m+$i(t.path.slice(m.length))}return!0}[ea](t){if(!this[da](t))return t.resume();switch(N.equal(typeof t.absolute,"string"),t.type){case"Directory":case"GNUDumpDir":t.mode&&(t.mode=t.mode|448);case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[ta](t);default:return this[ha](t)}}[ma](t,u){t.name==="CwdError"?this.emit("error",t):(this.warn("TAR_ENTRY_ERROR",t,{entry:u}),this[va](),u.resume())}[pa](t,u,p){fr(ni(t),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:u},p)}[Ea](t){return this.forceChown||this.preserveOwner&&(typeof t.uid=="number"&&t.uid!==this.processUid||typeof t.gid=="number"&&t.gid!==this.processGid)||typeof this.uid=="number"&&this.uid!==this.processUid||typeof this.gid=="number"&&this.gid!==this.processGid}[Sa](t){return Tr(this.uid,t.uid,this.processUid)}[$a](t){return Tr(this.gid,t.gid,this.processGid)}[na](u,p){let m=typeof u.mode=="number"?u.mode&4095:this.fmode,g=new bs(String(u.absolute),{flags:Go(u.size),mode:m,autoClose:!1});g.on("error",(m=>{g.fd&&t.close(g.fd,(()=>{})),g.write=()=>!0,this[ma](m,u),p()}));let y=1,o=m=>{if(m){g.fd&&t.close(g.fd,(()=>{})),this[ma](m,u),p();return}--y===0&&g.fd!==void 0&&t.close(g.fd,(t=>{t?this[ma](t,u):this[va](),p()}))};g.on("finish",(()=>{let p=String(u.absolute),m=g.fd;if(typeof m=="number"&&u.mtime&&!this.noMtime){y++;let g=u.atime||new Date,v=u.mtime;t.futimes(m,g,v,(u=>u?t.utimes(p,g,v,(t=>o(t&&u))):o()))}if(typeof m=="number"&&this[Ea](u)){y++;let g=this[Sa](u),v=this[$a](u);typeof g=="number"&&typeof v=="number"&&t.fchown(m,g,v,(u=>u?t.chown(p,g,v,(t=>o(t&&u))):o()))}o()}));let v=this.transform&&this.transform(u)||u;v!==u&&(v.on("error",(t=>{this[ma](t,u),p()})),u.pipe(v)),v.pipe(g)}[oa](u,p){let m=typeof u.mode=="number"?u.mode&4095:this.dmode;this[pa](String(u.absolute),m,(m=>{if(m){this[ma](m,u),p();return}let g=1,o=()=>{--g===0&&(p(),this[va](),u.resume())};u.mtime&&!this.noMtime&&(g++,t.utimes(String(u.absolute),u.atime||new Date,u.mtime,o)),this[Ea](u)&&(g++,t.chown(String(u.absolute),Number(this[Sa](u)),Number(this[$a](u)),o)),o()}))}[ha](t){t.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${t.type}`,{entry:t}),t.resume()}[ca](t,p){let m=ni(u.relative(this.cwd,u.resolve(u.dirname(String(t.absolute)),String(t.linkpath)))).split("/");this[ua](t,this.cwd,m,(()=>this[aa](t,String(t.linkpath),"symlink",p)),(u=>{this[ma](u,t),p()}))}[la](t,p){let m=ni(u.resolve(this.cwd,String(t.linkpath))),g=ni(String(t.linkpath)).split("/");this[ua](t,this.cwd,g,(()=>this[aa](t,m,"link",p)),(u=>{this[ma](u,t),p()}))}[ua](p,m,g,y,v){let b=g.shift();if(this.preservePaths||b===void 0)return y();let w=u.resolve(m,b);t.lstat(w,((t,m)=>{if(t)return y();if(m?.isSymbolicLink())return v(new qo(w,u.resolve(w,g.join("/"))));this[ua](p,w,g,y,v)}))}[ya](){this[ga]++}[va](){this[ga]--,this[ba]()}[wa](t){this[va](),t.resume()}[sa](t,u){return t.type==="File"&&!this.unlink&&u.isFile()&&u.nlink<=1&&!Pa}[ta](t){this[ya]();let u=[t.path];t.linkpath&&u.push(t.linkpath),this.reservations.reserve(u,(u=>this[ra](t,u)))}[ra](p,m){let i=t=>{m(t)},r=()=>{this[pa](this.cwd,this.dmode,(t=>{if(t){this[ma](t,p),i();return}this[Oa]=!0,n()}))},n=()=>{if(p.absolute!==this.cwd){let t=ni(u.dirname(String(p.absolute)));if(t!==this.cwd)return this[pa](t,this.dmode,(t=>{if(t){this[ma](t,p),i();return}o()}))}o()},o=()=>{t.lstat(String(p.absolute),((u,m)=>{if(m&&(this.keep||this.newer&&m.mtime>(p.mtime??m.mtime))){this[wa](p),i();return}if(u||this[sa](p,m))return this[ia](null,p,i);if(m.isDirectory()){if(p.type==="Directory"){let u=this.chmod&&p.mode&&(m.mode&4095)!==p.mode,c=t=>this[ia](t??null,p,i);return u?t.chmod(String(p.absolute),Number(p.mode),c):c()}if(p.absolute!==this.cwd)return t.rmdir(String(p.absolute),(t=>this[ia](t??null,p,i)))}if(p.absolute===this.cwd)return this[ia](null,p,i);no(String(p.absolute),(t=>this[ia](t??null,p,i)))}))};this[Oa]?n():r()}[ia](t,u,p){if(t){this[ma](t,u),p();return}switch(u.type){case"File":case"OldFile":case"ContiguousFile":return this[na](u,p);case"Link":return this[la](u,p);case"SymbolicLink":return this[ca](u,p);case"Directory":case"GNUDumpDir":return this[oa](u,p)}}[aa](u,p,m,g){t[m](p,String(u.absolute),(t=>{t?this[ma](t,u):(this[va](),u.resume()),g()}))}},Se=t=>{try{return[null,t()]}catch(t){return[t,null]}},Ta=class extends xa{sync=!0;[ia](t,u){return super[ia](t,u,(()=>{}))}[ta](p){if(!this[Oa]){let t=this[pa](this.cwd,this.dmode);if(t)return this[ma](t,p);this[Oa]=!0}if(p.absolute!==this.cwd){let t=ni(u.dirname(String(p.absolute)));if(t!==this.cwd){let u=this[pa](t,this.dmode);if(u)return this[ma](u,p)}}let[m,g]=Se((()=>t.lstatSync(String(p.absolute))));if(g&&(this.keep||this.newer&&g.mtime>(p.mtime??g.mtime)))return this[wa](p);if(m||this[sa](p,g))return this[ia](null,p);if(g.isDirectory()){if(p.type==="Directory"){let u=this.chmod&&p.mode&&(g.mode&4095)!==p.mode,[m]=u?Se((()=>{t.chmodSync(String(p.absolute),Number(p.mode))})):[];return this[ia](m,p)}let[u]=Se((()=>t.rmdirSync(String(p.absolute))));this[ia](u,p)}let[y]=p.absolute===this.cwd?[]:Se((()=>oo(String(p.absolute))));this[ia](y,p)}[na](u,p){let m=typeof u.mode=="number"?u.mode&4095:this.fmode,r=m=>{let y;try{t.closeSync(g)}catch(t){y=t}(m||y)&&this[ma](m||y,u),p()},g;try{g=t.openSync(String(u.absolute),Go(u.size),m)}catch(t){return r(t)}let y=this.transform&&this.transform(u)||u;y!==u&&(y.on("error",(t=>this[ma](t,u))),u.pipe(y)),y.on("data",(u=>{try{t.writeSync(g,u,0,u.length)}catch(t){r(t)}})),y.on("end",(()=>{let p=null;if(u.mtime&&!this.noMtime){let m=u.atime||new Date,y=u.mtime;try{t.futimesSync(g,m,y)}catch(g){try{t.utimesSync(String(u.absolute),m,y)}catch{p=g}}}if(this[Ea](u)){let m=this[Sa](u),y=this[$a](u);try{t.fchownSync(g,Number(m),Number(y))}catch(g){try{t.chownSync(String(u.absolute),Number(m),Number(y))}catch{p=p||g}}}r(p)}))}[oa](u,p){let m=typeof u.mode=="number"?u.mode&4095:this.dmode,g=this[pa](String(u.absolute),m);if(g){this[ma](g,u),p();return}if(u.mtime&&!this.noMtime)try{t.utimesSync(String(u.absolute),u.atime||new Date,u.mtime)}catch{}if(this[Ea](u))try{t.chownSync(String(u.absolute),Number(this[Sa](u)),Number(this[$a](u)))}catch{}p(),u.resume()}[pa](t,u){try{return ur(ni(t),{uid:this.uid,gid:this.gid,processUid:this.processUid,processGid:this.processGid,umask:this.processUmask,preserve:this.preservePaths,unlink:this.unlink,cwd:this.cwd,mode:u})}catch(t){return t}}[ua](p,m,g,y,v){if(this.preservePaths||!g.length)return y();let b=m;for(let p of g){b=u.resolve(b,p);let[w,E]=Se((()=>t.lstatSync(b)));if(w)return y();if(E.isSymbolicLink())return v(new qo(b,u.resolve(m,g.join("/"))))}y()}[aa](u,p,m,g){let y=`${m}Sync`;try{t[y](p,String(u.absolute)),g(),u.resume()}catch(t){return this[ma](t,u)}}};var ho=u=>{let p=new Ta(u),m=u.file,g=t.statSync(m),y=u.maxReadSize||16*1024*1024;new _s(m,{readSize:y,size:g.size}).pipe(p)},ao=(u,p)=>{let m=new xa(u),g=u.maxReadSize||16*1024*1024,y=u.file;return new Promise(((u,p)=>{m.on("error",p),m.on("close",u),t.stat(y,((t,u)=>{if(t)p(t);else{let t=new vs(y,{readSize:g,size:u.size});t.on("error",p),t.pipe(m)}}))}))},ka=K(ho,ao,(t=>new Ta(t)),(t=>new xa(t)),((t,u)=>{u?.length&&Yi(t,u)}));var co=(u,p)=>{let m=new No(u),g=!0,y,v;try{try{y=t.openSync(u.file,"r+")}catch(p){if(p?.code==="ENOENT")y=t.openSync(u.file,"w+");else throw p}let b=t.fstatSync(y),w=Buffer.alloc(512);e:for(v=0;v<b.size;v+=512){for(let u=0,p=0;u<512;u+=p){if(p=t.readSync(y,w,u,w.length-u,v+u),v===0&&w[0]===31&&w[1]===139)throw new Error("cannot append to compressed archives");if(!p)break e}let p=new ei(w);if(!p.cksumValid)break;let m=512*Math.ceil((p.size||0)/512);if(v+m+512>b.size)break;v+=m,u.mtimeCache&&p.mtime&&u.mtimeCache.set(String(p.path),p.mtime)}g=!1,fo(u,m,v,y,p)}finally{if(g)try{t.closeSync(y)}catch{}}},fo=(t,u,p,m,g)=>{let y=new ws(t.file,{fd:m,start:p});u.pipe(y),mo(u,g)},uo=(u,p)=>{p=Array.from(p);let m=new Io(u),i=(p,m,g)=>{let a=(u,m)=>{u?t.close(p,(t=>g(u))):g(null,m)},y=0;if(m===0)return a(null,0);let v=0,b=Buffer.alloc(512),S=(g,w)=>{if(g||typeof w>"u")return a(g);if(v+=w,v<512&&w)return t.read(p,b,v,b.length-v,y+v,S);if(y===0&&b[0]===31&&b[1]===139)return a(new Error("cannot append to compressed archives"));if(v<512)return a(null,y);let E=new ei(b);if(!E.cksumValid)return a(null,y);let $=512*Math.ceil((E.size??0)/512);if(y+$+512>m||(y+=$+512,y>=m))return a(null,y);u.mtimeCache&&E.mtime&&u.mtimeCache.set(String(E.path),E.mtime),v=0,t.read(p,b,0,512,y,S)};t.read(p,b,0,512,y,S)};return new Promise(((g,y)=>{m.on("error",y);let v="r+",a=(b,w)=>{if(b&&b.code==="ENOENT"&&v==="r+")return v="w+",t.open(u.file,v,a);if(b||!w)return y(b);t.fstat(w,((v,b)=>{if(v)return t.close(w,(()=>y(v)));i(w,b.size,((t,v)=>{if(t)return y(t);let b=new bs(u.file,{fd:w,start:v});m.pipe(b),b.on("error",y),b.on("close",g),po(m,p)}))}))};t.open(u.file,v,a)}))},mo=(t,p)=>{p.forEach((p=>{p.charAt(0)==="@"?Wi({file:u.resolve(t.cwd,p.slice(1)),sync:!0,noResume:!0,onReadEntry:u=>t.add(u)}):t.add(p)})),t.end()},po=async(t,p)=>{for(let m=0;m<p.length;m++){let g=String(p[m]);g.charAt(0)==="@"?await Wi({file:u.resolve(String(t.cwd),g.slice(1)),noResume:!0,onReadEntry:u=>t.add(u)}):t.add(g)}t.end()},Ca=K(co,uo,(()=>{throw new TypeError("file is required")}),(()=>{throw new TypeError("file is required")}),((t,u)=>{if(!ks(t))throw new TypeError("file is required");if(t.gzip||t.brotli||t.zstd||t.file.endsWith(".br")||t.file.endsWith(".tbr"))throw new TypeError("cannot append to compressed archives");if(!u?.length)throw new TypeError("no paths specified to add/replace")}));var Ia=K(Ca.syncFile,Ca.asyncFile,Ca.syncNoFile,Ca.asyncNoFile,((t,u=[])=>{Ca.validate?.(t,u),wo(t)})),wo=t=>{let u=t.filter;t.mtimeCache||(t.mtimeCache=new Map),t.filter=u?(p,m)=>u(p,m)&&!((t.mtimeCache?.get(p)??m.mtime??0)>(m.mtime??0)):(u,p)=>!((t.mtimeCache?.get(u)??p.mtime??0)>(p.mtime??0))};async function isUrlOk(t){try{const u=await fetch(t,{method:"HEAD"});return u.status===200}catch{return false}}async function getRepoInfo(t,u){const[,p,m,g,y,...v]=t.pathname.split("/");const b=u?u.replace(/^\//,""):v.join("/");if(g===undefined||g===""&&y===undefined){try{const t=await fetch(`https://api.github.com/repos/${p}/${m}`);if(t.status!==200){return}const u=await t.json();return{username:p,name:m,branch:u.default_branch,filePath:b}}catch{return}}const w=u?`${y}/${v.join("/")}`.replace(new RegExp(`/${b}|/$`),""):y;if(p&&m&&w&&g==="tree"){return{username:p,name:m,branch:w,filePath:b}}}function hasRepo({username:t,name:u,branch:p,filePath:m}){const g=`https://api.github.com/repos/${t}/${u}/contents`;const y=`${m?`/${m}`:""}/package.json`;return isUrlOk(`${g}${y}?ref=${p}`)}function existsInRepo(t){try{const u=new URL(t);return isUrlOk(u.href)}catch{return isUrlOk(`https://api.github.com/repos/zuplo/zudoku/contents/examples/${encodeURIComponent(t)}`)}}async function downloadTarStream(t){const u=await fetch(t);if(!u.body){throw new Error(`Failed to download: ${t}`)}return z.Readable.fromWeb(u.body)}async function downloadAndExtractRepo(t,{username:p,name:m,branch:g,filePath:y}){let v=null;await(0,_t.pipeline)(await downloadTarStream(`https://codeload.github.com/${p}/${m}/tar.gz/${g}`),ka({cwd:t,strip:y?y.split("/").length+1:1,filter:t=>{if(v===null){const p=t.split(u.sep);v=p.length?p[0]:null}return t.startsWith(`${v}${y?`/${y}/`:"/"}`)}}))}async function downloadAndExtractExample(t,u){if(u==="__internal-testing-retry"){throw new Error("This is an internal example for testing the CLI.")}await(0,_t.pipeline)(await downloadTarStream("https://codeload.github.com/zuplo/zudoku/tar.gz/canary"),ka({cwd:t,strip:2+u.split("/").length,filter:t=>t.includes(`zudoku-canary/examples/${u}/`)}))}var Na=__nccwpck_require__(1421);function isInGitRepository(){try{(0,Na.execSync)("git rev-parse --is-inside-work-tree",{stdio:"ignore"});return true}catch{}return false}function isInMercurialRepository(){try{(0,Na.execSync)("hg --cwd . root",{stdio:"ignore"});return true}catch{}return false}function isDefaultBranchSet(){try{(0,Na.execSync)("git config init.defaultBranch",{stdio:"ignore"});return true}catch{}return false}function tryGitInit(p){let m=false;try{(0,Na.execSync)("git --version",{stdio:"ignore"});if(isInGitRepository()||isInMercurialRepository()){return false}(0,Na.execSync)("git init",{stdio:"ignore"});m=true;if(!isDefaultBranchSet()){(0,Na.execSync)("git checkout -b main",{stdio:"ignore"})}(0,Na.execSync)("git add -A",{stdio:"ignore"});(0,Na.execSync)('git commit -m "Initial commit from Create Next App"',{stdio:"ignore"});return true}catch{if(m){try{(0,t.rmSync)((0,u.join)(p,".git"),{recursive:true,force:true})}catch{}}return false}}var Da=__nccwpck_require__(670);var La=__nccwpck_require__.n(Da);async function install(t,u){const p=["install"];if(!u){console.log((0,Qe.yellow)("You appear to be offline.\nFalling back to the local cache."));p.push("--offline")}return new Promise(((u,m)=>{const g=La()(t,p,{stdio:"inherit",env:{...process.env,ADBLOCK:"1",NODE_ENV:"development",DISABLE_OPENCOLLECTIVE:"1"}});g.on("close",(g=>{if(g!==0){m({command:`${t} ${p.join(" ")}`});return}u()}))}))}function isFolderEmpty(p,m){const g=[".DS_Store",".git",".gitattributes",".gitignore",".gitlab-ci.yml",".hg",".hgcheck",".hgignore",".idea",".npmignore",".travis.yml","LICENSE","Thumbs.db","docs","mkdocs.yml","npm-debug.log","yarn-debug.log","yarn-error.log","yarnrc.yml",".yarn"];const y=(0,t.readdirSync)(p).filter((t=>!g.includes(t)&&!/\.iml$/.test(t)));if(y.length>0){console.log(`The directory ${(0,Qe.green)(m)} contains files that could conflict:`);console.log();for(const m of y){try{const g=(0,t.lstatSync)((0,u.join)(p,m));if(g.isDirectory()){console.log(` ${(0,Qe.blue)(m)}/`)}else{console.log(` ${m}`)}}catch{console.log(` ${m}`)}}console.log();console.log("Either try using a new directory name, or remove the files listed above.");console.log();return false}return true}const ja=require("node:dns/promises");const Ma=require("node:url");var Fa=__nccwpck_require__.n(Ma);function getProxy(){if(process.env.https_proxy){return process.env.https_proxy}try{const t=(0,Na.execSync)("npm config get https-proxy").toString().trim();return t!=="null"?t:undefined}catch{return}}async function getOnline(){try{await(0,ja.lookup)("registry.yarnpkg.com");return true}catch{const t=getProxy();if(!t){return false}const{hostname:u}=Fa().parse(t);if(!u){return false}try{await(0,ja.lookup)(u);return true}catch{return false}}}const Ua=require("node:constants");async function isWriteable(t){try{await(0,ot.access)(t,Ua.W_OK);return true}catch{return false}}var Ba=__nccwpck_require__(2457);const identity=t=>t;const copy=async(t,p,{cwd:m,rename:g=identity,parents:y=true}={})=>{const v=typeof t==="string"?[t]:t;if(v.length===0||!p){throw new TypeError("`src` and `dest` are required")}const b=await(0,Ba.async)(v,{cwd:m,dot:true,absolute:false,stats:false});const w=m?(0,u.resolve)(m,p):p;return Promise.all(b.map((async t=>{const p=(0,u.dirname)(t);const v=g((0,u.basename)(t));const b=m?(0,u.resolve)(m,t):t;const E=y?(0,u.join)(w,p,v):(0,u.join)(w,v);await(0,ot.mkdir)((0,u.dirname)(E),{recursive:true});return(0,ot.copyFile)(b,E)})))};var Ha;const Va=__dirname.endsWith("dist")?p().dirname(__dirname):p().dirname(__dirname);const za=__dirname.endsWith("dist")?p().join(__dirname,"templates"):__dirname;const Ga=p().resolve(Va,"../..");const Wa=(Ha=process.env.ComSpec)!==null&&Ha!==void 0?Ha:"cmd.exe";const formatAppTitle=t=>t.split(/[-_\s]+/).filter(Boolean).map((t=>t.charAt(0).toUpperCase()+t.slice(1))).join(" ");const resolveCoreApitogoPackageName=async()=>{const t=JSON.parse(await ct().readFile(p().join(Va,"package.json"),"utf8"));return t.name.replace("/create-apitogo","/apitogo")};const qa="@lukow"+"eb";const normalizeDependencyVersion=t=>t.replace(/^[\^~>=<]+/,"");const Ka="0.577.0";const ensureRequiredApitogoModules=(t,u,p)=>{var m,g,y,v;const b=u.slice(0,u.indexOf("/"));const w=`${b}/apitogo-module-landing`;const E=`${b}/apitogo-module-user-panel`;const $=`${b}/apitogo-plugin-dev-portal-billing`;const O=`^${normalizeDependencyVersion(p)}`;(m=t[w])!==null&&m!==void 0?m:t[w]=O;(g=t[E])!==null&&g!==void 0?g:t[E]=O;(y=t[$])!==null&&y!==void 0?y:t[$]=O;(v=t["lucide-react"])!==null&&v!==void 0?v:t["lucide-react"]=Ka};const ensureSecondaryApitogoAliases=(t,u,p)=>{if(u.startsWith(`${qa}/`)){return}const alias=t=>`npm:${t}@${normalizeDependencyVersion(p)}`;const m=u.slice(0,u.indexOf("/"));t[`${qa}/apitogo`]=alias(u);t[`${qa}/apitogo-module-landing`]=alias(`${m}/apitogo-module-landing`);t[`${qa}/apitogo-module-user-panel`]=alias(`${m}/apitogo-module-user-panel`);t[`${qa}/apitogo-plugin-dev-portal-billing`]=alias(`${m}/apitogo-plugin-dev-portal-billing`)};const parseWorkspaceCatalog=async t=>{var u,p,m;const g=await ct().readFile(t,"utf8");const y={};let v=false;for(const t of g.split(/\r?\n/)){if(!v){v=t.trim()==="catalog:";continue}if(!t.startsWith(" "))break;const g=t.match(/^ {2}(?:"([^"]+)"|([^:]+)):\s+(.+)$/);if(!g)continue;const b=(u=g[1])!==null&&u!==void 0?u:(p=g[2])===null||p===void 0?void 0:p.trim();const w=(m=g[3])===null||m===void 0?void 0:m.trim();if(b&&w)y[b]=w}return y};const replaceCatalogVersions=(t,u)=>{if(Array.isArray(t)){return t.map((t=>replaceCatalogVersions(t,u)))}if(!t||typeof t!=="object"){return t}return Object.fromEntries(Object.entries(t).map((([t,p])=>{var m;return[t,p==="catalog:"?(m=u[t])!==null&&m!==void 0?m:p:replaceCatalogVersions(p,u)]})))};const stageLocalZudokuPackage=async(t,u)=>{var m,g;const y=await parseWorkspaceCatalog(p().join(Ga,"pnpm-workspace.yaml"));const v=p().join(t,"package.json");const b=JSON.parse(await ct().readFile(v,"utf8"));const w=replaceCatalogVersions(b,y);const E=new Set(["package.json",...Array.isArray(b.files)?b.files:[]]);await ct().rm(u,{recursive:true,force:true});await ct().mkdir(u,{recursive:true});for(const m of E){if(m==="package.json")continue;const g=p().join(t,m);const y=p().join(u,m);const v=await ct().stat(g).catch((()=>null));if(!v)continue;if(v.isDirectory()){await ct().cp(g,y,{recursive:true})}else{await ct().mkdir(p().dirname(y),{recursive:true});await ct().copyFile(g,y)}}(m=w.scripts)===null||m===void 0?true:delete m.prepublishOnly;(g=w.scripts)===null||g===void 0?true:delete g.postpublish;if(w.scripts&&Object.keys(w.scripts).length===0){delete w.scripts}await ct().writeFile(p().join(u,"package.json"),JSON.stringify(w,null,2)+M().EOL)};const getTemplateFile=({template:t,mode:u,file:m})=>p().join(za,t,u,m);const installTemplate=async({appName:t,root:u,packageManager:m,isOnline:g,template:y,mode:v,eslint:b,skipInstall:w,zudokuVersion:E})=>{var $;console.log((0,Qe.bold)(`Using ${m}.`));console.log("\nInitializing project with template:",y,"\n");const O=p().join(za,y,v);const R=["**"];if(!b)R.push("!eslintrc.json");await copy(R,u,{parents:true,cwd:O,rename(t){switch(t){case"gitignore":case"eslintrc.json":{return`.${t}`}case"env":{return".env"}case"README-template.md":{return"README.md"}case"zudoku.config.tsx":{return"apitogo.config.tsx"}case"zudoku.config.jsx":{return"apitogo.config.jsx"}default:{return t}}}});const P=formatAppTitle(t);const substituteAppTitle=t=>t.split("__APP_TITLE__").join(P);const A=v==="ts"?"apitogo.config.tsx":"apitogo.config.jsx";const x=p().join(u,A);const T=await ct().readFile(x,"utf8");await ct().writeFile(x,substituteAppTitle(T),"utf8");const k=p().join(u,"apitogo.config.json");try{const t=await ct().readFile(k,"utf8");await ct().writeFile(k,substituteAppTitle(t),"utf8")}catch{}const C=($=process.env.ZUDOKU_PRIVATE_TEST_VERSION)!==null&&$!==void 0?$:E;const I=p().join(Ga,"packages","zudoku");const N=p().join(I,"package.json");const D=await ct().access(N).then((async()=>{const t=p().join(u,".apitogo-local");const m=p().join(t,"zudoku-package");await ct().mkdir(t,{recursive:true});await stageLocalZudokuPackage(I,m);const g=p().relative(m,t);const y=(process.platform==="win32"?(0,Na.execFileSync)(Wa,["/d","/c","npm","pack","--pack-destination",g],{cwd:m,encoding:"utf8"}):(0,Na.execFileSync)("npm",["pack","--pack-destination",g],{cwd:m,encoding:"utf8"})).trim().split(/\r?\n/).at(-1);if(!y){throw new Error("Failed to pack local zudoku package.")}return`file:.apitogo-local/${y}`})).catch((()=>C));const L=await resolveCoreApitogoPackageName();const j={name:t,version:"0.1.0",type:"module",private:true,scripts:{dev:"apitogo run",build:"apitogo build",preview:"apitogo build --preview",deploy:"apitogo deploy",lint:"eslint"},dependencies:{react:">=19.0.0","react-dom":">=19.0.0",[L]:D},devDependencies:{}};if(!D.startsWith("file:")){ensureRequiredApitogoModules(j.dependencies,L,D);ensureSecondaryApitogoAliases(j.dependencies,L,D)}if(v==="ts"){j.devDependencies={...j.devDependencies,"@types/node":"^22","@types/react":"^19","@types/react-dom":"^19",typescript:"^5"}}if(b){j.devDependencies={...j.devDependencies,eslint:"^8"}}if(b&&v==="ts"){j.devDependencies={...j.devDependencies,"@typescript-eslint/eslint-plugin":"^8","@typescript-eslint/parser":"^8"}}const U=Object.keys(j.devDependencies).length;if(!U)delete j.devDependencies;await ct().writeFile(p().join(u,"package.json"),JSON.stringify(j,null,2)+M().EOL);if(w)return;console.log("\nInstalling dependencies:");for(const t in j.dependencies)console.log(`- ${(0,Qe.cyan)(t)}`);if(U){console.log("\nInstalling devDependencies:");for(const t in j.devDependencies)console.log(`- ${(0,Qe.cyan)(t)}`)}console.log();await install(m,g)};class DownloadError extends Error{}async function createApp({appPath:p,packageManager:m,example:g,examplePath:y,typescript:v,eslint:b,skipInstall:w,zudokuVersion:E,withExamples:$=true}){let O;const R=v?"ts":"js";const P=$?"default":"empty";if(g){let j;try{j=new URL(g)}catch(M){const U=M;if(U.code!=="ERR_INVALID_URL"){console.error(M);process.exit(1)}}if(j){if(j.origin!=="https://github.com"){console.error(`Invalid URL: ${(0,Qe.red)(`"${g}"`)}. Only GitHub repositories are supported. Please use a GitHub URL and try again.`);process.exit(1)}O=await getRepoInfo(j,y);if(!O){console.error(`Found invalid GitHub URL: ${(0,Qe.red)(`"${g}"`)}. Please fix the URL and try again.`);process.exit(1)}const B=await hasRepo(O);if(!B){console.error(`Could not locate the repository for ${(0,Qe.red)(`"${g}"`)}. Please check that the repository exists and try again.`);process.exit(1)}}else if(g!=="__internal-testing-retry"){const H=await existsInRepo(g);if(!H){console.error(`Could not locate an example named ${(0,Qe.red)(`"${g}"`)}. It could be due to the following:\n`,`1. Your spelling of example ${(0,Qe.red)(`"${g}"`)} might be incorrect.\n`,`2. You might not be connected to the internet or you are behind a proxy.`);process.exit(1)}}}const A=(0,u.resolve)(p);if(!await isWriteable((0,u.dirname)(A))){console.error("The application path is not writable, please check folder permissions and try again.");console.error("It is likely you do not have write permissions for this folder.");process.exit(1)}const x=(0,u.basename)(A);(0,t.mkdirSync)(A,{recursive:true});if(!isFolderEmpty(A,x)){process.exit(1)}const T=m==="yarn";const k=!T||await getOnline();const C=process.cwd();console.log(`Creating a new API ToGo app in ${(0,Qe.green)(A)}.`);console.log();process.chdir(A);const I=(0,u.join)(A,"package.json");let N=false;if(g){try{if(O){const z=O;console.log(`Downloading files from repo ${(0,Qe.cyan)(g)}. This might take a moment.`);console.log();await nt()((()=>downloadAndExtractRepo(A,z)),{retries:3})}else{console.log(`Downloading files for example ${(0,Qe.cyan)(g)}. This might take a moment.`);console.log();await nt()((()=>downloadAndExtractExample(A,g)),{retries:3})}}catch(G){function isErrorLike(t){return typeof t==="object"&&t!==null&&typeof t.message==="string"}throw new DownloadError(isErrorLike(G)?G.message:String(G))}const V=(0,u.join)(A,".gitignore");if(!(0,t.existsSync)(V)){(0,t.copyFileSync)(getTemplateFile({template:P,mode:R,file:"gitignore"}),V)}N=(0,t.existsSync)(I);if(!w&&N){console.log("Installing packages. This might take a couple of minutes.");console.log();await install(m,k);console.log()}}else{await installTemplate({appName:x,root:A,template:P,mode:R,packageManager:m,isOnline:k,eslint:b,skipInstall:w,zudokuVersion:E})}const D=process.env.APITOGO_SKIP_NEARBY_DISCOVERY==="1";if(!g&&!D){try{const W=await discoverAndWireNearby(A);if(W.length>0){console.log("Discovered nearby API docs:");for(const q of W){console.log(` ${q}`)}console.log()}}catch(Y){console.log("Could not auto-wire nearby OpenAPI/docs:",Y instanceof Error?Y.message:String(Y));console.log()}}if(tryGitInit(A)){console.log("Initialized a git repository.");console.log()}let L;if((0,u.join)(C,x)===p){L=x}else{L=p}console.log(`${(0,Qe.green)("Success!")} Created ${x} at ${p}`);if(N){console.log("Inside that directory, you can run several commands:");console.log();console.log((0,Qe.cyan)(` ${m} ${T?"":"run "}dev`));console.log(" Starts the development server.");console.log();console.log((0,Qe.cyan)(` ${m} ${T?"":"run "}build`));console.log(" Builds the app for production.");console.log();console.log((0,Qe.cyan)(` ${m} start`));console.log(" Runs the built app in production mode.");console.log();console.log("We suggest that you begin by typing:");console.log();console.log((0,Qe.cyan)(" cd"),L);console.log(` ${(0,Qe.cyan)(`${m} ${T?"":"run "}dev`)}`)}console.log()}function getPkgManager(){var t;const u=(t=process.env.npm_config_user_agent)!==null&&t!==void 0?t:"";if(u.startsWith("yarn")){return"yarn"}if(u.startsWith("pnpm")){return"pnpm"}if(u.startsWith("bun")){return"bun"}return"npm"}var Ya=__nccwpck_require__(8904);var Ja=__nccwpck_require__.n(Ya);function validateNpmName(t){const u=Ja()(t);if(u.validForNewPackages){return{valid:true}}return{valid:false,problems:[...u.errors||[],...u.warnings||[]]}}let Za="";const handleSigTerm=()=>process.exit(0);process.on("SIGINT",handleSigTerm);process.on("SIGTERM",handleSigTerm);const onPromptState=t=>{if(t.aborted){process.stdout.write("[?25h");process.stdout.write("\n");process.exit(1)}};const Xa=JSON.parse((0,t.readFileSync)(p().resolve(__dirname,"../package.json"),"utf-8"));const Qa=new P(Xa.name).version(Xa.version,"-v, --version","Output the current version of @lukoweb/create-apitogo.").description("Create a new APItoGo developer portal.\n\nRun without arguments for an interactive setup, or pass flags such as --typescript --eslint.\nAuto-discovers nearby OpenAPI and docs/ folders after scaffold.").argument("[directory]",'Project directory (defaults to "dev-portal")').usage("[directory] [options]").helpOption("-h, --help","Display this help message.").option("--ts, --typescript","Initialize as a TypeScript project (default).").option("--js, --javascript","Initialize as a JavaScript project.").option("--eslint","Initialize with ESLint config. Use --no-eslint to skip.").option("--include-examples, --with-examples","Use the default template (sample homepage, docs, OpenAPI, and plans). On by default. Use --no-include-examples for the empty template.").option("--import-alias <prefix/*>",'Specify import alias to use (default "@/*").').option("--use-npm","Use npm as the package manager.").option("--use-pnpm","Use pnpm as the package manager.").option("--use-yarn","Use Yarn as the package manager.").option("--use-bun","Use Bun as the package manager.").option("--reset, --reset-preferences","Reset the preferences saved for @lukoweb/create-apitogo.").option("--skip-install","Skip installing packages after scaffolding.").option("-y, --yes","Skip remaining prompts and use defaults for unspecified options.").option("-e, --example <example-name|github-url>","Bootstrap from an example in the Zudoku repo or a public GitHub URL.").option("--example-path <path-to-example>","Path to the example within the repo (use when the branch name contains slashes).").addHelpText("after",`\nExamples:\n $ npx @lukoweb/create-apitogo@latest\n $ npx @lukoweb/create-apitogo@latest dev-portal --typescript --eslint\n $ npx @lukoweb/create-apitogo@latest dev-portal --javascript --no-eslint\n $ npx @lukoweb/create-apitogo@latest dev-portal --typescript --eslint --no-include-examples\n`).action((t=>{if(t&&!t.startsWith("--no-")){Za=t}})).allowUnknownOption().parse(process.argv);const ec=Qa.opts();const{args:tc}=Qa;const rc=ec.useNpm?"npm":ec.usePnpm?"pnpm":ec.useYarn?"yarn":ec.useBun?"bun":getPkgManager();async function run(){const p=new Conf({projectName:"@lukoweb/create-apitogo"});if(ec.resetPreferences){const{resetPreferences:t}=await tt()({onState:onPromptState,type:"toggle",name:"resetPreferences",message:"Would you like to reset the saved preferences?",initial:false,active:"Yes",inactive:"No"});if(t){p.clear();console.log("The preferences have been reset successfully!")}process.exit(0)}const m=g().isCI||ec.yes;const y=!tc.includes("--no-include-examples")&&ec.includeExamples!==false;const v=tc.includes("--no-eslint");if(typeof Za==="string"){Za=Za.trim()}if(!Za){if(m){Za="dev-portal"}else{const t=await tt()({onState:onPromptState,type:"text",name:"path",message:"What is your project named?",initial:"dev-portal",validate:t=>{const p=validateNpmName((0,u.basename)((0,u.resolve)(t)));if(p.valid){return true}return`Invalid project name: ${p.problems[0]}`}});if(typeof t.path==="string"){Za=t.path.trim()}}}if(!Za){console.log("\nPlease specify the project directory:\n"+` ${(0,Qe.cyan)(ec.name())} ${(0,Qe.green)("<project-directory>")}\n`+"For example:\n"+` ${(0,Qe.cyan)(ec.name())} ${(0,Qe.green)("my-zudoku-app")}\n\n`+`Run ${(0,Qe.cyan)(`${ec.name()} --help`)} to see all options.`);process.exit(1)}const b=(0,u.resolve)(Za);const w=(0,u.basename)(b);const E=validateNpmName(w);if(!E.valid){console.error(`Could not create a project called ${(0,Qe.red)(`"${w}"`)} because of npm naming restrictions:`);E.problems.forEach((t=>console.error(` ${(0,Qe.red)((0,Qe.bold)("*"))} ${t}`)));process.exit(1)}if(ec.example===true){console.error("Please provide an example name or url, otherwise remove the example option.");process.exit(1)}if((0,t.existsSync)(b)&&!isFolderEmpty(b,w)){process.exit(1)}const $=typeof ec.example==="string"&&ec.example.trim();const O=p.get("preferences")||{};if(!$){const t={typescript:true,eslint:true};const getPrefOrDefault=u=>{var p;return(p=O[u])!==null&&p!==void 0?p:t[u]};if(!ec.typescript&&!ec.javascript){if(m){ec.typescript=getPrefOrDefault("typescript")}else{const t=(0,Qe.blue)("TypeScript");const{typescript:u}=await tt()({type:"toggle",name:"typescript",message:`Would you like to use ${t}?`,initial:getPrefOrDefault("typescript"),active:"Yes",inactive:"No"},{onCancel:()=>{console.error("Exiting.");process.exit(1)}});ec.typescript=Boolean(u);ec.javascript=!u;O.typescript=Boolean(u)}}if(v){ec.eslint=false}else if(!ec.eslint){if(m){ec.eslint=getPrefOrDefault("eslint")}else{const t=(0,Qe.blue)("ESLint");const{eslint:u}=await tt()({onState:onPromptState,type:"toggle",name:"eslint",message:`Would you like to use ${t}?`,initial:getPrefOrDefault("eslint"),active:"Yes",inactive:"No"});ec.eslint=Boolean(u);O.eslint=Boolean(u)}}}try{await createApp({appPath:b,packageManager:rc,example:$&&$!=="default"?$:undefined,examplePath:ec.examplePath,typescript:ec.typescript,eslint:ec.eslint,skipInstall:ec.skipInstall,zudokuVersion:Xa.version,withExamples:y})}catch(t){if(!(t instanceof DownloadError)){throw t}const u=await tt()({onState:onPromptState,type:"confirm",name:"builtin",message:`Could not download "${$}" because of a connectivity issue between your machine and GitHub.\n`+`Do you want to use the default template instead?`,initial:true});if(!u.builtin){throw t}await createApp({appPath:b,packageManager:rc,typescript:ec.typescript,eslint:ec.eslint,skipInstall:ec.skipInstall,zudokuVersion:Xa.version,withExamples:true})}p.set("preferences",O)}const sc=st()(Xa).catch((()=>null));async function notifyUpdate(){var t;try{if((t=await sc)===null||t===void 0?void 0:t.latest){const t={npm:"npm i -g",yarn:"yarn global add",pnpm:"pnpm add -g",bun:"bun add -g"};const u=`${t[rc]} @lukoweb/create-apitogo`;console.log((0,Qe.yellow)((0,Qe.bold)("A new version of `@lukoweb/create-apitogo` is available!"))+"\n"+"You can update by running: "+(0,Qe.cyan)(u)+"\n")}process.exit(0)}catch{}}async function exit(t){console.log();console.log("Aborting installation.");if(t.command){console.log(` ${(0,Qe.cyan)(t.command)} has failed.`)}else{console.log(`${(0,Qe.red)("Unexpected error. Please report it as a bug:")}\n`,t)}console.log();await notifyUpdate();process.exit(1)}run().then(notifyUpdate).catch(exit)})();module.exports=p})();
|