@kunlun-qilian/create-app-cli
Version:
## Scaffolding Your First webapp Project
48 lines • 54 kB
JavaScript
import E from"node:fs";import T from"node:path";import{fileURLToPath as Le}from"node:url";import He from"child_process";import ht from"path";import at from"fs";import Ye from"readline";import Ve from"events";var Be=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function ut(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var W={exports:{}},ct,Ht;function ke(){if(Ht)return ct;Ht=1,ct=i,i.sync=n;var e=at;function t(o,r){var l=r.pathExt!==void 0?r.pathExt:process.env.PATHEXT;if(!l||(l=l.split(";"),l.indexOf("")!==-1))return!0;for(var d=0;d<l.length;d++){var h=l[d].toLowerCase();if(h&&o.substr(-h.length).toLowerCase()===h)return!0}return!1}function s(o,r,l){return!o.isSymbolicLink()&&!o.isFile()?!1:t(r,l)}function i(o,r,l){e.stat(o,function(d,h){l(d,d?!1:s(h,o,r))})}function n(o,r){return s(e.statSync(o),o,r)}return ct}var dt,Yt;function We(){if(Yt)return dt;Yt=1,dt=t,t.sync=s;var e=at;function t(o,r,l){e.stat(o,function(d,h){l(d,d?!1:i(h,r))})}function s(o,r){return i(e.statSync(o),r)}function i(o,r){return o.isFile()&&n(o,r)}function n(o,r){var l=o.mode,d=o.uid,h=o.gid,b=r.uid!==void 0?r.uid:process.getuid&&process.getuid(),p=r.gid!==void 0?r.gid:process.getgid&&process.getgid(),a=parseInt("100",8),u=parseInt("010",8),g=parseInt("001",8),x=a|u,M=l&g||l&u&&h===p||l&a&&d===b||l&x&&b===0;return M}return dt}var st;process.platform==="win32"||Be.TESTING_WINDOWS?st=ke():st=We();var ze=ft;ft.sync=Ue;function ft(e,t,s){if(typeof t=="function"&&(s=t,t={}),!s){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(i,n){ft(e,t||{},function(o,r){o?n(o):i(r)})})}st(e,t||{},function(i,n){i&&(i.code==="EACCES"||t&&t.ignoreErrors)&&(i=null,n=!1),s(i,n)})}function Ue(e,t){try{return st.sync(e,t||{})}catch(s){if(t&&t.ignoreErrors||s.code==="EACCES")return!1;throw s}}const z=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Vt=ht,Ge=z?";":":",Bt=ze,kt=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),Wt=(e,t)=>{const s=t.colon||Ge,i=e.match(/\//)||z&&e.match(/\\/)?[""]:[...z?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(s)],n=z?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=z?n.split(s):[""];return z&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:i,pathExt:o,pathExtExe:n}},zt=(e,t,s)=>{typeof t=="function"&&(s=t,t={}),t||(t={});const{pathEnv:i,pathExt:n,pathExtExe:o}=Wt(e,t),r=[],l=h=>new Promise((b,p)=>{if(h===i.length)return t.all&&r.length?b(r):p(kt(e));const a=i[h],u=/^".*"$/.test(a)?a.slice(1,-1):a,g=Vt.join(u,e),x=!u&&/^\.[\\\/]/.test(e)?e.slice(0,2)+g:g;b(d(x,h,0))}),d=(h,b,p)=>new Promise((a,u)=>{if(p===n.length)return a(l(b+1));const g=n[p];Bt(h+g,{pathExt:o},(x,M)=>{if(!x&&M)if(t.all)r.push(h+g);else return a(h+g);return a(d(h,b,p+1))})});return s?l(0).then(h=>s(null,h),s):l(0)},Je=(e,t)=>{t=t||{};const{pathEnv:s,pathExt:i,pathExtExe:n}=Wt(e,t),o=[];for(let r=0;r<s.length;r++){const l=s[r],d=/^".*"$/.test(l)?l.slice(1,-1):l,h=Vt.join(d,e),b=!d&&/^\.[\\\/]/.test(e)?e.slice(0,2)+h:h;for(let p=0;p<i.length;p++){const a=b+i[p];try{if(Bt.sync(a,{pathExt:n}))if(t.all)o.push(a);else return a}catch{}}}if(t.all&&o.length)return o;if(t.nothrow)return null;throw kt(e)};var Ke=zt;zt.sync=Je;var pt={exports:{}};const Ut=(e={})=>{const t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(i=>i.toUpperCase()==="PATH")||"Path"};pt.exports=Ut,pt.exports.default=Ut;var qe=pt.exports;const Gt=ht,Ze=Ke,Xe=qe;function Jt(e,t){const s=e.options.env||process.env,i=process.cwd(),n=e.options.cwd!=null,o=n&&process.chdir!==void 0&&!process.chdir.disabled;if(o)try{process.chdir(e.options.cwd)}catch{}let r;try{r=Ze.sync(e.command,{path:s[Xe({env:s})],pathExt:t?Gt.delimiter:void 0})}catch{}finally{o&&process.chdir(i)}return r&&(r=Gt.resolve(n?e.options.cwd:"",r)),r}function Qe(e){return Jt(e)||Jt(e,!0)}var ts=Qe,mt={};const gt=/([()\][%!^"`<>&|;, *?])/g;function es(e){return e=e.replace(gt,"^$1"),e}function ss(e,t){return e=`${e}`,e=e.replace(/(\\*)"/g,'$1$1\\"'),e=e.replace(/(\\*)$/,"$1$1"),e=`"${e}"`,e=e.replace(gt,"^$1"),t&&(e=e.replace(gt,"^$1")),e}mt.command=es,mt.argument=ss;var is=/^#!(.*)/;const rs=is;var ns=(e="")=>{const t=e.match(rs);if(!t)return null;const[s,i]=t[0].replace(/#! ?/,"").split(" "),n=s.split("/").pop();return n==="env"?i:i?`${n} ${i}`:n};const vt=at,os=ns;function ls(e){const s=Buffer.alloc(150);let i;try{i=vt.openSync(e,"r"),vt.readSync(i,s,0,150,0),vt.closeSync(i)}catch{}return os(s.toString())}var hs=ls;const as=ht,Kt=ts,qt=mt,us=hs,cs=process.platform==="win32",ds=/\.(?:com|exe)$/i,fs=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function ps(e){e.file=Kt(e);const t=e.file&&us(e.file);return t?(e.args.unshift(e.file),e.command=t,Kt(e)):e.file}function ms(e){if(!cs)return e;const t=ps(e),s=!ds.test(t);if(e.options.forceShell||s){const i=fs.test(t);e.command=as.normalize(e.command),e.command=qt.command(e.command),e.args=e.args.map(o=>qt.argument(o,i));const n=[e.command].concat(e.args).join(" ");e.args=["/d","/s","/c",`"${n}"`],e.command=process.env.comspec||"cmd.exe",e.options.windowsVerbatimArguments=!0}return e}function gs(e,t,s){t&&!Array.isArray(t)&&(s=t,t=null),t=t?t.slice(0):[],s=Object.assign({},s);const i={command:e,args:t,options:s,file:void 0,original:{command:e,args:t}};return s.shell?i:ms(i)}var vs=gs;const bt=process.platform==="win32";function wt(e,t){return Object.assign(new Error(`${t} ${e.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function bs(e,t){if(!bt)return;const s=e.emit;e.emit=function(i,n){if(i==="exit"){const o=Zt(n,t);if(o)return s.call(e,"error",o)}return s.apply(e,arguments)}}function Zt(e,t){return bt&&e===1&&!t.file?wt(t.original,"spawn"):null}function ws(e,t){return bt&&e===1&&!t.file?wt(t.original,"spawnSync"):null}var ys={hookChildProcess:bs,verifyENOENT:Zt,verifyENOENTSync:ws,notFoundError:wt};const Xt=He,yt=vs,$t=ys;function Qt(e,t,s){const i=yt(e,t,s),n=Xt.spawn(i.command,i.args,i.options);return $t.hookChildProcess(n,i),n}function $s(e,t,s){const i=yt(e,t,s),n=Xt.spawnSync(i.command,i.args,i.options);return n.error=n.error||$t.verifyENOENTSync(n.status,i),n}W.exports=Qt,W.exports.spawn=Qt,W.exports.sync=$s,W.exports._parse=yt,W.exports._enoent=$t;var xs=W.exports;const Ss=ut(xs);function Es(e,t){var s=e;t.slice(0,-1).forEach(function(n){s=s[n]||{}});var i=t[t.length-1];return i in s}function te(e){return typeof e=="number"||/^0x[0-9a-f]+$/i.test(e)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(e)}function ee(e,t){return t==="constructor"&&typeof e[t]=="function"||t==="__proto__"}var Os=function(e,t){t||(t={});var s={bools:{},strings:{},unknownFn:null};typeof t.unknown=="function"&&(s.unknownFn=t.unknown),typeof t.boolean=="boolean"&&t.boolean?s.allBools=!0:[].concat(t.boolean).filter(Boolean).forEach(function(f){s.bools[f]=!0});var i={};function n(f){return i[f].some(function(c){return s.bools[c]})}Object.keys(t.alias||{}).forEach(function(f){i[f]=[].concat(t.alias[f]),i[f].forEach(function(c){i[c]=[f].concat(i[f].filter(function(y){return c!==y}))})}),[].concat(t.string).filter(Boolean).forEach(function(f){s.strings[f]=!0,i[f]&&[].concat(i[f]).forEach(function(c){s.strings[c]=!0})});var o=t.default||{},r={_:[]};function l(f,c){return s.allBools&&/^--[^=]+$/.test(c)||s.strings[f]||s.bools[f]||i[f]}function d(f,c,y){for(var m=f,Y=0;Y<c.length-1;Y++){var C=c[Y];if(ee(m,C))return;m[C]===void 0&&(m[C]={}),(m[C]===Object.prototype||m[C]===Number.prototype||m[C]===String.prototype)&&(m[C]={}),m[C]===Array.prototype&&(m[C]=[]),m=m[C]}var P=c[c.length-1];ee(m,P)||((m===Object.prototype||m===Number.prototype||m===String.prototype)&&(m={}),m===Array.prototype&&(m=[]),m[P]===void 0||s.bools[P]||typeof m[P]=="boolean"?m[P]=y:Array.isArray(m[P])?m[P].push(y):m[P]=[m[P],y])}function h(f,c,y){if(!(y&&s.unknownFn&&!l(f,y)&&s.unknownFn(y)===!1)){var m=!s.strings[f]&&te(c)?Number(c):c;d(r,f.split("."),m),(i[f]||[]).forEach(function(Y){d(r,Y.split("."),m)})}}Object.keys(s.bools).forEach(function(f){h(f,o[f]===void 0?!1:o[f])});var b=[];e.indexOf("--")!==-1&&(b=e.slice(e.indexOf("--")+1),e=e.slice(0,e.indexOf("--")));for(var p=0;p<e.length;p++){var a=e[p],u,g;if(/^--.+=/.test(a)){var x=a.match(/^--([^=]+)=([\s\S]*)$/);u=x[1];var M=x[2];s.bools[u]&&(M=M!=="false"),h(u,M,a)}else if(/^--no-.+/.test(a))u=a.match(/^--no-(.+)/)[1],h(u,!1,a);else if(/^--.+/.test(a))u=a.match(/^--(.+)/)[1],g=e[p+1],g!==void 0&&!/^(-|--)[^-]/.test(g)&&!s.bools[u]&&!s.allBools&&(!i[u]||!n(u))?(h(u,g,a),p+=1):/^(true|false)$/.test(g)?(h(u,g==="true",a),p+=1):h(u,s.strings[u]?"":!0,a);else if(/^-[^-]+/.test(a)){for(var O=a.slice(1,-1).split(""),k=!1,S=0;S<O.length;S++){if(g=a.slice(S+2),g==="-"){h(O[S],g,a);continue}if(/[A-Za-z]/.test(O[S])&&g[0]==="="){h(O[S],g.slice(1),a),k=!0;break}if(/[A-Za-z]/.test(O[S])&&/-?\d+(\.\d*)?(e-?\d+)?$/.test(g)){h(O[S],g,a),k=!0;break}if(O[S+1]&&O[S+1].match(/\W/)){h(O[S],a.slice(S+2),a),k=!0;break}else h(O[S],s.strings[O[S]]?"":!0,a)}u=a.slice(-1)[0],!k&&u!=="-"&&(e[p+1]&&!/^(-|--)[^-]/.test(e[p+1])&&!s.bools[u]&&(!i[u]||!n(u))?(h(u,e[p+1],a),p+=1):e[p+1]&&/^(true|false)$/.test(e[p+1])?(h(u,e[p+1]==="true",a),p+=1):h(u,s.strings[u]?"":!0,a))}else if((!s.unknownFn||s.unknownFn(a)!==!1)&&r._.push(s.strings._||!te(a)?a:Number(a)),t.stopEarly){r._.push.apply(r._,e.slice(p+1));break}}return Object.keys(o).forEach(function(f){Es(r,f.split("."))||(d(r,f.split("."),o[f]),(i[f]||[]).forEach(function(c){d(r,c.split("."),o[f])}))}),t["--"]?r["--"]=b.slice():b.forEach(function(f){r._.push(f)}),r};const Ts=ut(Os);var se={};const{FORCE_COLOR:Cs,NODE_DISABLE_COLORS:Ms,TERM:Ps}=process.env,v={enabled:!Ms&&Ps!=="dumb"&&Cs!=="0",reset:w(0,0),bold:w(1,22),dim:w(2,22),italic:w(3,23),underline:w(4,24),inverse:w(7,27),hidden:w(8,28),strikethrough:w(9,29),black:w(30,39),red:w(31,39),green:w(32,39),yellow:w(33,39),blue:w(34,39),magenta:w(35,39),cyan:w(36,39),white:w(37,39),gray:w(90,39),grey:w(90,39),bgBlack:w(40,49),bgRed:w(41,49),bgGreen:w(42,49),bgYellow:w(43,49),bgBlue:w(44,49),bgMagenta:w(45,49),bgCyan:w(46,49),bgWhite:w(47,49)};function ie(e,t){let s=0,i,n="",o="";for(;s<e.length;s++)i=e[s],n+=i.open,o+=i.close,t.includes(i.close)&&(t=t.replace(i.rgx,i.close+i.open));return n+t+o}function Ds(e,t){let s={has:e,keys:t};return s.reset=v.reset.bind(s),s.bold=v.bold.bind(s),s.dim=v.dim.bind(s),s.italic=v.italic.bind(s),s.underline=v.underline.bind(s),s.inverse=v.inverse.bind(s),s.hidden=v.hidden.bind(s),s.strikethrough=v.strikethrough.bind(s),s.black=v.black.bind(s),s.red=v.red.bind(s),s.green=v.green.bind(s),s.yellow=v.yellow.bind(s),s.blue=v.blue.bind(s),s.magenta=v.magenta.bind(s),s.cyan=v.cyan.bind(s),s.white=v.white.bind(s),s.gray=v.gray.bind(s),s.grey=v.grey.bind(s),s.bgBlack=v.bgBlack.bind(s),s.bgRed=v.bgRed.bind(s),s.bgGreen=v.bgGreen.bind(s),s.bgYellow=v.bgYellow.bind(s),s.bgBlue=v.bgBlue.bind(s),s.bgMagenta=v.bgMagenta.bind(s),s.bgCyan=v.bgCyan.bind(s),s.bgWhite=v.bgWhite.bind(s),s}function w(e,t){let s={open:`\x1B[${e}m`,close:`\x1B[${t}m`,rgx:new RegExp(`\\x1b\\[${t}m`,"g")};return function(i){return this!==void 0&&this.has!==void 0?(this.has.includes(e)||(this.has.push(e),this.keys.push(s)),i===void 0?this:v.enabled?ie(this.keys,i+""):i+""):i===void 0?Ds([e],[s]):v.enabled?ie([s],i+""):i+""}}var D=v,_s=(e,t)=>{if(!(e.meta&&e.name!=="escape")){if(e.ctrl){if(e.name==="a")return"first";if(e.name==="c"||e.name==="d")return"abort";if(e.name==="e")return"last";if(e.name==="g")return"reset"}if(t){if(e.name==="j")return"down";if(e.name==="k")return"up"}return e.name==="return"||e.name==="enter"?"submit":e.name==="backspace"?"delete":e.name==="delete"?"deleteForward":e.name==="abort"?"abort":e.name==="escape"?"exit":e.name==="tab"?"next":e.name==="pagedown"?"nextPage":e.name==="pageup"?"prevPage":e.name==="home"?"home":e.name==="end"?"end":e.name==="up"?"up":e.name==="down"?"down":e.name==="right"?"right":e.name==="left"?"left":!1}},xt=e=>{const t=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"].join("|"),s=new RegExp(t,"g");return typeof e=="string"?e.replace(s,""):e};const St="\x1B",$=`${St}[`,Is="\x07",Et={to(e,t){return t?`${$}${t+1};${e+1}H`:`${$}${e+1}G`},move(e,t){let s="";return e<0?s+=`${$}${-e}D`:e>0&&(s+=`${$}${e}C`),t<0?s+=`${$}${-t}A`:t>0&&(s+=`${$}${t}B`),s},up:(e=1)=>`${$}${e}A`,down:(e=1)=>`${$}${e}B`,forward:(e=1)=>`${$}${e}C`,backward:(e=1)=>`${$}${e}D`,nextLine:(e=1)=>`${$}E`.repeat(e),prevLine:(e=1)=>`${$}F`.repeat(e),left:`${$}G`,hide:`${$}?25l`,show:`${$}?25h`,save:`${St}7`,restore:`${St}8`},Rs={up:(e=1)=>`${$}S`.repeat(e),down:(e=1)=>`${$}T`.repeat(e)},As={screen:`${$}2J`,up:(e=1)=>`${$}1J`.repeat(e),down:(e=1)=>`${$}J`.repeat(e),line:`${$}2K`,lineEnd:`${$}K`,lineStart:`${$}1K`,lines(e){let t="";for(let s=0;s<e;s++)t+=this.line+(s<e-1?Et.up():"");return e&&(t+=Et.left),t}};var _={cursor:Et,scroll:Rs,erase:As,beep:Is};const js=xt,{erase:re,cursor:Ns}=_,Fs=e=>[...js(e)].length;var Ls=function(e,t){if(!t)return re.line+Ns.to(0);let s=0;const i=e.split(/\r?\n/);for(let n of i)s+=1+Math.floor(Math.max(Fs(n)-1,0)/t);return re.lines(s)};const K={arrowUp:"\u2191",arrowDown:"\u2193",arrowLeft:"\u2190",arrowRight:"\u2192",radioOn:"\u25C9",radioOff:"\u25EF",tick:"\u2714",cross:"\u2716",ellipsis:"\u2026",pointerSmall:"\u203A",line:"\u2500",pointer:"\u276F"},Hs={arrowUp:K.arrowUp,arrowDown:K.arrowDown,arrowLeft:K.arrowLeft,arrowRight:K.arrowRight,radioOn:"(*)",radioOff:"( )",tick:"\u221A",cross:"\xD7",ellipsis:"...",pointerSmall:"\xBB",line:"\u2500",pointer:">"},Ys=process.platform==="win32"?Hs:K;var ne=Ys;const U=D,V=ne,Ot=Object.freeze({password:{scale:1,render:e=>"*".repeat(e.length)},emoji:{scale:2,render:e=>"\u{1F603}".repeat(e.length)},invisible:{scale:0,render:e=>""},default:{scale:1,render:e=>`${e}`}}),Vs=e=>Ot[e]||Ot.default,q=Object.freeze({aborted:U.red(V.cross),done:U.green(V.tick),exited:U.yellow(V.cross),default:U.cyan("?")}),Bs=(e,t,s)=>t?q.aborted:s?q.exited:e?q.done:q.default,ks=e=>U.gray(e?V.ellipsis:V.pointerSmall),Ws=(e,t)=>U.gray(e?t?V.pointerSmall:"+":V.line);var zs={styles:Ot,render:Vs,symbols:q,symbol:Bs,delimiter:ks,item:Ws};const Us=xt;var Gs=function(e,t){let s=String(Us(e)||"").split(/\r?\n/);return t?s.map(i=>Math.ceil(i.length/t)).reduce((i,n)=>i+n):s.length},Js=(e,t={})=>{const s=Number.isSafeInteger(parseInt(t.margin))?new Array(parseInt(t.margin)).fill(" ").join(""):t.margin||"",i=t.width;return(e||"").split(/\r?\n/g).map(n=>n.split(/\s+/g).reduce((o,r)=>(r.length+s.length>=i||o[o.length-1].length+r.length+1<i?o[o.length-1]+=` ${r}`:o.push(`${s}${r}`),o),[s]).join(`
`)).join(`
`)},Ks=(e,t,s)=>{s=s||t;let i=Math.min(t-s,e-Math.floor(s/2));i<0&&(i=0);let n=Math.min(i+s,t);return{startIndex:i,endIndex:n}},I={action:_s,clear:Ls,style:zs,strip:xt,figures:ne,lines:Gs,wrap:Js,entriesToDisplay:Ks};const oe=Ye,{action:qs}=I,Zs=Ve,{beep:Xs,cursor:Qs}=_,ti=D;let ei=class extends Zs{constructor(t={}){super(),this.firstRender=!0,this.in=t.stdin||process.stdin,this.out=t.stdout||process.stdout,this.onRender=(t.onRender||(()=>{})).bind(this);const s=oe.createInterface({input:this.in,escapeCodeTimeout:50});oe.emitKeypressEvents(this.in,s),this.in.isTTY&&this.in.setRawMode(!0);const i=["SelectPrompt","MultiselectPrompt"].indexOf(this.constructor.name)>-1,n=(o,r)=>{let l=qs(r,i);l===!1?this._&&this._(o,r):typeof this[l]=="function"?this[l](r):this.bell()};this.close=()=>{this.out.write(Qs.show),this.in.removeListener("keypress",n),this.in.isTTY&&this.in.setRawMode(!1),s.close(),this.emit(this.aborted?"abort":this.exited?"exit":"submit",this.value),this.closed=!0},this.in.on("keypress",n)}fire(){this.emit("state",{value:this.value,aborted:!!this.aborted,exited:!!this.exited})}bell(){this.out.write(Xs)}render(){this.onRender(ti),this.firstRender&&(this.firstRender=!1)}};var F=ei;const it=D,si=F,{erase:ii,cursor:Z}=_,{style:Tt,clear:Ct,lines:ri,figures:ni}=I;class oi extends si{constructor(t={}){super(t),this.transform=Tt.render(t.style),this.scale=this.transform.scale,this.msg=t.message,this.initial=t.initial||"",this.validator=t.validate||(()=>!0),this.value="",this.errorMsg=t.error||"Please Enter A Valid Value",this.cursor=+!!this.initial,this.cursorOffset=0,this.clear=Ct("",this.out.columns),this.render()}set value(t){!t&&this.initial?(this.placeholder=!0,this.rendered=it.gray(this.transform.render(this.initial))):(this.placeholder=!1,this.rendered=this.transform.render(t)),this._value=t,this.fire()}get value(){return this._value}reset(){this.value="",this.cursor=+!!this.initial,this.cursorOffset=0,this.fire(),this.render()}exit(){this.abort()}abort(){this.value=this.value||this.initial,this.done=this.aborted=!0,this.error=!1,this.red=!1,this.fire(),this.render(),this.out.write(`
`),this.close()}async validate(){let t=await this.validator(this.value);typeof t=="string"&&(this.errorMsg=t,t=!1),this.error=!t}async submit(){if(this.value=this.value||this.initial,this.cursorOffset=0,this.cursor=this.rendered.length,await this.validate(),this.error){this.red=!0,this.fire(),this.render();return}this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
`),this.close()}next(){if(!this.placeholder)return this.bell();this.value=this.initial,this.cursor=this.rendered.length,this.fire(),this.render()}moveCursor(t){this.placeholder||(this.cursor=this.cursor+t,this.cursorOffset+=t)}_(t,s){let i=this.value.slice(0,this.cursor),n=this.value.slice(this.cursor);this.value=`${i}${t}${n}`,this.red=!1,this.cursor=this.placeholder?0:i.length+1,this.render()}delete(){if(this.isCursorAtStart())return this.bell();let t=this.value.slice(0,this.cursor-1),s=this.value.slice(this.cursor);this.value=`${t}${s}`,this.red=!1,this.isCursorAtStart()?this.cursorOffset=0:(this.cursorOffset++,this.moveCursor(-1)),this.render()}deleteForward(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();let t=this.value.slice(0,this.cursor),s=this.value.slice(this.cursor+1);this.value=`${t}${s}`,this.red=!1,this.isCursorAtEnd()?this.cursorOffset=0:this.cursorOffset++,this.render()}first(){this.cursor=0,this.render()}last(){this.cursor=this.value.length,this.render()}left(){if(this.cursor<=0||this.placeholder)return this.bell();this.moveCursor(-1),this.render()}right(){if(this.cursor*this.scale>=this.rendered.length||this.placeholder)return this.bell();this.moveCursor(1),this.render()}isCursorAtStart(){return this.cursor===0||this.placeholder&&this.cursor===1}isCursorAtEnd(){return this.cursor===this.rendered.length||this.placeholder&&this.cursor===this.rendered.length+1}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write(Z.down(ri(this.outputError,this.out.columns)-1)+Ct(this.outputError,this.out.columns)),this.out.write(Ct(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[Tt.symbol(this.done,this.aborted),it.bold(this.msg),Tt.delimiter(this.done),this.red?it.red(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
`).reduce((t,s,i)=>t+`
${i?" ":ni.pointerSmall} ${it.red().italic(s)}`,"")),this.out.write(ii.line+Z.to(0)+this.outputText+Z.save+this.outputError+Z.restore+Z.move(this.cursorOffset,0)))}}var li=oi;const A=D,hi=F,{style:le,clear:he,figures:rt,wrap:ai,entriesToDisplay:ui}=I,{cursor:ci}=_;class di extends hi{constructor(t={}){super(t),this.msg=t.message,this.hint=t.hint||"- Use arrow-keys. Return to submit.",this.warn=t.warn||"- This option is disabled",this.cursor=t.initial||0,this.choices=t.choices.map((s,i)=>(typeof s=="string"&&(s={title:s,value:i}),{title:s&&(s.title||s.value||s),value:s&&(s.value===void 0?i:s.value),description:s&&s.description,selected:s&&s.selected,disabled:s&&s.disabled})),this.optionsPerPage=t.optionsPerPage||10,this.value=(this.choices[this.cursor]||{}).value,this.clear=he("",this.out.columns),this.render()}moveCursor(t){this.cursor=t,this.value=this.choices[t].value,this.fire()}reset(){this.moveCursor(0),this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
`),this.close()}submit(){this.selection.disabled?this.bell():(this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
`),this.close())}first(){this.moveCursor(0),this.render()}last(){this.moveCursor(this.choices.length-1),this.render()}up(){this.cursor===0?this.moveCursor(this.choices.length-1):this.moveCursor(this.cursor-1),this.render()}down(){this.cursor===this.choices.length-1?this.moveCursor(0):this.moveCursor(this.cursor+1),this.render()}next(){this.moveCursor((this.cursor+1)%this.choices.length),this.render()}_(t,s){if(t===" ")return this.submit()}get selection(){return this.choices[this.cursor]}render(){if(this.closed)return;this.firstRender?this.out.write(ci.hide):this.out.write(he(this.outputText,this.out.columns)),super.render();let{startIndex:t,endIndex:s}=ui(this.cursor,this.choices.length,this.optionsPerPage);if(this.outputText=[le.symbol(this.done,this.aborted),A.bold(this.msg),le.delimiter(!1),this.done?this.selection.title:this.selection.disabled?A.yellow(this.warn):A.gray(this.hint)].join(" "),!this.done){this.outputText+=`
`;for(let i=t;i<s;i++){let n,o,r="",l=this.choices[i];i===t&&t>0?o=rt.arrowUp:i===s-1&&s<this.choices.length?o=rt.arrowDown:o=" ",l.disabled?(n=this.cursor===i?A.gray().underline(l.title):A.strikethrough().gray(l.title),o=(this.cursor===i?A.bold().gray(rt.pointer)+" ":" ")+o):(n=this.cursor===i?A.cyan().underline(l.title):l.title,o=(this.cursor===i?A.cyan(rt.pointer)+" ":" ")+o,l.description&&this.cursor===i&&(r=` - ${l.description}`,(o.length+n.length+r.length>=this.out.columns||l.description.split(/\r?\n/).length>1)&&(r=`
`+ai(l.description,{margin:3,width:this.out.columns})))),this.outputText+=`${o} ${n}${A.gray(r)}
`}}this.out.write(this.outputText)}}var fi=di;const nt=D,pi=F,{style:ae,clear:mi}=I,{cursor:ue,erase:gi}=_;class vi extends pi{constructor(t={}){super(t),this.msg=t.message,this.value=!!t.initial,this.active=t.active||"on",this.inactive=t.inactive||"off",this.initialValue=this.value,this.render()}reset(){this.value=this.initialValue,this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
`),this.close()}submit(){this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
`),this.close()}deactivate(){if(this.value===!1)return this.bell();this.value=!1,this.render()}activate(){if(this.value===!0)return this.bell();this.value=!0,this.render()}delete(){this.deactivate()}left(){this.deactivate()}right(){this.activate()}down(){this.deactivate()}up(){this.activate()}next(){this.value=!this.value,this.fire(),this.render()}_(t,s){if(t===" ")this.value=!this.value;else if(t==="1")this.value=!0;else if(t==="0")this.value=!1;else return this.bell();this.render()}render(){this.closed||(this.firstRender?this.out.write(ue.hide):this.out.write(mi(this.outputText,this.out.columns)),super.render(),this.outputText=[ae.symbol(this.done,this.aborted),nt.bold(this.msg),ae.delimiter(this.done),this.value?this.inactive:nt.cyan().underline(this.inactive),nt.gray("/"),this.value?nt.cyan().underline(this.active):this.active].join(" "),this.out.write(gi.line+ue.to(0)+this.outputText))}}var bi=vi;let wi=class Lt{constructor({token:t,date:s,parts:i,locales:n}){this.token=t,this.date=s||new Date,this.parts=i||[this],this.locales=n||{}}up(){}down(){}next(){const t=this.parts.indexOf(this);return this.parts.find((s,i)=>i>t&&s instanceof Lt)}setTo(t){}prev(){let t=[].concat(this.parts).reverse();const s=t.indexOf(this);return t.find((i,n)=>n>s&&i instanceof Lt)}toString(){return String(this.date)}};var j=wi;const yi=j;let $i=class extends yi{constructor(t={}){super(t)}up(){this.date.setHours((this.date.getHours()+12)%24)}down(){this.up()}toString(){let t=this.date.getHours()>12?"pm":"am";return/\A/.test(this.token)?t.toUpperCase():t}};var xi=$i;const Si=j,Ei=e=>(e=e%10,e===1?"st":e===2?"nd":e===3?"rd":"th");let Oi=class extends Si{constructor(t={}){super(t)}up(){this.date.setDate(this.date.getDate()+1)}down(){this.date.setDate(this.date.getDate()-1)}setTo(t){this.date.setDate(parseInt(t.substr(-2)))}toString(){let t=this.date.getDate(),s=this.date.getDay();return this.token==="DD"?String(t).padStart(2,"0"):this.token==="Do"?t+Ei(t):this.token==="d"?s+1:this.token==="ddd"?this.locales.weekdaysShort[s]:this.token==="dddd"?this.locales.weekdays[s]:t}};var Ti=Oi;const Ci=j;let Mi=class extends Ci{constructor(t={}){super(t)}up(){this.date.setHours(this.date.getHours()+1)}down(){this.date.setHours(this.date.getHours()-1)}setTo(t){this.date.setHours(parseInt(t.substr(-2)))}toString(){let t=this.date.getHours();return/h/.test(this.token)&&(t=t%12||12),this.token.length>1?String(t).padStart(2,"0"):t}};var Pi=Mi;const Di=j;let _i=class extends Di{constructor(t={}){super(t)}up(){this.date.setMilliseconds(this.date.getMilliseconds()+1)}down(){this.date.setMilliseconds(this.date.getMilliseconds()-1)}setTo(t){this.date.setMilliseconds(parseInt(t.substr(-this.token.length)))}toString(){return String(this.date.getMilliseconds()).padStart(4,"0").substr(0,this.token.length)}};var Ii=_i;const Ri=j;let Ai=class extends Ri{constructor(t={}){super(t)}up(){this.date.setMinutes(this.date.getMinutes()+1)}down(){this.date.setMinutes(this.date.getMinutes()-1)}setTo(t){this.date.setMinutes(parseInt(t.substr(-2)))}toString(){let t=this.date.getMinutes();return this.token.length>1?String(t).padStart(2,"0"):t}};var ji=Ai;const Ni=j;let Fi=class extends Ni{constructor(t={}){super(t)}up(){this.date.setMonth(this.date.getMonth()+1)}down(){this.date.setMonth(this.date.getMonth()-1)}setTo(t){t=parseInt(t.substr(-2))-1,this.date.setMonth(t<0?0:t)}toString(){let t=this.date.getMonth(),s=this.token.length;return s===2?String(t+1).padStart(2,"0"):s===3?this.locales.monthsShort[t]:s===4?this.locales.months[t]:String(t+1)}};var Li=Fi;const Hi=j;let Yi=class extends Hi{constructor(t={}){super(t)}up(){this.date.setSeconds(this.date.getSeconds()+1)}down(){this.date.setSeconds(this.date.getSeconds()-1)}setTo(t){this.date.setSeconds(parseInt(t.substr(-2)))}toString(){let t=this.date.getSeconds();return this.token.length>1?String(t).padStart(2,"0"):t}};var Vi=Yi;const Bi=j;let ki=class extends Bi{constructor(t={}){super(t)}up(){this.date.setFullYear(this.date.getFullYear()+1)}down(){this.date.setFullYear(this.date.getFullYear()-1)}setTo(t){this.date.setFullYear(t.substr(-4))}toString(){let t=String(this.date.getFullYear()).padStart(4,"0");return this.token.length===2?t.substr(-2):t}};var Wi=ki,zi={DatePart:j,Meridiem:xi,Day:Ti,Hours:Pi,Milliseconds:Ii,Minutes:ji,Month:Li,Seconds:Vi,Year:Wi};const Mt=D,Ui=F,{style:ce,clear:de,figures:Gi}=I,{erase:Ji,cursor:fe}=_,{DatePart:pe,Meridiem:Ki,Day:qi,Hours:Zi,Milliseconds:Xi,Minutes:Qi,Month:tr,Seconds:er,Year:sr}=zi,ir=/\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g,me={1:({token:e})=>e.replace(/\\(.)/g,"$1"),2:e=>new qi(e),3:e=>new tr(e),4:e=>new sr(e),5:e=>new Ki(e),6:e=>new Zi(e),7:e=>new Qi(e),8:e=>new er(e),9:e=>new Xi(e)},rr={months:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),monthsShort:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),weekdays:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),weekdaysShort:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",")};class nr extends Ui{constructor(t={}){super(t),this.msg=t.message,this.cursor=0,this.typed="",this.locales=Object.assign(rr,t.locales),this._date=t.initial||new Date,this.errorMsg=t.error||"Please Enter A Valid Value",this.validator=t.validate||(()=>!0),this.mask=t.mask||"YYYY-MM-DD HH:mm:ss",this.clear=de("",this.out.columns),this.render()}get value(){return this.date}get date(){return this._date}set date(t){t&&this._date.setTime(t.getTime())}set mask(t){let s;for(this.parts=[];s=ir.exec(t);){let n=s.shift(),o=s.findIndex(r=>r!=null);this.parts.push(o in me?me[o]({token:s[o]||n,date:this.date,parts:this.parts,locales:this.locales}):s[o]||n)}let i=this.parts.reduce((n,o)=>(typeof o=="string"&&typeof n[n.length-1]=="string"?n[n.length-1]+=o:n.push(o),n),[]);this.parts.splice(0),this.parts.push(...i),this.reset()}moveCursor(t){this.typed="",this.cursor=t,this.fire()}reset(){this.moveCursor(this.parts.findIndex(t=>t instanceof pe)),this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.error=!1,this.fire(),this.render(),this.out.write(`
`),this.close()}async validate(){let t=await this.validator(this.value);typeof t=="string"&&(this.errorMsg=t,t=!1),this.error=!t}async submit(){if(await this.validate(),this.error){this.color="red",this.fire(),this.render();return}this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
`),this.close()}up(){this.typed="",this.parts[this.cursor].up(),this.render()}down(){this.typed="",this.parts[this.cursor].down(),this.render()}left(){let t=this.parts[this.cursor].prev();if(t==null)return this.bell();this.moveCursor(this.parts.indexOf(t)),this.render()}right(){let t=this.parts[this.cursor].next();if(t==null)return this.bell();this.moveCursor(this.parts.indexOf(t)),this.render()}next(){let t=this.parts[this.cursor].next();this.moveCursor(t?this.parts.indexOf(t):this.parts.findIndex(s=>s instanceof pe)),this.render()}_(t){/\d/.test(t)&&(this.typed+=t,this.parts[this.cursor].setTo(this.typed),this.render())}render(){this.closed||(this.firstRender?this.out.write(fe.hide):this.out.write(de(this.outputText,this.out.columns)),super.render(),this.outputText=[ce.symbol(this.done,this.aborted),Mt.bold(this.msg),ce.delimiter(!1),this.parts.reduce((t,s,i)=>t.concat(i===this.cursor&&!this.done?Mt.cyan().underline(s.toString()):s),[]).join("")].join(" "),this.error&&(this.outputText+=this.errorMsg.split(`
`).reduce((t,s,i)=>t+`
${i?" ":Gi.pointerSmall} ${Mt.red().italic(s)}`,"")),this.out.write(Ji.line+fe.to(0)+this.outputText))}}var or=nr;const ot=D,lr=F,{cursor:lt,erase:hr}=_,{style:Pt,figures:ar,clear:ge,lines:ur}=I,cr=/[0-9]/,Dt=e=>e!==void 0,ve=(e,t)=>{let s=Math.pow(10,t);return Math.round(e*s)/s};class dr extends lr{constructor(t={}){super(t),this.transform=Pt.render(t.style),this.msg=t.message,this.initial=Dt(t.initial)?t.initial:"",this.float=!!t.float,this.round=t.round||2,this.inc=t.increment||1,this.min=Dt(t.min)?t.min:-1/0,this.max=Dt(t.max)?t.max:1/0,this.errorMsg=t.error||"Please Enter A Valid Value",this.validator=t.validate||(()=>!0),this.color="cyan",this.value="",this.typed="",this.lastHit=0,this.render()}set value(t){!t&&t!==0?(this.placeholder=!0,this.rendered=ot.gray(this.transform.render(`${this.initial}`)),this._value=""):(this.placeholder=!1,this.rendered=this.transform.render(`${ve(t,this.round)}`),this._value=ve(t,this.round)),this.fire()}get value(){return this._value}parse(t){return this.float?parseFloat(t):parseInt(t)}valid(t){return t==="-"||t==="."&&this.float||cr.test(t)}reset(){this.typed="",this.value="",this.fire(),this.render()}exit(){this.abort()}abort(){let t=this.value;this.value=t!==""?t:this.initial,this.done=this.aborted=!0,this.error=!1,this.fire(),this.render(),this.out.write(`
`),this.close()}async validate(){let t=await this.validator(this.value);typeof t=="string"&&(this.errorMsg=t,t=!1),this.error=!t}async submit(){if(await this.validate(),this.error){this.color="red",this.fire(),this.render();return}let t=this.value;this.value=t!==""?t:this.initial,this.done=!0,this.aborted=!1,this.error=!1,this.fire(),this.render(),this.out.write(`
`),this.close()}up(){if(this.typed="",this.value===""&&(this.value=this.min-this.inc),this.value>=this.max)return this.bell();this.value+=this.inc,this.color="cyan",this.fire(),this.render()}down(){if(this.typed="",this.value===""&&(this.value=this.min+this.inc),this.value<=this.min)return this.bell();this.value-=this.inc,this.color="cyan",this.fire(),this.render()}delete(){let t=this.value.toString();if(t.length===0)return this.bell();this.value=this.parse(t=t.slice(0,-1))||"",this.value!==""&&this.value<this.min&&(this.value=this.min),this.color="cyan",this.fire(),this.render()}next(){this.value=this.initial,this.fire(),this.render()}_(t,s){if(!this.valid(t))return this.bell();const i=Date.now();if(i-this.lastHit>1e3&&(this.typed=""),this.typed+=t,this.lastHit=i,this.color="cyan",t===".")return this.fire();this.value=Math.min(this.parse(this.typed),this.max),this.value>this.max&&(this.value=this.max),this.value<this.min&&(this.value=this.min),this.fire(),this.render()}render(){this.closed||(this.firstRender||(this.outputError&&this.out.write(lt.down(ur(this.outputError,this.out.columns)-1)+ge(this.outputError,this.out.columns)),this.out.write(ge(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[Pt.symbol(this.done,this.aborted),ot.bold(this.msg),Pt.delimiter(this.done),!this.done||!this.done&&!this.placeholder?ot[this.color]().underline(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
`).reduce((t,s,i)=>t+`
${i?" ":ar.pointerSmall} ${ot.red().italic(s)}`,"")),this.out.write(hr.line+lt.to(0)+this.outputText+lt.save+this.outputError+lt.restore))}}var fr=dr;const R=D,{cursor:pr}=_,mr=F,{clear:be,figures:L,style:we,wrap:gr,entriesToDisplay:vr}=I;let br=class extends mr{constructor(t={}){super(t),this.msg=t.message,this.cursor=t.cursor||0,this.scrollIndex=t.cursor||0,this.hint=t.hint||"",this.warn=t.warn||"- This option is disabled -",this.minSelected=t.min,this.showMinError=!1,this.maxChoices=t.max,this.instructions=t.instructions,this.optionsPerPage=t.optionsPerPage||10,this.value=t.choices.map((s,i)=>(typeof s=="string"&&(s={title:s,value:i}),{title:s&&(s.title||s.value||s),description:s&&s.description,value:s&&(s.value===void 0?i:s.value),selected:s&&s.selected,disabled:s&&s.disabled})),this.clear=be("",this.out.columns),t.overrideRender||this.render()}reset(){this.value.map(t=>!t.selected),this.cursor=0,this.fire(),this.render()}selected(){return this.value.filter(t=>t.selected)}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
`),this.close()}submit(){const t=this.value.filter(s=>s.selected);this.minSelected&&t.length<this.minSelected?(this.showMinError=!0,this.render()):(this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
`),this.close())}first(){this.cursor=0,this.render()}last(){this.cursor=this.value.length-1,this.render()}next(){this.cursor=(this.cursor+1)%this.value.length,this.render()}up(){this.cursor===0?this.cursor=this.value.length-1:this.cursor--,this.render()}down(){this.cursor===this.value.length-1?this.cursor=0:this.cursor++,this.render()}left(){this.value[this.cursor].selected=!1,this.render()}right(){if(this.value.filter(t=>t.selected).length>=this.maxChoices)return this.bell();this.value[this.cursor].selected=!0,this.render()}handleSpaceToggle(){const t=this.value[this.cursor];if(t.selected)t.selected=!1,this.render();else{if(t.disabled||this.value.filter(s=>s.selected).length>=this.maxChoices)return this.bell();t.selected=!0,this.render()}}toggleAll(){if(this.maxChoices!==void 0||this.value[this.cursor].disabled)return this.bell();const t=!this.value[this.cursor].selected;this.value.filter(s=>!s.disabled).forEach(s=>s.selected=t),this.render()}_(t,s){if(t===" ")this.handleSpaceToggle();else if(t==="a")this.toggleAll();else return this.bell()}renderInstructions(){return this.instructions===void 0||this.instructions?typeof this.instructions=="string"?this.instructions:`
Instructions:
${L.arrowUp}/${L.arrowDown}: Highlight option
${L.arrowLeft}/${L.arrowRight}/[space]: Toggle selection
`+(this.maxChoices===void 0?` a: Toggle all
`:"")+" enter/return: Complete answer":""}renderOption(t,s,i,n){const o=(s.selected?R.green(L.radioOn):L.radioOff)+" "+n+" ";let r,l;return s.disabled?r=t===i?R.gray().underline(s.title):R.strikethrough().gray(s.title):(r=t===i?R.cyan().underline(s.title):s.title,t===i&&s.description&&(l=` - ${s.description}`,(o.length+r.length+l.length>=this.out.columns||s.description.split(/\r?\n/).length>1)&&(l=`
`+gr(s.description,{margin:o.length,width:this.out.columns})))),o+r+R.gray(l||"")}paginateOptions(t){if(t.length===0)return R.red("No matches for this query.");let{startIndex:s,endIndex:i}=vr(this.cursor,t.length,this.optionsPerPage),n,o=[];for(let r=s;r<i;r++)r===s&&s>0?n=L.arrowUp:r===i-1&&i<t.length?n=L.arrowDown:n=" ",o.push(this.renderOption(this.cursor,t[r],r,n));return`
`+o.join(`
`)}renderOptions(t){return this.done?"":this.paginateOptions(t)}renderDoneOrInstructions(){if(this.done)return this.value.filter(s=>s.selected).map(s=>s.title).join(", ");const t=[R.gray(this.hint),this.renderInstructions()];return this.value[this.cursor].disabled&&t.push(R.yellow(this.warn)),t.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(pr.hide),super.render();let t=[we.symbol(this.done,this.aborted),R.bold(this.msg),we.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(t+=R.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=!1),t+=this.renderOptions(this.value),this.out.write(this.clear+t),this.clear=be(t,this.out.columns)}};var ye=br;const X=D,wr=F,{erase:yr,cursor:$e}=_,{style:_t,clear:xe,figures:It,wrap:$r,entriesToDisplay:xr}=I,Se=(e,t)=>e[t]&&(e[t].value||e[t].title||e[t]),Sr=(e,t)=>e[t]&&(e[t].title||e[t].value||e[t]),Er=(e,t)=>{const s=e.findIndex(i=>i.value===t||i.title===t);return s>-1?s:void 0};class Or extends wr{constructor(t={}){super(t),this.msg=t.message,this.suggest=t.suggest,this.choices=t.choices,this.initial=typeof t.initial=="number"?t.initial:Er(t.choices,t.initial),this.select=this.initial||t.cursor||0,this.i18n={noMatches:t.noMatches||"no matches found"},this.fallback=t.fallback||this.initial,this.clearFirst=t.clearFirst||!1,this.suggestions=[],this.input="",this.limit=t.limit||10,this.cursor=0,this.transform=_t.render(t.style),this.scale=this.transform.scale,this.render=this.render.bind(this),this.complete=this.complete.bind(this),this.clear=xe("",this.out.columns),this.complete(this.render),this.render()}set fallback(t){this._fb=Number.isSafeInteger(parseInt(t))?parseInt(t):t}get fallback(){let t;return typeof this._fb=="number"?t=this.choices[this._fb]:typeof this._fb=="string"&&(t={title:this._fb}),t||this._fb||{title:this.i18n.noMatches}}moveSelect(t){this.select=t,this.suggestions.length>0?this.value=Se(this.suggestions,t):this.value=this.fallback.value,this.fire()}async complete(t){const s=this.completing=this.suggest(this.input,this.choices),i=await s;if(this.completing!==s)return;this.suggestions=i.map((o,r,l)=>({title:Sr(l,r),value:Se(l,r),description:o.description})),this.completing=!1;const n=Math.max(i.length-1,0);this.moveSelect(Math.min(n,this.select)),t&&t()}reset(){this.input="",this.complete(()=>{this.moveSelect(this.initial!==void 0?this.initial:0),this.render()}),this.render()}exit(){this.clearFirst&&this.input.length>0?this.reset():(this.done=this.exited=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
`),this.close())}abort(){this.done=this.aborted=!0,this.exited=!1,this.fire(),this.render(),this.out.write(`
`),this.close()}submit(){this.done=!0,this.aborted=this.exited=!1,this.fire(),this.render(),this.out.write(`
`),this.close()}_(t,s){let i=this.input.slice(0,this.cursor),n=this.input.slice(this.cursor);this.input=`${i}${t}${n}`,this.cursor=i.length+1,this.complete(this.render),this.render()}delete(){if(this.cursor===0)return this.bell();let t=this.input.slice(0,this.cursor-1),s=this.input.slice(this.cursor);this.input=`${t}${s}`,this.complete(this.render),this.cursor=this.cursor-1,this.render()}deleteForward(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();let t=this.input.slice(0,this.cursor),s=this.input.slice(this.cursor+1);this.input=`${t}${s}`,this.complete(this.render),this.render()}first(){this.moveSelect(0),this.render()}last(){this.moveSelect(this.suggestions.length-1),this.render()}up(){this.select===0?this.moveSelect(this.suggestions.length-1):this.moveSelect(this.select-1),this.render()}down(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render()}next(){this.select===this.suggestions.length-1?this.moveSelect(0):this.moveSelect(this.select+1),this.render()}nextPage(){this.moveSelect(Math.min(this.select+this.limit,this.suggestions.length-1)),this.render()}prevPage(){this.moveSelect(Math.max(this.select-this.limit,0)),this.render()}left(){if(this.cursor<=0)return this.bell();this.cursor=this.cursor-1,this.render()}right(){if(this.cursor*this.scale>=this.rendered.length)return this.bell();this.cursor=this.cursor+1,this.render()}renderOption(t,s,i,n){let o,r=i?It.arrowUp:n?It.arrowDown:" ",l=s?X.cyan().underline(t.title):t.title;return r=(s?X.cyan(It.pointer)+" ":" ")+r,t.description&&(o=` - ${t.description}`,(r.length+l.length+o.length>=this.out.columns||t.description.split(/\r?\n/).length>1)&&(o=`
`+$r(t.description,{margin:3,width:this.out.columns}))),r+" "+l+X.gray(o||"")}render(){if(this.closed)return;this.firstRender?this.out.write($e.hide):this.out.write(xe(this.outputText,this.out.columns)),super.render();let{startIndex:t,endIndex:s}=xr(this.select,this.choices.length,this.limit);if(this.outputText=[_t.symbol(this.done,this.aborted,this.exited),X.bold(this.msg),_t.delimiter(this.completing),this.done&&this.suggestions[this.select]?this.suggestions[this.select].title:this.rendered=this.transform.render(this.input)].join(" "),!this.done){const i=this.suggestions.slice(t,s).map((n,o)=>this.renderOption(n,this.select===o+t,o===0&&t>0,o+t===s-1&&s<this.choices.length)).join(`
`);this.outputText+=`
`+(i||X.gray(this.fallback.title))}this.out.write(yr.line+$e.to(0)+this.outputText)}}var Tr=Or;const N=D,{cursor:Cr}=_,Mr=ye,{clear:Ee,style:Oe,figures:G}=I;class Pr extends Mr{constructor(t={}){t.overrideRender=!0,super(t),this.inputValue="",this.clear=Ee("",this.out.columns),this.filteredOptions=this.value,this.render()}last(){this.cursor=this.filteredOptions.length-1,this.render()}next(){this.cursor=(this.cursor+1)%this.filteredOptions.length,this.render()}up(){this.cursor===0?this.cursor=this.filteredOptions.length-1:this.cursor--,this.render()}down(){this.cursor===this.filteredOptions.length-1?this.cursor=0:this.cursor++,this.render()}left(){this.filteredOptions[this.cursor].selected=!1,this.render()}right(){if(this.value.filter(t=>t.selected).length>=this.maxChoices)return this.bell();this.filteredOptions[this.cursor].selected=!0,this.render()}delete(){this.inputValue.length&&(this.inputValue=this.inputValue.substr(0,this.inputValue.length-1),this.updateFilteredOptions())}updateFilteredOptions(){const t=this.filteredOptions[this.cursor];this.filteredOptions=this.value.filter(i=>this.inputValue?!!(typeof i.title=="string"&&i.title.toLowerCase().includes(this.inputValue.toLowerCase())||typeof i.value=="string"&&i.value.toLowerCase().includes(this.inputValue.toLowerCase())):!0);const s=this.filteredOptions.findIndex(i=>i===t);this.cursor=s<0?0:s,this.render()}handleSpaceToggle(){const t=this.filteredOptions[this.cursor];if(t.selected)t.selected=!1,this.render();else{if(t.disabled||this.value.filter(s=>s.selected).length>=this.maxChoices)return this.bell();t.selected=!0,this.render()}}handleInputChange(t){this.inputValue=this.inputValue+t,this.updateFilteredOptions()}_(t,s){t===" "?this.handleSpaceToggle():this.handleInputChange(t)}renderInstructions(){return this.instructions===void 0||this.instructions?typeof this.instructions=="string"?this.instructions:`
Instructions:
${G.arrowUp}/${G.arrowDown}: Highlight option
${G.arrowLeft}/${G.arrowRight}/[space]: Toggle selection
[a,b,c]/delete: Filter choices
enter/return: Complete answer
`:""}renderCurrentInput(){return`
Filtered results for: ${this.inputValue?this.inputValue:N.gray("Enter something to filter")}
`}renderOption(t,s,i){let n;return s.disabled?n=t===i?N.gray().underline(s.title):N.strikethrough().gray(s.title):n=t===i?N.cyan().underline(s.title):s.title,(s.selected?N.green(G.radioOn):G.radioOff)+" "+n}renderDoneOrInstructions(){if(this.done)return this.value.filter(s=>s.selected).map(s=>s.title).join(", ");const t=[N.gray(this.hint),this.renderInstructions(),this.renderCurrentInput()];return this.filteredOptions.length&&this.filteredOptions[this.cursor].disabled&&t.push(N.yellow(this.warn)),t.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(Cr.hide),super.render();let t=[Oe.symbol(this.done,this.aborted),N.bold(this.msg),Oe.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(t+=N.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=!1),t+=this.renderOptions(this.filteredOptions),this.out.write(this.clear+t),this.clear=Ee(t,this.out.columns)}}var Dr=Pr;const Te=D,_r=F,{style:Ce,clear:Ir}=I,{erase:Rr,cursor:Me}=_;class Ar extends _r{constructor(t={}){super(t),this.msg=t.message,this.value=t.initial,this.initialValue=!!t.initial,this.yesMsg=t.yes||"yes",this.yesOption=t.yesOption||"(Y/n)",this.noMsg=t.no||"no",this.noOption=t.noOption||"(y/N)",this.render()}reset(){this.value=this.initialValue,this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
`),this.close()}submit(){this.value=this.value||!1,this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
`),this.close()}_(t,s){return t.toLowerCase()==="y"?(this.value=!0,this.submit()):t.toLowerCase()==="n"?(this.value=!1,this.submit()):this.bell()}render(){this.closed||(this.firstRender?this.out.write(Me.hide):this.out.write(Ir(this.outputText,this.out.columns)),super.render(),this.outputText=[Ce.symbol(this.done,this.aborted),Te.bold(this.msg),Ce.delimiter(this.done),this.done?this.value?this.yesMsg:this.noMsg:Te.gray(this.initialValue?this.yesOption:this.noOption)].join(" "),this.out.write(Rr.line+Me.to(0)+this.outputText))}}var jr=Ar,Nr={TextPrompt:li,SelectPrompt:fi,TogglePrompt:bi,DatePrompt:or,NumberPrompt:fr,MultiselectPrompt:ye,AutocompletePrompt:Tr,AutocompleteMultiselectPrompt:Dr,ConfirmPrompt:jr};(function(e){const t=e,s=Nr,i=r=>r;function n(r,l,d={}){return new Promise((h,b)=>{const p=new s[r](l),a=d.onAbort||i,u=d.onSubmit||i,g=d.onExit||i;p.on("state",l.onState||i),p.on("submit",x=>h(u(x))),p.on("exit",x=>h(g(x))),p.on("abort",x=>b(a(x)))})}t.text=r=>n("TextPrompt",r),t.password=r=>(r.style="password",t.text(r)),t.invisible=r=>(r.style="invisible",t.text(r)),t.number=r=>n("NumberPrompt",r),t.date=r=>n("DatePrompt",r),t.confirm=r=>n("ConfirmPrompt",r),t.list=r=>{const l=r.separator||",";return n("TextPrompt",r,{onSubmit:d=>d.split(l).map(h=>h.trim())})},t.toggle=r=>n("TogglePrompt",r),t.select=r=>n("SelectPrompt",r),t.multiselect=r=>{r.choices=[].concat(r.choices||[]);const l=d=>d.filter(h=>h.selected).map(h=>h.value);return n("MultiselectPrompt",r,{onAbort:l,onSubmit:l})},t.autocompleteMultiselect=r=>{r.choices=[].concat(r.choices||[]);const l=d=>d.filter(h=>h.selected).map(h=>h.value);return n("AutocompleteMultiselectPrompt",r,{onAbort:l,onSubmit:l})};const o=(r,l)=>Promise.resolve(l.filter(d=>d.title.slice(0,r.length).toLowerCase()===r.toLowerCase()));t.autocomplete=r=>(r.suggest=r.suggest||o,r.choices=[].concat(r.choices||[]),n("AutocompletePrompt",r))})(se);const Rt=se,Fr=["suggest","format","onState","validate","onRender","type"],Pe=()=>{};async function H(e=[],{onSubmit:t=Pe,onCancel:s=Pe}={}){const i={},n=H._override||{};e=[].concat(e);let o,r,l,d,h,b;const p=async(a,u,g=!1)=>{if(!(!g&&a.validate&&a.validate(u)!==!0))return a.format?await a.format(u,i):u};for(r of e)if({name:d,type:h}=r,typeof h=="function"&&(h=await h(o,{...i},r),r.type=h),!!h){for(let a in r){if(Fr.includes(a))continue;let u=r[a];r[a]=typeof u=="function"?await u(o,{...i},b):u}if(b=r,typeof r.message!="string")throw new Error("prompt message is required");if({name:d,type:h}=r,Rt[h]===void 0)throw new Error(`prompt type (${h}) is not defined`);if(n[r.name]!==void 0&&(o=await p(r,n[r.name]),o!==void 0)){i[d]=o;continue}try{o=H._injected?Lr(H._injected,r.initial):await Rt[h](r),i[d]=o=await p(r,o,!0),l=await t(r,o,i)}catch{l=!await s(r,i)}if(l)return i}return i}function Lr(e,t){const s=e.shift();if(s instanceof Error)throw s;return s===void 0?t:s}function Hr(e){H._injected=(H._injected||[]).concat(e)}function Yr(e){H._override=Object.assign({},e)}var Vr=Object.assign(H,{prompt:H,prompts:Rt,inject:Hr,override:Yr});const Br=ut(Vr);let B=!0;const J=typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{};let Q=0;if(J.process&&J.process.env&&J.process.stdout){const{FORCE_COLOR:e,NODE_DISABLE_COLORS:t,NO_COLOR:s,TERM:i,COLORTERM:n}=J.process.env;t||s||e==="0"?B=!1:e==="1"||e==="2"||e==="3"?B=!0:i==="dumb"?B=!1:"CI"in J.process.env&&["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(o=>o in J.process.env)?B=!0:B=process.stdout.isTTY,B&&(process.platform==="win32"||n&&(n==="truecolor"||n==="24bit")?Q=3:i&&(i.endsWith("-256color")||i.endsWith("256"))?Q=2:Q=1)}let De={enabled:B,supportLevel:Q};function tt(e,t,s=1){const i=`\x1B[${e}m`,n=`\x1B[${t}m`,o=new RegExp(`\\x1b\\[${t}m`,"g");return r=>De.enabled&&De.supportLevel>=s?i+(""+r).replace(o,i)+n:""+r}const et=tt(0,0),_e=tt(31,39),kr=tt(32,39),Ie=tt(34,39),Wr=tt(36,39),At=Ts(process.argv.slice(2),{string:["_"]}),jt=process.cwd(),Nt=[{name:"react",display:"React",color:Wr,variants:[{name:"react-ts",display:"TypeScript",color:Ie}]},{name:"vue",display:"Vue",color:kr,variants:[{name:"vue-ts",display:"TypeScript",color:Ie}]}],Re=Nt.map(e=>e.variants&&e.vari