UNPKG

@capgo/cli

Version:
79 lines (77 loc) 2.81 MB
#!/usr/bin/env node import{createRequire as cuA}from"node:module";var guA=Object.create;var{getPrototypeOf:buA,defineProperty:yK,getOwnPropertyNames:y0A,getOwnPropertyDescriptor:yuA}=Object,f0A=Object.prototype.hasOwnProperty;function h0A(A){return this[A]}var fuA,huA,SA=(A,Q,B)=>{var I=A!=null&&typeof A==="object";if(I){var E=Q?fuA??=new WeakMap:huA??=new WeakMap,$=E.get(A);if($)return $}B=A!=null?guA(buA(A)):{};let D=Q||!A||!A.__esModule?yK(B,"default",{value:A,enumerable:!0}):B;for(let G of y0A(A))if(!f0A.call(D,G))yK(D,G,{get:h0A.bind(A,G),enumerable:!0});if(I)E.set(A,D);return D},MD=(A)=>{var Q=(b0A??=new WeakMap).get(A),B;if(Q)return Q;if(Q=yK({},"__esModule",{value:!0}),A&&typeof A==="object"||typeof A==="function"){for(var I of y0A(A))if(!f0A.call(Q,I))yK(Q,I,{get:h0A.bind(A,I),enumerable:!(B=yuA(A,I))||B.enumerable})}return b0A.set(A,Q),Q},b0A,x=(A,Q)=>()=>(Q||A((Q={exports:{}}).exports,Q),Q.exports);var uuA=(A)=>A;function muA(A,Q){this[A]=uuA.bind(null,Q)}var V8=(A,Q)=>{for(var B in Q)yK(A,B,{get:Q[B],enumerable:!0,configurable:!0,set:muA.bind(Q,B)})};var jA=(A,Q)=>()=>(A&&(Q=A(A=0)),Q);var kA=cuA(import.meta.url);var u0A,m0A=(A)=>{return A===12288||A>=65281&&A<=65376||A>=65504&&A<=65510},c0A=(A)=>{return A===8987||A===9001||A>=12272&&A<=12287||A>=12289&&A<=12350||A>=12441&&A<=12543||A>=12549&&A<=12591||A>=12593&&A<=12686||A>=12688&&A<=12771||A>=12783&&A<=12830||A>=12832&&A<=12871||A>=12880&&A<=19903||A>=65040&&A<=65049||A>=65072&&A<=65106||A>=65108&&A<=65126||A>=65128&&A<=65131||A>=127488&&A<=127490||A>=127504&&A<=127547||A>=127552&&A<=127560||A>=131072&&A<=196605||A>=196608&&A<=262141};var l0A=jA(()=>{u0A=(()=>{let A=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return(Q)=>{let B=0;A.lastIndex=0;while(A.test(Q))B+=1;return Q.length-B}})()});var luA,duA,d0A,puA,p0A,nuA,iuA,ruA,n0A=(A,Q={},B={})=>{let I=Q.limit??1/0,E=Q.ellipsis??"",$=Q?.ellipsisWidth??(E?n0A(E,ruA,B).width:0),D=0,G=B.controlWidth??0,Y=B.tabWidth??8,H=B.emojiWidth??2,X=2,C=B.regularWidth??1,W=B.wideWidth??2,q=[[nuA,C],[luA,0],[duA,G],[puA,Y],[p0A,H],[d0A,W]],Z=0,M=0,w=A.length,O=0,T=!1,R=w,S=Math.max(0,I-$),j=0,g=0,i=0,s=0;A:while(!0){if(g>j||M>=w&&M>Z){let u=A.slice(j,g)||A.slice(Z,M);O=0;for(let IA of u.replaceAll(iuA,"")){let r=IA.codePointAt(0)||0;if(m0A(r))s=2;else if(c0A(r))s=W;else s=C;if(i+s>S)R=Math.min(R,Math.max(j,Z)+O);if(i+s>I){T=!0;break A}O+=IA.length,i+=s}j=g=0}if(M>=w)break A;for(let u=0,IA=q.length;u<IA;u++){let[r,HA]=q[u];if(r.lastIndex=M,r.test(A)){if(O=r===d0A?u0A(A.slice(M,r.lastIndex)):r===p0A?1:r.lastIndex-M,s=O*HA,i+s>S)R=Math.min(R,M+Math.floor((S-i)/HA));if(i+s>I){T=!0;break A}i+=s,j=Z,g=M,M=Z=r.lastIndex;continue A}}M+=1}return{width:T?S:i,index:T?R:w,truncated:T,ellipsed:T&&I>=$}},i0A;var r0A=jA(()=>{l0A();luA=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,duA=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,d0A=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/yu,puA=/\t{1,1000}/y,p0A=/[\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,nuA=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,iuA=/\p{M}+/gu,ruA={limit:1/0,ellipsis:""},i0A=n0A});var ouA,auA=(A,Q={})=>{return i0A(A,ouA,Q).width},CG;var Gb=jA(()=>{r0A();ouA={limit:1/0,ellipsis:"",ellipsisWidth:0},CG=auA});function $Y(A,Q,B){return String(A).normalize().split(QmA).map((I)=>AmA(I,Q,B)).join(` `)}var sL="\x1B",e0A="›",suA=39,Yb="\x07",AIA="[",tuA="]",QIA="m",Ub,o0A,a0A=(A)=>{if(A>=30&&A<=37)return 39;if(A>=90&&A<=97)return 39;if(A>=40&&A<=47)return 49;if(A>=100&&A<=107)return 49;if(A===1||A===2)return 22;if(A===3)return 23;if(A===4)return 24;if(A===7)return 27;if(A===8)return 28;if(A===9)return 29;if(A===0)return 0;return},s0A=(A)=>`${sL}${AIA}${A}${QIA}`,t0A=(A)=>`${sL}${Ub}${A}${Yb}`,Jb=(A,Q,B)=>{let I=Q[Symbol.iterator](),E=!1,$=!1,D=A.at(-1),G=D===void 0?0:CG(D),Y=I.next(),H=I.next(),X=0;while(!Y.done){let C=Y.value,W=CG(C);if(G+W<=B)A[A.length-1]+=C;else A.push(C),G=0;if(C===sL||C===e0A)E=!0,$=Q.startsWith(Ub,X+1);if(E){if($){if(C===Yb)E=!1,$=!1}else if(C===QIA)E=!1}else if(G+=W,G===B&&!H.done)A.push(""),G=0;Y=H,H=I.next(),X+=C.length}if(D=A.at(-1),!G&&D!==void 0&&D.length&&A.length>1)A[A.length-2]+=A.pop()},euA=(A)=>{let Q=A.split(" "),B=Q.length;while(B){if(CG(Q[B-1]))break;B--}if(B===Q.length)return A;return Q.slice(0,B).join(" ")+Q.slice(B).join("")},AmA=(A,Q,B={})=>{if(B.trim!==!1&&A.trim()==="")return"";let I="",E,$,D=A.split(" "),G=[""],Y=0;for(let C=0;C<D.length;C++){let W=D[C];if(B.trim!==!1){let Z=G.at(-1)??"",M=Z.trimStart();if(Z.length!==M.length)G[G.length-1]=M,Y=CG(M)}if(C!==0){if(Y>=Q&&(B.wordWrap===!1||B.trim===!1))G.push(""),Y=0;if(Y||B.trim===!1)G[G.length-1]+=" ",Y++}let q=CG(W);if(B.hard&&q>Q){let Z=Q-Y,M=1+Math.floor((q-Z-1)/Q);if(Math.floor((q-1)/Q)<M)G.push("");Jb(G,W,Q),Y=CG(G.at(-1)??"");continue}if(Y+q>Q&&Y&&q){if(B.wordWrap===!1&&Y<Q){Jb(G,W,Q),Y=CG(G.at(-1)??"");continue}G.push(""),Y=0}if(Y+q>Q&&B.wordWrap===!1){Jb(G,W,Q),Y=CG(G.at(-1)??"");continue}G[G.length-1]+=W,Y+=q}if(B.trim!==!1)G=G.map((C)=>euA(C));let H=G.join(` `),X=!1;for(let C=0;C<H.length;C++){let W=H[C];if(I+=W,!X){if(X=W>="\uD800"&&W<="\uDBFF",X)continue}else X=!1;if(W===sL||W===e0A){o0A.lastIndex=C+1;let Z=o0A.exec(H)?.groups;if(Z?.code!==void 0){let M=Number.parseFloat(Z.code);E=M===suA?void 0:M}else if(Z?.uri!==void 0)$=Z.uri.length===0?void 0:Z.uri}if(H[C+1]===` `){if($)I+=t0A("");let q=E?a0A(E):void 0;if(E&&q)I+=s0A(q)}else if(W===` `){if(E&&a0A(E))I+=s0A(E);if($)I+=t0A($)}}return I},QmA;var Hb=jA(()=>{Gb();Ub=`${tuA}8;;`,o0A=new RegExp(`(?:\\${AIA}(?<code>\\d+)m|\\${Ub}(?<uri>.*)${Yb})`,"y"),QmA=/\r?\n/});var Fb=x((smQ,BIA)=>{var Xb={to(A,Q){if(!Q)return`\x1B[${A+1}G`;return`\x1B[${Q+1};${A+1}H`},move(A,Q){let B="";if(A<0)B+=`\x1B[${-A}D`;else if(A>0)B+=`\x1B[${A}C`;if(Q<0)B+=`\x1B[${-Q}A`;else if(Q>0)B+=`\x1B[${Q}B`;return B},up:(A=1)=>`\x1B[${A}A`,down:(A=1)=>`\x1B[${A}B`,forward:(A=1)=>`\x1B[${A}C`,backward:(A=1)=>`\x1B[${A}D`,nextLine:(A=1)=>"\x1B[E".repeat(A),prevLine:(A=1)=>"\x1B[F".repeat(A),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},BmA={up:(A=1)=>"\x1B[S".repeat(A),down:(A=1)=>"\x1B[T".repeat(A)},ImA={screen:"\x1B[2J",up:(A=1)=>"\x1B[1J".repeat(A),down:(A=1)=>"\x1B[J".repeat(A),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(A){let Q="";for(let B=0;B<A;B++)Q+=this.line+(B<A-1?Xb.up():"");if(A)Q+=Xb.left;return Q}};BIA.exports={cursor:Xb,scroll:BmA,erase:ImA,beep:"\x07"}});import{styleText as z7}from"node:util";import{stdout as qb,stdin as DIA}from"node:process";import*as DY from"node:readline";import EmA from"node:readline";import{ReadStream as IIA}from"node:tty";function N7(A,Q,B){if(!B.some((D)=>!D.disabled))return A;let I=A+Q,E=Math.max(B.length-1,0),$=I<0?E:I>E?0:I;return B[$].disabled?N7($,Q<0?-1:1,B):$}function tL(A,Q,B,I){let E=I.split(` `),$=0,D=A;for(let Y of E){if(D<=Y.length)break;D-=Y.length+1,$++}for($=Math.max(0,Math.min(E.length-1,$+B)),D=Math.min(D,E[$].length)+Q;D<0&&$>0;)$--,D+=E[$].length+1;for(;D>E[$].length&&$<E.length-1;)D-=E[$].length+1,$++;D=Math.max(0,Math.min(E[$].length,D));let G=0;for(let Y=0;Y<$;Y++)G+=E[Y].length+1;return G+D}function Zb(A,Q){if(typeof A=="string")return hE.aliases.get(A)===Q;for(let B of A)if(B!==void 0&&Zb(B,Q))return!0;return!1}function GmA(A,Q){if(A===Q)return;let B=A.split(` `),I=Q.split(` `),E=Math.max(B.length,I.length),$=[];for(let D=0;D<E;D++)B[D]!==I[D]&&$.push(D);return{lines:$,numLinesBefore:B.length,numLinesAfter:I.length,numLines:E}}function D0(A){return A===Wb}function eL(A,Q){let B=A;B.isTTY&&B.setRawMode(Q)}function GIA({input:A=DIA,output:Q=qb,overwrite:B=!0,hideCursor:I=!0}={}){let E=DY.createInterface({input:A,output:Q,prompt:"",tabSize:1});DY.emitKeypressEvents(A,E),A instanceof IIA&&A.isTTY&&A.setRawMode(!0);let $=(D,{name:G,sequence:Y})=>{let H=String(D);if(Zb([H,G,Y],"cancel")){I&&Q.write(B4.cursor.show),process.exit(0);return}if(!B)return;DY.moveCursor(Q,G==="return"?0:-1,G==="return"?-1:0,()=>{DY.clearLine(Q,1,()=>{A.once("keypress",$)})})};return I&&Q.write(B4.cursor.hide),A.once("keypress",$),()=>{A.off("keypress",$),I&&Q.write(B4.cursor.show),A instanceof IIA&&A.isTTY&&!JmA&&A.setRawMode(!1),E.terminal=!1,E.close()}}function fK(A,Q,B,I=B,E=B,$){let D=Qw(A??qb);return $Y(Q,D-B.length,{hard:!0,trim:!1}).split(` `).map((G,Y,H)=>{let X=$?$(G,Y):G;return Y===0?`${I}${X}`:Y===H.length-1?`${E}${X}`:`${B}${X}`}).join(` `)}function JIA(A,Q){if("~standard"in A){let B=A["~standard"].validate(Q);if(B instanceof Promise)throw TypeError("Schema validation must be synchronous. Update `validate()` and remove any asynchronous logic.");return B.issues?.at(0)?.message}return A(Q)}class hJ{input;output;_abortSignal;rl;opts;_render;_track=!1;_prevFrame="";_subscribers=new Map;_cursor=0;state="initial";error="";value;userInput="";constructor(A,Q=!0){let{input:B=DIA,output:I=qb,render:E,signal:$,...D}=A;this.opts=D,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=E.bind(this),this._track=Q,this._abortSignal=$,this.input=B,this.output=I}unsubscribe(){this._subscribers.clear()}setSubscriber(A,Q){let B=this._subscribers.get(A)??[];B.push(Q),this._subscribers.set(A,B)}on(A,Q){this.setSubscriber(A,{cb:Q})}once(A,Q){this.setSubscriber(A,{cb:Q,once:!0})}emit(A,...Q){let B=this._subscribers.get(A)??[],I=[];for(let E of B)E.cb(...Q),E.once&&I.push(()=>B.splice(B.indexOf(E),1));for(let E of I)E()}prompt(){return new Promise((A)=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),A(Wb);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}this.rl=EmA.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),eL(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(B4.cursor.show),this.output.off("resize",this.render),eL(this.input,!1),A(this.value)}),this.once("cancel",()=>{this.output.write(B4.cursor.show),this.output.off("resize",this.render),eL(this.input,!1),A(Wb)})})}_isActionKey(A,Q){return A==="\t"}_shouldSubmit(A,Q){return!0}_setValue(A){this.value=A,this.emit("value",this.value)}_setUserInput(A,Q){this.userInput=A??"",this.emit("userInput",this.userInput),Q&&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(A,Q){if(this._track&&Q.name!=="return"&&(Q.name&&this._isActionKey(A,Q)&&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"),Q?.name&&(!this._track&&hE.aliases.has(Q.name)&&this.emit("cursor",hE.aliases.get(Q.name)),hE.actions.has(Q.name)&&this.emit("cursor",Q.name)),A&&(A.toLowerCase()==="y"||A.toLowerCase()==="n")&&this.emit("confirm",A.toLowerCase()==="y"),this.emit("key",A,Q),Q?.name==="return"&&this._shouldSubmit(A,Q)){if(this.opts.validate){let B=JIA(this.opts.validate,this.value);B&&(this.error=B instanceof Error?B.message:B,this.state="error",this.rl?.write(this.userInput))}this.state!=="error"&&(this.state="submit")}Zb([A,Q?.name,Q?.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(` `),eL(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let A=$Y(this._prevFrame,process.stdout.columns,{hard:!0,trim:!1}).split(` `).length-1;this.output.write(B4.cursor.move(-999,A*-1))}render(){let A=$Y(this._render(this)??"",process.stdout.columns,{hard:!0,trim:!1});if(A!==this._prevFrame){if(this.state==="initial")this.output.write(B4.cursor.hide);else{let Q=GmA(this._prevFrame,A),B=Mb(this.output);if(this.restoreCursor(),Q){let I=Math.max(0,Q.numLinesAfter-B),E=Math.max(0,Q.numLinesBefore-B),$=Q.lines.find((D)=>D>=I);if($===void 0){this._prevFrame=A;return}if(Q.lines.length===1){this.output.write(B4.cursor.move(0,$-E)),this.output.write(B4.erase.lines(1));let D=A.split(` `);this.output.write(D[$]),this._prevFrame=A,this.output.write(B4.cursor.move(0,D.length-$-1));return}else if(Q.lines.length>1){if(I<E)$=I;else{let G=$-E;G>0&&this.output.write(B4.cursor.move(0,G))}this.output.write(B4.erase.down());let D=A.split(` `).slice($);this.output.write(D.join(` `)),this._prevFrame=A;return}}this.output.write(B4.erase.down())}this.output.write(A),this.state==="initial"&&(this.state="active"),this._prevFrame=A}}}function YmA(A,Q){if(A===void 0||Q.length===0)return 0;let B=Q.findIndex((I)=>I.value===A);return B!==-1?B:0}function UmA(A,Q){return(Q.label??String(Q.value)).toLowerCase().includes(A.toLowerCase())}function HmA(A,Q){if(Q)return A?Q:Q[0]}function EIA(A){return[...A].map((Q)=>FmA[Q])}function CmA(A){let Q=new Intl.DateTimeFormat(A,{year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(2000,0,15)),B=[],I="/";for(let E of Q)E.type==="literal"?I=E.value.trim()||E.value:(E.type==="year"||E.type==="month"||E.type==="day")&&B.push({type:E.type,len:E.type==="year"?4:2});return{segments:B,separator:I}}function Cb(A){return Number.parseInt((A||"0").replace(/_/g,"0"),10)||0}function Aw(A){return{year:Cb(A.year),month:Cb(A.month),day:Cb(A.day)}}function Kb(A,Q){return new Date(A||2001,Q||1,0).getDate()}function YIA(A){let{year:Q,month:B,day:I}=Aw(A);if(!Q||Q<0||Q>9999||!B||B<1||B>12||!I||I<1)return;let E=new Date(Date.UTC(Q,B-1,I));if(!(E.getUTCFullYear()!==Q||E.getUTCMonth()!==B-1||E.getUTCDate()!==I))return{year:Q,month:B,day:I}}function $IA(A){let Q=YIA(A);return Q?new Date(Date.UTC(Q.year,Q.month-1,Q.day)):void 0}function WmA(A,Q,B,I){let E=B?{year:B.getUTCFullYear(),month:B.getUTCMonth()+1,day:B.getUTCDate()}:null,$=I?{year:I.getUTCFullYear(),month:I.getUTCMonth()+1,day:I.getUTCDate()}:null;return A==="year"?{min:E?.year??1,max:$?.year??9999}:A==="month"?{min:E&&Q.year===E.year?E.month:1,max:$&&Q.year===$.year?$.month:12}:{min:E&&Q.year===E.year&&Q.month===E.month?E.day:1,max:$&&Q.year===$.year&&Q.month===$.month?$.day:Kb(Q.year,Q.month)}}var B4,$mA,DmA,hE,JmA,Wb,Qw=(A)=>("columns"in A)&&typeof A.columns=="number"?A.columns:80,Mb=(A)=>("rows"in A)&&typeof A.rows=="number"?A.rows:20,XmA,Nb,FmA,UIA,KmA,qmA,HIA,zb,Lb,wb;var Ob=jA(()=>{Hb();B4=SA(Fb(),1);$mA=["up","down","left","right","space","enter","cancel"],DmA=["January","February","March","April","May","June","July","August","September","October","November","December"],hE={actions:new Set($mA),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:[...DmA],messages:{required:"Please enter a valid date",invalidMonth:"There are only 12 months in a year",invalidDay:(A,Q)=>`There are only ${A} days in ${Q}`,afterMin:(A)=>`Date must be on or after ${A.toISOString().slice(0,10)}`,beforeMax:(A)=>`Date must be on or before ${A.toISOString().slice(0,10)}`}}};JmA=globalThis.process.platform.startsWith("win"),Wb=Symbol("clack:cancel");XmA=class extends hJ{filteredOptions;multiple;isNavigating=!1;selectedValues=[];focusedValue;#Q=0;#E="";#A;#$;#G;get cursor(){return this.#Q}get userInputWithCursor(){if(!this.userInput)return z7(["inverse","hidden"],"_");if(this._cursor>=this.userInput.length)return`${this.userInput}█`;let A=this.userInput.slice(0,this._cursor),[Q,...B]=this.userInput.slice(this._cursor);return`${A}${z7("inverse",Q)}${B.join("")}`}get options(){return typeof this.#$=="function"?this.#$():this.#$}constructor(A){super(A),this.#$=A.options,this.#G=A.placeholder;let Q=this.options;this.filteredOptions=[...Q],this.multiple=A.multiple===!0,this.#A=typeof A.options=="function"?A.filter:A.filter??UmA;let B;if(A.initialValue&&Array.isArray(A.initialValue)?this.multiple?B=A.initialValue:B=A.initialValue.slice(0,1):!this.multiple&&this.options.length>0&&(B=[this.options[0].value]),B)for(let I of B){let E=Q.findIndex(($)=>$.value===I);E!==-1&&(this.toggleSelected(I),this.#Q=E)}this.focusedValue=this.options[this.#Q]?.value,this.on("key",(I,E)=>this.#B(I,E)),this.on("userInput",(I)=>this.#I(I))}_isActionKey(A,Q){return A==="\t"||this.multiple&&this.isNavigating&&Q.name==="space"&&A!==void 0&&A!==""}#B(A,Q){let B=Q.name==="up",I=Q.name==="down",E=Q.name==="return",$=this.userInput===""||this.userInput==="\t",D=this.#G,G=this.options,Y=D!==void 0&&D!==""&&G.some((H)=>!H.disabled&&(this.#A?this.#A(D,H):!0));if(Q.name==="tab"&&$&&Y){this.userInput==="\t"&&this._clearUserInput(),this._setUserInput(D,!0),this.isNavigating=!1;return}B||I?(this.#Q=N7(this.#Q,B?-1:1,this.filteredOptions),this.focusedValue=this.filteredOptions[this.#Q]?.value,this.multiple||(this.selectedValues=[this.focusedValue]),this.isNavigating=!0):E?this.value=HmA(this.multiple,this.selectedValues):this.multiple?this.focusedValue!==void 0&&(Q.name==="tab"||this.isNavigating&&Q.name==="space")?this.toggleSelected(this.focusedValue):this.isNavigating=!1:(this.focusedValue&&(this.selectedValues=[this.focusedValue]),this.isNavigating=!1)}deselectAll(){this.selectedValues=[]}toggleSelected(A){this.filteredOptions.length!==0&&(this.multiple?this.selectedValues.includes(A)?this.selectedValues=this.selectedValues.filter((Q)=>Q!==A):this.selectedValues=[...this.selectedValues,A]:this.selectedValues=[A])}#I(A){if(A!==this.#E){this.#E=A;let Q=this.options;A&&this.#A?this.filteredOptions=Q.filter((E)=>this.#A?.(A,E)):this.filteredOptions=[...Q];let B=YmA(this.focusedValue,this.filteredOptions);this.#Q=N7(B,0,this.filteredOptions);let I=this.filteredOptions[this.#Q];I&&!I.disabled?this.focusedValue=I.value:this.focusedValue=void 0,this.multiple||(this.focusedValue!==void 0?this.toggleSelected(this.focusedValue):this.deselectAll())}}};Nb=class Nb extends hJ{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(A){super(A,!1),this.value=!!A.initialValue,this.on("userInput",()=>{this.value=this._value}),this.on("confirm",(Q)=>{this.output.write(B4.cursor.move(0,-1)),this.value=Q,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}};FmA={Y:{type:"year",len:4},M:{type:"month",len:2},D:{type:"day",len:2}};UIA=class UIA extends hJ{#Q;#E;#A;#$;#G;#B={segmentIndex:0,positionInSegment:0};#I=!0;#D=null;inlineError="";get segmentCursor(){return{...this.#B}}get segmentValues(){return{...this.#A}}get segments(){return this.#Q}get separator(){return this.#E}get formattedValue(){return this.#H(this.#A)}#H(A){return this.#Q.map((Q)=>A[Q.type]).join(this.#E)}#J(){this._setUserInput(this.#H(this.#A)),this._setValue($IA(this.#A)??void 0)}constructor(A){let Q=A.format?{segments:EIA(A.format),separator:A.separator??"/"}:CmA(A.locale),B=A.separator??Q.separator,I=A.format?EIA(A.format):Q.segments,E=A.initialValue??A.defaultValue,$=E?{year:String(E.getUTCFullYear()).padStart(4,"0"),month:String(E.getUTCMonth()+1).padStart(2,"0"),day:String(E.getUTCDate()).padStart(2,"0")}:{year:"____",month:"__",day:"__"},D=I.map((G)=>$[G.type]).join(B);super({...A,initialUserInput:D},!1),this.#Q=I,this.#E=B,this.#A=$,this.#$=A.minDate,this.#G=A.maxDate,this.#J(),this.on("cursor",(G)=>this.#C(G)),this.on("key",(G,Y)=>this.#W(G,Y)),this.on("finalize",()=>this.#K(A))}#Y(){let A=Math.max(0,Math.min(this.#B.segmentIndex,this.#Q.length-1)),Q=this.#Q[A];if(Q)return this.#B.positionInSegment=Math.max(0,Math.min(this.#B.positionInSegment,Q.len-1)),{segment:Q,index:A}}#U(A){this.inlineError="",this.#D=null;let Q=this.#Y();Q&&(this.#B.segmentIndex=Math.max(0,Math.min(this.#Q.length-1,Q.index+A)),this.#B.positionInSegment=0,this.#I=!0)}#X(A){let Q=this.#Y();if(!Q)return;let{segment:B}=Q,I=this.#A[B.type],E=!I||I.replace(/_/g,"")==="",$=Number.parseInt((I||"0").replace(/_/g,"0"),10)||0,D=WmA(B.type,Aw(this.#A),this.#$,this.#G),G;E?G=A===1?D.min:D.max:G=Math.max(Math.min(D.max,$+A),D.min),this.#A={...this.#A,[B.type]:G.toString().padStart(B.len,"0")},this.#I=!0,this.#D=null,this.#J()}#C(A){if(A)switch(A){case"right":return this.#U(1);case"left":return this.#U(-1);case"up":return this.#X(1);case"down":return this.#X(-1)}}#W(A,Q){if(Q?.name==="backspace"||Q?.sequence===""||Q?.sequence==="\b"||A===""||A==="\b"){this.inlineError="";let B=this.#Y();if(!B)return;if(!this.#A[B.segment.type].replace(/_/g,"")){this.#U(-1);return}this.#A[B.segment.type]="_".repeat(B.segment.len),this.#I=!0,this.#B.positionInSegment=0,this.#J();return}if(Q?.name==="tab"){this.inlineError="";let B=this.#Y();if(!B)return;let I=Q.shift?-1:1,E=B.index+I;E>=0&&E<this.#Q.length&&(this.#B.segmentIndex=E,this.#B.positionInSegment=0,this.#I=!0);return}if(A&&/^[0-9]$/.test(A)){let B=this.#Y();if(!B)return;let{segment:I}=B,E=!this.#A[I.type].replace(/_/g,"");if(this.#I&&this.#D!==null&&!E){let W=this.#D+A,q={...this.#A,[I.type]:W},Z=this.#F(q,I);if(Z){this.inlineError=Z,this.#D=null,this.#I=!1;return}this.inlineError="",this.#A[I.type]=W,this.#D=null,this.#I=!1,this.#J(),B.index<this.#Q.length-1&&(this.#B.segmentIndex=B.index+1,this.#B.positionInSegment=0,this.#I=!0);return}this.#I&&!E&&(this.#A[I.type]="_".repeat(I.len),this.#B.positionInSegment=0),this.#I=!1,this.#D=null;let $=this.#A[I.type],D=$.indexOf("_"),G=D>=0?D:Math.min(this.#B.positionInSegment,I.len-1);if(G<0||G>=I.len)return;let Y=$.slice(0,G)+A+$.slice(G+1),H=!1;if(G===0&&$==="__"&&(I.type==="month"||I.type==="day")){let W=Number.parseInt(A,10);Y=`0${A}`,H=W<=(I.type==="month"?1:2)}if(I.type==="year"&&(Y=($.replace(/_/g,"")+A).padStart(I.len,"_")),!Y.includes("_")){let W={...this.#A,[I.type]:Y},q=this.#F(W,I);if(q){this.inlineError=q;return}}this.inlineError="",this.#A[I.type]=Y;let X=Y.includes("_")?void 0:YIA(this.#A);if(X){let{year:W,month:q}=X,Z=Kb(W,q);this.#A={year:String(Math.max(0,Math.min(9999,W))).padStart(4,"0"),month:String(Math.max(1,Math.min(12,q))).padStart(2,"0"),day:String(Math.max(1,Math.min(Z,X.day))).padStart(2,"0")}}this.#J();let C=Y.indexOf("_");H?(this.#I=!0,this.#D=A):C>=0?this.#B.positionInSegment=C:D>=0&&B.index<this.#Q.length-1?(this.#B.segmentIndex=B.index+1,this.#B.positionInSegment=0,this.#I=!0):this.#B.positionInSegment=Math.min(G+1,I.len-1)}}#F(A,Q){let{month:B,day:I}=Aw(A);if(Q.type==="month"&&(B<0||B>12))return hE.date.messages.invalidMonth;if(Q.type==="day"&&(I<0||I>31))return hE.date.messages.invalidDay(31,"any month")}#K(A){let{year:Q,month:B,day:I}=Aw(this.#A);if(Q&&B&&I){let E=Kb(Q,B);this.#A={...this.#A,day:String(Math.min(I,E)).padStart(2,"0")}}this.value=$IA(this.#A)??A.defaultValue??void 0}};KmA=class extends hJ{options;cursor=0;#Q;getGroupItems(A){return this.options.filter((Q)=>Q.group===A)}isGroupSelected(A){let Q=this.getGroupItems(A),B=this.value;return B===void 0?!1:Q.every((I)=>B.includes(I.value))}toggleValue(){let A=this.options[this.cursor];if(this.value===void 0&&(this.value=[]),A.group===!0){let Q=A.value,B=this.getGroupItems(Q);this.isGroupSelected(Q)?this.value=this.value.filter((I)=>B.findIndex((E)=>E.value===I)===-1):this.value=[...this.value,...B.map((I)=>I.value)],this.value=Array.from(new Set(this.value))}else{let Q=this.value.includes(A.value);this.value=Q?this.value.filter((B)=>B!==A.value):[...this.value,A.value]}}constructor(A){super(A,!1);let{options:Q}=A;this.#Q=A.selectableGroups!==!1,this.options=Object.entries(Q).flatMap(([B,I])=>[{value:B,group:!0,label:B},...I.map((E)=>({...E,group:B}))]),this.value=[...A.initialValues??[]],this.cursor=Math.max(this.options.findIndex(({value:B})=>B===A.cursorAt),this.#Q?0:1),this.on("cursor",(B)=>{switch(B){case"left":case"up":{this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;let I=this.options[this.cursor]?.group===!0;!this.#Q&&I&&(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 I=this.options[this.cursor]?.group===!0;!this.#Q&&I&&(this.cursor=this.cursor===this.options.length-1?0:this.cursor+1);break}case"space":this.toggleValue();break}})}},qmA=new Set(["up","down","left","right"]);HIA=class HIA extends hJ{#Q=!1;#E;focused="editor";get userInputWithCursor(){if(this.state==="submit")return this.userInput;let A=this.userInput;if(this.cursor>=A.length)return`${A}█`;let Q=A.slice(0,this.cursor),B=A[this.cursor],I=A.slice(this.cursor+1);return B===` `?`${Q}█ ${I}`:`${Q}${z7("inverse",B)}${I}`}get cursor(){return this._cursor}#A(A){if(this.userInput.length===0){this._setUserInput(A);return}this._setUserInput(this.userInput.slice(0,this.cursor)+A+this.userInput.slice(this.cursor))}#$(A){let Q=this.value??"";switch(A){case"up":this._cursor=tL(this._cursor,0,-1,Q);return;case"down":this._cursor=tL(this._cursor,0,1,Q);return;case"left":this._cursor=tL(this._cursor,-1,0,Q);return;case"right":this._cursor=tL(this._cursor,1,0,Q);return}}_shouldSubmit(A,Q){if(this.#E)return this.focused==="submit"?!0:(this.#A(` `),this._cursor++,!1);let B=this.#Q;return this.#Q=!0,B?(this.userInput[this.cursor-1]===` `&&(this._setUserInput(this.userInput.slice(0,this.cursor-1)+this.userInput.slice(this.cursor)),this._cursor--),!0):(this.#A(` `),this._cursor++,!1)}constructor(A){super(A,!1),this.#E=A.showSubmit??!1,this.on("key",(Q,B)=>{if(B?.name&&qmA.has(B.name)){this.#$(B.name);return}if(Q==="\t"&&this.#E){this.focused=this.focused==="editor"?"submit":"editor";return}if(B?.name!=="return"){if(this.#Q=!1,B?.name==="backspace"&&this.cursor>0){this._setUserInput(this.userInput.slice(0,this.cursor-1)+this.userInput.slice(this.cursor)),this._cursor--;return}if(B?.name==="delete"&&this.cursor<this.userInput.length){this._setUserInput(this.userInput.slice(0,this.cursor)+this.userInput.slice(this.cursor+1));return}Q&&(this.#E&&this.focused==="submit"&&(this.focused="editor"),this.#A(Q??""),this._cursor++)}}),this.on("userInput",(Q)=>{this._setValue(Q)}),this.on("finalize",()=>{this.value||(this.value=A.defaultValue),this.value===void 0&&(this.value="")})}};zb=class zb extends hJ{_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 A=this.userInput;if(this.cursor>=A.length)return`${this.masked}${z7(["inverse","hidden"],"_")}`;let Q=this.masked,B=Q.slice(0,this.cursor),I=Q.slice(this.cursor);return`${B}${z7("inverse",I[0])}${I.slice(1)}`}clear(){this._clearUserInput()}constructor({mask:A,...Q}){super(Q),this._mask=A??"•",this.on("userInput",(B)=>{this._setValue(B)})}};Lb=class Lb extends hJ{options;cursor=0;get _selectedValue(){return this.options[this.cursor]}changeValue(){this.value=this._selectedValue.value}constructor(A){super(A,!1),this.options=A.options;let Q=this.options.findIndex(({value:I})=>I===A.initialValue),B=Q===-1?0:Q;this.cursor=this.options[B].disabled?N7(B,1,this.options):B,this.changeValue(),this.on("cursor",(I)=>{switch(I){case"left":case"up":this.cursor=N7(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=N7(this.cursor,1,this.options);break}this.changeValue()})}};wb=class wb extends hJ{get userInputWithCursor(){if(this.state==="submit")return this.userInput;let A=this.userInput;if(this.cursor>=A.length)return`${this.userInput}█`;let Q=A.slice(0,this.cursor),[B,...I]=A.slice(this.cursor);return`${Q}${z7("inverse",B)}${I.join("")}`}get cursor(){return this._cursor}constructor(A){super({...A,initialUserInput:A.initialUserInput??A.initialValue}),this.on("userInput",(Q)=>{this._setValue(Q)}),this.on("finalize",()=>{this.value||(this.value=A.defaultValue),this.value===void 0&&(this.value="")})}}});import{styleText as SQ,stripVTControlCharacters as HcQ}from"node:util";import ND from"node:process";function ZmA(){return ND.platform!=="win32"?ND.env.TERM!=="linux":!!ND.env.CI||!!ND.env.WT_SESSION||!!ND.env.TERMINUS_SUBLIME||ND.env.ConEmuTask==="{cmd::Cmder}"||ND.env.TERM_PROGRAM==="Terminus-Sublime"||ND.env.TERM_PROGRAM==="vscode"||ND.env.TERM==="xterm-256color"||ND.env.TERM==="alacritty"||ND.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var hK,Rb,MmA=()=>process.env.CI==="true",vI=(A,Q)=>Rb?A:Q,NmA,FIA,CIA,Tb,zmA,$I,GY,WcQ,KcQ,Vb,Iw,qcQ,ZcQ,McQ,LmA,NcQ,zcQ,LcQ,wcQ,OcQ,RcQ,wmA,OmA,RmA,VmA,Ew=(A)=>{switch(A){case"initial":case"active":return SQ("cyan",NmA);case"cancel":return SQ("red",FIA);case"error":return SQ("yellow",CIA);case"submit":return SQ("green",Tb)}},TmA=(A)=>{switch(A){case"initial":case"active":return SQ("cyan",$I);case"cancel":return SQ("red",$I);case"error":return SQ("yellow",$I);case"submit":return SQ("green",$I)}},XIA=(A,Q,B,I,E,$=!1)=>{let D=Q,G=0;if($)for(let Y=I-1;Y>=B&&(D-=A[Y].length,G++,!(D<=E));Y--);else for(let Y=B;Y<I&&(D-=A[Y].length,G++,!(D<=E));Y++);return{lineCount:D,removals:G}},SmA=({cursor:A,options:Q,style:B,output:I=process.stdout,maxItems:E=Number.POSITIVE_INFINITY,columnPadding:$=0,rowPadding:D=4})=>{let G=Qw(I)-$,Y=Mb(I),H=SQ("dim","..."),X=Math.max(Y-D,0),C=Math.max(Math.min(E,X),5),W=0;A>=C-3&&(W=Math.max(Math.min(A-C+3,Q.length-C),0));let q=C<Q.length&&W>0,Z=C<Q.length&&W+C<Q.length,M=Math.min(W+C,Q.length),w=[],O=0;q&&O++,Z&&O++;let T=W+(q?1:0),R=M-(Z?1:0);for(let j=T;j<R;j++){let g=$Y(B(Q[j],j===A),G,{hard:!0,trim:!1}).split(` `);w.push(g),O+=g.length}if(O>X){let j=0,g=0,i=O,s=A-T,u=X,IA=()=>XIA(w,i,0,s,u),r=()=>XIA(w,i,s+1,w.length,u,!0);q?({lineCount:i,removals:j}=IA(),i>u&&(Z||(u-=1),{lineCount:i,removals:g}=r())):(Z||(u-=1),{lineCount:i,removals:g}=r(),i>u&&(u-=1,{lineCount:i,removals:j}=IA())),j>0&&(q=!0,w.splice(0,j)),g>0&&(Z=!0,w.splice(w.length-g,g))}let S=[];q&&S.push(H);for(let j of w)for(let g of j)S.push(g);return Z&&S.push(H),S},oI=(A)=>{let Q=A.active??"Yes",B=A.inactive??"No";return new Nb({active:Q,inactive:B,signal:A.signal,input:A.input,output:A.output,initialValue:A.initialValue??!0,render(){let I=A.withGuide??hE.withGuide,E=`${Ew(this.state)} `,$=I?`${SQ("gray",$I)} `:"",D=fK(A.output,A.message,$,E),G=`${I?`${SQ("gray",$I)} `:""}${D} `,Y=this.value?Q:B;switch(this.state){case"submit":{let H=I?`${SQ("gray",$I)} `:"";return`${G}${H}${SQ("dim",Y)}`}case"cancel":{let H=I?`${SQ("gray",$I)} `:"";return`${G}${H}${SQ(["strikethrough","dim"],Y)}${I?` ${SQ("gray",$I)}`:""}`}default:{let H=I?`${SQ("cyan",$I)} `:"",X=I?SQ("cyan",GY):"";return`${G}${H}${this.value?`${SQ("green",Vb)} ${Q}`:`${SQ("dim",Iw)} ${SQ("dim",Q)}`}${A.vertical?I?` ${SQ("cyan",$I)} `:` `:` ${SQ("dim","/")} `}${this.value?`${SQ("dim",Iw)} ${SQ("dim",B)}`:`${SQ("green",Vb)} ${B}`} ${X} `}}}}).prompt()},L,WIA=(A="",Q)=>{let B=Q?.output??process.stdout,I=Q?.withGuide??hE.withGuide?`${SQ("gray",GY)} `:"";B.write(`${I}${SQ("red",A)} `)},IB=(A="",Q)=>{let B=Q?.output??process.stdout,I=Q?.withGuide??hE.withGuide?`${SQ("gray",zmA)} `:"";B.write(`${I}${A} `)},EB=(A="",Q)=>{let B=Q?.output??process.stdout,I=Q?.withGuide??hE.withGuide?`${SQ("gray",$I)} ${SQ("gray",GY)} `:"";B.write(`${I}${A} `)},KIA=(A)=>new zb({validate:A.validate,mask:A.mask??LmA,signal:A.signal,input:A.input,output:A.output,render(){let Q=A.withGuide??hE.withGuide,B=`${Q?`${SQ("gray",$I)} `:""}${Ew(this.state)} ${A.message} `,I=this.userInputWithCursor,E=this.masked;switch(this.state){case"error":{let $=Q?`${SQ("yellow",$I)} `:"",D=Q?`${SQ("yellow",GY)} `:"",G=E??"";return A.clearOnError&&this.clear(),`${B.trim()} ${$}${G} ${D}${SQ("yellow",this.error)} `}case"submit":{let $=Q?`${SQ("gray",$I)} `:"",D=E?SQ("dim",E):"";return`${B}${$}${D}`}case"cancel":{let $=Q?`${SQ("gray",$I)} `:"",D=E?SQ(["strikethrough","dim"],E):"";return`${B}${$}${D}${E&&Q?` ${SQ("gray",$I)}`:""}`}default:{let $=Q?`${SQ("cyan",$I)} `:"",D=Q?SQ("cyan",GY):"";return`${B}${$}${I} ${D} `}}}}).prompt(),jmA=(A)=>SQ("magenta",A),aI=({indicator:A="dots",onCancel:Q,output:B=process.stdout,cancelMessage:I,errorMessage:E,frames:$=Rb?["◒","◐","◓","◑"]:["•","o","O","0"],delay:D=Rb?80:120,signal:G,...Y}={})=>{let H=MmA(),X,C,W=!1,q=!1,Z="",M,w=performance.now(),O=Qw(B),T=Y?.styleFrame??jmA,R=(OA)=>{let o=OA>1?E??hE.messages.error:I??hE.messages.cancel;q=OA===1,W&&(KA(o,OA),q&&typeof Q=="function"&&Q())},S=()=>R(2),j=()=>R(1),g=()=>{process.on("uncaughtExceptionMonitor",S),process.on("unhandledRejection",S),process.on("SIGINT",j),process.on("SIGTERM",j),process.on("exit",R),G&&G.addEventListener("abort",j)},i=()=>{process.removeListener("uncaughtExceptionMonitor",S),process.removeListener("unhandledRejection",S),process.removeListener("SIGINT",j),process.removeListener("SIGTERM",j),process.removeListener("exit",R),G&&G.removeEventListener("abort",j)},s=()=>{if(M===void 0)return;H&&B.write(` `);let OA=$Y(M,O,{hard:!0,trim:!1}).split(` `);OA.length>1&&B.write(hK.cursor.up(OA.length-1)),B.write(hK.cursor.to(0)),B.write(hK.erase.down())},u=(OA)=>OA.replace(/\.+$/,""),IA=(OA)=>{let o=(performance.now()-OA)/1000,_=Math.floor(o/60),k=Math.floor(o%60);return _>0?`[${_}m ${k}s]`:`[${k}s]`},r=Y.withGuide??hE.withGuide,HA=(OA="")=>{W=!0,X=GIA({output:B}),Z=u(OA),w=performance.now(),r&&B.write(`${SQ("gray",$I)} `);let o=0,_=0;g(),C=setInterval(()=>{if(H&&Z===M)return;s(),M=Z;let k=T($[o]),y;if(H)y=`${k} ${Z}...`;else if(A==="timer")y=`${k} ${Z} ${IA(w)}`;else{let n=".".repeat(Math.floor(_)).slice(0,3);y=`${k} ${Z}${n}`}let a=$Y(y,O,{hard:!0,trim:!1});B.write(a),o=o+1<$.length?o+1:0,_=_<4?_+0.125:0},D)},KA=(OA="",o=0,_=!1)=>{if(!W)return;W=!1,clearInterval(C),s();let k=o===0?SQ("green",Tb):o===1?SQ("red",FIA):SQ("red",CIA);Z=OA??Z,_||(A==="timer"?B.write(`${k} ${Z} ${IA(w)} `):B.write(`${k} ${Z} `)),i(),X()};return{start:HA,stop:(OA="")=>KA(OA,0),message:(OA="")=>{Z=u(OA??Z)},cancel:(OA="")=>KA(OA,1),error:(OA="")=>KA(OA,2),clear:()=>KA("",0,!0),get isCancelled(){return q}}},VcQ,Bw=(A,Q)=>A.includes(` `)?A.split(` `).map((B)=>Q(B)).join(` `):Q(A),uE=(A)=>{let Q=(B,I)=>{let E=B.label??String(B.value);switch(I){case"disabled":return`${SQ("gray",Iw)} ${Bw(E,($)=>SQ("gray",$))}${B.hint?` ${SQ("dim",`(${B.hint??"disabled"})`)}`:""}`;case"selected":return`${Bw(E,($)=>SQ("dim",$))}`;case"active":return`${SQ("green",Vb)} ${E}${B.hint?` ${SQ("dim",`(${B.hint})`)}`:""}`;case"cancelled":return`${Bw(E,($)=>SQ(["strikethrough","dim"],$))}`;default:return`${SQ("dim",Iw)} ${Bw(E,($)=>SQ("dim",$))}`}};return new Lb({options:A.options,signal:A.signal,input:A.input,output:A.output,initialValue:A.initialValue,render(){let B=A.withGuide??hE.withGuide,I=`${Ew(this.state)} `,E=`${TmA(this.state)} `,$=fK(A.output,A.message,E,I),D=`${B?`${SQ("gray",$I)} `:""}${$} `;switch(this.state){case"submit":{let G=B?`${SQ("gray",$I)} `:"",Y=fK(A.output,Q(this.options[this.cursor],"selected"),G);return`${D}${Y}`}case"cancel":{let G=B?`${SQ("gray",$I)} `:"",Y=fK(A.output,Q(this.options[this.cursor],"cancelled"),G);return`${D}${Y}${B?` ${SQ("gray",$I)}`:""}`}default:{let G=B?`${SQ("cyan",$I)} `:"",Y=B?SQ("cyan",GY):"",H=D.split(` `).length,X=B?2:1;return`${D}${G}${SmA({output:A.output,cursor:this.cursor,options:this.options,maxItems:A.maxItems,columnPadding:G.length,rowPadding:H+X,style:(C,W)=>Q(C,C.disabled?"disabled":W?"active":"inactive")}).join(` ${G}`)} ${Y} `}}}}).prompt()},TcQ,JY=(A)=>new wb({validate:A.validate,placeholder:A.placeholder,defaultValue:A.defaultValue,initialValue:A.initialValue,output:A.output,signal:A.signal,input:A.input,render(){let Q=A?.withGuide??hE.withGuide,B=`${`${Q?`${SQ("gray",$I)} `:""}${Ew(this.state)} `}${A.message} `,I=A.placeholder?SQ("inverse",A.placeholder[0])+SQ("dim",A.placeholder.slice(1)):SQ(["inverse","hidden"],"_"),E=this.userInput?this.userInputWithCursor:I,$=this.value??"";switch(this.state){case"error":{let D=this.error?` ${SQ("yellow",this.error)}`:"",G=Q?`${SQ("yellow",$I)} `:"",Y=Q?SQ("yellow",GY):"";return`${B.trim()} ${G}${E} ${Y}${D} `}case"submit":{let D=$?` ${SQ("dim",$)}`:"",G=Q?SQ("gray",$I):"";return`${B}${G}${D}`}case"cancel":{let D=$?` ${SQ(["strikethrough","dim"],$)}`:"",G=Q?SQ("gray",$I):"";return`${B}${G}${D}${$.trim()?` ${G}`:""}`}default:{let D=Q?`${SQ("cyan",$I)} `:"",G=Q?SQ("cyan",GY):"";return`${B}${D}${E} ${G} `}}}}).prompt();var bB=jA(()=>{Ob();Ob();Hb();Gb();hK=SA(Fb(),1);Rb=ZmA(),NmA=vI("◆","*"),FIA=vI("■","x"),CIA=vI("▲","x"),Tb=vI("◇","o"),zmA=vI("┌","T"),$I=vI("│","|"),GY=vI("└","—"),WcQ=vI("┐","T"),KcQ=vI("┘","—"),Vb=vI("●",">"),Iw=vI("○"," "),qcQ=vI("◻","[•]"),ZcQ=vI("◼","[+]"),McQ=vI("◻","[ ]"),LmA=vI("▪","•"),NcQ=vI("─","-"),zcQ=vI("╮","+"),LcQ=vI("├","+"),wcQ=vI("╯","+"),OcQ=vI("╰","+"),RcQ=vI("╭","+"),wmA=vI("●","•"),OmA=vI("◆","*"),RmA=vI("▲","!"),VmA=vI("■","x"),L={message:(A=[],{symbol:Q=SQ("gray",$I),secondarySymbol:B=SQ("gray",$I),output:I=process.stdout,spacing:E=1,withGuide:$}={})=>{let D=[],G=$??hE.withGuide,Y=G?B:"",H=G?`${Q} `:"",X=G?`${B} `:"";for(let W=0;W<E;W++)D.push(Y);let C=Array.isArray(A)?A:A.split(` `);if(C.length>0){let[W,...q]=C;W.length>0?D.push(`${H}${W}`):D.push(G?Q:"");for(let Z of q)Z.length>0?D.push(`${X}${Z}`):D.push(G?B:"")}I.write(`${D.join(` `)} `)},info:(A,Q)=>{L.message(A,{...Q,symbol:SQ("blue",wmA)})},success:(A,Q)=>{L.message(A,{...Q,symbol:SQ("green",OmA)})},step:(A,Q)=>{L.message(A,{...Q,symbol:SQ("green",Tb)})},warn:(A,Q)=>{L.message(A,{...Q,symbol:SQ("yellow",RmA)})},warning:(A,Q)=>{L.warn(A,Q)},error:(A,Q)=>{L.message(A,{...Q,symbol:SQ("red",VmA)})}},VcQ={light:vI("─","-"),heavy:vI("━","="),block:vI("█","#")},TcQ=`${SQ("gray",$I)} `});var uK=x((PmA)=>{class Sb extends Error{constructor(A,Q,B){super(B);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=Q,this.exitCode=A,this.nestedError=void 0}}class qIA extends Sb{constructor(A){super(1,"commander.invalidArgument",A);Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}}PmA.CommanderError=Sb;PmA.InvalidArgumentError=qIA});var $w=x((gmA)=>{var{InvalidArgumentError:vmA}=uK();class ZIA{constructor(A,Q){switch(this.description=Q||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,A[0]){case"<":this.required=!0,this._name=A.slice(1,-1);break;case"[":this.required=!1,this._name=A.slice(1,-1);break;default:this.required=!0,this._name=A;break}if(this._name.endsWith("..."))this.variadic=!0,this._name=this._name.slice(0,-3)}name(){return this._name}_collectValue(A,Q){if(Q===this.defaultValue||!Array.isArray(Q))return[A];return Q.push(A),Q}default(A,Q){return this.defaultValue=A,this.defaultValueDescription=Q,this}argParser(A){return this.parseArg=A,this}choices(A){return this.argChoices=A.slice(),this.parseArg=(Q,B)=>{if(!this.argChoices.includes(Q))throw new vmA(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._collectValue(Q,B);return Q},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}}function xmA(A){let Q=A.name()+(A.variadic===!0?"...":"");return A.required?"<"+Q+">":"["+Q+"]"}gmA.Argument=ZIA;gmA.humanReadableArgName=xmA});var jb=x((hmA)=>{var{humanReadableArgName:fmA}=$w();class MIA{constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(A){this.helpWidth=this.helpWidth??A.helpWidth??80}visibleCommands(A){let Q=A.commands.filter((I)=>!I._hidden),B=A._getHelpCommand();if(B&&!B._hidden)Q.push(B);if(this.sortSubcommands)Q.sort((I,E)=>{return I.name().localeCompare(E.name())});return Q}compareOptions(A,Q){let B=(I)=>{return I.short?I.short.replace(/^-/,""):I.long.replace(/^--/,"")};return B(A).localeCompare(B(Q))}visibleOptions(A){let Q=A.options.filter((I)=>!I.hidden),B=A._getHelpOption();if(B&&!B.hidden){let I=B.short&&A._findOption(B.short),E=B.long&&A._findOption(B.long);if(!I&&!E)Q.push(B);else if(B.long&&!E)Q.push(A.createOption(B.long,B.description));else if(B.short&&!I)Q.push(A.createOption(B.short,B.description))}if(this.sortOptions)Q.sort(this.compareOptions);return Q}visibleGlobalOptions(A){if(!this.showGlobalOptions)return[];let Q=[];for(let B=A.parent;B;B=B.parent){let I=B.options.filter((E)=>!E.hidden);Q.push(...I)}if(this.sortOptions)Q.sort(this.compareOptions);return Q}visibleArguments(A){if(A._argsDescription)A.registeredArguments.forEach((Q)=>{Q.description=Q.description||A._argsDescription[Q.name()]||""});if(A.registeredArguments.find((Q)=>Q.description))return A.registeredArguments;return[]}subcommandTerm(A){let Q=A.registeredArguments.map((B)=>fmA(B)).join(" ");return A._name+(A._aliases[0]?"|"+A._aliases[0]:"")+(A.options.length?" [options]":"")+(Q?" "+Q:"")}optionTerm(A){return A.flags}argumentTerm(A){return A.name()}longestSubcommandTermLength(A,Q){return Q.visibleCommands(A).reduce((B,I)=>{return Math.max(B,this.displayWidth(Q.styleSubcommandTerm(Q.subcommandTerm(I))))},0)}longestOptionTermLength(A,Q){return Q.visibleOptions(A).reduce((B,I)=>{return Math.max(B,this.displayWidth(Q.styleOptionTerm(Q.optionTerm(I))))},0)}longestGlobalOptionTermLength(A,Q){return Q.visibleGlobalOptions(A).reduce((B,I)=>{return Math.max(B,this.displayWidth(Q.styleOptionTerm(Q.optionTerm(I))))},0)}longestArgumentTermLength(A,Q){return Q.visibleArguments(A).reduce((B,I)=>{return Math.max(B,this.displayWidth(Q.styleArgumentTerm(Q.argumentTerm(I))))},0)}commandUsage(A){let Q=A._name;if(A._aliases[0])Q=Q+"|"+A._aliases[0];let B="";for(let I=A.parent;I;I=I.parent)B=I.name()+" "+B;return B+Q+" "+A.usage()}commandDescription(A){return A.description()}subcommandDescription(A){return A.summary()||A.description()}optionDescription(A){let Q=[];if(A.argChoices)Q.push(`choices: ${A.argChoices.map((B)=>JSON.stringify(B)).join(", ")}`);if(A.defaultValue!==void 0){if(A.required||A.optional||A.isBoolean()&&typeof A.defaultValue==="boolean")Q.push(`default: ${A.defaultValueDescription||JSON.stringify(A.defaultValue)}`)}if(A.presetArg!==void 0&&A.optional)Q.push(`preset: ${JSON.stringify(A.presetArg)}`);if(A.envVar!==void 0)Q.push(`env: ${A.envVar}`);if(Q.length>0){let B=`(${Q.join(", ")})`;if(A.description)return`${A.description} ${B}`;return B}return A.description}argumentDescription(A){let Q=[];if(A.argChoices)Q.push(`choices: ${A.argChoices.map((B)=>JSON.stringify(B)).join(", ")}`);if(A.defaultValue!==void 0)Q.push(`default: ${A.defaultValueDescription||JSON.stringify(A.defaultValue)}`);if(Q.length>0){let B=`(${Q.join(", ")})`;if(A.description)return`${A.description} ${B}`;return B}return A.description}formatItemList(A,Q,B){if(Q.length===0)return[];return[B.styleTitle(A),...Q,""]}groupItems(A,Q,B){let I=new Map;return A.forEach((E)=>{let $=B(E);if(!I.has($))I.set($,[])}),Q.forEach((E)=>{let $=B(E);if(!I.has($))I.set($,[]);I.get($).push(E)}),I}formatHelp(A,Q){let B=Q.padWidth(A,Q),I=Q.helpWidth??80;function E(X,C){return Q.formatItem(X,B,C,Q)}let $=[`${Q.styleTitle("Usage:")} ${Q.styleUsage(Q.commandUsage(A))}`,""],D=Q.commandDescription(A);if(D.length>0)$=$.concat([Q.boxWrap(Q.styleCommandDescription(D),I),""]);let G=Q.visibleArguments(A).map((X)=>{return E(Q.styleArgumentTerm(Q.argumentTerm(X)),Q.styleArgumentDescription(Q.argumentDescription(X)))});if($=$.concat(this.formatItemList("Arguments:",G,Q)),this.groupItems(A.options,Q.visibleOptions(A),(X)=>X.helpGroupHeading??"Options:").forEach((X,C)=>{let W=X.map((q)=>{return E(Q.styleOptionTerm(Q.optionTerm(q)),Q.styleOptionDescription(Q.optionDescription(q)))});$=$.concat(this.formatItemList(C,W,Q))}),Q.showGlobalOptions){let X=Q.visibleGlobalOptions(A).map((C)=>{return E(Q.styleOptionTerm(Q.optionTerm(C)),Q.styleOptionDescription(Q.optionDescription(C)))});$=$.concat(this.formatItemList("Global Options:",X,Q))}return this.groupItems(A.commands,Q.visibleCommands(A),(X)=>X.helpGroup()||"Commands:").forEach((X,C)=>{let W=X.map((q)=>{return E(Q.styleSubcommandTerm(Q.subcommandTerm(q)),Q.styleSubcommandDescription(Q.subcommandDescription(q)))});$=$.concat(this.formatItemList(C,W,Q))}),$.join(` `)}displayWidth(A){return NIA(A).length}styleTitle(A){return A}styleUsage(A){return A.split(" ").map((Q)=>{if(Q==="[options]")return this.styleOptionText(Q);if(Q==="[command]")return this.styleSubcommandText(Q);if(Q[0]==="["||Q[0]==="<")return this.styleArgumentText(Q);return this.styleCommandText(Q)}).join(" ")}styleCommandDescription(A){return this.styleDescriptionText(A)}styleOptionDescription(A){return this.styleDescriptionText(A)}styleSubcommandDescription(A){return this.styleDescriptionText(A)}styleArgumentDescription(A){return this.styleDescriptionText(A)}styleDescriptionText(A){return A}styleOptionTerm(A){return this.styleOptionText(A)}styleSubcommandTerm(A){return A.split(" ").map((Q)=>{if(Q==="[options]")return this.styleOptionText(Q);if(Q[0]==="["||Q[0]==="<")return this.styleArgumentText(Q);return this.styleSubcommandText(Q)}).join(" ")}styleArgumentTerm(A){return this.styleArgumentText(A)}styleOptionText(A){return A}styleArgumentText(A){return A}styleSubcommandText(A){return A}styleCommandText(A){return A}padWidth(A,Q){return Math.max(Q.longestOptionTermLength(A,Q),Q.longestGlobalOptionTermLength(A,Q),Q.longestSubcommandTermLength(A,Q),Q.longestArgumentTermLength(A,Q))}preformatted(A){return/\n[^\S\r\n]/.test(A)}formatItem(A,Q,B,I){let $=" ".repeat(2);if(!B)return $+A;let D=A.padEnd(Q+A.length-I.displayWidth(A)),G=2,H=(this.helpWidth??80)-Q-G-2,X;if(H<this.minWidthToWrap||I.preformatted(B))X=B;else X=I.boxWrap(B,H).replace(/\n/g,` `+" ".repeat(Q+G));return $+D+" ".repeat(G)+X.replace(/\n/g,` ${$}`)}boxWrap(A,Q){if(Q<this.minWidthToWrap)return A;let B=A.split(/\r\n|\n/),I=/[\s]*[^\s]+/g,E=[];return B.forEach(($)=>{let D=$.match(I);if(D===null){E.push("");return}let G=[D.shift()],Y=this.displayWidth(G[0]);D.forEach((H)=>{let X=this.displayWidth(H);if(Y+X<=Q){G.push(H),Y+=X;return}E.push(G.join(""));let C=H.trimStart();G=[C],Y=this.displayWidth(C)}),E.push(G.join(""))}),E.join(` `)}}function NIA(A){let Q=/\x1b\[\d*(;\d*)*m/g;return A.replace(Q,"")}hmA.Help=MIA;hmA.stripColor=NIA});var Pb=x((dmA)=>{var{InvalidArgumentError:cmA}=uK();class LIA{constructor(A,Q){this.flags=A,this.description=Q||"",this.required=A.includes("<"),this.optional=A.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(A),this.mandatory=!1;let B=lmA(A);if(this.short=B.shortFlag,this.long=B.longFlag,this.negate=!1,this.long)this.negate=this.long.startsWith("--no-");this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0,this.helpGroupHeading=void 0}default(A,Q){return this.defaultValue=A,this.defaultValueDescription=Q,this}preset(A){return this.presetArg=A,this}conflicts(A){return this.conflictsWith=this.conflictsWith.concat(A),this}implies(A){let Q=A;if(typeof A==="string")Q={[A]:!0};return this.implied=Object.assign(this.implied||{},Q),this}env(A){return this.envVar=A,this}argParser(A){return this.parseArg=A,this}makeOptionMandatory(A=!0){return this.mandatory=!!A,this}hideHelp(A=!0){return this.hidden=!!A,this}_collectValue(A,Q){if(Q===this.defaultValue||!Array.isArray(Q))return[A];return Q.push(A),Q}choices(A){return this.argChoices=A.slice(),this.parseArg=(Q,B)=>{if(!this.argChoices.includes(Q))throw new cmA(`Allowed choices are ${this.argChoices.join(", ")}.`);if(this.variadic)return this._collectValue(Q,B);return Q},this}name(){if(this.long)return this.long.replace(/^--/,"");return this.short.replace(/^-/,"")}attributeName(){if(this.negate)return zIA(this.name().replace(/^no-/,""));return zIA(this.name())}helpGroup(A){return this.helpGroupHeading=A,this}is(A){return this.short===A||this.long===A}isBoolean(){return!this.required&&!this.optional&&!this.negate}}class wIA{constructor(A){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,A.forEach((Q)=>{if(Q.negate)this.negativeOptions.set(Q.attributeName(),Q);else this.positiveOptions.set(Q.attributeName(),Q)}),this.negativeOptions.forEach((Q,B)=>{if(this.positiveOptions.has(B))this.dualOptions.add(B)})}valueFromOption(A,Q){let B=Q.attributeName();if(!this.dualOptions.has(B))return!0;let I=this.negativeOptions.get(B).presetArg,E=I!==void 0?I:!1;return Q.negate===(E===A)}}function zIA(A){return A.split("-").reduce((Q,B)=>{return Q+B[0].toUpperCase()+B.slice(1)})}function lmA(A){let Q,B,I=/^-[^-]$/,E=/^--[^-]/,$=A.split(/[ |,]+/).concat("guard");if(I.test($[0]))Q=$.shift();if(E.test($[0]))B=$.shift();if(!Q&&I.test($[0]))Q=$.shift();if(!Q&&E.test($[0]))Q=B,B=$.shift();if($[0].startsWith("-")){let D=$[0],G=`option creation failed due to '${D}' in option flags '${A}'`;if(/^-[^-][^-]/.test(D))throw Error(`${G} - a short flag is a single dash and a single character - either use a single dash and a single character (for a short flag) - or use a double dash for a long option (and can have two, like '--ws, --workspace')`);if(I.test(D))throw Error(`${G} - too many short flags`);if(E.test(D))throw Error(`${G} - too many long flags`);throw Error(`${G} - unrecognised flag format`)}if(Q===void 0&&B===void 0)throw Error(`option creation failed due to no flags found in '${A}'.`);return{shortFlag:Q,longFlag:B}}dmA.Option=LIA;dmA.DualOptions=wIA});var OIA=x((omA)=>{function imA(A,Q){if(Math.abs(A.length-Q.length)>3)return Math.max(A.length,Q.length);let B=[];for(let I=0;I<=A.length;I++)B[I]=[I];for(let I=0;I<=Q.length;I++)B[0][I]=I;for(let I=1;I<=Q.length;I++)for(let E=1;E<=A.length;E++){let $=1;if(A[E-1]===Q[I-1])$=0;else $=1;if(B[E][I]=Math.min(B[E-1][I]+1,B[E][I-1]+1,B[E-1][I-1]+$),E>1&&I>1&&A[E-1]===Q[I-2]&&A[E-2]===Q[I-1])B[E][I