create-pixi-vn 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs ADDED
@@ -0,0 +1,61 @@
1
+ import Le from"child_process";import at from"path";import ut from"fs";import E from"node:fs";import T from"node:path";import{fileURLToPath as Ye}from"node:url";import He 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 ct(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var W={exports:{}},dt,Yt;function ke(){if(Yt)return dt;Yt=1,dt=i,i.sync=n;var e=ut;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 dt}var ft,Ht;function We(){if(Ht)return ft;Ht=1,ft=t,t.sync=s;var e=ut;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,$=r.uid!==void 0?r.uid:process.getuid&&process.getuid(),f=r.gid!==void 0?r.gid:process.getgid&&process.getgid(),a=parseInt("100",8),c=parseInt("010",8),g=parseInt("001",8),y=a|c,I=l&g||l&c&&h===f||l&a&&d===$||l&y&&$===0;return I}return ft}var st;process.platform==="win32"||Be.TESTING_WINDOWS?st=ke():st=We();var Ue=pt;pt.sync=ze;function pt(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){pt(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 ze(e,t){try{return st.sync(e,t||{})}catch(s){if(t&&t.ignoreErrors||s.code==="EACCES")return!1;throw s}}const U=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",Vt=at,Ge=U?";":":",Bt=Ue,kt=e=>Object.assign(new Error(`not found: ${e}`),{code:"ENOENT"}),Wt=(e,t)=>{const s=t.colon||Ge,i=e.match(/\//)||U&&e.match(/\\/)?[""]:[...U?[process.cwd()]:[],...(t.path||process.env.PATH||"").split(s)],n=U?t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",o=U?n.split(s):[""];return U&&e.indexOf(".")!==-1&&o[0]!==""&&o.unshift(""),{pathEnv:i,pathExt:o,pathExtExe:n}},Ut=(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(($,f)=>{if(h===i.length)return t.all&&r.length?$(r):f(kt(e));const a=i[h],c=/^".*"$/.test(a)?a.slice(1,-1):a,g=Vt.join(c,e),y=!c&&/^\.[\\\/]/.test(e)?e.slice(0,2)+g:g;$(d(y,h,0))}),d=(h,$,f)=>new Promise((a,c)=>{if(f===n.length)return a(l($+1));const g=n[f];Bt(h+g,{pathExt:o},(y,I)=>{if(!y&&I)if(t.all)r.push(h+g);else return a(h+g);return a(d(h,$,f+1))})});return s?l(0).then(h=>s(null,h),s):l(0)},Ke=(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),$=!d&&/^\.[\\\/]/.test(e)?e.slice(0,2)+h:h;for(let f=0;f<i.length;f++){const a=$+i[f];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 Je=Ut;Ut.sync=Ke;var mt={exports:{}};const zt=(e={})=>{const t=e.env||process.env;return(e.platform||process.platform)!=="win32"?"PATH":Object.keys(t).reverse().find(i=>i.toUpperCase()==="PATH")||"Path"};mt.exports=zt,mt.exports.default=zt;var qe=mt.exports;const Gt=at,Ze=Je,Xe=qe;function Kt(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 Kt(e)||Kt(e,!0)}var ts=Qe,gt={};const vt=/([()\][%!^"`<>&|;, *?])/g;function es(e){return e=e.replace(vt,"^$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(vt,"^$1"),t&&(e=e.replace(vt,"^$1")),e}gt.command=es,gt.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 bt=ut,os=ns;function ls(e){const s=Buffer.alloc(150);let i;try{i=bt.openSync(e,"r"),bt.readSync(i,s,0,150,0),bt.closeSync(i)}catch{}return os(s.toString())}var hs=ls;const as=at,Jt=ts,qt=gt,us=hs,cs=process.platform==="win32",ds=/\.(?:com|exe)$/i,fs=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function ps(e){e.file=Jt(e);const t=e.file&&us(e.file);return t?(e.args.unshift(e.file),e.command=t,Jt(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 wt=process.platform==="win32";function $t(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(!wt)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 wt&&e===1&&!t.file?$t(t.original,"spawn"):null}function ws(e,t){return wt&&e===1&&!t.file?$t(t.original,"spawnSync"):null}var $s={hookChildProcess:bs,verifyENOENT:Zt,verifyENOENTSync:ws,notFoundError:$t};const Xt=Le,yt=vs,xt=$s;function Qt(e,t,s){const i=yt(e,t,s),n=Xt.spawn(i.command,i.args,i.options);return xt.hookChildProcess(n,i),n}function ys(e,t,s){const i=yt(e,t,s),n=Xt.spawnSync(i.command,i.args,i.options);return n.error=n.error||xt.verifyENOENTSync(n.status,i),n}W.exports=Qt,W.exports.spawn=Qt,W.exports.sync=ys,W.exports._parse=yt,W.exports._enoent=xt;var xs=W.exports;const Ss=ct(xs);let B=!0;const z=typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{};let J=0;if(z.process&&z.process.env&&z.process.stdout){const{FORCE_COLOR:e,NODE_DISABLE_COLORS:t,NO_COLOR:s,TERM:i,COLORTERM:n}=z.process.env;t||s||e==="0"?B=!1:e==="1"||e==="2"||e==="3"?B=!0:i==="dumb"?B=!1:"CI"in z.process.env&&["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(o=>o in z.process.env)?B=!0:B=process.stdout.isTTY,B&&(process.platform==="win32"||n&&(n==="truecolor"||n==="24bit")?J=3:i&&(i.endsWith("-256color")||i.endsWith("256"))?J=2:J=1)}let te={enabled:B,supportLevel:J};function it(e,t,s=1){const i=`\x1B[${e}m`,n=`\x1B[${t}m`,o=new RegExp(`\\x1b\\[${t}m`,"g");return r=>te.enabled&&te.supportLevel>=s?i+(""+r).replace(o,i)+n:""+r}const q=it(0,0),ee=it(31,39),Es=it(34,39),se=it(36,39);function Os(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 ie(e){return typeof e=="number"||/^0x[0-9a-f]+$/i.test(e)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(e)}function re(e,t){return t==="constructor"&&typeof e[t]=="function"||t==="__proto__"}var Cs=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(u){s.bools[u]=!0});var i={};function n(u){return i[u].some(function(p){return s.bools[p]})}Object.keys(t.alias||{}).forEach(function(u){i[u]=[].concat(t.alias[u]),i[u].forEach(function(p){i[p]=[u].concat(i[u].filter(function(S){return p!==S}))})}),[].concat(t.string).filter(Boolean).forEach(function(u){s.strings[u]=!0,i[u]&&[].concat(i[u]).forEach(function(p){s.strings[p]=!0})});var o=t.default||{},r={_:[]};function l(u,p){return s.allBools&&/^--[^=]+$/.test(p)||s.strings[u]||s.bools[u]||i[u]}function d(u,p,S){for(var m=u,V=0;V<p.length-1;V++){var C=p[V];if(re(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 R=p[p.length-1];re(m,R)||((m===Object.prototype||m===Number.prototype||m===String.prototype)&&(m={}),m===Array.prototype&&(m=[]),m[R]===void 0||s.bools[R]||typeof m[R]=="boolean"?m[R]=S:Array.isArray(m[R])?m[R].push(S):m[R]=[m[R],S])}function h(u,p,S){if(!(S&&s.unknownFn&&!l(u,S)&&s.unknownFn(S)===!1)){var m=!s.strings[u]&&ie(p)?Number(p):p;d(r,u.split("."),m),(i[u]||[]).forEach(function(V){d(r,V.split("."),m)})}}Object.keys(s.bools).forEach(function(u){h(u,o[u]===void 0?!1:o[u])});var $=[];e.indexOf("--")!==-1&&($=e.slice(e.indexOf("--")+1),e=e.slice(0,e.indexOf("--")));for(var f=0;f<e.length;f++){var a=e[f],c,g;if(/^--.+=/.test(a)){var y=a.match(/^--([^=]+)=([\s\S]*)$/);c=y[1];var I=y[2];s.bools[c]&&(I=I!=="false"),h(c,I,a)}else if(/^--no-.+/.test(a))c=a.match(/^--no-(.+)/)[1],h(c,!1,a);else if(/^--.+/.test(a))c=a.match(/^--(.+)/)[1],g=e[f+1],g!==void 0&&!/^(-|--)[^-]/.test(g)&&!s.bools[c]&&!s.allBools&&(!i[c]||!n(c))?(h(c,g,a),f+=1):/^(true|false)$/.test(g)?(h(c,g==="true",a),f+=1):h(c,s.strings[c]?"":!0,a);else if(/^-[^-]+/.test(a)){for(var O=a.slice(1,-1).split(""),H=!1,x=0;x<O.length;x++){if(g=a.slice(x+2),g==="-"){h(O[x],g,a);continue}if(/[A-Za-z]/.test(O[x])&&g[0]==="="){h(O[x],g.slice(1),a),H=!0;break}if(/[A-Za-z]/.test(O[x])&&/-?\d+(\.\d*)?(e-?\d+)?$/.test(g)){h(O[x],g,a),H=!0;break}if(O[x+1]&&O[x+1].match(/\W/)){h(O[x],a.slice(x+2),a),H=!0;break}else h(O[x],s.strings[O[x]]?"":!0,a)}c=a.slice(-1)[0],!H&&c!=="-"&&(e[f+1]&&!/^(-|--)[^-]/.test(e[f+1])&&!s.bools[c]&&(!i[c]||!n(c))?(h(c,e[f+1],a),f+=1):e[f+1]&&/^(true|false)$/.test(e[f+1])?(h(c,e[f+1]==="true",a),f+=1):h(c,s.strings[c]?"":!0,a))}else if((!s.unknownFn||s.unknownFn(a)!==!1)&&r._.push(s.strings._||!ie(a)?a:Number(a)),t.stopEarly){r._.push.apply(r._,e.slice(f+1));break}}return Object.keys(o).forEach(function(u){Os(r,u.split("."))||(d(r,u.split("."),o[u]),(i[u]||[]).forEach(function(p){d(r,p.split("."),o[u])}))}),t["--"]?r["--"]=$.slice():$.forEach(function(u){r._.push(u)}),r};const Ts=ct(Cs);var ne={};const{FORCE_COLOR:Ms,NODE_DISABLE_COLORS:Ps,TERM:Is}=process.env,v={enabled:!Ps&&Is!=="dumb"&&Ms!=="0",reset:b(0,0),bold:b(1,22),dim:b(2,22),italic:b(3,23),underline:b(4,24),inverse:b(7,27),hidden:b(8,28),strikethrough:b(9,29),black:b(30,39),red:b(31,39),green:b(32,39),yellow:b(33,39),blue:b(34,39),magenta:b(35,39),cyan:b(36,39),white:b(37,39),gray:b(90,39),grey:b(90,39),bgBlack:b(40,49),bgRed:b(41,49),bgGreen:b(42,49),bgYellow:b(43,49),bgBlue:b(44,49),bgMagenta:b(45,49),bgCyan:b(46,49),bgWhite:b(47,49)};function oe(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 b(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?oe(this.keys,i+""):i+""):i===void 0?Ds([e],[s]):v.enabled?oe([s],i+""):i+""}}var M=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}},St=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 Et="\x1B",w=`${Et}[`,Rs="\x07",Ot={to(e,t){return t?`${w}${t+1};${e+1}H`:`${w}${e+1}G`},move(e,t){let s="";return e<0?s+=`${w}${-e}D`:e>0&&(s+=`${w}${e}C`),t<0?s+=`${w}${-t}A`:t>0&&(s+=`${w}${t}B`),s},up:(e=1)=>`${w}${e}A`,down:(e=1)=>`${w}${e}B`,forward:(e=1)=>`${w}${e}C`,backward:(e=1)=>`${w}${e}D`,nextLine:(e=1)=>`${w}E`.repeat(e),prevLine:(e=1)=>`${w}F`.repeat(e),left:`${w}G`,hide:`${w}?25l`,show:`${w}?25h`,save:`${Et}7`,restore:`${Et}8`},As={up:(e=1)=>`${w}S`.repeat(e),down:(e=1)=>`${w}T`.repeat(e)},js={screen:`${w}2J`,up:(e=1)=>`${w}1J`.repeat(e),down:(e=1)=>`${w}J`.repeat(e),line:`${w}2K`,lineEnd:`${w}K`,lineStart:`${w}1K`,lines(e){let t="";for(let s=0;s<e;s++)t+=this.line+(s<e-1?Ot.up():"");return e&&(t+=Ot.left),t}};var P={cursor:Ot,scroll:As,erase:js,beep:Rs};const Ns=St,{erase:le,cursor:Fs}=P,Ls=e=>[...Ns(e)].length;var Ys=function(e,t){if(!t)return le.line+Fs.to(0);let s=0;const i=e.split(/\r?\n/);for(let n of i)s+=1+Math.floor(Math.max(Ls(n)-1,0)/t);return le.lines(s)};const Z={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:Z.arrowUp,arrowDown:Z.arrowDown,arrowLeft:Z.arrowLeft,arrowRight:Z.arrowRight,radioOn:"(*)",radioOff:"( )",tick:"\u221A",cross:"\xD7",ellipsis:"...",pointerSmall:"\xBB",line:"\u2500",pointer:">"},Vs=process.platform==="win32"?Hs:Z;var he=Vs;const G=M,k=he,Ct=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}`}}),Bs=e=>Ct[e]||Ct.default,X=Object.freeze({aborted:G.red(k.cross),done:G.green(k.tick),exited:G.yellow(k.cross),default:G.cyan("?")}),ks=(e,t,s)=>t?X.aborted:s?X.exited:e?X.done:X.default,Ws=e=>G.gray(e?k.ellipsis:k.pointerSmall),Us=(e,t)=>G.gray(e?t?k.pointerSmall:"+":k.line);var zs={styles:Ct,render:Bs,symbols:X,symbol:ks,delimiter:Ws,item:Us};const Gs=St;var Ks=function(e,t){let s=String(Gs(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(`
2
+ `)).join(`
3
+ `)},qs=(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}},D={action:_s,clear:Ys,style:zs,strip:St,figures:he,lines:Ks,wrap:Js,entriesToDisplay:qs};const ae=He,{action:Zs}=D,Xs=Ve,{beep:Qs,cursor:ti}=P,ei=M;let si=class extends Xs{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=ae.createInterface({input:this.in,escapeCodeTimeout:50});ae.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=Zs(r,i);l===!1?this._&&this._(o,r):typeof this[l]=="function"?this[l](r):this.bell()};this.close=()=>{this.out.write(ti.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(Qs)}render(){this.onRender(ei),this.firstRender&&(this.firstRender=!1)}};var F=si;const rt=M,ii=F,{erase:ri,cursor:Q}=P,{style:Tt,clear:Mt,lines:ni,figures:oi}=D;class li extends ii{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=Mt("",this.out.columns),this.render()}set value(t){!t&&this.initial?(this.placeholder=!0,this.rendered=rt.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(`
4
+ `),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(`
5
+ `),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(Q.down(ni(this.outputError,this.out.columns)-1)+Mt(this.outputError,this.out.columns)),this.out.write(Mt(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[Tt.symbol(this.done,this.aborted),rt.bold(this.msg),Tt.delimiter(this.done),this.red?rt.red(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
6
+ `).reduce((t,s,i)=>t+`
7
+ ${i?" ":oi.pointerSmall} ${rt.red().italic(s)}`,"")),this.out.write(ri.line+Q.to(0)+this.outputText+Q.save+this.outputError+Q.restore+Q.move(this.cursorOffset,0)))}}var hi=li;const A=M,ai=F,{style:ue,clear:ce,figures:nt,wrap:ui,entriesToDisplay:ci}=D,{cursor:di}=P;class fi extends ai{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=ce("",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(`
8
+ `),this.close()}submit(){this.selection.disabled?this.bell():(this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
9
+ `),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(di.hide):this.out.write(ce(this.outputText,this.out.columns)),super.render();let{startIndex:t,endIndex:s}=ci(this.cursor,this.choices.length,this.optionsPerPage);if(this.outputText=[ue.symbol(this.done,this.aborted),A.bold(this.msg),ue.delimiter(!1),this.done?this.selection.title:this.selection.disabled?A.yellow(this.warn):A.gray(this.hint)].join(" "),!this.done){this.outputText+=`
10
+ `;for(let i=t;i<s;i++){let n,o,r="",l=this.choices[i];i===t&&t>0?o=nt.arrowUp:i===s-1&&s<this.choices.length?o=nt.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(nt.pointer)+" ":" ")+o):(n=this.cursor===i?A.cyan().underline(l.title):l.title,o=(this.cursor===i?A.cyan(nt.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=`
11
+ `+ui(l.description,{margin:3,width:this.out.columns})))),this.outputText+=`${o} ${n}${A.gray(r)}
12
+ `}}this.out.write(this.outputText)}}var pi=fi;const ot=M,mi=F,{style:de,clear:gi}=D,{cursor:fe,erase:vi}=P;class bi extends mi{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(`
13
+ `),this.close()}submit(){this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
14
+ `),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(fe.hide):this.out.write(gi(this.outputText,this.out.columns)),super.render(),this.outputText=[de.symbol(this.done,this.aborted),ot.bold(this.msg),de.delimiter(this.done),this.value?this.inactive:ot.cyan().underline(this.inactive),ot.gray("/"),this.value?ot.cyan().underline(this.active):this.active].join(" "),this.out.write(vi.line+fe.to(0)+this.outputText))}}var wi=bi;let $i=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=$i;const yi=j;let xi=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 Si=xi;const Ei=j,Oi=e=>(e=e%10,e===1?"st":e===2?"nd":e===3?"rd":"th");let Ci=class extends Ei{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+Oi(t):this.token==="d"?s+1:this.token==="ddd"?this.locales.weekdaysShort[s]:this.token==="dddd"?this.locales.weekdays[s]:t}};var Ti=Ci;const Mi=j;let Pi=class extends Mi{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 Ii=Pi;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 Ri=_i;const Ai=j;let ji=class extends Ai{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 Ni=ji;const Fi=j;let Li=class extends Fi{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 Yi=Li;const Hi=j;let Vi=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 Bi=Vi;const ki=j;let Wi=class extends ki{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 Ui=Wi,zi={DatePart:j,Meridiem:Si,Day:Ti,Hours:Ii,Milliseconds:Ri,Minutes:Ni,Month:Yi,Seconds:Bi,Year:Ui};const Pt=M,Gi=F,{style:pe,clear:me,figures:Ki}=D,{erase:Ji,cursor:ge}=P,{DatePart:ve,Meridiem:qi,Day:Zi,Hours:Xi,Milliseconds:Qi,Minutes:tr,Month:er,Seconds:sr,Year:ir}=zi,rr=/\\(.)|"((?:\\["\\]|[^"])+)"|(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,be={1:({token:e})=>e.replace(/\\(.)/g,"$1"),2:e=>new Zi(e),3:e=>new er(e),4:e=>new ir(e),5:e=>new qi(e),6:e=>new Xi(e),7:e=>new tr(e),8:e=>new sr(e),9:e=>new Qi(e)},nr={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 or extends Gi{constructor(t={}){super(t),this.msg=t.message,this.cursor=0,this.typed="",this.locales=Object.assign(nr,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=me("",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=rr.exec(t);){let n=s.shift(),o=s.findIndex(r=>r!=null);this.parts.push(o in be?be[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 ve)),this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.error=!1,this.fire(),this.render(),this.out.write(`
15
+ `),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(`
16
+ `),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 ve)),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(ge.hide):this.out.write(me(this.outputText,this.out.columns)),super.render(),this.outputText=[pe.symbol(this.done,this.aborted),Pt.bold(this.msg),pe.delimiter(!1),this.parts.reduce((t,s,i)=>t.concat(i===this.cursor&&!this.done?Pt.cyan().underline(s.toString()):s),[]).join("")].join(" "),this.error&&(this.outputText+=this.errorMsg.split(`
17
+ `).reduce((t,s,i)=>t+`
18
+ ${i?" ":Ki.pointerSmall} ${Pt.red().italic(s)}`,"")),this.out.write(Ji.line+ge.to(0)+this.outputText))}}var lr=or;const lt=M,hr=F,{cursor:ht,erase:ar}=P,{style:It,figures:ur,clear:we,lines:cr}=D,dr=/[0-9]/,Dt=e=>e!==void 0,$e=(e,t)=>{let s=Math.pow(10,t);return Math.round(e*s)/s};class fr extends hr{constructor(t={}){super(t),this.transform=It.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=lt.gray(this.transform.render(`${this.initial}`)),this._value=""):(this.placeholder=!1,this.rendered=this.transform.render(`${$e(t,this.round)}`),this._value=$e(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||dr.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(`
19
+ `),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(`
20
+ `),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(ht.down(cr(this.outputError,this.out.columns)-1)+we(this.outputError,this.out.columns)),this.out.write(we(this.outputText,this.out.columns))),super.render(),this.outputError="",this.outputText=[It.symbol(this.done,this.aborted),lt.bold(this.msg),It.delimiter(this.done),!this.done||!this.done&&!this.placeholder?lt[this.color]().underline(this.rendered):this.rendered].join(" "),this.error&&(this.outputError+=this.errorMsg.split(`
21
+ `).reduce((t,s,i)=>t+`
22
+ ${i?" ":ur.pointerSmall} ${lt.red().italic(s)}`,"")),this.out.write(ar.line+ht.to(0)+this.outputText+ht.save+this.outputError+ht.restore))}}var pr=fr;const _=M,{cursor:mr}=P,gr=F,{clear:ye,figures:L,style:xe,wrap:vr,entriesToDisplay:br}=D;let wr=class extends gr{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=ye("",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(`
23
+ `),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(`
24
+ `),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:`
25
+ Instructions:
26
+ ${L.arrowUp}/${L.arrowDown}: Highlight option
27
+ ${L.arrowLeft}/${L.arrowRight}/[space]: Toggle selection
28
+ `+(this.maxChoices===void 0?` a: Toggle all
29
+ `:"")+" enter/return: Complete answer":""}renderOption(t,s,i,n){const o=(s.selected?_.green(L.radioOn):L.radioOff)+" "+n+" ";let r,l;return s.disabled?r=t===i?_.gray().underline(s.title):_.strikethrough().gray(s.title):(r=t===i?_.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=`
30
+ `+vr(s.description,{margin:o.length,width:this.out.columns})))),o+r+_.gray(l||"")}paginateOptions(t){if(t.length===0)return _.red("No matches for this query.");let{startIndex:s,endIndex:i}=br(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`
31
+ `+o.join(`
32
+ `)}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=[_.gray(this.hint),this.renderInstructions()];return this.value[this.cursor].disabled&&t.push(_.yellow(this.warn)),t.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(mr.hide),super.render();let t=[xe.symbol(this.done,this.aborted),_.bold(this.msg),xe.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(t+=_.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=ye(t,this.out.columns)}};var Se=wr;const tt=M,$r=F,{erase:yr,cursor:Ee}=P,{style:_t,clear:Oe,figures:Rt,wrap:xr,entriesToDisplay:Sr}=D,Ce=(e,t)=>e[t]&&(e[t].value||e[t].title||e[t]),Er=(e,t)=>e[t]&&(e[t].title||e[t].value||e[t]),Or=(e,t)=>{const s=e.findIndex(i=>i.value===t||i.title===t);return s>-1?s:void 0};class Cr extends $r{constructor(t={}){super(t),this.msg=t.message,this.suggest=t.suggest,this.choices=t.choices,this.initial=typeof t.initial=="number"?t.initial:Or(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=Oe("",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=Ce(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:Er(l,r),value:Ce(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(`
33
+ `),this.close())}abort(){this.done=this.aborted=!0,this.exited=!1,this.fire(),this.render(),this.out.write(`
34
+ `),this.close()}submit(){this.done=!0,this.aborted=this.exited=!1,this.fire(),this.render(),this.out.write(`
35
+ `),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?Rt.arrowUp:n?Rt.arrowDown:" ",l=s?tt.cyan().underline(t.title):t.title;return r=(s?tt.cyan(Rt.pointer)+" ":" ")+r,t.description&&(o=` - ${t.description}`,(r.length+l.length+o.length>=this.out.columns||t.description.split(/\r?\n/).length>1)&&(o=`
36
+ `+xr(t.description,{margin:3,width:this.out.columns}))),r+" "+l+tt.gray(o||"")}render(){if(this.closed)return;this.firstRender?this.out.write(Ee.hide):this.out.write(Oe(this.outputText,this.out.columns)),super.render();let{startIndex:t,endIndex:s}=Sr(this.select,this.choices.length,this.limit);if(this.outputText=[_t.symbol(this.done,this.aborted,this.exited),tt.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(`
37
+ `);this.outputText+=`
38
+ `+(i||tt.gray(this.fallback.title))}this.out.write(yr.line+Ee.to(0)+this.outputText)}}var Tr=Cr;const N=M,{cursor:Mr}=P,Pr=Se,{clear:Te,style:Me,figures:K}=D;class Ir extends Pr{constructor(t={}){t.overrideRender=!0,super(t),this.inputValue="",this.clear=Te("",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:`
39
+ Instructions:
40
+ ${K.arrowUp}/${K.arrowDown}: Highlight option
41
+ ${K.arrowLeft}/${K.arrowRight}/[space]: Toggle selection
42
+ [a,b,c]/delete: Filter choices
43
+ enter/return: Complete answer
44
+ `:""}renderCurrentInput(){return`
45
+ Filtered results for: ${this.inputValue?this.inputValue:N.gray("Enter something to filter")}
46
+ `}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(K.radioOn):K.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(Mr.hide),super.render();let t=[Me.symbol(this.done,this.aborted),N.bold(this.msg),Me.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=Te(t,this.out.columns)}}var Dr=Ir;const Pe=M,_r=F,{style:Ie,clear:Rr}=D,{erase:Ar,cursor:De}=P;class jr 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(`
47
+ `),this.close()}submit(){this.value=this.value||!1,this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
48
+ `),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(De.hide):this.out.write(Rr(this.outputText,this.out.columns)),super.render(),this.outputText=[Ie.symbol(this.done,this.aborted),Pe.bold(this.msg),Ie.delimiter(this.done),this.done?this.value?this.yesMsg:this.noMsg:Pe.gray(this.initialValue?this.yesOption:this.noOption)].join(" "),this.out.write(Ar.line+De.to(0)+this.outputText))}}var Nr=jr,Fr={TextPrompt:hi,SelectPrompt:pi,TogglePrompt:wi,DatePrompt:lr,NumberPrompt:pr,MultiselectPrompt:Se,AutocompletePrompt:Tr,AutocompleteMultiselectPrompt:Dr,ConfirmPrompt:Nr};(function(e){const t=e,s=Fr,i=r=>r;function n(r,l,d={}){return new Promise((h,$)=>{const f=new s[r](l),a=d.onAbort||i,c=d.onSubmit||i,g=d.onExit||i;f.on("state",l.onState||i),f.on("submit",y=>h(c(y))),f.on("exit",y=>h(g(y))),f.on("abort",y=>$(a(y)))})}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))})(ne);const At=ne,Lr=["suggest","format","onState","validate","onRender","type"],_e=()=>{};async function Y(e=[],{onSubmit:t=_e,onCancel:s=_e}={}){const i={},n=Y._override||{};e=[].concat(e);let o,r,l,d,h,$;const f=async(a,c,g=!1)=>{if(!(!g&&a.validate&&a.validate(c)!==!0))return a.format?await a.format(c,i):c};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(Lr.includes(a))continue;let c=r[a];r[a]=typeof c=="function"?await c(o,{...i},$):c}if($=r,typeof r.message!="string")throw new Error("prompt message is required");if({name:d,type:h}=r,At[h]===void 0)throw new Error(`prompt type (${h}) is not defined`);if(n[r.name]!==void 0&&(o=await f(r,n[r.name]),o!==void 0)){i[d]=o;continue}try{o=Y._injected?Yr(Y._injected,r.initial):await At[h](r),i[d]=o=await f(r,o,!0),l=await t(r,o,i)}catch{l=!await s(r,i)}if(l)return i}return i}function Yr(e,t){const s=e.shift();if(s instanceof Error)throw s;return s===void 0?t:s}function Hr(e){Y._injected=(Y._injected||[]).concat(e)}function Vr(e){Y._override=Object.assign({},e)}var Br=Object.assign(Y,{prompt:Y,prompts:At,inject:Hr,override:Vr});const Re=ct(Br),et=Ts(process.argv.slice(2),{default:{help:!1},alias:{h:"help",t:"template"},string:["_"]}),jt=process.cwd(),kr=`Usage: create-pixi-vn [OPTION]... [DIRECTORY]
49
+
50
+ Create a new Pixi'VN project.
51
+ With no arguments, start the CLI in interactive mode.
52
+
53
+ Options:
54
+ -t, --template NAME use a specific template
55
+
56
+ Available templates:
57
+ ${se("react")}`,Nt=[{name:"react",display:"React",color:se,variants:[{name:"template-react-vite-muijoy",display:"Basic Visual Novel (React + Vite + MUI joy)",color:Es}]}],Ae=Nt.map(e=>e.variants&&e.variants.map(t=>t.name)||[e.name]).reduce((e,t)=>e.concat(t),[]),Wr={},Ft="pixi-vn-project";async function Ur(){const e=je(et._[0]),t=et.template||et.t;if(et.help){console.log(kr);return}let s=e||Ft;const i=()=>s==="."?T.basename(T.resolve()):s;let n;Re.override({overwrite:et.overwrite});try{n=await Re([{type:e?null:"text",name:"projectName",message:q("Project name:"),initial:Ft,onState:u=>{s=je(u.value)||Ft}},{type:()=>!E.existsSync(s)||Kr(s)?null:"select",name:"overwrite",message:()=>(s==="."?"Current directory":`Target directory "${s}"`)+" is not empty. Please choose how to proceed:",initial:0,choices:[{title:"Remove existing files and continue",value:"yes"},{title:"Cancel operation",value:"no"},{title:"Ignore files and continue",value:"ignore"}]},{type:(u,{overwrite:p})=>{if(p==="no")throw new Error(ee("\u2716")+" Operation cancelled");return null},name:"overwriteChecker"},{type:()=>Fe(i())?null:"text",name:"packageName",message:q("Package name:"),initial:()=>zr(i()),validate:u=>Fe(u)||"Invalid package.json name"},{type:t&&Ae.includes(t)?null:"select",name:"framework",message:typeof t=="string"&&!Ae.includes(t)?q(`"${t}" isn't a valid template. Please choose from below: `):q("Select a framework:"),initial:0,choices:Nt.map(u=>{const p=u.color;return{title:p(u.display||u.name),value:u}})},{type:u=>u&&u.variants?"select":null,name:"variant",message:q("Select a variant:"),choices:u=>u.variants.map(p=>{const S=p.color;return{title:S(p.display||p.name),value:p.name}})}],{onCancel:()=>{throw new Error(ee("\u2716")+" Operation cancelled")}})}catch(u){console.log(u.message);return}const{framework:o,overwrite:r,packageName:l,variant:d}=n,h=T.join(jt,s);r==="yes"?Jr(h):E.existsSync(h)||E.mkdirSync(h,{recursive:!0});let $=d||o?.name||t;const f=qr(process.env.npm_config_user_agent),a=f?f.name:"npm",c=a==="yarn"&&f?.version.startsWith("1."),{customCommand:g}=Nt.flatMap(u=>u.variants).find(u=>u.name===$)??{};if(g){const u=g.replace(/^npm create /,()=>a==="bun"?"bun x create-":`${a} create `).replace("@latest",()=>c?"":"@latest").replace(/^npm exec/,()=>a==="pnpm"?"pnpm dlx":a==="yarn"&&!c?"yarn dlx":a==="bun"?"bun x":"npm exec"),[p,...S]=u.split(" "),m=S.map(C=>C.replace("TARGET_DIR",()=>s)),{status:V}=Ss.sync(p,m,{stdio:"inherit"});process.exit(V??0)}console.log(`
58
+ Scaffolding project in ${h}...`);const y=T.resolve(Ye(import.meta.url),"../..",`template-${$}`),I=(u,p)=>{const S=T.join(h,Wr[u]??u);p?E.writeFileSync(S,p):Ne(T.join(y,u),S)},O=E.readdirSync(y);for(const u of O.filter(p=>p!=="package.json"))I(u);const H=JSON.parse(E.readFileSync(T.join(y,"package.json"),"utf-8"));H.name=l||i(),I("package.json",JSON.stringify(H,null,2)+`
59
+ `);const x=T.relative(jt,h);switch(console.log(`
60
+ Done. Now run:
61
+ `),h!==jt&&console.log(` cd ${x.includes(" ")?`"${x}"`:x}`),a){case"yarn":console.log(" yarn"),console.log(" yarn dev");break;default:console.log(` ${a} install`),console.log(` ${a} run dev`);break}console.log()}function je(e){return e?.trim().replace(/\/+$/g,"")}function Ne(e,t){E.statSync(e).isDirectory()?Gr(e,t):E.copyFileSync(e,t)}function Fe(e){return/^(?:@[a-z\d\-*~][a-z\d\-*._~]*\/)?[a-z\d\-~][a-z\d\-._~]*$/.test(e)}function zr(e){return e.trim().toLowerCase().replace(/\s+/g,"-").replace(/^[._]/,"").replace(/[^a-z\d\-~]+/g,"-")}function Gr(e,t){E.mkdirSync(t,{recursive:!0});for(const s of E.readdirSync(e)){const i=T.resolve(e,s),n=T.resolve(t,s);Ne(i,n)}}function Kr(e){const t=E.readdirSync(e);return t.length===0||t.length===1&&t[0]===".git"}function Jr(e){if(E.existsSync(e))for(const t of E.readdirSync(e))t!==".git"&&E.rmSync(T.resolve(e,t),{recursive:!0,force:!0})}function qr(e){if(!e)return;const t=e.split(" ")[0].split("/");return{name:t[0],version:t[1]}}Ur().catch(e=>{console.error(e)});
package/index.js ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+
3
+ import './dist/index.mjs'
package/package.json ADDED
@@ -0,0 +1,43 @@
1
+ {
2
+ "name": "create-pixi-vn",
3
+ "version": "0.1.1",
4
+ "type": "module",
5
+ "license": "GPL-3.0",
6
+ "author": "DRincs-Productions",
7
+ "bin": {
8
+ "create-pixi-vn": "index.js",
9
+ "cva": "index.js"
10
+ },
11
+ "files": [
12
+ "index.js",
13
+ "template-*",
14
+ "dist"
15
+ ],
16
+ "scripts": {
17
+ "dev": "unbuild --stub",
18
+ "build": "unbuild",
19
+ "typecheck": "tsc --noEmit",
20
+ "prepublishOnly": "npm run build"
21
+ },
22
+ "engines": {
23
+ "node": "^18.0.0 || >=20.0.0"
24
+ },
25
+ "repository": {
26
+ "type": "git",
27
+ "url": "git+https://github.com/DRincs-Productions/create-pixi-vn.git"
28
+ },
29
+ "bugs": {
30
+ "url": "https://github.com/DRincs-Productions/pixi-vn/issues"
31
+ },
32
+ "homepage": "https://pixi-vn.web.app/",
33
+ "funding": "https://github.com/DRincs-Productions/pixi-vn?sponsor=1",
34
+ "devDependencies": {
35
+ "@types/minimist": "^1.2.5",
36
+ "@types/prompts": "^2.4.9",
37
+ "cross-spawn": "^7.0.3",
38
+ "kolorist": "^1.8.0",
39
+ "minimist": "^1.2.8",
40
+ "prompts": "^2.4.2",
41
+ "unbuild": "^2.0.0"
42
+ }
43
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "recommendations": [
3
+ "ms-vscode.vscode-typescript-next",
4
+ "dbaeumer.vscode-eslint",
5
+ "ionic.ionic",
6
+ "antiantisepticeye.vscode-color-picker"
7
+ ]
8
+ }