create-pixi-vn 1.9.0 → 1.9.2
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 +67 -50
- package/package.json +4 -4
- package/template-nqtr-react-vite-muijoy/package.json +75 -74
- package/template-nqtr-react-vite-muijoy/src/labels/variousActionsLabels.ts +4 -4
- package/template-nqtr-react-vite-muijoy/src/main.tsx +1 -0
- package/template-nqtr-react-vite-muijoy/vite.config.ts +2 -0
- package/template-nqtr-react-vite-muijoy-ink/README.md +1 -1
- package/template-nqtr-react-vite-muijoy-ink/package.json +4 -3
- package/template-nqtr-react-vite-muijoy-ink/src/ink/variousActionsLabels.ink +4 -4
- package/template-nqtr-react-vite-muijoy-ink/src/labels/variousActionsLabels.ts +2 -2
- package/template-nqtr-react-vite-muijoy-ink/src/main.tsx +1 -0
- package/template-nqtr-react-vite-muijoy-ink/src/utils/ink-utility.ts +5 -21
- package/template-nqtr-react-vite-muijoy-ink/vite.config.ts +2 -0
- package/template-nqtr-react-vite-muijoy-ink-tauri/README.md +1 -1
- package/template-nqtr-react-vite-muijoy-ink-tauri/package.json +4 -3
- package/template-nqtr-react-vite-muijoy-ink-tauri/src/ink/variousActionsLabels.ink +4 -4
- package/template-nqtr-react-vite-muijoy-ink-tauri/src/labels/variousActionsLabels.ts +2 -2
- package/template-nqtr-react-vite-muijoy-ink-tauri/src/main.tsx +1 -0
- package/template-nqtr-react-vite-muijoy-ink-tauri/src/utils/ink-utility.ts +5 -21
- package/template-nqtr-react-vite-muijoy-ink-tauri/vite.config.ts +2 -0
- package/template-nqtr-react-vite-muijoy-tauri/package.json +3 -2
- package/template-nqtr-react-vite-muijoy-tauri/src/labels/variousActionsLabels.ts +4 -4
- package/template-nqtr-react-vite-muijoy-tauri/src/main.tsx +1 -0
- package/template-nqtr-react-vite-muijoy-tauri/vite.config.ts +2 -0
- package/template-react-vite-muijoy/package.json +2 -1
- package/template-react-vite-muijoy/src/labels/animations-labels.ts +2 -2
- package/template-react-vite-muijoy/src/main.tsx +1 -0
- package/template-react-vite-muijoy/vite.config.ts +2 -0
- package/template-react-vite-muijoy-ink/README.md +1 -1
- package/template-react-vite-muijoy-ink/package.json +3 -2
- package/template-react-vite-muijoy-ink/src/labels/animations-labels.ts +2 -2
- package/template-react-vite-muijoy-ink/src/main.tsx +1 -0
- package/template-react-vite-muijoy-ink/src/utils/ink-utility.ts +3 -3
- package/template-react-vite-muijoy-ink/vite.config.ts +2 -0
- package/template-react-vite-muijoy-ink-tauri/README.md +1 -1
- package/template-react-vite-muijoy-ink-tauri/package.json +3 -2
- package/template-react-vite-muijoy-ink-tauri/src/labels/animations-labels.ts +2 -2
- package/template-react-vite-muijoy-ink-tauri/src/main.tsx +1 -0
- package/template-react-vite-muijoy-ink-tauri/src/utils/ink-utility.ts +3 -3
- package/template-react-vite-muijoy-ink-tauri/vite.config.ts +2 -0
- package/template-react-vite-muijoy-tauri/package.json +76 -75
- package/template-react-vite-muijoy-tauri/src/labels/animations-labels.ts +2 -2
- package/template-react-vite-muijoy-tauri/src/main.tsx +1 -0
- package/template-react-vite-muijoy-tauri/vite.config.ts +2 -0
- package/template-story-react-vite-muijoy/package.json +2 -1
- package/template-story-react-vite-muijoy/src/labels/animations-labels.ts +2 -2
- package/template-story-react-vite-muijoy/src/main.tsx +1 -0
- package/template-story-react-vite-muijoy/vite.config.ts +2 -0
- package/template-story-react-vite-muijoy-ink/README.md +1 -1
- package/template-story-react-vite-muijoy-ink/package.json +73 -72
- package/template-story-react-vite-muijoy-ink/src/labels/animations-labels.ts +2 -2
- package/template-story-react-vite-muijoy-ink/src/main.tsx +1 -0
- package/template-story-react-vite-muijoy-ink/src/utils/ink-utility.ts +3 -3
- package/template-story-react-vite-muijoy-ink/vite.config.ts +2 -0
- package/template-story-react-vite-muijoy-ink-tauri/README.md +1 -1
- package/template-story-react-vite-muijoy-ink-tauri/package.json +3 -2
- package/template-story-react-vite-muijoy-ink-tauri/src/labels/animations-labels.ts +2 -2
- package/template-story-react-vite-muijoy-ink-tauri/src/main.tsx +1 -0
- package/template-story-react-vite-muijoy-ink-tauri/src/utils/ink-utility.ts +3 -3
- package/template-story-react-vite-muijoy-ink-tauri/vite.config.ts +2 -0
- package/template-story-react-vite-muijoy-tauri/package.json +2 -1
- package/template-story-react-vite-muijoy-tauri/src/labels/animations-labels.ts +2 -2
- package/template-story-react-vite-muijoy-tauri/src/main.tsx +1 -0
- package/template-story-react-vite-muijoy-tauri/vite.config.ts +2 -0
package/dist/index.mjs
CHANGED
|
@@ -1,58 +1,75 @@
|
|
|
1
|
-
import"node:util";import L,{stdin as wu,stdout as yu}from"node:process";import*as eu from"node:readline";import $u from"node:readline";import{Writable as DD}from"node:stream";import{execa as W}from"execa";import $ from"node:path";import xu from"which";import d from"node:fs";import{fileURLToPath as eD}from"node:url";function ku(D){return D&&D.__esModule&&Object.prototype.hasOwnProperty.call(D,"default")?D.default:D}var lu,Su;function tD(){if(Su)return lu;Su=1;const D="\x1B",e=`${D}[`,t="\x07",r={to(u,n){return n?`${e}${n+1};${u+1}H`:`${e}${u+1}G`},move(u,n){let a="";return u<0?a+=`${e}${-u}D`:u>0&&(a+=`${e}${u}C`),n<0?a+=`${e}${-n}A`:n>0&&(a+=`${e}${n}B`),a},up:(u=1)=>`${e}${u}A`,down:(u=1)=>`${e}${u}B`,forward:(u=1)=>`${e}${u}C`,backward:(u=1)=>`${e}${u}D`,nextLine:(u=1)=>`${e}E`.repeat(u),prevLine:(u=1)=>`${e}F`.repeat(u),left:`${e}G`,hide:`${e}?25l`,show:`${e}?25h`,save:`${D}7`,restore:`${D}8`},i={up:(u=1)=>`${e}S`.repeat(u),down:(u=1)=>`${e}T`.repeat(u)},s={screen:`${e}2J`,up:(u=1)=>`${e}1J`.repeat(u),down:(u=1)=>`${e}J`.repeat(u),line:`${e}2K`,lineEnd:`${e}K`,lineStart:`${e}1K`,lines(u){let n="";for(let a=0;a<u;a++)n+=this.line+(a<u-1?r.up():"");return u&&(n+=r.left),n}};return lu={cursor:r,scroll:i,erase:s,beep:t},lu}var T=tD(),tu={exports:{}},Ou;function rD(){if(Ou)return tu.exports;Ou=1;let D=process||{},e=D.argv||[],t=D.env||{},r=!(t.NO_COLOR||e.includes("--no-color"))&&(!!t.FORCE_COLOR||e.includes("--color")||D.platform==="win32"||(D.stdout||{}).isTTY&&t.TERM!=="dumb"||!!t.CI),i=(n,a,o=n)=>E=>{let C=""+E,c=C.indexOf(a,n.length);return~c?n+s(C,a,o,c)+a:n+C+a},s=(n,a,o,E)=>{let C="",c=0;do C+=n.substring(c,E)+o,c=E+a.length,E=n.indexOf(a,c);while(~E);return C+n.substring(c)},u=(n=r)=>{let a=n?i:()=>String;return{isColorSupported:n,reset:a("\x1B[0m","\x1B[0m"),bold:a("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:a("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:a("\x1B[3m","\x1B[23m"),underline:a("\x1B[4m","\x1B[24m"),inverse:a("\x1B[7m","\x1B[27m"),hidden:a("\x1B[8m","\x1B[28m"),strikethrough:a("\x1B[9m","\x1B[29m"),black:a("\x1B[30m","\x1B[39m"),red:a("\x1B[31m","\x1B[39m"),green:a("\x1B[32m","\x1B[39m"),yellow:a("\x1B[33m","\x1B[39m"),blue:a("\x1B[34m","\x1B[39m"),magenta:a("\x1B[35m","\x1B[39m"),cyan:a("\x1B[36m","\x1B[39m"),white:a("\x1B[37m","\x1B[39m"),gray:a("\x1B[90m","\x1B[39m"),bgBlack:a("\x1B[40m","\x1B[49m"),bgRed:a("\x1B[41m","\x1B[49m"),bgGreen:a("\x1B[42m","\x1B[49m"),bgYellow:a("\x1B[43m","\x1B[49m"),bgBlue:a("\x1B[44m","\x1B[49m"),bgMagenta:a("\x1B[45m","\x1B[49m"),bgCyan:a("\x1B[46m","\x1B[49m"),bgWhite:a("\x1B[47m","\x1B[49m"),blackBright:a("\x1B[90m","\x1B[39m"),redBright:a("\x1B[91m","\x1B[39m"),greenBright:a("\x1B[92m","\x1B[39m"),yellowBright:a("\x1B[93m","\x1B[39m"),blueBright:a("\x1B[94m","\x1B[39m"),magentaBright:a("\x1B[95m","\x1B[39m"),cyanBright:a("\x1B[96m","\x1B[39m"),whiteBright:a("\x1B[97m","\x1B[39m"),bgBlackBright:a("\x1B[100m","\x1B[49m"),bgRedBright:a("\x1B[101m","\x1B[49m"),bgGreenBright:a("\x1B[102m","\x1B[49m"),bgYellowBright:a("\x1B[103m","\x1B[49m"),bgBlueBright:a("\x1B[104m","\x1B[49m"),bgMagentaBright:a("\x1B[105m","\x1B[49m"),bgCyanBright:a("\x1B[106m","\x1B[49m"),bgWhiteBright:a("\x1B[107m","\x1B[49m")}};return tu.exports=u(),tu.exports.createColors=u,tu.exports}var iD=rD();const l=ku(iD);function sD({onlyFirst:D=!1}={}){const e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(e,D?void 0:"g")}const aD=sD();function Tu(D){if(typeof D!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof D}\``);return D.replace(aD,"")}function Iu(D){return D&&D.__esModule&&Object.prototype.hasOwnProperty.call(D,"default")?D.default:D}var _u={exports:{}};(function(D){var e={};D.exports=e,e.eastAsianWidth=function(r){var i=r.charCodeAt(0),s=r.length==2?r.charCodeAt(1):0,u=i;return 55296<=i&&i<=56319&&56320<=s&&s<=57343&&(i&=1023,s&=1023,u=i<<10|s,u+=65536),u==12288||65281<=u&&u<=65376||65504<=u&&u<=65510?"F":u==8361||65377<=u&&u<=65470||65474<=u&&u<=65479||65482<=u&&u<=65487||65490<=u&&u<=65495||65498<=u&&u<=65500||65512<=u&&u<=65518?"H":4352<=u&&u<=4447||4515<=u&&u<=4519||4602<=u&&u<=4607||9001<=u&&u<=9002||11904<=u&&u<=11929||11931<=u&&u<=12019||12032<=u&&u<=12245||12272<=u&&u<=12283||12289<=u&&u<=12350||12353<=u&&u<=12438||12441<=u&&u<=12543||12549<=u&&u<=12589||12593<=u&&u<=12686||12688<=u&&u<=12730||12736<=u&&u<=12771||12784<=u&&u<=12830||12832<=u&&u<=12871||12880<=u&&u<=13054||13056<=u&&u<=19903||19968<=u&&u<=42124||42128<=u&&u<=42182||43360<=u&&u<=43388||44032<=u&&u<=55203||55216<=u&&u<=55238||55243<=u&&u<=55291||63744<=u&&u<=64255||65040<=u&&u<=65049||65072<=u&&u<=65106||65108<=u&&u<=65126||65128<=u&&u<=65131||110592<=u&&u<=110593||127488<=u&&u<=127490||127504<=u&&u<=127546||127552<=u&&u<=127560||127568<=u&&u<=127569||131072<=u&&u<=194367||177984<=u&&u<=196605||196608<=u&&u<=262141?"W":32<=u&&u<=126||162<=u&&u<=163||165<=u&&u<=166||u==172||u==175||10214<=u&&u<=10221||10629<=u&&u<=10630?"Na":u==161||u==164||167<=u&&u<=168||u==170||173<=u&&u<=174||176<=u&&u<=180||182<=u&&u<=186||188<=u&&u<=191||u==198||u==208||215<=u&&u<=216||222<=u&&u<=225||u==230||232<=u&&u<=234||236<=u&&u<=237||u==240||242<=u&&u<=243||247<=u&&u<=250||u==252||u==254||u==257||u==273||u==275||u==283||294<=u&&u<=295||u==299||305<=u&&u<=307||u==312||319<=u&&u<=322||u==324||328<=u&&u<=331||u==333||338<=u&&u<=339||358<=u&&u<=359||u==363||u==462||u==464||u==466||u==468||u==470||u==472||u==474||u==476||u==593||u==609||u==708||u==711||713<=u&&u<=715||u==717||u==720||728<=u&&u<=731||u==733||u==735||768<=u&&u<=879||913<=u&&u<=929||931<=u&&u<=937||945<=u&&u<=961||963<=u&&u<=969||u==1025||1040<=u&&u<=1103||u==1105||u==8208||8211<=u&&u<=8214||8216<=u&&u<=8217||8220<=u&&u<=8221||8224<=u&&u<=8226||8228<=u&&u<=8231||u==8240||8242<=u&&u<=8243||u==8245||u==8251||u==8254||u==8308||u==8319||8321<=u&&u<=8324||u==8364||u==8451||u==8453||u==8457||u==8467||u==8470||8481<=u&&u<=8482||u==8486||u==8491||8531<=u&&u<=8532||8539<=u&&u<=8542||8544<=u&&u<=8555||8560<=u&&u<=8569||u==8585||8592<=u&&u<=8601||8632<=u&&u<=8633||u==8658||u==8660||u==8679||u==8704||8706<=u&&u<=8707||8711<=u&&u<=8712||u==8715||u==8719||u==8721||u==8725||u==8730||8733<=u&&u<=8736||u==8739||u==8741||8743<=u&&u<=8748||u==8750||8756<=u&&u<=8759||8764<=u&&u<=8765||u==8776||u==8780||u==8786||8800<=u&&u<=8801||8804<=u&&u<=8807||8810<=u&&u<=8811||8814<=u&&u<=8815||8834<=u&&u<=8835||8838<=u&&u<=8839||u==8853||u==8857||u==8869||u==8895||u==8978||9312<=u&&u<=9449||9451<=u&&u<=9547||9552<=u&&u<=9587||9600<=u&&u<=9615||9618<=u&&u<=9621||9632<=u&&u<=9633||9635<=u&&u<=9641||9650<=u&&u<=9651||9654<=u&&u<=9655||9660<=u&&u<=9661||9664<=u&&u<=9665||9670<=u&&u<=9672||u==9675||9678<=u&&u<=9681||9698<=u&&u<=9701||u==9711||9733<=u&&u<=9734||u==9737||9742<=u&&u<=9743||9748<=u&&u<=9749||u==9756||u==9758||u==9792||u==9794||9824<=u&&u<=9825||9827<=u&&u<=9829||9831<=u&&u<=9834||9836<=u&&u<=9837||u==9839||9886<=u&&u<=9887||9918<=u&&u<=9919||9924<=u&&u<=9933||9935<=u&&u<=9953||u==9955||9960<=u&&u<=9983||u==10045||u==10071||10102<=u&&u<=10111||11093<=u&&u<=11097||12872<=u&&u<=12879||57344<=u&&u<=63743||65024<=u&&u<=65039||u==65533||127232<=u&&u<=127242||127248<=u&&u<=127277||127280<=u&&u<=127337||127344<=u&&u<=127386||917760<=u&&u<=917999||983040<=u&&u<=1048573||1048576<=u&&u<=1114109?"A":"N"},e.characterLength=function(r){var i=this.eastAsianWidth(r);return i=="F"||i=="W"||i=="A"?2:1};function t(r){return r.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}e.length=function(r){for(var i=t(r),s=0,u=0;u<i.length;u++)s=s+this.characterLength(i[u]);return s},e.slice=function(r,i,s){textLen=e.length(r),i=i||0,s=s||1,i<0&&(i=textLen+i),s<0&&(s=textLen+s);for(var u="",n=0,a=t(r),o=0;o<a.length;o++){var E=a[o],C=e.length(E);if(n>=i-(C==2?1:0))if(n+C<=s)u+=E;else break;n+=C}return u}})(_u);var nD=_u.exports;const oD=Iu(nD);var lD=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g};const cD=Iu(lD);function X(D,e={}){if(typeof D!="string"||D.length===0||(e={ambiguousIsNarrow:!0,...e},D=Tu(D),D.length===0))return 0;D=D.replace(cD()," ");const t=e.ambiguousIsNarrow?1:2;let r=0;for(const i of D){const s=i.codePointAt(0);if(!(s<=31||s>=127&&s<=159||s>=768&&s<=879))switch(oD.eastAsianWidth(i)){case"F":case"W":r+=2;break;case"A":r+=t;break;default:r+=1}}return r}const cu=10,Ru=(D=0)=>e=>`\x1B[${e+D}m`,ju=(D=0)=>e=>`\x1B[${38+D};5;${e}m`,Mu=(D=0)=>(e,t,r)=>`\x1B[${38+D};2;${e};${t};${r}m`,A={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(A.modifier);const FD=Object.keys(A.color),CD=Object.keys(A.bgColor);[...FD,...CD];function ED(){const D=new Map;for(const[e,t]of Object.entries(A)){for(const[r,i]of Object.entries(t))A[r]={open:`\x1B[${i[0]}m`,close:`\x1B[${i[1]}m`},t[r]=A[r],D.set(i[0],i[1]);Object.defineProperty(A,e,{value:t,enumerable:!1})}return Object.defineProperty(A,"codes",{value:D,enumerable:!1}),A.color.close="\x1B[39m",A.bgColor.close="\x1B[49m",A.color.ansi=Ru(),A.color.ansi256=ju(),A.color.ansi16m=Mu(),A.bgColor.ansi=Ru(cu),A.bgColor.ansi256=ju(cu),A.bgColor.ansi16m=Mu(cu),Object.defineProperties(A,{rgbToAnsi256:{value:(e,t,r)=>e===t&&t===r?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(t/255*5)+Math.round(r/255*5),enumerable:!1},hexToRgb:{value:e=>{const t=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!t)return[0,0,0];let[r]=t;r.length===3&&(r=[...r].map(s=>s+s).join(""));const i=Number.parseInt(r,16);return[i>>16&255,i>>8&255,i&255]},enumerable:!1},hexToAnsi256:{value:e=>A.rgbToAnsi256(...A.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value:e=>{if(e<8)return 30+e;if(e<16)return 90+(e-8);let t,r,i;if(e>=232)t=((e-232)*10+8)/255,r=t,i=t;else{e-=16;const n=e%36;t=Math.floor(e/36)/5,r=Math.floor(n/6)/5,i=n%6/5}const s=Math.max(t,r,i)*2;if(s===0)return 30;let u=30+(Math.round(i)<<2|Math.round(r)<<1|Math.round(t));return s===2&&(u+=60),u},enumerable:!1},rgbToAnsi:{value:(e,t,r)=>A.ansi256ToAnsi(A.rgbToAnsi256(e,t,r)),enumerable:!1},hexToAnsi:{value:e=>A.ansi256ToAnsi(A.hexToAnsi256(e)),enumerable:!1}}),A}const pD=ED(),ru=new Set(["\x1B","\x9B"]),hD=39,Fu="\x07",Nu="[",mD="]",Lu="m",Cu=`${mD}8;;`,Vu=D=>`${ru.values().next().value}${Nu}${D}${Lu}`,Pu=D=>`${ru.values().next().value}${Cu}${D}${Fu}`,fD=D=>D.split(" ").map(e=>X(e)),Eu=(D,e,t)=>{const r=[...e];let i=!1,s=!1,u=X(Tu(D[D.length-1]));for(const[n,a]of r.entries()){const o=X(a);if(u+o<=t?D[D.length-1]+=a:(D.push(a),u=0),ru.has(a)&&(i=!0,s=r.slice(n+1).join("").startsWith(Cu)),i){s?a===Fu&&(i=!1,s=!1):a===Lu&&(i=!1);continue}u+=o,u===t&&n<r.length-1&&(D.push(""),u=0)}!u&&D[D.length-1].length>0&&D.length>1&&(D[D.length-2]+=D.pop())},dD=D=>{const e=D.split(" ");let t=e.length;for(;t>0&&!(X(e[t-1])>0);)t--;return t===e.length?D:e.slice(0,t).join(" ")+e.slice(t).join("")},BD=(D,e,t={})=>{if(t.trim!==!1&&D.trim()==="")return"";let r="",i,s;const u=fD(D);let n=[""];for(const[o,E]of D.split(" ").entries()){t.trim!==!1&&(n[n.length-1]=n[n.length-1].trimStart());let C=X(n[n.length-1]);if(o!==0&&(C>=e&&(t.wordWrap===!1||t.trim===!1)&&(n.push(""),C=0),(C>0||t.trim===!1)&&(n[n.length-1]+=" ",C++)),t.hard&&u[o]>e){const c=e-C,b=1+Math.floor((u[o]-c-1)/e);Math.floor((u[o]-1)/e)<b&&n.push(""),Eu(n,E,e);continue}if(C+u[o]>e&&C>0&&u[o]>0){if(t.wordWrap===!1&&C<e){Eu(n,E,e);continue}n.push("")}if(C+u[o]>e&&t.wordWrap===!1){Eu(n,E,e);continue}n[n.length-1]+=E}t.trim!==!1&&(n=n.map(o=>dD(o)));const a=[...n.join(`
|
|
2
|
-
`)];
|
|
3
|
-
`?(
|
|
4
|
-
`&&(
|
|
1
|
+
import G,{stdin as He,stdout as Ie}from"node:process";import*as te from"node:readline";import Ci from"node:readline";import{ReadStream as Je}from"node:tty";import _ from"node:fs";import O from"node:path";import"node:util";import{execa as H}from"execa";import Ze from"which";import{fileURLToPath as Fi}from"node:url";function Qe(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ue={exports:{}},Xe;function Mi(){if(Xe)return ue.exports;Xe=1;let e=process||{},i=e.argv||[],r=e.env||{},s=!(r.NO_COLOR||i.includes("--no-color"))&&(!!r.FORCE_COLOR||i.includes("--color")||e.platform==="win32"||(e.stdout||{}).isTTY&&r.TERM!=="dumb"||!!r.CI),o=(l,a,f=l)=>$=>{let b=""+$,h=b.indexOf(a,l.length);return~h?l+t(b,a,f,h)+a:l+b+a},t=(l,a,f,$)=>{let b="",h=0;do b+=l.substring(h,$)+f,h=$+a.length,$=l.indexOf(a,h);while(~$);return b+l.substring(h)},n=(l=s)=>{let a=l?o:()=>String;return{isColorSupported:l,reset:a("\x1B[0m","\x1B[0m"),bold:a("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:a("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:a("\x1B[3m","\x1B[23m"),underline:a("\x1B[4m","\x1B[24m"),inverse:a("\x1B[7m","\x1B[27m"),hidden:a("\x1B[8m","\x1B[28m"),strikethrough:a("\x1B[9m","\x1B[29m"),black:a("\x1B[30m","\x1B[39m"),red:a("\x1B[31m","\x1B[39m"),green:a("\x1B[32m","\x1B[39m"),yellow:a("\x1B[33m","\x1B[39m"),blue:a("\x1B[34m","\x1B[39m"),magenta:a("\x1B[35m","\x1B[39m"),cyan:a("\x1B[36m","\x1B[39m"),white:a("\x1B[37m","\x1B[39m"),gray:a("\x1B[90m","\x1B[39m"),bgBlack:a("\x1B[40m","\x1B[49m"),bgRed:a("\x1B[41m","\x1B[49m"),bgGreen:a("\x1B[42m","\x1B[49m"),bgYellow:a("\x1B[43m","\x1B[49m"),bgBlue:a("\x1B[44m","\x1B[49m"),bgMagenta:a("\x1B[45m","\x1B[49m"),bgCyan:a("\x1B[46m","\x1B[49m"),bgWhite:a("\x1B[47m","\x1B[49m"),blackBright:a("\x1B[90m","\x1B[39m"),redBright:a("\x1B[91m","\x1B[39m"),greenBright:a("\x1B[92m","\x1B[39m"),yellowBright:a("\x1B[93m","\x1B[39m"),blueBright:a("\x1B[94m","\x1B[39m"),magentaBright:a("\x1B[95m","\x1B[39m"),cyanBright:a("\x1B[96m","\x1B[39m"),whiteBright:a("\x1B[97m","\x1B[39m"),bgBlackBright:a("\x1B[100m","\x1B[49m"),bgRedBright:a("\x1B[101m","\x1B[49m"),bgGreenBright:a("\x1B[102m","\x1B[49m"),bgYellowBright:a("\x1B[103m","\x1B[49m"),bgBlueBright:a("\x1B[104m","\x1B[49m"),bgMagentaBright:a("\x1B[105m","\x1B[49m"),bgCyanBright:a("\x1B[106m","\x1B[49m"),bgWhiteBright:a("\x1B[107m","\x1B[49m")}};return ue.exports=n(),ue.exports.createColors=n,ue.exports}var Oi=Mi();const d=Qe(Oi);var ke,ei;function ji(){if(ei)return ke;ei=1;const e="\x1B",i=`${e}[`,r="\x07",s={to(n,l){return l?`${i}${l+1};${n+1}H`:`${i}${n+1}G`},move(n,l){let a="";return n<0?a+=`${i}${-n}D`:n>0&&(a+=`${i}${n}C`),l<0?a+=`${i}${-l}A`:l>0&&(a+=`${i}${l}B`),a},up:(n=1)=>`${i}${n}A`,down:(n=1)=>`${i}${n}B`,forward:(n=1)=>`${i}${n}C`,backward:(n=1)=>`${i}${n}D`,nextLine:(n=1)=>`${i}E`.repeat(n),prevLine:(n=1)=>`${i}F`.repeat(n),left:`${i}G`,hide:`${i}?25l`,show:`${i}?25h`,save:`${e}7`,restore:`${e}8`},o={up:(n=1)=>`${i}S`.repeat(n),down:(n=1)=>`${i}T`.repeat(n)},t={screen:`${i}2J`,up:(n=1)=>`${i}1J`.repeat(n),down:(n=1)=>`${i}J`.repeat(n),line:`${i}2K`,lineEnd:`${i}K`,lineStart:`${i}1K`,lines(n){let l="";for(let a=0;a<n;a++)l+=this.line+(a<n-1?s.up():"");return n&&(l+=s.left),l}};return ke={cursor:s,scroll:o,erase:t,beep:r},ke}var V=ji();function le(e,i,r){if(!r.some(n=>!n.disabled))return e;const s=e+i,o=Math.max(r.length-1,0),t=s<0?o:s>o?0:s;return r[t].disabled?le(t,i<0?-1:1,r):t}const Ti=e=>e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109,Ri=e=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,Vi=e=>e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9800&&e<=9811||e===9855||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101632&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129672||e>=129680&&e<=129725||e>=129727&&e<=129733||e>=129742&&e<=129755||e>=129760&&e<=129768||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141,Se=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,ce=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,pe=/\t{1,1000}/y,_e=new RegExp("[\\u{1F1E6}-\\u{1F1FF}]{2}|\\u{1F3F4}[\\u{E0061}-\\u{E007A}]{2}[\\u{E0030}-\\u{E0039}\\u{E0061}-\\u{E007A}]{1,3}\\u{E007F}|(?:\\p{Emoji}\\uFE0F\\u20E3?|\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation})(?:\\u200D(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation}|\\p{Emoji}\\uFE0F\\u20E3?))*","yu"),he=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,Li=new RegExp("\\p{M}+","gu"),Ni={limit:1/0,ellipsis:""},ii=(e,i={},r={})=>{const s=i.limit??1/0,o=i.ellipsis??"",t=i?.ellipsisWidth??(o?ii(o,Ni,r).width:0),n=r.ansiWidth??0,l=r.controlWidth??0,a=r.tabWidth??8,f=r.ambiguousWidth??1,$=r.emojiWidth??2,b=r.fullWidthWidth??2,h=r.regularWidth??1,I=r.wideWidth??2;let c=0,u=0,m=e.length,v=0,w=!1,x=m,y=Math.max(0,s-t),S=0,k=0,p=0,g=0;e:for(;;){if(k>S||u>=m&&u>c){const F=e.slice(S,k)||e.slice(c,u);v=0;for(const E of F.replaceAll(Li,"")){const j=E.codePointAt(0)||0;if(Ri(j)?g=b:Vi(j)?g=I:f!==h&&Ti(j)?g=f:g=h,p+g>y&&(x=Math.min(x,Math.max(S,c)+v)),p+g>s){w=!0;break e}v+=E.length,p+=g}S=k=0}if(u>=m)break;if(he.lastIndex=u,he.test(e)){if(v=he.lastIndex-u,g=v*h,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/h))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=he.lastIndex;continue}if(Se.lastIndex=u,Se.test(e)){if(p+n>y&&(x=Math.min(x,u)),p+n>s){w=!0;break}p+=n,S=c,k=u,u=c=Se.lastIndex;continue}if(ce.lastIndex=u,ce.test(e)){if(v=ce.lastIndex-u,g=v*l,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/l))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=ce.lastIndex;continue}if(pe.lastIndex=u,pe.test(e)){if(v=pe.lastIndex-u,g=v*a,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/a))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=pe.lastIndex;continue}if(_e.lastIndex=u,_e.test(e)){if(p+$>y&&(x=Math.min(x,u)),p+$>s){w=!0;break}p+=$,S=c,k=u,u=c=_e.lastIndex;continue}u+=1}return{width:w?y:p,index:w?x:m,truncated:w,ellipsed:w&&s>=t}},Di={limit:1/0,ellipsis:"",ellipsisWidth:0},re=(e,i={})=>ii(e,Di,i).width,me="\x1B",ri="\x9B",Bi=39,Ae="\x07",si="[",Ui="]",ni="m",Ce=`${Ui}8;;`,ai=new RegExp(`(?:\\${si}(?<code>\\d+)m|\\${Ce}(?<uri>.*)${Ae})`,"y"),Wi=e=>{if(e>=30&&e<=37||e>=90&&e<=97)return 39;if(e>=40&&e<=47||e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0},oi=e=>`${me}${si}${e}${ni}`,ti=e=>`${me}${Ce}${e}${Ae}`,Pi=e=>e.map(i=>re(i)),Fe=(e,i,r)=>{const s=i[Symbol.iterator]();let o=!1,t=!1,n=e.at(-1),l=n===void 0?0:re(n),a=s.next(),f=s.next(),$=0;for(;!a.done;){const b=a.value,h=re(b);l+h<=r?e[e.length-1]+=b:(e.push(b),l=0),(b===me||b===ri)&&(o=!0,t=i.startsWith(Ce,$+1)),o?t?b===Ae&&(o=!1,t=!1):b===ni&&(o=!1):(l+=h,l===r&&!f.done&&(e.push(""),l=0)),a=f,f=s.next(),$+=b.length}n=e.at(-1),!l&&n!==void 0&&n.length>0&&e.length>1&&(e[e.length-2]+=e.pop())},Gi=e=>{const i=e.split(" ");let r=i.length;for(;r>0&&!(re(i[r-1])>0);)r--;return r===i.length?e:i.slice(0,r).join(" ")+i.slice(r).join("")},zi=(e,i,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let s="",o,t;const n=e.split(" "),l=Pi(n);let a=[""];for(const[c,u]of n.entries()){r.trim!==!1&&(a[a.length-1]=(a.at(-1)??"").trimStart());let m=re(a.at(-1)??"");if(c!==0&&(m>=i&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),m=0),(m>0||r.trim===!1)&&(a[a.length-1]+=" ",m++)),r.hard&&l[c]>i){const v=i-m,w=1+Math.floor((l[c]-v-1)/i);Math.floor((l[c]-1)/i)<w&&a.push(""),Fe(a,u,i);continue}if(m+l[c]>i&&m>0&&l[c]>0){if(r.wordWrap===!1&&m<i){Fe(a,u,i);continue}a.push("")}if(m+l[c]>i&&r.wordWrap===!1){Fe(a,u,i);continue}a[a.length-1]+=u}r.trim!==!1&&(a=a.map(c=>Gi(c)));const f=a.join(`
|
|
2
|
+
`),$=f[Symbol.iterator]();let b=$.next(),h=$.next(),I=0;for(;!b.done;){const c=b.value,u=h.value;if(s+=c,c===me||c===ri){ai.lastIndex=I+1;const v=ai.exec(f)?.groups;if(v?.code!==void 0){const w=Number.parseFloat(v.code);o=w===Bi?void 0:w}else v?.uri!==void 0&&(t=v.uri.length===0?void 0:v.uri)}const m=o?Wi(o):void 0;u===`
|
|
3
|
+
`?(t&&(s+=ti("")),o&&m&&(s+=oi(m))):c===`
|
|
4
|
+
`&&(o&&m&&(s+=oi(o)),t&&(s+=ti(t))),I+=c.length,b=h,h=$.next()}return s};function Me(e,i,r){return String(e).normalize().replaceAll(`\r
|
|
5
|
+
`,`
|
|
5
6
|
`).split(`
|
|
6
|
-
`).map(
|
|
7
|
-
`)}const
|
|
8
|
-
`),
|
|
9
|
-
`),
|
|
10
|
-
`)
|
|
11
|
-
`)
|
|
12
|
-
`)
|
|
13
|
-
`).
|
|
14
|
-
`)
|
|
15
|
-
|
|
16
|
-
`,t=D.placeholder?l.inverse(D.placeholder[0])+l.dim(D.placeholder.slice(1)):l.inverse(l.hidden("_")),r=this.value?this.valueWithCursor:t;switch(this.state){case"error":return`${e.trim()}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
`
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
${
|
|
27
|
-
|
|
28
|
-
${
|
|
29
|
-
|
|
30
|
-
${l
|
|
31
|
-
|
|
32
|
-
${l.
|
|
33
|
-
`
|
|
7
|
+
`).map(s=>zi(s,i,r)).join(`
|
|
8
|
+
`)}const Ki=["up","down","left","right","space","enter","cancel"],z={actions:new Set(Ki),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0};function Oe(e,i){if(typeof e=="string")return z.aliases.get(e)===i;for(const r of e)if(r!==void 0&&Oe(r,i))return!0;return!1}function Yi(e,i){if(e===i)return;const r=e.split(`
|
|
9
|
+
`),s=i.split(`
|
|
10
|
+
`),o=Math.max(r.length,s.length),t=[];for(let n=0;n<o;n++)r[n]!==s[n]&&t.push(n);return{lines:t,numLinesBefore:r.length,numLinesAfter:s.length,numLines:o}}const qi=globalThis.process.platform.startsWith("win"),je=Symbol("clack:cancel");function N(e){return e===je}function fe(e,i){const r=e;r.isTTY&&r.setRawMode(i)}function Hi({input:e=He,output:i=Ie,overwrite:r=!0,hideCursor:s=!0}={}){const o=te.createInterface({input:e,output:i,prompt:"",tabSize:1});te.emitKeypressEvents(e,o),e instanceof Je&&e.isTTY&&e.setRawMode(!0);const t=(n,{name:l,sequence:a})=>{const f=String(n);if(Oe([f,l,a],"cancel")){s&&i.write(V.cursor.show),process.exit(0);return}if(!r)return;const $=l==="return"?0:-1,b=l==="return"?-1:0;te.moveCursor(i,$,b,()=>{te.clearLine(i,1,()=>{e.once("keypress",t)})})};return s&&i.write(V.cursor.hide),e.once("keypress",t),()=>{e.off("keypress",t),s&&i.write(V.cursor.show),e instanceof Je&&e.isTTY&&!qi&&e.setRawMode(!1),o.terminal=!1,o.close()}}const Te=e=>"columns"in e&&typeof e.columns=="number"?e.columns:80,ui=e=>"rows"in e&&typeof e.rows=="number"?e.rows:20;function Re(e,i,r,s=r){const o=Te(e??Ie);return Me(i,o-r.length,{hard:!0,trim:!1}).split(`
|
|
11
|
+
`).map((t,n)=>`${n===0?s:r}${t}`).join(`
|
|
12
|
+
`)}let Ve=class{input;output;_abortSignal;rl;opts;_render;_track=!1;_prevFrame="";_subscribers=new Map;_cursor=0;state="initial";error="";value;userInput="";constructor(i,r=!0){const{input:s=He,output:o=Ie,render:t,signal:n,...l}=i;this.opts=l,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=t.bind(this),this._track=r,this._abortSignal=n,this.input=s,this.output=o}unsubscribe(){this._subscribers.clear()}setSubscriber(i,r){const s=this._subscribers.get(i)??[];s.push(r),this._subscribers.set(i,s)}on(i,r){this.setSubscriber(i,{cb:r})}once(i,r){this.setSubscriber(i,{cb:r,once:!0})}emit(i,...r){const s=this._subscribers.get(i)??[],o=[];for(const t of s)t.cb(...r),t.once&&o.push(()=>s.splice(s.indexOf(t),1));for(const t of o)t()}prompt(){return new Promise(i=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),i(je);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}this.rl=Ci.createInterface({input:this.input,tabSize:2,prompt:"",escapeCodeTimeout:50,terminal:!0}),this.rl.prompt(),this.opts.initialUserInput!==void 0&&this._setUserInput(this.opts.initialUserInput,!0),this.input.on("keypress",this.onKeypress),fe(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(V.cursor.show),this.output.off("resize",this.render),fe(this.input,!1),i(this.value)}),this.once("cancel",()=>{this.output.write(V.cursor.show),this.output.off("resize",this.render),fe(this.input,!1),i(je)})})}_isActionKey(i,r){return i===" "}_setValue(i){this.value=i,this.emit("value",this.value)}_setUserInput(i,r){this.userInput=i??"",this.emit("userInput",this.userInput),r&&this._track&&this.rl&&(this.rl.write(this.userInput),this._cursor=this.rl.cursor)}_clearUserInput(){this.rl?.write(null,{ctrl:!0,name:"u"}),this._setUserInput("")}onKeypress(i,r){if(this._track&&r.name!=="return"&&(r.name&&this._isActionKey(i,r)&&this.rl?.write(null,{ctrl:!0,name:"h"}),this._cursor=this.rl?.cursor??0,this._setUserInput(this.rl?.line)),this.state==="error"&&(this.state="active"),r?.name&&(!this._track&&z.aliases.has(r.name)&&this.emit("cursor",z.aliases.get(r.name)),z.actions.has(r.name)&&this.emit("cursor",r.name)),i&&(i.toLowerCase()==="y"||i.toLowerCase()==="n")&&this.emit("confirm",i.toLowerCase()==="y"),this.emit("key",i?.toLowerCase(),r),r?.name==="return"){if(this.opts.validate){const s=this.opts.validate(this.value);s&&(this.error=s instanceof Error?s.message:s,this.state="error",this.rl?.write(this.userInput))}this.state!=="error"&&(this.state="submit")}Oe([i,r?.name,r?.sequence],"cancel")&&(this.state="cancel"),(this.state==="submit"||this.state==="cancel")&&this.emit("finalize"),this.render(),(this.state==="submit"||this.state==="cancel")&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
|
|
13
|
+
`),fe(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){const i=Me(this._prevFrame,process.stdout.columns,{hard:!0,trim:!1}).split(`
|
|
14
|
+
`).length-1;this.output.write(V.cursor.move(-999,i*-1))}render(){const i=Me(this._render(this)??"",process.stdout.columns,{hard:!0,trim:!1});if(i!==this._prevFrame){if(this.state==="initial")this.output.write(V.cursor.hide);else{const r=Yi(this._prevFrame,i),s=ui(this.output);if(this.restoreCursor(),r){const o=Math.max(0,r.numLinesAfter-s),t=Math.max(0,r.numLinesBefore-s);let n=r.lines.find(l=>l>=o);if(n===void 0){this._prevFrame=i;return}if(r.lines.length===1){this.output.write(V.cursor.move(0,n-t)),this.output.write(V.erase.lines(1));const l=i.split(`
|
|
15
|
+
`);this.output.write(l[n]),this._prevFrame=i,this.output.write(V.cursor.move(0,l.length-n-1));return}else if(r.lines.length>1){if(o<t)n=o;else{const a=n-t;a>0&&this.output.write(V.cursor.move(0,a))}this.output.write(V.erase.down());const l=i.split(`
|
|
16
|
+
`).slice(n);this.output.write(l.join(`
|
|
17
|
+
`)),this._prevFrame=i;return}}this.output.write(V.erase.down())}this.output.write(i),this.state==="initial"&&(this.state="active"),this._prevFrame=i}}},Ji=class extends Ve{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(i){super(i,!1),this.value=!!i.initialValue,this.on("userInput",()=>{this.value=this._value}),this.on("confirm",r=>{this.output.write(V.cursor.move(0,-1)),this.value=r,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}};class Zi extends Ve{options;cursor=0;get _selectedValue(){return this.options[this.cursor]}changeValue(){this.value=this._selectedValue.value}constructor(i){super(i,!1),this.options=i.options;const r=this.options.findIndex(({value:o})=>o===i.initialValue),s=r===-1?0:r;this.cursor=this.options[s].disabled?le(s,1,this.options):s,this.changeValue(),this.on("cursor",o=>{switch(o){case"left":case"up":this.cursor=le(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=le(this.cursor,1,this.options);break}this.changeValue()})}}let Qi=class extends Ve{get userInputWithCursor(){if(this.state==="submit")return this.userInput;const i=this.userInput;if(this.cursor>=i.length)return`${this.userInput}\u2588`;const r=i.slice(0,this.cursor),[s,...o]=i.slice(this.cursor);return`${r}${d.inverse(s)}${o.join("")}`}get cursor(){return this._cursor}constructor(i){super({...i,initialUserInput:i.initialUserInput??i.initialValue}),this.on("userInput",r=>{this._setValue(r)}),this.on("finalize",()=>{this.value||(this.value=i.defaultValue),this.value===void 0&&(this.value="")})}};function Xi(){return G.platform!=="win32"?G.env.TERM!=="linux":!!G.env.CI||!!G.env.WT_SESSION||!!G.env.TERMINUS_SUBLIME||G.env.ConEmuTask==="{cmd::Cmder}"||G.env.TERM_PROGRAM==="Terminus-Sublime"||G.env.TERM_PROGRAM==="vscode"||G.env.TERM==="xterm-256color"||G.env.TERM==="alacritty"||G.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}const Le=Xi(),er=()=>process.env.CI==="true",U=(e,i)=>Le?e:i,ir=U("\u25C6","*"),li=U("\u25A0","x"),ci=U("\u25B2","x"),Ne=U("\u25C7","o"),rr=U("\u250C","T"),C=U("\u2502","|"),X=U("\u2514","\u2014"),De=U("\u25CF",">"),de=U("\u25CB"," "),sr=U("\u25CF","\u2022"),nr=U("\u25C6","*"),ar=U("\u25B2","!"),or=U("\u25A0","x"),Be=e=>{switch(e){case"initial":case"active":return d.cyan(ir);case"cancel":return d.red(li);case"error":return d.yellow(ci);case"submit":return d.green(Ne)}},tr=e=>{switch(e){case"initial":case"active":return d.cyan(C);case"cancel":return d.red(C);case"error":return d.yellow(C);case"submit":return d.green(C)}},ur=e=>e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109,lr=e=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,cr=e=>e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9800&&e<=9811||e===9855||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=19968&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101632&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129672||e>=129680&&e<=129725||e>=129727&&e<=129733||e>=129742&&e<=129755||e>=129760&&e<=129768||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141,Ue=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/y,ge=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,be=/\t{1,1000}/y,We=new RegExp("[\\u{1F1E6}-\\u{1F1FF}]{2}|\\u{1F3F4}[\\u{E0061}-\\u{E007A}]{2}[\\u{E0030}-\\u{E0039}\\u{E0061}-\\u{E007A}]{1,3}\\u{E007F}|(?:\\p{Emoji}\\uFE0F\\u20E3?|\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation})(?:\\u200D(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}?|\\p{Emoji_Presentation}|\\p{Emoji}\\uFE0F\\u20E3?))*","yu"),ve=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,pr=new RegExp("\\p{M}+","gu"),hr={limit:1/0,ellipsis:""},pi=(e,i={},r={})=>{const s=i.limit??1/0,o=i.ellipsis??"",t=i?.ellipsisWidth??(o?pi(o,hr,r).width:0),n=r.ansiWidth??0,l=r.controlWidth??0,a=r.tabWidth??8,f=r.ambiguousWidth??1,$=r.emojiWidth??2,b=r.fullWidthWidth??2,h=r.regularWidth??1,I=r.wideWidth??2;let c=0,u=0,m=e.length,v=0,w=!1,x=m,y=Math.max(0,s-t),S=0,k=0,p=0,g=0;e:for(;;){if(k>S||u>=m&&u>c){const F=e.slice(S,k)||e.slice(c,u);v=0;for(const E of F.replaceAll(pr,"")){const j=E.codePointAt(0)||0;if(lr(j)?g=b:cr(j)?g=I:f!==h&&ur(j)?g=f:g=h,p+g>y&&(x=Math.min(x,Math.max(S,c)+v)),p+g>s){w=!0;break e}v+=E.length,p+=g}S=k=0}if(u>=m)break;if(ve.lastIndex=u,ve.test(e)){if(v=ve.lastIndex-u,g=v*h,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/h))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=ve.lastIndex;continue}if(Ue.lastIndex=u,Ue.test(e)){if(p+n>y&&(x=Math.min(x,u)),p+n>s){w=!0;break}p+=n,S=c,k=u,u=c=Ue.lastIndex;continue}if(ge.lastIndex=u,ge.test(e)){if(v=ge.lastIndex-u,g=v*l,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/l))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=ge.lastIndex;continue}if(be.lastIndex=u,be.test(e)){if(v=be.lastIndex-u,g=v*a,p+g>y&&(x=Math.min(x,u+Math.floor((y-p)/a))),p+g>s){w=!0;break}p+=g,S=c,k=u,u=c=be.lastIndex;continue}if(We.lastIndex=u,We.test(e)){if(p+$>y&&(x=Math.min(x,u)),p+$>s){w=!0;break}p+=$,S=c,k=u,u=c=We.lastIndex;continue}u+=1}return{width:w?y:p,index:w?x:m,truncated:w,ellipsed:w&&s>=t}},mr={limit:1/0,ellipsis:"",ellipsisWidth:0},se=(e,i={})=>pi(e,mr,i).width,$e="\x1B",hi="\x9B",fr=39,Pe="\x07",mi="[",dr="]",fi="m",Ge=`${dr}8;;`,di=new RegExp(`(?:\\${mi}(?<code>\\d+)m|\\${Ge}(?<uri>.*)${Pe})`,"y"),gr=e=>{if(e>=30&&e<=37||e>=90&&e<=97)return 39;if(e>=40&&e<=47||e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0},gi=e=>`${$e}${mi}${e}${fi}`,bi=e=>`${$e}${Ge}${e}${Pe}`,br=e=>e.map(i=>se(i)),ze=(e,i,r)=>{const s=i[Symbol.iterator]();let o=!1,t=!1,n=e.at(-1),l=n===void 0?0:se(n),a=s.next(),f=s.next(),$=0;for(;!a.done;){const b=a.value,h=se(b);l+h<=r?e[e.length-1]+=b:(e.push(b),l=0),(b===$e||b===hi)&&(o=!0,t=i.startsWith(Ge,$+1)),o?t?b===Pe&&(o=!1,t=!1):b===fi&&(o=!1):(l+=h,l===r&&!f.done&&(e.push(""),l=0)),a=f,f=s.next(),$+=b.length}n=e.at(-1),!l&&n!==void 0&&n.length>0&&e.length>1&&(e[e.length-2]+=e.pop())},vr=e=>{const i=e.split(" ");let r=i.length;for(;r>0&&!(se(i[r-1])>0);)r--;return r===i.length?e:i.slice(0,r).join(" ")+i.slice(r).join("")},$r=(e,i,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let s="",o,t;const n=e.split(" "),l=br(n);let a=[""];for(const[c,u]of n.entries()){r.trim!==!1&&(a[a.length-1]=(a.at(-1)??"").trimStart());let m=se(a.at(-1)??"");if(c!==0&&(m>=i&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),m=0),(m>0||r.trim===!1)&&(a[a.length-1]+=" ",m++)),r.hard&&l[c]>i){const v=i-m,w=1+Math.floor((l[c]-v-1)/i);Math.floor((l[c]-1)/i)<w&&a.push(""),ze(a,u,i);continue}if(m+l[c]>i&&m>0&&l[c]>0){if(r.wordWrap===!1&&m<i){ze(a,u,i);continue}a.push("")}if(m+l[c]>i&&r.wordWrap===!1){ze(a,u,i);continue}a[a.length-1]+=u}r.trim!==!1&&(a=a.map(c=>vr(c)));const f=a.join(`
|
|
18
|
+
`),$=f[Symbol.iterator]();let b=$.next(),h=$.next(),I=0;for(;!b.done;){const c=b.value,u=h.value;if(s+=c,c===$e||c===hi){di.lastIndex=I+1;const v=di.exec(f)?.groups;if(v?.code!==void 0){const w=Number.parseFloat(v.code);o=w===fr?void 0:w}else v?.uri!==void 0&&(t=v.uri.length===0?void 0:v.uri)}const m=o?gr(o):void 0;u===`
|
|
19
|
+
`?(t&&(s+=bi("")),o&&m&&(s+=gi(m))):c===`
|
|
20
|
+
`&&(o&&m&&(s+=gi(o)),t&&(s+=bi(t))),I+=c.length,b=h,h=$.next()}return s};function Ke(e,i,r){return String(e).normalize().replaceAll(`\r
|
|
21
|
+
`,`
|
|
22
|
+
`).split(`
|
|
23
|
+
`).map(s=>$r(s,i,r)).join(`
|
|
24
|
+
`)}const wr=(e,i,r,s,o)=>{let t=i,n=0;for(let l=r;l<s;l++){const a=e[l];if(t=t-a.length,n++,t<=o)break}return{lineCount:t,removals:n}},xr=e=>{const{cursor:i,options:r,style:s}=e,o=e.output??process.stdout,t=Te(o),n=e.columnPadding??0,l=e.rowPadding??4,a=t-n,f=ui(o),$=d.dim("..."),b=e.maxItems??Number.POSITIVE_INFINITY,h=Math.max(f-l,0),I=Math.max(Math.min(b,h),5);let c=0;i>=I-3&&(c=Math.max(Math.min(i-I+3,r.length-I),0));let u=I<r.length&&c>0,m=I<r.length&&c+I<r.length;const v=Math.min(c+I,r.length),w=[];let x=0;u&&x++,m&&x++;const y=c+(u?1:0),S=v-(m?1:0);for(let p=y;p<S;p++){const g=Ke(s(r[p],p===i),a,{hard:!0,trim:!1}).split(`
|
|
25
|
+
`);w.push(g),x+=g.length}if(x>h){let p=0,g=0,F=x;const E=i-y,j=(B,R)=>wr(w,F,B,R,h);u?({lineCount:F,removals:p}=j(0,E),F>h&&({lineCount:F,removals:g}=j(E+1,w.length))):({lineCount:F,removals:g}=j(E+1,w.length),F>h&&({lineCount:F,removals:p}=j(0,E))),p>0&&(u=!0,w.splice(0,p)),g>0&&(m=!0,w.splice(w.length-g,g))}const k=[];u&&k.push($);for(const p of w)for(const g of p)k.push(g);return m&&k.push($),k},vi=e=>{const i=e.active??"Yes",r=e.inactive??"No";return new Ji({active:i,inactive:r,signal:e.signal,input:e.input,output:e.output,initialValue:e.initialValue??!0,render(){const s=e.withGuide??z.withGuide,o=`${s?`${d.gray(C)}
|
|
26
|
+
`:""}${Be(this.state)} ${e.message}
|
|
27
|
+
`,t=this.value?i:r;switch(this.state){case"submit":{const n=s?`${d.gray(C)} `:"";return`${o}${n}${d.dim(t)}`}case"cancel":{const n=s?`${d.gray(C)} `:"";return`${o}${n}${d.strikethrough(d.dim(t))}${s?`
|
|
28
|
+
${d.gray(C)}`:""}`}default:{const n=s?`${d.cyan(C)} `:"",l=s?d.cyan(X):"";return`${o}${n}${this.value?`${d.green(De)} ${i}`:`${d.dim(de)} ${d.dim(i)}`}${e.vertical?s?`
|
|
29
|
+
${d.cyan(C)} `:`
|
|
30
|
+
`:` ${d.dim("/")} `}${this.value?`${d.dim(de)} ${d.dim(r)}`:`${d.green(De)} ${r}`}
|
|
31
|
+
${l}
|
|
32
|
+
`}}}}).prompt()},W={message:(e=[],{symbol:i=d.gray(C),secondarySymbol:r=d.gray(C),output:s=process.stdout,spacing:o=1,withGuide:t}={})=>{const n=[],l=t??z.withGuide,a=l?r:"",f=l?`${i} `:"",$=l?`${r} `:"";for(let h=0;h<o;h++)n.push(a);const b=Array.isArray(e)?e:e.split(`
|
|
33
|
+
`);if(b.length>0){const[h,...I]=b;h.length>0?n.push(`${f}${h}`):n.push(l?i:"");for(const c of I)c.length>0?n.push(`${$}${c}`):n.push(l?r:"")}s.write(`${n.join(`
|
|
34
|
+
`)}
|
|
35
|
+
`)},info:(e,i)=>{W.message(e,{...i,symbol:d.blue(sr)})},success:(e,i)=>{W.message(e,{...i,symbol:d.green(nr)})},step:(e,i)=>{W.message(e,{...i,symbol:d.green(Ne)})},warn:(e,i)=>{W.message(e,{...i,symbol:d.yellow(ar)})},warning:(e,i)=>{W.warn(e,i)},error:(e,i)=>{W.message(e,{...i,symbol:d.red(or)})}},A=(e="",i)=>{process.stdout.write(`${d.gray(X)} ${d.red(e)}
|
|
34
36
|
|
|
35
|
-
`)},
|
|
36
|
-
`)},
|
|
37
|
-
${
|
|
37
|
+
`)},yr=(e="",i)=>{process.stdout.write(`${d.gray(rr)} ${e}
|
|
38
|
+
`)},Er=(e="",i)=>{process.stdout.write(`${d.gray(C)}
|
|
39
|
+
${d.gray(X)} ${e}
|
|
38
40
|
|
|
39
|
-
`)},
|
|
40
|
-
`);
|
|
41
|
-
`)}
|
|
42
|
-
`)
|
|
43
|
-
`)
|
|
44
|
-
`)
|
|
45
|
-
`)
|
|
46
|
-
`)
|
|
47
|
-
`)
|
|
48
|
-
GitHub Desktop: https://github.com/apps/desktop`)}}var Z=(D=>(D.VisualStudioCode="vscode",D.Cursor="cursor",D.VSCodium="codium",D.Other="other",D))(Z||{});async function JD({rootFolder:D,fileToOpen:e}){const t=await z({message:"Which IDE do you want to use?",options:[{value:Z.VisualStudioCode,label:"Visual Studio Code"},{value:Z.Cursor,label:"Cursor"},{value:Z.VSCodium,label:"VSCodium"},{value:Z.Other,label:"Other"}],initialValue:Z.VisualStudioCode});if(I(t)&&(B("Operation cancelled."),process.exit(0)),t===void 0)return;let r,i;switch(t){case"vscode":i="Opening in Visual Studio Code...",r="code";break;case"cursor":i="Opening in Cursor...",r="cursor";break;case"codium":i="Opening in VSCodium...",r="codium";break;default:return}await au([{title:i,task:async s=>{try{await xu(r);const u=await W(r,[D]);s(u.stdout);const n=await W(r,[`${D}/README.md`]);if(s(n.stdout),e){const a=await W(r,[`${D}/${e}`]);s(a.stdout)}return`Opened project using ${t}`}catch{return`Could not open project using ${t}, since ${t} was not in your PATH`}}}])}var V=(D=>(D[D.VisualNovel=0]="VisualNovel",D[D.TextStory=1]="TextStory",D[D.PointAndClick=2]="PointAndClick",D[D.GameEngine=3]="GameEngine",D[D.Library=4]="Library",D))(V||{}),k=(D=>(D[D.Ink=0]="Ink",D[D.Renpy=1]="Renpy",D[D.Typescript=2]="Typescript",D))(k||{}),_=(D=>(D[D.React=0]="React",D[D.Vue=1]="Vue",D[D.Angular=2]="Angular",D))(_||{});const Hu="My Game",Ju="my-game",K=[{type:V.VisualNovel,name:"Visual Novel",availableUI:[_.React],availableNarrativeLanguages:[k.Ink,k.Typescript],isMultidevice:!0},{type:V.TextStory,name:"Text-based Story",availableUI:[_.React],availableNarrativeLanguages:[k.Ink,k.Typescript],isMultidevice:!0},{type:V.PointAndClick,name:"Point & Click Adventure",availableUI:[_.React],availableNarrativeLanguages:[k.Ink,k.Typescript],isMultidevice:!0},{type:V.GameEngine,name:"Game Engine",availableUI:[],availableNarrativeLanguages:[],isMultidevice:!1},{type:V.Library,name:"Library",availableUI:[],availableNarrativeLanguages:[],isMultidevice:!1}];async function ZD({packageName:D}){const e=await z({message:"Select the type of game you want to create:",options:K.map(o=>({label:o.name,value:o.type})),initialValue:K[0].type});I(e)&&(B("Operation cancelled."),process.exit(0));const t=K.find(o=>o.type===e)?.availableUI.map(o=>{let E="";switch(o){case _.React:E=ou("React");break;case _.Vue:E=WD("Vue");break;case _.Angular:E=GD("Angular");break}return{label:E,value:o}})||[];let r;t.length===1?(M.warning(`Only one UI framework available: ${t[0].label}. Using it by default.`),r=t[0].value):t.length>0?(r=await z({message:"Select the UI framework you want to use:",options:t,initialValue:K.find(o=>o.type===e)?.availableUI[0]}),I(r)&&(B("Operation cancelled."),process.exit(0))):r=void 0;const i=K.find(o=>o.type===e)?.availableNarrativeLanguages.map(o=>{let E="";switch(o){case k.Ink:E="Ink + Typescript";break;case k.Renpy:E=zD("Renpy");break;case k.Typescript:E=ou("Typescript");break}return{label:E,value:o}})||[];let s;i.length===1?(M.warning(`Only one narrative language available: ${i[0].label}. Using it by default.`),s=i[0].value):i.length>0?(s=await z({message:"Select the narrative language you want to use:",options:i,initialValue:K.find(o=>o.type===e)?.availableNarrativeLanguages[0]}),I(s)&&(B("Operation cancelled."),process.exit(0))):s=void 0;const u=K.find(o=>o.type===e)?.isMultidevice;let n=!1,a="";return u&&(n=await z({message:"Which devices is the project intended for?",options:[{label:"Web page",value:!1},{label:"Web page + Desktop + Mobile (Tauri)",value:!0}],initialValue:!1}),I(n)&&(B("Operation cancelled."),process.exit(0)),n?(a=await uu({message:"Project identifier:",initialValue:`com.${D}.app`,validate:o=>{if(!o)return"Identifier is required.";if(!/^[a-zA-Z0-9_.\-]+$/.test(o))return"Identifier can only contain letters, numbers, underscores, dots and dashes."}}),I(a)&&(B("Operation cancelled."),process.exit(0))):a=""),{gameType:e,UIFramework:r,narrativeLanguage:s,multidevice:n,identifier:a}}var O=(D=>(D.Delete="delete",D.Overwrite="overwrite",D.Skip="skip",D.Ask="ask",D.Cancel="cancel",D))(O||{});function QD(D){const e=d.readdirSync(D);return e.length===0||e.length===1&&e[0]===".git"}function Zu(D,e,t){if(!d.existsSync(e))return;const r=d.statSync(e);if(r.isFile())(t===O.Overwrite||t===O.Delete)&&d.rmSync(e,{force:!0});else if(r.isDirectory()){const i=d.readdirSync(D);for(const s of i){const u=$.join(D,s),n=$.join(e,s);Zu(u,n,t)}}}function Au(D,e,t){if(d.statSync(D).isDirectory()){d.mkdirSync(e,{recursive:!0});for(const r of d.readdirSync(D)){const i=$.join(D,r),s=$.join(e,r);Au(i,s,t)}}else{if(t!==void 0&&d.existsSync(e)){if(t===O.Skip)return;(t===O.Overwrite||t===O.Delete)&&d.rmSync(e,{force:!0})}d.copyFileSync(D,e)}}function XD(D){return/^(?:@[a-z\d\-*~][a-z\d\-*._~]*\/)?[a-z\d\-~][a-z\d\-._~]*$/.test(D)}function Qu(D){return D.trim().toLowerCase().replace(/\s+/g,"-").replace(/^[._]/,"").replace(/[^a-z\d\-~]+/g,"-")}async function ue(){const D=await uu({message:"Project name:",defaultValue:Hu,placeholder:Hu,validate:u=>{if(!u)return"Project name cannot be empty"}});I(D)&&(B("Operation cancelled."),process.exit(0));const e=await uu({message:"Project description:",defaultValue:"A new game project",placeholder:"A new game project",validate:u=>{if(!u)return"Project description cannot be empty"}});I(e)&&(B("Operation cancelled."),process.exit(0));const t=await uu({message:"Package name:",defaultValue:Qu(Ju),placeholder:Qu(Ju),validate:u=>{if(!u)return"Package name cannot be empty";if(!XD(u))return"Invalid package name. The name can only include URL-friendly characters."}});I(t)&&(B("Operation cancelled."),process.exit(0));const r=$.basename($.resolve()),i=await uu({message:"Target directory:",defaultValue:t,placeholder:`${t} (If is equal to ".", the current directory (${r}) will be used)`});I(i)&&(B("Operation cancelled."),process.exit(0));let s;return d.existsSync(i)&&!QD(i)?(s=await z({message:"Overwrite existing files?",options:[{hint:"Delete all existing files and create a new project",label:"Delete all",value:O.Delete},{hint:"Overwrite existing conflicting files",label:"Overwrite",value:O.Overwrite},{hint:"Skip existing conflicting files",label:"Skip",value:O.Skip},{hint:"Ask for each file",label:"Ask",value:O.Ask},{hint:"Cancel operation",label:"Cancel",value:O.Cancel}],initialValue:O.Overwrite}),(I(s)||s===O.Cancel)&&(B("Operation cancelled."),process.exit(0))):s=void 0,{projectName:D,foltderName:i,description:e,packageName:t,overwrite:s}}const Xu={_gitignore:".gitignore"};async function De({rootFolder:D,overwrite:e,template:t,packageName:r,description:i,projectName:s,identifier:u}){const n=await au([{title:`Creating project in ${D}...`,task:async()=>{d.existsSync(D)||d.mkdirSync(D,{recursive:!0});const a=$.resolve(eD(import.meta.url),"../..",`${t}`),o=(b,m)=>{const F=$.join(D,Xu[b]??b);m?d.writeFileSync(F,m):Au($.join(a,b),F,e)},E=d.readdirSync(a).map(async b=>{const m=$.join(a,b),F=$.join(D,Xu[b]??b);if(d.existsSync(F))switch(e){case O.Ask:if(d.statSync(F).isFile()){const h=await Yu({message:`File ${F} already exists. Do you want to overwrite it?`,initialValue:!1});if(I(h)&&(B("Operation cancelled."),process.exit(0)),!h)return;d.rmSync(F,{force:!0})}else{const h=d.readdirSync(m);for(const x of h){const q=$.join(m,x),N=$.join(F,x);if(d.existsSync(N)){const f=await Yu({message:`File ${N} already exists. Do you want to overwrite it?`,initialValue:!1});if(I(f)&&(B("Operation cancelled."),process.exit(0)),!f)continue;d.rmSync(N,{force:!0})}Au(q,N,e)}return}break;case O.Skip:return;case O.Overwrite:case O.Delete:Zu(m,F,e);break}switch(b){case"package.json":case"vite.config.ts":case"index.html":let h=d.readFileSync(m,"utf-8");h=h.replace(/my-app-package-name/g,r),h=h.replace(/my-app-description/g,i),h=h.replace(/my-app-project-name/g,s),o(b,h);break;case".git":case"package-lock.json":break;default:o(b)}});await Promise.all(E);const C=$.join(D,"src-tauri");if(d.existsSync(C)){const b=d.readdirSync(C).map(async m=>{switch(m){case"Cargo.lock":case"Cargo.toml":case"tauri.conf.json":let F=d.readFileSync($.join(C,m),"utf-8");F=F.replace(/my-app-package-name/g,r),F=F.replace(/my-app-description/g,i),F=F.replace(/my-app-project-name/g,s),F=F.replace(/com.my-app-project-name.app/g,u),o($.join("src-tauri",m),F)}});await Promise.all(b)}const c=$.join(D,"_github");return d.existsSync(c)&&d.renameSync(c,$.join(D,".github")),"Project created"}}]);I(n)&&(B("Operation cancelled."),process.exit(0))}const ee=process.cwd();async function te(){let D,{description:e,overwrite:t,packageName:r,projectName:i,foltderName:s}=await ue(),{UIFramework:u,gameType:n,narrativeLanguage:a,multidevice:o,identifier:E}=await ZD({packageName:r});const C=$.join(ee,s);let c;switch(n){case V.VisualNovel:switch(u){case _.React:switch(a){case k.Typescript:o?c="template-react-vite-muijoy-tauri":c="template-react-vite-muijoy",D="src/labels/startLabel.ts";break;case k.Ink:o?c="template-react-vite-muijoy-ink-tauri":c="template-react-vite-muijoy-ink",D="src/ink/start.ink";break;case k.Renpy:B("Error: There are no templates for this narrative language"),process.exit(0);default:B("Error: Unknown narrative language"),process.exit(0)}break;case _.Vue:case _.Angular:B("Error: There are no templates for this game type and UI framework"),process.exit(0);default:B("Error: Unknown UI framework"),process.exit(0)}break;case V.TextStory:switch(u){case _.React:switch(a){case k.Typescript:o?c="template-story-react-vite-muijoy-tauri":c="template-story-react-vite-muijoy",D="src/labels/startLabel.ts";break;case k.Ink:o?c="template-story-react-vite-muijoy-ink-tauri":c="template-story-react-vite-muijoy-ink",D="src/ink/start.ink";break;case k.Renpy:B("Error: There are no templates for this narrative language"),process.exit(0);default:B("Error: Unknown narrative language"),process.exit(0)}break;case _.Vue:case _.Angular:B("Error: There are no templates for this game type and UI framework"),process.exit(0);default:B("Error: Unknown UI framework"),process.exit(0)}break;case V.PointAndClick:switch(u){case _.React:switch(a){case k.Typescript:o?c="template-nqtr-react-vite-muijoy-tauri":c="template-nqtr-react-vite-muijoy",D="src/labels/startLabel.ts";break;case k.Ink:o?c="template-nqtr-react-vite-muijoy-ink-tauri":c="template-nqtr-react-vite-muijoy-ink",D="src/ink/variousActionsLabels.ink";break;case k.Renpy:B("Error: There are no templates for this narrative language"),process.exit(0);default:B("Error: Unknown narrative language"),process.exit(0)}break;case _.Vue:case _.Angular:B("Error: There are no templates for this game type and UI framework"),process.exit(0);default:B("Error: Unknown UI framework"),process.exit(0)}break;case V.GameEngine:c="template-game-engine",D="src/index.ts";break;case V.Library:c="template-lib",D="src/index.ts";break;default:B("Error: Unknown game type"),process.exit(0)}return await De({rootFolder:C,template:c,packageName:r,description:e,projectName:i,overwrite:t,identifier:E}),{rootFolder:C,fileToOpen:D}}function re(){console.info(`
|
|
41
|
+
`)},Ir=d.magenta,kr=({indicator:e="dots",onCancel:i,output:r=process.stdout,cancelMessage:s,errorMessage:o,frames:t=Le?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],delay:n=Le?80:120,signal:l,...a}={})=>{const f=er();let $,b,h=!1,I=!1,c="",u,m=performance.now();const v=Te(r),w=a?.styleFrame??Ir,x=M=>{const P=M>1?o??z.messages.error:s??z.messages.cancel;I=M===1,h&&(R(P,M),I&&typeof i=="function"&&i())},y=()=>x(2),S=()=>x(1),k=()=>{process.on("uncaughtExceptionMonitor",y),process.on("unhandledRejection",y),process.on("SIGINT",S),process.on("SIGTERM",S),process.on("exit",x),l&&l.addEventListener("abort",S)},p=()=>{process.removeListener("uncaughtExceptionMonitor",y),process.removeListener("unhandledRejection",y),process.removeListener("SIGINT",S),process.removeListener("SIGTERM",S),process.removeListener("exit",x),l&&l.removeEventListener("abort",S)},g=()=>{if(u===void 0)return;f&&r.write(`
|
|
42
|
+
`);const M=Ke(u,v,{hard:!0,trim:!1}).split(`
|
|
43
|
+
`);M.length>1&&r.write(V.cursor.up(M.length-1)),r.write(V.cursor.to(0)),r.write(V.erase.down())},F=M=>M.replace(/\.+$/,""),E=M=>{const P=(performance.now()-M)/1e3,Y=Math.floor(P/60),q=Math.floor(P%60);return Y>0?`[${Y}m ${q}s]`:`[${q}s]`},j=a.withGuide??z.withGuide,B=(M="")=>{h=!0,$=Hi({output:r}),c=F(M),m=performance.now(),j&&r.write(`${d.gray(C)}
|
|
44
|
+
`);let P=0,Y=0;k(),b=setInterval(()=>{if(f&&c===u)return;g(),u=c;const q=w(t[P]);let oe;if(f)oe=`${q} ${c}...`;else if(e==="timer")oe=`${q} ${c} ${E(m)}`;else{const Ai=".".repeat(Math.floor(Y)).slice(0,3);oe=`${q} ${c}${Ai}`}const _i=Ke(oe,v,{hard:!0,trim:!1});r.write(_i),P=P+1<t.length?P+1:0,Y=Y<4?Y+.125:0},n)},R=(M="",P=0,Y=!1)=>{if(!h)return;h=!1,clearInterval(b),g();const q=P===0?d.green(Ne):P===1?d.red(li):d.red(ci);c=M??c,Y||(e==="timer"?r.write(`${q} ${c} ${E(m)}
|
|
45
|
+
`):r.write(`${q} ${c}
|
|
46
|
+
`)),p(),$()};return{start:B,stop:(M="")=>R(M,0),message:(M="")=>{c=F(M??c)},cancel:(M="")=>R(M,1),error:(M="")=>R(M,2),clear:()=>R("",0,!0),get isCancelled(){return I}}},we=(e,i)=>e.includes(`
|
|
47
|
+
`)?e.split(`
|
|
48
|
+
`).map(r=>i(r)).join(`
|
|
49
|
+
`):i(e),J=e=>{const i=(r,s)=>{const o=r.label??String(r.value);switch(s){case"disabled":return`${d.gray(de)} ${we(o,d.gray)}${r.hint?` ${d.dim(`(${r.hint??"disabled"})`)}`:""}`;case"selected":return`${we(o,d.dim)}`;case"active":return`${d.green(De)} ${o}${r.hint?` ${d.dim(`(${r.hint})`)}`:""}`;case"cancelled":return`${we(o,t=>d.strikethrough(d.dim(t)))}`;default:return`${d.dim(de)} ${we(o,d.dim)}`}};return new Zi({options:e.options,signal:e.signal,input:e.input,output:e.output,initialValue:e.initialValue,render(){const r=e.withGuide??z.withGuide,s=`${Be(this.state)} `,o=`${tr(this.state)} `,t=Re(e.output,e.message,o,s),n=`${r?`${d.gray(C)}
|
|
50
|
+
`:""}${t}
|
|
51
|
+
`;switch(this.state){case"submit":{const l=r?`${d.gray(C)} `:"",a=Re(e.output,i(this.options[this.cursor],"selected"),l);return`${n}${a}`}case"cancel":{const l=r?`${d.gray(C)} `:"",a=Re(e.output,i(this.options[this.cursor],"cancelled"),l);return`${n}${a}${r?`
|
|
52
|
+
${d.gray(C)}`:""}`}default:{const l=r?`${d.cyan(C)} `:"",a=r?d.cyan(X):"",f=n.split(`
|
|
53
|
+
`).length,$=r?2:1;return`${n}${l}${xr({output:e.output,cursor:this.cursor,options:this.options,maxItems:e.maxItems,columnPadding:l.length,rowPadding:f+$,style:(b,h)=>i(b,b.disabled?"disabled":h?"active":"inactive")}).join(`
|
|
54
|
+
${l}`)}
|
|
55
|
+
${a}
|
|
56
|
+
`}}}}).prompt()};`${d.gray(C)}`;const xe=async(e,i)=>{for(const r of e){if(r.enabled===!1)continue;const s=kr(i);s.start(r.title);const o=await r.task(s.message);s.stop(o||r.title)}},ne=e=>new Qi({validate:e.validate,placeholder:e.placeholder,defaultValue:e.defaultValue,initialValue:e.initialValue,output:e.output,signal:e.signal,input:e.input,render(){const i=e?.withGuide??z.withGuide,r=`${`${i?`${d.gray(C)}
|
|
57
|
+
`:""}${Be(this.state)} `}${e.message}
|
|
58
|
+
`,s=e.placeholder?d.inverse(e.placeholder[0])+d.dim(e.placeholder.slice(1)):d.inverse(d.hidden("_")),o=this.userInput?this.userInputWithCursor:s,t=this.value??"";switch(this.state){case"error":{const n=this.error?` ${d.yellow(this.error)}`:"",l=i?`${d.yellow(C)} `:"",a=i?d.yellow(X):"";return`${r.trim()}
|
|
59
|
+
${l}${o}
|
|
60
|
+
${a}${n}
|
|
61
|
+
`}case"submit":{const n=t?` ${d.dim(t)}`:"",l=i?d.gray(C):"";return`${r}${l}${n}`}case"cancel":{const n=t?` ${d.strikethrough(d.dim(t))}`:"",l=i?d.gray(C):"";return`${r}${l}${n}${t.trim()?`
|
|
62
|
+
${l}`:""}`}default:{const n=i?`${d.cyan(C)} `:"",l=i?d.cyan(X):"";return`${r}${n}${o}
|
|
63
|
+
${l}
|
|
64
|
+
`}}}}).prompt();let Z=!0;const ee=typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{};let ae=0;if(ee.process&&ee.process.env&&ee.process.stdout){const{FORCE_COLOR:e,NODE_DISABLE_COLORS:i,NO_COLOR:r,TERM:s,COLORTERM:o}=ee.process.env;i||r||e==="0"?Z=!1:e==="1"||e==="2"||e==="3"?Z=!0:s==="dumb"?Z=!1:"CI"in ee.process.env&&["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(t=>t in ee.process.env)?Z=!0:Z=process.stdout.isTTY,Z&&(process.platform==="win32"||o&&(o==="truecolor"||o==="24bit")?ae=3:s&&(s.endsWith("-256color")||s.endsWith("256"))?ae=2:ae=1)}let $i={enabled:Z,supportLevel:ae};function ye(e,i,r=1){const s=`\x1B[${e}m`,o=`\x1B[${i}m`,t=new RegExp(`\\x1b\\[${i}m`,"g");return n=>$i.enabled&&$i.supportLevel>=r?s+(""+n).replace(t,s)+o:""+n}const Sr=ye(31,39),Ee=ye(36,39),_r=ye(90,39),Ar=ye(91,39);var Ye,wi;function Cr(){if(wi)return Ye;wi=1;function e(s,o){var t=s;o.slice(0,-1).forEach(function(l){t=t[l]||{}});var n=o[o.length-1];return n in t}function i(s){return typeof s=="number"||/^0x[0-9a-f]+$/i.test(s)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(s)}function r(s,o){return o==="constructor"&&typeof s[o]=="function"||o==="__proto__"}return Ye=function(s,o){o||(o={});var t={bools:{},strings:{},unknownFn:null};typeof o.unknown=="function"&&(t.unknownFn=o.unknown),typeof o.boolean=="boolean"&&o.boolean?t.allBools=!0:[].concat(o.boolean).filter(Boolean).forEach(function(p){t.bools[p]=!0});var n={};function l(p){return n[p].some(function(g){return t.bools[g]})}Object.keys(o.alias||{}).forEach(function(p){n[p]=[].concat(o.alias[p]),n[p].forEach(function(g){n[g]=[p].concat(n[p].filter(function(F){return g!==F}))})}),[].concat(o.string).filter(Boolean).forEach(function(p){t.strings[p]=!0,n[p]&&[].concat(n[p]).forEach(function(g){t.strings[g]=!0})});var a=o.default||{},f={_:[]};function $(p,g){return t.allBools&&/^--[^=]+$/.test(g)||t.strings[p]||t.bools[p]||n[p]}function b(p,g,F){for(var E=p,j=0;j<g.length-1;j++){var B=g[j];if(r(E,B))return;E[B]===void 0&&(E[B]={}),(E[B]===Object.prototype||E[B]===Number.prototype||E[B]===String.prototype)&&(E[B]={}),E[B]===Array.prototype&&(E[B]=[]),E=E[B]}var R=g[g.length-1];r(E,R)||((E===Object.prototype||E===Number.prototype||E===String.prototype)&&(E={}),E===Array.prototype&&(E=[]),E[R]===void 0||t.bools[R]||typeof E[R]=="boolean"?E[R]=F:Array.isArray(E[R])?E[R].push(F):E[R]=[E[R],F])}function h(p,g,F){if(!(F&&t.unknownFn&&!$(p,F)&&t.unknownFn(F)===!1)){var E=!t.strings[p]&&i(g)?Number(g):g;b(f,p.split("."),E),(n[p]||[]).forEach(function(j){b(f,j.split("."),E)})}}Object.keys(t.bools).forEach(function(p){h(p,a[p]===void 0?!1:a[p])});var I=[];s.indexOf("--")!==-1&&(I=s.slice(s.indexOf("--")+1),s=s.slice(0,s.indexOf("--")));for(var c=0;c<s.length;c++){var u=s[c],m,v;if(/^--.+=/.test(u)){var w=u.match(/^--([^=]+)=([\s\S]*)$/);m=w[1];var x=w[2];t.bools[m]&&(x=x!=="false"),h(m,x,u)}else if(/^--no-.+/.test(u))m=u.match(/^--no-(.+)/)[1],h(m,!1,u);else if(/^--.+/.test(u))m=u.match(/^--(.+)/)[1],v=s[c+1],v!==void 0&&!/^(-|--)[^-]/.test(v)&&!t.bools[m]&&!t.allBools&&(!n[m]||!l(m))?(h(m,v,u),c+=1):/^(true|false)$/.test(v)?(h(m,v==="true",u),c+=1):h(m,t.strings[m]?"":!0,u);else if(/^-[^-]+/.test(u)){for(var y=u.slice(1,-1).split(""),S=!1,k=0;k<y.length;k++){if(v=u.slice(k+2),v==="-"){h(y[k],v,u);continue}if(/[A-Za-z]/.test(y[k])&&v[0]==="="){h(y[k],v.slice(1),u),S=!0;break}if(/[A-Za-z]/.test(y[k])&&/-?\d+(\.\d*)?(e-?\d+)?$/.test(v)){h(y[k],v,u),S=!0;break}if(y[k+1]&&y[k+1].match(/\W/)){h(y[k],u.slice(k+2),u),S=!0;break}else h(y[k],t.strings[y[k]]?"":!0,u)}m=u.slice(-1)[0],!S&&m!=="-"&&(s[c+1]&&!/^(-|--)[^-]/.test(s[c+1])&&!t.bools[m]&&(!n[m]||!l(m))?(h(m,s[c+1],u),c+=1):s[c+1]&&/^(true|false)$/.test(s[c+1])?(h(m,s[c+1]==="true",u),c+=1):h(m,t.strings[m]?"":!0,u))}else if((!t.unknownFn||t.unknownFn(u)!==!1)&&f._.push(t.strings._||!i(u)?u:Number(u)),o.stopEarly){f._.push.apply(f._,s.slice(c+1));break}}return Object.keys(a).forEach(function(p){e(f,p.split("."))||(b(f,p.split("."),a[p]),(n[p]||[]).forEach(function(g){b(f,g.split("."),a[p])}))}),o["--"]?f["--"]=I.slice():I.forEach(function(p){f._.push(p)}),f},Ye}var Fr=Cr();const Mr=Qe(Fr);async function Or({rootFolder:e}){const i=O.join(e,".git");try{if(_.existsSync(i)){W.warn("Git repository already exists.");return}}catch(s){W.error(`Error checking git folder: ${s}`);return}const r=await J({message:"Do you want to initialize a git repository? (recommended)",options:[{value:!0,label:"Yes",hint:"You can use GitHub to track changes and collaborate with others."},{value:!1,label:"No",hint:"It is not recommended to skip this step."}],initialValue:!0});if(N(r)&&(A("Operation cancelled."),process.exit(0)),r){const s=await xe([{title:"Initializing git repository...",task:async o=>{const t=await H("git",["init","-b","main"],{cwd:e});o(t.stdout);const n=await H("git",["add","."],{cwd:e});return o(n.stdout),"Git repository initialized."}}]);N(s)&&(A("Operation cancelled."),process.exit(0)),W.message(`Now, you can use GitHub Desktop upload your project to GitHub.
|
|
65
|
+
GitHub Desktop: https://github.com/apps/desktop`)}}var ie=(e=>(e.VisualStudioCode="vscode",e.Cursor="cursor",e.VSCodium="codium",e.Other="other",e))(ie||{});async function jr({rootFolder:e,fileToOpen:i}){const r=await J({message:"Which IDE do you want to use?",options:[{value:ie.VisualStudioCode,label:"Visual Studio Code"},{value:ie.Cursor,label:"Cursor"},{value:ie.VSCodium,label:"VSCodium"},{value:ie.Other,label:"Other"}],initialValue:ie.VisualStudioCode});if(N(r)&&(A("Operation cancelled."),process.exit(0)),r===void 0)return;let s,o;switch(r){case"vscode":o="Opening in Visual Studio Code...",s="code";break;case"cursor":o="Opening in Cursor...",s="cursor";break;case"codium":o="Opening in VSCodium...",s="codium";break;default:return}await xe([{title:o,task:async t=>{try{await Ze(s);const n=await H(s,[e]);t(n.stdout);const l=await H(s,[`${e}/README.md`]);if(t(l.stdout),i){const a=await H(s,[`${e}/${i}`]);t(a.stdout)}return`Opened project using ${r}`}catch{return`Could not open project using ${r}, since ${r} was not in your PATH`}}}])}var K=(e=>(e[e.VisualNovel=0]="VisualNovel",e[e.TextStory=1]="TextStory",e[e.PointAndClick=2]="PointAndClick",e[e.GameEngine=3]="GameEngine",e[e.Library=4]="Library",e))(K||{}),T=(e=>(e[e.Ink=0]="Ink",e[e.Renpy=1]="Renpy",e[e.Typescript=2]="Typescript",e))(T||{}),D=(e=>(e[e.React=0]="React",e[e.Vue=1]="Vue",e[e.Angular=2]="Angular",e))(D||{});const xi="My Game",yi="my-game",Q=[{type:K.VisualNovel,name:"Visual Novel",availableUI:[D.React],availableNarrativeLanguages:[T.Ink,T.Typescript],isMultidevice:!0},{type:K.TextStory,name:"Text-based Story",availableUI:[D.React],availableNarrativeLanguages:[T.Ink,T.Typescript],isMultidevice:!0},{type:K.PointAndClick,name:"Point & Click Adventure",availableUI:[D.React],availableNarrativeLanguages:[T.Ink,T.Typescript],isMultidevice:!0},{type:K.GameEngine,name:"Game Engine",availableUI:[],availableNarrativeLanguages:[],isMultidevice:!1},{type:K.Library,name:"Library",availableUI:[],availableNarrativeLanguages:[],isMultidevice:!1}];async function Tr({packageName:e}){const i=await J({message:"Select the type of game you want to create:",options:Q.map(f=>({label:f.name,value:f.type})),initialValue:Q[0].type});N(i)&&(A("Operation cancelled."),process.exit(0));const r=Q.find(f=>f.type===i)?.availableUI.map(f=>{let $="";switch(f){case D.React:$=Ee("React");break;case D.Vue:$=_r("Vue");break;case D.Angular:$=Sr("Angular");break}return{label:$,value:f}})||[];let s;r.length===1?(W.warning(`Only one UI framework available: ${r[0].label}. Using it by default.`),s=r[0].value):r.length>0?(s=await J({message:"Select the UI framework you want to use:",options:r,initialValue:Q.find(f=>f.type===i)?.availableUI[0]}),N(s)&&(A("Operation cancelled."),process.exit(0))):s=void 0;const o=Q.find(f=>f.type===i)?.availableNarrativeLanguages.map(f=>{let $="";switch(f){case T.Ink:$="Ink + Typescript";break;case T.Renpy:$=Ar("Renpy");break;case T.Typescript:$=Ee("Typescript");break}return{label:$,value:f}})||[];let t;o.length===1?(W.warning(`Only one narrative language available: ${o[0].label}. Using it by default.`),t=o[0].value):o.length>0?(t=await J({message:"Select the narrative language you want to use:",options:o,initialValue:Q.find(f=>f.type===i)?.availableNarrativeLanguages[0]}),N(t)&&(A("Operation cancelled."),process.exit(0))):t=void 0;const n=Q.find(f=>f.type===i)?.isMultidevice;let l=!1,a="";return n&&(l=await J({message:"Which devices is the project intended for?",options:[{label:"Web page",value:!1},{label:"Web page + Desktop + Mobile (Tauri)",value:!0}],initialValue:!1}),N(l)&&(A("Operation cancelled."),process.exit(0)),l?(a=await ne({message:"Project identifier:",initialValue:`com.${e}.app`,validate:f=>{if(!f)return"Identifier is required.";if(!/^[a-zA-Z0-9_.\-]+$/.test(f))return"Identifier can only contain letters, numbers, underscores, dots and dashes."}}),N(a)&&(A("Operation cancelled."),process.exit(0))):a=""),{gameType:i,UIFramework:s,narrativeLanguage:t,multidevice:l,identifier:a}}var L=(e=>(e.Delete="delete",e.Overwrite="overwrite",e.Skip="skip",e.Ask="ask",e.Cancel="cancel",e))(L||{});function Rr(e){const i=_.readdirSync(e);return i.length===0||i.length===1&&i[0]===".git"}function Ei(e,i,r){if(!_.existsSync(i))return;const s=_.statSync(i);if(s.isFile())(r===L.Overwrite||r===L.Delete)&&_.rmSync(i,{force:!0});else if(s.isDirectory()){const o=_.readdirSync(e);for(const t of o){const n=O.join(e,t),l=O.join(i,t);Ei(n,l,r)}}}function qe(e,i,r){if(_.statSync(e).isDirectory()){_.mkdirSync(i,{recursive:!0});for(const s of _.readdirSync(e)){const o=O.join(e,s),t=O.join(i,s);qe(o,t,r)}}else{if(r!==void 0&&_.existsSync(i)){if(r===L.Skip)return;(r===L.Overwrite||r===L.Delete)&&_.rmSync(i,{force:!0})}_.copyFileSync(e,i)}}function Vr(e){return/^(?:@[a-z\d\-*~][a-z\d\-*._~]*\/)?[a-z\d\-~][a-z\d\-._~]*$/.test(e)}function Ii(e){return e.trim().toLowerCase().replace(/\s+/g,"-").replace(/^[._]/,"").replace(/[^a-z\d\-~]+/g,"-")}async function Lr(){const e=await ne({message:"Project name:",defaultValue:xi,placeholder:xi,validate:n=>{if(!n)return"Project name cannot be empty"}});N(e)&&(A("Operation cancelled."),process.exit(0));const i=await ne({message:"Project description:",defaultValue:"A new game project",placeholder:"A new game project",validate:n=>{if(!n)return"Project description cannot be empty"}});N(i)&&(A("Operation cancelled."),process.exit(0));const r=await ne({message:"Package name:",defaultValue:Ii(yi),placeholder:Ii(yi),validate:n=>{if(!n)return"Package name cannot be empty";if(!Vr(n))return"Invalid package name. The name can only include URL-friendly characters."}});N(r)&&(A("Operation cancelled."),process.exit(0));const s=O.basename(O.resolve()),o=await ne({message:"Target directory:",defaultValue:r,placeholder:`${r} (If is equal to ".", the current directory (${s}) will be used)`});N(o)&&(A("Operation cancelled."),process.exit(0));let t;return _.existsSync(o)&&!Rr(o)?(t=await J({message:"Overwrite existing files?",options:[{hint:"Delete all existing files and create a new project",label:"Delete all",value:L.Delete},{hint:"Overwrite existing conflicting files",label:"Overwrite",value:L.Overwrite},{hint:"Skip existing conflicting files",label:"Skip",value:L.Skip},{hint:"Ask for each file",label:"Ask",value:L.Ask},{hint:"Cancel operation",label:"Cancel",value:L.Cancel}],initialValue:L.Overwrite}),(N(t)||t===L.Cancel)&&(A("Operation cancelled."),process.exit(0))):t=void 0,{projectName:e,foltderName:o,description:i,packageName:r,overwrite:t}}const ki={_gitignore:".gitignore"};async function Nr({rootFolder:e,overwrite:i,template:r,packageName:s,description:o,projectName:t,identifier:n}){const l=await xe([{title:`Creating project in ${e}...`,task:async()=>{_.existsSync(e)||_.mkdirSync(e,{recursive:!0});const a=O.resolve(Fi(import.meta.url),"../..",`${r}`),f=(I,c)=>{const u=O.join(e,ki[I]??I);c?_.writeFileSync(u,c):qe(O.join(a,I),u,i)},$=_.readdirSync(a).map(async I=>{const c=O.join(a,I),u=O.join(e,ki[I]??I);if(_.existsSync(u))switch(i){case L.Ask:if(_.statSync(u).isFile()){const m=await vi({message:`File ${u} already exists. Do you want to overwrite it?`,initialValue:!1});if(N(m)&&(A("Operation cancelled."),process.exit(0)),!m)return;_.rmSync(u,{force:!0})}else{const m=_.readdirSync(c);for(const v of m){const w=O.join(c,v),x=O.join(u,v);if(_.existsSync(x)){const y=await vi({message:`File ${x} already exists. Do you want to overwrite it?`,initialValue:!1});if(N(y)&&(A("Operation cancelled."),process.exit(0)),!y)continue;_.rmSync(x,{force:!0})}qe(w,x,i)}return}break;case L.Skip:return;case L.Overwrite:case L.Delete:Ei(c,u,i);break}switch(I){case"package.json":case"vite.config.ts":case"index.html":let m=_.readFileSync(c,"utf-8");m=m.replace(/my-app-package-name/g,s),m=m.replace(/my-app-description/g,o),m=m.replace(/my-app-project-name/g,t),f(I,m);break;case".git":case"package-lock.json":break;default:f(I)}});await Promise.all($);const b=O.join(e,"src-tauri");if(_.existsSync(b)){const I=_.readdirSync(b).map(async c=>{switch(c){case"Cargo.lock":case"Cargo.toml":case"tauri.conf.json":let u=_.readFileSync(O.join(b,c),"utf-8");u=u.replace(/my-app-package-name/g,s),u=u.replace(/my-app-description/g,o),u=u.replace(/my-app-project-name/g,t),u=u.replace(/com.my-app-project-name.app/g,n),f(O.join("src-tauri",c),u)}});await Promise.all(I)}const h=O.join(e,"_github");return _.existsSync(h)&&_.renameSync(h,O.join(e,".github")),"Project created"}}]);N(l)&&(A("Operation cancelled."),process.exit(0))}const Dr=process.cwd();async function Br(){let e,{description:i,overwrite:r,packageName:s,projectName:o,foltderName:t}=await Lr(),{UIFramework:n,gameType:l,narrativeLanguage:a,multidevice:f,identifier:$}=await Tr({packageName:s});const b=O.join(Dr,t);let h;switch(l){case K.VisualNovel:switch(n){case D.React:switch(a){case T.Typescript:f?h="template-react-vite-muijoy-tauri":h="template-react-vite-muijoy",e="src/labels/startLabel.ts";break;case T.Ink:f?h="template-react-vite-muijoy-ink-tauri":h="template-react-vite-muijoy-ink",e="src/ink/start.ink";break;case T.Renpy:A("Error: There are no templates for this narrative language"),process.exit(0);default:A("Error: Unknown narrative language"),process.exit(0)}break;case D.Vue:case D.Angular:A("Error: There are no templates for this game type and UI framework"),process.exit(0);default:A("Error: Unknown UI framework"),process.exit(0)}break;case K.TextStory:switch(n){case D.React:switch(a){case T.Typescript:f?h="template-story-react-vite-muijoy-tauri":h="template-story-react-vite-muijoy",e="src/labels/startLabel.ts";break;case T.Ink:f?h="template-story-react-vite-muijoy-ink-tauri":h="template-story-react-vite-muijoy-ink",e="src/ink/start.ink";break;case T.Renpy:A("Error: There are no templates for this narrative language"),process.exit(0);default:A("Error: Unknown narrative language"),process.exit(0)}break;case D.Vue:case D.Angular:A("Error: There are no templates for this game type and UI framework"),process.exit(0);default:A("Error: Unknown UI framework"),process.exit(0)}break;case K.PointAndClick:switch(n){case D.React:switch(a){case T.Typescript:f?h="template-nqtr-react-vite-muijoy-tauri":h="template-nqtr-react-vite-muijoy",e="src/labels/startLabel.ts";break;case T.Ink:f?h="template-nqtr-react-vite-muijoy-ink-tauri":h="template-nqtr-react-vite-muijoy-ink",e="src/ink/variousActionsLabels.ink";break;case T.Renpy:A("Error: There are no templates for this narrative language"),process.exit(0);default:A("Error: Unknown narrative language"),process.exit(0)}break;case D.Vue:case D.Angular:A("Error: There are no templates for this game type and UI framework"),process.exit(0);default:A("Error: Unknown UI framework"),process.exit(0)}break;case K.GameEngine:h="template-game-engine",e="src/index.ts";break;case K.Library:h="template-lib",e="src/index.ts";break;default:A("Error: Unknown game type"),process.exit(0)}return await Nr({rootFolder:b,template:h,packageName:s,description:i,projectName:o,overwrite:r,identifier:$}),{rootFolder:b,fileToOpen:e}}function Ur(){console.info(`
|
|
49
66
|
\u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2557 \u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2588\u2557 \u2588\u2588\u2557
|
|
50
67
|
\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2551\u255A\u2588\u2588\u2557\u2588\u2588\u2554\u255D\u2588\u2588\u2551 \u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551
|
|
51
68
|
\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2554\u255D \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2554\u2588\u2588\u2557 \u2588\u2588\u2551
|
|
52
69
|
\u2588\u2588\u2554\u2550\u2550\u2550\u255D \u2588\u2588\u2551 \u2588\u2588\u2554\u2588\u2588\u2557 \u2588\u2588\u2551\u255A\u2550\u2550\u2550\u2550\u255D\u255A\u2588\u2588\u2557 \u2588\u2588\u2554\u255D\u2588\u2588\u2551\u255A\u2588\u2588\u2557\u2588\u2588\u2551
|
|
53
70
|
\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2554\u255D \u2588\u2588\u2557\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2554\u255D \u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2551
|
|
54
71
|
\u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u2550\u2550\u255D \u255A\u2550\u255D \u255A\u2550\u2550\u2550\u255D
|
|
55
|
-
`)}function
|
|
72
|
+
`)}function Wr(e){if(!e)return;const i=e.split(" ")[0].split("/");return{name:i[0],version:i[1]}}const Pr=Mr(process.argv.slice(2),{default:{help:!1},alias:{h:"help",t:"template"},string:["_"]}),Si=process.cwd(),Gr=`Usage: create-pixi-vn [OPTION]... [DIRECTORY]
|
|
56
73
|
|
|
57
74
|
Create a new Pixi\u2019VN project.
|
|
58
75
|
With no arguments, start the CLI in interactive mode.
|
|
@@ -61,7 +78,7 @@ Options:
|
|
|
61
78
|
-t, --template NAME use a specific template
|
|
62
79
|
|
|
63
80
|
Available templates:
|
|
64
|
-
${
|
|
65
|
-
cd ${
|
|
66
|
-
yarn dev`;break;default:
|
|
67
|
-
${
|
|
81
|
+
${Ee("basic-visual-novel react")}`;async function zr(){try{if(Ur(),yr(`Welcome to ${Ee("Pixi\u2019VN")}! \u{1F3A8}\u2728`),Pr.help){console.log(Gr);return}const{rootFolder:e,fileToOpen:i}=await Br();await Or({rootFolder:e});const r=Wr(process.env.npm_config_user_agent),s=r?r.name:"npm",o=O.relative(Si,e);await jr({rootFolder:e,fileToOpen:i}),await xe([{title:"Installing dependencies...",task:async n=>{try{await Ze(s),s==="yarn"?await H("yarn",[],{cwd:e}):await H(s,["install"],{cwd:e})}catch{return`Could not use ${s} to install dependencies`}return"Dependencies installed."}}]),W.message("Refer to the README.md file for detailed information about the project.");let t="To run the game:";switch(e!==Si&&(t+=`
|
|
82
|
+
cd ${o.includes(" ")?`"${o}"`:o}`),s){case"yarn":t+=`
|
|
83
|
+
yarn dev`;break;default:t+=`
|
|
84
|
+
${s} run start`;break}W.message(t),Er("You're all set! \u{1F389} Now go build your game! \u{1F680}"),console.log()}catch(e){console.error(e)}}zr().catch(e=>{console.error(e)});
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-pixi-vn",
|
|
3
3
|
"description": "Create a new Pixi’VN project",
|
|
4
|
-
"version": "1.9.
|
|
4
|
+
"version": "1.9.2",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "GPL-3.0",
|
|
7
7
|
"author": "DRincs-Productions",
|
|
@@ -48,16 +48,16 @@
|
|
|
48
48
|
"homepage": "https://pixi-vn.web.app/",
|
|
49
49
|
"funding": "https://github.com/DRincs-Productions/pixi-vn?sponsor=1",
|
|
50
50
|
"devDependencies": {
|
|
51
|
-
"@clack/prompts": "^0.
|
|
51
|
+
"@clack/prompts": "^1.0.0",
|
|
52
52
|
"@types/minimist": "^1.2.5",
|
|
53
53
|
"@types/which": "^3.0.4",
|
|
54
|
-
"inquirer": "^13.
|
|
54
|
+
"inquirer": "^13.2.2",
|
|
55
55
|
"kolorist": "^1.8.0",
|
|
56
56
|
"minimist": "^1.2.8",
|
|
57
57
|
"unbuild": "^3.6.1"
|
|
58
58
|
},
|
|
59
59
|
"dependencies": {
|
|
60
60
|
"execa": "^9.6.1",
|
|
61
|
-
"which": "^6.0.
|
|
61
|
+
"which": "^6.0.1"
|
|
62
62
|
}
|
|
63
63
|
}
|