UNPKG

@capgo/cli

Version:
67 lines (66 loc) 2.1 MB
import{createRequire as AM0}from"node:module";var MM0=Object.create;var{getPrototypeOf:LM0,defineProperty:OZ,getOwnPropertyNames:Wk}=Object;var VM=Object.prototype.hasOwnProperty;function KM($){return this[$]}var G0=($,D,J)=>{var X=Wk(D);for(let Q of X)if(!VM.call($,Q)&&Q!=="default")OZ($,Q,{get:KM.bind(D,Q),enumerable:!0});if(J){for(let Q of X)if(!VM.call(J,Q)&&Q!=="default")OZ(J,Q,{get:KM.bind(D,Q),enumerable:!0});return J}},wM0,BM0,j$=($,D,J)=>{var X=$!=null&&typeof $==="object";if(X){var Q=D?wM0??=new WeakMap:BM0??=new WeakMap,Y=Q.get($);if(Y)return Y}J=$!=null?MM0(LM0($)):{};let Z=D||!$||!$.__esModule?OZ(J,"default",{value:$,enumerable:!0}):J;for(let F of Wk($))if(!VM.call(Z,F))OZ(Z,F,{get:KM.bind($,F),enumerable:!0});if(X)Q.set($,Z);return Z};var A=($,D)=>()=>(D||$((D={exports:{}}).exports,D),D.exports);var EM0=($)=>$;function RM0($,D){this[$]=EM0.bind(null,D)}var kD=($,D)=>{for(var J in D)OZ($,J,{get:D[J],enumerable:!0,configurable:!0,set:RM0.bind(D,J)})};var a=($,D)=>()=>($&&(D=$($=0)),D);var s=AM0(import.meta.url);var zk,Hk=($)=>{return $===12288||$>=65281&&$<=65376||$>=65504&&$<=65510},Ok=($)=>{return $===8987||$===9001||$>=12272&&$<=12287||$>=12289&&$<=12350||$>=12441&&$<=12543||$>=12549&&$<=12591||$>=12593&&$<=12686||$>=12688&&$<=12771||$>=12783&&$<=12830||$>=12832&&$<=12871||$>=12880&&$<=19903||$>=65040&&$<=65049||$>=65072&&$<=65106||$>=65108&&$<=65126||$>=65128&&$<=65131||$>=127488&&$<=127490||$>=127504&&$<=127547||$>=127552&&$<=127560||$>=131072&&$<=196605||$>=196608&&$<=262141};var Vk=a(()=>{zk=(()=>{let $=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return(D)=>{let J=0;$.lastIndex=0;while($.test(D))J+=1;return D.length-J}})()});var IM0,jM0,Kk,TM0,Nk,CM0,PM0,SM0,Mk=($,D={},J={})=>{let X=D.limit??1/0,Q=D.ellipsis??"",Y=D?.ellipsisWidth??(Q?Mk(Q,SM0,J).width:0),Z=0,F=J.controlWidth??0,U=J.tabWidth??8,G=J.emojiWidth??2,q=2,W=J.regularWidth??1,z=J.wideWidth??2,H=[[CM0,W],[IM0,0],[jM0,F],[TM0,U],[Nk,G],[Kk,z]],O=0,V=0,K=$.length,L=0,E=!1,N=K,M=Math.max(0,X-Y),w=0,R=0,S=0,v=0;$:while(!0){if(R>w||V>=K&&V>O){let I=$.slice(w,R)||$.slice(O,V);L=0;for(let _ of I.replaceAll(PM0,"")){let x=_.codePointAt(0)||0;if(Hk(x))v=2;else if(Ok(x))v=z;else v=W;if(S+v>M)N=Math.min(N,Math.max(w,O)+L);if(S+v>X){E=!0;break $}L+=_.length,S+=v}w=R=0}if(V>=K)break $;for(let I=0,_=H.length;I<_;I++){let[x,c]=H[I];if(x.lastIndex=V,x.test($)){if(L=x===Kk?zk($.slice(V,x.lastIndex)):x===Nk?1:x.lastIndex-V,v=L*c,S+v>M)N=Math.min(N,V+Math.floor((M-S)/c));if(S+v>X){E=!0;break $}S+=v,w=O,R=V,V=O=x.lastIndex;continue $}}V+=1}return{width:E?M:S,index:E?N:K,truncated:E,ellipsed:E&&X>=Y}},Lk;var wk=a(()=>{Vk();IM0=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,jM0=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Kk=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/yu,TM0=/\t{1,1000}/y,Nk=/[\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,CM0=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,PM0=/\p{M}+/gu,SM0={limit:1/0,ellipsis:""},Lk=Mk});var xM0,vM0=($,D={})=>{return Lk($,xM0,D).width},l4;var NM=a(()=>{wk();xM0={limit:1/0,ellipsis:"",ellipsisWidth:0},l4=vM0});function x9($,D,J){return String($).normalize().split(fM0).map((X)=>yM0(X,D,J)).join(` `)}var dq="\x1B",Ik="›",_M0=39,LM="\x07",jk="[",kM0="]",Tk="m",wM,Bk,Ek=($)=>{if($>=30&&$<=37)return 39;if($>=90&&$<=97)return 39;if($>=40&&$<=47)return 49;if($>=100&&$<=107)return 49;if($===1||$===2)return 22;if($===3)return 23;if($===4)return 24;if($===7)return 27;if($===8)return 28;if($===9)return 29;if($===0)return 0;return},Rk=($)=>`${dq}${jk}${$}${Tk}`,Ak=($)=>`${dq}${wM}${$}${LM}`,MM=($,D,J)=>{let X=D[Symbol.iterator](),Q=!1,Y=!1,Z=$.at(-1),F=Z===void 0?0:l4(Z),U=X.next(),G=X.next(),q=0;while(!U.done){let W=U.value,z=l4(W);if(F+z<=J)$[$.length-1]+=W;else $.push(W),F=0;if(W===dq||W===Ik)Q=!0,Y=D.startsWith(wM,q+1);if(Q){if(Y){if(W===LM)Q=!1,Y=!1}else if(W===Tk)Q=!1}else if(F+=z,F===J&&!G.done)$.push(""),F=0;U=G,G=X.next(),q+=W.length}if(Z=$.at(-1),!F&&Z!==void 0&&Z.length&&$.length>1)$[$.length-2]+=$.pop()},uM0=($)=>{let D=$.split(" "),J=D.length;while(J){if(l4(D[J-1]))break;J--}if(J===D.length)return $;return D.slice(0,J).join(" ")+D.slice(J).join("")},yM0=($,D,J={})=>{if(J.trim!==!1&&$.trim()==="")return"";let X="",Q,Y,Z=$.split(" "),F=[""],U=0;for(let W=0;W<Z.length;W++){let z=Z[W];if(J.trim!==!1){let O=F.at(-1)??"",V=O.trimStart();if(O.length!==V.length)F[F.length-1]=V,U=l4(V)}if(W!==0){if(U>=D&&(J.wordWrap===!1||J.trim===!1))F.push(""),U=0;if(U||J.trim===!1)F[F.length-1]+=" ",U++}let H=l4(z);if(J.hard&&H>D){let O=D-U,V=1+Math.floor((H-O-1)/D);if(Math.floor((H-1)/D)<V)F.push("");MM(F,z,D),U=l4(F.at(-1)??"");continue}if(U+H>D&&U&&H){if(J.wordWrap===!1&&U<D){MM(F,z,D),U=l4(F.at(-1)??"");continue}F.push(""),U=0}if(U+H>D&&J.wordWrap===!1){MM(F,z,D),U=l4(F.at(-1)??"");continue}F[F.length-1]+=z,U+=H}if(J.trim!==!1)F=F.map((W)=>uM0(W));let G=F.join(` `),q=!1;for(let W=0;W<G.length;W++){let z=G[W];if(X+=z,!q){if(q=z>="\uD800"&&z<="\uDBFF",q)continue}else q=!1;if(z===dq||z===Ik){Bk.lastIndex=W+1;let O=Bk.exec(G)?.groups;if(O?.code!==void 0){let V=Number.parseFloat(O.code);Q=V===_M0?void 0:V}else if(O?.uri!==void 0)Y=O.uri.length===0?void 0:O.uri}if(G[W+1]===` `){if(Y)X+=Ak("");let H=Q?Ek(Q):void 0;if(Q&&H)X+=Rk(H)}else if(z===` `){if(Q&&Ek(Q))X+=Rk(Q);if(Y)X+=Ak(Y)}}return X},fM0;var BM=a(()=>{NM();wM=`${kM0}8;;`,Bk=new RegExp(`(?:\\${jk}(?<code>\\d+)m|\\${wM}(?<uri>.*)${LM})`,"y"),fM0=/\r?\n/});var H1=A(($M$,Ck)=>{var EM={to($,D){if(!D)return`\x1B[${$+1}G`;return`\x1B[${D+1};${$+1}H`},move($,D){let J="";if($<0)J+=`\x1B[${-$}D`;else if($>0)J+=`\x1B[${$}C`;if(D<0)J+=`\x1B[${-D}A`;else if(D>0)J+=`\x1B[${D}B`;return J},up:($=1)=>`\x1B[${$}A`,down:($=1)=>`\x1B[${$}B`,forward:($=1)=>`\x1B[${$}C`,backward:($=1)=>`\x1B[${$}D`,nextLine:($=1)=>"\x1B[E".repeat($),prevLine:($=1)=>"\x1B[F".repeat($),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},hM0={up:($=1)=>"\x1B[S".repeat($),down:($=1)=>"\x1B[T".repeat($)},bM0={screen:"\x1B[2J",up:($=1)=>"\x1B[1J".repeat($),down:($=1)=>"\x1B[J".repeat($),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines($){let D="";for(let J=0;J<$;J++)D+=this.line+(J<$-1?EM.up():"");if($)D+=EM.left;return D}};Ck.exports={cursor:EM,scroll:hM0,erase:bM0,beep:"\x07"}});import{styleText as l5}from"node:util";import{stdout as jM,stdin as vk}from"node:process";import*as v9 from"node:readline";import gM0 from"node:readline";import{ReadStream as Pk}from"node:tty";function c5($,D,J){if(!J.some((Z)=>!Z.disabled))return $;let X=$+D,Q=Math.max(J.length-1,0),Y=X<0?Q:X>Q?0:X;return J[Y]?.disabled?c5(Y,D<0?-1:1,J):Y}function cq($,D,J,X){let Q=X.split(` `),Y=0,Z=$;for(let U of Q){if(Z<=U.length)break;Z-=U.length+1,Y++}for(Y=Math.max(0,Math.min(Q.length-1,Y+J)),Z=Math.min(Z,Q[Y].length)+D;Z<0&&Y>0;)Y--,Z+=Q[Y].length+1;for(;Z>Q[Y].length&&Y<Q.length-1;)Z-=Q[Y].length+1,Y++;Z=Math.max(0,Math.min(Q[Y].length,Z));let F=0;for(let U=0;U<Y;U++)F+=Q[U].length+1;return F+Z}function TM($,D){if(typeof $=="string")return $D.aliases.get($)===D;for(let J of $)if(J!==void 0&&TM(J,D))return!0;return!1}function cM0($,D){if($===D)return;let J=$.split(` `),X=D.split(` `),Q=Math.max(J.length,X.length),Y=[];for(let Z=0;Z<Q;Z++)J[Z]!==X[Z]&&Y.push(Z);return{lines:Y,numLinesBefore:J.length,numLinesAfter:X.length,numLines:Q}}function K$($){return $===AM}function lq($,D){let J=$;J.isTTY&&J.setRawMode(D)}function _k({input:$=vk,output:D=jM,overwrite:J=!0,hideCursor:X=!0}={}){let Q=v9.createInterface({input:$,output:D,prompt:"",tabSize:1});v9.emitKeypressEvents($,Q),$ instanceof Pk&&$.isTTY&&$.setRawMode(!0);let Y=(Z,{name:F,sequence:U})=>{let G=String(Z);if(TM([G,F,U],"cancel")){X&&D.write(AD.cursor.show),process.exit(0);return}if(!J)return;v9.moveCursor(D,F==="return"?0:-1,F==="return"?-1:0,()=>{v9.clearLine(D,1,()=>{$.once("keypress",Y)})})};return X&&D.write(AD.cursor.hide),$.once("keypress",Y),()=>{$.off("keypress",Y),X&&D.write(AD.cursor.show),$ instanceof Pk&&$.isTTY&&!lM0&&$.setRawMode(!1),Q.terminal=!1,Q.close()}}function VZ($,D,J,X=J,Q=J,Y){let Z=iq($??jM);return x9(D,Z-J.length,{hard:!0,trim:!1}).split(` `).map((F,U,G)=>{let q=Y?Y(F,U):F;return U===0?`${X}${q}`:U===G.length-1?`${Q}${q}`:`${J}${q}`}).join(` `)}function kk($,D){if("~standard"in $){let J=$["~standard"].validate(D);if(J instanceof Promise)throw TypeError("Schema validation must be synchronous. Update `validate()` and remove any asynchronous logic.");return J.issues?.at(0)?.message}return $(D)}class g8{input;output;_abortSignal;rl;opts;_render;_track=!1;_prevFrame="";_subscribers=new Map;_cursor=0;state="initial";error="";value;userInput="";constructor($,D=!0){let{input:J=vk,output:X=jM,render:Q,signal:Y,...Z}=$;this.opts=Z,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=Q.bind(this),this._track=D,this._abortSignal=Y,this.input=J,this.output=X}unsubscribe(){this._subscribers.clear()}setSubscriber($,D){let J=this._subscribers.get($)??[];J.push(D),this._subscribers.set($,J)}on($,D){this.setSubscriber($,{cb:D})}once($,D){this.setSubscriber($,{cb:D,once:!0})}emit($,...D){let J=this._subscribers.get($)??[],X=[];for(let Q of J)Q.cb(...D),Q.once&&X.push(()=>J.splice(J.indexOf(Q),1));for(let Q of X)Q()}prompt(){return new Promise(($)=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),$(AM);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}this.rl=gM0.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),lq(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(AD.cursor.show),this.output.off("resize",this.render),lq(this.input,!1),$(this.value)}),this.once("cancel",()=>{this.output.write(AD.cursor.show),this.output.off("resize",this.render),lq(this.input,!1),$(AM)})})}_isActionKey($,D){return $==="\t"}_shouldSubmit($,D){return!0}_setValue($){this.value=$,this.emit("value",this.value)}_setUserInput($,D){this.userInput=$??"",this.emit("userInput",this.userInput),D&&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&&D.name!=="return"&&(D.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"),D?.name&&(!this._track&&$D.aliases.has(D.name)&&this.emit("cursor",$D.aliases.get(D.name)),$D.actions.has(D.name)&&this.emit("cursor",D.name)),$&&($.toLowerCase()==="y"||$.toLowerCase()==="n")&&this.emit("confirm",$.toLowerCase()==="y"),this.emit("key",$,D),D?.name==="return"&&this._shouldSubmit($,D)){if(this.opts.validate){let J=kk(this.opts.validate,this.value);J&&(this.error=J instanceof Error?J.message:J,this.state="error",this.rl?.write(this.userInput))}this.state!=="error"&&(this.state="submit")}TM([$,D?.name,D?.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(` `),lq(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let $=x9(this._prevFrame,process.stdout.columns,{hard:!0,trim:!1}).split(` `).length-1;this.output.write(AD.cursor.move(-999,$*-1))}render(){let $=x9(this._render(this)??"",process.stdout.columns,{hard:!0,trim:!1});if($!==this._prevFrame){if(this.state==="initial")this.output.write(AD.cursor.hide);else{let D=cM0(this._prevFrame,$),J=CM(this.output);if(this.restoreCursor(),D){let X=Math.max(0,D.numLinesAfter-J),Q=Math.max(0,D.numLinesBefore-J),Y=D.lines.find((Z)=>Z>=X);if(Y===void 0){this._prevFrame=$;return}if(D.lines.length===1){this.output.write(AD.cursor.move(0,Y-Q)),this.output.write(AD.erase.lines(1));let Z=$.split(` `);this.output.write(Z[Y]),this._prevFrame=$,this.output.write(AD.cursor.move(0,Z.length-Y-1));return}else if(D.lines.length>1){if(X<Q)Y=X;else{let F=Y-Q;F>0&&this.output.write(AD.cursor.move(0,F))}this.output.write(AD.erase.down());let Z=$.split(` `).slice(Y);this.output.write(Z.join(` `)),this._prevFrame=$;return}}this.output.write(AD.erase.down())}this.output.write($),this.state==="initial"&&(this.state="active"),this._prevFrame=$}}}function nM0($,D){if($===void 0||D.length===0)return 0;let J=D.findIndex((X)=>X.value===$);return J!==-1?J:0}function iM0($,D){return(D.label??String(D.value)).toLowerCase().includes($.toLowerCase())}function pM0($,D){if(D)return $?D:D[0]}function Sk($){return[...$].map((D)=>oM0[D])}function aM0($){let D=new Intl.DateTimeFormat($,{year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(2000,0,15)),J=[],X="/";for(let Q of D)Q.type==="literal"?X=Q.value.trim()||Q.value:(Q.type==="year"||Q.type==="month"||Q.type==="day")&&J.push({type:Q.type,len:Q.type==="year"?4:2});return{segments:J,separator:X}}function RM($){return Number.parseInt(($||"0").replace(/_/g,"0"),10)||0}function nq($){return{year:RM($.year),month:RM($.month),day:RM($.day)}}function IM($,D){return new Date($||2001,D||1,0).getDate()}function uk($){let{year:D,month:J,day:X}=nq($);if(!D||D<0||D>9999||!J||J<1||J>12||!X||X<1)return;let Q=new Date(Date.UTC(D,J-1,X));if(!(Q.getUTCFullYear()!==D||Q.getUTCMonth()!==J-1||Q.getUTCDate()!==X))return{year:D,month:J,day:X}}function xk($){let D=uk($);return D?new Date(Date.UTC(D.year,D.month-1,D.day)):void 0}function tM0($,D,J,X){let Q=J?{year:J.getUTCFullYear(),month:J.getUTCMonth()+1,day:J.getUTCDate()}:null,Y=X?{year:X.getUTCFullYear(),month:X.getUTCMonth()+1,day:X.getUTCDate()}:null;return $==="year"?{min:Q?.year??1,max:Y?.year??9999}:$==="month"?{min:Q&&D.year===Q.year?Q.month:1,max:Y&&D.year===Y.year?Y.month:12}:{min:Q&&D.year===Q.year&&D.month===Q.month?Q.day:1,max:Y&&D.year===Y.year&&D.month===Y.month?Y.day:IM(D.year,D.month)}}var AD,mM0,dM0,$D,lM0,AM,iq=($)=>("columns"in $)&&typeof $.columns=="number"?$.columns:80,CM=($)=>("rows"in $)&&typeof $.rows=="number"?$.rows:20,rM0,PM,oM0,yk,sM0,eM0,fk,hk,bk,SM;var xM=a(()=>{BM();AD=j$(H1(),1);mM0=["up","down","left","right","space","enter","cancel"],dM0=["January","February","March","April","May","June","July","August","September","October","November","December"],$D={actions:new Set(mM0),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:[...dM0],messages:{required:"Please enter a valid date",invalidMonth:"There are only 12 months in a year",invalidDay:($,D)=>`There are only ${$} days in ${D}`,afterMin:($)=>`Date must be on or after ${$.toISOString().slice(0,10)}`,beforeMax:($)=>`Date must be on or before ${$.toISOString().slice(0,10)}`}}};lM0=globalThis.process.platform.startsWith("win"),AM=Symbol("clack:cancel");rM0=class extends g8{filteredOptions;multiple;isNavigating=!1;selectedValues=[];focusedValue;#D=0;#Q="";#$;#Y;#F;get cursor(){return this.#D}get userInputWithCursor(){if(!this.userInput)return l5(["inverse","hidden"],"_");if(this._cursor>=this.userInput.length)return`${this.userInput}█`;let D=this.userInput.slice(0,this.cursor),J=this.userInput.slice(this.cursor,this.cursor+1),X=this.userInput.slice(this.cursor+1);return`${D}${l5("inverse",J)}${X}`}get options(){return typeof this.#Y=="function"?this.#Y():this.#Y}constructor(D){super(D),this.#Y=D.options,this.#F=D.placeholder;let J=this.options;this.filteredOptions=[...J],this.multiple=D.multiple===!0,this.#$=typeof D.options=="function"?D.filter:D.filter??iM0;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 Q of X){let Y=J.findIndex((Z)=>Z.value===Q);Y!==-1&&(this.toggleSelected(Q),this.#D=Y)}this.focusedValue=this.options[this.#D]?.value,this.on("key",(Q,Y)=>this.#J(Q,Y)),this.on("userInput",(Q)=>this.#X(Q))}_isActionKey(D,J){return D==="\t"||this.multiple&&this.isNavigating&&J.name==="space"&&D!==void 0&&D!==""}#J(D,J){let X=J.name==="up",Q=J.name==="down",Y=J.name==="return",Z=this.userInput===""||this.userInput==="\t",F=this.#F,U=this.options,G=F!==void 0&&F!==""&&U.some((q)=>!q.disabled&&(this.#$?this.#$(F,q):!0));if(J.name==="tab"&&Z&&G){this.userInput==="\t"&&this._clearUserInput(),this._setUserInput(F,!0),this.isNavigating=!1;return}X||Q?(this.#D=c5(this.#D,X?-1:1,this.filteredOptions),this.focusedValue=this.filteredOptions[this.#D]?.value,this.multiple||(this.selectedValues=[this.focusedValue]),this.isNavigating=!0):Y?this.value=pM0(this.multiple,this.selectedValues):this.multiple?this.focusedValue!==void 0&&(J.name==="tab"||this.isNavigating&&J.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((J)=>J!==D):this.selectedValues=[...this.selectedValues,D]:this.selectedValues=[D])}#X(D){if(D!==this.#Q){this.#Q=D;let J=this.options;D&&this.#$?this.filteredOptions=J.filter((Y)=>this.#$?.(D,Y)):this.filteredOptions=[...J];let X=nM0(this.focusedValue,this.filteredOptions);this.#D=c5(X,0,this.filteredOptions);let Q=this.filteredOptions[this.#D];Q&&!Q.disabled?this.focusedValue=Q.value:this.focusedValue=void 0,this.multiple||(this.focusedValue!==void 0?this.toggleSelected(this.focusedValue):this.deselectAll())}}};PM=class PM extends g8{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor($){super($,!1),this.value=!!$.initialValue,this.on("userInput",()=>{this.value=this._value}),this.on("confirm",(D)=>{this.output.write(AD.cursor.move(0,-1)),this.value=D,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}};oM0={Y:{type:"year",len:4},M:{type:"month",len:2},D:{type:"day",len:2}};yk=class yk extends g8{#D;#Q;#$;#Y;#F;#J={segmentIndex:0,positionInSegment:0};#X=!0;#Z=null;inlineError="";get segmentCursor(){return{...this.#J}}get segmentValues(){return{...this.#$}}get segments(){return this.#D}get separator(){return this.#Q}get formattedValue(){return this.#W(this.#$)}#W($){return this.#D.map((D)=>$[D.type]).join(this.#Q)}#U(){this._setUserInput(this.#W(this.#$)),this._setValue(xk(this.#$)??void 0)}constructor($){let D=$.format?{segments:Sk($.format),separator:$.separator??"/"}:aM0($.locale),J=$.separator??D.separator,X=$.format?Sk($.format):D.segments,Q=$.initialValue??$.defaultValue,Y=Q?{year:String(Q.getUTCFullYear()).padStart(4,"0"),month:String(Q.getUTCMonth()+1).padStart(2,"0"),day:String(Q.getUTCDate()).padStart(2,"0")}:{year:"____",month:"__",day:"__"},Z=X.map((F)=>Y[F.type]).join(J);super({...$,initialUserInput:Z},!1),this.#D=X,this.#Q=J,this.#$=Y,this.#Y=$.minDate,this.#F=$.maxDate,this.#U(),this.on("cursor",(F)=>this.#O(F)),this.on("key",(F,U)=>this.#V(F,U)),this.on("finalize",()=>this.#K($))}#G(){let $=Math.max(0,Math.min(this.#J.segmentIndex,this.#D.length-1)),D=this.#D[$];if(D)return this.#J.positionInSegment=Math.max(0,Math.min(this.#J.positionInSegment,D.len-1)),{segment:D,index:$}}#q($){this.inlineError="",this.#Z=null;let D=this.#G();D&&(this.#J.segmentIndex=Math.max(0,Math.min(this.#D.length-1,D.index+$)),this.#J.positionInSegment=0,this.#X=!0)}#z($){let D=this.#G();if(!D)return;let{segment:J}=D,X=this.#$[J.type],Q=!X||X.replace(/_/g,"")==="",Y=Number.parseInt((X||"0").replace(/_/g,"0"),10)||0,Z=tM0(J.type,nq(this.#$),this.#Y,this.#F),F;Q?F=$===1?Z.min:Z.max:F=Math.max(Math.min(Z.max,Y+$),Z.min),this.#$={...this.#$,[J.type]:F.toString().padStart(J.len,"0")},this.#X=!0,this.#Z=null,this.#U()}#O($){if($)switch($){case"right":return this.#q(1);case"left":return this.#q(-1);case"up":return this.#z(1);case"down":return this.#z(-1)}}#V($,D){if(D?.name==="backspace"||D?.sequence===""||D?.sequence==="\b"||$===""||$==="\b"){this.inlineError="";let J=this.#G();if(!J)return;if(!this.#$[J.segment.type].replace(/_/g,"")){this.#q(-1);return}this.#$[J.segment.type]="_".repeat(J.segment.len),this.#X=!0,this.#J.positionInSegment=0,this.#U();return}if(D?.name==="tab"){this.inlineError="";let J=this.#G();if(!J)return;let X=D.shift?-1:1,Q=J.index+X;Q>=0&&Q<this.#D.length&&(this.#J.segmentIndex=Q,this.#J.positionInSegment=0,this.#X=!0);return}if($&&/^[0-9]$/.test($)){let J=this.#G();if(!J)return;let{segment:X}=J,Q=!this.#$[X.type].replace(/_/g,"");if(this.#X&&this.#Z!==null&&!Q){let z=this.#Z+$,H={...this.#$,[X.type]:z},O=this.#H(H,X);if(O){this.inlineError=O,this.#Z=null,this.#X=!1;return}this.inlineError="",this.#$[X.type]=z,this.#Z=null,this.#X=!1,this.#U(),J.index<this.#D.length-1&&(this.#J.segmentIndex=J.index+1,this.#J.positionInSegment=0,this.#X=!0);return}this.#X&&!Q&&(this.#$[X.type]="_".repeat(X.len),this.#J.positionInSegment=0),this.#X=!1,this.#Z=null;let Y=this.#$[X.type],Z=Y.indexOf("_"),F=Z>=0?Z:Math.min(this.#J.positionInSegment,X.len-1);if(F<0||F>=X.len)return;let U=Y.slice(0,F)+$+Y.slice(F+1),G=!1;if(F===0&&Y==="__"&&(X.type==="month"||X.type==="day")){let z=Number.parseInt($,10);U=`0${$}`,G=z<=(X.type==="month"?1:2)}if(X.type==="year"&&(U=(Y.replace(/_/g,"")+$).padStart(X.len,"_")),!U.includes("_")){let z={...this.#$,[X.type]:U},H=this.#H(z,X);if(H){this.inlineError=H;return}}this.inlineError="",this.#$[X.type]=U;let q=U.includes("_")?void 0:uk(this.#$);if(q){let{year:z,month:H}=q,O=IM(z,H);this.#$={year:String(Math.max(0,Math.min(9999,z))).padStart(4,"0"),month:String(Math.max(1,Math.min(12,H))).padStart(2,"0"),day:String(Math.max(1,Math.min(O,q.day))).padStart(2,"0")}}this.#U();let W=U.indexOf("_");G?(this.#X=!0,this.#Z=$):W>=0?this.#J.positionInSegment=W:Z>=0&&J.index<this.#D.length-1?(this.#J.segmentIndex=J.index+1,this.#J.positionInSegment=0,this.#X=!0):this.#J.positionInSegment=Math.min(F+1,X.len-1)}}#H($,D){let{month:J,day:X}=nq($);if(D.type==="month"&&(J<0||J>12))return $D.date.messages.invalidMonth;if(D.type==="day"&&(X<0||X>31))return $D.date.messages.invalidDay(31,"any month")}#K($){let{year:D,month:J,day:X}=nq(this.#$);if(D&&J&&X){let Q=IM(D,J);this.#$={...this.#$,day:String(Math.min(X,Q)).padStart(2,"0")}}this.value=xk(this.#$)??$.defaultValue??void 0}};sM0=class extends g8{options;cursor=0;#D;getGroupItems(D){return this.options.filter((J)=>J.group===D)}isGroupSelected(D){let J=this.getGroupItems(D),X=this.value;return X===void 0?!1:J.every((Q)=>X.includes(Q.value))}toggleValue(){let D=this.options[this.cursor];if(D!==void 0)if(this.value===void 0&&(this.value=[]),D.group===!0){let J=D.value,X=this.getGroupItems(J);this.isGroupSelected(J)?this.value=this.value.filter((Q)=>X.findIndex((Y)=>Y.value===Q)===-1):this.value=[...this.value,...X.map((Q)=>Q.value)],this.value=Array.from(new Set(this.value))}else{let J=this.value.includes(D.value);this.value=J?this.value.filter((X)=>X!==D.value):[...this.value,D.value]}}constructor(D){super(D,!1);let{options:J}=D;this.#D=D.selectableGroups!==!1,this.options=Object.entries(J).flatMap(([X,Q])=>[{value:X,group:!0,label:X},...Q.map((Y)=>({...Y,group:X}))]),this.value=[...D.initialValues??[]],this.cursor=Math.max(this.options.findIndex(({value:X})=>X===D.cursorAt),this.#D?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 Q=this.options[this.cursor]?.group===!0;!this.#D&&Q&&(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 Q=this.options[this.cursor]?.group===!0;!this.#D&&Q&&(this.cursor=this.cursor===this.options.length-1?0:this.cursor+1);break}case"space":this.toggleValue();break}})}},eM0=new Set(["up","down","left","right"]);fk=class fk extends g8{#D=!1;#Q;focused="editor";get userInputWithCursor(){if(this.state==="submit")return this.userInput;let $=this.userInput;if(this.cursor>=$.length)return`${$}█`;let D=$.slice(0,this.cursor),J=$.slice(this.cursor,this.cursor+1),X=$.slice(this.cursor+1);return J===` `?`${D}█ ${X}`:`${D}${l5("inverse",J)}${X}`}get cursor(){return this._cursor}#$($){if(this.userInput.length===0){this._setUserInput($);return}this._setUserInput(this.userInput.slice(0,this.cursor)+$+this.userInput.slice(this.cursor))}#Y($){let D=this.value??"";switch($){case"up":this._cursor=cq(this._cursor,0,-1,D);return;case"down":this._cursor=cq(this._cursor,0,1,D);return;case"left":this._cursor=cq(this._cursor,-1,0,D);return;case"right":this._cursor=cq(this._cursor,1,0,D);return}}_shouldSubmit($,D){if(this.#Q)return this.focused==="submit"?!0:(this.#$(` `),this._cursor++,!1);let J=this.#D;return this.#D=!0,J&&this.cursor===this.userInput.length?(this.userInput[this.cursor-1]===` `&&(this._setUserInput(this.userInput.slice(0,this.cursor-1)+this.userInput.slice(this.cursor)),this._cursor--),!0):(this.#$(` `),this._cursor++,!1)}constructor($){let D=$.initialUserInput??$.initialValue;super({...$,initialUserInput:D},!1),D!==void 0&&(this._cursor=D.length),this.#Q=$.showSubmit??!1,this.on("key",(J,X)=>{if(X?.name&&eM0.has(X.name)){this.#D=!1,this.#Y(X.name);return}if(J==="\t"&&this.#Q){this.focused=this.focused==="editor"?"submit":"editor";return}if(X?.name!=="return"){if(this.#D=!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}J&&(this.#Q&&this.focused==="submit"&&(this.focused="editor"),this.#$(J??""),this._cursor++)}}),this.on("userInput",(J)=>{this._setValue(J)}),this.on("finalize",()=>{this.value||(this.value=$.defaultValue),this.value===void 0&&(this.value="")})}};hk=class extends g8{_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}${l5(["inverse","hidden"],"_")}`;let J=this.masked,X=J.slice(0,this.cursor),Q=J.slice(this.cursor,this.cursor+1),Y=J.slice(this.cursor+1);return`${X}${l5("inverse",Q)}${Y}`}clear(){this._clearUserInput()}constructor({mask:D,...J}){super(J),this._mask=D??"•",this.on("userInput",(X)=>{this._setValue(X)}),this.on("finalize",()=>{this.value===void 0&&(this.value="")})}},bk=class extends g8{options;cursor=0;get _selectedValue(){return this.options[this.cursor]}changeValue(){let D=this._selectedValue;this.value=D===void 0?void 0:D.value}constructor(D){super(D,!1),this.options=D.options;let J=this.options.findIndex(({value:Q})=>Q===D.initialValue),X=J===-1?0:J;this.cursor=this.options[X]?.disabled?c5(X,1,this.options):X,this.changeValue(),this.on("cursor",(Q)=>{switch(Q){case"left":case"up":this.cursor=c5(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=c5(this.cursor,1,this.options);break}this.changeValue()})}};SM=class SM extends g8{get userInputWithCursor(){if(this.state==="submit")return this.userInput;let $=this.userInput;if(this.cursor>=$.length)return`${this.userInput}█`;let D=$.slice(0,this.cursor),J=$.slice(this.cursor,this.cursor+1),X=$.slice(this.cursor+1);return`${D}${l5("inverse",J)}${X}`}get cursor(){return this._cursor}constructor($){super({...$,initialUserInput:$.initialUserInput??$.initialValue}),this.on("userInput",(D)=>{this._setValue(D)}),this.on("finalize",()=>{this.value||(this.value=$.defaultValue),this.value===void 0&&(this.value="")})}}});import{styleText as L0,stripVTControlCharacters as zM$}from"node:util";import L4 from"node:process";function $L0(){if(L4.platform!=="win32")return L4.env.TERM!=="linux";return Boolean(L4.env.CI)||Boolean(L4.env.WT_SESSION)||Boolean(L4.env.TERMINUS_SUBLIME)||L4.env.ConEmuTask==="{cmd::Cmder}"||L4.env.TERM_PROGRAM==="Terminus-Sublime"||L4.env.TERM_PROGRAM==="vscode"||L4.env.TERM==="xterm-256color"||L4.env.TERM==="alacritty"||L4.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}function qL0($,D){let J=[`${D?`${L0("cyan",_$)} `:""}${$.join(" • ")}`];return D&&J.push(L0("cyan",_9)),J}var KZ,vM,DL0=()=>process.env.CI==="true",a$=($,D)=>vM?$:D,JL0,mk,dk,kM,XL0,_$,_9,KM$,NM$,_M,rq,MM$,LM$,wM$,QL0,BM$,EM$,RM$,AM$,IM$,jM$,YL0,ZL0,FL0,UL0,oq=($)=>{switch($){case"initial":case"active":return L0("cyan",JL0);case"cancel":return L0("red",mk);case"error":return L0("yellow",dk);case"submit":return L0("green",kM)}},GL0=($)=>{switch($){case"initial":case"active":return L0("cyan",_$);case"cancel":return L0("red",_$);case"error":return L0("yellow",_$);case"submit":return L0("green",_$)}},gk=($,D,J,X,Q,Y=!1)=>{let Z=D,F=0;if(Y)for(let U=X-1;U>=J;U--){let G=$[U];if(G&&(Z-=G.length),F++,Z<=Q)break}else for(let U=J;U<X;U++){let G=$[U];if(G&&(Z-=G.length),F++,Z<=Q)break}return{lineCount:Z,removals:F}},WL0=({cursor:$,options:D,style:J,output:X=process.stdout,maxItems:Q=Number.POSITIVE_INFINITY,columnPadding:Y=0,rowPadding:Z=4})=>{let F=iq(X)-Y,U=CM(X),G=L0("dim","..."),q=Math.max(U-Z,0),W=Math.max(Math.min(Q,q),5),z=0;$>=W-3&&(z=Math.max(Math.min($-W+3,D.length-W),0));let H=W<D.length&&z>0,O=W<D.length&&z+W<D.length,V=Math.min(z+W,D.length),K=[],L=0;H&&L++,O&&L++;let E=z+(H?1:0),N=V-(O?1:0);for(let w=E;w<N;w++){let R=D[w],S=R?J(R,w===$):"",v=x9(S,F,{hard:!0,trim:!1}).split(` `);K.push(v),L+=v.length}if(L>q){let w=0,R=0,S=L,v=$-E,I=q,_=()=>gk(K,S,0,v,I),x=()=>gk(K,S,v+1,K.length,I,!0);H?({lineCount:S,removals:w}=_(),S>I&&(O||(I-=1),{lineCount:S,removals:R}=x())):(O||(I-=1),{lineCount:S,removals:R}=x(),S>I&&(I-=1,{lineCount:S,removals:w}=_())),w>0&&(H=!0,K.splice(0,w)),R>0&&(O=!0,K.splice(K.length-R,R))}let M=[];H&&M.push(G);for(let w of K)for(let R of w)M.push(R);return O&&M.push(G),M},O1=($)=>{let D=$.active??"Yes",J=$.inactive??"No";return new PM({active:D,inactive:J,signal:$.signal,input:$.input,output:$.output,initialValue:$.initialValue??!0,render(){let X=$.withGuide??$D.withGuide,Q=`${oq(this.state)} `,Y=X?`${L0("gray",_$)} `:"",Z=VZ($.output,$.message,Y,Q),F=`${X?`${L0("gray",_$)} `:""}${Z} `,U=this.value?D:J;switch(this.state){case"submit":{let G=X?`${L0("gray",_$)} `:"";return`${F}${G}${L0("dim",U)}`}case"cancel":{let G=X?`${L0("gray",_$)} `:"";return`${F}${G}${L0(["strikethrough","dim"],U)}${X?` ${L0("gray",_$)}`:""}`}default:{let G=X?`${L0("cyan",_$)} `:"",q=X?L0("cyan",_9):"";return`${F}${G}${this.value?`${L0("green",_M)} ${D}`:`${L0("dim",rq)} ${L0("dim",D)}`}${$.vertical?X?` ${L0("cyan",_$)} `:` `:` ${L0("dim","/")} `}${this.value?`${L0("dim",rq)} ${L0("dim",J)}`:`${L0("green",_M)} ${J}`} ${q} `}}}}).prompt()},TM$,B,g0=($="",D)=>{let J=D?.output??process.stdout,X=D?.withGuide??$D.withGuide?`${L0("gray",XL0)} `:"";J.write(`${X}${$} `)},l0=($="",D)=>{let J=D?.output??process.stdout,X=D?.withGuide??$D.withGuide?`${L0("gray",_$)} ${L0("gray",_9)} `:"";J.write(`${X}${$} `)},ck=($)=>new hk({validate:$.validate,mask:$.mask??QL0,signal:$.signal,input:$.input,output:$.output,render(){let D=$.withGuide??$D.withGuide,J=`${D?`${L0("gray",_$)} `:""}${oq(this.state)} ${$.message} `,X=this.userInputWithCursor,Q=this.masked;switch(this.state){case"error":{let Y=D?`${L0("yellow",_$)} `:"",Z=D?`${L0("yellow",_9)} `:"",F=Q??"";return $.clearOnError&&this.clear(),`${J.trim()} ${Y}${F} ${Z}${L0("yellow",this.error)} `}case"submit":{let Y=D?`${L0("gray",_$)} `:"",Z=Q?L0("dim",Q):"";return`${J}${Y}${Z}`}case"cancel":{let Y=D?`${L0("gray",_$)} `:"",Z=Q?L0(["strikethrough","dim"],Q):"";return`${J}${Y}${Z}${Q&&D?` ${L0("gray",_$)}`:""}`}default:{let Y=D?`${L0("cyan",_$)} `:"",Z=D?L0("cyan",_9):"";return`${J}${Y}${X} ${Z} `}}}}).prompt(),zL0=($)=>L0("magenta",$),n$=({indicator:$="dots",onCancel:D,output:J=process.stdout,cancelMessage:X,errorMessage:Q,frames:Y=vM?["◒","◐","◓","◑"]:["•","o","O","0"],delay:Z=vM?80:120,signal:F,...U}={})=>{let G=DL0(),q,W,z=!1,H=!1,O="",V,K=performance.now(),L=iq(J),E=U?.styleFrame??zL0,N=(D0)=>{let b=D0>1?Q??$D.messages.error:X??$D.messages.cancel;H=D0===1,z&&(d(b,D0),H&&typeof D=="function"&&D())},M=()=>N(2),w=()=>N(1),R=()=>{process.on("uncaughtExceptionMonitor",M),process.on("unhandledRejection",M),process.on("SIGINT",w),process.on("SIGTERM",w),process.on("exit",N),F&&F.addEventListener("abort",w)},S=()=>{process.removeListener("uncaughtExceptionMonitor",M),process.removeListener("unhandledRejection",M),process.removeListener("SIGINT",w),process.removeListener("SIGTERM",w),process.removeListener("exit",N),F&&F.removeEventListener("abort",w)},v=()=>{if(V===void 0)return;G&&J.write(` `);let D0=x9(V,L,{hard:!0,trim:!1}).split(` `);D0.length>1&&J.write(KZ.cursor.up(D0.length-1)),J.write(KZ.cursor.to(0)),J.write(KZ.erase.down())},I=(D0)=>D0.replace(/\.+$/,""),_=(D0)=>{let b=(performance.now()-D0)/1000,j=Math.floor(b/60),T=Math.floor(b%60);return j>0?`[${j}m ${T}s]`:`[${T}s]`},x=U.withGuide??$D.withGuide,c=(D0="")=>{z=!0,q=_k({output:J}),O=I(D0),K=performance.now(),x&&J.write(`${L0("gray",_$)} `);let b=0,j=0;R(),W=setInterval(()=>{if(G&&O===V)return;v(),V=O;let T=E(Y[b]),u;if(G)u=`${T} ${O}...`;else if($==="timer")u=`${T} ${O} ${_(K)}`;else{let i=".".repeat(Math.floor(j)).slice(0,3);u=`${T} ${O}${i}`}let m=x9(u,L,{hard:!0,trim:!1});J.write(m),b=b+1<Y.length?b+1:0,j=j<4?j+0.125:0},Z)},d=(D0="",b=0,j=!1)=>{if(!z)return;z=!1,clearInterval(W),v();let T=b===0?L0("green",kM):b===1?L0("red",mk):L0("red",dk);O=D0??O,j||($==="timer"?J.write(`${T} ${O} ${_(K)} `):J.write(`${T} ${O} `)),S(),q()};return{start:c,stop:(D0="")=>d(D0,0),message:(D0="")=>{O=I(D0??O)},cancel:(D0="")=>d(D0,1),error:(D0="")=>d(D0,2),clear:()=>d("",0,!0),get isCancelled(){return H}}},CM$,HL0,pq=($,D)=>$.includes(` `)?$.split(` `).map((J)=>D(J)).join(` `):D($),qD=($)=>{let D=(X,Q)=>{if(X===void 0)return"";let Y=X.label??String(X.value);switch(Q){case"disabled":return`${L0("gray",rq)} ${pq(Y,(Z)=>L0("gray",Z))}${X.hint?` ${L0("dim",`(${X.hint??"disabled"})`)}`:""}`;case"selected":return`${pq(Y,(Z)=>L0("dim",Z))}`;case"active":return`${L0("green",_M)} ${Y}${X.hint?` ${L0("dim",`(${X.hint})`)}`:""}`;case"cancelled":return`${pq(Y,(Z)=>L0(["strikethrough","dim"],Z))}`;default:return`${L0("dim",rq)} ${pq(Y,(Z)=>L0("dim",Z))}`}},J=$.showInstructions??!0;return new bk({options:$.options,signal:$.signal,input:$.input,output:$.output,initialValue:$.initialValue,render(){let X=$.withGuide??$D.withGuide,Q=`${oq(this.state)} `,Y=`${GL0(this.state)} `,Z=VZ($.output,$.message,Y,Q),F=`${X?`${L0("gray",_$)} `:""}${Z} `;switch(this.state){case"submit":{let U=X?`${L0("gray",_$)} `:"",G=VZ($.output,D(this.options[this.cursor],"selected"),U);return`${F}${G}`}case"cancel":{let U=X?`${L0("gray",_$)} `:"",G=VZ($.output,D(this.options[this.cursor],"cancelled"),U);return`${F}${G}${X?` ${L0("gray",_$)}`:""}`}default:{let U=X?`${L0("cyan",_$)} `:"",G=F.split(` `).length,q=J?qL0(HL0,X):X?[L0("cyan",_9)]:[],W=q.join(` `),z=q.length+1;return`${F}${U}${WL0({output:$.output,cursor:this.cursor,options:this.options,maxItems:$.maxItems,columnPadding:U.length,rowPadding:G+z,style:(H,O)=>D(H,H.disabled?"disabled":O?"active":"inactive")}).join(` ${U}`)} ${W} `}}}}).prompt()},PM$,k9=($)=>new SM({validate:$.validate,placeholder:$.placeholder,defaultValue:$.defaultValue,initialValue:$.initialValue,output:$.output,signal:$.signal,input:$.input,render(){let D=$?.withGuide??$D.withGuide,J=`${`${D?`${L0("gray",_$)} `:""}${oq(this.state)} `}${$.message} `,X=$.placeholder&&$.placeholder.length>0?L0("inverse",$.placeholder[0])+L0("dim",$.placeholder.slice(1)):L0(["inverse","hidden"],"_"),Q=this.userInput?this.userInputWithCursor:X,Y=this.value??"";switch(this.state){case"error":{let Z=this.error?` ${L0("yellow",this.error)}`:"",F=D?`${L0("yellow",_$)} `:"",U=D?L0("yellow",_9):"";return`${J.trim()} ${F}${Q} ${U}${Z} `}case"submit":{let Z=Y?` ${L0("dim",Y)}`:"",F=D?L0("gray",_$):"";return`${J}${F}${Z}`}case"cancel":{let Z=Y?` ${L0(["strikethrough","dim"],Y)}`:"",F=D?L0("gray",_$):"";return`${J}${F}${Z}${Y.trim()?` ${F}`:""}`}default:{let Z=D?`${L0("cyan",_$)} `:"",F=D?L0("cyan",_9):"";return`${J}${Z}${Q} ${F} `}}}}).prompt();var F$=a(()=>{xM();xM();BM();NM();KZ=j$(H1(),1);vM=$L0(),JL0=a$("◆","*"),mk=a$("■","x"),dk=a$("▲","x"),kM=a$("◇","o"),XL0=a$("┌","T"),_$=a$("│","|"),_9=a$("└","—"),KM$=a$("┐","T"),NM$=a$("┘","—"),_M=a$("●",">"),rq=a$("○"," "),MM$=a$("◻","[•]"),LM$=a$("◼","[+]"),wM$=a$("◻","[ ]"),QL0=a$("▪","•"),BM$=a$("─","-"),EM$=a$("╮","+"),RM$=a$("├","+"),AM$=a$("╯","+"),IM$=a$("╰","+"),jM$=a$("╭","+"),YL0=a$("●","•"),ZL0=a$("◆","*"),FL0=a$("▲","!"),UL0=a$("■","x");TM$=[`${L0("dim","↑/↓")} to navigate`,`${L0("dim","Space:")} select`,`${L0("dim","Enter:")} confirm`],B={message:($=[],{symbol:D=L0("gray",_$),secondarySymbol:J=L0("gray",_$),output:X=process.stdout,spacing:Q=1,withGuide:Y}={})=>{let Z=[],F=Y??$D.withGuide,U=F?J:"",G=F?`${D} `:"",q=F?`${J} `:"";for(let z=0;z<Q;z++)Z.push(U);let W=Array.isArray($)?$:$.split(` `);if(W.length>0){let[z,...H]=W;z.length>0?Z.push(`${G}${z}`):Z.push(F?D:"");for(let O of H)O.length>0?Z.push(`${q}${O}`):Z.push(F?J:"")}X.write(`${Z.join(` `)} `)},info:($,D)=>{B.message($,{...D,symbol:L0("blue",YL0)})},success:($,D)=>{B.message($,{...D,symbol:L0("green",ZL0)})},step:($,D)=>{B.message($,{...D,symbol:L0("green",kM)})},warn:($,D)=>{B.message($,{...D,symbol:L0("yellow",FL0)})},warning:($,D)=>{B.warn($,D)},error:($,D)=>{B.message($,{...D,symbol:L0("red",UL0)})}},CM$={light:a$("─","-"),heavy:a$("━","="),block:a$("█","#")},HL0=[`${L0("dim","↑/↓")} to navigate`,`${L0("dim","Enter:")} confirm`],PM$=`${L0("gray",_$)} `});import{existsSync as Z6}from"fs";var NZ=($=".",D="unknown")=>{let J=`${$}/bun.lockb`,X=`${$}/bun.lock`,Q=`${$}/pnpm-lock.yaml`,Y=`${$}/shrinkwrap.yaml`,Z=`${$}/yarn.lock`,F=`${$}/package-lock.json`,U=`${$}/npm-shrinkwrap.json`;if(Z6(J)||Z6(X))return"bun";if(Z6(Q)||Z6(Y))return"pnpm";if(Z6(Z))return"yarn";if(Z6(F)||Z6(U))return"npm";return D},aq=($=NZ(),D=!1)=>{switch($){case"bun":return D?"bun install":"install";case"pnpm":return D?"pnpm install":"install";case"yarn":return D?"yarn install":"install";case"npm":return D?"npm install":"install";case"unknown":return D?"unknown unknown":"unknown";default:return D?"npm install":"install"}},lk=($=".",D="npx")=>{let J=`${$}/bun.lockb`,X=`${$}/bun.lock`,Q=`${$}/pnpm-lock.yaml`,Y=`${$}/shrinkwrap.yaml`,Z=`${$}/yarn.lock`,F=`${$}/package-lock.json`,U=`${$}/npm-shrinkwrap.json`;if(Z6(J)||Z6(X))return"bunx";if(Z6(Q)||Z6(Y))return"pnpm exec";if(Z6(Z))return"yarn dlx";if(Z6(F)||Z6(U))return"npx";return D};var nk=()=>{};function tq($,D){if(isNaN($)||isNaN(D))throw Error("Cannot compare against non-numbers");return $===D?0:$<D?-1:1}function rk($=[],D=[]){if($.length&&!D.length)return-1;if(!$.length&&D.length)return 1;return 0}function yM($=[],D=[]){let J=Math.max($.length,D.length);for(let X=0;X<J;X++){let Q=$[X],Y=D[X];if(Q===void 0&&Y===void 0)return 0;if(Y===void 0)return 1;if(Q===void 0)return-1;if(typeof Q==="string"&&typeof Y==="number")return 1;if(typeof Q==="number"&&typeof Y==="string")return-1;if(Q<Y)return-1;if(Q>Y)return 1}return 0}function fM($){return typeof $==="number"&&!Number.isNaN($)&&(!Number.isFinite($)||0<=$&&$<=Number.MAX_SAFE_INTEGER)}function F6($){return $.split(".").filter(Boolean).map((D)=>{if(NL0.test(D)){let J=Number(D);if(fM(J))return J}return D})}function n4($){return $.split(".").filter(Boolean)}function eq($,D){let J=Number($);if(!fM(J))throw TypeError(D);return J}function m8($){return Number.isNaN($.major)&&Number.isNaN($.minor)&&Number.isNaN($.patch)&&($.prerelease===void 0||$.prerelease.length===0)&&($.build===void 0||$.build.length===0)}var n5="0|[1-9]\\d*",OL0="\\d*[a-zA-Z-][a-zA-Z0-9-]*",VL0,ik,ok,pk="[0-9A-Za-z-]+",ak,tk,sk,ek="(?:<|>)?=?",KL0="x|X|\\*",uM,sq,$u,Du,hM=256,NL0;var A6=a(()=>{VL0=`(?<major>${n5})\\.(?<minor>${n5})\\.(?<patch>${n5})`,ik=`(?:${n5}|${OL0})`,ok=`(?:-(?<prerelease>${ik}(?:\\.${ik})*))`,ak=`(?:\\+(?<buildmetadata>${pk}(?:\\.${pk})*))`,tk=`v?${VL0}${ok}?${ak}?`,sk=new RegExp(`^${tk}$`),uM=`${n5}|${KL0}`,sq=`[v=\\s]*(?<major>${uM})(?:\\.(?<minor>${uM})(?:\\.(?<patch>${uM})${ok}?${ak}?)?)?`,$u=new RegExp(`^(?<operator>~>?|\\^|${ek})\\s*${sq}$`),Du=new RegExp(`^(?<operator>${ek})\\s*(${tk})$|^$`);NL0=new RegExp(`^${n5}$`)});function uD($,D){if($===D)return 0;return tq($.major,D.major)||tq($.minor,D.minor)||tq($.patch,D.patch)||rk($.prerelease,D.prerelease)||yM($.prerelease,D.prerelease)}var m6=a(()=>{A6()});var Ju=a(()=>{A6()});function bM($){return $.toFixed(0)}function w4($){let D=bM($.major),J=bM($.minor),X=bM($.patch),Q=$.prerelease?.join(".")??"",Y=$.build?.join(".")??"";return[[`${D}.${J}.${X}`,Q].filter((U)=>U).join("-"),Y].filter((U)=>U).join("+")}function ML0($,D){if(m8(D))return!0;let J=uD($,D);switch(D.operator){case"=":case void 0:return J===0;case"!=":return J!==0;case">":return J>0;case"<":return J<0;case">=":return J>=0;case"<=":return J<=0}}function $3($,D){for(let J of D)if(!ML0($,J))return!1;if(!$.prerelease?.length)return!0;for(let J of D){if(m8(J))continue;if(!J.prerelease?.length)continue;let{major:X,minor:Q,patch:Y}=J;if($.major===X&&$.minor===Q&&$.patch===Y)return!0}return!1}var D3=a(()=>{A6();m6()});function MZ($,D){return D.some((J)=>$3($,J))}var LZ=a(()=>{D3()});function LL0($=[]){let D=[...$],J=D.length;while(J>=0){let X=D[J];if(typeof X==="number"){D[J]=X+1;break}J-=1}if(J===-1)D.push(0);return D}function wZ($=[],D){let J=LL0($);if(!D)return J;let X=F6(D);if(X.every((Q)=>typeof Q==="string")){if(X.every((Q,Y)=>Q===J[Y])&&typeof J[X.length]==="number")return J;X=[...X,0]}return X}function BZ($,D,J={}){let X=J.build!==void 0?n4(J.build):$.build??[];switch(D){case"premajor":return{major:$.major+1,minor:0,patch:0,prerelease:wZ($.prerelease,J.prerelease),build:X};case"preminor":return{major:$.major,minor:$.minor+1,patch:0,prerelease:wZ($.prerelease,J.prerelease),build:X};case"prepatch":return{major:$.major,minor:$.minor,patch:$.patch+1,prerelease:wZ($.prerelease,J.prerelease),build:X};case"prerelease":{let Y=($.prerelease??[]).length===0?$.patch+1:$.patch;return{major:$.major,minor:$.minor,patch:Y,prerelease:wZ($.prerelease,J.prerelease),build:X}}case"major":return{major:($.prerelease??[]).length===0||$.minor!==0||$.patch!==0?$.major+1:$.major,minor:0,patch:0,prerelease:[],build:X};case"minor":{let Y=($.prerelease??[]).length===0||$.patch!==0?$.minor+1:$.minor;return{major:$.major,minor:Y,patch:0,prerelease:[],build:X}}case"patch":{let Y=($.prerelease??[]).length===0?$.patch+1:$.patch;return{major:$.major,minor:$.minor,patch:Y,prerelease:[],build:X}}case"pre":return{major:$.major,minor:$.minor,patch:$.patch,prerelease:wZ($.prerelease,J.prerelease),build:X};default:throw TypeError(`Cannot increment version: invalid argument ${D}`)}}var Xu=a(()=>{A6()});var J3,i5;var EZ=a(()=>{J3={major:Number.NaN,minor:Number.NaN,patch:Number.NaN,prerelease:[],build:[]},i5={operator:void 0,...J3}});var gM=a(()=>{EZ();A6()});function mM($,D){return uD($,D)>0}var dM=a(()=>{m6()});var Qu=a(()=>{LZ();dM()});function e7($,D){return uD($,D)<0}var cM=a(()=>{m6()});var Yu=a(()=>{LZ();cM()});function wL0($){let J=$.match(Du)?.groups;if(!J)return null;let{operator:X}=J;return{operator:X||void 0,...J3}}function X1($){return!$||$.toLowerCase()==="x"||$==="*"}function BL0($){if(X1($.major))return;if(X1($.minor))return{operator:">=",major:+$.major,minor:0,patch:0,prerelease:[],build:[]};if(X1($.patch))return{operator:">=",major:+$.major,minor:+$.minor,patch:0,prerelease:[],build:[]};return{operator:">=",major:+$.major,minor:+$.minor,patch:+$.patch,prerelease:$.prerelease?F6($.prerelease):[],build:[]}}function EL0($){if(X1($.major))return;if(X1($.minor))return{operator:"<",major:+$.major+1,minor:0,patch:0,prerelease:[],build:[]};if(X1($.patch))return{operator:"<",major:+$.major,minor:+$.minor+1,patch:0,prerelease:[],build:[]};if($.prerelease)return{operator:"<=",major:+$.major,minor:+$.minor,patch:+$.patch,prerelease:F6($.prerelease),build:[]};return{operator:"<=",major:+$.major,minor:+$.minor,patch:+$.patch,prerelease:[],build:[]}}function RL0($){let D=$.match(new RegExp(`^${sq}`)),J=D?.groups;if(!J)return null;let X=D[0].length,Q=$.slice(X).match(/^\s+-\s+/);if(!Q)return null;let Y=Q[0].length,F=$.slice(X+Y).match(new RegExp(`^${sq}\\s*$`))?.groups,U=BL0(J),G=EL0(F);return[U,G].filter(Boolean)}function AL0($){let D=X1($.major),J=X1($.minor),X=X1($.patch),Q=+$.major,Y=+$.minor,Z=+$.patch;if(D)return[i5];if(J)return[{operator:">=",major:Q,minor:0,patch:0},{operator:"<",major:Q+1,minor:0,patch:0}];if(X){if(Q===0)return[{operator:">=",major:Q,minor:Y,patch:0},{operator:"<",major:Q,minor:Y+1,patch:0}];return[{operator:">=",major:Q,minor:Y,patch:0},{operator:"<",major:Q+1,minor:0,patch:0}]}let F=F6($.prerelease??"");if(Q===0){if(Y===0)return[{operator:">=",major:Q,minor:Y,patch:Z,prerelease:F},{operator:"<",major:Q,minor:Y,patch:Z+1}];return[{operator:">=",major:Q,minor:Y,patch:Z,prerelease:F},{operator:"<",major:Q,minor:Y+1,patch:0}]}return[{operator:">=",major:Q,minor:Y,patch:Z,prerelease:F},{operator:"<",major:Q+1,minor:0,patch:0}]}function IL0($){let D=X1($.major),J=X1($.minor),X=X1($.patch),Q=+$.major,Y=+$.minor,Z=+$.patch;if(D)return[i5];if(J)return[{operator:">=",major:Q,minor:0,patch:0},{operator:"<",major:Q+1,minor:0,patch:0}];if(X)return[{operator:">=",major:Q,minor:Y,patch:0},{operator:"<",major:Q,minor:Y+1,patch:0}];let F=F6($.prerelease??"");return[{operator:">=",major:Q,minor:Y,patch:Z,prerelease:F},{operator:"<",major:Q,minor:Y+1,patch:0}]}function jL0($){let D=X1($.major),J=X1($.minor),X=X1($.patch),Q=+$.major,Y=+$.minor,Z=+$.patch;if(D)return[{operator:"<",major:0,minor:0,patch:0}];if(J){if(X)return[{operator:"<",major:Q,minor:0,patch:0}];return[{operator:"<",major:Q,minor:0,patch:0}]}if(X)return[{operator:"<",major:Q,minor:Y,patch:0}];let F=F6($.prerelease??""),U=n4($.build??"");return[{operator:"<",major:Q,minor:Y,patch:Z,prerelease:F,build:U}]}function TL0($){let D=X1($.minor),J=X1($.patch),X=+$.major,Q=+$.minor,Y=+$.patch;if(D)return[{operator:"<",major:X+1,minor:0,patch:0}];if(J)return[{operator:"<",major:X,minor:Q+1,patch:0}];let Z=F6($.prerelease??""),F=n4($.build??"");return[{operator:"<=",major:X,minor:Q,patch:Y,prerelease:Z,build:F}]}function CL0($){let D=X1($.major),J=X1($.minor),X=X1($.patch),Q=+$.major,Y=+$.minor,Z=+$.patch;if(D)return[{operator:"<",major:0,minor:0,patch:0}];if(J)return[{operator:">=",major:Q+1,minor:0,patch:0}];if(X)return[{operator:">=",major:Q,minor:Y+1,patch:0}];let F=F6($.prerelease??""),U=n4($.build??"");return[{operator:">",major:Q,minor:Y,patch:Z,prerelease:F,build:U}]}function PL0($){let D=X1($.major),J=X1($.minor),X=X1($.patch),Q=+$.major,Y=+$.minor,Z=+$.patch;if(D)return[i5];if(J)return[{operator:">=",major:Q,minor:0,patch:0}];if(X)return[{operator:">=",major:Q,minor:Y,patch:0}];let F=F6($.prerelease??""),U=n4($.build??"");return[{operator:">=",major:Q,minor:Y,patch:Z,prerelease:F,build:U}]}function SL0($){let D=X1($.major),J=X1($.minor),X=X1($.patch),Q=+$.major,Y=+$.minor,Z=+$.patch;if(D)return[i5];if(J)return[{operator:">=",major:Q,minor:0,patch:0},{operator:"<",major:Q+1,minor:0,patch:0}];if(X)return[{operator:">=",major:Q,minor:Y,patch:0},{operator:"<",major:Q,minor:Y+1,patch:0}];let F=F6($.prerelease??""),U=n4($.build??"");return[{operator:$.operator==="="?"=":void 0,major:Q,minor:Y,patch:Z,prerelease:F,build:U}]}function xL0($){let D=$.match($u)?.groups;if(!D)return wL0($);switch(D.operator){case"^":return AL0(D);case"~":case"~>":return IL0(D);case"<":return jL0(D);case"<=":return TL0(D);case">":return CL0(D);case">=":return PL0(D);default:return SL0(D)}}function vL0($){return $.split(/\s+/).flatMap(xL0)}function X3($){let D=$.replaceAll(/(?<=[<>=~^])(\s+)/g,"").split(/\s*\|\|\s*/).map((J)=>RL0(J)||vL0(J));if(D.some((J)=>J.includes(null)))throw TypeError(`Cannot parse version range: range "${$}" is invalid`);return D}var lM=a(()=>{A6();EZ()});function i$($){if(typeof $!=="string")throw TypeError(`Cannot parse version as version must be a string: received ${typeof $}`);if($.length>hM)throw TypeError(`Cannot parse version as version length is too long: length is ${$.length}, max length is ${hM}`);$=$.trim();let D=$.match(sk)?.groups;if(!D)throw TypeError(`Cannot parse version: ${$}`);let J=eq(D.major,`Cannot parse version ${$}: invalid major version`),X=eq(D.minor,`Cannot parse version ${$}: invalid minor version`),Q=eq(D.patch,`Cannot parse version ${$}: invalid patch version`),Y=D.prerelease?F6(D.prerelease):[],Z=D.buildmetadata?n4(D.buildmetadata):[];return{major:J,minor:X,patch:Q,prerelease:Y,build:Z}}var Q3=a(()=>{A6();A6()});function Zu($,D){let J=$.operator,X=D.operator;if(J===void 0){if(m8($))return!0;return MZ($,[[D]])}if(X===void 0){if(m8(D))return!0;return MZ(D,[[$]])}let Q=uD($,D);return(J===">="||J===">")&&(X===">="||X===">")||(J==="<="||J==="<")&&(X==="<="||X==="<")||Q===0&&((J===">="||J==="<=")&&(X===">="||X==="<="))||Q===-1&&(J===">="||J===">")&&(X==="<="||X==="<")||Q===1&&(J==="<="||J==="<")&&(X===">="||X===">")}function _L0($){return $.every((D)=>{return D.some((J)=>kL0(J))})}function kL0($){for(let D=0;D<$.length-1;D++){let J=$[D];for(let X of $.slice(D+1))if(!Zu(J,X))return!1}return!0}function Fu($,D){return _L0([$,D])&&$.some((J)=>