UNPKG

@capgo/cli

Version:
67 lines (66 loc) 1.56 MB
import{createRequire as O50}from"node:module";var J50=Object.create;var{getPrototypeOf:F50,defineProperty:R3,getOwnPropertyNames:rE}=Object;var fG=Object.prototype.hasOwnProperty;function kG(D){return this[D]}var J0=(D,$,X)=>{var J=rE($);for(let F of J)if(!fG.call(D,F)&&F!=="default")R3(D,F,{get:kG.bind($,F),enumerable:!0});if(X){for(let F of J)if(!fG.call(X,F)&&F!=="default")R3(X,F,{get:kG.bind($,F),enumerable:!0});return X}},Y50,Q50,JD=(D,$,X)=>{var J=D!=null&&typeof D==="object";if(J){var F=$?Y50??=new WeakMap:Q50??=new WeakMap,Y=F.get(D);if(Y)return Y}X=D!=null?J50(F50(D)):{};let Q=$||!D||!D.__esModule?R3(X,"default",{value:D,enumerable:!0}):X;for(let U of rE(D))if(!fG.call(Q,U))R3(Q,U,{get:kG.bind(D,U),enumerable:!0});if(J)F.set(D,Q);return Q};var E=(D,$)=>()=>($||D(($={exports:{}}).exports,$),$.exports);var U50=(D)=>D;function Z50(D,$){this[D]=U50.bind(null,$)}var B$=(D,$)=>{for(var X in $)R3(D,X,{get:$[X],enumerable:!0,configurable:!0,set:Z50.bind($,X)})};var p=(D,$)=>()=>(D&&($=D(D=0)),$);var l=O50(import.meta.url);var tE,oE=(D)=>{return D===12288||D>=65281&&D<=65376||D>=65504&&D<=65510},aE=(D)=>{return D===8987||D===9001||D>=12272&&D<=12287||D>=12289&&D<=12350||D>=12441&&D<=12543||D>=12549&&D<=12591||D>=12593&&D<=12686||D>=12688&&D<=12771||D>=12783&&D<=12830||D>=12832&&D<=12871||D>=12880&&D<=19903||D>=65040&&D<=65049||D>=65072&&D<=65106||D>=65108&&D<=65126||D>=65128&&D<=65131||D>=127488&&D<=127490||D>=127504&&D<=127547||D>=127552&&D<=127560||D>=131072&&D<=196605||D>=196608&&D<=262141};var sE=p(()=>{tE=(()=>{let D=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return($)=>{let X=0;D.lastIndex=0;while(D.test($))X+=1;return $.length-X}})()});var G50,w50,eE,q50,DR,W50,K50,H50,$R=(D,$={},X={})=>{let J=$.limit??1/0,F=$.ellipsis??"",Y=$?.ellipsisWidth??(F?$R(F,H50,X).width:0),Q=0,U=X.controlWidth??0,Z=X.tabWidth??8,O=X.emojiWidth??2,G=2,w=X.regularWidth??1,q=X.wideWidth??2,W=[[W50,w],[G50,0],[w50,U],[q50,Z],[DR,O],[eE,q]],K=0,H=0,L=D.length,M=0,I=!1,B=L,N=Math.max(0,J-Y),z=0,R=0,v=0,_=0;D:while(!0){if(R>z||H>=L&&H>K){let A=D.slice(z,R)||D.slice(K,H);M=0;for(let u of A.replaceAll(K50,"")){let S=u.codePointAt(0)||0;if(oE(S))_=2;else if(aE(S))_=q;else _=w;if(v+_>N)B=Math.min(B,Math.max(z,K)+M);if(v+_>J){I=!0;break D}M+=u.length,v+=_}z=R=0}if(H>=L)break D;for(let A=0,u=W.length;A<u;A++){let[S,m]=W[A];if(S.lastIndex=H,S.test(D)){if(M=S===eE?tE(D.slice(H,S.lastIndex)):S===DR?1:S.lastIndex-H,_=M*m,v+_>N)B=Math.min(B,H+Math.floor((N-v)/m));if(v+_>J){I=!0;break D}v+=_,z=K,R=H,H=K=S.lastIndex;continue D}}H+=1}return{width:I?N:v,index:I?B:L,truncated:I,ellipsed:I&&J>=Y}},XR;var JR=p(()=>{sE();G50=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,w50=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,eE=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/yu,q50=/\t{1,1000}/y,DR=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/yu,W50=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,K50=/\p{M}+/gu,H50={limit:1/0,ellipsis:""},XR=$R});var B50,N50=(D,$={})=>{return XR(D,B50,$).width},p$;var yG=p(()=>{JR();B50={limit:1/0,ellipsis:"",ellipsisWidth:0},p$=N50});function U4(D,$,X){return String(D).normalize().split(I50).map((J)=>M50(J,$,X)).join(` `)}var XF="\x1B",ZR="›",z50=39,hG="\x07",OR="[",V50="]",GR="m",gG,FR,YR=(D)=>{if(D>=30&&D<=37)return 39;if(D>=90&&D<=97)return 39;if(D>=40&&D<=47)return 49;if(D>=100&&D<=107)return 49;if(D===1||D===2)return 22;if(D===3)return 23;if(D===4)return 24;if(D===7)return 27;if(D===8)return 28;if(D===9)return 29;if(D===0)return 0;return},QR=(D)=>`${XF}${OR}${D}${GR}`,UR=(D)=>`${XF}${gG}${D}${hG}`,bG=(D,$,X)=>{let J=$[Symbol.iterator](),F=!1,Y=!1,Q=D.at(-1),U=Q===void 0?0:p$(Q),Z=J.next(),O=J.next(),G=0;while(!Z.done){let w=Z.value,q=p$(w);if(U+q<=X)D[D.length-1]+=w;else D.push(w),U=0;if(w===XF||w===ZR)F=!0,Y=$.startsWith(gG,G+1);if(F){if(Y){if(w===hG)F=!1,Y=!1}else if(w===GR)F=!1}else if(U+=q,U===X&&!O.done)D.push(""),U=0;Z=O,O=J.next(),G+=w.length}if(Q=D.at(-1),!U&&Q!==void 0&&Q.length&&D.length>1)D[D.length-2]+=D.pop()},L50=(D)=>{let $=D.split(" "),X=$.length;while(X){if(p$($[X-1]))break;X--}if(X===$.length)return D;return $.slice(0,X).join(" ")+$.slice(X).join("")},M50=(D,$,X={})=>{if(X.trim!==!1&&D.trim()==="")return"";let J="",F,Y,Q=D.split(" "),U=[""],Z=0;for(let w=0;w<Q.length;w++){let q=Q[w];if(X.trim!==!1){let K=U.at(-1)??"",H=K.trimStart();if(K.length!==H.length)U[U.length-1]=H,Z=p$(H)}if(w!==0){if(Z>=$&&(X.wordWrap===!1||X.trim===!1))U.push(""),Z=0;if(Z||X.trim===!1)U[U.length-1]+=" ",Z++}let W=p$(q);if(X.hard&&W>$){let K=$-Z,H=1+Math.floor((W-K-1)/$);if(Math.floor((W-1)/$)<H)U.push("");bG(U,q,$),Z=p$(U.at(-1)??"");continue}if(Z+W>$&&Z&&W){if(X.wordWrap===!1&&Z<$){bG(U,q,$),Z=p$(U.at(-1)??"");continue}U.push(""),Z=0}if(Z+W>$&&X.wordWrap===!1){bG(U,q,$),Z=p$(U.at(-1)??"");continue}U[U.length-1]+=q,Z+=W}if(X.trim!==!1)U=U.map((w)=>L50(w));let O=U.join(` `),G=!1;for(let w=0;w<O.length;w++){let q=O[w];if(J+=q,!G){if(G=q>="\uD800"&&q<="\uDBFF",G)continue}else G=!1;if(q===XF||q===ZR){FR.lastIndex=w+1;let K=FR.exec(O)?.groups;if(K?.code!==void 0){let H=Number.parseFloat(K.code);F=H===z50?void 0:H}else if(K?.uri!==void 0)Y=K.uri.length===0?void 0:K.uri}if(O[w+1]===` `){if(Y)J+=UR("");let W=F?YR(F):void 0;if(F&&W)J+=QR(W)}else if(q===` `){if(F&&YR(F))J+=QR(F);if(Y)J+=UR(Y)}}return J},I50;var mG=p(()=>{yG();gG=`${V50}8;;`,FR=new RegExp(`(?:\\${OR}(?<code>\\d+)m|\\${gG}(?<uri>.*)${hG})`,"y"),I50=/\r?\n/});var VD=E((_i0,wR)=>{var cG={to(D,$){if(!$)return`\x1B[${D+1}G`;return`\x1B[${$+1};${D+1}H`},move(D,$){let X="";if(D<0)X+=`\x1B[${-D}D`;else if(D>0)X+=`\x1B[${D}C`;if($<0)X+=`\x1B[${-$}A`;else if($>0)X+=`\x1B[${$}B`;return X},up:(D=1)=>`\x1B[${D}A`,down:(D=1)=>`\x1B[${D}B`,forward:(D=1)=>`\x1B[${D}C`,backward:(D=1)=>`\x1B[${D}D`,nextLine:(D=1)=>"\x1B[E".repeat(D),prevLine:(D=1)=>"\x1B[F".repeat(D),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},A50={up:(D=1)=>"\x1B[S".repeat(D),down:(D=1)=>"\x1B[T".repeat(D)},E50={screen:"\x1B[2J",up:(D=1)=>"\x1B[1J".repeat(D),down:(D=1)=>"\x1B[J".repeat(D),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(D){let $="";for(let X=0;X<D;X++)$+=this.line+(X<D-1?cG.up():"");if(D)$+=cG.left;return $}};wR.exports={cursor:cG,scroll:A50,erase:E50,beep:"\x07"}});import{styleText as m9}from"node:util";import{stdout as iG,stdin as HR}from"node:process";import*as Z4 from"node:readline";import R50 from"node:readline";import{ReadStream as qR}from"node:tty";function g9(D,$,X){if(!X.some((Q)=>!Q.disabled))return D;let J=D+$,F=Math.max(X.length-1,0),Y=J<0?F:J>F?0:J;return X[Y].disabled?g9(Y,$<0?-1:1,X):Y}function JF(D,$,X,J){let F=J.split(` `),Y=0,Q=D;for(let Z of F){if(Q<=Z.length)break;Q-=Z.length+1,Y++}for(Y=Math.max(0,Math.min(F.length-1,Y+X)),Q=Math.min(Q,F[Y].length)+$;Q<0&&Y>0;)Y--,Q+=F[Y].length+1;for(;Q>F[Y].length&&Y<F.length-1;)Q-=F[Y].length+1,Y++;Q=Math.max(0,Math.min(F[Y].length,Q));let U=0;for(let Z=0;Z<Y;Z++)U+=F[Z].length+1;return U+Q}function pG(D,$){if(typeof D=="string")return eD.aliases.get(D)===$;for(let X of D)if(X!==void 0&&pG(X,$))return!0;return!1}function C50(D,$){if(D===$)return;let X=D.split(` `),J=$.split(` `),F=Math.max(X.length,J.length),Y=[];for(let Q=0;Q<F;Q++)X[Q]!==J[Q]&&Y.push(Q);return{lines:Y,numLinesBefore:X.length,numLinesAfter:J.length,numLines:F}}function y0(D){return D===nG}function FF(D,$){let X=D;X.isTTY&&X.setRawMode($)}function BR({input:D=HR,output:$=iG,overwrite:X=!0,hideCursor:J=!0}={}){let F=Z4.createInterface({input:D,output:$,prompt:"",tabSize:1});Z4.emitKeypressEvents(D,F),D instanceof qR&&D.isTTY&&D.setRawMode(!0);let Y=(Q,{name:U,sequence:Z})=>{let O=String(Q);if(pG([O,U,Z],"cancel")){J&&$.write(W1.cursor.show),process.exit(0);return}if(!X)return;Z4.moveCursor($,U==="return"?0:-1,U==="return"?-1:0,()=>{Z4.clearLine($,1,()=>{D.once("keypress",Y)})})};return J&&$.write(W1.cursor.hide),D.once("keypress",Y),()=>{D.off("keypress",Y),J&&$.write(W1.cursor.show),D instanceof qR&&D.isTTY&&!S50&&D.setRawMode(!1),F.terminal=!1,F.close()}}function j3(D,$,X,J=X,F=X,Y){let Q=QF(D??iG);return U4($,Q-X.length,{hard:!0,trim:!1}).split(` `).map((U,Z,O)=>{let G=Y?Y(U,Z):U;return Z===0?`${J}${G}`:Z===O.length-1?`${F}${G}`:`${X}${G}`}).join(` `)}function NR(D,$){if("~standard"in D){let X=D["~standard"].validate($);if(X instanceof Promise)throw TypeError("Schema validation must be synchronous. Update `validate()` and remove any asynchronous logic.");return X.issues?.at(0)?.message}return D($)}class C6{input;output;_abortSignal;rl;opts;_render;_track=!1;_prevFrame="";_subscribers=new Map;_cursor=0;state="initial";error="";value;userInput="";constructor(D,$=!0){let{input:X=HR,output:J=iG,render:F,signal:Y,...Q}=D;this.opts=Q,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=F.bind(this),this._track=$,this._abortSignal=Y,this.input=X,this.output=J}unsubscribe(){this._subscribers.clear()}setSubscriber(D,$){let X=this._subscribers.get(D)??[];X.push($),this._subscribers.set(D,X)}on(D,$){this.setSubscriber(D,{cb:$})}once(D,$){this.setSubscriber(D,{cb:$,once:!0})}emit(D,...$){let X=this._subscribers.get(D)??[],J=[];for(let F of X)F.cb(...$),F.once&&J.push(()=>X.splice(X.indexOf(F),1));for(let F of J)F()}prompt(){return new Promise((D)=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),D(nG);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}this.rl=R50.createInterface({input:this.input,tabSize:2,prompt:"",escapeCodeTimeout:50,terminal:!0}),this.rl.prompt(),this.opts.initialUserInput!==void 0&&this._setUserInput(this.opts.initialUserInput,!0),this.input.on("keypress",this.onKeypress),FF(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(W1.cursor.show),this.output.off("resize",this.render),FF(this.input,!1),D(this.value)}),this.once("cancel",()=>{this.output.write(W1.cursor.show),this.output.off("resize",this.render),FF(this.input,!1),D(nG)})})}_isActionKey(D,$){return D==="\t"}_shouldSubmit(D,$){return!0}_setValue(D){this.value=D,this.emit("value",this.value)}_setUserInput(D,$){this.userInput=D??"",this.emit("userInput",this.userInput),$&&this._track&&this.rl&&(this.rl.write(this.userInput),this._cursor=this.rl.cursor)}_clearUserInput(){this.rl?.write(null,{ctrl:!0,name:"u"}),this._setUserInput("")}onKeypress(D,$){if(this._track&&$.name!=="return"&&($.name&&this._isActionKey(D,$)&&this.rl?.write(null,{ctrl:!0,name:"h"}),this._cursor=this.rl?.cursor??0,this._setUserInput(this.rl?.line)),this.state==="error"&&(this.state="active"),$?.name&&(!this._track&&eD.aliases.has($.name)&&this.emit("cursor",eD.aliases.get($.name)),eD.actions.has($.name)&&this.emit("cursor",$.name)),D&&(D.toLowerCase()==="y"||D.toLowerCase()==="n")&&this.emit("confirm",D.toLowerCase()==="y"),this.emit("key",D,$),$?.name==="return"&&this._shouldSubmit(D,$)){if(this.opts.validate){let X=NR(this.opts.validate,this.value);X&&(this.error=X instanceof Error?X.message:X,this.state="error",this.rl?.write(this.userInput))}this.state!=="error"&&(this.state="submit")}pG([D,$?.name,$?.sequence],"cancel")&&(this.state="cancel"),(this.state==="submit"||this.state==="cancel")&&this.emit("finalize"),this.render(),(this.state==="submit"||this.state==="cancel")&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(` `),FF(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let D=U4(this._prevFrame,process.stdout.columns,{hard:!0,trim:!1}).split(` `).length-1;this.output.write(W1.cursor.move(-999,D*-1))}render(){let D=U4(this._render(this)??"",process.stdout.columns,{hard:!0,trim:!1});if(D!==this._prevFrame){if(this.state==="initial")this.output.write(W1.cursor.hide);else{let $=C50(this._prevFrame,D),X=rG(this.output);if(this.restoreCursor(),$){let J=Math.max(0,$.numLinesAfter-X),F=Math.max(0,$.numLinesBefore-X),Y=$.lines.find((Q)=>Q>=J);if(Y===void 0){this._prevFrame=D;return}if($.lines.length===1){this.output.write(W1.cursor.move(0,Y-F)),this.output.write(W1.erase.lines(1));let Q=D.split(` `);this.output.write(Q[Y]),this._prevFrame=D,this.output.write(W1.cursor.move(0,Q.length-Y-1));return}else if($.lines.length>1){if(J<F)Y=J;else{let U=Y-F;U>0&&this.output.write(W1.cursor.move(0,U))}this.output.write(W1.erase.down());let Q=D.split(` `).slice(Y);this.output.write(Q.join(` `)),this._prevFrame=D;return}}this.output.write(W1.erase.down())}this.output.write(D),this.state==="initial"&&(this.state="active"),this._prevFrame=D}}}function P50(D,$){if(D===void 0||$.length===0)return 0;let X=$.findIndex((J)=>J.value===D);return X!==-1?X:0}function u50(D,$){return($.label??String($.value)).toLowerCase().includes(D.toLowerCase())}function x50(D,$){if($)return D?$:$[0]}function WR(D){return[...D].map(($)=>_50[$])}function f50(D){let $=new Intl.DateTimeFormat(D,{year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(2000,0,15)),X=[],J="/";for(let F of $)F.type==="literal"?J=F.value.trim()||F.value:(F.type==="year"||F.type==="month"||F.type==="day")&&X.push({type:F.type,len:F.type==="year"?4:2});return{segments:X,separator:J}}function dG(D){return Number.parseInt((D||"0").replace(/_/g,"0"),10)||0}function YF(D){return{year:dG(D.year),month:dG(D.month),day:dG(D.day)}}function lG(D,$){return new Date(D||2001,$||1,0).getDate()}function zR(D){let{year:$,month:X,day:J}=YF(D);if(!$||$<0||$>9999||!X||X<1||X>12||!J||J<1)return;let F=new Date(Date.UTC($,X-1,J));if(!(F.getUTCFullYear()!==$||F.getUTCMonth()!==X-1||F.getUTCDate()!==J))return{year:$,month:X,day:J}}function KR(D){let $=zR(D);return $?new Date(Date.UTC($.year,$.month-1,$.day)):void 0}function k50(D,$,X,J){let F=X?{year:X.getUTCFullYear(),month:X.getUTCMonth()+1,day:X.getUTCDate()}:null,Y=J?{year:J.getUTCFullYear(),month:J.getUTCMonth()+1,day:J.getUTCDate()}:null;return D==="year"?{min:F?.year??1,max:Y?.year??9999}:D==="month"?{min:F&&$.year===F.year?F.month:1,max:Y&&$.year===Y.year?Y.month:12}:{min:F&&$.year===F.year&&$.month===F.month?F.day:1,max:Y&&$.year===Y.year&&$.month===Y.month?Y.day:lG($.year,$.month)}}var W1,j50,T50,eD,S50,nG,QF=(D)=>("columns"in D)&&typeof D.columns=="number"?D.columns:80,rG=(D)=>("rows"in D)&&typeof D.rows=="number"?D.rows:20,v50,tG,_50,VR,y50,b50,LR,oG,aG,sG;var eG=p(()=>{mG();W1=JD(VD(),1);j50=["up","down","left","right","space","enter","cancel"],T50=["January","February","March","April","May","June","July","August","September","October","November","December"],eD={actions:new Set(j50),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["\x03","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0,date:{monthNames:[...T50],messages:{required:"Please enter a valid date",invalidMonth:"There are only 12 months in a year",invalidDay:(D,$)=>`There are only ${D} days in ${$}`,afterMin:(D)=>`Date must be on or after ${D.toISOString().slice(0,10)}`,beforeMax:(D)=>`Date must be on or before ${D.toISOString().slice(0,10)}`}}};S50=globalThis.process.platform.startsWith("win"),nG=Symbol("clack:cancel");v50=class extends C6{filteredOptions;multiple;isNavigating=!1;selectedValues=[];focusedValue;#$=0;#F="";#D;#Y;#U;get cursor(){return this.#$}get userInputWithCursor(){if(!this.userInput)return m9(["inverse","hidden"],"_");if(this._cursor>=this.userInput.length)return`${this.userInput}█`;let D=this.userInput.slice(0,this._cursor),[$,...X]=this.userInput.slice(this._cursor);return`${D}${m9("inverse",$)}${X.join("")}`}get options(){return typeof this.#Y=="function"?this.#Y():this.#Y}constructor(D){super(D),this.#Y=D.options,this.#U=D.placeholder;let $=this.options;this.filteredOptions=[...$],this.multiple=D.multiple===!0,this.#D=typeof D.options=="function"?D.filter:D.filter??u50;let X;if(D.initialValue&&Array.isArray(D.initialValue)?this.multiple?X=D.initialValue:X=D.initialValue.slice(0,1):!this.multiple&&this.options.length>0&&(X=[this.options[0].value]),X)for(let J of X){let F=$.findIndex((Y)=>Y.value===J);F!==-1&&(this.toggleSelected(J),this.#$=F)}this.focusedValue=this.options[this.#$]?.value,this.on("key",(J,F)=>this.#X(J,F)),this.on("userInput",(J)=>this.#J(J))}_isActionKey(D,$){return D==="\t"||this.multiple&&this.isNavigating&&$.name==="space"&&D!==void 0&&D!==""}#X(D,$){let X=$.name==="up",J=$.name==="down",F=$.name==="return",Y=this.userInput===""||this.userInput==="\t",Q=this.#U,U=this.options,Z=Q!==void 0&&Q!==""&&U.some((O)=>!O.disabled&&(this.#D?this.#D(Q,O):!0));if($.name==="tab"&&Y&&Z){this.userInput==="\t"&&this._clearUserInput(),this._setUserInput(Q,!0),this.isNavigating=!1;return}X||J?(this.#$=g9(this.#$,X?-1:1,this.filteredOptions),this.focusedValue=this.filteredOptions[this.#$]?.value,this.multiple||(this.selectedValues=[this.focusedValue]),this.isNavigating=!0):F?this.value=x50(this.multiple,this.selectedValues):this.multiple?this.focusedValue!==void 0&&($.name==="tab"||this.isNavigating&&$.name==="space")?this.toggleSelected(this.focusedValue):this.isNavigating=!1:(this.focusedValue&&(this.selectedValues=[this.focusedValue]),this.isNavigating=!1)}deselectAll(){this.selectedValues=[]}toggleSelected(D){this.filteredOptions.length!==0&&(this.multiple?this.selectedValues.includes(D)?this.selectedValues=this.selectedValues.filter(($)=>$!==D):this.selectedValues=[...this.selectedValues,D]:this.selectedValues=[D])}#J(D){if(D!==this.#F){this.#F=D;let $=this.options;D&&this.#D?this.filteredOptions=$.filter((F)=>this.#D?.(D,F)):this.filteredOptions=[...$];let X=P50(this.focusedValue,this.filteredOptions);this.#$=g9(X,0,this.filteredOptions);let J=this.filteredOptions[this.#$];J&&!J.disabled?this.focusedValue=J.value:this.focusedValue=void 0,this.multiple||(this.focusedValue!==void 0?this.toggleSelected(this.focusedValue):this.deselectAll())}}};tG=class tG extends C6{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(D){super(D,!1),this.value=!!D.initialValue,this.on("userInput",()=>{this.value=this._value}),this.on("confirm",($)=>{this.output.write(W1.cursor.move(0,-1)),this.value=$,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}};_50={Y:{type:"year",len:4},M:{type:"month",len:2},D:{type:"day",len:2}};VR=class VR extends C6{#$;#F;#D;#Y;#U;#X={segmentIndex:0,positionInSegment:0};#J=!0;#Q=null;inlineError="";get segmentCursor(){return{...this.#X}}get segmentValues(){return{...this.#D}}get segments(){return this.#$}get separator(){return this.#F}get formattedValue(){return this.#w(this.#D)}#w(D){return this.#$.map(($)=>D[$.type]).join(this.#F)}#Z(){this._setUserInput(this.#w(this.#D)),this._setValue(KR(this.#D)??void 0)}constructor(D){let $=D.format?{segments:WR(D.format),separator:D.separator??"/"}:f50(D.locale),X=D.separator??$.separator,J=D.format?WR(D.format):$.segments,F=D.initialValue??D.defaultValue,Y=F?{year:String(F.getUTCFullYear()).padStart(4,"0"),month:String(F.getUTCMonth()+1).padStart(2,"0"),day:String(F.getUTCDate()).padStart(2,"0")}:{year:"____",month:"__",day:"__"},Q=J.map((U)=>Y[U.type]).join(X);super({...D,initialUserInput:Q},!1),this.#$=J,this.#F=X,this.#D=Y,this.#Y=D.minDate,this.#U=D.maxDate,this.#Z(),this.on("cursor",(U)=>this.#K(U)),this.on("key",(U,Z)=>this.#H(U,Z)),this.on("finalize",()=>this.#B(D))}#O(){let D=Math.max(0,Math.min(this.#X.segmentIndex,this.#$.length-1)),$=this.#$[D];if($)return this.#X.positionInSegment=Math.max(0,Math.min(this.#X.positionInSegment,$.len-1)),{segment:$,index:D}}#G(D){this.inlineError="",this.#Q=null;let $=this.#O();$&&(this.#X.segmentIndex=Math.max(0,Math.min(this.#$.length-1,$.index+D)),this.#X.positionInSegment=0,this.#J=!0)}#q(D){let $=this.#O();if(!$)return;let{segment:X}=$,J=this.#D[X.type],F=!J||J.replace(/_/g,"")==="",Y=Number.parseInt((J||"0").replace(/_/g,"0"),10)||0,Q=k50(X.type,YF(this.#D),this.#Y,this.#U),U;F?U=D===1?Q.min:Q.max:U=Math.max(Math.min(Q.max,Y+D),Q.min),this.#D={...this.#D,[X.type]:U.toString().padStart(X.len,"0")},this.#J=!0,this.#Q=null,this.#Z()}#K(D){if(D)switch(D){case"right":return this.#G(1);case"left":return this.#G(-1);case"up":return this.#q(1);case"down":return this.#q(-1)}}#H(D,$){if($?.name==="backspace"||$?.sequence===""||$?.sequence==="\b"||D===""||D==="\b"){this.inlineError="";let X=this.#O();if(!X)return;if(!this.#D[X.segment.type].replace(/_/g,"")){this.#G(-1);return}this.#D[X.segment.type]="_".repeat(X.segment.len),this.#J=!0,this.#X.positionInSegment=0,this.#Z();return}if($?.name==="tab"){this.inlineError="";let X=this.#O();if(!X)return;let J=$.shift?-1:1,F=X.index+J;F>=0&&F<this.#$.length&&(this.#X.segmentIndex=F,this.#X.positionInSegment=0,this.#J=!0);return}if(D&&/^[0-9]$/.test(D)){let X=this.#O();if(!X)return;let{segment:J}=X,F=!this.#D[J.type].replace(/_/g,"");if(this.#J&&this.#Q!==null&&!F){let q=this.#Q+D,W={...this.#D,[J.type]:q},K=this.#W(W,J);if(K){this.inlineError=K,this.#Q=null,this.#J=!1;return}this.inlineError="",this.#D[J.type]=q,this.#Q=null,this.#J=!1,this.#Z(),X.index<this.#$.length-1&&(this.#X.segmentIndex=X.index+1,this.#X.positionInSegment=0,this.#J=!0);return}this.#J&&!F&&(this.#D[J.type]="_".repeat(J.len),this.#X.positionInSegment=0),this.#J=!1,this.#Q=null;let Y=this.#D[J.type],Q=Y.indexOf("_"),U=Q>=0?Q:Math.min(this.#X.positionInSegment,J.len-1);if(U<0||U>=J.len)return;let Z=Y.slice(0,U)+D+Y.slice(U+1),O=!1;if(U===0&&Y==="__"&&(J.type==="month"||J.type==="day")){let q=Number.parseInt(D,10);Z=`0${D}`,O=q<=(J.type==="month"?1:2)}if(J.type==="year"&&(Z=(Y.replace(/_/g,"")+D).padStart(J.len,"_")),!Z.includes("_")){let q={...this.#D,[J.type]:Z},W=this.#W(q,J);if(W){this.inlineError=W;return}}this.inlineError="",this.#D[J.type]=Z;let G=Z.includes("_")?void 0:zR(this.#D);if(G){let{year:q,month:W}=G,K=lG(q,W);this.#D={year:String(Math.max(0,Math.min(9999,q))).padStart(4,"0"),month:String(Math.max(1,Math.min(12,W))).padStart(2,"0"),day:String(Math.max(1,Math.min(K,G.day))).padStart(2,"0")}}this.#Z();let w=Z.indexOf("_");O?(this.#J=!0,this.#Q=D):w>=0?this.#X.positionInSegment=w:Q>=0&&X.index<this.#$.length-1?(this.#X.segmentIndex=X.index+1,this.#X.positionInSegment=0,this.#J=!0):this.#X.positionInSegment=Math.min(U+1,J.len-1)}}#W(D,$){let{month:X,day:J}=YF(D);if($.type==="month"&&(X<0||X>12))return eD.date.messages.invalidMonth;if($.type==="day"&&(J<0||J>31))return eD.date.messages.invalidDay(31,"any month")}#B(D){let{year:$,month:X,day:J}=YF(this.#D);if($&&X&&J){let F=lG($,X);this.#D={...this.#D,day:String(Math.min(J,F)).padStart(2,"0")}}this.value=KR(this.#D)??D.defaultValue??void 0}};y50=class extends C6{options;cursor=0;#$;getGroupItems(D){return this.options.filter(($)=>$.group===D)}isGroupSelected(D){let $=this.getGroupItems(D),X=this.value;return X===void 0?!1:$.every((J)=>X.includes(J.value))}toggleValue(){let D=this.options[this.cursor];if(this.value===void 0&&(this.value=[]),D.group===!0){let $=D.value,X=this.getGroupItems($);this.isGroupSelected($)?this.value=this.value.filter((J)=>X.findIndex((F)=>F.value===J)===-1):this.value=[...this.value,...X.map((J)=>J.value)],this.value=Array.from(new Set(this.value))}else{let $=this.value.includes(D.value);this.value=$?this.value.filter((X)=>X!==D.value):[...this.value,D.value]}}constructor(D){super(D,!1);let{options:$}=D;this.#$=D.selectableGroups!==!1,this.options=Object.entries($).flatMap(([X,J])=>[{value:X,group:!0,label:X},...J.map((F)=>({...F,group:X}))]),this.value=[...D.initialValues??[]],this.cursor=Math.max(this.options.findIndex(({value:X})=>X===D.cursorAt),this.#$?0:1),this.on("cursor",(X)=>{switch(X){case"left":case"up":{this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;let J=this.options[this.cursor]?.group===!0;!this.#$&&J&&(this.cursor=this.cursor===0?this.options.length-1:this.cursor-1);break}case"down":case"right":{this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;let J=this.options[this.cursor]?.group===!0;!this.#$&&J&&(this.cursor=this.cursor===this.options.length-1?0:this.cursor+1);break}case"space":this.toggleValue();break}})}},b50=new Set(["up","down","left","right"]);LR=class LR extends C6{#$=!1;#F;focused="editor";get userInputWithCursor(){if(this.state==="submit")return this.userInput;let D=this.userInput;if(this.cursor>=D.length)return`${D}█`;let $=D.slice(0,this.cursor),X=D[this.cursor],J=D.slice(this.cursor+1);return X===` `?`${$}█ ${J}`:`${$}${m9("inverse",X)}${J}`}get cursor(){return this._cursor}#D(D){if(this.userInput.length===0){this._setUserInput(D);return}this._setUserInput(this.userInput.slice(0,this.cursor)+D+this.userInput.slice(this.cursor))}#Y(D){let $=this.value??"";switch(D){case"up":this._cursor=JF(this._cursor,0,-1,$);return;case"down":this._cursor=JF(this._cursor,0,1,$);return;case"left":this._cursor=JF(this._cursor,-1,0,$);return;case"right":this._cursor=JF(this._cursor,1,0,$);return}}_shouldSubmit(D,$){if(this.#F)return this.focused==="submit"?!0:(this.#D(` `),this._cursor++,!1);let X=this.#$;return this.#$=!0,X?(this.userInput[this.cursor-1]===` `&&(this._setUserInput(this.userInput.slice(0,this.cursor-1)+this.userInput.slice(this.cursor)),this._cursor--),!0):(this.#D(` `),this._cursor++,!1)}constructor(D){super(D,!1),this.#F=D.showSubmit??!1,this.on("key",($,X)=>{if(X?.name&&b50.has(X.name)){this.#Y(X.name);return}if($==="\t"&&this.#F){this.focused=this.focused==="editor"?"submit":"editor";return}if(X?.name!=="return"){if(this.#$=!1,X?.name==="backspace"&&this.cursor>0){this._setUserInput(this.userInput.slice(0,this.cursor-1)+this.userInput.slice(this.cursor)),this._cursor--;return}if(X?.name==="delete"&&this.cursor<this.userInput.length){this._setUserInput(this.userInput.slice(0,this.cursor)+this.userInput.slice(this.cursor+1));return}$&&(this.#F&&this.focused==="submit"&&(this.focused="editor"),this.#D($??""),this._cursor++)}}),this.on("userInput",($)=>{this._setValue($)}),this.on("finalize",()=>{this.value||(this.value=D.defaultValue),this.value===void 0&&(this.value="")})}};oG=class oG extends C6{_mask="•";get cursor(){return this._cursor}get masked(){return this.userInput.replaceAll(/./g,this._mask)}get userInputWithCursor(){if(this.state==="submit"||this.state==="cancel")return this.masked;let D=this.userInput;if(this.cursor>=D.length)return`${this.masked}${m9(["inverse","hidden"],"_")}`;let $=this.masked,X=$.slice(0,this.cursor),J=$.slice(this.cursor);return`${X}${m9("inverse",J[0])}${J.slice(1)}`}clear(){this._clearUserInput()}constructor({mask:D,...$}){super($),this._mask=D??"•",this.on("userInput",(X)=>{this._setValue(X)})}};aG=class aG extends C6{options;cursor=0;get _selectedValue(){return this.options[this.cursor]}changeValue(){this.value=this._selectedValue.value}constructor(D){super(D,!1),this.options=D.options;let $=this.options.findIndex(({value:J})=>J===D.initialValue),X=$===-1?0:$;this.cursor=this.options[X].disabled?g9(X,1,this.options):X,this.changeValue(),this.on("cursor",(J)=>{switch(J){case"left":case"up":this.cursor=g9(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=g9(this.cursor,1,this.options);break}this.changeValue()})}};sG=class sG extends C6{get userInputWithCursor(){if(this.state==="submit")return this.userInput;let D=this.userInput;if(this.cursor>=D.length)return`${this.userInput}█`;let $=D.slice(0,this.cursor),[X,...J]=D.slice(this.cursor);return`${$}${m9("inverse",X)}${J.join("")}`}get cursor(){return this._cursor}constructor(D){super({...D,initialUserInput:D.initialUserInput??D.initialValue}),this.on("userInput",($)=>{this._setValue($)}),this.on("finalize",()=>{this.value||(this.value=D.defaultValue),this.value===void 0&&(this.value="")})}}});import{styleText as Z0,stripVTControlCharacters as ri0}from"node:util";import u$ from"node:process";function h50(){return u$.platform!=="win32"?u$.env.TERM!=="linux":!!u$.env.CI||!!u$.env.WT_SESSION||!!u$.env.TERMINUS_SUBLIME||u$.env.ConEmuTask==="{cmd::Cmder}"||u$.env.TERM_PROGRAM==="Terminus-Sublime"||u$.env.TERM_PROGRAM==="vscode"||u$.env.TERM==="xterm-256color"||u$.env.TERM==="alacritty"||u$.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var T3,Dw,g50=()=>process.env.CI==="true",FD=(D,$)=>Dw?D:$,m50,IR,AR,Xw,c50,n0,W8,si0,ei0,$w,ZF,Dp0,$p0,Xp0,d50,Jp0,Fp0,Yp0,Qp0,Up0,Zp0,n50,l50,i50,p50,OF=(D)=>{switch(D){case"initial":case"active":return Z0("cyan",m50);case"cancel":return Z0("red",IR);case"error":return Z0("yellow",AR);case"submit":return Z0("green",Xw)}},r50=(D)=>{switch(D){case"initial":case"active":return Z0("cyan",n0);case"cancel":return Z0("red",n0);case"error":return Z0("yellow",n0);case"submit":return Z0("green",n0)}},MR=(D,$,X,J,F,Y=!1)=>{let Q=$,U=0;if(Y)for(let Z=J-1;Z>=X&&(Q-=D[Z].length,U++,!(Q<=F));Z--);else for(let Z=X;Z<J&&(Q-=D[Z].length,U++,!(Q<=F));Z++);return{lineCount:Q,removals:U}},t50=({cursor:D,options:$,style:X,output:J=process.stdout,maxItems:F=Number.POSITIVE_INFINITY,columnPadding:Y=0,rowPadding:Q=4})=>{let U=QF(J)-Y,Z=rG(J),O=Z0("dim","..."),G=Math.max(Z-Q,0),w=Math.max(Math.min(F,G),5),q=0;D>=w-3&&(q=Math.max(Math.min(D-w+3,$.length-w),0));let W=w<$.length&&q>0,K=w<$.length&&q+w<$.length,H=Math.min(q+w,$.length),L=[],M=0;W&&M++,K&&M++;let I=q+(W?1:0),B=H-(K?1:0);for(let z=I;z<B;z++){let R=U4(X($[z],z===D),U,{hard:!0,trim:!1}).split(` `);L.push(R),M+=R.length}if(M>G){let z=0,R=0,v=M,_=D-I,A=G,u=()=>MR(L,v,0,_,A),S=()=>MR(L,v,_+1,L.length,A,!0);W?({lineCount:v,removals:z}=u(),v>A&&(K||(A-=1),{lineCount:v,removals:R}=S())):(K||(A-=1),{lineCount:v,removals:R}=S(),v>A&&(A-=1,{lineCount:v,removals:z}=u())),z>0&&(W=!0,L.splice(0,z)),R>0&&(K=!0,L.splice(L.length-R,R))}let N=[];W&&N.push(O);for(let z of L)for(let R of z)N.push(R);return K&&N.push(O),N},vD=(D)=>{let $=D.active??"Yes",X=D.inactive??"No";return new tG({active:$,inactive:X,signal:D.signal,input:D.input,output:D.output,initialValue:D.initialValue??!0,render(){let J=D.withGuide??eD.withGuide,F=`${OF(this.state)} `,Y=J?`${Z0("gray",n0)} `:"",Q=j3(D.output,D.message,Y,F),U=`${J?`${Z0("gray",n0)} `:""}${Q} `,Z=this.value?$:X;switch(this.state){case"submit":{let O=J?`${Z0("gray",n0)} `:"";return`${U}${O}${Z0("dim",Z)}`}case"cancel":{let O=J?`${Z0("gray",n0)} `:"";return`${U}${O}${Z0(["strikethrough","dim"],Z)}${J?` ${Z0("gray",n0)}`:""}`}default:{let O=J?`${Z0("cyan",n0)} `:"",G=J?Z0("cyan",W8):"";return`${U}${O}${this.value?`${Z0("green",$w)} ${$}`:`${Z0("dim",ZF)} ${Z0("dim",$)}`}${D.vertical?J?` ${Z0("cyan",n0)} `:` `:` ${Z0("dim","/")} `}${this.value?`${Z0("dim",ZF)} ${Z0("dim",X)}`:`${Z0("green",$w)} ${X}`} ${G} `}}}}).prompt()},V,V0=(D="",$)=>{let X=$?.output??process.stdout,J=$?.withGuide??eD.withGuide?`${Z0("gray",c50)} `:"";X.write(`${J}${D} `)},L0=(D="",$)=>{let X=$?.output??process.stdout,J=$?.withGuide??eD.withGuide?`${Z0("gray",n0)} ${Z0("gray",W8)} `:"";X.write(`${J}${D} `)},ER=(D)=>new oG({validate:D.validate,mask:D.mask??d50,signal:D.signal,input:D.input,output:D.output,render(){let $=D.withGuide??eD.withGuide,X=`${$?`${Z0("gray",n0)} `:""}${OF(this.state)} ${D.message} `,J=this.userInputWithCursor,F=this.masked;switch(this.state){case"error":{let Y=$?`${Z0("yellow",n0)} `:"",Q=$?`${Z0("yellow",W8)} `:"",U=F??"";return D.clearOnError&&this.clear(),`${X.trim()} ${Y}${U} ${Q}${Z0("yellow",this.error)} `}case"submit":{let Y=$?`${Z0("gray",n0)} `:"",Q=F?Z0("dim",F):"";return`${X}${Y}${Q}`}case"cancel":{let Y=$?`${Z0("gray",n0)} `:"",Q=F?Z0(["strikethrough","dim"],F):"";return`${X}${Y}${Q}${F&&$?` ${Z0("gray",n0)}`:""}`}default:{let Y=$?`${Z0("cyan",n0)} `:"",Q=$?Z0("cyan",W8):"";return`${X}${Y}${J} ${Q} `}}}}).prompt(),o50=(D)=>Z0("magenta",D),TD=({indicator:D="dots",onCancel:$,output:X=process.stdout,cancelMessage:J,errorMessage:F,frames:Y=Dw?["◒","◐","◓","◑"]:["•","o","O","0"],delay:Q=Dw?80:120,signal:U,...Z}={})=>{let O=g50(),G,w,q=!1,W=!1,K="",H,L=performance.now(),M=QF(X),I=Z?.styleFrame??o50,B=(r)=>{let k=r>1?F??eD.messages.error:J??eD.messages.cancel;W=r===1,q&&(g(k,r),W&&typeof $=="function"&&$())},N=()=>B(2),z=()=>B(1),R=()=>{process.on("uncaughtExceptionMonitor",N),process.on("unhandledRejection",N),process.on("SIGINT",z),process.on("SIGTERM",z),process.on("exit",B),U&&U.addEventListener("abort",z)},v=()=>{process.removeListener("uncaughtExceptionMonitor",N),process.removeListener("unhandledRejection",N),process.removeListener("SIGINT",z),process.removeListener("SIGTERM",z),process.removeListener("exit",B),U&&U.removeEventListener("abort",z)},_=()=>{if(H===void 0)return;O&&X.write(` `);let r=U4(H,M,{hard:!0,trim:!1}).split(` `);r.length>1&&X.write(T3.cursor.up(r.length-1)),X.write(T3.cursor.to(0)),X.write(T3.erase.down())},A=(r)=>r.replace(/\.+$/,""),u=(r)=>{let k=(performance.now()-r)/1000,T=Math.floor(k/60),P=Math.floor(k%60);return T>0?`[${T}m ${P}s]`:`[${P}s]`},S=Z.withGuide??eD.withGuide,m=(r="")=>{q=!0,G=BR({output:X}),K=A(r),L=performance.now(),S&&X.write(`${Z0("gray",n0)} `);let k=0,T=0;R(),w=setInterval(()=>{if(O&&K===H)return;_(),H=K;let P=I(Y[k]),x;if(O)x=`${P} ${K}...`;else if(D==="timer")x=`${P} ${K} ${u(L)}`;else{let h=".".repeat(Math.floor(T)).slice(0,3);x=`${P} ${K}${h}`}let f=U4(x,M,{hard:!0,trim:!1});X.write(f),k=k+1<Y.length?k+1:0,T=T<4?T+0.125:0},Q)},g=(r="",k=0,T=!1)=>{if(!q)return;q=!1,clearInterval(w),_();let P=k===0?Z0("green",Xw):k===1?Z0("red",IR):Z0("red",AR);K=r??K,T||(D==="timer"?X.write(`${P} ${K} ${u(L)} `):X.write(`${P} ${K} `)),v(),G()};return{start:m,stop:(r="")=>g(r,0),message:(r="")=>{K=A(r??K)},cancel:(r="")=>g(r,1),error:(r="")=>g(r,2),clear:()=>g("",0,!0),get isCancelled(){return W}}},Op0,UF=(D,$)=>D.includes(` `)?D.split(` `).map((X)=>$(X)).join(` `):$(D),K1=(D)=>{let $=(X,J)=>{let F=X.label??String(X.value);switch(J){case"disabled":return`${Z0("gray",ZF)} ${UF(F,(Y)=>Z0("gray",Y))}${X.hint?` ${Z0("dim",`(${X.hint??"disabled"})`)}`:""}`;case"selected":return`${UF(F,(Y)=>Z0("dim",Y))}`;case"active":return`${Z0("green",$w)} ${F}${X.hint?` ${Z0("dim",`(${X.hint})`)}`:""}`;case"cancelled":return`${UF(F,(Y)=>Z0(["strikethrough","dim"],Y))}`;default:return`${Z0("dim",ZF)} ${UF(F,(Y)=>Z0("dim",Y))}`}};return new aG({options:D.options,signal:D.signal,input:D.input,output:D.output,initialValue:D.initialValue,render(){let X=D.withGuide??eD.withGuide,J=`${OF(this.state)} `,F=`${r50(this.state)} `,Y=j3(D.output,D.message,F,J),Q=`${X?`${Z0("gray",n0)} `:""}${Y} `;switch(this.state){case"submit":{let U=X?`${Z0("gray",n0)} `:"",Z=j3(D.output,$(this.options[this.cursor],"selected"),U);return`${Q}${Z}`}case"cancel":{let U=X?`${Z0("gray",n0)} `:"",Z=j3(D.output,$(this.options[this.cursor],"cancelled"),U);return`${Q}${Z}${X?` ${Z0("gray",n0)}`:""}`}default:{let U=X?`${Z0("cyan",n0)} `:"",Z=X?Z0("cyan",W8):"",O=Q.split(` `).length,G=X?2:1;return`${Q}${U}${t50({output:D.output,cursor:this.cursor,options:this.options,maxItems:D.maxItems,columnPadding:U.length,rowPadding:O+G,style:(w,q)=>$(w,w.disabled?"disabled":q?"active":"inactive")}).join(` ${U}`)} ${Z} `}}}}).prompt()},Gp0,O4=(D)=>new sG({validate:D.validate,placeholder:D.placeholder,defaultValue:D.defaultValue,initialValue:D.initialValue,output:D.output,signal:D.signal,input:D.input,render(){let $=D?.withGuide??eD.withGuide,X=`${`${$?`${Z0("gray",n0)} `:""}${OF(this.state)} `}${D.message} `,J=D.placeholder?Z0("inverse",D.placeholder[0])+Z0("dim",D.placeholder.slice(1)):Z0(["inverse","hidden"],"_"),F=this.userInput?this.userInputWithCursor:J,Y=this.value??"";switch(this.state){case"error":{let Q=this.error?` ${Z0("yellow",this.error)}`:"",U=$?`${Z0("yellow",n0)} `:"",Z=$?Z0("yellow",W8):"";return`${X.trim()} ${U}${F} ${Z}${Q} `}case"submit":{let Q=Y?` ${Z0("dim",Y)}`:"",U=$?Z0("gray",n0):"";return`${X}${U}${Q}`}case"cancel":{let Q=Y?` ${Z0(["strikethrough","dim"],Y)}`:"",U=$?Z0("gray",n0):"";return`${X}${U}${Q}${Y.trim()?` ${U}`:""}`}default:{let Q=$?`${Z0("cyan",n0)} `:"",U=$?Z0("cyan",W8):"";return`${X}${Q}${F} ${U} `}}}}).prompt();var f0=p(()=>{eG();eG();mG();yG();T3=JD(VD(),1);Dw=h50(),m50=FD("◆","*"),IR=FD("■","x"),AR=FD("▲","x"),Xw=FD("◇","o"),c50=FD("┌","T"),n0=FD("│","|"),W8=FD("└","—"),si0=FD("┐","T"),ei0=FD("┘","—"),$w=FD("●",">"),ZF=FD("○"," "),Dp0=FD("◻","[•]"),$p0=FD("◼","[+]"),Xp0=FD("◻","[ ]"),d50=FD("▪","•"),Jp0=FD("─","-"),Fp0=FD("╮","+"),Yp0=FD("├","+"),Qp0=FD("╯","+"),Up0=FD("╰","+"),Zp0=FD("╭","+"),n50=FD("●","•"),l50=FD("◆","*"),i50=FD("▲","!"),p50=FD("■","x"),V={message:(D=[],{symbol:$=Z0("gray",n0),secondarySymbol:X=Z0("gray",n0),output:J=process.stdout,spacing:F=1,withGuide:Y}={})=>{let Q=[],U=Y??eD.withGuide,Z=U?X:"",O=U?`${$} `:"",G=U?`${X} `:"";for(let q=0;q<F;q++)Q.push(Z);let w=Array.isArray(D)?D:D.split(` `);if(w.length>0){let[q,...W]=w;q.length>0?Q.push(`${O}${q}`):Q.push(U?$:"");for(let K of W)K.length>0?Q.push(`${G}${K}`):Q.push(U?X:"")}J.write(`${Q.join(` `)} `)},info:(D,$)=>{V.message(D,{...$,symbol:Z0("blue",n50)})},success:(D,$)=>{V.message(D,{...$,symbol:Z0("green",l50)})},step:(D,$)=>{V.message(D,{...$,symbol:Z0("green",Xw)})},warn:(D,$)=>{V.message(D,{...$,symbol:Z0("yellow",i50)})},warning:(D,$)=>{V.warn(D,$)},error:(D,$)=>{V.message(D,{...$,symbol:Z0("red",p50)})}},Op0={light:FD("─","-"),heavy:FD("━","="),block:FD("█","#")},Gp0=`${Z0("gray",n0)} `});function RR(D,$){let J=["normal","bold","dim","italic","underline","strikethrough"].indexOf(D),F="\x1B[";return"\x1B["+J+"m"+$+"\x1B[0m"}var F$;var jR=p(()=>{F$=class F${title=null;headers=[];rows=[];static narrowTheme={top:["╔","═","╤","╗"],row:["║"," ","│","║"],div:["╟","─","┼","╢"],bot:["╚","═","╧","╝"]};static wideTheme={top:["╔═","═","═╤═","═╗"],row:["║ "," "," │ "," ║"],div:["╟─","─","─┼─","─╢"],bot:["╚═","═","═╧═","═╝"]};static roundTheme={top:["╭─","─","─┬─","─╮"],row:["│ "," "," │ "," │"],div:["├─","─","─┼─","─┤"],bot:["╰─","─","─┴─","─╯"]};theme=F$.wideTheme;columnWidth(){let D=[this.headers,...this.rows].filter((X)=>X.length>0),$=D[0].map((X)=>this.cast(X).length);for(let X of D.slice(1))for(let J=0;J<$.length;J++){let F=this.cast(X[J]).length;if(F>$[J])$[J]=F}return $}cast(D){if(typeof D==="object")return"obj";if(D!==void 0&&typeof D.toString==="function")return D.toString();else return""}renderTitle(){return"[ "+this.title+" ]"}renderLine(D){let $=this.columnWidth();return D[0]+$.map((X)=>D[1].repeat(X)).join(D[2])+D[3]}renderCell(D,$,X=!1){let J=this.cast(D),F=X?RR("bold",J):J,Y=$-J.length,Q=this.theme.row[1];switch(typeof D){case"number":return Q.repeat(Y)+F;case"string":return F+Q.repeat(Y);case"boolean":case"object":return Q.repeat(Math.ceil(Y/2))+RR("italic",J)+Q.repeat(Math.floor(Y/2));default:return Q.repeat(Y)}}renderRow(D,$=!1){let X=this.theme.row,J=this.columnWidth();return X[0]+D.map((F,Y)=>this.renderCell(F,J[Y],$)).join(X[2])+X[3]}toString(){let D=this.theme,$=this.headers.length>0,X=this.rows.length>0;return[this.title?this.renderTitle():"",$||X?this.renderLine(D.top):"",$?this.renderRow(this.headers,!0):"",$&&X?this.renderLine(D.div):"",...this.rows.map((J)=>this.renderRow(J)),$||X?this.renderLine(D.bot):""].filter((J)=>J.length>0).join(` `)}}});var c9=p(()=>{jR()});import{existsSync as c1}from"fs";var C3=(D=".",$="unknown")=>{let X=`${D}/bun.lockb`,J=`${D}/bun.lock`,F=`${D}/pnpm-lock.yaml`,Y=`${D}/shrinkwrap.yaml`,Q=`${D}/yarn.lock`,U=`${D}/package-lock.json`,Z=`${D}/npm-shrinkwrap.json`;if(c1(X)||c1(J))return"bun";if(c1(F)||c1(Y))return"pnpm";if(c1(Q))return"yarn";if(c1(U)||c1(Z))return"npm";return $},GF=(D=C3(),$=!1)=>{switch(D){case"bun":return $?"bun install":"install";case"pnpm":return $?"pnpm install":"install";case"yarn":return $?"yarn install":"install";case"npm":return $?"npm install":"install";case"unknown":return $?"unknown unknown":"unknown";default:return $?"npm install":"install"}},TR=(D=".",$="npx")=>{let X=`${D}/bun.lockb`,J=`${D}/bun.lock`,F=`${D}/pnpm-lock.yaml`,Y=`${D}/shrinkwrap.yaml`,Q=`${D}/yarn.lock`,U=`${D}/package-lock.json`,Z=`${D}/npm-shrinkwrap.json`;if(c1(X)||c1(J))return"bunx";if(c1(F)||c1(Y))return"pnpm exec";if(c1(Q))return"yarn dlx";if(c1(U)||c1(Z))return"npx";return $};var CR=()=>{};function wF(D,$){if(isNaN(D)||isNaN($))throw Error("Cannot compare against non-numbers");return D===$?0:D<$?-1:1}function uR(D=[],$=[]){if(D.length&&!$.length)return-1;if(!D.length&&$.length)return 1;return 0}function Fw(D=[],$=[]){let X=Math.max(D.length,$.length);for(let J=0;J<X;J++){let F=D[J],Y=$[J];if(F===void 0&&Y===void 0)return 0;if(Y===void 0)return 1;if(F===void 0)return-1;if(typeof F==="string"&&typeof Y==="number")return 1;if(typeof F==="number"&&typeof Y==="string")return-1;if(F<Y)return-1;if(F>Y)return 1}return 0}function Yw(D){return typeof D==="number"&&!Number.isNaN(D)&&(!Number.isFinite(D)||0<=D&&D<=Number.MAX_SAFE_INTEGER)}function d1(D){return D.split(".").filter(Boolean).map(($)=>{if(D70.test($)){let X=Number($);if(Yw(X))return X}return $})}function r$(D){return D.split(".").filter(Boolean)}function WF(D,$){let X=Number(D);if(!Yw(X))throw TypeError($);return X}function S6(D){return Number.isNaN(D.major)&&Number.isNaN(D.minor)&&Number.isNaN(D.patch)&&(D.prerelease===void 0||D.prerelease.length===0)&&(D.build===void 0||D.build.length===0)}var d9="0|[1-9]\\d*",a50="\\d*[a-zA-Z-][a-zA-Z0-9-]*",s50,SR,xR,PR="[0-9A-Za-z-]+",vR,_R,fR,kR="(?:<|>)?=?",e50="x|X|\\*",Jw,qF,yR,bR,Qw=256,D70;var Y$=p(()=>{s50=`(?<major>${d9})\\.(?<minor>${d9})\\.(?<patch>${d9})`,SR=`(?:${d9}|${a50})`,xR=`(?:-(?<prerelease>${SR}(?:\\.${SR})*))`,vR=`(?:\\+(?<buildmetadata>${PR}(?:\\.${PR})*))`,_R=`v?${s50}${xR}?${vR}?`,fR=new RegExp(`^${_R}$`),Jw=`${d9}|${e50}`,qF=`[v=\\s]*(?<major>${Jw})(?:\\.(?<minor>${Jw})(?:\\.(?<patch>${Jw})${xR}?${vR}?)?)?`,yR=new RegExp(`^(?<operator>~>?|\\^|${kR})\\s*${qF}$`),bR=new RegExp(`^(?<operator>${kR})\\s*(${_R})$|^$`);D70=new RegExp(`^${d9}$`)});function I1(D,$){if(D===$)return 0;return wF(D.major,$.major)||wF(D.minor,$.minor)||wF(D.patch,$.patch)||uR(D.prerelease,$.prerelease)||Fw(D.prerelease,$.prerelease)}var N$=p(()=>{Y$()});var hR=p(()=>{Y$()});function Uw(D){return D.toFixed(0)}function x$(D){let $=Uw(D.major),X=Uw(D.minor),J=Uw(D.patch),F=D.prerelease?.join(".")??"",Y=D.build?.join(".")??"";return[[`${$}.${X}.${J}`,F].filter((Z)=>Z).join("-"),Y].filter((Z)=>Z).join("+")}function $70(D,$){if(S6($))return!0;let X=I1(D,$);switch($.operator){case"=":case void 0:return X===0;case"!=":return X!==0;case">":return X>0;case"<":return X<0;case">=":return X>=0;case"<=":return X<=0}}function KF(D,$){for(let X of $)if(!$70(D,X))return!1;if(!D.prerelease?.length)return!0;for(let X of $){if(S6(X))continue;if(!X.prerelease?.length)continue;let{major:J,minor:F,patch:Y}=X;if(D.major===J&&D.minor===F&&D.patch===Y)return!0}return!1}var HF=p(()=>{Y$();N$()});function S3(D,$){return $.some((X)=>KF(D,X))}var P3=p(()=>{HF()});function X70(D=[]){let $=[...D],X=$.length;while(X>=0){let J=$[X];if(typeof J==="number"){$[X]=J+1;break}X-=1}if(X===-1)$.push(0);return $}function u3(D=[],$){let X=X70(D);if(!$)return X;let J=d1($);if(J.every((F)=>typeof F==="string")){if(J.every((F,Y)=>F===X[Y])&&typeof X[J.length]==="number")return X;J=[...J,0]}return J}function x3(D,$,X={}){let J=X.build!==void 0?r$(X.build):D.build??[];switch($){case"premajor":return{major:D.major+1,minor:0,patch:0,prerelease:u3(D.prerelease,X.prerelease),build:J};case"preminor":return{major:D.major,minor:D.minor+1,patch:0,prerelease:u3(D.prerelease,X.prerelease),build:J};case"prepatch":return{major:D.major,minor:D.minor,patch:D.patch+1,prerelease:u3(D.prerelease,X.prerelease),build:J};case"prerelease":{let Y=(D.prerelease??[]).length===0?D.patch+1:D.patch;return{major:D.major,minor:D.minor,patch:Y,prerelease:u3(D.prerelease,X.prerelease),build:J}}case"major":return{major:(D.prerelease??[]).length===0||D.minor!==0||D.patch!==0?D.major+1:D.major,minor:0,patch:0,prerelease:[],build:J};case"minor":{let Y=(D.prerelease??[]).length===0||D.patch!==0?D.minor+1:D.minor;return{major:D.major,minor:Y,patch:0,prerelease:[],build:J}}case"patch":{let Y=(D.prerelease??[]).length===0?D.patch+1:D.patch;return{major:D.major,minor:D.minor,patch:Y,prerelease:[],build:J}}case"pre":return{major:D.major,minor:D.minor,patch:D.patch,prerelease:u3(D.prerelease,X.prerelease),build:J};default:throw TypeError(`Cannot increment version: invalid argument ${$}`)}}var gR=p(()=>{Y$()});var BF,n9;var v3=p(()=>{BF={major:Number.NaN,minor:Number.NaN,patch:Number.NaN,prerelease:[],build:[]},n9={operator:void 0,...BF}});var Zw=p(()=>{v3();Y$()});function Ow(D,$){return I1(D,$)>0}var Gw=p(()=>{N$()});var mR=p(()=>{P3();Gw()});function K8(D,$){return I1(D,$)<0}var ww=p(()=>{N$()});var cR=p(()=>{P3();ww()});function J70(D){let X=D.match(bR)?.groups;if(!X)return null;let{operator:J}=X;return{operator:J||void 0,...BF}}function wD(D){return!D||D.toLowerCase()==="x"||D==="*"}function F70(D){if(wD(D.major))return;if(wD(D.minor))return{operator:">=",major:+D.major,minor:0,patch:0,prerelease:[],build:[]};if(wD(D.patch))return{operator:">=",major:+D.major,minor:+D.minor,patch:0,prerelease:[],build:[]};return{operator:">=",major:+D.major,minor:+D.minor,patch:+D.patch,prerelease:D.prerelease?d1(D.prerelease):[],build:[]}}function Y70(D){if(wD(D.major))return;if(wD(D.minor))return{operator:"<",major:+D.major+1,minor:0,patch:0,prerelease:[],build:[]};if(wD(D.patch))return{operator:"<",major:+D.major,minor:+D.minor+1,patch:0,prerelease:[],build:[]};if(D.prerelease)return{operator:"<=",major:+D.major,minor:+D.minor,patch:+D.patch,prerelease:d1(D.prerelease),build:[]};return{operator:"<=",major:+D.major,minor:+D.minor,patch:+D.patch,prerelease:[],build:[]}}function Q70(D){let $=D.match(new RegExp(`^${qF}`)),X=$?.groups;if(!X)return null;let J=$[0].length,F=D.slice(J).match(/^\s+-\s+/);if(!F)return null;let Y=F[0].length,U=D.slice(J+Y).match(new RegExp(`^${qF}\\s*$`))?.groups,Z=F70(X),O=Y70(U);return[Z,O].filter(Boolean)}function U70(D){let $=wD(D.major),X=wD(D.minor),J=wD(D.patch),F=+D.major,Y=+D.minor,Q=+D.patch;if($)return[n9];if(X)return[{operator:">=",major:F,minor:0,patch:0},{operator:"<",major:F+1,minor:0,patch:0}];if(J){if(F===0)return[{operator:">=",major:F,minor:Y,patch:0},{operator:"<",major:F,minor:Y+1,patch:0}];return[{operator:">=",major:F,minor:Y,patch:0},{operator:"<",major:F+1,minor:0,patch:0}]}let U=d1(D.prerelease??"");if(F===0){if(Y===0)return[{operator:">=",major:F,minor:Y,patch:Q,prerelease:U},{operator:"<",major:F,minor:Y,patch:Q+1}];return[{operator:">=",major:F,minor:Y,patch:Q,prerelease:U},{operator:"<",major:F,minor:Y+1,patch:0}]}return[{operator:">=",major:F,minor:Y,patch:Q,prerelease:U},{operator:"<",major:F+1,minor:0,patch:0}]}function Z70(D){let $=wD(D.major),X=wD(D.minor),J=wD(D.patch),F=+D.major,Y=+D.minor,Q=+D.patch;if($)return[n9];if(X)return[{operator:">=",major:F,minor:0,patch:0},{operator:"<",major:F+1,minor:0,patch:0}];if(J)return[{operator:">=",major:F,minor:Y,patch:0},{operator:"<",major:F,minor:Y+1,patch:0}];let U=d1(D.prerelease??"");return[{operator:">=",major:F,minor:Y,patch:Q,prerelease:U},{operator:"<",major:F,minor:Y+1,patch:0}]}function O70(D){let $=wD(D.major),X=wD(D.minor),J=wD(D.patch),F=+D.major,Y=+D.minor,Q=+D.patch;if($)return[{operator:"<",major:0,minor:0,patch:0}];if(X){if(J)return[{operator:"<",major:F,minor:0,patch:0}];return[{operator:"<",major:F,minor:0,patch:0}]}if(J)return[{operator:"<",major:F,minor:Y,patch:0}];let U=d1(D.prerelease??""),Z=r$(D.build??"");return[{operator:"<",major:F,minor:Y,patch:Q,prerelease:U,build:Z}]}function G70(D){let $=wD(D.minor),X=wD(D.patch),J=+D.major,F=+D.minor,Y=+D.patch;if($)return[{operator:"<",major:J+1,minor:0,patch:0}];if(X)return[{operator:"<",major:J,minor:F+1,patch:0}];let Q=d1(D.prerelease??""),U=r$(D.build??"");return[{operator:"<=",major:J,minor:F,patch:Y,prerelease:Q,build:U}]}function w70(D){let $=wD(D.major),X=wD(D.minor),J=wD(D.patch),F=+D.major,Y=+D.minor,Q=+D.patch;if($)return[{operator:"<",major:0,minor:0,patch:0}];if(X)return[{operator:">=",major:F+1,minor:0,patch:0}];if(J)return[{operator:">=",major:F,minor:Y+1,patch:0}];let U=d1(D.prerelease??""),Z=r$(D.build??"");return[{operator:">",major:F,minor:Y,patch:Q,prerelease:U,build:Z}]}function q70(D){let $=wD(D.major),X=wD(D.minor),J=wD(D.patch),F=+D.major,Y=+D.minor,Q=+D.patch;if($)return[n9];if(X)return[{operator:">=",major:F,minor:0,patch:0}];if(J)return[{operator:">=",major:F,minor:Y,patch:0}];let U=d1(D.prerelease??""),Z=r$(D.build??"");return[{operator:">=",major:F,minor:Y,patch:Q,prerelease:U,build:Z}]}function W70(D){let $=wD(D.major),X=wD(D.minor),J=wD(D.patch),F=+D.major,Y=+D.minor,Q=+D.patch;if($)return[n9];if(X)return[{operator:">=",major:F,minor:0,patch:0},{operator:"<",major:F+1,minor:0,patch:0}];if(J)return[{operator:">=",major:F,minor:Y,patch:0},{operator:"<",major:F,minor:Y+1,patch:0}];let U=d1(D.prerelease??""),Z=r$(D.build??"");return[{operator:D.operator==="="?"=":void 0,major:F,minor:Y,patch:Q,prerelease:U,build:Z}]}function K70(D){let $=D.match(yR)?.groups;if(!$)return J70(D);switch($.operator){case"^":return U70($);case"~":case"~>":return Z70($);case"<":return O70($);case"<=":return G70($);case">":return w70($);case">=":return q70($);default:return W70($)}}function H70(D){return D.split(/\s+/).flatMap(K70)}function NF(D){let $=D.replaceAll(/(?<=[<>=~^])(\s+)/g,"").split(/\s*\|\|\s*/).map((X)=>Q70(X)||H70(X));if($.some((X)=>X.includes(null)))throw TypeError(`Cannot parse version range: range "${D}" is invalid`);return $}var qw=p(()=>{Y$();v3()});function UD(D){if(typeof D!=="string")throw TypeError(`Cannot parse version as version must be a string: received ${typeof D}`);if(D.length>Qw)throw TypeError(`Cannot parse version as version length is too long: length is ${D.length}, max length is ${Qw}`);D=D.trim();let $=D.match(fR)?.groups;if(!$)throw TypeError(`Cannot parse version: ${D}`);let X=W