@abacus-ai/cli 1.106.24817 → 1.106.24818
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
|
@@ -11,7 +11,7 @@ import{createRequire as DF}from"node:module";var t4=Object.create;var{getPrototy
|
|
|
11
11
|
`).map((F)=>NQ(F,u,_)).join(`
|
|
12
12
|
`)}});var P9=G((QY,j9)=>{var SQ=T("stream");class O9 extends SQ{#D=null;constructor(D={}){super(D);this.writable=this.readable=!0,this.muted=!1,this.on("pipe",this._onpipe),this.replace=D.replace,this._prompt=D.prompt||null,this._hadControl=!1}#_(D,u){if(this._dest)return this._dest[D];if(this._src)return this._src[D];return u}#u(D,...u){if(typeof this._dest?.[D]==="function")this._dest[D](...u);if(typeof this._src?.[D]==="function")this._src[D](...u)}get isTTY(){if(this.#D!==null)return this.#D;return this.#_("isTTY",!1)}set isTTY(D){this.#D=D}get rows(){return this.#_("rows")}get columns(){return this.#_("columns")}mute(){this.muted=!0}unmute(){this.muted=!1}_onpipe(D){this._src=D}pipe(D,u){return this._dest=D,super.pipe(D,u)}pause(){if(this._src)return this._src.pause()}resume(){if(this._src)return this._src.resume()}write(D){if(this.muted){if(!this.replace)return!0;if(D.match(/^\u001b/)){if(D.indexOf(this._prompt)===0)D=D.slice(this._prompt.length),D=D.replace(/./g,this.replace),D=this._prompt+D;return this._hadControl=!0,this.emit("data",D)}else{if(this._prompt&&this._hadControl&&D.indexOf(this._prompt)===0)this._hadControl=!1,this.emit("data",this._prompt),D=D.slice(this._prompt.length);D=D.toString().replace(/./g,this.replace)}}this.emit("data",D)}end(D){if(this.muted)if(D&&this.replace)D=D.toString().replace(/./g,this.replace);else D=null;if(D)this.emit("data",D);this.emit("end")}destroy(...D){return this.#u("destroy",...D)}destroySoon(...D){return this.#u("destroySoon",...D)}close(...D){return this.#u("close",...D)}}j9.exports=O9});var g9=G((lY,b9)=>{var h9=V6(),fQ=(D,u,_=!1)=>{if(D instanceof h9)return D;try{return new h9(D,u)}catch(F){if(!_)return null;throw F}};b9.exports=fQ});var f9=G((cY,m9)=>{var dQ=g9(),lQ=(D,u)=>{let _=dQ(D,u);return _?_.version:null};m9.exports=lQ});var m2=G((rY,a9)=>{var pQ=Number.MAX_SAFE_INTEGER||9007199254740991,iQ=["major","premajor","minor","preminor","patch","prepatch","prerelease"];a9.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:pQ,RELEASE_TYPES:iQ,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var f2=G((eY,s9)=>{var aQ=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...D)=>console.error("SEMVER",...D):()=>{};s9.exports=aQ});var F2=G((vD,n9)=>{var{MAX_SAFE_COMPONENT_LENGTH:c6,MAX_SAFE_BUILD_LENGTH:sQ,MAX_LENGTH:nQ}=m2(),tQ=f2();vD=n9.exports={};var oQ=vD.re=[],rQ=vD.safeRe=[],x=vD.src=[],eQ=vD.safeSrc=[],W=vD.t={},DJ=0,p6="[a-zA-Z0-9-]",uJ=[["\\s",1],["\\d",nQ],[p6,sQ]],_J=(D)=>{for(let[u,_]of uJ)D=D.split(`${u}*`).join(`${u}{0,${_}}`).split(`${u}+`).join(`${u}{1,${_}}`);return D},O=(D,u,_)=>{let F=_J(u),q=DJ++;tQ(D,q,u),W[D]=q,x[q]=u,eQ[q]=F,oQ[q]=new RegExp(u,_?"g":void 0),rQ[q]=new RegExp(F,_?"g":void 0)};O("NUMERICIDENTIFIER","0|[1-9]\\d*");O("NUMERICIDENTIFIERLOOSE","\\d+");O("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${p6}*`);O("MAINVERSION",`(${x[W.NUMERICIDENTIFIER]})\\.(${x[W.NUMERICIDENTIFIER]})\\.(${x[W.NUMERICIDENTIFIER]})`);O("MAINVERSIONLOOSE",`(${x[W.NUMERICIDENTIFIERLOOSE]})\\.(${x[W.NUMERICIDENTIFIERLOOSE]})\\.(${x[W.NUMERICIDENTIFIERLOOSE]})`);O("PRERELEASEIDENTIFIER",`(?:${x[W.NONNUMERICIDENTIFIER]}|${x[W.NUMERICIDENTIFIER]})`);O("PRERELEASEIDENTIFIERLOOSE",`(?:${x[W.NONNUMERICIDENTIFIER]}|${x[W.NUMERICIDENTIFIERLOOSE]})`);O("PRERELEASE",`(?:-(${x[W.PRERELEASEIDENTIFIER]}(?:\\.${x[W.PRERELEASEIDENTIFIER]})*))`);O("PRERELEASELOOSE",`(?:-?(${x[W.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${x[W.PRERELEASEIDENTIFIERLOOSE]})*))`);O("BUILDIDENTIFIER",`${p6}+`);O("BUILD",`(?:\\+(${x[W.BUILDIDENTIFIER]}(?:\\.${x[W.BUILDIDENTIFIER]})*))`);O("FULLPLAIN",`v?${x[W.MAINVERSION]}${x[W.PRERELEASE]}?${x[W.BUILD]}?`);O("FULL",`^${x[W.FULLPLAIN]}$`);O("LOOSEPLAIN",`[v=\\s]*${x[W.MAINVERSIONLOOSE]}${x[W.PRERELEASELOOSE]}?${x[W.BUILD]}?`);O("LOOSE",`^${x[W.LOOSEPLAIN]}$`);O("GTLT","((?:<|>)?=?)");O("XRANGEIDENTIFIERLOOSE",`${x[W.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);O("XRANGEIDENTIFIER",`${x[W.NUMERICIDENTIFIER]}|x|X|\\*`);O("XRANGEPLAIN",`[v=\\s]*(${x[W.XRANGEIDENTIFIER]})(?:\\.(${x[W.XRANGEIDENTIFIER]})(?:\\.(${x[W.XRANGEIDENTIFIER]})(?:${x[W.PRERELEASE]})?${x[W.BUILD]}?)?)?`);O("XRANGEPLAINLOOSE",`[v=\\s]*(${x[W.XRANGEIDENTIFIERLOOSE]})(?:\\.(${x[W.XRANGEIDENTIFIERLOOSE]})(?:\\.(${x[W.XRANGEIDENTIFIERLOOSE]})(?:${x[W.PRERELEASELOOSE]})?${x[W.BUILD]}?)?)?`);O("XRANGE",`^${x[W.GTLT]}\\s*${x[W.XRANGEPLAIN]}$`);O("XRANGELOOSE",`^${x[W.GTLT]}\\s*${x[W.XRANGEPLAINLOOSE]}$`);O("COERCEPLAIN",`(^|[^\\d])(\\d{1,${c6}})(?:\\.(\\d{1,${c6}}))?(?:\\.(\\d{1,${c6}}))?`);O("COERCE",`${x[W.COERCEPLAIN]}(?:$|[^\\d])`);O("COERCEFULL",x[W.COERCEPLAIN]+`(?:${x[W.PRERELEASE]})?(?:${x[W.BUILD]})?(?:$|[^\\d])`);O("COERCERTL",x[W.COERCE],!0);O("COERCERTLFULL",x[W.COERCEFULL],!0);O("LONETILDE","(?:~>?)");O("TILDETRIM",`(\\s*)${x[W.LONETILDE]}\\s+`,!0);vD.tildeTrimReplace="$1~";O("TILDE",`^${x[W.LONETILDE]}${x[W.XRANGEPLAIN]}$`);O("TILDELOOSE",`^${x[W.LONETILDE]}${x[W.XRANGEPLAINLOOSE]}$`);O("LONECARET","(?:\\^)");O("CARETTRIM",`(\\s*)${x[W.LONECARET]}\\s+`,!0);vD.caretTrimReplace="$1^";O("CARET",`^${x[W.LONECARET]}${x[W.XRANGEPLAIN]}$`);O("CARETLOOSE",`^${x[W.LONECARET]}${x[W.XRANGEPLAINLOOSE]}$`);O("COMPARATORLOOSE",`^${x[W.GTLT]}\\s*(${x[W.LOOSEPLAIN]})$|^$`);O("COMPARATOR",`^${x[W.GTLT]}\\s*(${x[W.FULLPLAIN]})$|^$`);O("COMPARATORTRIM",`(\\s*)${x[W.GTLT]}\\s*(${x[W.LOOSEPLAIN]}|${x[W.XRANGEPLAIN]})`,!0);vD.comparatorTrimReplace="$1$2$3";O("HYPHENRANGE",`^\\s*(${x[W.XRANGEPLAIN]})\\s+-\\s+(${x[W.XRANGEPLAIN]})\\s*$`);O("HYPHENRANGELOOSE",`^\\s*(${x[W.XRANGEPLAINLOOSE]})\\s+-\\s+(${x[W.XRANGEPLAINLOOSE]})\\s*$`);O("STAR","(<|>)?=?\\s*\\*");O("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");O("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var X3=G((DH,t9)=>{var FJ=Object.freeze({loose:!0}),qJ=Object.freeze({}),CJ=(D)=>{if(!D)return qJ;if(typeof D!=="object")return FJ;return D};t9.exports=CJ});var i6=G((uH,e9)=>{var o9=/^[0-9]+$/,r9=(D,u)=>{let _=o9.test(D),F=o9.test(u);if(_&&F)D=+D,u=+u;return D===u?0:_&&!F?-1:F&&!_?1:D<u?-1:1},$J=(D,u)=>r9(u,D);e9.exports={compareIdentifiers:r9,rcompareIdentifiers:$J}});var l=G((_H,u7)=>{var B3=f2(),{MAX_LENGTH:D7,MAX_SAFE_INTEGER:G3}=m2(),{safeRe:Y3,t:H3}=F2(),QJ=X3(),{compareIdentifiers:q2}=i6();class AD{constructor(D,u){if(u=QJ(u),D instanceof AD)if(D.loose===!!u.loose&&D.includePrerelease===!!u.includePrerelease)return D;else D=D.version;else if(typeof D!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof D}".`);if(D.length>D7)throw TypeError(`version is longer than ${D7} characters`);B3("SemVer",D,u),this.options=u,this.loose=!!u.loose,this.includePrerelease=!!u.includePrerelease;let _=D.trim().match(u.loose?Y3[H3.LOOSE]:Y3[H3.FULL]);if(!_)throw TypeError(`Invalid Version: ${D}`);if(this.raw=D,this.major=+_[1],this.minor=+_[2],this.patch=+_[3],this.major>G3||this.major<0)throw TypeError("Invalid major version");if(this.minor>G3||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>G3||this.patch<0)throw TypeError("Invalid patch version");if(!_[4])this.prerelease=[];else this.prerelease=_[4].split(".").map((F)=>{if(/^[0-9]+$/.test(F)){let q=+F;if(q>=0&&q<G3)return q}return F});this.build=_[5]?_[5].split("."):[],this.format()}format(){if(this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length)this.version+=`-${this.prerelease.join(".")}`;return this.version}toString(){return this.version}compare(D){if(B3("SemVer.compare",this.version,this.options,D),!(D instanceof AD)){if(typeof D==="string"&&D===this.version)return 0;D=new AD(D,this.options)}if(D.version===this.version)return 0;return this.compareMain(D)||this.comparePre(D)}compareMain(D){if(!(D instanceof AD))D=new AD(D,this.options);return q2(this.major,D.major)||q2(this.minor,D.minor)||q2(this.patch,D.patch)}comparePre(D){if(!(D instanceof AD))D=new AD(D,this.options);if(this.prerelease.length&&!D.prerelease.length)return-1;else if(!this.prerelease.length&&D.prerelease.length)return 1;else if(!this.prerelease.length&&!D.prerelease.length)return 0;let u=0;do{let _=this.prerelease[u],F=D.prerelease[u];if(B3("prerelease compare",u,_,F),_===void 0&&F===void 0)return 0;else if(F===void 0)return 1;else if(_===void 0)return-1;else if(_===F)continue;else return q2(_,F)}while(++u)}compareBuild(D){if(!(D instanceof AD))D=new AD(D,this.options);let u=0;do{let _=this.build[u],F=D.build[u];if(B3("build compare",u,_,F),_===void 0&&F===void 0)return 0;else if(F===void 0)return 1;else if(_===void 0)return-1;else if(_===F)continue;else return q2(_,F)}while(++u)}inc(D,u,_){if(D.startsWith("pre")){if(!u&&_===!1)throw Error("invalid increment argument: identifier is empty");if(u){let F=`-${u}`.match(this.options.loose?Y3[H3.PRERELEASELOOSE]:Y3[H3.PRERELEASE]);if(!F||F[1]!==u)throw Error(`invalid identifier: ${u}`)}}switch(D){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",u,_);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",u,_);break;case"prepatch":this.prerelease.length=0,this.inc("patch",u,_),this.inc("pre",u,_);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",u,_);this.inc("pre",u,_);break;case"release":if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0,this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":{let F=Number(_)?1:0;if(this.prerelease.length===0)this.prerelease=[F];else{let q=this.prerelease.length;while(--q>=0)if(typeof this.prerelease[q]==="number")this.prerelease[q]++,q=-2;if(q===-1){if(u===this.prerelease.join(".")&&_===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(F)}}if(u){let q=[u,F];if(_===!1)q=[u];if(q2(this.prerelease[0],u)===0){if(isNaN(this.prerelease[1]))this.prerelease=q}else this.prerelease=q}break}default:throw Error(`invalid increment argument: ${D}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}u7.exports=AD});var R0=G((FH,F7)=>{var _7=l(),JJ=(D,u,_=!1)=>{if(D instanceof _7)return D;try{return new _7(D,u)}catch(F){if(!_)return null;throw F}};F7.exports=JJ});var C7=G((qH,q7)=>{var VJ=R0(),ZJ=(D,u)=>{let _=VJ(D,u);return _?_.version:null};q7.exports=ZJ});var Q7=G((CH,$7)=>{var KJ=R0(),XJ=(D,u)=>{let _=KJ(D.trim().replace(/^[=v]+/,""),u);return _?_.version:null};$7.exports=XJ});var Z7=G(($H,V7)=>{var J7=l(),BJ=(D,u,_,F,q)=>{if(typeof _==="string")q=F,F=_,_=void 0;try{return new J7(D instanceof J7?D.version:D,_).inc(u,F,q).version}catch(C){return null}};V7.exports=BJ});var B7=G((QH,X7)=>{var K7=R0(),GJ=(D,u)=>{let _=K7(D,null,!0),F=K7(u,null,!0),q=_.compare(F);if(q===0)return null;let C=q>0,$=C?_:F,Q=C?F:_,J=!!$.prerelease.length;if(!!Q.prerelease.length&&!J){if(!Q.patch&&!Q.minor)return"major";if(Q.compareMain($)===0){if(Q.minor&&!Q.patch)return"minor";return"patch"}}let V=J?"pre":"";if(_.major!==F.major)return V+"major";if(_.minor!==F.minor)return V+"minor";if(_.patch!==F.patch)return V+"patch";return"prerelease"};X7.exports=GJ});var Y7=G((JH,G7)=>{var YJ=l(),HJ=(D,u)=>new YJ(D,u).major;G7.exports=HJ});var x7=G((VH,H7)=>{var xJ=l(),WJ=(D,u)=>new xJ(D,u).minor;H7.exports=WJ});var A7=G((ZH,W7)=>{var AJ=l(),zJ=(D,u)=>new AJ(D,u).patch;W7.exports=zJ});var L7=G((KH,z7)=>{var LJ=R0(),UJ=(D,u)=>{let _=LJ(D,u);return _&&_.prerelease.length?_.prerelease:null};z7.exports=UJ});var VD=G((XH,O7)=>{var U7=l(),OJ=(D,u,_)=>new U7(D,_).compare(new U7(u,_));O7.exports=OJ});var P7=G((BH,j7)=>{var jJ=VD(),PJ=(D,u,_)=>jJ(u,D,_);j7.exports=PJ});var w7=G((GH,I7)=>{var IJ=VD(),wJ=(D,u)=>IJ(D,u,!0);I7.exports=wJ});var x3=G((YH,T7)=>{var M7=l(),MJ=(D,u,_)=>{let F=new M7(D,_),q=new M7(u,_);return F.compare(q)||F.compareBuild(q)};T7.exports=MJ});var R7=G((HH,v7)=>{var TJ=x3(),vJ=(D,u)=>D.sort((_,F)=>TJ(_,F,u));v7.exports=vJ});var S7=G((xH,N7)=>{var RJ=x3(),NJ=(D,u)=>D.sort((_,F)=>RJ(F,_,u));N7.exports=NJ});var d2=G((WH,E7)=>{var SJ=VD(),EJ=(D,u,_)=>SJ(D,u,_)>0;E7.exports=EJ});var W3=G((AH,k7)=>{var kJ=VD(),yJ=(D,u,_)=>kJ(D,u,_)<0;k7.exports=yJ});var a6=G((zH,y7)=>{var hJ=VD(),bJ=(D,u,_)=>hJ(D,u,_)===0;y7.exports=bJ});var s6=G((LH,h7)=>{var gJ=VD(),mJ=(D,u,_)=>gJ(D,u,_)!==0;h7.exports=mJ});var A3=G((UH,b7)=>{var fJ=VD(),dJ=(D,u,_)=>fJ(D,u,_)>=0;b7.exports=dJ});var z3=G((OH,g7)=>{var lJ=VD(),cJ=(D,u,_)=>lJ(D,u,_)<=0;g7.exports=cJ});var n6=G((jH,m7)=>{var pJ=a6(),iJ=s6(),aJ=d2(),sJ=A3(),nJ=W3(),tJ=z3(),oJ=(D,u,_,F)=>{switch(u){case"===":if(typeof D==="object")D=D.version;if(typeof _==="object")_=_.version;return D===_;case"!==":if(typeof D==="object")D=D.version;if(typeof _==="object")_=_.version;return D!==_;case"":case"=":case"==":return pJ(D,_,F);case"!=":return iJ(D,_,F);case">":return aJ(D,_,F);case">=":return sJ(D,_,F);case"<":return nJ(D,_,F);case"<=":return tJ(D,_,F);default:throw TypeError(`Invalid operator: ${u}`)}};m7.exports=oJ});var d7=G((PH,f7)=>{var rJ=l(),eJ=R0(),{safeRe:L3,t:U3}=F2(),DV=(D,u)=>{if(D instanceof rJ)return D;if(typeof D==="number")D=String(D);if(typeof D!=="string")return null;u=u||{};let _=null;if(!u.rtl)_=D.match(u.includePrerelease?L3[U3.COERCEFULL]:L3[U3.COERCE]);else{let J=u.includePrerelease?L3[U3.COERCERTLFULL]:L3[U3.COERCERTL],Z;while((Z=J.exec(D))&&(!_||_.index+_[0].length!==D.length)){if(!_||Z.index+Z[0].length!==_.index+_[0].length)_=Z;J.lastIndex=Z.index+Z[1].length+Z[2].length}J.lastIndex=-1}if(_===null)return null;let F=_[2],q=_[3]||"0",C=_[4]||"0",$=u.includePrerelease&&_[5]?`-${_[5]}`:"",Q=u.includePrerelease&&_[6]?`+${_[6]}`:"";return eJ(`${F}.${q}.${C}${$}${Q}`,u)};f7.exports=DV});var p7=G((IH,c7)=>{class l7{constructor(){this.max=1000,this.map=new Map}get(D){let u=this.map.get(D);if(u===void 0)return;else return this.map.delete(D),this.map.set(D,u),u}delete(D){return this.map.delete(D)}set(D,u){if(!this.delete(D)&&u!==void 0){if(this.map.size>=this.max){let F=this.map.keys().next().value;this.delete(F)}this.map.set(D,u)}return this}}c7.exports=l7});var ZD=G((wH,n7)=>{var uV=/\s+/g;class l2{constructor(D,u){if(u=FV(u),D instanceof l2)if(D.loose===!!u.loose&&D.includePrerelease===!!u.includePrerelease)return D;else return new l2(D.raw,u);if(D instanceof t6)return this.raw=D.value,this.set=[[D]],this.formatted=void 0,this;if(this.options=u,this.loose=!!u.loose,this.includePrerelease=!!u.includePrerelease,this.raw=D.trim().replace(uV," "),this.set=this.raw.split("||").map((_)=>this.parseRange(_.trim())).filter((_)=>_.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let _=this.set[0];if(this.set=this.set.filter((F)=>!a7(F[0])),this.set.length===0)this.set=[_];else if(this.set.length>1){for(let F of this.set)if(F.length===1&&ZV(F[0])){this.set=[F];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let D=0;D<this.set.length;D++){if(D>0)this.formatted+="||";let u=this.set[D];for(let _=0;_<u.length;_++){if(_>0)this.formatted+=" ";this.formatted+=u[_].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(D){let _=((this.options.includePrerelease&&JV)|(this.options.loose&&VV))+":"+D,F=i7.get(_);if(F)return F;let q=this.options.loose,C=q?r[s.HYPHENRANGELOOSE]:r[s.HYPHENRANGE];D=D.replace(C,zV(this.options.includePrerelease)),S("hyphen replace",D),D=D.replace(r[s.COMPARATORTRIM],CV),S("comparator trim",D),D=D.replace(r[s.TILDETRIM],$V),S("tilde trim",D),D=D.replace(r[s.CARETTRIM],QV),S("caret trim",D);let $=D.split(" ").map((V)=>KV(V,this.options)).join(" ").split(/\s+/).map((V)=>AV(V,this.options));if(q)$=$.filter((V)=>{return S("loose invalid filter",V,this.options),!!V.match(r[s.COMPARATORLOOSE])});S("range list",$);let Q=new Map,J=$.map((V)=>new t6(V,this.options));for(let V of J){if(a7(V))return[V];Q.set(V.value,V)}if(Q.size>1&&Q.has(""))Q.delete("");let Z=[...Q.values()];return i7.set(_,Z),Z}intersects(D,u){if(!(D instanceof l2))throw TypeError("a Range is required");return this.set.some((_)=>{return s7(_,u)&&D.set.some((F)=>{return s7(F,u)&&_.every((q)=>{return F.every((C)=>{return q.intersects(C,u)})})})})}test(D){if(!D)return!1;if(typeof D==="string")try{D=new qV(D,this.options)}catch(u){return!1}for(let u=0;u<this.set.length;u++)if(LV(this.set[u],D,this.options))return!0;return!1}}n7.exports=l2;var _V=p7(),i7=new _V,FV=X3(),t6=c2(),S=f2(),qV=l(),{safeRe:r,t:s,comparatorTrimReplace:CV,tildeTrimReplace:$V,caretTrimReplace:QV}=F2(),{FLAG_INCLUDE_PRERELEASE:JV,FLAG_LOOSE:VV}=m2(),a7=(D)=>D.value==="<0.0.0-0",ZV=(D)=>D.value==="",s7=(D,u)=>{let _=!0,F=D.slice(),q=F.pop();while(_&&F.length)_=F.every((C)=>{return q.intersects(C,u)}),q=F.pop();return _},KV=(D,u)=>{return S("comp",D,u),D=GV(D,u),S("caret",D),D=XV(D,u),S("tildes",D),D=HV(D,u),S("xrange",D),D=WV(D,u),S("stars",D),D},n=(D)=>!D||D.toLowerCase()==="x"||D==="*",XV=(D,u)=>{return D.trim().split(/\s+/).map((_)=>BV(_,u)).join(" ")},BV=(D,u)=>{let _=u.loose?r[s.TILDELOOSE]:r[s.TILDE];return D.replace(_,(F,q,C,$,Q)=>{S("tilde",D,F,q,C,$,Q);let J;if(n(q))J="";else if(n(C))J=`>=${q}.0.0 <${+q+1}.0.0-0`;else if(n($))J=`>=${q}.${C}.0 <${q}.${+C+1}.0-0`;else if(Q)S("replaceTilde pr",Q),J=`>=${q}.${C}.${$}-${Q} <${q}.${+C+1}.0-0`;else J=`>=${q}.${C}.${$} <${q}.${+C+1}.0-0`;return S("tilde return",J),J})},GV=(D,u)=>{return D.trim().split(/\s+/).map((_)=>YV(_,u)).join(" ")},YV=(D,u)=>{S("caret",D,u);let _=u.loose?r[s.CARETLOOSE]:r[s.CARET],F=u.includePrerelease?"-0":"";return D.replace(_,(q,C,$,Q,J)=>{S("caret",D,q,C,$,Q,J);let Z;if(n(C))Z="";else if(n($))Z=`>=${C}.0.0${F} <${+C+1}.0.0-0`;else if(n(Q))if(C==="0")Z=`>=${C}.${$}.0${F} <${C}.${+$+1}.0-0`;else Z=`>=${C}.${$}.0${F} <${+C+1}.0.0-0`;else if(J)if(S("replaceCaret pr",J),C==="0")if($==="0")Z=`>=${C}.${$}.${Q}-${J} <${C}.${$}.${+Q+1}-0`;else Z=`>=${C}.${$}.${Q}-${J} <${C}.${+$+1}.0-0`;else Z=`>=${C}.${$}.${Q}-${J} <${+C+1}.0.0-0`;else if(S("no pr"),C==="0")if($==="0")Z=`>=${C}.${$}.${Q}${F} <${C}.${$}.${+Q+1}-0`;else Z=`>=${C}.${$}.${Q}${F} <${C}.${+$+1}.0-0`;else Z=`>=${C}.${$}.${Q} <${+C+1}.0.0-0`;return S("caret return",Z),Z})},HV=(D,u)=>{return S("replaceXRanges",D,u),D.split(/\s+/).map((_)=>xV(_,u)).join(" ")},xV=(D,u)=>{D=D.trim();let _=u.loose?r[s.XRANGELOOSE]:r[s.XRANGE];return D.replace(_,(F,q,C,$,Q,J)=>{S("xRange",D,F,q,C,$,Q,J);let Z=n(C),V=Z||n($),K=V||n(Q),X=K;if(q==="="&&X)q="";if(J=u.includePrerelease?"-0":"",Z)if(q===">"||q==="<")F="<0.0.0-0";else F="*";else if(q&&X){if(V)$=0;if(Q=0,q===">")if(q=">=",V)C=+C+1,$=0,Q=0;else $=+$+1,Q=0;else if(q==="<=")if(q="<",V)C=+C+1;else $=+$+1;if(q==="<")J="-0";F=`${q+C}.${$}.${Q}${J}`}else if(V)F=`>=${C}.0.0${J} <${+C+1}.0.0-0`;else if(K)F=`>=${C}.${$}.0${J} <${C}.${+$+1}.0-0`;return S("xRange return",F),F})},WV=(D,u)=>{return S("replaceStars",D,u),D.trim().replace(r[s.STAR],"")},AV=(D,u)=>{return S("replaceGTE0",D,u),D.trim().replace(r[u.includePrerelease?s.GTE0PRE:s.GTE0],"")},zV=(D)=>(u,_,F,q,C,$,Q,J,Z,V,K,X)=>{if(n(F))_="";else if(n(q))_=`>=${F}.0.0${D?"-0":""}`;else if(n(C))_=`>=${F}.${q}.0${D?"-0":""}`;else if($)_=`>=${_}`;else _=`>=${_}${D?"-0":""}`;if(n(Z))J="";else if(n(V))J=`<${+Z+1}.0.0-0`;else if(n(K))J=`<${Z}.${+V+1}.0-0`;else if(X)J=`<=${Z}.${V}.${K}-${X}`;else if(D)J=`<${Z}.${V}.${+K+1}-0`;else J=`<=${J}`;return`${_} ${J}`.trim()},LV=(D,u,_)=>{for(let F=0;F<D.length;F++)if(!D[F].test(u))return!1;if(u.prerelease.length&&!_.includePrerelease){for(let F=0;F<D.length;F++){if(S(D[F].semver),D[F].semver===t6.ANY)continue;if(D[F].semver.prerelease.length>0){let q=D[F].semver;if(q.major===u.major&&q.minor===u.minor&&q.patch===u.patch)return!0}}return!1}return!0}});var c2=G((MH,u4)=>{var p2=Symbol("SemVer ANY");class O3{static get ANY(){return p2}constructor(D,u){if(u=t7(u),D instanceof O3)if(D.loose===!!u.loose)return D;else D=D.value;if(D=D.trim().split(/\s+/).join(" "),r6("comparator",D,u),this.options=u,this.loose=!!u.loose,this.parse(D),this.semver===p2)this.value="";else this.value=this.operator+this.semver.version;r6("comp",this)}parse(D){let u=this.options.loose?o7[r7.COMPARATORLOOSE]:o7[r7.COMPARATOR],_=D.match(u);if(!_)throw TypeError(`Invalid comparator: ${D}`);if(this.operator=_[1]!==void 0?_[1]:"",this.operator==="=")this.operator="";if(!_[2])this.semver=p2;else this.semver=new e7(_[2],this.options.loose)}toString(){return this.value}test(D){if(r6("Comparator.test",D,this.options.loose),this.semver===p2||D===p2)return!0;if(typeof D==="string")try{D=new e7(D,this.options)}catch(u){return!1}return o6(D,this.operator,this.semver,this.options)}intersects(D,u){if(!(D instanceof O3))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new D4(D.value,u).test(this.value)}else if(D.operator===""){if(D.value==="")return!0;return new D4(this.value,u).test(D.semver)}if(u=t7(u),u.includePrerelease&&(this.value==="<0.0.0-0"||D.value==="<0.0.0-0"))return!1;if(!u.includePrerelease&&(this.value.startsWith("<0.0.0")||D.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&D.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&D.operator.startsWith("<"))return!0;if(this.semver.version===D.semver.version&&this.operator.includes("=")&&D.operator.includes("="))return!0;if(o6(this.semver,"<",D.semver,u)&&this.operator.startsWith(">")&&D.operator.startsWith("<"))return!0;if(o6(this.semver,">",D.semver,u)&&this.operator.startsWith("<")&&D.operator.startsWith(">"))return!0;return!1}}u4.exports=O3;var t7=X3(),{safeRe:o7,t:r7}=F2(),o6=n6(),r6=f2(),e7=l(),D4=ZD()});var i2=G((TH,_4)=>{var UV=ZD(),OV=(D,u,_)=>{try{u=new UV(u,_)}catch(F){return!1}return u.test(D)};_4.exports=OV});var q4=G((vH,F4)=>{var jV=ZD(),PV=(D,u)=>new jV(D,u).set.map((_)=>_.map((F)=>F.value).join(" ").trim().split(" "));F4.exports=PV});var $4=G((RH,C4)=>{var IV=l(),wV=ZD(),MV=(D,u,_)=>{let F=null,q=null,C=null;try{C=new wV(u,_)}catch($){return null}return D.forEach(($)=>{if(C.test($)){if(!F||q.compare($)===-1)F=$,q=new IV(F,_)}}),F};C4.exports=MV});var J4=G((NH,Q4)=>{var TV=l(),vV=ZD(),RV=(D,u,_)=>{let F=null,q=null,C=null;try{C=new vV(u,_)}catch($){return null}return D.forEach(($)=>{if(C.test($)){if(!F||q.compare($)===1)F=$,q=new TV(F,_)}}),F};Q4.exports=RV});var K4=G((SH,Z4)=>{var e6=l(),NV=ZD(),V4=d2(),SV=(D,u)=>{D=new NV(D,u);let _=new e6("0.0.0");if(D.test(_))return _;if(_=new e6("0.0.0-0"),D.test(_))return _;_=null;for(let F=0;F<D.set.length;++F){let q=D.set[F],C=null;if(q.forEach(($)=>{let Q=new e6($.semver.version);switch($.operator){case">":if(Q.prerelease.length===0)Q.patch++;else Q.prerelease.push(0);Q.raw=Q.format();case"":case">=":if(!C||V4(Q,C))C=Q;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${$.operator}`)}}),C&&(!_||V4(_,C)))_=C}if(_&&D.test(_))return _;return null};Z4.exports=SV});var B4=G((EH,X4)=>{var EV=ZD(),kV=(D,u)=>{try{return new EV(D,u).range||"*"}catch(_){return null}};X4.exports=kV});var j3=G((kH,x4)=>{var yV=l(),H4=c2(),{ANY:hV}=H4,bV=ZD(),gV=i2(),G4=d2(),Y4=W3(),mV=z3(),fV=A3(),dV=(D,u,_,F)=>{D=new yV(D,F),u=new bV(u,F);let q,C,$,Q,J;switch(_){case">":q=G4,C=mV,$=Y4,Q=">",J=">=";break;case"<":q=Y4,C=fV,$=G4,Q="<",J="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(gV(D,u,F))return!1;for(let Z=0;Z<u.set.length;++Z){let V=u.set[Z],K=null,X=null;if(V.forEach((B)=>{if(B.semver===hV)B=new H4(">=0.0.0");if(K=K||B,X=X||B,q(B.semver,K.semver,F))K=B;else if($(B.semver,X.semver,F))X=B}),K.operator===Q||K.operator===J)return!1;if((!X.operator||X.operator===Q)&&C(D,X.semver))return!1;else if(X.operator===J&&$(D,X.semver))return!1}return!0};x4.exports=dV});var A4=G((yH,W4)=>{var lV=j3(),cV=(D,u,_)=>lV(D,u,">",_);W4.exports=cV});var L4=G((hH,z4)=>{var pV=j3(),iV=(D,u,_)=>pV(D,u,"<",_);z4.exports=iV});var j4=G((bH,O4)=>{var U4=ZD(),aV=(D,u,_)=>{return D=new U4(D,_),u=new U4(u,_),D.intersects(u,_)};O4.exports=aV});var I4=G((gH,P4)=>{var sV=i2(),nV=VD();P4.exports=(D,u,_)=>{let F=[],q=null,C=null,$=D.sort((V,K)=>nV(V,K,_));for(let V of $)if(sV(V,u,_)){if(C=V,!q)q=V}else{if(C)F.push([q,C]);C=null,q=null}if(q)F.push([q,null]);let Q=[];for(let[V,K]of F)if(V===K)Q.push(V);else if(!K&&V===$[0])Q.push("*");else if(!K)Q.push(`>=${V}`);else if(V===$[0])Q.push(`<=${K}`);else Q.push(`${V} - ${K}`);let J=Q.join(" || "),Z=typeof u.raw==="string"?u.raw:String(u);return J.length<Z.length?J:u}});var N4=G((mH,R4)=>{var w4=ZD(),u1=c2(),{ANY:D1}=u1,a2=i2(),_1=VD(),tV=(D,u,_={})=>{if(D===u)return!0;D=new w4(D,_),u=new w4(u,_);let F=!1;D:for(let q of D.set){for(let C of u.set){let $=rV(q,C,_);if(F=F||$!==null,$)continue D}if(F)return!1}return!0},oV=[new u1(">=0.0.0-0")],M4=[new u1(">=0.0.0")],rV=(D,u,_)=>{if(D===u)return!0;if(D.length===1&&D[0].semver===D1)if(u.length===1&&u[0].semver===D1)return!0;else if(_.includePrerelease)D=oV;else D=M4;if(u.length===1&&u[0].semver===D1)if(_.includePrerelease)return!0;else u=M4;let F=new Set,q,C;for(let B of D)if(B.operator===">"||B.operator===">=")q=T4(q,B,_);else if(B.operator==="<"||B.operator==="<=")C=v4(C,B,_);else F.add(B.semver);if(F.size>1)return null;let $;if(q&&C){if($=_1(q.semver,C.semver,_),$>0)return null;else if($===0&&(q.operator!==">="||C.operator!=="<="))return null}for(let B of F){if(q&&!a2(B,String(q),_))return null;if(C&&!a2(B,String(C),_))return null;for(let L of u)if(!a2(B,String(L),_))return!1;return!0}let Q,J,Z,V,K=C&&!_.includePrerelease&&C.semver.prerelease.length?C.semver:!1,X=q&&!_.includePrerelease&&q.semver.prerelease.length?q.semver:!1;if(K&&K.prerelease.length===1&&C.operator==="<"&&K.prerelease[0]===0)K=!1;for(let B of u){if(V=V||B.operator===">"||B.operator===">=",Z=Z||B.operator==="<"||B.operator==="<=",q){if(X){if(B.semver.prerelease&&B.semver.prerelease.length&&B.semver.major===X.major&&B.semver.minor===X.minor&&B.semver.patch===X.patch)X=!1}if(B.operator===">"||B.operator===">="){if(Q=T4(q,B,_),Q===B&&Q!==q)return!1}else if(q.operator===">="&&!a2(q.semver,String(B),_))return!1}if(C){if(K){if(B.semver.prerelease&&B.semver.prerelease.length&&B.semver.major===K.major&&B.semver.minor===K.minor&&B.semver.patch===K.patch)K=!1}if(B.operator==="<"||B.operator==="<="){if(J=v4(C,B,_),J===B&&J!==C)return!1}else if(C.operator==="<="&&!a2(C.semver,String(B),_))return!1}if(!B.operator&&(C||q)&&$!==0)return!1}if(q&&Z&&!C&&$!==0)return!1;if(C&&V&&!q&&$!==0)return!1;if(X||K)return!1;return!0},T4=(D,u,_)=>{if(!D)return u;let F=_1(D.semver,u.semver,_);return F>0?D:F<0?u:u.operator===">"&&D.operator===">="?u:D},v4=(D,u,_)=>{if(!D)return u;let F=_1(D.semver,u.semver,_);return F<0?D:F>0?u:u.operator==="<"&&D.operator==="<="?u:D};R4.exports=tV});var y4=G((fH,k4)=>{var F1=F2(),S4=m2(),eV=l(),E4=i6(),DZ=R0(),uZ=C7(),_Z=Q7(),FZ=Z7(),qZ=B7(),CZ=Y7(),$Z=x7(),QZ=A7(),JZ=L7(),VZ=VD(),ZZ=P7(),KZ=w7(),XZ=x3(),BZ=R7(),GZ=S7(),YZ=d2(),HZ=W3(),xZ=a6(),WZ=s6(),AZ=A3(),zZ=z3(),LZ=n6(),UZ=d7(),OZ=c2(),jZ=ZD(),PZ=i2(),IZ=q4(),wZ=$4(),MZ=J4(),TZ=K4(),vZ=B4(),RZ=j3(),NZ=A4(),SZ=L4(),EZ=j4(),kZ=I4(),yZ=N4();k4.exports={parse:DZ,valid:uZ,clean:_Z,inc:FZ,diff:qZ,major:CZ,minor:$Z,patch:QZ,prerelease:JZ,compare:VZ,rcompare:ZZ,compareLoose:KZ,compareBuild:XZ,sort:BZ,rsort:GZ,gt:YZ,lt:HZ,eq:xZ,neq:WZ,gte:AZ,lte:zZ,cmp:LZ,coerce:UZ,Comparator:OZ,Range:jZ,satisfies:PZ,toComparators:IZ,maxSatisfying:wZ,minSatisfying:MZ,minVersion:TZ,validRange:vZ,outside:RZ,gtr:NZ,ltr:SZ,intersects:EZ,simplifyRange:kZ,subset:yZ,SemVer:eV,re:F1.re,src:F1.src,tokens:F1.t,SEMVER_SPEC_VERSION:S4.SEMVER_SPEC_VERSION,RELEASE_TYPES:S4.RELEASE_TYPES,compareIdentifiers:E4.compareIdentifiers,rcompareIdentifiers:E4.rcompareIdentifiers}});import sZ from"child_process";var R5=KD(I3(),1);import v5 from"path";import r$ from"fs";import N5 from"fs/promises";import y2 from"os";import LF from"events";import o from"fs";import{EventEmitter as N3}from"node:events";import H1 from"node:stream";import{StringDecoder as KF}from"node:string_decoder";var X1=typeof process==="object"&&process?process:{stdout:null,stderr:null},XF=(D)=>!!D&&typeof D==="object"&&(D instanceof DD||D instanceof H1||BF(D)||GF(D)),BF=(D)=>!!D&&typeof D==="object"&&D instanceof N3&&typeof D.pipe==="function"&&D.pipe!==H1.Writable.prototype.pipe,GF=(D)=>!!D&&typeof D==="object"&&D instanceof N3&&typeof D.write==="function"&&typeof D.end==="function",RD=Symbol("EOF"),ND=Symbol("maybeEmitEnd"),cD=Symbol("emittedEnd"),r2=Symbol("emittingEnd"),C2=Symbol("emittedError"),e2=Symbol("closed"),B1=Symbol("read"),Du=Symbol("flush"),G1=Symbol("flushChunk"),XD=Symbol("encoding"),S0=Symbol("decoder"),h=Symbol("flowing"),$2=Symbol("paused"),E0=Symbol("resume"),b=Symbol("buffer"),i=Symbol("pipes"),g=Symbol("bufferLength"),w3=Symbol("bufferPush"),uu=Symbol("bufferShift"),f=Symbol("objectMode"),k=Symbol("destroyed"),M3=Symbol("error"),T3=Symbol("emitData"),Y1=Symbol("emitEnd"),v3=Symbol("emitEnd2"),zD=Symbol("async"),R3=Symbol("abort"),_u=Symbol("aborted"),Q2=Symbol("signal"),V0=Symbol("dataListeners"),e=Symbol("discarded"),J2=(D)=>Promise.resolve().then(D),YF=(D)=>D(),HF=(D)=>D==="end"||D==="finish"||D==="prefinish",xF=(D)=>D instanceof ArrayBuffer||!!D&&typeof D==="object"&&D.constructor&&D.constructor.name==="ArrayBuffer"&&D.byteLength>=0,WF=(D)=>!Buffer.isBuffer(D)&&ArrayBuffer.isView(D);class S3{src;dest;opts;ondrain;constructor(D,u,_){this.src=D,this.dest=u,this.opts=_,this.ondrain=()=>D[E0](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(D){}end(){if(this.unpipe(),this.opts.end)this.dest.end()}}class x1 extends S3{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(D,u,_){super(D,u,_);this.proxyErrors=(F)=>u.emit("error",F),D.on("error",this.proxyErrors)}}var AF=(D)=>!!D.objectMode,zF=(D)=>!D.objectMode&&!!D.encoding&&D.encoding!=="buffer";class DD extends N3{[h]=!1;[$2]=!1;[i]=[];[b]=[];[f];[XD];[zD];[S0];[RD]=!1;[cD]=!1;[r2]=!1;[e2]=!1;[C2]=null;[g]=0;[k]=!1;[Q2];[_u]=!1;[V0]=0;[e]=!1;writable=!0;readable=!0;constructor(...D){let u=D[0]||{};super();if(u.objectMode&&typeof u.encoding==="string")throw TypeError("Encoding and objectMode may not be used together");if(AF(u))this[f]=!0,this[XD]=null;else if(zF(u))this[XD]=u.encoding,this[f]=!1;else this[f]=!1,this[XD]=null;if(this[zD]=!!u.async,this[S0]=this[XD]?new KF(this[XD]):null,u&&u.debugExposeBuffer===!0)Object.defineProperty(this,"buffer",{get:()=>this[b]});if(u&&u.debugExposePipes===!0)Object.defineProperty(this,"pipes",{get:()=>this[i]});let{signal:_}=u;if(_)if(this[Q2]=_,_.aborted)this[R3]();else _.addEventListener("abort",()=>this[R3]())}get bufferLength(){return this[g]}get encoding(){return this[XD]}set encoding(D){throw Error("Encoding must be set at instantiation time")}setEncoding(D){throw Error("Encoding must be set at instantiation time")}get objectMode(){return this[f]}set objectMode(D){throw Error("objectMode must be set at instantiation time")}get["async"](){return this[zD]}set["async"](D){this[zD]=this[zD]||!!D}[R3](){this[_u]=!0,this.emit("abort",this[Q2]?.reason),this.destroy(this[Q2]?.reason)}get aborted(){return this[_u]}set aborted(D){}write(D,u,_){if(this[_u])return!1;if(this[RD])throw Error("write after end");if(this[k])return this.emit("error",Object.assign(Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;if(typeof u==="function")_=u,u="utf8";if(!u)u="utf8";let F=this[zD]?J2:YF;if(!this[f]&&!Buffer.isBuffer(D)){if(WF(D))D=Buffer.from(D.buffer,D.byteOffset,D.byteLength);else if(xF(D))D=Buffer.from(D);else if(typeof D!=="string")throw Error("Non-contiguous data written to non-objectMode stream")}if(this[f]){if(this[h]&&this[g]!==0)this[Du](!0);if(this[h])this.emit("data",D);else this[w3](D);if(this[g]!==0)this.emit("readable");if(_)F(_);return this[h]}if(!D.length){if(this[g]!==0)this.emit("readable");if(_)F(_);return this[h]}if(typeof D==="string"&&!(u===this[XD]&&!this[S0]?.lastNeed))D=Buffer.from(D,u);if(Buffer.isBuffer(D)&&this[XD])D=this[S0].write(D);if(this[h]&&this[g]!==0)this[Du](!0);if(this[h])this.emit("data",D);else this[w3](D);if(this[g]!==0)this.emit("readable");if(_)F(_);return this[h]}read(D){if(this[k])return null;if(this[e]=!1,this[g]===0||D===0||D&&D>this[g])return this[ND](),null;if(this[f])D=null;if(this[b].length>1&&!this[f])this[b]=[this[XD]?this[b].join(""):Buffer.concat(this[b],this[g])];let u=this[B1](D||null,this[b][0]);return this[ND](),u}[B1](D,u){if(this[f])this[uu]();else{let _=u;if(D===_.length||D===null)this[uu]();else if(typeof _==="string")this[b][0]=_.slice(D),u=_.slice(0,D),this[g]-=D;else this[b][0]=_.subarray(D),u=_.subarray(0,D),this[g]-=D}if(this.emit("data",u),!this[b].length&&!this[RD])this.emit("drain");return u}end(D,u,_){if(typeof D==="function")_=D,D=void 0;if(typeof u==="function")_=u,u="utf8";if(D!==void 0)this.write(D,u);if(_)this.once("end",_);if(this[RD]=!0,this.writable=!1,this[h]||!this[$2])this[ND]();return this}[E0](){if(this[k])return;if(!this[V0]&&!this[i].length)this[e]=!0;if(this[$2]=!1,this[h]=!0,this.emit("resume"),this[b].length)this[Du]();else if(this[RD])this[ND]();else this.emit("drain")}resume(){return this[E0]()}pause(){this[h]=!1,this[$2]=!0,this[e]=!1}get destroyed(){return this[k]}get flowing(){return this[h]}get paused(){return this[$2]}[w3](D){if(this[f])this[g]+=1;else this[g]+=D.length;this[b].push(D)}[uu](){if(this[f])this[g]-=1;else this[g]-=this[b][0].length;return this[b].shift()}[Du](D=!1){do;while(this[G1](this[uu]())&&this[b].length);if(!D&&!this[b].length&&!this[RD])this.emit("drain")}[G1](D){return this.emit("data",D),this[h]}pipe(D,u){if(this[k])return D;this[e]=!1;let _=this[cD];if(u=u||{},D===X1.stdout||D===X1.stderr)u.end=!1;else u.end=u.end!==!1;if(u.proxyErrors=!!u.proxyErrors,_){if(u.end)D.end()}else if(this[i].push(!u.proxyErrors?new S3(this,D,u):new x1(this,D,u)),this[zD])J2(()=>this[E0]());else this[E0]();return D}unpipe(D){let u=this[i].find((_)=>_.dest===D);if(u){if(this[i].length===1){if(this[h]&&this[V0]===0)this[h]=!1;this[i]=[]}else this[i].splice(this[i].indexOf(u),1);u.unpipe()}}addListener(D,u){return this.on(D,u)}on(D,u){let _=super.on(D,u);if(D==="data"){if(this[e]=!1,this[V0]++,!this[i].length&&!this[h])this[E0]()}else if(D==="readable"&&this[g]!==0)super.emit("readable");else if(HF(D)&&this[cD])super.emit(D),this.removeAllListeners(D);else if(D==="error"&&this[C2]){let F=u;if(this[zD])J2(()=>F.call(this,this[C2]));else F.call(this,this[C2])}return _}removeListener(D,u){return this.off(D,u)}off(D,u){let _=super.off(D,u);if(D==="data"){if(this[V0]=this.listeners("data").length,this[V0]===0&&!this[e]&&!this[i].length)this[h]=!1}return _}removeAllListeners(D){let u=super.removeAllListeners(D);if(D==="data"||D===void 0){if(this[V0]=0,!this[e]&&!this[i].length)this[h]=!1}return u}get emittedEnd(){return this[cD]}[ND](){if(!this[r2]&&!this[cD]&&!this[k]&&this[b].length===0&&this[RD]){if(this[r2]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[e2])this.emit("close");this[r2]=!1}}emit(D,...u){let _=u[0];if(D!=="error"&&D!=="close"&&D!==k&&this[k])return!1;else if(D==="data")return!this[f]&&!_?!1:this[zD]?(J2(()=>this[T3](_)),!0):this[T3](_);else if(D==="end")return this[Y1]();else if(D==="close"){if(this[e2]=!0,!this[cD]&&!this[k])return!1;let q=super.emit("close");return this.removeAllListeners("close"),q}else if(D==="error"){this[C2]=_,super.emit(M3,_);let q=!this[Q2]||this.listeners("error").length?super.emit("error",_):!1;return this[ND](),q}else if(D==="resume"){let q=super.emit("resume");return this[ND](),q}else if(D==="finish"||D==="prefinish"){let q=super.emit(D);return this.removeAllListeners(D),q}let F=super.emit(D,...u);return this[ND](),F}[T3](D){for(let _ of this[i])if(_.dest.write(D)===!1)this.pause();let u=this[e]?!1:super.emit("data",D);return this[ND](),u}[Y1](){if(this[cD])return!1;return this[cD]=!0,this.readable=!1,this[zD]?(J2(()=>this[v3]()),!0):this[v3]()}[v3](){if(this[S0]){let u=this[S0].end();if(u){for(let _ of this[i])_.dest.write(u);if(!this[e])super.emit("data",u)}}for(let u of this[i])u.end();let D=super.emit("end");return this.removeAllListeners("end"),D}async collect(){let D=Object.assign([],{dataLength:0});if(!this[f])D.dataLength=0;let u=this.promise();return this.on("data",(_)=>{if(D.push(_),!this[f])D.dataLength+=_.length}),await u,D}async concat(){if(this[f])throw Error("cannot concat in objectMode");let D=await this.collect();return this[XD]?D.join(""):Buffer.concat(D,D.dataLength)}async promise(){return new Promise((D,u)=>{this.on(k,()=>u(Error("stream destroyed"))),this.on("error",(_)=>u(_)),this.on("end",()=>D())})}[Symbol.asyncIterator](){this[e]=!1;let D=!1,u=async()=>{return this.pause(),D=!0,{value:void 0,done:!0}};return{next:()=>{if(D)return u();let F=this.read();if(F!==null)return Promise.resolve({done:!1,value:F});if(this[RD])return u();let q,C,$=(V)=>{this.off("data",Q),this.off("end",J),this.off(k,Z),u(),C(V)},Q=(V)=>{this.off("error",$),this.off("end",J),this.off(k,Z),this.pause(),q({value:V,done:!!this[RD]})},J=()=>{this.off("error",$),this.off("data",Q),this.off(k,Z),u(),q({done:!0,value:void 0})},Z=()=>$(Error("stream destroyed"));return new Promise((V,K)=>{C=K,q=V,this.once(k,Z),this.once("error",$),this.once("end",J),this.once("data",Q)})},throw:u,return:u,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[e]=!1;let D=!1,u=()=>{return this.pause(),this.off(M3,u),this.off(k,u),this.off("end",u),D=!0,{done:!0,value:void 0}},_=()=>{if(D)return u();let F=this.read();return F===null?u():{done:!1,value:F}};return this.once("end",u),this.once(M3,u),this.once(k,u),{next:_,throw:u,return:u,[Symbol.iterator](){return this}}}destroy(D){if(this[k]){if(D)this.emit("error",D);else this.emit(k);return this}this[k]=!0,this[e]=!0,this[b].length=0,this[g]=0;let u=this;if(typeof u.close==="function"&&!this[e2])u.close();if(D)this.emit("error",D);else this.emit(k);return this}static get isStream(){return XF}}var UF=o.writev,iD=Symbol("_autoClose"),GD=Symbol("_close"),V2=Symbol("_ended"),v=Symbol("_fd"),E3=Symbol("_finished"),ED=Symbol("_flags"),k3=Symbol("_flush"),g3=Symbol("_handleChunk"),m3=Symbol("_makeBuf"),K2=Symbol("_mode"),Fu=Symbol("_needDrain"),h0=Symbol("_onerror"),b0=Symbol("_onopen"),y3=Symbol("_onread"),k0=Symbol("_onwrite"),aD=Symbol("_open"),BD=Symbol("_path"),pD=Symbol("_pos"),LD=Symbol("_queue"),y0=Symbol("_read"),h3=Symbol("_readSize"),SD=Symbol("_reading"),Z2=Symbol("_remain"),b3=Symbol("_size"),qu=Symbol("_write"),Z0=Symbol("_writing"),Cu=Symbol("_defaultFlag"),K0=Symbol("_errored");class g0 extends DD{[K0]=!1;[v];[BD];[h3];[SD]=!1;[b3];[Z2];[iD];constructor(D,u){u=u||{};super(u);if(this.readable=!0,this.writable=!1,typeof D!=="string")throw TypeError("path must be a string");if(this[K0]=!1,this[v]=typeof u.fd==="number"?u.fd:void 0,this[BD]=D,this[h3]=u.readSize||16777216,this[SD]=!1,this[b3]=typeof u.size==="number"?u.size:1/0,this[Z2]=this[b3],this[iD]=typeof u.autoClose==="boolean"?u.autoClose:!0,typeof this[v]==="number")this[y0]();else this[aD]()}get fd(){return this[v]}get path(){return this[BD]}write(){throw TypeError("this is a readable stream")}end(){throw TypeError("this is a readable stream")}[aD](){o.open(this[BD],"r",(D,u)=>this[b0](D,u))}[b0](D,u){if(D)this[h0](D);else this[v]=u,this.emit("open",u),this[y0]()}[m3](){return Buffer.allocUnsafe(Math.min(this[h3],this[Z2]))}[y0](){if(!this[SD]){this[SD]=!0;let D=this[m3]();if(D.length===0)return process.nextTick(()=>this[y3](null,0,D));o.read(this[v],D,0,D.length,null,(u,_,F)=>this[y3](u,_,F))}}[y3](D,u,_){if(this[SD]=!1,D)this[h0](D);else if(this[g3](u,_))this[y0]()}[GD](){if(this[iD]&&typeof this[v]==="number"){let D=this[v];this[v]=void 0,o.close(D,(u)=>u?this.emit("error",u):this.emit("close"))}}[h0](D){this[SD]=!0,this[GD](),this.emit("error",D)}[g3](D,u){let _=!1;if(this[Z2]-=D,D>0)_=super.write(D<u.length?u.subarray(0,D):u);if(D===0||this[Z2]<=0)_=!1,this[GD](),super.end();return _}emit(D,...u){switch(D){case"prefinish":case"finish":return!1;case"drain":if(typeof this[v]==="number")this[y0]();return!1;case"error":if(this[K0])return!1;return this[K0]=!0,super.emit(D,...u);default:return super.emit(D,...u)}}}class f3 extends g0{[aD](){let D=!0;try{this[b0](null,o.openSync(this[BD],"r")),D=!1}finally{if(D)this[GD]()}}[y0](){let D=!0;try{if(!this[SD]){this[SD]=!0;do{let u=this[m3](),_=u.length===0?0:o.readSync(this[v],u,0,u.length,null);if(!this[g3](_,u))break}while(!0);this[SD]=!1}D=!1}finally{if(D)this[GD]()}}[GD](){if(this[iD]&&typeof this[v]==="number"){let D=this[v];this[v]=void 0,o.closeSync(D),this.emit("close")}}}class sD extends LF{readable=!1;writable=!0;[K0]=!1;[Z0]=!1;[V2]=!1;[LD]=[];[Fu]=!1;[BD];[K2];[iD];[v];[Cu];[ED];[E3]=!1;[pD];constructor(D,u){u=u||{};super(u);this[BD]=D,this[v]=typeof u.fd==="number"?u.fd:void 0,this[K2]=u.mode===void 0?438:u.mode,this[pD]=typeof u.start==="number"?u.start:void 0,this[iD]=typeof u.autoClose==="boolean"?u.autoClose:!0;let _=this[pD]!==void 0?"r+":"w";if(this[Cu]=u.flags===void 0,this[ED]=u.flags===void 0?_:u.flags,this[v]===void 0)this[aD]()}emit(D,...u){if(D==="error"){if(this[K0])return!1;this[K0]=!0}return super.emit(D,...u)}get fd(){return this[v]}get path(){return this[BD]}[h0](D){this[GD](),this[Z0]=!0,this.emit("error",D)}[aD](){o.open(this[BD],this[ED],this[K2],(D,u)=>this[b0](D,u))}[b0](D,u){if(this[Cu]&&this[ED]==="r+"&&D&&D.code==="ENOENT")this[ED]="w",this[aD]();else if(D)this[h0](D);else if(this[v]=u,this.emit("open",u),!this[Z0])this[k3]()}end(D,u){if(D)this.write(D,u);if(this[V2]=!0,!this[Z0]&&!this[LD].length&&typeof this[v]==="number")this[k0](null,0);return this}write(D,u){if(typeof D==="string")D=Buffer.from(D,u);if(this[V2])return this.emit("error",Error("write() after end()")),!1;if(this[v]===void 0||this[Z0]||this[LD].length)return this[LD].push(D),this[Fu]=!0,!1;return this[Z0]=!0,this[qu](D),!0}[qu](D){o.write(this[v],D,0,D.length,this[pD],(u,_)=>this[k0](u,_))}[k0](D,u){if(D)this[h0](D);else{if(this[pD]!==void 0&&typeof u==="number")this[pD]+=u;if(this[LD].length)this[k3]();else if(this[Z0]=!1,this[V2]&&!this[E3])this[E3]=!0,this[GD](),this.emit("finish");else if(this[Fu])this[Fu]=!1,this.emit("drain")}}[k3](){if(this[LD].length===0){if(this[V2])this[k0](null,0)}else if(this[LD].length===1)this[qu](this[LD].pop());else{let D=this[LD];this[LD]=[],UF(this[v],D,this[pD],(u,_)=>this[k0](u,_))}}[GD](){if(this[iD]&&typeof this[v]==="number"){let D=this[v];this[v]=void 0,o.close(D,(u)=>u?this.emit("error",u):this.emit("close"))}}}class X2 extends sD{[aD](){let D;if(this[Cu]&&this[ED]==="r+")try{D=o.openSync(this[BD],this[ED],this[K2])}catch(u){if(u?.code==="ENOENT")return this[ED]="w",this[aD]();else throw u}else D=o.openSync(this[BD],this[ED],this[K2]);this[b0](null,D)}[GD](){if(this[iD]&&typeof this[v]==="number"){let D=this[v];this[v]=void 0,o.closeSync(D),this.emit("close")}}[qu](D){let u=!0;try{this[k0](null,o.writeSync(this[v],D,0,D.length,this[pD])),u=!1}finally{if(u)try{this[GD]()}catch{}}}}import o1 from"node:path";import d0 from"node:fs";import{dirname as eF,parse as Dq}from"path";var OF=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"]]),W1=(D)=>!!D.sync&&!!D.file,A1=(D)=>!D.sync&&!!D.file,z1=(D)=>!!D.sync&&!D.file,L1=(D)=>!D.sync&&!D.file;var U1=(D)=>!!D.file;var jF=(D)=>{let u=OF.get(D);if(u)return u;return D},B2=(D={})=>{if(!D)return{};let u={};for(let[_,F]of Object.entries(D)){let q=jF(_);u[q]=F}if(u.chmod===void 0&&u.noChmod===!1)u.chmod=!0;return delete u.noChmod,u};var UD=(D,u,_,F,q)=>{return Object.assign((C=[],$,Q)=>{if(Array.isArray(C))$=C,C={};if(typeof $==="function")Q=$,$=void 0;if(!$)$=[];else $=Array.from($);let J=B2(C);if(q?.(J,$),W1(J)){if(typeof Q==="function")throw TypeError("callback not supported for sync tar functions");return D(J,$)}else if(A1(J)){let Z=u(J,$),V=Q?Q:void 0;return V?Z.then(()=>V(),V):Z}else if(z1(J)){if(typeof Q==="function")throw TypeError("callback not supported for sync tar functions");return _(J,$)}else if(L1(J)){if(typeof Q==="function")throw TypeError("callback only supported with file option");return F(J,$)}else throw Error("impossible options??")},{syncFile:D,asyncFile:u,syncNoFile:_,asyncNoFile:F,validate:q})};import{EventEmitter as nF}from"events";import p3 from"assert";import{Buffer as X0}from"buffer";import*as O1 from"zlib";import PF from"zlib";var IF=PF.constants||{ZLIB_VERNUM:4736},qD=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},IF));var wF=X0.concat,j1=Object.getOwnPropertyDescriptor(X0,"concat"),MF=(D)=>D,l3=j1?.writable===!0||j1?.set!==void 0?(D)=>{X0.concat=D?MF:wF}:(D)=>{},B0=Symbol("_superWrite");class G2 extends Error{code;errno;constructor(D,u){super("zlib: "+D.message,{cause:D});if(this.code=D.code,this.errno=D.errno,!this.code)this.code="ZLIB_ERROR";this.message="zlib: "+D.message,Error.captureStackTrace(this,u??this.constructor)}get name(){return"ZlibError"}}var c3=Symbol("flushFlag");class $u extends DD{#D=!1;#_=!1;#u;#$;#C;#F;#q;get sawError(){return this.#D}get handle(){return this.#F}get flushFlag(){return this.#u}constructor(D,u){if(!D||typeof D!=="object")throw TypeError("invalid options for ZlibBase constructor");super(D);if(this.#u=D.flush??0,this.#$=D.finishFlush??0,this.#C=D.fullFlushFlag??0,typeof O1[u]!=="function")throw TypeError("Compression method not supported: "+u);try{this.#F=new O1[u](D)}catch(_){throw new G2(_,this.constructor)}this.#q=(_)=>{if(this.#D)return;this.#D=!0,this.close(),this.emit("error",_)},this.#F?.on("error",(_)=>this.#q(new G2(_))),this.once("end",()=>this.close)}close(){if(this.#F)this.#F.close(),this.#F=void 0,this.emit("close")}reset(){if(!this.#D)return p3(this.#F,"zlib binding closed"),this.#F.reset?.()}flush(D){if(this.ended)return;if(typeof D!=="number")D=this.#C;this.write(Object.assign(X0.alloc(0),{[c3]:D}))}end(D,u,_){if(typeof D==="function")_=D,u=void 0,D=void 0;if(typeof u==="function")_=u,u=void 0;if(D)if(u)this.write(D,u);else this.write(D);return this.flush(this.#$),this.#_=!0,super.end(_)}get ended(){return this.#_}[B0](D){return super.write(D)}write(D,u,_){if(typeof u==="function")_=u,u="utf8";if(typeof D==="string")D=X0.from(D,u);if(this.#D)return;p3(this.#F,"zlib binding closed");let F=this.#F._handle,q=F.close;F.close=()=>{};let C=this.#F.close;this.#F.close=()=>{},l3(!0);let $=void 0;try{let J=typeof D[c3]==="number"?D[c3]:this.#u;$=this.#F._processChunk(D,J),l3(!1)}catch(J){l3(!1),this.#q(new G2(J,this.write))}finally{if(this.#F)this.#F._handle=F,F.close=q,this.#F.close=C,this.#F.removeAllListeners("error")}if(this.#F)this.#F.on("error",(J)=>this.#q(new G2(J,this.write)));let Q;if($)if(Array.isArray($)&&$.length>0){let J=$[0];Q=this[B0](X0.from(J));for(let Z=1;Z<$.length;Z++)Q=this[B0]($[Z])}else Q=this[B0](X0.from($));if(_)_();return Q}}class i3 extends $u{#D;#_;constructor(D,u){D=D||{},D.flush=D.flush||qD.Z_NO_FLUSH,D.finishFlush=D.finishFlush||qD.Z_FINISH,D.fullFlushFlag=qD.Z_FULL_FLUSH;super(D,u);this.#D=D.level,this.#_=D.strategy}params(D,u){if(this.sawError)return;if(!this.handle)throw Error("cannot switch params when binding is closed");if(!this.handle.params)throw Error("not supported in this implementation");if(this.#D!==D||this.#_!==u){this.flush(qD.Z_SYNC_FLUSH),p3(this.handle,"zlib binding closed");let _=this.handle.flush;this.handle.flush=(F,q)=>{if(typeof F==="function")q=F,F=this.flushFlag;this.flush(F),q?.()};try{this.handle.params(D,u)}finally{this.handle.flush=_}if(this.handle)this.#D=D,this.#_=u}}}class a3 extends i3{#D;constructor(D){super(D,"Gzip");this.#D=D&&!!D.portable}[B0](D){if(!this.#D)return super[B0](D);return this.#D=!1,D[9]=255,super[B0](D)}}class s3 extends i3{constructor(D){super(D,"Unzip")}}class n3 extends $u{constructor(D,u){D=D||{},D.flush=D.flush||qD.BROTLI_OPERATION_PROCESS,D.finishFlush=D.finishFlush||qD.BROTLI_OPERATION_FINISH,D.fullFlushFlag=qD.BROTLI_OPERATION_FLUSH;super(D,u)}}class t3 extends n3{constructor(D){super(D,"BrotliCompress")}}class o3 extends n3{constructor(D){super(D,"BrotliDecompress")}}class r3 extends $u{constructor(D,u){D=D||{},D.flush=D.flush||qD.ZSTD_e_continue,D.finishFlush=D.finishFlush||qD.ZSTD_e_end,D.fullFlushFlag=qD.ZSTD_e_flush;super(D,u)}}class e3 extends r3{constructor(D){super(D,"ZstdCompress")}}class D8 extends r3{constructor(D){super(D,"ZstdDecompress")}}import{posix as m0}from"node:path";var P1=(D,u)=>{if(!Number.isSafeInteger(D))throw Error("cannot encode number outside of javascript safe integer range");else if(D<0)RF(D,u);else vF(D,u);return u},vF=(D,u)=>{u[0]=128;for(var _=u.length;_>1;_--)u[_-1]=D&255,D=Math.floor(D/256)},RF=(D,u)=>{u[0]=255;var _=!1;D=D*-1;for(var F=u.length;F>1;F--){var q=D&255;if(D=Math.floor(D/256),_)u[F-1]=w1(q);else if(q===0)u[F-1]=0;else _=!0,u[F-1]=M1(q)}},I1=(D)=>{let u=D[0],_=u===128?SF(D.subarray(1,D.length)):u===255?NF(D):null;if(_===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(_))throw Error("parsed number outside of javascript safe integer range");return _},NF=(D)=>{var u=D.length,_=0,F=!1;for(var q=u-1;q>-1;q--){var C=Number(D[q]),$;if(F)$=w1(C);else if(C===0)$=C;else F=!0,$=M1(C);if($!==0)_-=$*Math.pow(256,u-q-1)}return _},SF=(D)=>{var u=D.length,_=0;for(var F=u-1;F>-1;F--){var q=Number(D[F]);if(q!==0)_+=q*Math.pow(256,u-F-1)}return _},w1=(D)=>(255^D)&255,M1=(D)=>(255^D)+1&255;var Qu=(D)=>Ju.has(D);var Ju=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"]]),T1=new Map(Array.from(Ju).map((D)=>[D[1],D[0]]));class CD{cksumValid=!1;needPax=!1;nullBlock=!1;block;path;mode;uid;gid;size;cksum;#D="Unsupported";linkpath;uname;gname;devmaj=0;devmin=0;atime;ctime;mtime;charset;comment;constructor(D,u=0,_,F){if(Buffer.isBuffer(D))this.decode(D,u||0,_,F);else if(D)this.#_(D)}decode(D,u,_,F){if(!u)u=0;if(!D||!(D.length>=u+512))throw Error("need 512 bytes for header");if(this.path=_?.path??G0(D,u,100),this.mode=_?.mode??F?.mode??nD(D,u+100,8),this.uid=_?.uid??F?.uid??nD(D,u+108,8),this.gid=_?.gid??F?.gid??nD(D,u+116,8),this.size=_?.size??F?.size??nD(D,u+124,12),this.mtime=_?.mtime??F?.mtime??u8(D,u+136,12),this.cksum=nD(D,u+148,12),F)this.#_(F,!0);if(_)this.#_(_);let q=G0(D,u+156,1);if(Qu(q))this.#D=q||"0";if(this.#D==="0"&&this.path.slice(-1)==="/")this.#D="5";if(this.#D==="5")this.size=0;if(this.linkpath=G0(D,u+157,100),D.subarray(u+257,u+265).toString()==="ustar\x0000")if(this.uname=_?.uname??F?.uname??G0(D,u+265,32),this.gname=_?.gname??F?.gname??G0(D,u+297,32),this.devmaj=_?.devmaj??F?.devmaj??nD(D,u+329,8)??0,this.devmin=_?.devmin??F?.devmin??nD(D,u+337,8)??0,D[u+475]!==0){let $=G0(D,u+345,155);this.path=$+"/"+this.path}else{let $=G0(D,u+345,130);if($)this.path=$+"/"+this.path;this.atime=_?.atime??F?.atime??u8(D,u+476,12),this.ctime=_?.ctime??F?.ctime??u8(D,u+488,12)}let C=256;for(let $=u;$<u+148;$++)C+=D[$];for(let $=u+156;$<u+512;$++)C+=D[$];if(this.cksumValid=C===this.cksum,this.cksum===void 0&&C===256)this.nullBlock=!0}#_(D,u=!1){Object.assign(this,Object.fromEntries(Object.entries(D).filter(([_,F])=>{return!(F===null||F===void 0||_==="path"&&u||_==="linkpath"&&u||_==="global")})))}encode(D,u=0){if(!D)D=this.block=Buffer.alloc(512);if(this.#D==="Unsupported")this.#D="0";if(!(D.length>=u+512))throw Error("need 512 bytes for header");let _=this.ctime||this.atime?130:155,F=kF(this.path||"",_),q=F[0],C=F[1];if(this.needPax=!!F[2],this.needPax=Y0(D,u,100,q)||this.needPax,this.needPax=tD(D,u+100,8,this.mode)||this.needPax,this.needPax=tD(D,u+108,8,this.uid)||this.needPax,this.needPax=tD(D,u+116,8,this.gid)||this.needPax,this.needPax=tD(D,u+124,12,this.size)||this.needPax,this.needPax=_8(D,u+136,12,this.mtime)||this.needPax,D[u+156]=this.#D.charCodeAt(0),this.needPax=Y0(D,u+157,100,this.linkpath)||this.needPax,D.write("ustar\x0000",u+257,8),this.needPax=Y0(D,u+265,32,this.uname)||this.needPax,this.needPax=Y0(D,u+297,32,this.gname)||this.needPax,this.needPax=tD(D,u+329,8,this.devmaj)||this.needPax,this.needPax=tD(D,u+337,8,this.devmin)||this.needPax,this.needPax=Y0(D,u+345,_,C)||this.needPax,D[u+475]!==0)this.needPax=Y0(D,u+345,155,C)||this.needPax;else this.needPax=Y0(D,u+345,130,C)||this.needPax,this.needPax=_8(D,u+476,12,this.atime)||this.needPax,this.needPax=_8(D,u+488,12,this.ctime)||this.needPax;let $=256;for(let Q=u;Q<u+148;Q++)$+=D[Q];for(let Q=u+156;Q<u+512;Q++)$+=D[Q];return this.cksum=$,tD(D,u+148,8,this.cksum),this.cksumValid=!0,this.needPax}get type(){return this.#D==="Unsupported"?this.#D:Ju.get(this.#D)}get typeKey(){return this.#D}set type(D){let u=String(T1.get(D));if(Qu(u)||u==="Unsupported")this.#D=u;else if(Qu(D))this.#D=D;else throw TypeError("invalid entry type: "+D)}}var kF=(D,u)=>{let F=D,q="",C=void 0,$=m0.parse(D).root||".";if(Buffer.byteLength(F)<100)C=[F,q,!1];else{q=m0.dirname(F),F=m0.basename(F);do if(Buffer.byteLength(F)<=100&&Buffer.byteLength(q)<=u)C=[F,q,!1];else if(Buffer.byteLength(F)>100&&Buffer.byteLength(q)<=u)C=[F.slice(0,99),q,!0];else F=m0.join(m0.basename(q),F),q=m0.dirname(q);while(q!==$&&C===void 0);if(!C)C=[D.slice(0,99),"",!0]}return C},G0=(D,u,_)=>D.subarray(u,u+_).toString("utf8").replace(/\0.*/,""),u8=(D,u,_)=>yF(nD(D,u,_)),yF=(D)=>D===void 0?void 0:new Date(D*1000),nD=(D,u,_)=>Number(D[u])&128?I1(D.subarray(u,u+_)):bF(D,u,_),hF=(D)=>isNaN(D)?void 0:D,bF=(D,u,_)=>hF(parseInt(D.subarray(u,u+_).toString("utf8").replace(/\0.*$/,"").trim(),8)),gF={12:8589934591,8:2097151},tD=(D,u,_,F)=>F===void 0?!1:F>gF[_]||F<0?(P1(F,D.subarray(u,u+_)),!0):(mF(D,u,_,F),!1),mF=(D,u,_,F)=>D.write(fF(F,_),u,_,"ascii"),fF=(D,u)=>dF(Math.floor(D).toString(8),u),dF=(D,u)=>(D.length===u-1?D:Array(u-D.length-1).join("0")+D+" ")+"\x00",_8=(D,u,_,F)=>F===void 0?!1:tD(D,u,_,F.getTime()/1000),lF=Array(156).join("\x00"),Y0=(D,u,_,F)=>F===void 0?!1:(D.write(F+lF,u,_,"utf8"),F.length!==Buffer.byteLength(F)||F.length>_);import{basename as cF}from"node:path";class oD{atime;mtime;ctime;charset;comment;gid;uid;gname;uname;linkpath;dev;ino;nlink;path;size;mode;global;constructor(D,u=!1){this.atime=D.atime,this.charset=D.charset,this.comment=D.comment,this.ctime=D.ctime,this.dev=D.dev,this.gid=D.gid,this.global=u,this.gname=D.gname,this.ino=D.ino,this.linkpath=D.linkpath,this.mtime=D.mtime,this.nlink=D.nlink,this.path=D.path,this.size=D.size,this.uid=D.uid,this.uname=D.uname}encode(){let D=this.encodeBody();if(D==="")return Buffer.allocUnsafe(0);let u=Buffer.byteLength(D),_=512*Math.ceil(1+u/512),F=Buffer.allocUnsafe(_);for(let q=0;q<512;q++)F[q]=0;new CD({path:("PaxHeader/"+cF(this.path??"")).slice(0,99),mode:this.mode||420,uid:this.uid,gid:this.gid,size:u,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(F),F.write(D,512,u,"utf8");for(let q=u+512;q<F.length;q++)F[q]=0;return F}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(D){if(this[D]===void 0)return"";let u=this[D],_=u instanceof Date?u.getTime()/1000:u,F=" "+(D==="dev"||D==="ino"||D==="nlink"?"SCHILY.":"")+D+"="+_+`
|
|
13
13
|
`,q=Buffer.byteLength(F),C=Math.floor(Math.log(q)/Math.log(10))+1;if(q+C>=Math.pow(10,C))C+=1;return C+q+F}static parse(D,u,_=!1){return new oD(pF(iF(D),u),_)}}var pF=(D,u)=>u?Object.assign({},u,D):D,iF=(D)=>D.replace(/\n$/,"").split(`
|
|
14
|
-
`).reduce(aF,Object.create(null)),aF=(D,u)=>{let _=parseInt(u,10);if(_!==Buffer.byteLength(u)+1)return D;u=u.slice((_+" ").length);let F=u.split("="),q=F.shift();if(!q)return D;let C=q.replace(/^SCHILY\.(dev|ino|nlink)/,"$1"),$=F.join("=");return D[C]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(C)?new Date(Number($)*1000):/^[0-9]+$/.test($)?+$:$,D};var sF=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,P=sF!=="win32"?(D)=>D:(D)=>D&&D.replace(/\\/g,"/");class Y2 extends DD{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(D,u,_){super({});switch(this.pause(),this.extended=u,this.globalExtended=_,this.header=D,this.remain=D.size??0,this.startBlockSize=512*Math.ceil(this.remain/512),this.blockRemain=this.startBlockSize,this.type=D.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(!D.path)throw Error("no path provided for tar.ReadEntry");if(this.path=P(D.path),this.mode=D.mode,this.mode)this.mode=this.mode&4095;if(this.uid=D.uid,this.gid=D.gid,this.uname=D.uname,this.gname=D.gname,this.size=this.remain,this.mtime=D.mtime,this.atime=D.atime,this.ctime=D.ctime,this.linkpath=D.linkpath?P(D.linkpath):void 0,this.uname=D.uname,this.gname=D.gname,u)this.#D(u);if(_)this.#D(_,!0)}write(D){let u=D.length;if(u>this.blockRemain)throw Error("writing more to entry than is appropriate");let _=this.remain,F=this.blockRemain;if(this.remain=Math.max(0,_-u),this.blockRemain=Math.max(0,F-u),this.ignore)return!0;if(_>=u)return super.write(D);return super.write(D.subarray(0,_))}#D(D,u=!1){if(D.path)D.path=P(D.path);if(D.linkpath)D.linkpath=P(D.linkpath);Object.assign(this,Object.fromEntries(Object.entries(D).filter(([_,F])=>{return!(F===null||F===void 0||_==="path"&&u)})))}}var H0=(D,u,_,F={})=>{if(D.file)F.file=D.file;if(D.cwd)F.cwd=D.cwd;if(F.code=_ instanceof Error&&_.code||u,F.tarCode=u,!D.strict&&F.recoverable!==!1){if(_ instanceof Error)F=Object.assign(_,F),_=_.message;D.emit("warn",u,_,F)}else if(_ instanceof Error)D.emit("error",Object.assign(_,F));else D.emit("error",Object.assign(Error(`${u}: ${_}`),F))};var tF=1048576,Q8=Buffer.from([31,139]),J8=Buffer.from([40,181,47,253]),oF=Math.max(Q8.length,J8.length),$D=Symbol("state"),x0=Symbol("writeEntry"),kD=Symbol("readEntry"),F8=Symbol("nextEntry"),R1=Symbol("processEntry"),OD=Symbol("extendedHeader"),H2=Symbol("globalExtendedHeader"),rD=Symbol("meta"),N1=Symbol("emitMeta"),N=Symbol("buffer"),yD=Symbol("queue"),eD=Symbol("ended"),q8=Symbol("emittedEnd"),W0=Symbol("emit"),y=Symbol("unzip"),Vu=Symbol("consumeChunk"),Zu=Symbol("consumeChunkSub"),C8=Symbol("consumeBody"),S1=Symbol("consumeMeta"),E1=Symbol("consumeHeader"),x2=Symbol("consuming"),$8=Symbol("bufferConcat"),Ku=Symbol("maybeEnd"),f0=Symbol("writing"),D0=Symbol("aborted"),Xu=Symbol("onDone"),A0=Symbol("sawValidEntry"),Bu=Symbol("sawNullBlock"),Gu=Symbol("sawEOF"),k1=Symbol("closeStream"),rF=()=>!0;class u0 extends nF{file;strict;maxMetaEntrySize;filter;brotli;zstd;writable=!0;readable=!1;[yD]=[];[N];[kD];[x0];[$D]="begin";[rD]="";[OD];[H2];[eD]=!1;[y];[D0]=!1;[A0];[Bu]=!1;[Gu]=!1;[f0]=!1;[x2]=!1;[q8]=!1;constructor(D={}){super();if(this.file=D.file||"",this.on(Xu,()=>{if(this[$D]==="begin"||this[A0]===!1)this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),D.ondone)this.on(Xu,D.ondone);else this.on(Xu,()=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")});this.strict=!!D.strict,this.maxMetaEntrySize=D.maxMetaEntrySize||tF,this.filter=typeof D.filter==="function"?D.filter:rF;let u=D.file&&(D.file.endsWith(".tar.br")||D.file.endsWith(".tbr"));this.brotli=!(D.gzip||D.zstd)&&D.brotli!==void 0?D.brotli:u?void 0:!1;let _=D.file&&(D.file.endsWith(".tar.zst")||D.file.endsWith(".tzst"));if(this.zstd=!(D.gzip||D.brotli)&&D.zstd!==void 0?D.zstd:_?!0:void 0,this.on("end",()=>this[k1]()),typeof D.onwarn==="function")this.on("warn",D.onwarn);if(typeof D.onReadEntry==="function")this.on("entry",D.onReadEntry)}warn(D,u,_={}){H0(this,D,u,_)}[E1](D,u){if(this[A0]===void 0)this[A0]=!1;let _;try{_=new CD(D,u,this[OD],this[H2])}catch(F){return this.warn("TAR_ENTRY_INVALID",F)}if(_.nullBlock)if(this[Bu]){if(this[Gu]=!0,this[$D]==="begin")this[$D]="header";this[W0]("eof")}else this[Bu]=!0,this[W0]("nullBlock");else if(this[Bu]=!1,!_.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:_});else if(!_.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:_});else{let F=_.type;if(/^(Symbolic)?Link$/.test(F)&&!_.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:_});else if(!/^(Symbolic)?Link$/.test(F)&&!/^(Global)?ExtendedHeader$/.test(F)&&_.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:_});else{let q=this[x0]=new Y2(_,this[OD],this[H2]);if(!this[A0])if(q.remain){let C=()=>{if(!q.invalid)this[A0]=!0};q.on("end",C)}else this[A0]=!0;if(q.meta){if(q.size>this.maxMetaEntrySize)q.ignore=!0,this[W0]("ignoredEntry",q),this[$D]="ignore",q.resume();else if(q.size>0)this[rD]="",q.on("data",(C)=>this[rD]+=C),this[$D]="meta"}else if(this[OD]=void 0,q.ignore=q.ignore||!this.filter(q.path,q),q.ignore)this[W0]("ignoredEntry",q),this[$D]=q.remain?"ignore":"header",q.resume();else{if(q.remain)this[$D]="body";else this[$D]="header",q.end();if(!this[kD])this[yD].push(q),this[F8]();else this[yD].push(q)}}}}[k1](){queueMicrotask(()=>this.emit("close"))}[R1](D){let u=!0;if(!D)this[kD]=void 0,u=!1;else if(Array.isArray(D)){let[_,...F]=D;this.emit(_,...F)}else if(this[kD]=D,this.emit("entry",D),!D.emittedEnd)D.on("end",()=>this[F8]()),u=!1;return u}[F8](){do;while(this[R1](this[yD].shift()));if(!this[yD].length){let D=this[kD];if(!D||D.flowing||D.size===D.remain){if(!this[f0])this.emit("drain")}else D.once("drain",()=>this.emit("drain"))}}[C8](D,u){let _=this[x0];if(!_)throw Error("attempt to consume body without entry??");let F=_.blockRemain??0,q=F>=D.length&&u===0?D:D.subarray(u,u+F);if(_.write(q),!_.blockRemain)this[$D]="header",this[x0]=void 0,_.end();return q.length}[S1](D,u){let _=this[x0],F=this[C8](D,u);if(!this[x0]&&_)this[N1](_);return F}[W0](D,u,_){if(!this[yD].length&&!this[kD])this.emit(D,u,_);else this[yD].push([D,u,_])}[N1](D){switch(this[W0]("meta",this[rD]),D.type){case"ExtendedHeader":case"OldExtendedHeader":this[OD]=oD.parse(this[rD],this[OD],!1);break;case"GlobalExtendedHeader":this[H2]=oD.parse(this[rD],this[H2],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":{let u=this[OD]??Object.create(null);this[OD]=u,u.path=this[rD].replace(/\0.*/,"");break}case"NextFileHasLongLinkpath":{let u=this[OD]||Object.create(null);this[OD]=u,u.linkpath=this[rD].replace(/\0.*/,"");break}default:throw Error("unknown meta: "+D.type)}}abort(D){this[D0]=!0,this.emit("abort",D),this.warn("TAR_ABORT",D,{recoverable:!1})}write(D,u,_){if(typeof u==="function")_=u,u=void 0;if(typeof D==="string")D=Buffer.from(D,typeof u==="string"?u:"utf8");if(this[D0])return _?.(),!1;if((this[y]===void 0||this.brotli===void 0&&this[y]===!1)&&D){if(this[N])D=Buffer.concat([this[N],D]),this[N]=void 0;if(D.length<oF)return this[N]=D,_?.(),!0;for(let Q=0;this[y]===void 0&&Q<Q8.length;Q++)if(D[Q]!==Q8[Q])this[y]=!1;let C=!1;if(this[y]===!1&&this.zstd!==!1){C=!0;for(let Q=0;Q<J8.length;Q++)if(D[Q]!==J8[Q]){C=!1;break}}let $=this.brotli===void 0&&!C;if(this[y]===!1&&$)if(D.length<512)if(this[eD])this.brotli=!0;else return this[N]=D,_?.(),!0;else try{new CD(D.subarray(0,512)),this.brotli=!1}catch(Q){this.brotli=!0}if(this[y]===void 0||this[y]===!1&&(this.brotli||C)){let Q=this[eD];this[eD]=!1,this[y]=this[y]===void 0?new s3({}):C?new D8({}):new o3({}),this[y].on("data",(Z)=>this[Vu](Z)),this[y].on("error",(Z)=>this.abort(Z)),this[y].on("end",()=>{this[eD]=!0,this[Vu]()}),this[f0]=!0;let J=!!this[y][Q?"end":"write"](D);return this[f0]=!1,_?.(),J}}if(this[f0]=!0,this[y])this[y].write(D);else this[Vu](D);this[f0]=!1;let q=this[yD].length?!1:this[kD]?this[kD].flowing:!0;if(!q&&!this[yD].length)this[kD]?.once("drain",()=>this.emit("drain"));return _?.(),q}[$8](D){if(D&&!this[D0])this[N]=this[N]?Buffer.concat([this[N],D]):D}[Ku](){if(this[eD]&&!this[q8]&&!this[D0]&&!this[x2]){this[q8]=!0;let D=this[x0];if(D&&D.blockRemain){let u=this[N]?this[N].length:0;if(this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${D.blockRemain} more bytes, only ${u} available)`,{entry:D}),this[N])D.write(this[N]);D.end()}this[W0](Xu)}}[Vu](D){if(this[x2]&&D)this[$8](D);else if(!D&&!this[N])this[Ku]();else if(D){if(this[x2]=!0,this[N]){this[$8](D);let u=this[N];this[N]=void 0,this[Zu](u)}else this[Zu](D);while(this[N]&&this[N]?.length>=512&&!this[D0]&&!this[Gu]){let u=this[N];this[N]=void 0,this[Zu](u)}this[x2]=!1}if(!this[N]||this[eD])this[Ku]()}[Zu](D){let u=0,_=D.length;while(u+512<=_&&!this[D0]&&!this[Gu])switch(this[$D]){case"begin":case"header":this[E1](D,u),u+=512;break;case"ignore":case"body":u+=this[C8](D,u);break;case"meta":u+=this[S1](D,u);break;default:throw Error("invalid state: "+this[$D])}if(u<_)if(this[N])this[N]=Buffer.concat([D.subarray(u),this[N]]);else this[N]=D.subarray(u)}end(D,u,_){if(typeof D==="function")_=D,u=void 0,D=void 0;if(typeof u==="function")_=u,u=void 0;if(typeof D==="string")D=Buffer.from(D,u);if(_)this.once("finish",_);if(!this[D0])if(this[y]){if(D)this[y].write(D);this[y].end()}else{if(this[eD]=!0,this.brotli===void 0||this.zstd===void 0)D=D||Buffer.alloc(0);if(D)this.write(D);this[Ku]()}return this}}var _0=(D)=>{let u=D.length-1,_=-1;while(u>-1&&D.charAt(u)==="/")_=u,u--;return _===-1?D:D.slice(0,_)};var uq=(D)=>{let u=D.onReadEntry;D.onReadEntry=u?(_)=>{u(_),_.resume()}:(_)=>_.resume()},V8=(D,u)=>{let _=new Map(u.map((C)=>[_0(C),!0])),F=D.filter,q=(C,$="")=>{let Q=$||Dq(C).root||".",J;if(C===Q)J=!1;else{let Z=_.get(C);if(Z!==void 0)J=Z;else J=q(eF(C),Q)}return _.set(C,J),J};D.filter=F?(C,$)=>F(C,$)&&q(_0(C)):(C)=>q(_0(C))},_q=(D)=>{let u=new u0(D),_=D.file,F;try{F=d0.openSync(_,"r");let q=d0.fstatSync(F),C=D.maxReadSize||16777216;if(q.size<C){let $=Buffer.allocUnsafe(q.size),Q=d0.readSync(F,$,0,q.size,0);u.end(Q===$.byteLength?$:$.subarray(0,Q))}else{let $=0,Q=Buffer.allocUnsafe(C);while($<q.size){let J=d0.readSync(F,Q,0,C,$);if(J===0)break;$+=J,u.write(Q.subarray(0,J))}u.end()}}finally{if(typeof F==="number")try{d0.closeSync(F)}catch(q){}}},Fq=(D,u)=>{let _=new u0(D),F=D.maxReadSize||16777216,q=D.file;return new Promise(($,Q)=>{_.on("error",Q),_.on("end",$),d0.stat(q,(J,Z)=>{if(J)Q(J);else{let V=new g0(q,{readSize:F,size:Z.size});V.on("error",Q),V.pipe(_)}})})},z0=UD(_q,Fq,(D)=>new u0(D),(D)=>new u0(D),(D,u)=>{if(u?.length)V8(D,u);if(!D.noResume)uq(D)});import Iu from"fs";import jD from"fs";import g1 from"path";var Z8=(D,u,_)=>{if(D&=4095,_)D=(D|384)&-19;if(u){if(D&256)D|=64;if(D&32)D|=8;if(D&4)D|=1}return D};import{win32 as qq}from"node:path";var{isAbsolute:Cq,parse:y1}=qq,W2=(D)=>{let u="",_=y1(D);while(Cq(D)||_.root){let F=D.charAt(0)==="/"&&D.slice(0,4)!=="//?/"?"/":_.root;D=D.slice(F.length),u+=F,_=y1(D)}return[u,D]};var Yu=["|","<",">","?",":"],K8=Yu.map((D)=>String.fromCharCode(61440+D.charCodeAt(0))),$q=new Map(Yu.map((D,u)=>[D,K8[u]])),Qq=new Map(K8.map((D,u)=>[D,Yu[u]])),X8=(D)=>Yu.reduce((u,_)=>u.split(_).join($q.get(_)),D),h1=(D)=>K8.reduce((u,_)=>u.split(_).join(Qq.get(_)),D);var c1=(D,u)=>{if(!u)return P(D);return D=P(D).replace(/^\.(\/|$)/,""),_0(u)+"/"+D},Jq=16777216,m1=Symbol("process"),f1=Symbol("file"),d1=Symbol("directory"),G8=Symbol("symlink"),l1=Symbol("hardlink"),A2=Symbol("header"),Hu=Symbol("read"),Y8=Symbol("lstat"),xu=Symbol("onlstat"),H8=Symbol("onread"),x8=Symbol("onreadlink"),W8=Symbol("openfile"),A8=Symbol("onopenfile"),F0=Symbol("close"),Wu=Symbol("mode"),z8=Symbol("awaitDrain"),B8=Symbol("ondrain"),PD=Symbol("prefix");class Au extends DD{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;#D=!1;constructor(D,u={}){let _=B2(u);super();if(this.path=P(D),this.portable=!!_.portable,this.maxReadSize=_.maxReadSize||Jq,this.linkCache=_.linkCache||new Map,this.statCache=_.statCache||new Map,this.preservePaths=!!_.preservePaths,this.cwd=P(_.cwd||process.cwd()),this.strict=!!_.strict,this.noPax=!!_.noPax,this.noMtime=!!_.noMtime,this.mtime=_.mtime,this.prefix=_.prefix?P(_.prefix):void 0,this.onWriteEntry=_.onWriteEntry,typeof _.onwarn==="function")this.on("warn",_.onwarn);let F=!1;if(!this.preservePaths){let[C,$]=W2(this.path);if(C&&typeof $==="string")this.path=$,F=C}if(this.win32=!!_.win32||process.platform==="win32",this.win32)this.path=h1(this.path.replace(/\\/g,"/")),D=D.replace(/\\/g,"/");if(this.absolute=P(_.absolute||g1.resolve(this.cwd,D)),this.path==="")this.path="./";if(F)this.warn("TAR_ENTRY_INFO",`stripping ${F} from absolute path`,{entry:this,path:F+this.path});let q=this.statCache.get(this.absolute);if(q)this[xu](q);else this[Y8]()}warn(D,u,_={}){return H0(this,D,u,_)}emit(D,...u){if(D==="error")this.#D=!0;return super.emit(D,...u)}[Y8](){jD.lstat(this.absolute,(D,u)=>{if(D)return this.emit("error",D);this[xu](u)})}[xu](D){if(this.statCache.set(this.absolute,D),this.stat=D,!D.isFile())D.size=0;this.type=Vq(D),this.emit("stat",D),this[m1]()}[m1](){switch(this.type){case"File":return this[f1]();case"Directory":return this[d1]();case"SymbolicLink":return this[G8]();default:return this.end()}}[Wu](D){return Z8(D,this.type==="Directory",this.portable)}[PD](D){return c1(D,this.prefix)}[A2](){if(!this.stat)throw Error("cannot write header before stat");if(this.type==="Directory"&&this.portable)this.noMtime=!0;if(this.onWriteEntry?.(this),this.header=new CD({path:this[PD](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[PD](this.linkpath):this.linkpath,mode:this[Wu](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 oD({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[PD](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[PD](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 D=this.header?.block;if(!D)throw Error("failed to encode header");super.write(D)}[d1](){if(!this.stat)throw Error("cannot create directory entry without stat");if(this.path.slice(-1)!=="/")this.path+="/";this.stat.size=0,this[A2](),this.end()}[G8](){jD.readlink(this.absolute,(D,u)=>{if(D)return this.emit("error",D);this[x8](u)})}[x8](D){this.linkpath=P(D),this[A2](),this.end()}[l1](D){if(!this.stat)throw Error("cannot create link entry without stat");this.type="Link",this.linkpath=P(g1.relative(this.cwd,D)),this.stat.size=0,this[A2](),this.end()}[f1](){if(!this.stat)throw Error("cannot create file entry without stat");if(this.stat.nlink>1){let D=`${this.stat.dev}:${this.stat.ino}`,u=this.linkCache.get(D);if(u?.indexOf(this.cwd)===0)return this[l1](u);this.linkCache.set(D,this.absolute)}if(this[A2](),this.stat.size===0)return this.end();this[W8]()}[W8](){jD.open(this.absolute,"r",(D,u)=>{if(D)return this.emit("error",D);this[A8](u)})}[A8](D){if(this.fd=D,this.#D)return this[F0]();if(!this.stat)throw 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[Hu]()}[Hu](){let{fd:D,buf:u,offset:_,length:F,pos:q}=this;if(D===void 0||u===void 0)throw Error("cannot read file without first opening");jD.read(D,u,_,F,q,(C,$)=>{if(C)return this[F0](()=>this.emit("error",C));this[H8]($)})}[F0](D=()=>{}){if(this.fd!==void 0)jD.close(this.fd,D)}[H8](D){if(D<=0&&this.remain>0){let F=Object.assign(Error("encountered unexpected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[F0](()=>this.emit("error",F))}if(D>this.remain){let F=Object.assign(Error("did not encounter expected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[F0](()=>this.emit("error",F))}if(!this.buf)throw Error("should have created buffer prior to reading");if(D===this.remain)for(let F=D;F<this.length&&D<this.blockRemain;F++)this.buf[F+this.offset]=0,D++,this.remain++;let u=this.offset===0&&D===this.buf.length?this.buf:this.buf.subarray(this.offset,this.offset+D);if(!this.write(u))this[z8](()=>this[B8]());else this[B8]()}[z8](D){this.once("drain",D)}write(D,u,_){if(typeof u==="function")_=u,u=void 0;if(typeof D==="string")D=Buffer.from(D,typeof u==="string"?u:"utf8");if(this.blockRemain<D.length){let F=Object.assign(Error("writing more data than expected"),{path:this.absolute});return this.emit("error",F)}return this.remain-=D.length,this.blockRemain-=D.length,this.pos+=D.length,this.offset+=D.length,super.write(D,null,_)}[B8](){if(!this.remain){if(this.blockRemain)super.write(Buffer.alloc(this.blockRemain));return this[F0]((D)=>D?this.emit("error",D):this.end())}if(!this.buf)throw Error("buffer lost somehow in ONDRAIN");if(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[Hu]()}}class L8 extends Au{sync=!0;[Y8](){this[xu](jD.lstatSync(this.absolute))}[G8](){this[x8](jD.readlinkSync(this.absolute))}[W8](){this[A8](jD.openSync(this.absolute,"r"))}[Hu](){let D=!0;try{let{fd:u,buf:_,offset:F,length:q,pos:C}=this;if(u===void 0||_===void 0)throw Error("fd and buf must be set in READ method");let $=jD.readSync(u,_,F,q,C);this[H8]($),D=!1}finally{if(D)try{this[F0](()=>{})}catch(u){}}}[z8](D){D()}[F0](D=()=>{}){if(this.fd!==void 0)jD.closeSync(this.fd);D()}}class U8 extends DD{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(D,u,_={}){return H0(this,D,u,_)}constructor(D,u={}){let _=B2(u);super();this.preservePaths=!!_.preservePaths,this.portable=!!_.portable,this.strict=!!_.strict,this.noPax=!!_.noPax,this.noMtime=!!_.noMtime,this.onWriteEntry=_.onWriteEntry,this.readEntry=D;let{type:F}=D;if(F==="Unsupported")throw Error("writing entry that should be ignored");if(this.type=F,this.type==="Directory"&&this.portable)this.noMtime=!0;if(this.prefix=_.prefix,this.path=P(D.path),this.mode=D.mode!==void 0?this[Wu](D.mode):void 0,this.uid=this.portable?void 0:D.uid,this.gid=this.portable?void 0:D.gid,this.uname=this.portable?void 0:D.uname,this.gname=this.portable?void 0:D.gname,this.size=D.size,this.mtime=this.noMtime?void 0:_.mtime||D.mtime,this.atime=this.portable?void 0:D.atime,this.ctime=this.portable?void 0:D.ctime,this.linkpath=D.linkpath!==void 0?P(D.linkpath):void 0,typeof _.onwarn==="function")this.on("warn",_.onwarn);let q=!1;if(!this.preservePaths){let[$,Q]=W2(this.path);if($&&typeof Q==="string")this.path=Q,q=$}if(this.remain=D.size,this.blockRemain=D.startBlockSize,this.onWriteEntry?.(this),this.header=new CD({path:this[PD](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[PD](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}),q)this.warn("TAR_ENTRY_INFO",`stripping ${q} from absolute path`,{entry:this,path:q+this.path});if(this.header.encode()&&!this.noPax)super.write(new oD({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[PD](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[PD](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 C=this.header?.block;if(!C)throw Error("failed to encode header");super.write(C),D.pipe(this)}[PD](D){return c1(D,this.prefix)}[Wu](D){return Z8(D,this.type==="Directory",this.portable)}write(D,u,_){if(typeof u==="function")_=u,u=void 0;if(typeof D==="string")D=Buffer.from(D,typeof u==="string"?u:"utf8");let F=D.length;if(F>this.blockRemain)throw Error("writing more to entry than is appropriate");return this.blockRemain-=F,super.write(D,_)}end(D,u,_){if(this.blockRemain)super.write(Buffer.alloc(this.blockRemain));if(typeof D==="function")_=D,u=void 0,D=void 0;if(typeof u==="function")_=u,u=void 0;if(typeof D==="string")D=Buffer.from(D,u??"utf8");if(_)this.once("finish",_);return D?super.end(D,_):super.end(_),this}}var Vq=(D)=>D.isFile()?"File":D.isDirectory()?"Directory":D.isSymbolicLink()?"SymbolicLink":"Unsupported";class q0{tail;head;length=0;static create(D=[]){return new q0(D)}constructor(D=[]){for(let u of D)this.push(u)}*[Symbol.iterator](){for(let D=this.head;D;D=D.next)yield D.value}removeNode(D){if(D.list!==this)throw Error("removing node which does not belong to this list");let{next:u,prev:_}=D;if(u)u.prev=_;if(_)_.next=u;if(D===this.head)this.head=u;if(D===this.tail)this.tail=_;return this.length--,D.next=void 0,D.prev=void 0,D.list=void 0,u}unshiftNode(D){if(D===this.head)return;if(D.list)D.list.removeNode(D);let u=this.head;if(D.list=this,D.next=u,u)u.prev=D;if(this.head=D,!this.tail)this.tail=D;this.length++}pushNode(D){if(D===this.tail)return;if(D.list)D.list.removeNode(D);let u=this.tail;if(D.list=this,D.prev=u,u)u.next=D;if(this.tail=D,!this.head)this.head=D;this.length++}push(...D){for(let u=0,_=D.length;u<_;u++)Kq(this,D[u]);return this.length}unshift(...D){for(var u=0,_=D.length;u<_;u++)Xq(this,D[u]);return this.length}pop(){if(!this.tail)return;let D=this.tail.value,u=this.tail;if(this.tail=this.tail.prev,this.tail)this.tail.next=void 0;else this.head=void 0;return u.list=void 0,this.length--,D}shift(){if(!this.head)return;let D=this.head.value,u=this.head;if(this.head=this.head.next,this.head)this.head.prev=void 0;else this.tail=void 0;return u.list=void 0,this.length--,D}forEach(D,u){u=u||this;for(let _=this.head,F=0;_;F++)D.call(u,_.value,F,this),_=_.next}forEachReverse(D,u){u=u||this;for(let _=this.tail,F=this.length-1;_;F--)D.call(u,_.value,F,this),_=_.prev}get(D){let u=0,_=this.head;for(;!!_&&u<D;u++)_=_.next;if(u===D&&!!_)return _.value}getReverse(D){let u=0,_=this.tail;for(;!!_&&u<D;u++)_=_.prev;if(u===D&&!!_)return _.value}map(D,u){u=u||this;let _=new q0;for(let F=this.head;F;)_.push(D.call(u,F.value,this)),F=F.next;return _}mapReverse(D,u){u=u||this;var _=new q0;for(let F=this.tail;F;)_.push(D.call(u,F.value,this)),F=F.prev;return _}reduce(D,u){let _,F=this.head;if(arguments.length>1)_=u;else if(this.head)F=this.head.next,_=this.head.value;else throw TypeError("Reduce of empty list with no initial value");for(var q=0;F;q++)_=D(_,F.value,q),F=F.next;return _}reduceReverse(D,u){let _,F=this.tail;if(arguments.length>1)_=u;else if(this.tail)F=this.tail.prev,_=this.tail.value;else throw TypeError("Reduce of empty list with no initial value");for(let q=this.length-1;F;q--)_=D(_,F.value,q),F=F.prev;return _}toArray(){let D=Array(this.length);for(let u=0,_=this.head;_;u++)D[u]=_.value,_=_.next;return D}toArrayReverse(){let D=Array(this.length);for(let u=0,_=this.tail;_;u++)D[u]=_.value,_=_.prev;return D}slice(D=0,u=this.length){if(u<0)u+=this.length;if(D<0)D+=this.length;let _=new q0;if(u<D||u<0)return _;if(D<0)D=0;if(u>this.length)u=this.length;let F=this.head,q=0;for(q=0;!!F&&q<D;q++)F=F.next;for(;!!F&&q<u;q++,F=F.next)_.push(F.value);return _}sliceReverse(D=0,u=this.length){if(u<0)u+=this.length;if(D<0)D+=this.length;let _=new q0;if(u<D||u<0)return _;if(D<0)D=0;if(u>this.length)u=this.length;let F=this.length,q=this.tail;for(;!!q&&F>u;F--)q=q.prev;for(;!!q&&F>D;F--,q=q.prev)_.push(q.value);return _}splice(D,u=0,..._){if(D>this.length)D=this.length-1;if(D<0)D=this.length+D;let F=this.head;for(let C=0;!!F&&C<D;C++)F=F.next;let q=[];for(let C=0;!!F&&C<u;C++)q.push(F.value),F=this.removeNode(F);if(!F)F=this.tail;else if(F!==this.tail)F=F.prev;for(let C of _)F=Zq(this,F,C);return q}reverse(){let D=this.head,u=this.tail;for(let _=D;_;_=_.prev){let F=_.prev;_.prev=_.next,_.next=F}return this.head=u,this.tail=D,this}}function Zq(D,u,_){let F=u,q=u?u.next:D.head,C=new zu(_,F,q,D);if(C.next===void 0)D.tail=C;if(C.prev===void 0)D.head=C;return D.length++,C}function Kq(D,u){if(D.tail=new zu(u,D.tail,void 0,D),!D.head)D.head=D.tail;D.length++}function Xq(D,u){if(D.head=new zu(u,void 0,D.head,D),!D.tail)D.tail=D.head;D.length++}class zu{list;next;prev;value;constructor(D,u,_,F){if(this.list=F,this.value=D,u)u.next=this,this.prev=u;else this.prev=void 0;if(_)_.prev=this,this.next=_;else this.next=void 0}}import n1 from"path";class I8{path;absolute;entry;stat;readdir;pending=!1;ignore=!1;piped=!1;constructor(D,u){this.path=D||"./",this.absolute=u}}var p1=Buffer.alloc(1024),Lu=Symbol("onStat"),z2=Symbol("ended"),YD=Symbol("queue"),l0=Symbol("current"),L0=Symbol("process"),L2=Symbol("processing"),i1=Symbol("processJob"),HD=Symbol("jobs"),O8=Symbol("jobDone"),Uu=Symbol("addFSEntry"),a1=Symbol("addTarEntry"),w8=Symbol("stat"),M8=Symbol("readdir"),Ou=Symbol("onreaddir"),ju=Symbol("pipe"),s1=Symbol("entry"),j8=Symbol("entryOpt"),Pu=Symbol("writeEntryClass"),t1=Symbol("write"),P8=Symbol("ondrain");class U0 extends DD{opt;cwd;maxReadSize;preservePaths;strict;noPax;prefix;linkCache;statCache;file;portable;zip;readdirCache;noDirRecurse;follow;noMtime;mtime;filter;jobs;[Pu];onWriteEntry;[YD];[HD]=0;[L2]=!1;[z2]=!1;constructor(D={}){super();if(this.opt=D,this.file=D.file||"",this.cwd=D.cwd||process.cwd(),this.maxReadSize=D.maxReadSize,this.preservePaths=!!D.preservePaths,this.strict=!!D.strict,this.noPax=!!D.noPax,this.prefix=P(D.prefix||""),this.linkCache=D.linkCache||new Map,this.statCache=D.statCache||new Map,this.readdirCache=D.readdirCache||new Map,this.onWriteEntry=D.onWriteEntry,this[Pu]=Au,typeof D.onwarn==="function")this.on("warn",D.onwarn);if(this.portable=!!D.portable,D.gzip||D.brotli||D.zstd){if((D.gzip?1:0)+(D.brotli?1:0)+(D.zstd?1:0)>1)throw TypeError("gzip, brotli, zstd are mutually exclusive");if(D.gzip){if(typeof D.gzip!=="object")D.gzip={};if(this.portable)D.gzip.portable=!0;this.zip=new a3(D.gzip)}if(D.brotli){if(typeof D.brotli!=="object")D.brotli={};this.zip=new t3(D.brotli)}if(D.zstd){if(typeof D.zstd!=="object")D.zstd={};this.zip=new e3(D.zstd)}if(!this.zip)throw Error("impossible");let u=this.zip;u.on("data",(_)=>super.write(_)),u.on("end",()=>super.end()),u.on("drain",()=>this[P8]()),this.on("resume",()=>u.resume())}else this.on("drain",this[P8]);if(this.noDirRecurse=!!D.noDirRecurse,this.follow=!!D.follow,this.noMtime=!!D.noMtime,D.mtime)this.mtime=D.mtime;this.filter=typeof D.filter==="function"?D.filter:()=>!0,this[YD]=new q0,this[HD]=0,this.jobs=Number(D.jobs)||4,this[L2]=!1,this[z2]=!1}[t1](D){return super.write(D)}add(D){return this.write(D),this}end(D,u,_){if(typeof D==="function")_=D,D=void 0;if(typeof u==="function")_=u,u=void 0;if(D)this.add(D);if(this[z2]=!0,this[L0](),_)_();return this}write(D){if(this[z2])throw Error("write after end");if(D instanceof Y2)this[a1](D);else this[Uu](D);return this.flowing}[a1](D){let u=P(n1.resolve(this.cwd,D.path));if(!this.filter(D.path,D))D.resume();else{let _=new I8(D.path,u);_.entry=new U8(D,this[j8](_)),_.entry.on("end",()=>this[O8](_)),this[HD]+=1,this[YD].push(_)}this[L0]()}[Uu](D){let u=P(n1.resolve(this.cwd,D));this[YD].push(new I8(D,u)),this[L0]()}[w8](D){D.pending=!0,this[HD]+=1;let u=this.follow?"stat":"lstat";Iu[u](D.absolute,(_,F)=>{if(D.pending=!1,this[HD]-=1,_)this.emit("error",_);else this[Lu](D,F)})}[Lu](D,u){if(this.statCache.set(D.absolute,u),D.stat=u,!this.filter(D.path,u))D.ignore=!0;this[L0]()}[M8](D){D.pending=!0,this[HD]+=1,Iu.readdir(D.absolute,(u,_)=>{if(D.pending=!1,this[HD]-=1,u)return this.emit("error",u);this[Ou](D,_)})}[Ou](D,u){this.readdirCache.set(D.absolute,u),D.readdir=u,this[L0]()}[L0](){if(this[L2])return;this[L2]=!0;for(let D=this[YD].head;!!D&&this[HD]<this.jobs;D=D.next)if(this[i1](D.value),D.value.ignore){let u=D.next;this[YD].removeNode(D),D.next=u}if(this[L2]=!1,this[z2]&&!this[YD].length&&this[HD]===0)if(this.zip)this.zip.end(p1);else super.write(p1),super.end()}get[l0](){return this[YD]&&this[YD].head&&this[YD].head.value}[O8](D){this[YD].shift(),this[HD]-=1,this[L0]()}[i1](D){if(D.pending)return;if(D.entry){if(D===this[l0]&&!D.piped)this[ju](D);return}if(!D.stat){let u=this.statCache.get(D.absolute);if(u)this[Lu](D,u);else this[w8](D)}if(!D.stat)return;if(D.ignore)return;if(!this.noDirRecurse&&D.stat.isDirectory()&&!D.readdir){let u=this.readdirCache.get(D.absolute);if(u)this[Ou](D,u);else this[M8](D);if(!D.readdir)return}if(D.entry=this[s1](D),!D.entry){D.ignore=!0;return}if(D===this[l0]&&!D.piped)this[ju](D)}[j8](D){return{onwarn:(u,_,F)=>this.warn(u,_,F),noPax:this.noPax,cwd:this.cwd,absolute:D.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}}[s1](D){this[HD]+=1;try{return new this[Pu](D.path,this[j8](D)).on("end",()=>this[O8](D)).on("error",(_)=>this.emit("error",_))}catch(u){this.emit("error",u)}}[P8](){if(this[l0]&&this[l0].entry)this[l0].entry.resume()}[ju](D){if(D.piped=!0,D.readdir)D.readdir.forEach((F)=>{let q=D.path,C=q==="./"?"":q.replace(/\/*$/,"/");this[Uu](C+F)});let u=D.entry,_=this.zip;if(!u)throw Error("cannot pipe without source");if(_)u.on("data",(F)=>{if(!_.write(F))u.pause()});else u.on("data",(F)=>{if(!super.write(F))u.pause()})}pause(){if(this.zip)this.zip.pause();return super.pause()}warn(D,u,_={}){H0(this,D,u,_)}}class c0 extends U0{sync=!0;constructor(D){super(D);this[Pu]=L8}pause(){}resume(){}[w8](D){let u=this.follow?"statSync":"lstatSync";this[Lu](D,Iu[u](D.absolute))}[M8](D){this[Ou](D,Iu.readdirSync(D.absolute))}[ju](D){let u=D.entry,_=this.zip;if(D.readdir)D.readdir.forEach((F)=>{let q=D.path,C=q==="./"?"":q.replace(/\/*$/,"/");this[Uu](C+F)});if(!u)throw Error("Cannot pipe without source");if(_)u.on("data",(F)=>{_.write(F)});else u.on("data",(F)=>{super[t1](F)})}}var Bq=(D,u)=>{let _=new c0(D),F=new X2(D.file,{mode:D.mode||438});_.pipe(F),r1(_,u)},Gq=(D,u)=>{let _=new U0(D),F=new sD(D.file,{mode:D.mode||438});_.pipe(F);let q=new Promise((C,$)=>{F.on("error",$),F.on("close",C),_.on("error",$)});return e1(_,u),q},r1=(D,u)=>{u.forEach((_)=>{if(_.charAt(0)==="@")z0({file:o1.resolve(D.cwd,_.slice(1)),sync:!0,noResume:!0,onReadEntry:(F)=>D.add(F)});else D.add(_)}),D.end()},e1=async(D,u)=>{for(let _=0;_<u.length;_++){let F=String(u[_]);if(F.charAt(0)==="@")await z0({file:o1.resolve(String(D.cwd),F.slice(1)),noResume:!0,onReadEntry:(q)=>{D.add(q)}});else D.add(F)}D.end()},Yq=(D,u)=>{let _=new c0(D);return r1(_,u),_},Hq=(D,u)=>{let _=new U0(D);return e1(_,u),_},xq=UD(Bq,Gq,Yq,Hq,(D,u)=>{if(!u?.length)throw TypeError("no paths specified to add to archive")});import H_ from"node:fs";import Eq from"node:assert";import{randomBytes as Y_}from"node:crypto";import M from"node:fs";import hD from"node:path";import D_ from"fs";var Wq=process.env.__FAKE_PLATFORM__||process.platform,Aq=Wq==="win32",{O_CREAT:zq,O_TRUNC:Lq,O_WRONLY:Uq}=D_.constants,u_=Number(process.env.__FAKE_FS_O_FILENAME__)||D_.constants.UV_FS_O_FILEMAP||0,Oq=Aq&&!!u_,jq=524288,Pq=u_|Lq|zq|Uq,T8=!Oq?()=>"w":(D)=>D<jq?Pq:"w";import Mu from"node:fs";import U2 from"node:path";var v8=(D,u,_)=>{try{return Mu.lchownSync(D,u,_)}catch(F){if(F?.code!=="ENOENT")throw F}},wu=(D,u,_,F)=>{Mu.lchown(D,u,_,(q)=>{F(q&&q?.code!=="ENOENT"?q:null)})},Iq=(D,u,_,F,q)=>{if(u.isDirectory())R8(U2.resolve(D,u.name),_,F,(C)=>{if(C)return q(C);let $=U2.resolve(D,u.name);wu($,_,F,q)});else{let C=U2.resolve(D,u.name);wu(C,_,F,q)}},R8=(D,u,_,F)=>{Mu.readdir(D,{withFileTypes:!0},(q,C)=>{if(q){if(q.code==="ENOENT")return F();else if(q.code!=="ENOTDIR"&&q.code!=="ENOTSUP")return F(q)}if(q||!C.length)return wu(D,u,_,F);let $=C.length,Q=null,J=(Z)=>{if(Q)return;if(Z)return F(Q=Z);if(--$===0)return wu(D,u,_,F)};for(let Z of C)Iq(D,Z,u,_,J)})},wq=(D,u,_,F)=>{if(u.isDirectory())N8(U2.resolve(D,u.name),_,F);v8(U2.resolve(D,u.name),_,F)},N8=(D,u,_)=>{let F;try{F=Mu.readdirSync(D,{withFileTypes:!0})}catch(q){let C=q;if(C?.code==="ENOENT")return;else if(C?.code==="ENOTDIR"||C?.code==="ENOTSUP")return v8(D,u,_);else throw C}for(let q of F)wq(D,q,u,_);return v8(D,u,_)};import uD from"node:fs";import Mq from"node:fs/promises";import Ru from"node:path";class Tu extends Error{path;code;syscall="chdir";constructor(D,u){super(`${u}: Cannot cd into '${D}'`);this.path=D,this.code=u}get name(){return"CwdError"}}class vu extends Error{path;symlink;syscall="symlink";code="TAR_SYMLINK_ERROR";constructor(D,u){super("TAR_SYMLINK_ERROR: Cannot extract through symbolic link");this.symlink=D,this.path=u}get name(){return"SymlinkError"}}var Tq=(D,u)=>{uD.stat(D,(_,F)=>{if(_||!F.isDirectory())_=new Tu(D,_?.code||"ENOTDIR");u(_)})},__=(D,u,_)=>{D=P(D);let F=u.umask??18,q=u.mode|448,C=(q&F)!==0,$=u.uid,Q=u.gid,J=typeof $==="number"&&typeof Q==="number"&&($!==u.processUid||Q!==u.processGid),Z=u.preserve,V=u.unlink,K=P(u.cwd),X=(z,j)=>{if(z)_(z);else if(j&&J)R8(j,$,Q,(E)=>X(E));else if(C)uD.chmod(D,q,_);else _()};if(D===K)return Tq(D,X);if(Z)return Mq.mkdir(D,{mode:q,recursive:!0}).then((z)=>X(null,z??void 0),X);let L=P(Ru.relative(K,D)).split("/");S8(K,L,q,V,K,void 0,X)},S8=(D,u,_,F,q,C,$)=>{if(!u.length)return $(null,C);let Q=u.shift(),J=P(Ru.resolve(D+"/"+Q));uD.mkdir(J,_,F_(J,u,_,F,q,C,$))},F_=(D,u,_,F,q,C,$)=>(Q)=>{if(Q)uD.lstat(D,(J,Z)=>{if(J)J.path=J.path&&P(J.path),$(J);else if(Z.isDirectory())S8(D,u,_,F,q,C,$);else if(F)uD.unlink(D,(V)=>{if(V)return $(V);uD.mkdir(D,_,F_(D,u,_,F,q,C,$))});else if(Z.isSymbolicLink())return $(new vu(D,D+"/"+u.join("/")));else $(Q)});else C=C||D,S8(D,u,_,F,q,C,$)},vq=(D)=>{let u=!1,_=void 0;try{u=uD.statSync(D).isDirectory()}catch(F){_=F?.code}finally{if(!u)throw new Tu(D,_??"ENOTDIR")}},q_=(D,u)=>{D=P(D);let _=u.umask??18,F=u.mode|448,q=(F&_)!==0,C=u.uid,$=u.gid,Q=typeof C==="number"&&typeof $==="number"&&(C!==u.processUid||$!==u.processGid),J=u.preserve,Z=u.unlink,V=P(u.cwd),K=(z)=>{if(z&&Q)N8(z,C,$);if(q)uD.chmodSync(D,F)};if(D===V)return vq(V),K();if(J)return K(uD.mkdirSync(D,{mode:F,recursive:!0})??void 0);let B=P(Ru.relative(V,D)).split("/"),L=void 0;for(let z=B.shift(),j=V;z&&(j+="/"+z);z=B.shift()){j=P(Ru.resolve(j));try{uD.mkdirSync(j,F),L=L||j}catch(E){let c=uD.lstatSync(j);if(c.isDirectory())continue;else if(Z){uD.unlinkSync(j),uD.mkdirSync(j,F),L=L||j;continue}else if(c.isSymbolicLink())return new vu(j,j+"/"+B.join("/"))}}return K(L)};import{join as $_}from"node:path";var E8=Object.create(null);var p0=new Set,C_=(D)=>{if(!p0.has(D))E8[D]=D.normalize("NFD");else p0.delete(D);p0.add(D);let u=E8[D],_=p0.size-1e4;if(_>1000){for(let F of p0)if(p0.delete(F),delete E8[F],--_<=0)break}return u};var Rq=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,Nq=Rq==="win32",Sq=(D)=>{return D.split("/").slice(0,-1).reduce((_,F)=>{let q=_[_.length-1];if(q!==void 0)F=$_(q,F);return _.push(F||"/"),_},[])};class k8{#D=new Map;#_=new Map;#u=new Set;reserve(D,u){D=Nq?["win32 parallelization disabled"]:D.map((F)=>{return _0($_(C_(F))).toLowerCase()});let _=new Set(D.map((F)=>Sq(F)).reduce((F,q)=>F.concat(q)));this.#_.set(u,{dirs:_,paths:D});for(let F of D){let q=this.#D.get(F);if(!q)this.#D.set(F,[u]);else q.push(u)}for(let F of _){let q=this.#D.get(F);if(!q)this.#D.set(F,[new Set([u])]);else{let C=q[q.length-1];if(C instanceof Set)C.add(u);else q.push(new Set([u]))}}return this.#C(u)}#$(D){let u=this.#_.get(D);if(!u)throw Error("function does not have any path reservations");return{paths:u.paths.map((_)=>this.#D.get(_)),dirs:[...u.dirs].map((_)=>this.#D.get(_))}}check(D){let{paths:u,dirs:_}=this.#$(D);return u.every((F)=>F&&F[0]===D)&&_.every((F)=>F&&F[0]instanceof Set&&F[0].has(D))}#C(D){if(this.#u.has(D)||!this.check(D))return!1;return this.#u.add(D),D(()=>this.#F(D)),!0}#F(D){if(!this.#u.has(D))return!1;let u=this.#_.get(D);if(!u)throw Error("invalid reservation");let{paths:_,dirs:F}=u,q=new Set;for(let C of _){let $=this.#D.get(C);if(!$||$?.[0]!==D)continue;let Q=$[1];if(!Q){this.#D.delete(C);continue}if($.shift(),typeof Q==="function")q.add(Q);else for(let J of Q)q.add(J)}for(let C of F){let $=this.#D.get(C),Q=$?.[0];if(!$||!(Q instanceof Set))continue;if(Q.size===1&&$.length===1){this.#D.delete(C);continue}else if(Q.size===1){$.shift();let J=$[0];if(typeof J==="function")q.add(J)}else Q.delete(D)}return this.#u.delete(D),q.forEach((C)=>this.#C(C)),!0}}var Q_=Symbol("onEntry"),b8=Symbol("checkFs"),J_=Symbol("checkFs2"),g8=Symbol("isReusable"),QD=Symbol("makeFs"),m8=Symbol("file"),f8=Symbol("directory"),Eu=Symbol("link"),V_=Symbol("symlink"),Z_=Symbol("hardlink"),K_=Symbol("unsupported"),X_=Symbol("checkPath"),C0=Symbol("mkdir"),d=Symbol("onError"),Nu=Symbol("pending"),B_=Symbol("pend"),i0=Symbol("unpend"),y8=Symbol("ended"),h8=Symbol("maybeClose"),d8=Symbol("skip"),O2=Symbol("doChown"),j2=Symbol("uid"),P2=Symbol("gid"),I2=Symbol("checkedCwd"),kq=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,w2=kq==="win32",yq=1024,hq=(D,u)=>{if(!w2)return M.unlink(D,u);let _=D+".DELETE."+Y_(16).toString("hex");M.rename(D,_,(F)=>{if(F)return u(F);M.unlink(_,u)})},bq=(D)=>{if(!w2)return M.unlinkSync(D);let u=D+".DELETE."+Y_(16).toString("hex");M.renameSync(D,u),M.unlinkSync(u)},G_=(D,u,_)=>D!==void 0&&D===D>>>0?D:u!==void 0&&u===u>>>0?u:_;class M2 extends u0{[y8]=!1;[I2]=!1;[Nu]=0;reservations=new k8;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(D={}){D.ondone=()=>{this[y8]=!0,this[h8]()};super(D);if(this.transform=D.transform,this.chmod=!!D.chmod,typeof D.uid==="number"||typeof D.gid==="number"){if(typeof D.uid!=="number"||typeof D.gid!=="number")throw TypeError("cannot set owner without number uid and gid");if(D.preserveOwner)throw TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=D.uid,this.gid=D.gid,this.setOwner=!0}else this.uid=void 0,this.gid=void 0,this.setOwner=!1;if(D.preserveOwner===void 0&&typeof D.uid!=="number")this.preserveOwner=!!(process.getuid&&process.getuid()===0);else this.preserveOwner=!!D.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 D.maxDepth==="number"?D.maxDepth:yq,this.forceChown=D.forceChown===!0,this.win32=!!D.win32||w2,this.newer=!!D.newer,this.keep=!!D.keep,this.noMtime=!!D.noMtime,this.preservePaths=!!D.preservePaths,this.unlink=!!D.unlink,this.cwd=P(hD.resolve(D.cwd||process.cwd())),this.strip=Number(D.strip)||0,this.processUmask=!this.chmod?0:typeof D.processUmask==="number"?D.processUmask:process.umask(),this.umask=typeof D.umask==="number"?D.umask:this.processUmask,this.dmode=D.dmode||511&~this.umask,this.fmode=D.fmode||438&~this.umask,this.on("entry",(u)=>this[Q_](u))}warn(D,u,_={}){if(D==="TAR_BAD_ARCHIVE"||D==="TAR_ABORT")_.recoverable=!1;return super.warn(D,u,_)}[h8](){if(this[y8]&&this[Nu]===0)this.emit("prefinish"),this.emit("finish"),this.emit("end")}[X_](D){let u=P(D.path),_=u.split("/");if(this.strip){if(_.length<this.strip)return!1;if(D.type==="Link"){let F=P(String(D.linkpath)).split("/");if(F.length>=this.strip)D.linkpath=F.slice(this.strip).join("/");else return!1}_.splice(0,this.strip),D.path=_.join("/")}if(isFinite(this.maxDepth)&&_.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:D,path:u,depth:_.length,maxDepth:this.maxDepth}),!1;if(!this.preservePaths){if(_.includes("..")||w2&&/^[a-z]:\.\.$/i.test(_[0]??""))return this.warn("TAR_ENTRY_ERROR","path contains '..'",{entry:D,path:u}),!1;let[F,q]=W2(u);if(F)D.path=String(q),this.warn("TAR_ENTRY_INFO",`stripping ${F} from absolute path`,{entry:D,path:u})}if(hD.isAbsolute(D.path))D.absolute=P(hD.resolve(D.path));else D.absolute=P(hD.resolve(this.cwd,D.path));if(!this.preservePaths&&typeof D.absolute==="string"&&D.absolute.indexOf(this.cwd+"/")!==0&&D.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:D,path:P(D.path),resolvedPath:D.absolute,cwd:this.cwd}),!1;if(D.absolute===this.cwd&&D.type!=="Directory"&&D.type!=="GNUDumpDir")return!1;if(this.win32){let{root:F}=hD.win32.parse(String(D.absolute));D.absolute=F+X8(String(D.absolute).slice(F.length));let{root:q}=hD.win32.parse(D.path);D.path=q+X8(D.path.slice(q.length))}return!0}[Q_](D){if(!this[X_](D))return D.resume();switch(Eq.equal(typeof D.absolute,"string"),D.type){case"Directory":case"GNUDumpDir":if(D.mode)D.mode=D.mode|448;case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[b8](D);case"CharacterDevice":case"BlockDevice":case"FIFO":default:return this[K_](D)}}[d](D,u){if(D.name==="CwdError")this.emit("error",D);else this.warn("TAR_ENTRY_ERROR",D,{entry:u}),this[i0](),u.resume()}[C0](D,u,_){__(P(D),{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},_)}[O2](D){return this.forceChown||this.preserveOwner&&(typeof D.uid==="number"&&D.uid!==this.processUid||typeof D.gid==="number"&&D.gid!==this.processGid)||typeof this.uid==="number"&&this.uid!==this.processUid||typeof this.gid==="number"&&this.gid!==this.processGid}[j2](D){return G_(this.uid,D.uid,this.processUid)}[P2](D){return G_(this.gid,D.gid,this.processGid)}[m8](D,u){let _=typeof D.mode==="number"?D.mode&4095:this.fmode,F=new sD(String(D.absolute),{flags:T8(D.size),mode:_,autoClose:!1});F.on("error",(Q)=>{if(F.fd)M.close(F.fd,()=>{});F.write=()=>!0,this[d](Q,D),u()});let q=1,C=(Q)=>{if(Q){if(F.fd)M.close(F.fd,()=>{});this[d](Q,D),u();return}if(--q===0){if(F.fd!==void 0)M.close(F.fd,(J)=>{if(J)this[d](J,D);else this[i0]();u()})}};F.on("finish",()=>{let Q=String(D.absolute),J=F.fd;if(typeof J==="number"&&D.mtime&&!this.noMtime){q++;let Z=D.atime||new Date,V=D.mtime;M.futimes(J,Z,V,(K)=>K?M.utimes(Q,Z,V,(X)=>C(X&&K)):C())}if(typeof J==="number"&&this[O2](D)){q++;let Z=this[j2](D),V=this[P2](D);if(typeof Z==="number"&&typeof V==="number")M.fchown(J,Z,V,(K)=>K?M.chown(Q,Z,V,(X)=>C(X&&K)):C())}C()});let $=this.transform?this.transform(D)||D:D;if($!==D)$.on("error",(Q)=>{this[d](Q,D),u()}),D.pipe($);$.pipe(F)}[f8](D,u){let _=typeof D.mode==="number"?D.mode&4095:this.dmode;this[C0](String(D.absolute),_,(F)=>{if(F){this[d](F,D),u();return}let q=1,C=()=>{if(--q===0)u(),this[i0](),D.resume()};if(D.mtime&&!this.noMtime)q++,M.utimes(String(D.absolute),D.atime||new Date,D.mtime,C);if(this[O2](D))q++,M.chown(String(D.absolute),Number(this[j2](D)),Number(this[P2](D)),C);C()})}[K_](D){D.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${D.type}`,{entry:D}),D.resume()}[V_](D,u){this[Eu](D,String(D.linkpath),"symlink",u)}[Z_](D,u){let _=P(hD.resolve(this.cwd,String(D.linkpath)));this[Eu](D,_,"link",u)}[B_](){this[Nu]++}[i0](){this[Nu]--,this[h8]()}[d8](D){this[i0](),D.resume()}[g8](D,u){return D.type==="File"&&!this.unlink&&u.isFile()&&u.nlink<=1&&!w2}[b8](D){this[B_]();let u=[D.path];if(D.linkpath)u.push(D.linkpath);this.reservations.reserve(u,(_)=>this[J_](D,_))}[J_](D,u){let _=($)=>{u($)},F=()=>{this[C0](this.cwd,this.dmode,($)=>{if($){this[d]($,D),_();return}this[I2]=!0,q()})},q=()=>{if(D.absolute!==this.cwd){let $=P(hD.dirname(String(D.absolute)));if($!==this.cwd)return this[C0]($,this.dmode,(Q)=>{if(Q){this[d](Q,D),_();return}C()})}C()},C=()=>{M.lstat(String(D.absolute),($,Q)=>{if(Q&&(this.keep||this.newer&&Q.mtime>(D.mtime??Q.mtime))){this[d8](D),_();return}if($||this[g8](D,Q))return this[QD](null,D,_);if(Q.isDirectory()){if(D.type==="Directory"){let J=this.chmod&&D.mode&&(Q.mode&4095)!==D.mode,Z=(V)=>this[QD](V??null,D,_);if(!J)return Z();return M.chmod(String(D.absolute),Number(D.mode),Z)}if(D.absolute!==this.cwd)return M.rmdir(String(D.absolute),(J)=>this[QD](J??null,D,_))}if(D.absolute===this.cwd)return this[QD](null,D,_);hq(String(D.absolute),(J)=>this[QD](J??null,D,_))})};if(this[I2])q();else F()}[QD](D,u,_){if(D){this[d](D,u),_();return}switch(u.type){case"File":case"OldFile":case"ContiguousFile":return this[m8](u,_);case"Link":return this[Z_](u,_);case"SymbolicLink":return this[V_](u,_);case"Directory":case"GNUDumpDir":return this[f8](u,_)}}[Eu](D,u,_,F){M[_](u,String(D.absolute),(q)=>{if(q)this[d](q,D);else this[i0](),D.resume();F()})}}var Su=(D)=>{try{return[null,D()]}catch(u){return[u,null]}};class ku extends M2{sync=!0;[QD](D,u){return super[QD](D,u,()=>{})}[b8](D){if(!this[I2]){let q=this[C0](this.cwd,this.dmode);if(q)return this[d](q,D);this[I2]=!0}if(D.absolute!==this.cwd){let q=P(hD.dirname(String(D.absolute)));if(q!==this.cwd){let C=this[C0](q,this.dmode);if(C)return this[d](C,D)}}let[u,_]=Su(()=>M.lstatSync(String(D.absolute)));if(_&&(this.keep||this.newer&&_.mtime>(D.mtime??_.mtime)))return this[d8](D);if(u||this[g8](D,_))return this[QD](null,D);if(_.isDirectory()){if(D.type==="Directory"){let C=this.chmod&&D.mode&&(_.mode&4095)!==D.mode,[$]=C?Su(()=>{M.chmodSync(String(D.absolute),Number(D.mode))}):[];return this[QD]($,D)}let[q]=Su(()=>M.rmdirSync(String(D.absolute)));this[QD](q,D)}let[F]=D.absolute===this.cwd?[]:Su(()=>bq(String(D.absolute)));this[QD](F,D)}[m8](D,u){let _=typeof D.mode==="number"?D.mode&4095:this.fmode,F=($)=>{let Q;try{M.closeSync(q)}catch(J){Q=J}if($||Q)this[d]($||Q,D);u()},q;try{q=M.openSync(String(D.absolute),T8(D.size),_)}catch($){return F($)}let C=this.transform?this.transform(D)||D:D;if(C!==D)C.on("error",($)=>this[d]($,D)),D.pipe(C);C.on("data",($)=>{try{M.writeSync(q,$,0,$.length)}catch(Q){F(Q)}}),C.on("end",()=>{let $=null;if(D.mtime&&!this.noMtime){let Q=D.atime||new Date,J=D.mtime;try{M.futimesSync(q,Q,J)}catch(Z){try{M.utimesSync(String(D.absolute),Q,J)}catch(V){$=Z}}}if(this[O2](D)){let Q=this[j2](D),J=this[P2](D);try{M.fchownSync(q,Number(Q),Number(J))}catch(Z){try{M.chownSync(String(D.absolute),Number(Q),Number(J))}catch(V){$=$||Z}}}F($)})}[f8](D,u){let _=typeof D.mode==="number"?D.mode&4095:this.dmode,F=this[C0](String(D.absolute),_);if(F){this[d](F,D),u();return}if(D.mtime&&!this.noMtime)try{M.utimesSync(String(D.absolute),D.atime||new Date,D.mtime)}catch(q){}if(this[O2](D))try{M.chownSync(String(D.absolute),Number(this[j2](D)),Number(this[P2](D)))}catch(q){}u(),D.resume()}[C0](D,u){try{return q_(P(D),{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(_){return _}}[Eu](D,u,_,F){let q=`${_}Sync`;try{M[q](u,String(D.absolute)),F(),D.resume()}catch(C){return this[d](C,D)}}}var gq=(D)=>{let u=new ku(D),_=D.file,F=H_.statSync(_),q=D.maxReadSize||16777216;new f3(_,{readSize:q,size:F.size}).pipe(u)},mq=(D,u)=>{let _=new M2(D),F=D.maxReadSize||16777216,q=D.file;return new Promise(($,Q)=>{_.on("error",Q),_.on("close",$),H_.stat(q,(J,Z)=>{if(J)Q(J);else{let V=new g0(q,{readSize:F,size:Z.size});V.on("error",Q),V.pipe(_)}})})},T2=UD(gq,mq,(D)=>new ku(D),(D)=>new M2(D),(D,u)=>{if(u?.length)V8(D,u)});import _D from"node:fs";import x_ from"node:path";var fq=(D,u)=>{let _=new c0(D),F=!0,q,C;try{try{q=_D.openSync(D.file,"r+")}catch(J){if(J?.code==="ENOENT")q=_D.openSync(D.file,"w+");else throw J}let $=_D.fstatSync(q),Q=Buffer.alloc(512);D:for(C=0;C<$.size;C+=512){for(let V=0,K=0;V<512;V+=K){if(K=_D.readSync(q,Q,V,Q.length-V,C+V),C===0&&Q[0]===31&&Q[1]===139)throw Error("cannot append to compressed archives");if(!K)break D}let J=new CD(Q);if(!J.cksumValid)break;let Z=512*Math.ceil((J.size||0)/512);if(C+Z+512>$.size)break;if(C+=Z,D.mtimeCache&&J.mtime)D.mtimeCache.set(String(J.path),J.mtime)}F=!1,dq(D,_,C,q,u)}finally{if(F)try{_D.closeSync(q)}catch($){}}},dq=(D,u,_,F,q)=>{let C=new X2(D.file,{fd:F,start:_});u.pipe(C),cq(u,q)},lq=(D,u)=>{u=Array.from(u);let _=new U0(D),F=(C,$,Q)=>{let J=(B,L)=>{if(B)_D.close(C,(z)=>Q(B));else Q(null,L)},Z=0;if($===0)return J(null,0);let V=0,K=Buffer.alloc(512),X=(B,L)=>{if(B||typeof L>"u")return J(B);if(V+=L,V<512&&L)return _D.read(C,K,V,K.length-V,Z+V,X);if(Z===0&&K[0]===31&&K[1]===139)return J(Error("cannot append to compressed archives"));if(V<512)return J(null,Z);let z=new CD(K);if(!z.cksumValid)return J(null,Z);let j=512*Math.ceil((z.size??0)/512);if(Z+j+512>$)return J(null,Z);if(Z+=j+512,Z>=$)return J(null,Z);if(D.mtimeCache&&z.mtime)D.mtimeCache.set(String(z.path),z.mtime);V=0,_D.read(C,K,0,512,Z,X)};_D.read(C,K,0,512,Z,X)};return new Promise((C,$)=>{_.on("error",$);let Q="r+",J=(Z,V)=>{if(Z&&Z.code==="ENOENT"&&Q==="r+")return Q="w+",_D.open(D.file,Q,J);if(Z||!V)return $(Z);_D.fstat(V,(K,X)=>{if(K)return _D.close(V,()=>$(K));F(V,X.size,(B,L)=>{if(B)return $(B);let z=new sD(D.file,{fd:V,start:L});_.pipe(z),z.on("error",$),z.on("close",C),pq(_,u)})})};_D.open(D.file,Q,J)})},cq=(D,u)=>{u.forEach((_)=>{if(_.charAt(0)==="@")z0({file:x_.resolve(D.cwd,_.slice(1)),sync:!0,noResume:!0,onReadEntry:(F)=>D.add(F)});else D.add(_)}),D.end()},pq=async(D,u)=>{for(let _=0;_<u.length;_++){let F=String(u[_]);if(F.charAt(0)==="@")await z0({file:x_.resolve(String(D.cwd),F.slice(1)),noResume:!0,onReadEntry:(q)=>D.add(q)});else D.add(F)}D.end()},O0=UD(fq,lq,()=>{throw TypeError("file is required")},()=>{throw TypeError("file is required")},(D,u)=>{if(!U1(D))throw TypeError("file is required");if(D.gzip||D.brotli||D.zstd||D.file.endsWith(".br")||D.file.endsWith(".tbr"))throw TypeError("cannot append to compressed archives");if(!u?.length)throw TypeError("no paths specified to add/replace")});var iq=UD(O0.syncFile,O0.asyncFile,O0.syncNoFile,O0.asyncNoFile,(D,u=[])=>{O0.validate?.(D,u),aq(D)}),aq=(D)=>{let u=D.filter;if(!D.mtimeCache)D.mtimeCache=new Map;D.filter=u?(_,F)=>u(_,F)&&!((D.mtimeCache?.get(_)??F.mtime??0)>(F.mtime??0)):(_,F)=>!((D.mtimeCache?.get(_)??F.mtime??0)>(F.mtime??0))};var R={reset:"\x1B[0m",bold:"\x1B[1m",dim:"\x1B[2m",italic:"\x1B[3m",underline:"\x1B[4m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m"};var w5=KD(V5(),1),M5=KD(I3(),1),T5=KD(Z6(),1);import K6 from"fs";import k2 from"fs/promises";import w0 from"os";import X6 from"path";var I5={name:"@abacus-ai/cli",appName:"AbacusAI",binName:"abacusai",version:"1.106.24817",nodeVersion:"22.19.0",distro:"fb9b4b01c06699c1a80f26ca9de940a9aebb29e0",author:{name:"Abacus AI"},license:"Proprietary",main:"./dist/index.js",module:"./dist/index.js",source:"./src/index.ts",type:"module",homepage:"https://desktop.abacus.ai/",files:["dist"],bugs:{url:"mailto:support@abacus.ai"},bin:{abacusai:"./dist/index.js"},scripts:{build:"tsc && bun build ./src/index.ts --minify --target=node --outdir=dist"},devDependencies:{"@inquirer/prompts":"^7.9.0","@tsconfig/strictest":"^2.0.7","@types/color-name":"^2.0.0","@types/glob":"^9.0.0","@types/minimatch":"^6.0.0","@types/node":"^24.9.2","@types/semver":"^7.7.1","extract-zip":"^2.0.1","node-downloader-helper":"^2.1.9",semver:"^7.7.3","simple-update-notifier":"^2.0.0",tar:"^7.5.2",typescript:"^6.0.0-dev.20251031"},overrides:{yauzl:"3.2.0"}};var a=I5;function a$(){let D=process.versions.node;if(T5.default(D,a.nodeVersion))return!1;return!0}function s$(D){let u=w0.platform(),_=w0.arch(),q={x64:"x64",arm64:"arm64",ia32:"x86"}[_]||_;if(u==="win32")return`https://nodejs.org/dist/v${D}/node-v${D}-win-${q}.${_==="x64"||_==="ia32"?"zip":"7z"}`;else if(u==="darwin")return`https://nodejs.org/dist/v${D}/node-v${D}-darwin-${q}.tar.gz`;else return`https://nodejs.org/dist/v${D}/node-v${D}-linux-${q}.tar.gz`}function n$(D){let u=w0.platform(),_=w0.arch(),q={x64:"x64",arm64:"arm64",ia32:"x86"}[_]||_;if(u==="win32")return`node-v${D}-win-${q}.${_==="x64"||_==="ia32"?"zip":"7z"}`;else if(u==="darwin")return`node-v${D}-darwin-${q}.tar.gz`;else return`node-v${D}-linux-${q}.tar.gz`}async function q3(D){try{if(a$())return;let _=w0.platform()==="win32"?"node.exe":"node",F=X6.join(D,_);if(K6.existsSync(F))return;let q=X6.join(w0.homedir(),`node-${a.nodeVersion}`),C=X6.join(q,"bin",_);if(K6.existsSync(C)){await k2.copyFile(C,F);return}console.log(`${R.dim}Downloading Node.js ${a.nodeVersion}...${R.reset}`);let $=s$(a.nodeVersion),Q=n$(a.nodeVersion),J=new M5.DownloaderHelper($,w0.tmpdir(),{fileName:Q});J.on("error",async(V)=>{console.error(`${R.red}Failed to download Node.js from ${$}: ${V}${R.reset}`),await J.stop()}),await J.start();let Z=J.getDownloadPath();if(!K6.existsSync(q))await k2.mkdir(q);if(console.log(`${R.dim}Extracting Node.js ${a.nodeVersion} to ${q}...${R.reset}`),Q.endsWith(".tar.gz"))await o$(Z,q);else await t$(Z,q);await k2.copyFile(C,F)}catch(u){console.error(`${R.red}Failed to download Node.js: ${u instanceof Error?u.message:String(u)}
|
|
14
|
+
`).reduce(aF,Object.create(null)),aF=(D,u)=>{let _=parseInt(u,10);if(_!==Buffer.byteLength(u)+1)return D;u=u.slice((_+" ").length);let F=u.split("="),q=F.shift();if(!q)return D;let C=q.replace(/^SCHILY\.(dev|ino|nlink)/,"$1"),$=F.join("=");return D[C]=/^([A-Z]+\.)?([mac]|birth|creation)time$/.test(C)?new Date(Number($)*1000):/^[0-9]+$/.test($)?+$:$,D};var sF=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,P=sF!=="win32"?(D)=>D:(D)=>D&&D.replace(/\\/g,"/");class Y2 extends DD{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(D,u,_){super({});switch(this.pause(),this.extended=u,this.globalExtended=_,this.header=D,this.remain=D.size??0,this.startBlockSize=512*Math.ceil(this.remain/512),this.blockRemain=this.startBlockSize,this.type=D.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(!D.path)throw Error("no path provided for tar.ReadEntry");if(this.path=P(D.path),this.mode=D.mode,this.mode)this.mode=this.mode&4095;if(this.uid=D.uid,this.gid=D.gid,this.uname=D.uname,this.gname=D.gname,this.size=this.remain,this.mtime=D.mtime,this.atime=D.atime,this.ctime=D.ctime,this.linkpath=D.linkpath?P(D.linkpath):void 0,this.uname=D.uname,this.gname=D.gname,u)this.#D(u);if(_)this.#D(_,!0)}write(D){let u=D.length;if(u>this.blockRemain)throw Error("writing more to entry than is appropriate");let _=this.remain,F=this.blockRemain;if(this.remain=Math.max(0,_-u),this.blockRemain=Math.max(0,F-u),this.ignore)return!0;if(_>=u)return super.write(D);return super.write(D.subarray(0,_))}#D(D,u=!1){if(D.path)D.path=P(D.path);if(D.linkpath)D.linkpath=P(D.linkpath);Object.assign(this,Object.fromEntries(Object.entries(D).filter(([_,F])=>{return!(F===null||F===void 0||_==="path"&&u)})))}}var H0=(D,u,_,F={})=>{if(D.file)F.file=D.file;if(D.cwd)F.cwd=D.cwd;if(F.code=_ instanceof Error&&_.code||u,F.tarCode=u,!D.strict&&F.recoverable!==!1){if(_ instanceof Error)F=Object.assign(_,F),_=_.message;D.emit("warn",u,_,F)}else if(_ instanceof Error)D.emit("error",Object.assign(_,F));else D.emit("error",Object.assign(Error(`${u}: ${_}`),F))};var tF=1048576,Q8=Buffer.from([31,139]),J8=Buffer.from([40,181,47,253]),oF=Math.max(Q8.length,J8.length),$D=Symbol("state"),x0=Symbol("writeEntry"),kD=Symbol("readEntry"),F8=Symbol("nextEntry"),R1=Symbol("processEntry"),OD=Symbol("extendedHeader"),H2=Symbol("globalExtendedHeader"),rD=Symbol("meta"),N1=Symbol("emitMeta"),N=Symbol("buffer"),yD=Symbol("queue"),eD=Symbol("ended"),q8=Symbol("emittedEnd"),W0=Symbol("emit"),y=Symbol("unzip"),Vu=Symbol("consumeChunk"),Zu=Symbol("consumeChunkSub"),C8=Symbol("consumeBody"),S1=Symbol("consumeMeta"),E1=Symbol("consumeHeader"),x2=Symbol("consuming"),$8=Symbol("bufferConcat"),Ku=Symbol("maybeEnd"),f0=Symbol("writing"),D0=Symbol("aborted"),Xu=Symbol("onDone"),A0=Symbol("sawValidEntry"),Bu=Symbol("sawNullBlock"),Gu=Symbol("sawEOF"),k1=Symbol("closeStream"),rF=()=>!0;class u0 extends nF{file;strict;maxMetaEntrySize;filter;brotli;zstd;writable=!0;readable=!1;[yD]=[];[N];[kD];[x0];[$D]="begin";[rD]="";[OD];[H2];[eD]=!1;[y];[D0]=!1;[A0];[Bu]=!1;[Gu]=!1;[f0]=!1;[x2]=!1;[q8]=!1;constructor(D={}){super();if(this.file=D.file||"",this.on(Xu,()=>{if(this[$D]==="begin"||this[A0]===!1)this.warn("TAR_BAD_ARCHIVE","Unrecognized archive format")}),D.ondone)this.on(Xu,D.ondone);else this.on(Xu,()=>{this.emit("prefinish"),this.emit("finish"),this.emit("end")});this.strict=!!D.strict,this.maxMetaEntrySize=D.maxMetaEntrySize||tF,this.filter=typeof D.filter==="function"?D.filter:rF;let u=D.file&&(D.file.endsWith(".tar.br")||D.file.endsWith(".tbr"));this.brotli=!(D.gzip||D.zstd)&&D.brotli!==void 0?D.brotli:u?void 0:!1;let _=D.file&&(D.file.endsWith(".tar.zst")||D.file.endsWith(".tzst"));if(this.zstd=!(D.gzip||D.brotli)&&D.zstd!==void 0?D.zstd:_?!0:void 0,this.on("end",()=>this[k1]()),typeof D.onwarn==="function")this.on("warn",D.onwarn);if(typeof D.onReadEntry==="function")this.on("entry",D.onReadEntry)}warn(D,u,_={}){H0(this,D,u,_)}[E1](D,u){if(this[A0]===void 0)this[A0]=!1;let _;try{_=new CD(D,u,this[OD],this[H2])}catch(F){return this.warn("TAR_ENTRY_INVALID",F)}if(_.nullBlock)if(this[Bu]){if(this[Gu]=!0,this[$D]==="begin")this[$D]="header";this[W0]("eof")}else this[Bu]=!0,this[W0]("nullBlock");else if(this[Bu]=!1,!_.cksumValid)this.warn("TAR_ENTRY_INVALID","checksum failure",{header:_});else if(!_.path)this.warn("TAR_ENTRY_INVALID","path is required",{header:_});else{let F=_.type;if(/^(Symbolic)?Link$/.test(F)&&!_.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath required",{header:_});else if(!/^(Symbolic)?Link$/.test(F)&&!/^(Global)?ExtendedHeader$/.test(F)&&_.linkpath)this.warn("TAR_ENTRY_INVALID","linkpath forbidden",{header:_});else{let q=this[x0]=new Y2(_,this[OD],this[H2]);if(!this[A0])if(q.remain){let C=()=>{if(!q.invalid)this[A0]=!0};q.on("end",C)}else this[A0]=!0;if(q.meta){if(q.size>this.maxMetaEntrySize)q.ignore=!0,this[W0]("ignoredEntry",q),this[$D]="ignore",q.resume();else if(q.size>0)this[rD]="",q.on("data",(C)=>this[rD]+=C),this[$D]="meta"}else if(this[OD]=void 0,q.ignore=q.ignore||!this.filter(q.path,q),q.ignore)this[W0]("ignoredEntry",q),this[$D]=q.remain?"ignore":"header",q.resume();else{if(q.remain)this[$D]="body";else this[$D]="header",q.end();if(!this[kD])this[yD].push(q),this[F8]();else this[yD].push(q)}}}}[k1](){queueMicrotask(()=>this.emit("close"))}[R1](D){let u=!0;if(!D)this[kD]=void 0,u=!1;else if(Array.isArray(D)){let[_,...F]=D;this.emit(_,...F)}else if(this[kD]=D,this.emit("entry",D),!D.emittedEnd)D.on("end",()=>this[F8]()),u=!1;return u}[F8](){do;while(this[R1](this[yD].shift()));if(!this[yD].length){let D=this[kD];if(!D||D.flowing||D.size===D.remain){if(!this[f0])this.emit("drain")}else D.once("drain",()=>this.emit("drain"))}}[C8](D,u){let _=this[x0];if(!_)throw Error("attempt to consume body without entry??");let F=_.blockRemain??0,q=F>=D.length&&u===0?D:D.subarray(u,u+F);if(_.write(q),!_.blockRemain)this[$D]="header",this[x0]=void 0,_.end();return q.length}[S1](D,u){let _=this[x0],F=this[C8](D,u);if(!this[x0]&&_)this[N1](_);return F}[W0](D,u,_){if(!this[yD].length&&!this[kD])this.emit(D,u,_);else this[yD].push([D,u,_])}[N1](D){switch(this[W0]("meta",this[rD]),D.type){case"ExtendedHeader":case"OldExtendedHeader":this[OD]=oD.parse(this[rD],this[OD],!1);break;case"GlobalExtendedHeader":this[H2]=oD.parse(this[rD],this[H2],!0);break;case"NextFileHasLongPath":case"OldGnuLongPath":{let u=this[OD]??Object.create(null);this[OD]=u,u.path=this[rD].replace(/\0.*/,"");break}case"NextFileHasLongLinkpath":{let u=this[OD]||Object.create(null);this[OD]=u,u.linkpath=this[rD].replace(/\0.*/,"");break}default:throw Error("unknown meta: "+D.type)}}abort(D){this[D0]=!0,this.emit("abort",D),this.warn("TAR_ABORT",D,{recoverable:!1})}write(D,u,_){if(typeof u==="function")_=u,u=void 0;if(typeof D==="string")D=Buffer.from(D,typeof u==="string"?u:"utf8");if(this[D0])return _?.(),!1;if((this[y]===void 0||this.brotli===void 0&&this[y]===!1)&&D){if(this[N])D=Buffer.concat([this[N],D]),this[N]=void 0;if(D.length<oF)return this[N]=D,_?.(),!0;for(let Q=0;this[y]===void 0&&Q<Q8.length;Q++)if(D[Q]!==Q8[Q])this[y]=!1;let C=!1;if(this[y]===!1&&this.zstd!==!1){C=!0;for(let Q=0;Q<J8.length;Q++)if(D[Q]!==J8[Q]){C=!1;break}}let $=this.brotli===void 0&&!C;if(this[y]===!1&&$)if(D.length<512)if(this[eD])this.brotli=!0;else return this[N]=D,_?.(),!0;else try{new CD(D.subarray(0,512)),this.brotli=!1}catch(Q){this.brotli=!0}if(this[y]===void 0||this[y]===!1&&(this.brotli||C)){let Q=this[eD];this[eD]=!1,this[y]=this[y]===void 0?new s3({}):C?new D8({}):new o3({}),this[y].on("data",(Z)=>this[Vu](Z)),this[y].on("error",(Z)=>this.abort(Z)),this[y].on("end",()=>{this[eD]=!0,this[Vu]()}),this[f0]=!0;let J=!!this[y][Q?"end":"write"](D);return this[f0]=!1,_?.(),J}}if(this[f0]=!0,this[y])this[y].write(D);else this[Vu](D);this[f0]=!1;let q=this[yD].length?!1:this[kD]?this[kD].flowing:!0;if(!q&&!this[yD].length)this[kD]?.once("drain",()=>this.emit("drain"));return _?.(),q}[$8](D){if(D&&!this[D0])this[N]=this[N]?Buffer.concat([this[N],D]):D}[Ku](){if(this[eD]&&!this[q8]&&!this[D0]&&!this[x2]){this[q8]=!0;let D=this[x0];if(D&&D.blockRemain){let u=this[N]?this[N].length:0;if(this.warn("TAR_BAD_ARCHIVE",`Truncated input (needed ${D.blockRemain} more bytes, only ${u} available)`,{entry:D}),this[N])D.write(this[N]);D.end()}this[W0](Xu)}}[Vu](D){if(this[x2]&&D)this[$8](D);else if(!D&&!this[N])this[Ku]();else if(D){if(this[x2]=!0,this[N]){this[$8](D);let u=this[N];this[N]=void 0,this[Zu](u)}else this[Zu](D);while(this[N]&&this[N]?.length>=512&&!this[D0]&&!this[Gu]){let u=this[N];this[N]=void 0,this[Zu](u)}this[x2]=!1}if(!this[N]||this[eD])this[Ku]()}[Zu](D){let u=0,_=D.length;while(u+512<=_&&!this[D0]&&!this[Gu])switch(this[$D]){case"begin":case"header":this[E1](D,u),u+=512;break;case"ignore":case"body":u+=this[C8](D,u);break;case"meta":u+=this[S1](D,u);break;default:throw Error("invalid state: "+this[$D])}if(u<_)if(this[N])this[N]=Buffer.concat([D.subarray(u),this[N]]);else this[N]=D.subarray(u)}end(D,u,_){if(typeof D==="function")_=D,u=void 0,D=void 0;if(typeof u==="function")_=u,u=void 0;if(typeof D==="string")D=Buffer.from(D,u);if(_)this.once("finish",_);if(!this[D0])if(this[y]){if(D)this[y].write(D);this[y].end()}else{if(this[eD]=!0,this.brotli===void 0||this.zstd===void 0)D=D||Buffer.alloc(0);if(D)this.write(D);this[Ku]()}return this}}var _0=(D)=>{let u=D.length-1,_=-1;while(u>-1&&D.charAt(u)==="/")_=u,u--;return _===-1?D:D.slice(0,_)};var uq=(D)=>{let u=D.onReadEntry;D.onReadEntry=u?(_)=>{u(_),_.resume()}:(_)=>_.resume()},V8=(D,u)=>{let _=new Map(u.map((C)=>[_0(C),!0])),F=D.filter,q=(C,$="")=>{let Q=$||Dq(C).root||".",J;if(C===Q)J=!1;else{let Z=_.get(C);if(Z!==void 0)J=Z;else J=q(eF(C),Q)}return _.set(C,J),J};D.filter=F?(C,$)=>F(C,$)&&q(_0(C)):(C)=>q(_0(C))},_q=(D)=>{let u=new u0(D),_=D.file,F;try{F=d0.openSync(_,"r");let q=d0.fstatSync(F),C=D.maxReadSize||16777216;if(q.size<C){let $=Buffer.allocUnsafe(q.size),Q=d0.readSync(F,$,0,q.size,0);u.end(Q===$.byteLength?$:$.subarray(0,Q))}else{let $=0,Q=Buffer.allocUnsafe(C);while($<q.size){let J=d0.readSync(F,Q,0,C,$);if(J===0)break;$+=J,u.write(Q.subarray(0,J))}u.end()}}finally{if(typeof F==="number")try{d0.closeSync(F)}catch(q){}}},Fq=(D,u)=>{let _=new u0(D),F=D.maxReadSize||16777216,q=D.file;return new Promise(($,Q)=>{_.on("error",Q),_.on("end",$),d0.stat(q,(J,Z)=>{if(J)Q(J);else{let V=new g0(q,{readSize:F,size:Z.size});V.on("error",Q),V.pipe(_)}})})},z0=UD(_q,Fq,(D)=>new u0(D),(D)=>new u0(D),(D,u)=>{if(u?.length)V8(D,u);if(!D.noResume)uq(D)});import Iu from"fs";import jD from"fs";import g1 from"path";var Z8=(D,u,_)=>{if(D&=4095,_)D=(D|384)&-19;if(u){if(D&256)D|=64;if(D&32)D|=8;if(D&4)D|=1}return D};import{win32 as qq}from"node:path";var{isAbsolute:Cq,parse:y1}=qq,W2=(D)=>{let u="",_=y1(D);while(Cq(D)||_.root){let F=D.charAt(0)==="/"&&D.slice(0,4)!=="//?/"?"/":_.root;D=D.slice(F.length),u+=F,_=y1(D)}return[u,D]};var Yu=["|","<",">","?",":"],K8=Yu.map((D)=>String.fromCharCode(61440+D.charCodeAt(0))),$q=new Map(Yu.map((D,u)=>[D,K8[u]])),Qq=new Map(K8.map((D,u)=>[D,Yu[u]])),X8=(D)=>Yu.reduce((u,_)=>u.split(_).join($q.get(_)),D),h1=(D)=>K8.reduce((u,_)=>u.split(_).join(Qq.get(_)),D);var c1=(D,u)=>{if(!u)return P(D);return D=P(D).replace(/^\.(\/|$)/,""),_0(u)+"/"+D},Jq=16777216,m1=Symbol("process"),f1=Symbol("file"),d1=Symbol("directory"),G8=Symbol("symlink"),l1=Symbol("hardlink"),A2=Symbol("header"),Hu=Symbol("read"),Y8=Symbol("lstat"),xu=Symbol("onlstat"),H8=Symbol("onread"),x8=Symbol("onreadlink"),W8=Symbol("openfile"),A8=Symbol("onopenfile"),F0=Symbol("close"),Wu=Symbol("mode"),z8=Symbol("awaitDrain"),B8=Symbol("ondrain"),PD=Symbol("prefix");class Au extends DD{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;#D=!1;constructor(D,u={}){let _=B2(u);super();if(this.path=P(D),this.portable=!!_.portable,this.maxReadSize=_.maxReadSize||Jq,this.linkCache=_.linkCache||new Map,this.statCache=_.statCache||new Map,this.preservePaths=!!_.preservePaths,this.cwd=P(_.cwd||process.cwd()),this.strict=!!_.strict,this.noPax=!!_.noPax,this.noMtime=!!_.noMtime,this.mtime=_.mtime,this.prefix=_.prefix?P(_.prefix):void 0,this.onWriteEntry=_.onWriteEntry,typeof _.onwarn==="function")this.on("warn",_.onwarn);let F=!1;if(!this.preservePaths){let[C,$]=W2(this.path);if(C&&typeof $==="string")this.path=$,F=C}if(this.win32=!!_.win32||process.platform==="win32",this.win32)this.path=h1(this.path.replace(/\\/g,"/")),D=D.replace(/\\/g,"/");if(this.absolute=P(_.absolute||g1.resolve(this.cwd,D)),this.path==="")this.path="./";if(F)this.warn("TAR_ENTRY_INFO",`stripping ${F} from absolute path`,{entry:this,path:F+this.path});let q=this.statCache.get(this.absolute);if(q)this[xu](q);else this[Y8]()}warn(D,u,_={}){return H0(this,D,u,_)}emit(D,...u){if(D==="error")this.#D=!0;return super.emit(D,...u)}[Y8](){jD.lstat(this.absolute,(D,u)=>{if(D)return this.emit("error",D);this[xu](u)})}[xu](D){if(this.statCache.set(this.absolute,D),this.stat=D,!D.isFile())D.size=0;this.type=Vq(D),this.emit("stat",D),this[m1]()}[m1](){switch(this.type){case"File":return this[f1]();case"Directory":return this[d1]();case"SymbolicLink":return this[G8]();default:return this.end()}}[Wu](D){return Z8(D,this.type==="Directory",this.portable)}[PD](D){return c1(D,this.prefix)}[A2](){if(!this.stat)throw Error("cannot write header before stat");if(this.type==="Directory"&&this.portable)this.noMtime=!0;if(this.onWriteEntry?.(this),this.header=new CD({path:this[PD](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[PD](this.linkpath):this.linkpath,mode:this[Wu](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 oD({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[PD](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[PD](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 D=this.header?.block;if(!D)throw Error("failed to encode header");super.write(D)}[d1](){if(!this.stat)throw Error("cannot create directory entry without stat");if(this.path.slice(-1)!=="/")this.path+="/";this.stat.size=0,this[A2](),this.end()}[G8](){jD.readlink(this.absolute,(D,u)=>{if(D)return this.emit("error",D);this[x8](u)})}[x8](D){this.linkpath=P(D),this[A2](),this.end()}[l1](D){if(!this.stat)throw Error("cannot create link entry without stat");this.type="Link",this.linkpath=P(g1.relative(this.cwd,D)),this.stat.size=0,this[A2](),this.end()}[f1](){if(!this.stat)throw Error("cannot create file entry without stat");if(this.stat.nlink>1){let D=`${this.stat.dev}:${this.stat.ino}`,u=this.linkCache.get(D);if(u?.indexOf(this.cwd)===0)return this[l1](u);this.linkCache.set(D,this.absolute)}if(this[A2](),this.stat.size===0)return this.end();this[W8]()}[W8](){jD.open(this.absolute,"r",(D,u)=>{if(D)return this.emit("error",D);this[A8](u)})}[A8](D){if(this.fd=D,this.#D)return this[F0]();if(!this.stat)throw 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[Hu]()}[Hu](){let{fd:D,buf:u,offset:_,length:F,pos:q}=this;if(D===void 0||u===void 0)throw Error("cannot read file without first opening");jD.read(D,u,_,F,q,(C,$)=>{if(C)return this[F0](()=>this.emit("error",C));this[H8]($)})}[F0](D=()=>{}){if(this.fd!==void 0)jD.close(this.fd,D)}[H8](D){if(D<=0&&this.remain>0){let F=Object.assign(Error("encountered unexpected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[F0](()=>this.emit("error",F))}if(D>this.remain){let F=Object.assign(Error("did not encounter expected EOF"),{path:this.absolute,syscall:"read",code:"EOF"});return this[F0](()=>this.emit("error",F))}if(!this.buf)throw Error("should have created buffer prior to reading");if(D===this.remain)for(let F=D;F<this.length&&D<this.blockRemain;F++)this.buf[F+this.offset]=0,D++,this.remain++;let u=this.offset===0&&D===this.buf.length?this.buf:this.buf.subarray(this.offset,this.offset+D);if(!this.write(u))this[z8](()=>this[B8]());else this[B8]()}[z8](D){this.once("drain",D)}write(D,u,_){if(typeof u==="function")_=u,u=void 0;if(typeof D==="string")D=Buffer.from(D,typeof u==="string"?u:"utf8");if(this.blockRemain<D.length){let F=Object.assign(Error("writing more data than expected"),{path:this.absolute});return this.emit("error",F)}return this.remain-=D.length,this.blockRemain-=D.length,this.pos+=D.length,this.offset+=D.length,super.write(D,null,_)}[B8](){if(!this.remain){if(this.blockRemain)super.write(Buffer.alloc(this.blockRemain));return this[F0]((D)=>D?this.emit("error",D):this.end())}if(!this.buf)throw Error("buffer lost somehow in ONDRAIN");if(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[Hu]()}}class L8 extends Au{sync=!0;[Y8](){this[xu](jD.lstatSync(this.absolute))}[G8](){this[x8](jD.readlinkSync(this.absolute))}[W8](){this[A8](jD.openSync(this.absolute,"r"))}[Hu](){let D=!0;try{let{fd:u,buf:_,offset:F,length:q,pos:C}=this;if(u===void 0||_===void 0)throw Error("fd and buf must be set in READ method");let $=jD.readSync(u,_,F,q,C);this[H8]($),D=!1}finally{if(D)try{this[F0](()=>{})}catch(u){}}}[z8](D){D()}[F0](D=()=>{}){if(this.fd!==void 0)jD.closeSync(this.fd);D()}}class U8 extends DD{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(D,u,_={}){return H0(this,D,u,_)}constructor(D,u={}){let _=B2(u);super();this.preservePaths=!!_.preservePaths,this.portable=!!_.portable,this.strict=!!_.strict,this.noPax=!!_.noPax,this.noMtime=!!_.noMtime,this.onWriteEntry=_.onWriteEntry,this.readEntry=D;let{type:F}=D;if(F==="Unsupported")throw Error("writing entry that should be ignored");if(this.type=F,this.type==="Directory"&&this.portable)this.noMtime=!0;if(this.prefix=_.prefix,this.path=P(D.path),this.mode=D.mode!==void 0?this[Wu](D.mode):void 0,this.uid=this.portable?void 0:D.uid,this.gid=this.portable?void 0:D.gid,this.uname=this.portable?void 0:D.uname,this.gname=this.portable?void 0:D.gname,this.size=D.size,this.mtime=this.noMtime?void 0:_.mtime||D.mtime,this.atime=this.portable?void 0:D.atime,this.ctime=this.portable?void 0:D.ctime,this.linkpath=D.linkpath!==void 0?P(D.linkpath):void 0,typeof _.onwarn==="function")this.on("warn",_.onwarn);let q=!1;if(!this.preservePaths){let[$,Q]=W2(this.path);if($&&typeof Q==="string")this.path=Q,q=$}if(this.remain=D.size,this.blockRemain=D.startBlockSize,this.onWriteEntry?.(this),this.header=new CD({path:this[PD](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[PD](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}),q)this.warn("TAR_ENTRY_INFO",`stripping ${q} from absolute path`,{entry:this,path:q+this.path});if(this.header.encode()&&!this.noPax)super.write(new oD({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[PD](this.path),linkpath:this.type==="Link"&&this.linkpath!==void 0?this[PD](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 C=this.header?.block;if(!C)throw Error("failed to encode header");super.write(C),D.pipe(this)}[PD](D){return c1(D,this.prefix)}[Wu](D){return Z8(D,this.type==="Directory",this.portable)}write(D,u,_){if(typeof u==="function")_=u,u=void 0;if(typeof D==="string")D=Buffer.from(D,typeof u==="string"?u:"utf8");let F=D.length;if(F>this.blockRemain)throw Error("writing more to entry than is appropriate");return this.blockRemain-=F,super.write(D,_)}end(D,u,_){if(this.blockRemain)super.write(Buffer.alloc(this.blockRemain));if(typeof D==="function")_=D,u=void 0,D=void 0;if(typeof u==="function")_=u,u=void 0;if(typeof D==="string")D=Buffer.from(D,u??"utf8");if(_)this.once("finish",_);return D?super.end(D,_):super.end(_),this}}var Vq=(D)=>D.isFile()?"File":D.isDirectory()?"Directory":D.isSymbolicLink()?"SymbolicLink":"Unsupported";class q0{tail;head;length=0;static create(D=[]){return new q0(D)}constructor(D=[]){for(let u of D)this.push(u)}*[Symbol.iterator](){for(let D=this.head;D;D=D.next)yield D.value}removeNode(D){if(D.list!==this)throw Error("removing node which does not belong to this list");let{next:u,prev:_}=D;if(u)u.prev=_;if(_)_.next=u;if(D===this.head)this.head=u;if(D===this.tail)this.tail=_;return this.length--,D.next=void 0,D.prev=void 0,D.list=void 0,u}unshiftNode(D){if(D===this.head)return;if(D.list)D.list.removeNode(D);let u=this.head;if(D.list=this,D.next=u,u)u.prev=D;if(this.head=D,!this.tail)this.tail=D;this.length++}pushNode(D){if(D===this.tail)return;if(D.list)D.list.removeNode(D);let u=this.tail;if(D.list=this,D.prev=u,u)u.next=D;if(this.tail=D,!this.head)this.head=D;this.length++}push(...D){for(let u=0,_=D.length;u<_;u++)Kq(this,D[u]);return this.length}unshift(...D){for(var u=0,_=D.length;u<_;u++)Xq(this,D[u]);return this.length}pop(){if(!this.tail)return;let D=this.tail.value,u=this.tail;if(this.tail=this.tail.prev,this.tail)this.tail.next=void 0;else this.head=void 0;return u.list=void 0,this.length--,D}shift(){if(!this.head)return;let D=this.head.value,u=this.head;if(this.head=this.head.next,this.head)this.head.prev=void 0;else this.tail=void 0;return u.list=void 0,this.length--,D}forEach(D,u){u=u||this;for(let _=this.head,F=0;_;F++)D.call(u,_.value,F,this),_=_.next}forEachReverse(D,u){u=u||this;for(let _=this.tail,F=this.length-1;_;F--)D.call(u,_.value,F,this),_=_.prev}get(D){let u=0,_=this.head;for(;!!_&&u<D;u++)_=_.next;if(u===D&&!!_)return _.value}getReverse(D){let u=0,_=this.tail;for(;!!_&&u<D;u++)_=_.prev;if(u===D&&!!_)return _.value}map(D,u){u=u||this;let _=new q0;for(let F=this.head;F;)_.push(D.call(u,F.value,this)),F=F.next;return _}mapReverse(D,u){u=u||this;var _=new q0;for(let F=this.tail;F;)_.push(D.call(u,F.value,this)),F=F.prev;return _}reduce(D,u){let _,F=this.head;if(arguments.length>1)_=u;else if(this.head)F=this.head.next,_=this.head.value;else throw TypeError("Reduce of empty list with no initial value");for(var q=0;F;q++)_=D(_,F.value,q),F=F.next;return _}reduceReverse(D,u){let _,F=this.tail;if(arguments.length>1)_=u;else if(this.tail)F=this.tail.prev,_=this.tail.value;else throw TypeError("Reduce of empty list with no initial value");for(let q=this.length-1;F;q--)_=D(_,F.value,q),F=F.prev;return _}toArray(){let D=Array(this.length);for(let u=0,_=this.head;_;u++)D[u]=_.value,_=_.next;return D}toArrayReverse(){let D=Array(this.length);for(let u=0,_=this.tail;_;u++)D[u]=_.value,_=_.prev;return D}slice(D=0,u=this.length){if(u<0)u+=this.length;if(D<0)D+=this.length;let _=new q0;if(u<D||u<0)return _;if(D<0)D=0;if(u>this.length)u=this.length;let F=this.head,q=0;for(q=0;!!F&&q<D;q++)F=F.next;for(;!!F&&q<u;q++,F=F.next)_.push(F.value);return _}sliceReverse(D=0,u=this.length){if(u<0)u+=this.length;if(D<0)D+=this.length;let _=new q0;if(u<D||u<0)return _;if(D<0)D=0;if(u>this.length)u=this.length;let F=this.length,q=this.tail;for(;!!q&&F>u;F--)q=q.prev;for(;!!q&&F>D;F--,q=q.prev)_.push(q.value);return _}splice(D,u=0,..._){if(D>this.length)D=this.length-1;if(D<0)D=this.length+D;let F=this.head;for(let C=0;!!F&&C<D;C++)F=F.next;let q=[];for(let C=0;!!F&&C<u;C++)q.push(F.value),F=this.removeNode(F);if(!F)F=this.tail;else if(F!==this.tail)F=F.prev;for(let C of _)F=Zq(this,F,C);return q}reverse(){let D=this.head,u=this.tail;for(let _=D;_;_=_.prev){let F=_.prev;_.prev=_.next,_.next=F}return this.head=u,this.tail=D,this}}function Zq(D,u,_){let F=u,q=u?u.next:D.head,C=new zu(_,F,q,D);if(C.next===void 0)D.tail=C;if(C.prev===void 0)D.head=C;return D.length++,C}function Kq(D,u){if(D.tail=new zu(u,D.tail,void 0,D),!D.head)D.head=D.tail;D.length++}function Xq(D,u){if(D.head=new zu(u,void 0,D.head,D),!D.tail)D.tail=D.head;D.length++}class zu{list;next;prev;value;constructor(D,u,_,F){if(this.list=F,this.value=D,u)u.next=this,this.prev=u;else this.prev=void 0;if(_)_.prev=this,this.next=_;else this.next=void 0}}import n1 from"path";class I8{path;absolute;entry;stat;readdir;pending=!1;ignore=!1;piped=!1;constructor(D,u){this.path=D||"./",this.absolute=u}}var p1=Buffer.alloc(1024),Lu=Symbol("onStat"),z2=Symbol("ended"),YD=Symbol("queue"),l0=Symbol("current"),L0=Symbol("process"),L2=Symbol("processing"),i1=Symbol("processJob"),HD=Symbol("jobs"),O8=Symbol("jobDone"),Uu=Symbol("addFSEntry"),a1=Symbol("addTarEntry"),w8=Symbol("stat"),M8=Symbol("readdir"),Ou=Symbol("onreaddir"),ju=Symbol("pipe"),s1=Symbol("entry"),j8=Symbol("entryOpt"),Pu=Symbol("writeEntryClass"),t1=Symbol("write"),P8=Symbol("ondrain");class U0 extends DD{opt;cwd;maxReadSize;preservePaths;strict;noPax;prefix;linkCache;statCache;file;portable;zip;readdirCache;noDirRecurse;follow;noMtime;mtime;filter;jobs;[Pu];onWriteEntry;[YD];[HD]=0;[L2]=!1;[z2]=!1;constructor(D={}){super();if(this.opt=D,this.file=D.file||"",this.cwd=D.cwd||process.cwd(),this.maxReadSize=D.maxReadSize,this.preservePaths=!!D.preservePaths,this.strict=!!D.strict,this.noPax=!!D.noPax,this.prefix=P(D.prefix||""),this.linkCache=D.linkCache||new Map,this.statCache=D.statCache||new Map,this.readdirCache=D.readdirCache||new Map,this.onWriteEntry=D.onWriteEntry,this[Pu]=Au,typeof D.onwarn==="function")this.on("warn",D.onwarn);if(this.portable=!!D.portable,D.gzip||D.brotli||D.zstd){if((D.gzip?1:0)+(D.brotli?1:0)+(D.zstd?1:0)>1)throw TypeError("gzip, brotli, zstd are mutually exclusive");if(D.gzip){if(typeof D.gzip!=="object")D.gzip={};if(this.portable)D.gzip.portable=!0;this.zip=new a3(D.gzip)}if(D.brotli){if(typeof D.brotli!=="object")D.brotli={};this.zip=new t3(D.brotli)}if(D.zstd){if(typeof D.zstd!=="object")D.zstd={};this.zip=new e3(D.zstd)}if(!this.zip)throw Error("impossible");let u=this.zip;u.on("data",(_)=>super.write(_)),u.on("end",()=>super.end()),u.on("drain",()=>this[P8]()),this.on("resume",()=>u.resume())}else this.on("drain",this[P8]);if(this.noDirRecurse=!!D.noDirRecurse,this.follow=!!D.follow,this.noMtime=!!D.noMtime,D.mtime)this.mtime=D.mtime;this.filter=typeof D.filter==="function"?D.filter:()=>!0,this[YD]=new q0,this[HD]=0,this.jobs=Number(D.jobs)||4,this[L2]=!1,this[z2]=!1}[t1](D){return super.write(D)}add(D){return this.write(D),this}end(D,u,_){if(typeof D==="function")_=D,D=void 0;if(typeof u==="function")_=u,u=void 0;if(D)this.add(D);if(this[z2]=!0,this[L0](),_)_();return this}write(D){if(this[z2])throw Error("write after end");if(D instanceof Y2)this[a1](D);else this[Uu](D);return this.flowing}[a1](D){let u=P(n1.resolve(this.cwd,D.path));if(!this.filter(D.path,D))D.resume();else{let _=new I8(D.path,u);_.entry=new U8(D,this[j8](_)),_.entry.on("end",()=>this[O8](_)),this[HD]+=1,this[YD].push(_)}this[L0]()}[Uu](D){let u=P(n1.resolve(this.cwd,D));this[YD].push(new I8(D,u)),this[L0]()}[w8](D){D.pending=!0,this[HD]+=1;let u=this.follow?"stat":"lstat";Iu[u](D.absolute,(_,F)=>{if(D.pending=!1,this[HD]-=1,_)this.emit("error",_);else this[Lu](D,F)})}[Lu](D,u){if(this.statCache.set(D.absolute,u),D.stat=u,!this.filter(D.path,u))D.ignore=!0;this[L0]()}[M8](D){D.pending=!0,this[HD]+=1,Iu.readdir(D.absolute,(u,_)=>{if(D.pending=!1,this[HD]-=1,u)return this.emit("error",u);this[Ou](D,_)})}[Ou](D,u){this.readdirCache.set(D.absolute,u),D.readdir=u,this[L0]()}[L0](){if(this[L2])return;this[L2]=!0;for(let D=this[YD].head;!!D&&this[HD]<this.jobs;D=D.next)if(this[i1](D.value),D.value.ignore){let u=D.next;this[YD].removeNode(D),D.next=u}if(this[L2]=!1,this[z2]&&!this[YD].length&&this[HD]===0)if(this.zip)this.zip.end(p1);else super.write(p1),super.end()}get[l0](){return this[YD]&&this[YD].head&&this[YD].head.value}[O8](D){this[YD].shift(),this[HD]-=1,this[L0]()}[i1](D){if(D.pending)return;if(D.entry){if(D===this[l0]&&!D.piped)this[ju](D);return}if(!D.stat){let u=this.statCache.get(D.absolute);if(u)this[Lu](D,u);else this[w8](D)}if(!D.stat)return;if(D.ignore)return;if(!this.noDirRecurse&&D.stat.isDirectory()&&!D.readdir){let u=this.readdirCache.get(D.absolute);if(u)this[Ou](D,u);else this[M8](D);if(!D.readdir)return}if(D.entry=this[s1](D),!D.entry){D.ignore=!0;return}if(D===this[l0]&&!D.piped)this[ju](D)}[j8](D){return{onwarn:(u,_,F)=>this.warn(u,_,F),noPax:this.noPax,cwd:this.cwd,absolute:D.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}}[s1](D){this[HD]+=1;try{return new this[Pu](D.path,this[j8](D)).on("end",()=>this[O8](D)).on("error",(_)=>this.emit("error",_))}catch(u){this.emit("error",u)}}[P8](){if(this[l0]&&this[l0].entry)this[l0].entry.resume()}[ju](D){if(D.piped=!0,D.readdir)D.readdir.forEach((F)=>{let q=D.path,C=q==="./"?"":q.replace(/\/*$/,"/");this[Uu](C+F)});let u=D.entry,_=this.zip;if(!u)throw Error("cannot pipe without source");if(_)u.on("data",(F)=>{if(!_.write(F))u.pause()});else u.on("data",(F)=>{if(!super.write(F))u.pause()})}pause(){if(this.zip)this.zip.pause();return super.pause()}warn(D,u,_={}){H0(this,D,u,_)}}class c0 extends U0{sync=!0;constructor(D){super(D);this[Pu]=L8}pause(){}resume(){}[w8](D){let u=this.follow?"statSync":"lstatSync";this[Lu](D,Iu[u](D.absolute))}[M8](D){this[Ou](D,Iu.readdirSync(D.absolute))}[ju](D){let u=D.entry,_=this.zip;if(D.readdir)D.readdir.forEach((F)=>{let q=D.path,C=q==="./"?"":q.replace(/\/*$/,"/");this[Uu](C+F)});if(!u)throw Error("Cannot pipe without source");if(_)u.on("data",(F)=>{_.write(F)});else u.on("data",(F)=>{super[t1](F)})}}var Bq=(D,u)=>{let _=new c0(D),F=new X2(D.file,{mode:D.mode||438});_.pipe(F),r1(_,u)},Gq=(D,u)=>{let _=new U0(D),F=new sD(D.file,{mode:D.mode||438});_.pipe(F);let q=new Promise((C,$)=>{F.on("error",$),F.on("close",C),_.on("error",$)});return e1(_,u),q},r1=(D,u)=>{u.forEach((_)=>{if(_.charAt(0)==="@")z0({file:o1.resolve(D.cwd,_.slice(1)),sync:!0,noResume:!0,onReadEntry:(F)=>D.add(F)});else D.add(_)}),D.end()},e1=async(D,u)=>{for(let _=0;_<u.length;_++){let F=String(u[_]);if(F.charAt(0)==="@")await z0({file:o1.resolve(String(D.cwd),F.slice(1)),noResume:!0,onReadEntry:(q)=>{D.add(q)}});else D.add(F)}D.end()},Yq=(D,u)=>{let _=new c0(D);return r1(_,u),_},Hq=(D,u)=>{let _=new U0(D);return e1(_,u),_},xq=UD(Bq,Gq,Yq,Hq,(D,u)=>{if(!u?.length)throw TypeError("no paths specified to add to archive")});import H_ from"node:fs";import Eq from"node:assert";import{randomBytes as Y_}from"node:crypto";import M from"node:fs";import hD from"node:path";import D_ from"fs";var Wq=process.env.__FAKE_PLATFORM__||process.platform,Aq=Wq==="win32",{O_CREAT:zq,O_TRUNC:Lq,O_WRONLY:Uq}=D_.constants,u_=Number(process.env.__FAKE_FS_O_FILENAME__)||D_.constants.UV_FS_O_FILEMAP||0,Oq=Aq&&!!u_,jq=524288,Pq=u_|Lq|zq|Uq,T8=!Oq?()=>"w":(D)=>D<jq?Pq:"w";import Mu from"node:fs";import U2 from"node:path";var v8=(D,u,_)=>{try{return Mu.lchownSync(D,u,_)}catch(F){if(F?.code!=="ENOENT")throw F}},wu=(D,u,_,F)=>{Mu.lchown(D,u,_,(q)=>{F(q&&q?.code!=="ENOENT"?q:null)})},Iq=(D,u,_,F,q)=>{if(u.isDirectory())R8(U2.resolve(D,u.name),_,F,(C)=>{if(C)return q(C);let $=U2.resolve(D,u.name);wu($,_,F,q)});else{let C=U2.resolve(D,u.name);wu(C,_,F,q)}},R8=(D,u,_,F)=>{Mu.readdir(D,{withFileTypes:!0},(q,C)=>{if(q){if(q.code==="ENOENT")return F();else if(q.code!=="ENOTDIR"&&q.code!=="ENOTSUP")return F(q)}if(q||!C.length)return wu(D,u,_,F);let $=C.length,Q=null,J=(Z)=>{if(Q)return;if(Z)return F(Q=Z);if(--$===0)return wu(D,u,_,F)};for(let Z of C)Iq(D,Z,u,_,J)})},wq=(D,u,_,F)=>{if(u.isDirectory())N8(U2.resolve(D,u.name),_,F);v8(U2.resolve(D,u.name),_,F)},N8=(D,u,_)=>{let F;try{F=Mu.readdirSync(D,{withFileTypes:!0})}catch(q){let C=q;if(C?.code==="ENOENT")return;else if(C?.code==="ENOTDIR"||C?.code==="ENOTSUP")return v8(D,u,_);else throw C}for(let q of F)wq(D,q,u,_);return v8(D,u,_)};import uD from"node:fs";import Mq from"node:fs/promises";import Ru from"node:path";class Tu extends Error{path;code;syscall="chdir";constructor(D,u){super(`${u}: Cannot cd into '${D}'`);this.path=D,this.code=u}get name(){return"CwdError"}}class vu extends Error{path;symlink;syscall="symlink";code="TAR_SYMLINK_ERROR";constructor(D,u){super("TAR_SYMLINK_ERROR: Cannot extract through symbolic link");this.symlink=D,this.path=u}get name(){return"SymlinkError"}}var Tq=(D,u)=>{uD.stat(D,(_,F)=>{if(_||!F.isDirectory())_=new Tu(D,_?.code||"ENOTDIR");u(_)})},__=(D,u,_)=>{D=P(D);let F=u.umask??18,q=u.mode|448,C=(q&F)!==0,$=u.uid,Q=u.gid,J=typeof $==="number"&&typeof Q==="number"&&($!==u.processUid||Q!==u.processGid),Z=u.preserve,V=u.unlink,K=P(u.cwd),X=(z,j)=>{if(z)_(z);else if(j&&J)R8(j,$,Q,(E)=>X(E));else if(C)uD.chmod(D,q,_);else _()};if(D===K)return Tq(D,X);if(Z)return Mq.mkdir(D,{mode:q,recursive:!0}).then((z)=>X(null,z??void 0),X);let L=P(Ru.relative(K,D)).split("/");S8(K,L,q,V,K,void 0,X)},S8=(D,u,_,F,q,C,$)=>{if(!u.length)return $(null,C);let Q=u.shift(),J=P(Ru.resolve(D+"/"+Q));uD.mkdir(J,_,F_(J,u,_,F,q,C,$))},F_=(D,u,_,F,q,C,$)=>(Q)=>{if(Q)uD.lstat(D,(J,Z)=>{if(J)J.path=J.path&&P(J.path),$(J);else if(Z.isDirectory())S8(D,u,_,F,q,C,$);else if(F)uD.unlink(D,(V)=>{if(V)return $(V);uD.mkdir(D,_,F_(D,u,_,F,q,C,$))});else if(Z.isSymbolicLink())return $(new vu(D,D+"/"+u.join("/")));else $(Q)});else C=C||D,S8(D,u,_,F,q,C,$)},vq=(D)=>{let u=!1,_=void 0;try{u=uD.statSync(D).isDirectory()}catch(F){_=F?.code}finally{if(!u)throw new Tu(D,_??"ENOTDIR")}},q_=(D,u)=>{D=P(D);let _=u.umask??18,F=u.mode|448,q=(F&_)!==0,C=u.uid,$=u.gid,Q=typeof C==="number"&&typeof $==="number"&&(C!==u.processUid||$!==u.processGid),J=u.preserve,Z=u.unlink,V=P(u.cwd),K=(z)=>{if(z&&Q)N8(z,C,$);if(q)uD.chmodSync(D,F)};if(D===V)return vq(V),K();if(J)return K(uD.mkdirSync(D,{mode:F,recursive:!0})??void 0);let B=P(Ru.relative(V,D)).split("/"),L=void 0;for(let z=B.shift(),j=V;z&&(j+="/"+z);z=B.shift()){j=P(Ru.resolve(j));try{uD.mkdirSync(j,F),L=L||j}catch(E){let c=uD.lstatSync(j);if(c.isDirectory())continue;else if(Z){uD.unlinkSync(j),uD.mkdirSync(j,F),L=L||j;continue}else if(c.isSymbolicLink())return new vu(j,j+"/"+B.join("/"))}}return K(L)};import{join as $_}from"node:path";var E8=Object.create(null);var p0=new Set,C_=(D)=>{if(!p0.has(D))E8[D]=D.normalize("NFD");else p0.delete(D);p0.add(D);let u=E8[D],_=p0.size-1e4;if(_>1000){for(let F of p0)if(p0.delete(F),delete E8[F],--_<=0)break}return u};var Rq=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,Nq=Rq==="win32",Sq=(D)=>{return D.split("/").slice(0,-1).reduce((_,F)=>{let q=_[_.length-1];if(q!==void 0)F=$_(q,F);return _.push(F||"/"),_},[])};class k8{#D=new Map;#_=new Map;#u=new Set;reserve(D,u){D=Nq?["win32 parallelization disabled"]:D.map((F)=>{return _0($_(C_(F))).toLowerCase()});let _=new Set(D.map((F)=>Sq(F)).reduce((F,q)=>F.concat(q)));this.#_.set(u,{dirs:_,paths:D});for(let F of D){let q=this.#D.get(F);if(!q)this.#D.set(F,[u]);else q.push(u)}for(let F of _){let q=this.#D.get(F);if(!q)this.#D.set(F,[new Set([u])]);else{let C=q[q.length-1];if(C instanceof Set)C.add(u);else q.push(new Set([u]))}}return this.#C(u)}#$(D){let u=this.#_.get(D);if(!u)throw Error("function does not have any path reservations");return{paths:u.paths.map((_)=>this.#D.get(_)),dirs:[...u.dirs].map((_)=>this.#D.get(_))}}check(D){let{paths:u,dirs:_}=this.#$(D);return u.every((F)=>F&&F[0]===D)&&_.every((F)=>F&&F[0]instanceof Set&&F[0].has(D))}#C(D){if(this.#u.has(D)||!this.check(D))return!1;return this.#u.add(D),D(()=>this.#F(D)),!0}#F(D){if(!this.#u.has(D))return!1;let u=this.#_.get(D);if(!u)throw Error("invalid reservation");let{paths:_,dirs:F}=u,q=new Set;for(let C of _){let $=this.#D.get(C);if(!$||$?.[0]!==D)continue;let Q=$[1];if(!Q){this.#D.delete(C);continue}if($.shift(),typeof Q==="function")q.add(Q);else for(let J of Q)q.add(J)}for(let C of F){let $=this.#D.get(C),Q=$?.[0];if(!$||!(Q instanceof Set))continue;if(Q.size===1&&$.length===1){this.#D.delete(C);continue}else if(Q.size===1){$.shift();let J=$[0];if(typeof J==="function")q.add(J)}else Q.delete(D)}return this.#u.delete(D),q.forEach((C)=>this.#C(C)),!0}}var Q_=Symbol("onEntry"),b8=Symbol("checkFs"),J_=Symbol("checkFs2"),g8=Symbol("isReusable"),QD=Symbol("makeFs"),m8=Symbol("file"),f8=Symbol("directory"),Eu=Symbol("link"),V_=Symbol("symlink"),Z_=Symbol("hardlink"),K_=Symbol("unsupported"),X_=Symbol("checkPath"),C0=Symbol("mkdir"),d=Symbol("onError"),Nu=Symbol("pending"),B_=Symbol("pend"),i0=Symbol("unpend"),y8=Symbol("ended"),h8=Symbol("maybeClose"),d8=Symbol("skip"),O2=Symbol("doChown"),j2=Symbol("uid"),P2=Symbol("gid"),I2=Symbol("checkedCwd"),kq=process.env.TESTING_TAR_FAKE_PLATFORM||process.platform,w2=kq==="win32",yq=1024,hq=(D,u)=>{if(!w2)return M.unlink(D,u);let _=D+".DELETE."+Y_(16).toString("hex");M.rename(D,_,(F)=>{if(F)return u(F);M.unlink(_,u)})},bq=(D)=>{if(!w2)return M.unlinkSync(D);let u=D+".DELETE."+Y_(16).toString("hex");M.renameSync(D,u),M.unlinkSync(u)},G_=(D,u,_)=>D!==void 0&&D===D>>>0?D:u!==void 0&&u===u>>>0?u:_;class M2 extends u0{[y8]=!1;[I2]=!1;[Nu]=0;reservations=new k8;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(D={}){D.ondone=()=>{this[y8]=!0,this[h8]()};super(D);if(this.transform=D.transform,this.chmod=!!D.chmod,typeof D.uid==="number"||typeof D.gid==="number"){if(typeof D.uid!=="number"||typeof D.gid!=="number")throw TypeError("cannot set owner without number uid and gid");if(D.preserveOwner)throw TypeError("cannot preserve owner in archive and also set owner explicitly");this.uid=D.uid,this.gid=D.gid,this.setOwner=!0}else this.uid=void 0,this.gid=void 0,this.setOwner=!1;if(D.preserveOwner===void 0&&typeof D.uid!=="number")this.preserveOwner=!!(process.getuid&&process.getuid()===0);else this.preserveOwner=!!D.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 D.maxDepth==="number"?D.maxDepth:yq,this.forceChown=D.forceChown===!0,this.win32=!!D.win32||w2,this.newer=!!D.newer,this.keep=!!D.keep,this.noMtime=!!D.noMtime,this.preservePaths=!!D.preservePaths,this.unlink=!!D.unlink,this.cwd=P(hD.resolve(D.cwd||process.cwd())),this.strip=Number(D.strip)||0,this.processUmask=!this.chmod?0:typeof D.processUmask==="number"?D.processUmask:process.umask(),this.umask=typeof D.umask==="number"?D.umask:this.processUmask,this.dmode=D.dmode||511&~this.umask,this.fmode=D.fmode||438&~this.umask,this.on("entry",(u)=>this[Q_](u))}warn(D,u,_={}){if(D==="TAR_BAD_ARCHIVE"||D==="TAR_ABORT")_.recoverable=!1;return super.warn(D,u,_)}[h8](){if(this[y8]&&this[Nu]===0)this.emit("prefinish"),this.emit("finish"),this.emit("end")}[X_](D){let u=P(D.path),_=u.split("/");if(this.strip){if(_.length<this.strip)return!1;if(D.type==="Link"){let F=P(String(D.linkpath)).split("/");if(F.length>=this.strip)D.linkpath=F.slice(this.strip).join("/");else return!1}_.splice(0,this.strip),D.path=_.join("/")}if(isFinite(this.maxDepth)&&_.length>this.maxDepth)return this.warn("TAR_ENTRY_ERROR","path excessively deep",{entry:D,path:u,depth:_.length,maxDepth:this.maxDepth}),!1;if(!this.preservePaths){if(_.includes("..")||w2&&/^[a-z]:\.\.$/i.test(_[0]??""))return this.warn("TAR_ENTRY_ERROR","path contains '..'",{entry:D,path:u}),!1;let[F,q]=W2(u);if(F)D.path=String(q),this.warn("TAR_ENTRY_INFO",`stripping ${F} from absolute path`,{entry:D,path:u})}if(hD.isAbsolute(D.path))D.absolute=P(hD.resolve(D.path));else D.absolute=P(hD.resolve(this.cwd,D.path));if(!this.preservePaths&&typeof D.absolute==="string"&&D.absolute.indexOf(this.cwd+"/")!==0&&D.absolute!==this.cwd)return this.warn("TAR_ENTRY_ERROR","path escaped extraction target",{entry:D,path:P(D.path),resolvedPath:D.absolute,cwd:this.cwd}),!1;if(D.absolute===this.cwd&&D.type!=="Directory"&&D.type!=="GNUDumpDir")return!1;if(this.win32){let{root:F}=hD.win32.parse(String(D.absolute));D.absolute=F+X8(String(D.absolute).slice(F.length));let{root:q}=hD.win32.parse(D.path);D.path=q+X8(D.path.slice(q.length))}return!0}[Q_](D){if(!this[X_](D))return D.resume();switch(Eq.equal(typeof D.absolute,"string"),D.type){case"Directory":case"GNUDumpDir":if(D.mode)D.mode=D.mode|448;case"File":case"OldFile":case"ContiguousFile":case"Link":case"SymbolicLink":return this[b8](D);case"CharacterDevice":case"BlockDevice":case"FIFO":default:return this[K_](D)}}[d](D,u){if(D.name==="CwdError")this.emit("error",D);else this.warn("TAR_ENTRY_ERROR",D,{entry:u}),this[i0](),u.resume()}[C0](D,u,_){__(P(D),{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},_)}[O2](D){return this.forceChown||this.preserveOwner&&(typeof D.uid==="number"&&D.uid!==this.processUid||typeof D.gid==="number"&&D.gid!==this.processGid)||typeof this.uid==="number"&&this.uid!==this.processUid||typeof this.gid==="number"&&this.gid!==this.processGid}[j2](D){return G_(this.uid,D.uid,this.processUid)}[P2](D){return G_(this.gid,D.gid,this.processGid)}[m8](D,u){let _=typeof D.mode==="number"?D.mode&4095:this.fmode,F=new sD(String(D.absolute),{flags:T8(D.size),mode:_,autoClose:!1});F.on("error",(Q)=>{if(F.fd)M.close(F.fd,()=>{});F.write=()=>!0,this[d](Q,D),u()});let q=1,C=(Q)=>{if(Q){if(F.fd)M.close(F.fd,()=>{});this[d](Q,D),u();return}if(--q===0){if(F.fd!==void 0)M.close(F.fd,(J)=>{if(J)this[d](J,D);else this[i0]();u()})}};F.on("finish",()=>{let Q=String(D.absolute),J=F.fd;if(typeof J==="number"&&D.mtime&&!this.noMtime){q++;let Z=D.atime||new Date,V=D.mtime;M.futimes(J,Z,V,(K)=>K?M.utimes(Q,Z,V,(X)=>C(X&&K)):C())}if(typeof J==="number"&&this[O2](D)){q++;let Z=this[j2](D),V=this[P2](D);if(typeof Z==="number"&&typeof V==="number")M.fchown(J,Z,V,(K)=>K?M.chown(Q,Z,V,(X)=>C(X&&K)):C())}C()});let $=this.transform?this.transform(D)||D:D;if($!==D)$.on("error",(Q)=>{this[d](Q,D),u()}),D.pipe($);$.pipe(F)}[f8](D,u){let _=typeof D.mode==="number"?D.mode&4095:this.dmode;this[C0](String(D.absolute),_,(F)=>{if(F){this[d](F,D),u();return}let q=1,C=()=>{if(--q===0)u(),this[i0](),D.resume()};if(D.mtime&&!this.noMtime)q++,M.utimes(String(D.absolute),D.atime||new Date,D.mtime,C);if(this[O2](D))q++,M.chown(String(D.absolute),Number(this[j2](D)),Number(this[P2](D)),C);C()})}[K_](D){D.unsupported=!0,this.warn("TAR_ENTRY_UNSUPPORTED",`unsupported entry type: ${D.type}`,{entry:D}),D.resume()}[V_](D,u){this[Eu](D,String(D.linkpath),"symlink",u)}[Z_](D,u){let _=P(hD.resolve(this.cwd,String(D.linkpath)));this[Eu](D,_,"link",u)}[B_](){this[Nu]++}[i0](){this[Nu]--,this[h8]()}[d8](D){this[i0](),D.resume()}[g8](D,u){return D.type==="File"&&!this.unlink&&u.isFile()&&u.nlink<=1&&!w2}[b8](D){this[B_]();let u=[D.path];if(D.linkpath)u.push(D.linkpath);this.reservations.reserve(u,(_)=>this[J_](D,_))}[J_](D,u){let _=($)=>{u($)},F=()=>{this[C0](this.cwd,this.dmode,($)=>{if($){this[d]($,D),_();return}this[I2]=!0,q()})},q=()=>{if(D.absolute!==this.cwd){let $=P(hD.dirname(String(D.absolute)));if($!==this.cwd)return this[C0]($,this.dmode,(Q)=>{if(Q){this[d](Q,D),_();return}C()})}C()},C=()=>{M.lstat(String(D.absolute),($,Q)=>{if(Q&&(this.keep||this.newer&&Q.mtime>(D.mtime??Q.mtime))){this[d8](D),_();return}if($||this[g8](D,Q))return this[QD](null,D,_);if(Q.isDirectory()){if(D.type==="Directory"){let J=this.chmod&&D.mode&&(Q.mode&4095)!==D.mode,Z=(V)=>this[QD](V??null,D,_);if(!J)return Z();return M.chmod(String(D.absolute),Number(D.mode),Z)}if(D.absolute!==this.cwd)return M.rmdir(String(D.absolute),(J)=>this[QD](J??null,D,_))}if(D.absolute===this.cwd)return this[QD](null,D,_);hq(String(D.absolute),(J)=>this[QD](J??null,D,_))})};if(this[I2])q();else F()}[QD](D,u,_){if(D){this[d](D,u),_();return}switch(u.type){case"File":case"OldFile":case"ContiguousFile":return this[m8](u,_);case"Link":return this[Z_](u,_);case"SymbolicLink":return this[V_](u,_);case"Directory":case"GNUDumpDir":return this[f8](u,_)}}[Eu](D,u,_,F){M[_](u,String(D.absolute),(q)=>{if(q)this[d](q,D);else this[i0](),D.resume();F()})}}var Su=(D)=>{try{return[null,D()]}catch(u){return[u,null]}};class ku extends M2{sync=!0;[QD](D,u){return super[QD](D,u,()=>{})}[b8](D){if(!this[I2]){let q=this[C0](this.cwd,this.dmode);if(q)return this[d](q,D);this[I2]=!0}if(D.absolute!==this.cwd){let q=P(hD.dirname(String(D.absolute)));if(q!==this.cwd){let C=this[C0](q,this.dmode);if(C)return this[d](C,D)}}let[u,_]=Su(()=>M.lstatSync(String(D.absolute)));if(_&&(this.keep||this.newer&&_.mtime>(D.mtime??_.mtime)))return this[d8](D);if(u||this[g8](D,_))return this[QD](null,D);if(_.isDirectory()){if(D.type==="Directory"){let C=this.chmod&&D.mode&&(_.mode&4095)!==D.mode,[$]=C?Su(()=>{M.chmodSync(String(D.absolute),Number(D.mode))}):[];return this[QD]($,D)}let[q]=Su(()=>M.rmdirSync(String(D.absolute)));this[QD](q,D)}let[F]=D.absolute===this.cwd?[]:Su(()=>bq(String(D.absolute)));this[QD](F,D)}[m8](D,u){let _=typeof D.mode==="number"?D.mode&4095:this.fmode,F=($)=>{let Q;try{M.closeSync(q)}catch(J){Q=J}if($||Q)this[d]($||Q,D);u()},q;try{q=M.openSync(String(D.absolute),T8(D.size),_)}catch($){return F($)}let C=this.transform?this.transform(D)||D:D;if(C!==D)C.on("error",($)=>this[d]($,D)),D.pipe(C);C.on("data",($)=>{try{M.writeSync(q,$,0,$.length)}catch(Q){F(Q)}}),C.on("end",()=>{let $=null;if(D.mtime&&!this.noMtime){let Q=D.atime||new Date,J=D.mtime;try{M.futimesSync(q,Q,J)}catch(Z){try{M.utimesSync(String(D.absolute),Q,J)}catch(V){$=Z}}}if(this[O2](D)){let Q=this[j2](D),J=this[P2](D);try{M.fchownSync(q,Number(Q),Number(J))}catch(Z){try{M.chownSync(String(D.absolute),Number(Q),Number(J))}catch(V){$=$||Z}}}F($)})}[f8](D,u){let _=typeof D.mode==="number"?D.mode&4095:this.dmode,F=this[C0](String(D.absolute),_);if(F){this[d](F,D),u();return}if(D.mtime&&!this.noMtime)try{M.utimesSync(String(D.absolute),D.atime||new Date,D.mtime)}catch(q){}if(this[O2](D))try{M.chownSync(String(D.absolute),Number(this[j2](D)),Number(this[P2](D)))}catch(q){}u(),D.resume()}[C0](D,u){try{return q_(P(D),{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(_){return _}}[Eu](D,u,_,F){let q=`${_}Sync`;try{M[q](u,String(D.absolute)),F(),D.resume()}catch(C){return this[d](C,D)}}}var gq=(D)=>{let u=new ku(D),_=D.file,F=H_.statSync(_),q=D.maxReadSize||16777216;new f3(_,{readSize:q,size:F.size}).pipe(u)},mq=(D,u)=>{let _=new M2(D),F=D.maxReadSize||16777216,q=D.file;return new Promise(($,Q)=>{_.on("error",Q),_.on("close",$),H_.stat(q,(J,Z)=>{if(J)Q(J);else{let V=new g0(q,{readSize:F,size:Z.size});V.on("error",Q),V.pipe(_)}})})},T2=UD(gq,mq,(D)=>new ku(D),(D)=>new M2(D),(D,u)=>{if(u?.length)V8(D,u)});import _D from"node:fs";import x_ from"node:path";var fq=(D,u)=>{let _=new c0(D),F=!0,q,C;try{try{q=_D.openSync(D.file,"r+")}catch(J){if(J?.code==="ENOENT")q=_D.openSync(D.file,"w+");else throw J}let $=_D.fstatSync(q),Q=Buffer.alloc(512);D:for(C=0;C<$.size;C+=512){for(let V=0,K=0;V<512;V+=K){if(K=_D.readSync(q,Q,V,Q.length-V,C+V),C===0&&Q[0]===31&&Q[1]===139)throw Error("cannot append to compressed archives");if(!K)break D}let J=new CD(Q);if(!J.cksumValid)break;let Z=512*Math.ceil((J.size||0)/512);if(C+Z+512>$.size)break;if(C+=Z,D.mtimeCache&&J.mtime)D.mtimeCache.set(String(J.path),J.mtime)}F=!1,dq(D,_,C,q,u)}finally{if(F)try{_D.closeSync(q)}catch($){}}},dq=(D,u,_,F,q)=>{let C=new X2(D.file,{fd:F,start:_});u.pipe(C),cq(u,q)},lq=(D,u)=>{u=Array.from(u);let _=new U0(D),F=(C,$,Q)=>{let J=(B,L)=>{if(B)_D.close(C,(z)=>Q(B));else Q(null,L)},Z=0;if($===0)return J(null,0);let V=0,K=Buffer.alloc(512),X=(B,L)=>{if(B||typeof L>"u")return J(B);if(V+=L,V<512&&L)return _D.read(C,K,V,K.length-V,Z+V,X);if(Z===0&&K[0]===31&&K[1]===139)return J(Error("cannot append to compressed archives"));if(V<512)return J(null,Z);let z=new CD(K);if(!z.cksumValid)return J(null,Z);let j=512*Math.ceil((z.size??0)/512);if(Z+j+512>$)return J(null,Z);if(Z+=j+512,Z>=$)return J(null,Z);if(D.mtimeCache&&z.mtime)D.mtimeCache.set(String(z.path),z.mtime);V=0,_D.read(C,K,0,512,Z,X)};_D.read(C,K,0,512,Z,X)};return new Promise((C,$)=>{_.on("error",$);let Q="r+",J=(Z,V)=>{if(Z&&Z.code==="ENOENT"&&Q==="r+")return Q="w+",_D.open(D.file,Q,J);if(Z||!V)return $(Z);_D.fstat(V,(K,X)=>{if(K)return _D.close(V,()=>$(K));F(V,X.size,(B,L)=>{if(B)return $(B);let z=new sD(D.file,{fd:V,start:L});_.pipe(z),z.on("error",$),z.on("close",C),pq(_,u)})})};_D.open(D.file,Q,J)})},cq=(D,u)=>{u.forEach((_)=>{if(_.charAt(0)==="@")z0({file:x_.resolve(D.cwd,_.slice(1)),sync:!0,noResume:!0,onReadEntry:(F)=>D.add(F)});else D.add(_)}),D.end()},pq=async(D,u)=>{for(let _=0;_<u.length;_++){let F=String(u[_]);if(F.charAt(0)==="@")await z0({file:x_.resolve(String(D.cwd),F.slice(1)),noResume:!0,onReadEntry:(q)=>D.add(q)});else D.add(F)}D.end()},O0=UD(fq,lq,()=>{throw TypeError("file is required")},()=>{throw TypeError("file is required")},(D,u)=>{if(!U1(D))throw TypeError("file is required");if(D.gzip||D.brotli||D.zstd||D.file.endsWith(".br")||D.file.endsWith(".tbr"))throw TypeError("cannot append to compressed archives");if(!u?.length)throw TypeError("no paths specified to add/replace")});var iq=UD(O0.syncFile,O0.asyncFile,O0.syncNoFile,O0.asyncNoFile,(D,u=[])=>{O0.validate?.(D,u),aq(D)}),aq=(D)=>{let u=D.filter;if(!D.mtimeCache)D.mtimeCache=new Map;D.filter=u?(_,F)=>u(_,F)&&!((D.mtimeCache?.get(_)??F.mtime??0)>(F.mtime??0)):(_,F)=>!((D.mtimeCache?.get(_)??F.mtime??0)>(F.mtime??0))};var R={reset:"\x1B[0m",bold:"\x1B[1m",dim:"\x1B[2m",italic:"\x1B[3m",underline:"\x1B[4m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m"};var w5=KD(V5(),1),M5=KD(I3(),1),T5=KD(Z6(),1);import K6 from"fs";import k2 from"fs/promises";import w0 from"os";import X6 from"path";var I5={name:"@abacus-ai/cli",appName:"AbacusAI",binName:"abacusai",version:"1.106.24818",nodeVersion:"22.19.0",distro:"fb9b4b01c06699c1a80f26ca9de940a9aebb29e0",author:{name:"Abacus AI"},license:"Proprietary",main:"./dist/index.js",module:"./dist/index.js",source:"./src/index.ts",type:"module",homepage:"https://desktop.abacus.ai/",files:["dist"],bugs:{url:"mailto:support@abacus.ai"},bin:{abacusai:"./dist/index.js"},scripts:{build:"tsc && bun build ./src/index.ts --minify --target=node --outdir=dist"},devDependencies:{"@inquirer/prompts":"^7.9.0","@tsconfig/strictest":"^2.0.7","@types/color-name":"^2.0.0","@types/glob":"^9.0.0","@types/minimatch":"^6.0.0","@types/node":"^24.9.2","@types/semver":"^7.7.1","extract-zip":"^2.0.1","node-downloader-helper":"^2.1.9",semver:"^7.7.3","simple-update-notifier":"^2.0.0",tar:"^7.5.2",typescript:"^6.0.0-dev.20251031"},overrides:{yauzl:"3.2.0"}};var a=I5;function a$(){let D=process.versions.node;if(T5.default(D,a.nodeVersion))return!1;return!0}function s$(D){let u=w0.platform(),_=w0.arch(),q={x64:"x64",arm64:"arm64",ia32:"x86"}[_]||_;if(u==="win32")return`https://nodejs.org/dist/v${D}/node-v${D}-win-${q}.${_==="x64"||_==="ia32"?"zip":"7z"}`;else if(u==="darwin")return`https://nodejs.org/dist/v${D}/node-v${D}-darwin-${q}.tar.gz`;else return`https://nodejs.org/dist/v${D}/node-v${D}-linux-${q}.tar.gz`}function n$(D){let u=w0.platform(),_=w0.arch(),q={x64:"x64",arm64:"arm64",ia32:"x86"}[_]||_;if(u==="win32")return`node-v${D}-win-${q}.${_==="x64"||_==="ia32"?"zip":"7z"}`;else if(u==="darwin")return`node-v${D}-darwin-${q}.tar.gz`;else return`node-v${D}-linux-${q}.tar.gz`}async function q3(D){try{if(a$())return;let _=w0.platform()==="win32"?"node.exe":"node",F=X6.join(D,_);if(K6.existsSync(F))return;let q=X6.join(w0.homedir(),`node-${a.nodeVersion}`),C=X6.join(q,"bin",_);if(K6.existsSync(C)){await k2.copyFile(C,F);return}console.log(`${R.dim}Downloading Node.js ${a.nodeVersion}...${R.reset}`);let $=s$(a.nodeVersion),Q=n$(a.nodeVersion),J=new M5.DownloaderHelper($,w0.tmpdir(),{fileName:Q});J.on("error",async(V)=>{console.error(`${R.red}Failed to download Node.js from ${$}: ${V}${R.reset}`),await J.stop()}),await J.start();let Z=J.getDownloadPath();if(!K6.existsSync(q))await k2.mkdir(q);if(console.log(`${R.dim}Extracting Node.js ${a.nodeVersion} to ${q}...${R.reset}`),Q.endsWith(".tar.gz"))await o$(Z,q);else await t$(Z,q);await k2.copyFile(C,F)}catch(u){console.error(`${R.red}Failed to download Node.js: ${u instanceof Error?u.message:String(u)}
|
|
15
15
|
Please download and install Node.js ${a.nodeVersion} from https://nodejs.org/`)}}async function t$(D,u){await k2.mkdir(u,{recursive:!0}),await w5.default(D,{dir:u})}async function o$(D,u){await k2.mkdir(u,{recursive:!0}),await T2({file:D,cwd:u,strip:1})}async function S5({version:D,homepage:u,appName:_,binName:F}){try{let q=`${_.toLowerCase()}-agent-cli-${y2.platform()}-${y2.arch()}-${D}.tar.gz`,C=`https://static.abacus.ai/${F}/releases/${D}/${q}`,$=new R5.DownloaderHelper(C,y2.tmpdir(),{fileName:q});$.on("error",async(V)=>{console.error(`Failed to download ${C}: ${V}`),await $.stop()}),console.log(`${R.dim}Downloading ${_} ${D}...${R.reset}`),await $.start();let Q=$.getDownloadPath(),J=v5.join(y2.homedir(),`${F}-${D}`);console.log(`${R.dim}Extracting ${_} ${D} to ${J}...${R.reset}`),await e$(Q,J),await N5.rm(Q);let Z=v5.join(J,"bin",`${F}${y2.platform()==="win32"?".cmd":""}`);if(!r$.existsSync(Z)){let V=`${_} command not found at ${Z}}`;throw console.error(V),Error(V)}return console.log(`${R.dim}${_} ${D} downloaded to ${J}${R.reset}`),await q3(J),Z}catch(q){throw console.error(q instanceof Error?q.message:String(q)),Error(`Could not download ${_} ${D}. Please install ${_} from ${u} and re-run ${F}.`)}}async function e$(D,u){await N5.mkdir(u,{recursive:!0}),await T2({file:D,cwd:u,strip:1})}import d9 from"fs";import l6 from"fs/promises";import dD from"os";import FD from"path";var B6=(D)=>D.name==="tab";var G6=(D)=>D.name==="enter"||D.name==="return";class Y6 extends Error{name="AbortPromptError";message="Prompt was aborted";constructor(D){super();this.cause=D?.cause}}class H6 extends Error{name="CancelPromptError";message="Prompt was canceled"}class C3 extends Error{name="ExitPromptError"}class x6 extends Error{name="HookError"}class W6 extends Error{name="ValidationError"}import{AsyncResource as FQ}from"node:async_hooks";import{AsyncLocalStorage as DQ,AsyncResource as uQ}from"node:async_hooks";var E5=new DQ;function _Q(D){return{rl:D,hooks:[],hooksCleanup:[],hooksEffect:[],index:0,handleChange(){}}}function k5(D,u){let _=_Q(D);return E5.run(_,()=>{function F(q){_.handleChange=()=>{_.index=0,q()},_.handleChange()}return u(F)})}function M0(){let D=E5.getStore();if(!D)throw new x6("[Inquirer] Hook functions can only be called from within a prompt");return D}function A6(){return M0().rl}function z6(D){let u=(..._)=>{let F=M0(),q=!1,C=F.handleChange;F.handleChange=()=>{q=!0};let $=D(..._);if(q)C();return F.handleChange=C,$};return uQ.bind(u)}function $3(D){let u=M0(),{index:_}=u,F={get(){return u.hooks[_]},set(C){u.hooks[_]=C},initialized:_ in u.hooks},q=D(F);return u.index++,q}function y5(){M0().handleChange()}var T0={queue(D){let u=M0(),{index:_}=u;u.hooksEffect.push(()=>{u.hooksCleanup[_]?.();let F=D(A6());if(F!=null&&typeof F!=="function")throw new W6("useEffect return value must be a cleanup function or nothing.");u.hooksCleanup[_]=F})},run(){let D=M0();z6(()=>{D.hooksEffect.forEach((u)=>{u()}),D.hooksEffect.length=0})()},clearAll(){let D=M0();D.hooksCleanup.forEach((u)=>{u?.()}),D.hooksEffect.length=0,D.hooksCleanup.length=0}};function fD(D){return $3((u)=>{let _=FQ.bind(function(C){if(u.get()!==C)u.set(C),y5()});if(u.initialized)return[u.get(),_];let F=typeof D==="function"?D():D;return u.set(F),[F,_]})}function Q3(D,u){$3((_)=>{let F=_.get();if(!Array.isArray(F)||u.some((C,$)=>!Object.is(C,F[$])))T0.queue(D);_.set(u)})}var JD=KD(b5(),1);import TD from"node:process";function $Q(){if(TD.platform!=="win32")return TD.env.TERM!=="linux";return Boolean(TD.env.WT_SESSION)||Boolean(TD.env.TERMINUS_SUBLIME)||TD.env.ConEmuTask==="{cmd::Cmder}"||TD.env.TERM_PROGRAM==="Terminus-Sublime"||TD.env.TERM_PROGRAM==="vscode"||TD.env.TERM==="xterm-256color"||TD.env.TERM==="alacritty"||TD.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var g5={circleQuestionMark:"(?)",questionMarkPrefix:"(?)",square:"█",squareDarkShade:"▓",squareMediumShade:"▒",squareLightShade:"░",squareTop:"▀",squareBottom:"▄",squareLeft:"▌",squareRight:"▐",squareCenter:"■",bullet:"●",dot:"․",ellipsis:"…",pointerSmall:"›",triangleUp:"▲",triangleUpSmall:"▴",triangleDown:"▼",triangleDownSmall:"▾",triangleLeftSmall:"◂",triangleRightSmall:"▸",home:"⌂",heart:"♥",musicNote:"♪",musicNoteBeamed:"♫",arrowUp:"↑",arrowDown:"↓",arrowLeft:"←",arrowRight:"→",arrowLeftRight:"↔",arrowUpDown:"↕",almostEqual:"≈",notEqual:"≠",lessOrEqual:"≤",greaterOrEqual:"≥",identical:"≡",infinity:"∞",subscriptZero:"₀",subscriptOne:"₁",subscriptTwo:"₂",subscriptThree:"₃",subscriptFour:"₄",subscriptFive:"₅",subscriptSix:"₆",subscriptSeven:"₇",subscriptEight:"₈",subscriptNine:"₉",oneHalf:"½",oneThird:"⅓",oneQuarter:"¼",oneFifth:"⅕",oneSixth:"⅙",oneEighth:"⅛",twoThirds:"⅔",twoFifths:"⅖",threeQuarters:"¾",threeFifths:"⅗",threeEighths:"⅜",fourFifths:"⅘",fiveSixths:"⅚",fiveEighths:"⅝",sevenEighths:"⅞",line:"─",lineBold:"━",lineDouble:"═",lineDashed0:"┄",lineDashed1:"┅",lineDashed2:"┈",lineDashed3:"┉",lineDashed4:"╌",lineDashed5:"╍",lineDashed6:"╴",lineDashed7:"╶",lineDashed8:"╸",lineDashed9:"╺",lineDashed10:"╼",lineDashed11:"╾",lineDashed12:"−",lineDashed13:"–",lineDashed14:"‐",lineDashed15:"⁃",lineVertical:"│",lineVerticalBold:"┃",lineVerticalDouble:"║",lineVerticalDashed0:"┆",lineVerticalDashed1:"┇",lineVerticalDashed2:"┊",lineVerticalDashed3:"┋",lineVerticalDashed4:"╎",lineVerticalDashed5:"╏",lineVerticalDashed6:"╵",lineVerticalDashed7:"╷",lineVerticalDashed8:"╹",lineVerticalDashed9:"╻",lineVerticalDashed10:"╽",lineVerticalDashed11:"╿",lineDownLeft:"┐",lineDownLeftArc:"╮",lineDownBoldLeftBold:"┓",lineDownBoldLeft:"┒",lineDownLeftBold:"┑",lineDownDoubleLeftDouble:"╗",lineDownDoubleLeft:"╖",lineDownLeftDouble:"╕",lineDownRight:"┌",lineDownRightArc:"╭",lineDownBoldRightBold:"┏",lineDownBoldRight:"┎",lineDownRightBold:"┍",lineDownDoubleRightDouble:"╔",lineDownDoubleRight:"╓",lineDownRightDouble:"╒",lineUpLeft:"┘",lineUpLeftArc:"╯",lineUpBoldLeftBold:"┛",lineUpBoldLeft:"┚",lineUpLeftBold:"┙",lineUpDoubleLeftDouble:"╝",lineUpDoubleLeft:"╜",lineUpLeftDouble:"╛",lineUpRight:"└",lineUpRightArc:"╰",lineUpBoldRightBold:"┗",lineUpBoldRight:"┖",lineUpRightBold:"┕",lineUpDoubleRightDouble:"╚",lineUpDoubleRight:"╙",lineUpRightDouble:"╘",lineUpDownLeft:"┤",lineUpBoldDownBoldLeftBold:"┫",lineUpBoldDownBoldLeft:"┨",lineUpDownLeftBold:"┥",lineUpBoldDownLeftBold:"┩",lineUpDownBoldLeftBold:"┪",lineUpDownBoldLeft:"┧",lineUpBoldDownLeft:"┦",lineUpDoubleDownDoubleLeftDouble:"╣",lineUpDoubleDownDoubleLeft:"╢",lineUpDownLeftDouble:"╡",lineUpDownRight:"├",lineUpBoldDownBoldRightBold:"┣",lineUpBoldDownBoldRight:"┠",lineUpDownRightBold:"┝",lineUpBoldDownRightBold:"┡",lineUpDownBoldRightBold:"┢",lineUpDownBoldRight:"┟",lineUpBoldDownRight:"┞",lineUpDoubleDownDoubleRightDouble:"╠",lineUpDoubleDownDoubleRight:"╟",lineUpDownRightDouble:"╞",lineDownLeftRight:"┬",lineDownBoldLeftBoldRightBold:"┳",lineDownLeftBoldRightBold:"┯",lineDownBoldLeftRight:"┰",lineDownBoldLeftBoldRight:"┱",lineDownBoldLeftRightBold:"┲",lineDownLeftRightBold:"┮",lineDownLeftBoldRight:"┭",lineDownDoubleLeftDoubleRightDouble:"╦",lineDownDoubleLeftRight:"╥",lineDownLeftDoubleRightDouble:"╤",lineUpLeftRight:"┴",lineUpBoldLeftBoldRightBold:"┻",lineUpLeftBoldRightBold:"┷",lineUpBoldLeftRight:"┸",lineUpBoldLeftBoldRight:"┹",lineUpBoldLeftRightBold:"┺",lineUpLeftRightBold:"┶",lineUpLeftBoldRight:"┵",lineUpDoubleLeftDoubleRightDouble:"╩",lineUpDoubleLeftRight:"╨",lineUpLeftDoubleRightDouble:"╧",lineUpDownLeftRight:"┼",lineUpBoldDownBoldLeftBoldRightBold:"╋",lineUpDownBoldLeftBoldRightBold:"╈",lineUpBoldDownLeftBoldRightBold:"╇",lineUpBoldDownBoldLeftRightBold:"╊",lineUpBoldDownBoldLeftBoldRight:"╉",lineUpBoldDownLeftRight:"╀",lineUpDownBoldLeftRight:"╁",lineUpDownLeftBoldRight:"┽",lineUpDownLeftRightBold:"┾",lineUpBoldDownBoldLeftRight:"╂",lineUpDownLeftBoldRightBold:"┿",lineUpBoldDownLeftBoldRight:"╃",lineUpBoldDownLeftRightBold:"╄",lineUpDownBoldLeftBoldRight:"╅",lineUpDownBoldLeftRightBold:"╆",lineUpDoubleDownDoubleLeftDoubleRightDouble:"╬",lineUpDoubleDownDoubleLeftRight:"╫",lineUpDownLeftDoubleRightDouble:"╪",lineCross:"╳",lineBackslash:"╲",lineSlash:"╱"},m5={tick:"✔",info:"ℹ",warning:"⚠",cross:"✘",squareSmall:"◻",squareSmallFilled:"◼",circle:"◯",circleFilled:"◉",circleDotted:"◌",circleDouble:"◎",circleCircle:"ⓞ",circleCross:"ⓧ",circlePipe:"Ⓘ",radioOn:"◉",radioOff:"◯",checkboxOn:"☒",checkboxOff:"☐",checkboxCircleOn:"ⓧ",checkboxCircleOff:"Ⓘ",pointer:"❯",triangleUpOutline:"△",triangleLeft:"◀",triangleRight:"▶",lozenge:"◆",lozengeOutline:"◇",hamburger:"☰",smiley:"㋡",mustache:"෴",star:"★",play:"▶",nodejs:"⬢",oneSeventh:"⅐",oneNinth:"⅑",oneTenth:"⅒"},QQ={tick:"√",info:"i",warning:"‼",cross:"×",squareSmall:"□",squareSmallFilled:"■",circle:"( )",circleFilled:"(*)",circleDotted:"( )",circleDouble:"( )",circleCircle:"(○)",circleCross:"(×)",circlePipe:"(│)",radioOn:"(*)",radioOff:"( )",checkboxOn:"[×]",checkboxOff:"[ ]",checkboxCircleOn:"(×)",checkboxCircleOff:"( )",pointer:">",triangleUpOutline:"∆",triangleLeft:"◄",triangleRight:"►",lozenge:"♦",lozengeOutline:"◊",hamburger:"≡",smiley:"☺",mustache:"┌─┐",star:"✶",play:"►",nodejs:"♦",oneSeventh:"1/7",oneNinth:"1/9",oneTenth:"1/10"},JQ={...g5,...m5},VQ={...g5,...QQ},ZQ=$Q(),KQ=ZQ?JQ:VQ,f5=KQ,RG=Object.entries(m5);var d5={prefix:{idle:JD.default.blue("?"),done:JD.default.green(f5.tick)},spinner:{interval:80,frames:["⠋","⠙","⠹","⠸","⠼","⠴","⠦","⠧","⠇","⠏"].map((D)=>JD.default.yellow(D))},style:{answer:JD.default.cyan,message:JD.default.bold,error:(D)=>JD.default.red(`> ${D}`),defaultAnswer:(D)=>JD.default.dim(`(${D})`),help:JD.default.dim,highlight:JD.default.cyan,key:(D)=>JD.default.cyan(JD.default.bold(`<${D}>`))}};function l5(D){if(typeof D!=="object"||D===null)return!1;let u=D;while(Object.getPrototypeOf(u)!==null)u=Object.getPrototypeOf(u);return Object.getPrototypeOf(D)===u}function c5(...D){let u={};for(let _ of D)for(let[F,q]of Object.entries(_)){let C=u[F];u[F]=l5(C)&&l5(q)?c5(C,q):q}return u}function h2(...D){let u=[d5,...D.filter((_)=>_!=null)];return c5(...u)}function L6({status:D="idle",theme:u}){let[_,F]=fD(!1),[q,C]=fD(0),{prefix:$,spinner:Q}=h2(u);if(Q3(()=>{if(D==="loading"){let Z,V=-1,K=setTimeout(()=>{F(!0),Z=setInterval(()=>{V=V+1,C(V%Q.frames.length)},Q.interval)},300);return()=>{clearTimeout(K),clearInterval(Z)}}else F(!1)},[D]),_)return Q.frames[q];return typeof $==="string"?$:$[D==="loading"?"idle":D]??$.idle}function p5(D){return fD({current:D})[0]}function U6(D){let u=p5(D);u.current=D,Q3((_)=>{let F=!1,q=z6((C,$)=>{if(F)return;u.current($,_)});return _.input.on("keypress",q),()=>{F=!0,_.input.removeListener("keypress",q)}},[])}var z9=KD(a5(),1),L9=KD(A9(),1);function R6(D,u){return D.split(`
|
|
16
16
|
`).flatMap((_)=>L9.default(_,u,{trim:!1,hard:!0}).split(`
|
|
17
17
|
`).map((F)=>F.trimEnd())).join(`
|