@nestjs-ssr/react 0.1.9 → 0.1.11

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.
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../node_modules/.pnpm/consola@3.4.2/node_modules/consola/dist/chunks/prompt.mjs","../../../../node_modules/.pnpm/consola@3.4.2/node_modules/consola/dist/core.mjs","../../../../node_modules/.pnpm/consola@3.4.2/node_modules/consola/dist/shared/consola.DRwqZj3T.mjs","../../../../node_modules/.pnpm/consola@3.4.2/node_modules/consola/dist/shared/consola.DXBYu-KD.mjs","../../../../node_modules/.pnpm/consola@3.4.2/node_modules/consola/dist/index.mjs","../../../../node_modules/.pnpm/citty@0.1.6/node_modules/citty/dist/index.mjs","../../src/cli/init.ts"],"names":["x","y","i","argv","env","isColorSupported","replaceClose","createColors","f","t","F","u","e","s","C","D","g","o","a","n","B","stdin","stdout","WriteStream","r","c","l","v","sep","formatWithOptions","tty","I","T","R","A","_","O","L","S","N","G","P","ansiRegex","stripAnsi","g$1","m","getColor","createConsola","k","__filename","fileURLToPath","__dirname","dirname","main","defineCommand","meta","name","description","version","args","force","type","alias","views","default","run","cwd","process","viewsDir","consola","box","start","templateLocations","resolve","templateDir","find","loc","existsSync","join","error","info","exit","globalTypesLocations","globalTypesSrc","tsconfigPath","entryClientSrc","entryClientDest","mkdirSync","recursive","warn","copyFileSync","success","entryServerSrc","entryServerDest","globalTypesDest","viteConfigPath","viteConfigTs","useTypeScript","configPath","log","viteConfig","writeFileSync","tsconfig","JSON","parse","readFileSync","updated","compilerOptions","jsx","paths","types","includes","push","stringify","packageJsonPath","packageJson","scripts","existingBuild","build","defaultNestBuild","ssrBuildPrefix","shouldUpdate","newBuildScript","requiredDeps","missingDeps","allDeps","dependencies","devDependencies","dep","Object","entries","length","packageManager","installCmd","execSync","stdio","runMain"],"mappings":"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","file":"init.js","sourcesContent":["import 'node:util';\nimport g, { stdin, stdout } from 'node:process';\nimport f from 'node:readline';\nimport { WriteStream } from 'node:tty';\n\nfunction getDefaultExportFromCjs (x) {\n\treturn x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;\n}\n\nvar src;\nvar hasRequiredSrc;\n\nfunction requireSrc () {\n\tif (hasRequiredSrc) return src;\n\thasRequiredSrc = 1;\n\n\tconst ESC = '\\x1B';\n\tconst CSI = `${ESC}[`;\n\tconst beep = '\\u0007';\n\n\tconst cursor = {\n\t to(x, y) {\n\t if (!y) return `${CSI}${x + 1}G`;\n\t return `${CSI}${y + 1};${x + 1}H`;\n\t },\n\t move(x, y) {\n\t let ret = '';\n\n\t if (x < 0) ret += `${CSI}${-x}D`;\n\t else if (x > 0) ret += `${CSI}${x}C`;\n\n\t if (y < 0) ret += `${CSI}${-y}A`;\n\t else if (y > 0) ret += `${CSI}${y}B`;\n\n\t return ret;\n\t },\n\t up: (count = 1) => `${CSI}${count}A`,\n\t down: (count = 1) => `${CSI}${count}B`,\n\t forward: (count = 1) => `${CSI}${count}C`,\n\t backward: (count = 1) => `${CSI}${count}D`,\n\t nextLine: (count = 1) => `${CSI}E`.repeat(count),\n\t prevLine: (count = 1) => `${CSI}F`.repeat(count),\n\t left: `${CSI}G`,\n\t hide: `${CSI}?25l`,\n\t show: `${CSI}?25h`,\n\t save: `${ESC}7`,\n\t restore: `${ESC}8`\n\t};\n\n\tconst scroll = {\n\t up: (count = 1) => `${CSI}S`.repeat(count),\n\t down: (count = 1) => `${CSI}T`.repeat(count)\n\t};\n\n\tconst erase = {\n\t screen: `${CSI}2J`,\n\t up: (count = 1) => `${CSI}1J`.repeat(count),\n\t down: (count = 1) => `${CSI}J`.repeat(count),\n\t line: `${CSI}2K`,\n\t lineEnd: `${CSI}K`,\n\t lineStart: `${CSI}1K`,\n\t lines(count) {\n\t let clear = '';\n\t for (let i = 0; i < count; i++)\n\t clear += this.line + (i < count - 1 ? cursor.up() : '');\n\t if (count)\n\t clear += cursor.left;\n\t return clear;\n\t }\n\t};\n\n\tsrc = { cursor, scroll, erase, beep };\n\treturn src;\n}\n\nvar srcExports = requireSrc();\n\nvar picocolors = {exports: {}};\n\nvar hasRequiredPicocolors;\n\nfunction requirePicocolors () {\n\tif (hasRequiredPicocolors) return picocolors.exports;\n\thasRequiredPicocolors = 1;\n\tlet p = process || {}, argv = p.argv || [], env = p.env || {};\n\tlet isColorSupported =\n\t\t!(!!env.NO_COLOR || argv.includes(\"--no-color\")) &&\n\t\t(!!env.FORCE_COLOR || argv.includes(\"--color\") || p.platform === \"win32\" || ((p.stdout || {}).isTTY && env.TERM !== \"dumb\") || !!env.CI);\n\n\tlet formatter = (open, close, replace = open) =>\n\t\tinput => {\n\t\t\tlet string = \"\" + input, index = string.indexOf(close, open.length);\n\t\t\treturn ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close\n\t\t};\n\n\tlet replaceClose = (string, close, replace, index) => {\n\t\tlet result = \"\", cursor = 0;\n\t\tdo {\n\t\t\tresult += string.substring(cursor, index) + replace;\n\t\t\tcursor = index + close.length;\n\t\t\tindex = string.indexOf(close, cursor);\n\t\t} while (~index)\n\t\treturn result + string.substring(cursor)\n\t};\n\n\tlet createColors = (enabled = isColorSupported) => {\n\t\tlet f = enabled ? formatter : () => String;\n\t\treturn {\n\t\t\tisColorSupported: enabled,\n\t\t\treset: f(\"\\x1b[0m\", \"\\x1b[0m\"),\n\t\t\tbold: f(\"\\x1b[1m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[1m\"),\n\t\t\tdim: f(\"\\x1b[2m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[2m\"),\n\t\t\titalic: f(\"\\x1b[3m\", \"\\x1b[23m\"),\n\t\t\tunderline: f(\"\\x1b[4m\", \"\\x1b[24m\"),\n\t\t\tinverse: f(\"\\x1b[7m\", \"\\x1b[27m\"),\n\t\t\thidden: f(\"\\x1b[8m\", \"\\x1b[28m\"),\n\t\t\tstrikethrough: f(\"\\x1b[9m\", \"\\x1b[29m\"),\n\n\t\t\tblack: f(\"\\x1b[30m\", \"\\x1b[39m\"),\n\t\t\tred: f(\"\\x1b[31m\", \"\\x1b[39m\"),\n\t\t\tgreen: f(\"\\x1b[32m\", \"\\x1b[39m\"),\n\t\t\tyellow: f(\"\\x1b[33m\", \"\\x1b[39m\"),\n\t\t\tblue: f(\"\\x1b[34m\", \"\\x1b[39m\"),\n\t\t\tmagenta: f(\"\\x1b[35m\", \"\\x1b[39m\"),\n\t\t\tcyan: f(\"\\x1b[36m\", \"\\x1b[39m\"),\n\t\t\twhite: f(\"\\x1b[37m\", \"\\x1b[39m\"),\n\t\t\tgray: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\n\t\t\tbgBlack: f(\"\\x1b[40m\", \"\\x1b[49m\"),\n\t\t\tbgRed: f(\"\\x1b[41m\", \"\\x1b[49m\"),\n\t\t\tbgGreen: f(\"\\x1b[42m\", \"\\x1b[49m\"),\n\t\t\tbgYellow: f(\"\\x1b[43m\", \"\\x1b[49m\"),\n\t\t\tbgBlue: f(\"\\x1b[44m\", \"\\x1b[49m\"),\n\t\t\tbgMagenta: f(\"\\x1b[45m\", \"\\x1b[49m\"),\n\t\t\tbgCyan: f(\"\\x1b[46m\", \"\\x1b[49m\"),\n\t\t\tbgWhite: f(\"\\x1b[47m\", \"\\x1b[49m\"),\n\n\t\t\tblackBright: f(\"\\x1b[90m\", \"\\x1b[39m\"),\n\t\t\tredBright: f(\"\\x1b[91m\", \"\\x1b[39m\"),\n\t\t\tgreenBright: f(\"\\x1b[92m\", \"\\x1b[39m\"),\n\t\t\tyellowBright: f(\"\\x1b[93m\", \"\\x1b[39m\"),\n\t\t\tblueBright: f(\"\\x1b[94m\", \"\\x1b[39m\"),\n\t\t\tmagentaBright: f(\"\\x1b[95m\", \"\\x1b[39m\"),\n\t\t\tcyanBright: f(\"\\x1b[96m\", \"\\x1b[39m\"),\n\t\t\twhiteBright: f(\"\\x1b[97m\", \"\\x1b[39m\"),\n\n\t\t\tbgBlackBright: f(\"\\x1b[100m\", \"\\x1b[49m\"),\n\t\t\tbgRedBright: f(\"\\x1b[101m\", \"\\x1b[49m\"),\n\t\t\tbgGreenBright: f(\"\\x1b[102m\", \"\\x1b[49m\"),\n\t\t\tbgYellowBright: f(\"\\x1b[103m\", \"\\x1b[49m\"),\n\t\t\tbgBlueBright: f(\"\\x1b[104m\", \"\\x1b[49m\"),\n\t\t\tbgMagentaBright: f(\"\\x1b[105m\", \"\\x1b[49m\"),\n\t\t\tbgCyanBright: f(\"\\x1b[106m\", \"\\x1b[49m\"),\n\t\t\tbgWhiteBright: f(\"\\x1b[107m\", \"\\x1b[49m\"),\n\t\t}\n\t};\n\n\tpicocolors.exports = createColors();\n\tpicocolors.exports.createColors = createColors;\n\treturn picocolors.exports;\n}\n\nvar picocolorsExports = /*@__PURE__*/ requirePicocolors();\nconst e = /*@__PURE__*/getDefaultExportFromCjs(picocolorsExports);\n\nfunction J({onlyFirst:t=false}={}){const F=[\"[\\\\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(F,t?void 0:\"g\")}const Q=J();function T$1(t){if(typeof t!=\"string\")throw new TypeError(`Expected a \\`string\\`, got \\`${typeof t}\\``);return t.replace(Q,\"\")}function O(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,\"default\")?t.default:t}var P$1={exports:{}};(function(t){var u={};t.exports=u,u.eastAsianWidth=function(e){var s=e.charCodeAt(0),i=e.length==2?e.charCodeAt(1):0,D=s;return 55296<=s&&s<=56319&&56320<=i&&i<=57343&&(s&=1023,i&=1023,D=s<<10|i,D+=65536),D==12288||65281<=D&&D<=65376||65504<=D&&D<=65510?\"F\":D==8361||65377<=D&&D<=65470||65474<=D&&D<=65479||65482<=D&&D<=65487||65490<=D&&D<=65495||65498<=D&&D<=65500||65512<=D&&D<=65518?\"H\":4352<=D&&D<=4447||4515<=D&&D<=4519||4602<=D&&D<=4607||9001<=D&&D<=9002||11904<=D&&D<=11929||11931<=D&&D<=12019||12032<=D&&D<=12245||12272<=D&&D<=12283||12289<=D&&D<=12350||12353<=D&&D<=12438||12441<=D&&D<=12543||12549<=D&&D<=12589||12593<=D&&D<=12686||12688<=D&&D<=12730||12736<=D&&D<=12771||12784<=D&&D<=12830||12832<=D&&D<=12871||12880<=D&&D<=13054||13056<=D&&D<=19903||19968<=D&&D<=42124||42128<=D&&D<=42182||43360<=D&&D<=43388||44032<=D&&D<=55203||55216<=D&&D<=55238||55243<=D&&D<=55291||63744<=D&&D<=64255||65040<=D&&D<=65049||65072<=D&&D<=65106||65108<=D&&D<=65126||65128<=D&&D<=65131||110592<=D&&D<=110593||127488<=D&&D<=127490||127504<=D&&D<=127546||127552<=D&&D<=127560||127568<=D&&D<=127569||131072<=D&&D<=194367||177984<=D&&D<=196605||196608<=D&&D<=262141?\"W\":32<=D&&D<=126||162<=D&&D<=163||165<=D&&D<=166||D==172||D==175||10214<=D&&D<=10221||10629<=D&&D<=10630?\"Na\":D==161||D==164||167<=D&&D<=168||D==170||173<=D&&D<=174||176<=D&&D<=180||182<=D&&D<=186||188<=D&&D<=191||D==198||D==208||215<=D&&D<=216||222<=D&&D<=225||D==230||232<=D&&D<=234||236<=D&&D<=237||D==240||242<=D&&D<=243||247<=D&&D<=250||D==252||D==254||D==257||D==273||D==275||D==283||294<=D&&D<=295||D==299||305<=D&&D<=307||D==312||319<=D&&D<=322||D==324||328<=D&&D<=331||D==333||338<=D&&D<=339||358<=D&&D<=359||D==363||D==462||D==464||D==466||D==468||D==470||D==472||D==474||D==476||D==593||D==609||D==708||D==711||713<=D&&D<=715||D==717||D==720||728<=D&&D<=731||D==733||D==735||768<=D&&D<=879||913<=D&&D<=929||931<=D&&D<=937||945<=D&&D<=961||963<=D&&D<=969||D==1025||1040<=D&&D<=1103||D==1105||D==8208||8211<=D&&D<=8214||8216<=D&&D<=8217||8220<=D&&D<=8221||8224<=D&&D<=8226||8228<=D&&D<=8231||D==8240||8242<=D&&D<=8243||D==8245||D==8251||D==8254||D==8308||D==8319||8321<=D&&D<=8324||D==8364||D==8451||D==8453||D==8457||D==8467||D==8470||8481<=D&&D<=8482||D==8486||D==8491||8531<=D&&D<=8532||8539<=D&&D<=8542||8544<=D&&D<=8555||8560<=D&&D<=8569||D==8585||8592<=D&&D<=8601||8632<=D&&D<=8633||D==8658||D==8660||D==8679||D==8704||8706<=D&&D<=8707||8711<=D&&D<=8712||D==8715||D==8719||D==8721||D==8725||D==8730||8733<=D&&D<=8736||D==8739||D==8741||8743<=D&&D<=8748||D==8750||8756<=D&&D<=8759||8764<=D&&D<=8765||D==8776||D==8780||D==8786||8800<=D&&D<=8801||8804<=D&&D<=8807||8810<=D&&D<=8811||8814<=D&&D<=8815||8834<=D&&D<=8835||8838<=D&&D<=8839||D==8853||D==8857||D==8869||D==8895||D==8978||9312<=D&&D<=9449||9451<=D&&D<=9547||9552<=D&&D<=9587||9600<=D&&D<=9615||9618<=D&&D<=9621||9632<=D&&D<=9633||9635<=D&&D<=9641||9650<=D&&D<=9651||9654<=D&&D<=9655||9660<=D&&D<=9661||9664<=D&&D<=9665||9670<=D&&D<=9672||D==9675||9678<=D&&D<=9681||9698<=D&&D<=9701||D==9711||9733<=D&&D<=9734||D==9737||9742<=D&&D<=9743||9748<=D&&D<=9749||D==9756||D==9758||D==9792||D==9794||9824<=D&&D<=9825||9827<=D&&D<=9829||9831<=D&&D<=9834||9836<=D&&D<=9837||D==9839||9886<=D&&D<=9887||9918<=D&&D<=9919||9924<=D&&D<=9933||9935<=D&&D<=9953||D==9955||9960<=D&&D<=9983||D==10045||D==10071||10102<=D&&D<=10111||11093<=D&&D<=11097||12872<=D&&D<=12879||57344<=D&&D<=63743||65024<=D&&D<=65039||D==65533||127232<=D&&D<=127242||127248<=D&&D<=127277||127280<=D&&D<=127337||127344<=D&&D<=127386||917760<=D&&D<=917999||983040<=D&&D<=1048573||1048576<=D&&D<=1114109?\"A\":\"N\"},u.characterLength=function(e){var s=this.eastAsianWidth(e);return s==\"F\"||s==\"W\"||s==\"A\"?2:1};function F(e){return e.match(/[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[^\\uD800-\\uDFFF]/g)||[]}u.length=function(e){for(var s=F(e),i=0,D=0;D<s.length;D++)i=i+this.characterLength(s[D]);return i},u.slice=function(e,s,i){textLen=u.length(e),s=s||0,i=i||1,s<0&&(s=textLen+s),i<0&&(i=textLen+i);for(var D=\"\",C=0,o=F(e),E=0;E<o.length;E++){var a=o[E],n=u.length(a);if(C>=s-(n==2?1:0))if(C+n<=i)D+=a;else break;C+=n;}return D};})(P$1);var X=P$1.exports;const DD=O(X);var uD=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 FD=O(uD);function A$1(t,u={}){if(typeof t!=\"string\"||t.length===0||(u={ambiguousIsNarrow:true,...u},t=T$1(t),t.length===0))return 0;t=t.replace(FD(),\" \");const F=u.ambiguousIsNarrow?1:2;let e=0;for(const s of t){const i=s.codePointAt(0);if(i<=31||i>=127&&i<=159||i>=768&&i<=879)continue;switch(DD.eastAsianWidth(s)){case \"F\":case \"W\":e+=2;break;case \"A\":e+=F;break;default:e+=1;}}return e}const m=10,L$1=(t=0)=>u=>`\\x1B[${u+t}m`,N=(t=0)=>u=>`\\x1B[${38+t};5;${u}m`,I=(t=0)=>(u,F,e)=>`\\x1B[${38+t};2;${u};${F};${e}m`,r={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(r.modifier);const tD=Object.keys(r.color),eD=Object.keys(r.bgColor);[...tD,...eD];function sD(){const t=new Map;for(const[u,F]of Object.entries(r)){for(const[e,s]of Object.entries(F))r[e]={open:`\\x1B[${s[0]}m`,close:`\\x1B[${s[1]}m`},F[e]=r[e],t.set(s[0],s[1]);Object.defineProperty(r,u,{value:F,enumerable:false});}return Object.defineProperty(r,\"codes\",{value:t,enumerable:false}),r.color.close=\"\\x1B[39m\",r.bgColor.close=\"\\x1B[49m\",r.color.ansi=L$1(),r.color.ansi256=N(),r.color.ansi16m=I(),r.bgColor.ansi=L$1(m),r.bgColor.ansi256=N(m),r.bgColor.ansi16m=I(m),Object.defineProperties(r,{rgbToAnsi256:{value:(u,F,e)=>u===F&&F===e?u<8?16:u>248?231:Math.round((u-8)/247*24)+232:16+36*Math.round(u/255*5)+6*Math.round(F/255*5)+Math.round(e/255*5),enumerable:false},hexToRgb:{value:u=>{const F=/[a-f\\d]{6}|[a-f\\d]{3}/i.exec(u.toString(16));if(!F)return [0,0,0];let[e]=F;e.length===3&&(e=[...e].map(i=>i+i).join(\"\"));const s=Number.parseInt(e,16);return [s>>16&255,s>>8&255,s&255]},enumerable:false},hexToAnsi256:{value:u=>r.rgbToAnsi256(...r.hexToRgb(u)),enumerable:false},ansi256ToAnsi:{value:u=>{if(u<8)return 30+u;if(u<16)return 90+(u-8);let F,e,s;if(u>=232)F=((u-232)*10+8)/255,e=F,s=F;else {u-=16;const C=u%36;F=Math.floor(u/36)/5,e=Math.floor(C/6)/5,s=C%6/5;}const i=Math.max(F,e,s)*2;if(i===0)return 30;let D=30+(Math.round(s)<<2|Math.round(e)<<1|Math.round(F));return i===2&&(D+=60),D},enumerable:false},rgbToAnsi:{value:(u,F,e)=>r.ansi256ToAnsi(r.rgbToAnsi256(u,F,e)),enumerable:false},hexToAnsi:{value:u=>r.ansi256ToAnsi(r.hexToAnsi256(u)),enumerable:false}}),r}const iD=sD(),v=new Set([\"\\x1B\",\"\\x9B\"]),CD=39,w$1=\"\\x07\",W$1=\"[\",rD=\"]\",R=\"m\",y=`${rD}8;;`,V$1=t=>`${v.values().next().value}${W$1}${t}${R}`,z=t=>`${v.values().next().value}${y}${t}${w$1}`,ED=t=>t.split(\" \").map(u=>A$1(u)),_=(t,u,F)=>{const e=[...u];let s=false,i=false,D=A$1(T$1(t[t.length-1]));for(const[C,o]of e.entries()){const E=A$1(o);if(D+E<=F?t[t.length-1]+=o:(t.push(o),D=0),v.has(o)&&(s=true,i=e.slice(C+1).join(\"\").startsWith(y)),s){i?o===w$1&&(s=false,i=false):o===R&&(s=false);continue}D+=E,D===F&&C<e.length-1&&(t.push(\"\"),D=0);}!D&&t[t.length-1].length>0&&t.length>1&&(t[t.length-2]+=t.pop());},nD=t=>{const u=t.split(\" \");let F=u.length;for(;F>0&&!(A$1(u[F-1])>0);)F--;return F===u.length?t:u.slice(0,F).join(\" \")+u.slice(F).join(\"\")},oD=(t,u,F={})=>{if(F.trim!==false&&t.trim()===\"\")return \"\";let e=\"\",s,i;const D=ED(t);let C=[\"\"];for(const[E,a]of t.split(\" \").entries()){F.trim!==false&&(C[C.length-1]=C[C.length-1].trimStart());let n=A$1(C[C.length-1]);if(E!==0&&(n>=u&&(F.wordWrap===false||F.trim===false)&&(C.push(\"\"),n=0),(n>0||F.trim===false)&&(C[C.length-1]+=\" \",n++)),F.hard&&D[E]>u){const B=u-n,p=1+Math.floor((D[E]-B-1)/u);Math.floor((D[E]-1)/u)<p&&C.push(\"\"),_(C,a,u);continue}if(n+D[E]>u&&n>0&&D[E]>0){if(F.wordWrap===false&&n<u){_(C,a,u);continue}C.push(\"\");}if(n+D[E]>u&&F.wordWrap===false){_(C,a,u);continue}C[C.length-1]+=a;}F.trim!==false&&(C=C.map(E=>nD(E)));const o=[...C.join(`\n`)];for(const[E,a]of o.entries()){if(e+=a,v.has(a)){const{groups:B}=new RegExp(`(?:\\\\${W$1}(?<code>\\\\d+)m|\\\\${y}(?<uri>.*)${w$1})`).exec(o.slice(E).join(\"\"))||{groups:{}};if(B.code!==void 0){const p=Number.parseFloat(B.code);s=p===CD?void 0:p;}else B.uri!==void 0&&(i=B.uri.length===0?void 0:B.uri);}const n=iD.codes.get(Number(s));o[E+1]===`\n`?(i&&(e+=z(\"\")),s&&n&&(e+=V$1(n))):a===`\n`&&(s&&n&&(e+=V$1(s)),i&&(e+=z(i)));}return e};function G(t,u,F){return String(t).normalize().replace(/\\r\\n/g,`\n`).split(`\n`).map(e=>oD(e,u,F)).join(`\n`)}const aD=[\"up\",\"down\",\"left\",\"right\",\"space\",\"enter\",\"cancel\"],c={actions:new Set(aD),aliases:new Map([[\"k\",\"up\"],[\"j\",\"down\"],[\"h\",\"left\"],[\"l\",\"right\"],[\"\u0003\",\"cancel\"],[\"escape\",\"cancel\"]])};function k$1(t,u){if(typeof t==\"string\")return c.aliases.get(t)===u;for(const F of t)if(F!==void 0&&k$1(F,u))return true;return false}function lD(t,u){if(t===u)return;const F=t.split(`\n`),e=u.split(`\n`),s=[];for(let i=0;i<Math.max(F.length,e.length);i++)F[i]!==e[i]&&s.push(i);return s}globalThis.process.platform.startsWith(\"win\");const S=Symbol(\"clack:cancel\");function d$1(t,u){const F=t;F.isTTY&&F.setRawMode(u);}var AD=Object.defineProperty,pD=(t,u,F)=>u in t?AD(t,u,{enumerable:true,configurable:true,writable:true,value:F}):t[u]=F,h=(t,u,F)=>(pD(t,typeof u!=\"symbol\"?u+\"\":u,F),F);class x{constructor(u,F=true){h(this,\"input\"),h(this,\"output\"),h(this,\"_abortSignal\"),h(this,\"rl\"),h(this,\"opts\"),h(this,\"_render\"),h(this,\"_track\",false),h(this,\"_prevFrame\",\"\"),h(this,\"_subscribers\",new Map),h(this,\"_cursor\",0),h(this,\"state\",\"initial\"),h(this,\"error\",\"\"),h(this,\"value\");const{input:e=stdin,output:s=stdout,render:i,signal:D,...C}=u;this.opts=C,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=i.bind(this),this._track=F,this._abortSignal=D,this.input=e,this.output=s;}unsubscribe(){this._subscribers.clear();}setSubscriber(u,F){const e=this._subscribers.get(u)??[];e.push(F),this._subscribers.set(u,e);}on(u,F){this.setSubscriber(u,{cb:F});}once(u,F){this.setSubscriber(u,{cb:F,once:true});}emit(u,...F){const e=this._subscribers.get(u)??[],s=[];for(const i of e)i.cb(...F),i.once&&s.push(()=>e.splice(e.indexOf(i),1));for(const i of s)i();}prompt(){return new Promise((u,F)=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state=\"cancel\",this.close(),u(S);this._abortSignal.addEventListener(\"abort\",()=>{this.state=\"cancel\",this.close();},{once:true});}const e=new WriteStream(0);e._write=(s,i,D)=>{this._track&&(this.value=this.rl?.line.replace(/\\t/g,\"\"),this._cursor=this.rl?.cursor??0,this.emit(\"value\",this.value)),D();},this.input.pipe(e),this.rl=f.createInterface({input:this.input,output:e,tabSize:2,prompt:\"\",escapeCodeTimeout:50}),f.emitKeypressEvents(this.input,this.rl),this.rl.prompt(),this.opts.initialValue!==void 0&&this._track&&this.rl.write(this.opts.initialValue),this.input.on(\"keypress\",this.onKeypress),d$1(this.input,true),this.output.on(\"resize\",this.render),this.render(),this.once(\"submit\",()=>{this.output.write(srcExports.cursor.show),this.output.off(\"resize\",this.render),d$1(this.input,false),u(this.value);}),this.once(\"cancel\",()=>{this.output.write(srcExports.cursor.show),this.output.off(\"resize\",this.render),d$1(this.input,false),u(S);});})}onKeypress(u,F){if(this.state===\"error\"&&(this.state=\"active\"),F?.name&&(!this._track&&c.aliases.has(F.name)&&this.emit(\"cursor\",c.aliases.get(F.name)),c.actions.has(F.name)&&this.emit(\"cursor\",F.name)),u&&(u.toLowerCase()===\"y\"||u.toLowerCase()===\"n\")&&this.emit(\"confirm\",u.toLowerCase()===\"y\"),u===\"\t\"&&this.opts.placeholder&&(this.value||(this.rl?.write(this.opts.placeholder),this.emit(\"value\",this.opts.placeholder))),u&&this.emit(\"key\",u.toLowerCase()),F?.name===\"return\"){if(this.opts.validate){const e=this.opts.validate(this.value);e&&(this.error=e instanceof Error?e.message:e,this.state=\"error\",this.rl?.write(this.value));}this.state!==\"error\"&&(this.state=\"submit\");}k$1([u,F?.name,F?.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(`\n`),d$1(this.input,false),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe();}restoreCursor(){const u=G(this._prevFrame,process.stdout.columns,{hard:true}).split(`\n`).length-1;this.output.write(srcExports.cursor.move(-999,u*-1));}render(){const u=G(this._render(this)??\"\",process.stdout.columns,{hard:true});if(u!==this._prevFrame){if(this.state===\"initial\")this.output.write(srcExports.cursor.hide);else {const F=lD(this._prevFrame,u);if(this.restoreCursor(),F&&F?.length===1){const e=F[0];this.output.write(srcExports.cursor.move(0,e)),this.output.write(srcExports.erase.lines(1));const s=u.split(`\n`);this.output.write(s[e]),this._prevFrame=u,this.output.write(srcExports.cursor.move(0,s.length-e-1));return}if(F&&F?.length>1){const e=F[0];this.output.write(srcExports.cursor.move(0,e)),this.output.write(srcExports.erase.down());const s=u.split(`\n`).slice(e);this.output.write(s.join(`\n`)),this._prevFrame=u;return}this.output.write(srcExports.erase.down());}this.output.write(u),this.state===\"initial\"&&(this.state=\"active\"),this._prevFrame=u;}}}class fD extends x{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(u){super(u,false),this.value=!!u.initialValue,this.on(\"value\",()=>{this.value=this._value;}),this.on(\"confirm\",F=>{this.output.write(srcExports.cursor.move(0,-1)),this.value=F,this.state=\"submit\",this.close();}),this.on(\"cursor\",()=>{this.value=!this.value;});}}var bD=Object.defineProperty,mD=(t,u,F)=>u in t?bD(t,u,{enumerable:true,configurable:true,writable:true,value:F}):t[u]=F,Y=(t,u,F)=>(mD(t,typeof u!=\"symbol\"?u+\"\":u,F),F);let wD=class extends x{constructor(u){super(u,false),Y(this,\"options\"),Y(this,\"cursor\",0),this.options=u.options,this.value=[...u.initialValues??[]],this.cursor=Math.max(this.options.findIndex(({value:F})=>F===u.cursorAt),0),this.on(\"key\",F=>{F===\"a\"&&this.toggleAll();}),this.on(\"cursor\",F=>{switch(F){case \"left\":case \"up\":this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;break;case \"down\":case \"right\":this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;break;case \"space\":this.toggleValue();break}});}get _value(){return this.options[this.cursor].value}toggleAll(){const u=this.value.length===this.options.length;this.value=u?[]:this.options.map(F=>F.value);}toggleValue(){const u=this.value.includes(this._value);this.value=u?this.value.filter(F=>F!==this._value):[...this.value,this._value];}};var SD=Object.defineProperty,$D=(t,u,F)=>u in t?SD(t,u,{enumerable:true,configurable:true,writable:true,value:F}):t[u]=F,q=(t,u,F)=>($D(t,typeof u!=\"symbol\"?u+\"\":u,F),F);class jD extends x{constructor(u){super(u,false),q(this,\"options\"),q(this,\"cursor\",0),this.options=u.options,this.cursor=this.options.findIndex(({value:F})=>F===u.initialValue),this.cursor===-1&&(this.cursor=0),this.changeValue(),this.on(\"cursor\",F=>{switch(F){case \"left\":case \"up\":this.cursor=this.cursor===0?this.options.length-1:this.cursor-1;break;case \"down\":case \"right\":this.cursor=this.cursor===this.options.length-1?0:this.cursor+1;break}this.changeValue();});}get _value(){return this.options[this.cursor]}changeValue(){this.value=this._value.value;}}class PD extends x{get valueWithCursor(){if(this.state===\"submit\")return this.value;if(this.cursor>=this.value.length)return `${this.value}\\u2588`;const u=this.value.slice(0,this.cursor),[F,...e$1]=this.value.slice(this.cursor);return `${u}${e.inverse(F)}${e$1.join(\"\")}`}get cursor(){return this._cursor}constructor(u){super(u),this.on(\"finalize\",()=>{this.value||(this.value=u.defaultValue);});}}\n\nfunction ce(){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 V=ce(),u=(t,n)=>V?t:n,le=u(\"❯\", \">\"),L=u(\"■\", \"x\"),W=u(\"▲\", \"x\"),C=u(\"✔\", \"√\"),o=u(\"\"),d=u(\"\"),k=u(\"\\u25CF\",\">\"),P=u(\"\\u25CB\",\" \"),A=u(\"\\u25FB\",\"[\\u2022]\"),T=u(\"\\u25FC\",\"[+]\"),F=u(\"\\u25FB\",\"[ ]\"),w=t=>{switch(t){case \"initial\":case \"active\":return e.cyan(le);case \"cancel\":return e.red(L);case \"error\":return e.yellow(W);case \"submit\":return e.green(C)}},B=t=>{const{cursor:n,options:s,style:r}=t,i=t.maxItems??Number.POSITIVE_INFINITY,a=Math.max(process.stdout.rows-4,0),c=Math.min(a,Math.max(i,5));let l=0;n>=l+c-3?l=Math.max(Math.min(n-c+3,s.length-c),0):n<l+2&&(l=Math.max(n-2,0));const $=c<s.length&&l>0,p=c<s.length&&l+c<s.length;return s.slice(l,l+c).map((M,v,x)=>{const j=v===0&&$,E=v===x.length-1&&p;return j||E?e.dim(\"...\"):r(M,v+l===n)})},he=t=>new PD({validate:t.validate,placeholder:t.placeholder,defaultValue:t.defaultValue,initialValue:t.initialValue,render(){const n=`${e.gray(o)}\n${w(this.state)} ${t.message}\n`,s=t.placeholder?e.inverse(t.placeholder[0])+e.dim(t.placeholder.slice(1)):e.inverse(e.hidden(\"_\")),r=this.value?this.valueWithCursor:s;switch(this.state){case \"error\":return `${n.trim()}\n${e.yellow(o)} ${r}\n${e.yellow(d)} ${e.yellow(this.error)}\n`;case \"submit\":return `${n}${e.gray(o)} ${e.dim(this.value||t.placeholder)}`;case \"cancel\":return `${n}${e.gray(o)} ${e.strikethrough(e.dim(this.value??\"\"))}${this.value?.trim()?`\n${e.gray(o)}`:\"\"}`;default:return `${n}${e.cyan(o)} ${r}\n${e.cyan(d)}\n`}}}).prompt(),ye=t=>{const n=t.active??\"Yes\",s=t.inactive??\"No\";return new fD({active:n,inactive:s,initialValue:t.initialValue??true,render(){const r=`${e.gray(o)}\n${w(this.state)} ${t.message}\n`,i=this.value?n:s;switch(this.state){case \"submit\":return `${r}${e.gray(o)} ${e.dim(i)}`;case \"cancel\":return `${r}${e.gray(o)} ${e.strikethrough(e.dim(i))}\n${e.gray(o)}`;default:return `${r}${e.cyan(o)} ${this.value?`${e.green(k)} ${n}`:`${e.dim(P)} ${e.dim(n)}`} ${e.dim(\"/\")} ${this.value?`${e.dim(P)} ${e.dim(s)}`:`${e.green(k)} ${s}`}\n${e.cyan(d)}\n`}}}).prompt()},ve=t=>{const n=(s,r)=>{const i=s.label??String(s.value);switch(r){case \"selected\":return `${e.dim(i)}`;case \"active\":return `${e.green(k)} ${i} ${s.hint?e.dim(`(${s.hint})`):\"\"}`;case \"cancelled\":return `${e.strikethrough(e.dim(i))}`;default:return `${e.dim(P)} ${e.dim(i)}`}};return new jD({options:t.options,initialValue:t.initialValue,render(){const s=`${e.gray(o)}\n${w(this.state)} ${t.message}\n`;switch(this.state){case \"submit\":return `${s}${e.gray(o)} ${n(this.options[this.cursor],\"selected\")}`;case \"cancel\":return `${s}${e.gray(o)} ${n(this.options[this.cursor],\"cancelled\")}\n${e.gray(o)}`;default:return `${s}${e.cyan(o)} ${B({cursor:this.cursor,options:this.options,maxItems:t.maxItems,style:(r,i)=>n(r,i?\"active\":\"inactive\")}).join(`\n${e.cyan(o)} `)}\n${e.cyan(d)}\n`}}}).prompt()},fe=t=>{const n=(s,r)=>{const i=s.label??String(s.value);return r===\"active\"?`${e.cyan(A)} ${i} ${s.hint?e.dim(`(${s.hint})`):\"\"}`:r===\"selected\"?`${e.green(T)} ${e.dim(i)}`:r===\"cancelled\"?`${e.strikethrough(e.dim(i))}`:r===\"active-selected\"?`${e.green(T)} ${i} ${s.hint?e.dim(`(${s.hint})`):\"\"}`:r===\"submitted\"?`${e.dim(i)}`:`${e.dim(F)} ${e.dim(i)}`};return new wD({options:t.options,initialValues:t.initialValues,required:t.required??true,cursorAt:t.cursorAt,validate(s){if(this.required&&s.length===0)return `Please select at least one option.\n${e.reset(e.dim(`Press ${e.gray(e.bgWhite(e.inverse(\" space \")))} to select, ${e.gray(e.bgWhite(e.inverse(\" enter \")))} to submit`))}`},render(){const s=`${e.gray(o)}\n${w(this.state)} ${t.message}\n`,r=(i,a)=>{const c=this.value.includes(i.value);return a&&c?n(i,\"active-selected\"):c?n(i,\"selected\"):n(i,a?\"active\":\"inactive\")};switch(this.state){case \"submit\":return `${s}${e.gray(o)} ${this.options.filter(({value:i})=>this.value.includes(i)).map(i=>n(i,\"submitted\")).join(e.dim(\", \"))||e.dim(\"none\")}`;case \"cancel\":{const i=this.options.filter(({value:a})=>this.value.includes(a)).map(a=>n(a,\"cancelled\")).join(e.dim(\", \"));return `${s}${e.gray(o)} ${i.trim()?`${i}\n${e.gray(o)}`:\"\"}`}case \"error\":{const i=this.error.split(`\n`).map((a,c)=>c===0?`${e.yellow(d)} ${e.yellow(a)}`:` ${a}`).join(`\n`);return `${s+e.yellow(o)} ${B({options:this.options,cursor:this.cursor,maxItems:t.maxItems,style:r}).join(`\n${e.yellow(o)} `)}\n${i}\n`}default:return `${s}${e.cyan(o)} ${B({options:this.options,cursor:this.cursor,maxItems:t.maxItems,style:r}).join(`\n${e.cyan(o)} `)}\n${e.cyan(d)}\n`}}}).prompt()};`${e.gray(o)} `;\n\nconst kCancel = Symbol.for(\"cancel\");\nasync function prompt(message, opts = {}) {\n const handleCancel = (value) => {\n if (typeof value !== \"symbol\" || value.toString() !== \"Symbol(clack:cancel)\") {\n return value;\n }\n switch (opts.cancel) {\n case \"reject\": {\n const error = new Error(\"Prompt cancelled.\");\n error.name = \"ConsolaPromptCancelledError\";\n if (Error.captureStackTrace) {\n Error.captureStackTrace(error, prompt);\n }\n throw error;\n }\n case \"undefined\": {\n return void 0;\n }\n case \"null\": {\n return null;\n }\n case \"symbol\": {\n return kCancel;\n }\n default:\n case \"default\": {\n return opts.default ?? opts.initial;\n }\n }\n };\n if (!opts.type || opts.type === \"text\") {\n return await he({\n message,\n defaultValue: opts.default,\n placeholder: opts.placeholder,\n initialValue: opts.initial\n }).then(handleCancel);\n }\n if (opts.type === \"confirm\") {\n return await ye({\n message,\n initialValue: opts.initial\n }).then(handleCancel);\n }\n if (opts.type === \"select\") {\n return await ve({\n message,\n options: opts.options.map(\n (o) => typeof o === \"string\" ? { value: o, label: o } : o\n ),\n initialValue: opts.initial\n }).then(handleCancel);\n }\n if (opts.type === \"multiselect\") {\n return await fe({\n message,\n options: opts.options.map(\n (o) => typeof o === \"string\" ? { value: o, label: o } : o\n ),\n required: opts.required,\n initialValues: opts.initial\n }).then(handleCancel);\n }\n throw new Error(`Unknown prompt type: ${opts.type}`);\n}\n\nexport { kCancel, prompt };\n","const LogLevels = {\n silent: Number.NEGATIVE_INFINITY,\n fatal: 0,\n error: 0,\n warn: 1,\n log: 2,\n info: 3,\n success: 3,\n fail: 3,\n ready: 3,\n start: 3,\n box: 3,\n debug: 4,\n trace: 5,\n verbose: Number.POSITIVE_INFINITY\n};\nconst LogTypes = {\n // Silent\n silent: {\n level: -1\n },\n // Level 0\n fatal: {\n level: LogLevels.fatal\n },\n error: {\n level: LogLevels.error\n },\n // Level 1\n warn: {\n level: LogLevels.warn\n },\n // Level 2\n log: {\n level: LogLevels.log\n },\n // Level 3\n info: {\n level: LogLevels.info\n },\n success: {\n level: LogLevels.success\n },\n fail: {\n level: LogLevels.fail\n },\n ready: {\n level: LogLevels.info\n },\n start: {\n level: LogLevels.info\n },\n box: {\n level: LogLevels.info\n },\n // Level 4\n debug: {\n level: LogLevels.debug\n },\n // Level 5\n trace: {\n level: LogLevels.trace\n },\n // Verbose\n verbose: {\n level: LogLevels.verbose\n }\n};\n\nfunction isPlainObject$1(value) {\n if (value === null || typeof value !== \"object\") {\n return false;\n }\n const prototype = Object.getPrototypeOf(value);\n if (prototype !== null && prototype !== Object.prototype && Object.getPrototypeOf(prototype) !== null) {\n return false;\n }\n if (Symbol.iterator in value) {\n return false;\n }\n if (Symbol.toStringTag in value) {\n return Object.prototype.toString.call(value) === \"[object Module]\";\n }\n return true;\n}\n\nfunction _defu(baseObject, defaults, namespace = \".\", merger) {\n if (!isPlainObject$1(defaults)) {\n return _defu(baseObject, {}, namespace, merger);\n }\n const object = Object.assign({}, defaults);\n for (const key in baseObject) {\n if (key === \"__proto__\" || key === \"constructor\") {\n continue;\n }\n const value = baseObject[key];\n if (value === null || value === void 0) {\n continue;\n }\n if (merger && merger(object, key, value, namespace)) {\n continue;\n }\n if (Array.isArray(value) && Array.isArray(object[key])) {\n object[key] = [...value, ...object[key]];\n } else if (isPlainObject$1(value) && isPlainObject$1(object[key])) {\n object[key] = _defu(\n value,\n object[key],\n (namespace ? `${namespace}.` : \"\") + key.toString(),\n merger\n );\n } else {\n object[key] = value;\n }\n }\n return object;\n}\nfunction createDefu(merger) {\n return (...arguments_) => (\n // eslint-disable-next-line unicorn/no-array-reduce\n arguments_.reduce((p, c) => _defu(p, c, \"\", merger), {})\n );\n}\nconst defu = createDefu();\n\nfunction isPlainObject(obj) {\n return Object.prototype.toString.call(obj) === \"[object Object]\";\n}\nfunction isLogObj(arg) {\n if (!isPlainObject(arg)) {\n return false;\n }\n if (!arg.message && !arg.args) {\n return false;\n }\n if (arg.stack) {\n return false;\n }\n return true;\n}\n\nlet paused = false;\nconst queue = [];\nclass Consola {\n options;\n _lastLog;\n _mockFn;\n /**\n * Creates an instance of Consola with specified options or defaults.\n *\n * @param {Partial<ConsolaOptions>} [options={}] - Configuration options for the Consola instance.\n */\n constructor(options = {}) {\n const types = options.types || LogTypes;\n this.options = defu(\n {\n ...options,\n defaults: { ...options.defaults },\n level: _normalizeLogLevel(options.level, types),\n reporters: [...options.reporters || []]\n },\n {\n types: LogTypes,\n throttle: 1e3,\n throttleMin: 5,\n formatOptions: {\n date: true,\n colors: false,\n compact: true\n }\n }\n );\n for (const type in types) {\n const defaults = {\n type,\n ...this.options.defaults,\n ...types[type]\n };\n this[type] = this._wrapLogFn(defaults);\n this[type].raw = this._wrapLogFn(\n defaults,\n true\n );\n }\n if (this.options.mockFn) {\n this.mockTypes();\n }\n this._lastLog = {};\n }\n /**\n * Gets the current log level of the Consola instance.\n *\n * @returns {number} The current log level.\n */\n get level() {\n return this.options.level;\n }\n /**\n * Sets the minimum log level that will be output by the instance.\n *\n * @param {number} level - The new log level to set.\n */\n set level(level) {\n this.options.level = _normalizeLogLevel(\n level,\n this.options.types,\n this.options.level\n );\n }\n /**\n * Displays a prompt to the user and returns the response.\n * Throw an error if `prompt` is not supported by the current configuration.\n *\n * @template T\n * @param {string} message - The message to display in the prompt.\n * @param {T} [opts] - Optional options for the prompt. See {@link PromptOptions}.\n * @returns {promise<T>} A promise that infer with the prompt options. See {@link PromptOptions}.\n */\n prompt(message, opts) {\n if (!this.options.prompt) {\n throw new Error(\"prompt is not supported!\");\n }\n return this.options.prompt(message, opts);\n }\n /**\n * Creates a new instance of Consola, inheriting options from the current instance, with possible overrides.\n *\n * @param {Partial<ConsolaOptions>} options - Optional overrides for the new instance. See {@link ConsolaOptions}.\n * @returns {ConsolaInstance} A new Consola instance. See {@link ConsolaInstance}.\n */\n create(options) {\n const instance = new Consola({\n ...this.options,\n ...options\n });\n if (this._mockFn) {\n instance.mockTypes(this._mockFn);\n }\n return instance;\n }\n /**\n * Creates a new Consola instance with the specified default log object properties.\n *\n * @param {InputLogObject} defaults - Default properties to include in any log from the new instance. See {@link InputLogObject}.\n * @returns {ConsolaInstance} A new Consola instance. See {@link ConsolaInstance}.\n */\n withDefaults(defaults) {\n return this.create({\n ...this.options,\n defaults: {\n ...this.options.defaults,\n ...defaults\n }\n });\n }\n /**\n * Creates a new Consola instance with a specified tag, which will be included in every log.\n *\n * @param {string} tag - The tag to include in each log of the new instance.\n * @returns {ConsolaInstance} A new Consola instance. See {@link ConsolaInstance}.\n */\n withTag(tag) {\n return this.withDefaults({\n tag: this.options.defaults.tag ? this.options.defaults.tag + \":\" + tag : tag\n });\n }\n /**\n * Adds a custom reporter to the Consola instance.\n * Reporters will be called for each log message, depending on their implementation and log level.\n *\n * @param {ConsolaReporter} reporter - The reporter to add. See {@link ConsolaReporter}.\n * @returns {Consola} The current Consola instance.\n */\n addReporter(reporter) {\n this.options.reporters.push(reporter);\n return this;\n }\n /**\n * Removes a custom reporter from the Consola instance.\n * If no reporter is specified, all reporters will be removed.\n *\n * @param {ConsolaReporter} reporter - The reporter to remove. See {@link ConsolaReporter}.\n * @returns {Consola} The current Consola instance.\n */\n removeReporter(reporter) {\n if (reporter) {\n const i = this.options.reporters.indexOf(reporter);\n if (i !== -1) {\n return this.options.reporters.splice(i, 1);\n }\n } else {\n this.options.reporters.splice(0);\n }\n return this;\n }\n /**\n * Replaces all reporters of the Consola instance with the specified array of reporters.\n *\n * @param {ConsolaReporter[]} reporters - The new reporters to set. See {@link ConsolaReporter}.\n * @returns {Consola} The current Consola instance.\n */\n setReporters(reporters) {\n this.options.reporters = Array.isArray(reporters) ? reporters : [reporters];\n return this;\n }\n wrapAll() {\n this.wrapConsole();\n this.wrapStd();\n }\n restoreAll() {\n this.restoreConsole();\n this.restoreStd();\n }\n /**\n * Overrides console methods with Consola logging methods for consistent logging.\n */\n wrapConsole() {\n for (const type in this.options.types) {\n if (!console[\"__\" + type]) {\n console[\"__\" + type] = console[type];\n }\n console[type] = this[type].raw;\n }\n }\n /**\n * Restores the original console methods, removing Consola overrides.\n */\n restoreConsole() {\n for (const type in this.options.types) {\n if (console[\"__\" + type]) {\n console[type] = console[\"__\" + type];\n delete console[\"__\" + type];\n }\n }\n }\n /**\n * Overrides standard output and error streams to redirect them through Consola.\n */\n wrapStd() {\n this._wrapStream(this.options.stdout, \"log\");\n this._wrapStream(this.options.stderr, \"log\");\n }\n _wrapStream(stream, type) {\n if (!stream) {\n return;\n }\n if (!stream.__write) {\n stream.__write = stream.write;\n }\n stream.write = (data) => {\n this[type].raw(String(data).trim());\n };\n }\n /**\n * Restores the original standard output and error streams, removing the Consola redirection.\n */\n restoreStd() {\n this._restoreStream(this.options.stdout);\n this._restoreStream(this.options.stderr);\n }\n _restoreStream(stream) {\n if (!stream) {\n return;\n }\n if (stream.__write) {\n stream.write = stream.__write;\n delete stream.__write;\n }\n }\n /**\n * Pauses logging, queues incoming logs until resumed.\n */\n pauseLogs() {\n paused = true;\n }\n /**\n * Resumes logging, processing any queued logs.\n */\n resumeLogs() {\n paused = false;\n const _queue = queue.splice(0);\n for (const item of _queue) {\n item[0]._logFn(item[1], item[2]);\n }\n }\n /**\n * Replaces logging methods with mocks if a mock function is provided.\n *\n * @param {ConsolaOptions[\"mockFn\"]} mockFn - The function to use for mocking logging methods. See {@link ConsolaOptions[\"mockFn\"]}.\n */\n mockTypes(mockFn) {\n const _mockFn = mockFn || this.options.mockFn;\n this._mockFn = _mockFn;\n if (typeof _mockFn !== \"function\") {\n return;\n }\n for (const type in this.options.types) {\n this[type] = _mockFn(type, this.options.types[type]) || this[type];\n this[type].raw = this[type];\n }\n }\n _wrapLogFn(defaults, isRaw) {\n return (...args) => {\n if (paused) {\n queue.push([this, defaults, args, isRaw]);\n return;\n }\n return this._logFn(defaults, args, isRaw);\n };\n }\n _logFn(defaults, args, isRaw) {\n if ((defaults.level || 0) > this.level) {\n return false;\n }\n const logObj = {\n date: /* @__PURE__ */ new Date(),\n args: [],\n ...defaults,\n level: _normalizeLogLevel(defaults.level, this.options.types)\n };\n if (!isRaw && args.length === 1 && isLogObj(args[0])) {\n Object.assign(logObj, args[0]);\n } else {\n logObj.args = [...args];\n }\n if (logObj.message) {\n logObj.args.unshift(logObj.message);\n delete logObj.message;\n }\n if (logObj.additional) {\n if (!Array.isArray(logObj.additional)) {\n logObj.additional = logObj.additional.split(\"\\n\");\n }\n logObj.args.push(\"\\n\" + logObj.additional.join(\"\\n\"));\n delete logObj.additional;\n }\n logObj.type = typeof logObj.type === \"string\" ? logObj.type.toLowerCase() : \"log\";\n logObj.tag = typeof logObj.tag === \"string\" ? logObj.tag : \"\";\n const resolveLog = (newLog = false) => {\n const repeated = (this._lastLog.count || 0) - this.options.throttleMin;\n if (this._lastLog.object && repeated > 0) {\n const args2 = [...this._lastLog.object.args];\n if (repeated > 1) {\n args2.push(`(repeated ${repeated} times)`);\n }\n this._log({ ...this._lastLog.object, args: args2 });\n this._lastLog.count = 1;\n }\n if (newLog) {\n this._lastLog.object = logObj;\n this._log(logObj);\n }\n };\n clearTimeout(this._lastLog.timeout);\n const diffTime = this._lastLog.time && logObj.date ? logObj.date.getTime() - this._lastLog.time.getTime() : 0;\n this._lastLog.time = logObj.date;\n if (diffTime < this.options.throttle) {\n try {\n const serializedLog = JSON.stringify([\n logObj.type,\n logObj.tag,\n logObj.args\n ]);\n const isSameLog = this._lastLog.serialized === serializedLog;\n this._lastLog.serialized = serializedLog;\n if (isSameLog) {\n this._lastLog.count = (this._lastLog.count || 0) + 1;\n if (this._lastLog.count > this.options.throttleMin) {\n this._lastLog.timeout = setTimeout(\n resolveLog,\n this.options.throttle\n );\n return;\n }\n }\n } catch {\n }\n }\n resolveLog(true);\n }\n _log(logObj) {\n for (const reporter of this.options.reporters) {\n reporter.log(logObj, {\n options: this.options\n });\n }\n }\n}\nfunction _normalizeLogLevel(input, types = {}, defaultLevel = 3) {\n if (input === void 0) {\n return defaultLevel;\n }\n if (typeof input === \"number\") {\n return input;\n }\n if (types[input] && types[input].level !== void 0) {\n return types[input].level;\n }\n return defaultLevel;\n}\nConsola.prototype.add = Consola.prototype.addReporter;\nConsola.prototype.remove = Consola.prototype.removeReporter;\nConsola.prototype.clear = Consola.prototype.removeReporter;\nConsola.prototype.withScope = Consola.prototype.withTag;\nConsola.prototype.mock = Consola.prototype.mockTypes;\nConsola.prototype.pause = Consola.prototype.pauseLogs;\nConsola.prototype.resume = Consola.prototype.resumeLogs;\nfunction createConsola(options = {}) {\n return new Consola(options);\n}\n\nexport { Consola, LogLevels, LogTypes, createConsola };\n","import { formatWithOptions } from 'node:util';\nimport { sep } from 'node:path';\n\nfunction parseStack(stack, message) {\n const cwd = process.cwd() + sep;\n const lines = stack.split(\"\\n\").splice(message.split(\"\\n\").length).map((l) => l.trim().replace(\"file://\", \"\").replace(cwd, \"\"));\n return lines;\n}\n\nfunction writeStream(data, stream) {\n const write = stream.__write || stream.write;\n return write.call(stream, data);\n}\n\nconst bracket = (x) => x ? `[${x}]` : \"\";\nclass BasicReporter {\n formatStack(stack, message, opts) {\n const indent = \" \".repeat((opts?.errorLevel || 0) + 1);\n return indent + parseStack(stack, message).join(`\n${indent}`);\n }\n formatError(err, opts) {\n const message = err.message ?? formatWithOptions(opts, err);\n const stack = err.stack ? this.formatStack(err.stack, message, opts) : \"\";\n const level = opts?.errorLevel || 0;\n const causedPrefix = level > 0 ? `${\" \".repeat(level)}[cause]: ` : \"\";\n const causedError = err.cause ? \"\\n\\n\" + this.formatError(err.cause, { ...opts, errorLevel: level + 1 }) : \"\";\n return causedPrefix + message + \"\\n\" + stack + causedError;\n }\n formatArgs(args, opts) {\n const _args = args.map((arg) => {\n if (arg && typeof arg.stack === \"string\") {\n return this.formatError(arg, opts);\n }\n return arg;\n });\n return formatWithOptions(opts, ..._args);\n }\n formatDate(date, opts) {\n return opts.date ? date.toLocaleTimeString() : \"\";\n }\n filterAndJoin(arr) {\n return arr.filter(Boolean).join(\" \");\n }\n formatLogObj(logObj, opts) {\n const message = this.formatArgs(logObj.args, opts);\n if (logObj.type === \"box\") {\n return \"\\n\" + [\n bracket(logObj.tag),\n logObj.title && logObj.title,\n ...message.split(\"\\n\")\n ].filter(Boolean).map((l) => \" > \" + l).join(\"\\n\") + \"\\n\";\n }\n return this.filterAndJoin([\n bracket(logObj.type),\n bracket(logObj.tag),\n message\n ]);\n }\n log(logObj, ctx) {\n const line = this.formatLogObj(logObj, {\n columns: ctx.options.stdout.columns || 0,\n ...ctx.options.formatOptions\n });\n return writeStream(\n line + \"\\n\",\n logObj.level < 2 ? ctx.options.stderr || process.stderr : ctx.options.stdout || process.stdout\n );\n }\n}\n\nexport { BasicReporter as B, parseStack as p };\n","import * as tty from 'node:tty';\n\nconst {\n env = {},\n argv = [],\n platform = \"\"\n} = typeof process === \"undefined\" ? {} : process;\nconst isDisabled = \"NO_COLOR\" in env || argv.includes(\"--no-color\");\nconst isForced = \"FORCE_COLOR\" in env || argv.includes(\"--color\");\nconst isWindows = platform === \"win32\";\nconst isDumbTerminal = env.TERM === \"dumb\";\nconst isCompatibleTerminal = tty && tty.isatty && tty.isatty(1) && env.TERM && !isDumbTerminal;\nconst isCI = \"CI\" in env && (\"GITHUB_ACTIONS\" in env || \"GITLAB_CI\" in env || \"CIRCLECI\" in env);\nconst isColorSupported = !isDisabled && (isForced || isWindows && !isDumbTerminal || isCompatibleTerminal || isCI);\nfunction replaceClose(index, string, close, replace, head = string.slice(0, Math.max(0, index)) + replace, tail = string.slice(Math.max(0, index + close.length)), next = tail.indexOf(close)) {\n return head + (next < 0 ? tail : replaceClose(next, tail, close, replace));\n}\nfunction clearBleed(index, string, open, close, replace) {\n return index < 0 ? open + string + close : open + replaceClose(index, string, close, replace) + close;\n}\nfunction filterEmpty(open, close, replace = open, at = open.length + 1) {\n return (string) => string || !(string === \"\" || string === void 0) ? clearBleed(\n (\"\" + string).indexOf(close, at),\n string,\n open,\n close,\n replace\n ) : \"\";\n}\nfunction init(open, close, replace) {\n return filterEmpty(`\\x1B[${open}m`, `\\x1B[${close}m`, replace);\n}\nconst colorDefs = {\n reset: init(0, 0),\n bold: init(1, 22, \"\\x1B[22m\\x1B[1m\"),\n dim: init(2, 22, \"\\x1B[22m\\x1B[2m\"),\n italic: init(3, 23),\n underline: init(4, 24),\n inverse: init(7, 27),\n hidden: init(8, 28),\n strikethrough: init(9, 29),\n black: init(30, 39),\n red: init(31, 39),\n green: init(32, 39),\n yellow: init(33, 39),\n blue: init(34, 39),\n magenta: init(35, 39),\n cyan: init(36, 39),\n white: init(37, 39),\n gray: init(90, 39),\n bgBlack: init(40, 49),\n bgRed: init(41, 49),\n bgGreen: init(42, 49),\n bgYellow: init(43, 49),\n bgBlue: init(44, 49),\n bgMagenta: init(45, 49),\n bgCyan: init(46, 49),\n bgWhite: init(47, 49),\n blackBright: init(90, 39),\n redBright: init(91, 39),\n greenBright: init(92, 39),\n yellowBright: init(93, 39),\n blueBright: init(94, 39),\n magentaBright: init(95, 39),\n cyanBright: init(96, 39),\n whiteBright: init(97, 39),\n bgBlackBright: init(100, 49),\n bgRedBright: init(101, 49),\n bgGreenBright: init(102, 49),\n bgYellowBright: init(103, 49),\n bgBlueBright: init(104, 49),\n bgMagentaBright: init(105, 49),\n bgCyanBright: init(106, 49),\n bgWhiteBright: init(107, 49)\n};\nfunction createColors(useColor = isColorSupported) {\n return useColor ? colorDefs : Object.fromEntries(Object.keys(colorDefs).map((key) => [key, String]));\n}\nconst colors = createColors();\nfunction getColor(color, fallback = \"reset\") {\n return colors[color] || colors[fallback];\n}\nfunction colorize(color, text) {\n return getColor(color)(text);\n}\n\nconst ansiRegex = [\n String.raw`[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)`,\n String.raw`(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))`\n].join(\"|\");\nfunction stripAnsi(text) {\n return text.replace(new RegExp(ansiRegex, \"g\"), \"\");\n}\nfunction centerAlign(str, len, space = \" \") {\n const free = len - str.length;\n if (free <= 0) {\n return str;\n }\n const freeLeft = Math.floor(free / 2);\n let _str = \"\";\n for (let i = 0; i < len; i++) {\n _str += i < freeLeft || i >= freeLeft + str.length ? space : str[i - freeLeft];\n }\n return _str;\n}\nfunction rightAlign(str, len, space = \" \") {\n const free = len - str.length;\n if (free <= 0) {\n return str;\n }\n let _str = \"\";\n for (let i = 0; i < len; i++) {\n _str += i < free ? space : str[i - free];\n }\n return _str;\n}\nfunction leftAlign(str, len, space = \" \") {\n let _str = \"\";\n for (let i = 0; i < len; i++) {\n _str += i < str.length ? str[i] : space;\n }\n return _str;\n}\nfunction align(alignment, str, len, space = \" \") {\n switch (alignment) {\n case \"left\": {\n return leftAlign(str, len, space);\n }\n case \"right\": {\n return rightAlign(str, len, space);\n }\n case \"center\": {\n return centerAlign(str, len, space);\n }\n default: {\n return str;\n }\n }\n}\n\nconst boxStylePresets = {\n solid: {\n tl: \"\\u250C\",\n tr: \"\\u2510\",\n bl: \"\\u2514\",\n br: \"\\u2518\",\n h: \"\\u2500\",\n v: \"\\u2502\"\n },\n double: {\n tl: \"\\u2554\",\n tr: \"\\u2557\",\n bl: \"\\u255A\",\n br: \"\\u255D\",\n h: \"\\u2550\",\n v: \"\\u2551\"\n },\n doubleSingle: {\n tl: \"\\u2553\",\n tr: \"\\u2556\",\n bl: \"\\u2559\",\n br: \"\\u255C\",\n h: \"\\u2500\",\n v: \"\\u2551\"\n },\n doubleSingleRounded: {\n tl: \"\\u256D\",\n tr: \"\\u256E\",\n bl: \"\\u2570\",\n br: \"\\u256F\",\n h: \"\\u2500\",\n v: \"\\u2551\"\n },\n singleThick: {\n tl: \"\\u250F\",\n tr: \"\\u2513\",\n bl: \"\\u2517\",\n br: \"\\u251B\",\n h: \"\\u2501\",\n v: \"\\u2503\"\n },\n singleDouble: {\n tl: \"\\u2552\",\n tr: \"\\u2555\",\n bl: \"\\u2558\",\n br: \"\\u255B\",\n h: \"\\u2550\",\n v: \"\\u2502\"\n },\n singleDoubleRounded: {\n tl: \"\\u256D\",\n tr: \"\\u256E\",\n bl: \"\\u2570\",\n br: \"\\u256F\",\n h: \"\\u2550\",\n v: \"\\u2502\"\n },\n rounded: {\n tl: \"\\u256D\",\n tr: \"\\u256E\",\n bl: \"\\u2570\",\n br: \"\\u256F\",\n h: \"\\u2500\",\n v: \"\\u2502\"\n }\n};\nconst defaultStyle = {\n borderColor: \"white\",\n borderStyle: \"rounded\",\n valign: \"center\",\n padding: 2,\n marginLeft: 1,\n marginTop: 1,\n marginBottom: 1\n};\nfunction box(text, _opts = {}) {\n const opts = {\n ..._opts,\n style: {\n ...defaultStyle,\n ..._opts.style\n }\n };\n const textLines = text.split(\"\\n\");\n const boxLines = [];\n const _color = getColor(opts.style.borderColor);\n const borderStyle = {\n ...typeof opts.style.borderStyle === \"string\" ? boxStylePresets[opts.style.borderStyle] || boxStylePresets.solid : opts.style.borderStyle\n };\n if (_color) {\n for (const key in borderStyle) {\n borderStyle[key] = _color(\n borderStyle[key]\n );\n }\n }\n const paddingOffset = opts.style.padding % 2 === 0 ? opts.style.padding : opts.style.padding + 1;\n const height = textLines.length + paddingOffset;\n const width = Math.max(\n ...textLines.map((line) => stripAnsi(line).length),\n opts.title ? stripAnsi(opts.title).length : 0\n ) + paddingOffset;\n const widthOffset = width + paddingOffset;\n const leftSpace = opts.style.marginLeft > 0 ? \" \".repeat(opts.style.marginLeft) : \"\";\n if (opts.style.marginTop > 0) {\n boxLines.push(\"\".repeat(opts.style.marginTop));\n }\n if (opts.title) {\n const title = _color ? _color(opts.title) : opts.title;\n const left = borderStyle.h.repeat(\n Math.floor((width - stripAnsi(opts.title).length) / 2)\n );\n const right = borderStyle.h.repeat(\n width - stripAnsi(opts.title).length - stripAnsi(left).length + paddingOffset\n );\n boxLines.push(\n `${leftSpace}${borderStyle.tl}${left}${title}${right}${borderStyle.tr}`\n );\n } else {\n boxLines.push(\n `${leftSpace}${borderStyle.tl}${borderStyle.h.repeat(widthOffset)}${borderStyle.tr}`\n );\n }\n const valignOffset = opts.style.valign === \"center\" ? Math.floor((height - textLines.length) / 2) : opts.style.valign === \"top\" ? height - textLines.length - paddingOffset : height - textLines.length;\n for (let i = 0; i < height; i++) {\n if (i < valignOffset || i >= valignOffset + textLines.length) {\n boxLines.push(\n `${leftSpace}${borderStyle.v}${\" \".repeat(widthOffset)}${borderStyle.v}`\n );\n } else {\n const line = textLines[i - valignOffset];\n const left = \" \".repeat(paddingOffset);\n const right = \" \".repeat(width - stripAnsi(line).length);\n boxLines.push(\n `${leftSpace}${borderStyle.v}${left}${line}${right}${borderStyle.v}`\n );\n }\n }\n boxLines.push(\n `${leftSpace}${borderStyle.bl}${borderStyle.h.repeat(widthOffset)}${borderStyle.br}`\n );\n if (opts.style.marginBottom > 0) {\n boxLines.push(\"\".repeat(opts.style.marginBottom));\n }\n return boxLines.join(\"\\n\");\n}\n\nexport { centerAlign as a, align as b, colorize as c, box as d, colors as e, getColor as g, leftAlign as l, rightAlign as r, stripAnsi as s };\n","import { createConsola as createConsola$1, LogLevels } from './core.mjs';\nexport { Consola, LogTypes } from './core.mjs';\nimport { B as BasicReporter, p as parseStack } from './shared/consola.DRwqZj3T.mjs';\nimport g$1 from 'node:process';\nimport { e as colors, d as box, s as stripAnsi$1 } from './shared/consola.DXBYu-KD.mjs';\nimport 'node:util';\nimport 'node:path';\nimport 'node:tty';\n\nconst r=Object.create(null),i=e=>globalThis.process?.env||import.meta.env||globalThis.Deno?.env.toObject()||globalThis.__env__||(e?r:globalThis),o=new Proxy(r,{get(e,s){return i()[s]??r[s]},has(e,s){const E=i();return s in E||s in r},set(e,s,E){const B=i(true);return B[s]=E,true},deleteProperty(e,s){if(!s)return false;const E=i(true);return delete E[s],true},ownKeys(){const e=i(true);return Object.keys(e)}}),t=typeof process<\"u\"&&process.env&&process.env.NODE_ENV||\"\",f=[[\"APPVEYOR\"],[\"AWS_AMPLIFY\",\"AWS_APP_ID\",{ci:true}],[\"AZURE_PIPELINES\",\"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI\"],[\"AZURE_STATIC\",\"INPUT_AZURE_STATIC_WEB_APPS_API_TOKEN\"],[\"APPCIRCLE\",\"AC_APPCIRCLE\"],[\"BAMBOO\",\"bamboo_planKey\"],[\"BITBUCKET\",\"BITBUCKET_COMMIT\"],[\"BITRISE\",\"BITRISE_IO\"],[\"BUDDY\",\"BUDDY_WORKSPACE_ID\"],[\"BUILDKITE\"],[\"CIRCLE\",\"CIRCLECI\"],[\"CIRRUS\",\"CIRRUS_CI\"],[\"CLOUDFLARE_PAGES\",\"CF_PAGES\",{ci:true}],[\"CODEBUILD\",\"CODEBUILD_BUILD_ARN\"],[\"CODEFRESH\",\"CF_BUILD_ID\"],[\"DRONE\"],[\"DRONE\",\"DRONE_BUILD_EVENT\"],[\"DSARI\"],[\"GITHUB_ACTIONS\"],[\"GITLAB\",\"GITLAB_CI\"],[\"GITLAB\",\"CI_MERGE_REQUEST_ID\"],[\"GOCD\",\"GO_PIPELINE_LABEL\"],[\"LAYERCI\"],[\"HUDSON\",\"HUDSON_URL\"],[\"JENKINS\",\"JENKINS_URL\"],[\"MAGNUM\"],[\"NETLIFY\"],[\"NETLIFY\",\"NETLIFY_LOCAL\",{ci:false}],[\"NEVERCODE\"],[\"RENDER\"],[\"SAIL\",\"SAILCI\"],[\"SEMAPHORE\"],[\"SCREWDRIVER\"],[\"SHIPPABLE\"],[\"SOLANO\",\"TDDIUM\"],[\"STRIDER\"],[\"TEAMCITY\",\"TEAMCITY_VERSION\"],[\"TRAVIS\"],[\"VERCEL\",\"NOW_BUILDER\"],[\"VERCEL\",\"VERCEL\",{ci:false}],[\"VERCEL\",\"VERCEL_ENV\",{ci:false}],[\"APPCENTER\",\"APPCENTER_BUILD_ID\"],[\"CODESANDBOX\",\"CODESANDBOX_SSE\",{ci:false}],[\"CODESANDBOX\",\"CODESANDBOX_HOST\",{ci:false}],[\"STACKBLITZ\"],[\"STORMKIT\"],[\"CLEAVR\"],[\"ZEABUR\"],[\"CODESPHERE\",\"CODESPHERE_APP_ID\",{ci:true}],[\"RAILWAY\",\"RAILWAY_PROJECT_ID\"],[\"RAILWAY\",\"RAILWAY_SERVICE_ID\"],[\"DENO-DEPLOY\",\"DENO_DEPLOYMENT_ID\"],[\"FIREBASE_APP_HOSTING\",\"FIREBASE_APP_HOSTING\",{ci:true}]];function b(){if(globalThis.process?.env)for(const e of f){const s=e[1]||e[0];if(globalThis.process?.env[s])return {name:e[0].toLowerCase(),...e[2]}}return globalThis.process?.env?.SHELL===\"/bin/jsh\"&&globalThis.process?.versions?.webcontainer?{name:\"stackblitz\",ci:false}:{name:\"\",ci:false}}const l=b();l.name;function n(e){return e?e!==\"false\":false}const I=globalThis.process?.platform||\"\",T=n(o.CI)||l.ci!==false,a=n(globalThis.process?.stdout&&globalThis.process?.stdout.isTTY),g=n(o.DEBUG),R=t===\"test\"||n(o.TEST);n(o.MINIMAL)||T||R||!a;const A=/^win/i.test(I);!n(o.NO_COLOR)&&(n(o.FORCE_COLOR)||(a||A)&&o.TERM!==\"dumb\"||T);const C=(globalThis.process?.versions?.node||\"\").replace(/^v/,\"\")||null;Number(C?.split(\".\")[0])||null;const y=globalThis.process||Object.create(null),_={versions:{}};new Proxy(y,{get(e,s){if(s===\"env\")return o;if(s in e)return e[s];if(s in _)return _[s]}});const c=globalThis.process?.release?.name===\"node\",O=!!globalThis.Bun||!!globalThis.process?.versions?.bun,D=!!globalThis.Deno,L=!!globalThis.fastly,S=!!globalThis.Netlify,u=!!globalThis.EdgeRuntime,N=globalThis.navigator?.userAgent===\"Cloudflare-Workers\",F=[[S,\"netlify\"],[u,\"edge-light\"],[N,\"workerd\"],[L,\"fastly\"],[D,\"deno\"],[O,\"bun\"],[c,\"node\"]];function G(){const e=F.find(s=>s[0]);if(e)return {name:e[1]}}const P=G();P?.name||\"\";\n\nfunction ansiRegex({onlyFirst = false} = {}) {\n\t// Valid string terminator sequences are BEL, ESC\\, and 0x9c\n\tconst ST = '(?:\\\\u0007|\\\\u001B\\\\u005C|\\\\u009C)';\n\tconst pattern = [\n\t\t`[\\\\u001B\\\\u009B][[\\\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]+)*|[a-zA-Z\\\\d]+(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]*)*)?${ST})`,\n\t\t'(?:(?:\\\\d{1,4}(?:;\\\\d{0,4})*)?[\\\\dA-PR-TZcf-nq-uy=><~]))',\n\t].join('|');\n\n\treturn new RegExp(pattern, onlyFirst ? undefined : 'g');\n}\n\nconst regex = ansiRegex();\n\nfunction stripAnsi(string) {\n\tif (typeof string !== 'string') {\n\t\tthrow new TypeError(`Expected a \\`string\\`, got \\`${typeof string}\\``);\n\t}\n\n\t// Even though the regex is global, we don't need to reset the `.lastIndex`\n\t// because unlike `.exec()` and `.test()`, `.replace()` does it automatically\n\t// and doing it manually has a performance penalty.\n\treturn string.replace(regex, '');\n}\n\n// Generated code.\n\nfunction isAmbiguous(x) {\n\treturn x === 0xA1\n\t\t|| x === 0xA4\n\t\t|| x === 0xA7\n\t\t|| x === 0xA8\n\t\t|| x === 0xAA\n\t\t|| x === 0xAD\n\t\t|| x === 0xAE\n\t\t|| x >= 0xB0 && x <= 0xB4\n\t\t|| x >= 0xB6 && x <= 0xBA\n\t\t|| x >= 0xBC && x <= 0xBF\n\t\t|| x === 0xC6\n\t\t|| x === 0xD0\n\t\t|| x === 0xD7\n\t\t|| x === 0xD8\n\t\t|| x >= 0xDE && x <= 0xE1\n\t\t|| x === 0xE6\n\t\t|| x >= 0xE8 && x <= 0xEA\n\t\t|| x === 0xEC\n\t\t|| x === 0xED\n\t\t|| x === 0xF0\n\t\t|| x === 0xF2\n\t\t|| x === 0xF3\n\t\t|| x >= 0xF7 && x <= 0xFA\n\t\t|| x === 0xFC\n\t\t|| x === 0xFE\n\t\t|| x === 0x101\n\t\t|| x === 0x111\n\t\t|| x === 0x113\n\t\t|| x === 0x11B\n\t\t|| x === 0x126\n\t\t|| x === 0x127\n\t\t|| x === 0x12B\n\t\t|| x >= 0x131 && x <= 0x133\n\t\t|| x === 0x138\n\t\t|| x >= 0x13F && x <= 0x142\n\t\t|| x === 0x144\n\t\t|| x >= 0x148 && x <= 0x14B\n\t\t|| x === 0x14D\n\t\t|| x === 0x152\n\t\t|| x === 0x153\n\t\t|| x === 0x166\n\t\t|| x === 0x167\n\t\t|| x === 0x16B\n\t\t|| x === 0x1CE\n\t\t|| x === 0x1D0\n\t\t|| x === 0x1D2\n\t\t|| x === 0x1D4\n\t\t|| x === 0x1D6\n\t\t|| x === 0x1D8\n\t\t|| x === 0x1DA\n\t\t|| x === 0x1DC\n\t\t|| x === 0x251\n\t\t|| x === 0x261\n\t\t|| x === 0x2C4\n\t\t|| x === 0x2C7\n\t\t|| x >= 0x2C9 && x <= 0x2CB\n\t\t|| x === 0x2CD\n\t\t|| x === 0x2D0\n\t\t|| x >= 0x2D8 && x <= 0x2DB\n\t\t|| x === 0x2DD\n\t\t|| x === 0x2DF\n\t\t|| x >= 0x300 && x <= 0x36F\n\t\t|| x >= 0x391 && x <= 0x3A1\n\t\t|| x >= 0x3A3 && x <= 0x3A9\n\t\t|| x >= 0x3B1 && x <= 0x3C1\n\t\t|| x >= 0x3C3 && x <= 0x3C9\n\t\t|| x === 0x401\n\t\t|| x >= 0x410 && x <= 0x44F\n\t\t|| x === 0x451\n\t\t|| x === 0x2010\n\t\t|| x >= 0x2013 && x <= 0x2016\n\t\t|| x === 0x2018\n\t\t|| x === 0x2019\n\t\t|| x === 0x201C\n\t\t|| x === 0x201D\n\t\t|| x >= 0x2020 && x <= 0x2022\n\t\t|| x >= 0x2024 && x <= 0x2027\n\t\t|| x === 0x2030\n\t\t|| x === 0x2032\n\t\t|| x === 0x2033\n\t\t|| x === 0x2035\n\t\t|| x === 0x203B\n\t\t|| x === 0x203E\n\t\t|| x === 0x2074\n\t\t|| x === 0x207F\n\t\t|| x >= 0x2081 && x <= 0x2084\n\t\t|| x === 0x20AC\n\t\t|| x === 0x2103\n\t\t|| x === 0x2105\n\t\t|| x === 0x2109\n\t\t|| x === 0x2113\n\t\t|| x === 0x2116\n\t\t|| x === 0x2121\n\t\t|| x === 0x2122\n\t\t|| x === 0x2126\n\t\t|| x === 0x212B\n\t\t|| x === 0x2153\n\t\t|| x === 0x2154\n\t\t|| x >= 0x215B && x <= 0x215E\n\t\t|| x >= 0x2160 && x <= 0x216B\n\t\t|| x >= 0x2170 && x <= 0x2179\n\t\t|| x === 0x2189\n\t\t|| x >= 0x2190 && x <= 0x2199\n\t\t|| x === 0x21B8\n\t\t|| x === 0x21B9\n\t\t|| x === 0x21D2\n\t\t|| x === 0x21D4\n\t\t|| x === 0x21E7\n\t\t|| x === 0x2200\n\t\t|| x === 0x2202\n\t\t|| x === 0x2203\n\t\t|| x === 0x2207\n\t\t|| x === 0x2208\n\t\t|| x === 0x220B\n\t\t|| x === 0x220F\n\t\t|| x === 0x2211\n\t\t|| x === 0x2215\n\t\t|| x === 0x221A\n\t\t|| x >= 0x221D && x <= 0x2220\n\t\t|| x === 0x2223\n\t\t|| x === 0x2225\n\t\t|| x >= 0x2227 && x <= 0x222C\n\t\t|| x === 0x222E\n\t\t|| x >= 0x2234 && x <= 0x2237\n\t\t|| x === 0x223C\n\t\t|| x === 0x223D\n\t\t|| x === 0x2248\n\t\t|| x === 0x224C\n\t\t|| x === 0x2252\n\t\t|| x === 0x2260\n\t\t|| x === 0x2261\n\t\t|| x >= 0x2264 && x <= 0x2267\n\t\t|| x === 0x226A\n\t\t|| x === 0x226B\n\t\t|| x === 0x226E\n\t\t|| x === 0x226F\n\t\t|| x === 0x2282\n\t\t|| x === 0x2283\n\t\t|| x === 0x2286\n\t\t|| x === 0x2287\n\t\t|| x === 0x2295\n\t\t|| x === 0x2299\n\t\t|| x === 0x22A5\n\t\t|| x === 0x22BF\n\t\t|| x === 0x2312\n\t\t|| x >= 0x2460 && x <= 0x24E9\n\t\t|| x >= 0x24EB && x <= 0x254B\n\t\t|| x >= 0x2550 && x <= 0x2573\n\t\t|| x >= 0x2580 && x <= 0x258F\n\t\t|| x >= 0x2592 && x <= 0x2595\n\t\t|| x === 0x25A0\n\t\t|| x === 0x25A1\n\t\t|| x >= 0x25A3 && x <= 0x25A9\n\t\t|| x === 0x25B2\n\t\t|| x === 0x25B3\n\t\t|| x === 0x25B6\n\t\t|| x === 0x25B7\n\t\t|| x === 0x25BC\n\t\t|| x === 0x25BD\n\t\t|| x === 0x25C0\n\t\t|| x === 0x25C1\n\t\t|| x >= 0x25C6 && x <= 0x25C8\n\t\t|| x === 0x25CB\n\t\t|| x >= 0x25CE && x <= 0x25D1\n\t\t|| x >= 0x25E2 && x <= 0x25E5\n\t\t|| x === 0x25EF\n\t\t|| x === 0x2605\n\t\t|| x === 0x2606\n\t\t|| x === 0x2609\n\t\t|| x === 0x260E\n\t\t|| x === 0x260F\n\t\t|| x === 0x261C\n\t\t|| x === 0x261E\n\t\t|| x === 0x2640\n\t\t|| x === 0x2642\n\t\t|| x === 0x2660\n\t\t|| x === 0x2661\n\t\t|| x >= 0x2663 && x <= 0x2665\n\t\t|| x >= 0x2667 && x <= 0x266A\n\t\t|| x === 0x266C\n\t\t|| x === 0x266D\n\t\t|| x === 0x266F\n\t\t|| x === 0x269E\n\t\t|| x === 0x269F\n\t\t|| x === 0x26BF\n\t\t|| x >= 0x26C6 && x <= 0x26CD\n\t\t|| x >= 0x26CF && x <= 0x26D3\n\t\t|| x >= 0x26D5 && x <= 0x26E1\n\t\t|| x === 0x26E3\n\t\t|| x === 0x26E8\n\t\t|| x === 0x26E9\n\t\t|| x >= 0x26EB && x <= 0x26F1\n\t\t|| x === 0x26F4\n\t\t|| x >= 0x26F6 && x <= 0x26F9\n\t\t|| x === 0x26FB\n\t\t|| x === 0x26FC\n\t\t|| x === 0x26FE\n\t\t|| x === 0x26FF\n\t\t|| x === 0x273D\n\t\t|| x >= 0x2776 && x <= 0x277F\n\t\t|| x >= 0x2B56 && x <= 0x2B59\n\t\t|| x >= 0x3248 && x <= 0x324F\n\t\t|| x >= 0xE000 && x <= 0xF8FF\n\t\t|| x >= 0xFE00 && x <= 0xFE0F\n\t\t|| x === 0xFFFD\n\t\t|| x >= 0x1F100 && x <= 0x1F10A\n\t\t|| x >= 0x1F110 && x <= 0x1F12D\n\t\t|| x >= 0x1F130 && x <= 0x1F169\n\t\t|| x >= 0x1F170 && x <= 0x1F18D\n\t\t|| x === 0x1F18F\n\t\t|| x === 0x1F190\n\t\t|| x >= 0x1F19B && x <= 0x1F1AC\n\t\t|| x >= 0xE0100 && x <= 0xE01EF\n\t\t|| x >= 0xF0000 && x <= 0xFFFFD\n\t\t|| x >= 0x100000 && x <= 0x10FFFD;\n}\n\nfunction isFullWidth(x) {\n\treturn x === 0x3000\n\t\t|| x >= 0xFF01 && x <= 0xFF60\n\t\t|| x >= 0xFFE0 && x <= 0xFFE6;\n}\n\nfunction isWide(x) {\n\treturn x >= 0x1100 && x <= 0x115F\n\t\t|| x === 0x231A\n\t\t|| x === 0x231B\n\t\t|| x === 0x2329\n\t\t|| x === 0x232A\n\t\t|| x >= 0x23E9 && x <= 0x23EC\n\t\t|| x === 0x23F0\n\t\t|| x === 0x23F3\n\t\t|| x === 0x25FD\n\t\t|| x === 0x25FE\n\t\t|| x === 0x2614\n\t\t|| x === 0x2615\n\t\t|| x >= 0x2630 && x <= 0x2637\n\t\t|| x >= 0x2648 && x <= 0x2653\n\t\t|| x === 0x267F\n\t\t|| x >= 0x268A && x <= 0x268F\n\t\t|| x === 0x2693\n\t\t|| x === 0x26A1\n\t\t|| x === 0x26AA\n\t\t|| x === 0x26AB\n\t\t|| x === 0x26BD\n\t\t|| x === 0x26BE\n\t\t|| x === 0x26C4\n\t\t|| x === 0x26C5\n\t\t|| x === 0x26CE\n\t\t|| x === 0x26D4\n\t\t|| x === 0x26EA\n\t\t|| x === 0x26F2\n\t\t|| x === 0x26F3\n\t\t|| x === 0x26F5\n\t\t|| x === 0x26FA\n\t\t|| x === 0x26FD\n\t\t|| x === 0x2705\n\t\t|| x === 0x270A\n\t\t|| x === 0x270B\n\t\t|| x === 0x2728\n\t\t|| x === 0x274C\n\t\t|| x === 0x274E\n\t\t|| x >= 0x2753 && x <= 0x2755\n\t\t|| x === 0x2757\n\t\t|| x >= 0x2795 && x <= 0x2797\n\t\t|| x === 0x27B0\n\t\t|| x === 0x27BF\n\t\t|| x === 0x2B1B\n\t\t|| x === 0x2B1C\n\t\t|| x === 0x2B50\n\t\t|| x === 0x2B55\n\t\t|| x >= 0x2E80 && x <= 0x2E99\n\t\t|| x >= 0x2E9B && x <= 0x2EF3\n\t\t|| x >= 0x2F00 && x <= 0x2FD5\n\t\t|| x >= 0x2FF0 && x <= 0x2FFF\n\t\t|| x >= 0x3001 && x <= 0x303E\n\t\t|| x >= 0x3041 && x <= 0x3096\n\t\t|| x >= 0x3099 && x <= 0x30FF\n\t\t|| x >= 0x3105 && x <= 0x312F\n\t\t|| x >= 0x3131 && x <= 0x318E\n\t\t|| x >= 0x3190 && x <= 0x31E5\n\t\t|| x >= 0x31EF && x <= 0x321E\n\t\t|| x >= 0x3220 && x <= 0x3247\n\t\t|| x >= 0x3250 && x <= 0xA48C\n\t\t|| x >= 0xA490 && x <= 0xA4C6\n\t\t|| x >= 0xA960 && x <= 0xA97C\n\t\t|| x >= 0xAC00 && x <= 0xD7A3\n\t\t|| x >= 0xF900 && x <= 0xFAFF\n\t\t|| x >= 0xFE10 && x <= 0xFE19\n\t\t|| x >= 0xFE30 && x <= 0xFE52\n\t\t|| x >= 0xFE54 && x <= 0xFE66\n\t\t|| x >= 0xFE68 && x <= 0xFE6B\n\t\t|| x >= 0x16FE0 && x <= 0x16FE4\n\t\t|| x === 0x16FF0\n\t\t|| x === 0x16FF1\n\t\t|| x >= 0x17000 && x <= 0x187F7\n\t\t|| x >= 0x18800 && x <= 0x18CD5\n\t\t|| x >= 0x18CFF && x <= 0x18D08\n\t\t|| x >= 0x1AFF0 && x <= 0x1AFF3\n\t\t|| x >= 0x1AFF5 && x <= 0x1AFFB\n\t\t|| x === 0x1AFFD\n\t\t|| x === 0x1AFFE\n\t\t|| x >= 0x1B000 && x <= 0x1B122\n\t\t|| x === 0x1B132\n\t\t|| x >= 0x1B150 && x <= 0x1B152\n\t\t|| x === 0x1B155\n\t\t|| x >= 0x1B164 && x <= 0x1B167\n\t\t|| x >= 0x1B170 && x <= 0x1B2FB\n\t\t|| x >= 0x1D300 && x <= 0x1D356\n\t\t|| x >= 0x1D360 && x <= 0x1D376\n\t\t|| x === 0x1F004\n\t\t|| x === 0x1F0CF\n\t\t|| x === 0x1F18E\n\t\t|| x >= 0x1F191 && x <= 0x1F19A\n\t\t|| x >= 0x1F200 && x <= 0x1F202\n\t\t|| x >= 0x1F210 && x <= 0x1F23B\n\t\t|| x >= 0x1F240 && x <= 0x1F248\n\t\t|| x === 0x1F250\n\t\t|| x === 0x1F251\n\t\t|| x >= 0x1F260 && x <= 0x1F265\n\t\t|| x >= 0x1F300 && x <= 0x1F320\n\t\t|| x >= 0x1F32D && x <= 0x1F335\n\t\t|| x >= 0x1F337 && x <= 0x1F37C\n\t\t|| x >= 0x1F37E && x <= 0x1F393\n\t\t|| x >= 0x1F3A0 && x <= 0x1F3CA\n\t\t|| x >= 0x1F3CF && x <= 0x1F3D3\n\t\t|| x >= 0x1F3E0 && x <= 0x1F3F0\n\t\t|| x === 0x1F3F4\n\t\t|| x >= 0x1F3F8 && x <= 0x1F43E\n\t\t|| x === 0x1F440\n\t\t|| x >= 0x1F442 && x <= 0x1F4FC\n\t\t|| x >= 0x1F4FF && x <= 0x1F53D\n\t\t|| x >= 0x1F54B && x <= 0x1F54E\n\t\t|| x >= 0x1F550 && x <= 0x1F567\n\t\t|| x === 0x1F57A\n\t\t|| x === 0x1F595\n\t\t|| x === 0x1F596\n\t\t|| x === 0x1F5A4\n\t\t|| x >= 0x1F5FB && x <= 0x1F64F\n\t\t|| x >= 0x1F680 && x <= 0x1F6C5\n\t\t|| x === 0x1F6CC\n\t\t|| x >= 0x1F6D0 && x <= 0x1F6D2\n\t\t|| x >= 0x1F6D5 && x <= 0x1F6D7\n\t\t|| x >= 0x1F6DC && x <= 0x1F6DF\n\t\t|| x === 0x1F6EB\n\t\t|| x === 0x1F6EC\n\t\t|| x >= 0x1F6F4 && x <= 0x1F6FC\n\t\t|| x >= 0x1F7E0 && x <= 0x1F7EB\n\t\t|| x === 0x1F7F0\n\t\t|| x >= 0x1F90C && x <= 0x1F93A\n\t\t|| x >= 0x1F93C && x <= 0x1F945\n\t\t|| x >= 0x1F947 && x <= 0x1F9FF\n\t\t|| x >= 0x1FA70 && x <= 0x1FA7C\n\t\t|| x >= 0x1FA80 && x <= 0x1FA89\n\t\t|| x >= 0x1FA8F && x <= 0x1FAC6\n\t\t|| x >= 0x1FACE && x <= 0x1FADC\n\t\t|| x >= 0x1FADF && x <= 0x1FAE9\n\t\t|| x >= 0x1FAF0 && x <= 0x1FAF8\n\t\t|| x >= 0x20000 && x <= 0x2FFFD\n\t\t|| x >= 0x30000 && x <= 0x3FFFD;\n}\n\nfunction validate(codePoint) {\n\tif (!Number.isSafeInteger(codePoint)) {\n\t\tthrow new TypeError(`Expected a code point, got \\`${typeof codePoint}\\`.`);\n\t}\n}\n\nfunction eastAsianWidth(codePoint, {ambiguousAsWide = false} = {}) {\n\tvalidate(codePoint);\n\n\tif (\n\t\tisFullWidth(codePoint)\n\t\t|| isWide(codePoint)\n\t\t|| (ambiguousAsWide && isAmbiguous(codePoint))\n\t) {\n\t\treturn 2;\n\t}\n\n\treturn 1;\n}\n\nconst emojiRegex = () => {\n\t// https://mths.be/emoji\n\treturn /[#*0-9]\\uFE0F?\\u20E3|[\\xA9\\xAE\\u203C\\u2049\\u2122\\u2139\\u2194-\\u2199\\u21A9\\u21AA\\u231A\\u231B\\u2328\\u23CF\\u23ED-\\u23EF\\u23F1\\u23F2\\u23F8-\\u23FA\\u24C2\\u25AA\\u25AB\\u25B6\\u25C0\\u25FB\\u25FC\\u25FE\\u2600-\\u2604\\u260E\\u2611\\u2614\\u2615\\u2618\\u2620\\u2622\\u2623\\u2626\\u262A\\u262E\\u262F\\u2638-\\u263A\\u2640\\u2642\\u2648-\\u2653\\u265F\\u2660\\u2663\\u2665\\u2666\\u2668\\u267B\\u267E\\u267F\\u2692\\u2694-\\u2697\\u2699\\u269B\\u269C\\u26A0\\u26A7\\u26AA\\u26B0\\u26B1\\u26BD\\u26BE\\u26C4\\u26C8\\u26CF\\u26D1\\u26E9\\u26F0-\\u26F5\\u26F7\\u26F8\\u26FA\\u2702\\u2708\\u2709\\u270F\\u2712\\u2714\\u2716\\u271D\\u2721\\u2733\\u2734\\u2744\\u2747\\u2757\\u2763\\u27A1\\u2934\\u2935\\u2B05-\\u2B07\\u2B1B\\u2B1C\\u2B55\\u3030\\u303D\\u3297\\u3299]\\uFE0F?|[\\u261D\\u270C\\u270D](?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?|[\\u270A\\u270B](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\u23E9-\\u23EC\\u23F0\\u23F3\\u25FD\\u2693\\u26A1\\u26AB\\u26C5\\u26CE\\u26D4\\u26EA\\u26FD\\u2705\\u2728\\u274C\\u274E\\u2753-\\u2755\\u2795-\\u2797\\u27B0\\u27BF\\u2B50]|\\u26D3\\uFE0F?(?:\\u200D\\uD83D\\uDCA5)?|\\u26F9(?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|\\u2764\\uFE0F?(?:\\u200D(?:\\uD83D\\uDD25|\\uD83E\\uDE79))?|\\uD83C(?:[\\uDC04\\uDD70\\uDD71\\uDD7E\\uDD7F\\uDE02\\uDE37\\uDF21\\uDF24-\\uDF2C\\uDF36\\uDF7D\\uDF96\\uDF97\\uDF99-\\uDF9B\\uDF9E\\uDF9F\\uDFCD\\uDFCE\\uDFD4-\\uDFDF\\uDFF5\\uDFF7]\\uFE0F?|[\\uDF85\\uDFC2\\uDFC7](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDFC4\\uDFCA](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDFCB\\uDFCC](?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDCCF\\uDD8E\\uDD91-\\uDD9A\\uDE01\\uDE1A\\uDE2F\\uDE32-\\uDE36\\uDE38-\\uDE3A\\uDE50\\uDE51\\uDF00-\\uDF20\\uDF2D-\\uDF35\\uDF37-\\uDF43\\uDF45-\\uDF4A\\uDF4C-\\uDF7C\\uDF7E-\\uDF84\\uDF86-\\uDF93\\uDFA0-\\uDFC1\\uDFC5\\uDFC6\\uDFC8\\uDFC9\\uDFCF-\\uDFD3\\uDFE0-\\uDFF0\\uDFF8-\\uDFFF]|\\uDDE6\\uD83C[\\uDDE8-\\uDDEC\\uDDEE\\uDDF1\\uDDF2\\uDDF4\\uDDF6-\\uDDFA\\uDDFC\\uDDFD\\uDDFF]|\\uDDE7\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEF\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9\\uDDFB\\uDDFC\\uDDFE\\uDDFF]|\\uDDE8\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDEE\\uDDF0-\\uDDF7\\uDDFA-\\uDDFF]|\\uDDE9\\uD83C[\\uDDEA\\uDDEC\\uDDEF\\uDDF0\\uDDF2\\uDDF4\\uDDFF]|\\uDDEA\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDED\\uDDF7-\\uDDFA]|\\uDDEB\\uD83C[\\uDDEE-\\uDDF0\\uDDF2\\uDDF4\\uDDF7]|\\uDDEC\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEE\\uDDF1-\\uDDF3\\uDDF5-\\uDDFA\\uDDFC\\uDDFE]|\\uDDED\\uD83C[\\uDDF0\\uDDF2\\uDDF3\\uDDF7\\uDDF9\\uDDFA]|\\uDDEE\\uD83C[\\uDDE8-\\uDDEA\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9]|\\uDDEF\\uD83C[\\uDDEA\\uDDF2\\uDDF4\\uDDF5]|\\uDDF0\\uD83C[\\uDDEA\\uDDEC-\\uDDEE\\uDDF2\\uDDF3\\uDDF5\\uDDF7\\uDDFC\\uDDFE\\uDDFF]|\\uDDF1\\uD83C[\\uDDE6-\\uDDE8\\uDDEE\\uDDF0\\uDDF7-\\uDDFB\\uDDFE]|\\uDDF2\\uD83C[\\uDDE6\\uDDE8-\\uDDED\\uDDF0-\\uDDFF]|\\uDDF3\\uD83C[\\uDDE6\\uDDE8\\uDDEA-\\uDDEC\\uDDEE\\uDDF1\\uDDF4\\uDDF5\\uDDF7\\uDDFA\\uDDFF]|\\uDDF4\\uD83C\\uDDF2|\\uDDF5\\uD83C[\\uDDE6\\uDDEA-\\uDDED\\uDDF0-\\uDDF3\\uDDF7-\\uDDF9\\uDDFC\\uDDFE]|\\uDDF6\\uD83C\\uDDE6|\\uDDF7\\uD83C[\\uDDEA\\uDDF4\\uDDF8\\uDDFA\\uDDFC]|\\uDDF8\\uD83C[\\uDDE6-\\uDDEA\\uDDEC-\\uDDF4\\uDDF7-\\uDDF9\\uDDFB\\uDDFD-\\uDDFF]|\\uDDF9\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDED\\uDDEF-\\uDDF4\\uDDF7\\uDDF9\\uDDFB\\uDDFC\\uDDFF]|\\uDDFA\\uD83C[\\uDDE6\\uDDEC\\uDDF2\\uDDF3\\uDDF8\\uDDFE\\uDDFF]|\\uDDFB\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDEE\\uDDF3\\uDDFA]|\\uDDFC\\uD83C[\\uDDEB\\uDDF8]|\\uDDFD\\uD83C\\uDDF0|\\uDDFE\\uD83C[\\uDDEA\\uDDF9]|\\uDDFF\\uD83C[\\uDDE6\\uDDF2\\uDDFC]|\\uDF44(?:\\u200D\\uD83D\\uDFEB)?|\\uDF4B(?:\\u200D\\uD83D\\uDFE9)?|\\uDFC3(?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D(?:[\\u2640\\u2642]\\uFE0F?(?:\\u200D\\u27A1\\uFE0F?)?|\\u27A1\\uFE0F?))?|\\uDFF3\\uFE0F?(?:\\u200D(?:\\u26A7\\uFE0F?|\\uD83C\\uDF08))?|\\uDFF4(?:\\u200D\\u2620\\uFE0F?|\\uDB40\\uDC67\\uDB40\\uDC62\\uDB40(?:\\uDC65\\uDB40\\uDC6E\\uDB40\\uDC67|\\uDC73\\uDB40\\uDC63\\uDB40\\uDC74|\\uDC77\\uDB40\\uDC6C\\uDB40\\uDC73)\\uDB40\\uDC7F)?)|\\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?|[\\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](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDC6E\\uDC70\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4\\uDEB5](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDD74\\uDD90](?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?|[\\uDC00-\\uDC07\\uDC09-\\uDC14\\uDC16-\\uDC25\\uDC27-\\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-\\uDE41\\uDE43\\uDE44\\uDE48-\\uDE4A\\uDE80-\\uDEA2\\uDEA4-\\uDEB3\\uDEB7-\\uDEBF\\uDEC1-\\uDEC5\\uDED0-\\uDED2\\uDED5-\\uDED7\\uDEDC-\\uDEDF\\uDEEB\\uDEEC\\uDEF4-\\uDEFC\\uDFE0-\\uDFEB\\uDFF0]|\\uDC08(?:\\u200D\\u2B1B)?|\\uDC15(?:\\u200D\\uD83E\\uDDBA)?|\\uDC26(?:\\u200D(?:\\u2B1B|\\uD83D\\uDD25))?|\\uDC3B(?:\\u200D\\u2744\\uFE0F?)?|\\uDC41\\uFE0F?(?:\\u200D\\uD83D\\uDDE8\\uFE0F?)?|\\uDC68(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDC68\\uDC69]\\u200D\\uD83D(?:\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?)|[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?)|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]))|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFC-\\uDFFF])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB-\\uDFFE])))?))?|\\uDC69(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?[\\uDC68\\uDC69]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?|\\uDC69\\u200D\\uD83D(?:\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?))|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]))|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFC-\\uDFFF])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB-\\uDFFE])))?))?|\\uDC6F(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|\\uDD75(?:\\uD83C[\\uDFFB-\\uDFFF]|\\uFE0F)?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|\\uDE2E(?:\\u200D\\uD83D\\uDCA8)?|\\uDE35(?:\\u200D\\uD83D\\uDCAB)?|\\uDE36(?:\\u200D\\uD83C\\uDF2B\\uFE0F?)?|\\uDE42(?:\\u200D[\\u2194\\u2195]\\uFE0F?)?|\\uDEB6(?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D(?:[\\u2640\\u2642]\\uFE0F?(?:\\u200D\\u27A1\\uFE0F?)?|\\u27A1\\uFE0F?))?)|\\uD83E(?:[\\uDD0C\\uDD0F\\uDD18-\\uDD1F\\uDD30-\\uDD34\\uDD36\\uDD77\\uDDB5\\uDDB6\\uDDBB\\uDDD2\\uDDD3\\uDDD5\\uDEC3-\\uDEC5\\uDEF0\\uDEF2-\\uDEF8](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3D\\uDD3E\\uDDB8\\uDDB9\\uDDCD\\uDDCF\\uDDD4\\uDDD6-\\uDDDD](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDDDE\\uDDDF](?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDD0D\\uDD0E\\uDD10-\\uDD17\\uDD20-\\uDD25\\uDD27-\\uDD2F\\uDD3A\\uDD3F-\\uDD45\\uDD47-\\uDD76\\uDD78-\\uDDB4\\uDDB7\\uDDBA\\uDDBC-\\uDDCC\\uDDD0\\uDDE0-\\uDDFF\\uDE70-\\uDE7C\\uDE80-\\uDE89\\uDE8F-\\uDEC2\\uDEC6\\uDECE-\\uDEDC\\uDEDF-\\uDEE9]|\\uDD3C(?:\\u200D[\\u2640\\u2642]\\uFE0F?|\\uD83C[\\uDFFB-\\uDFFF])?|\\uDDCE(?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D(?:[\\u2640\\u2642]\\uFE0F?(?:\\u200D\\u27A1\\uFE0F?)?|\\u27A1\\uFE0F?))?|\\uDDD1(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1|\\uDDD1\\u200D\\uD83E\\uDDD2(?:\\u200D\\uD83E\\uDDD2)?|\\uDDD2(?:\\u200D\\uD83E\\uDDD2)?))|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFC-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFD-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFD\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFE]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF\\uDDBC\\uDDBD](?:\\u200D\\u27A1\\uFE0F?)?|[\\uDDB0-\\uDDB3]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?))?|\\uDEF1(?:\\uD83C(?:\\uDFFB(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFC-\\uDFFF])?|\\uDFFC(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])?|\\uDFFD(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])?|\\uDFFE(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])?|\\uDFFF(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB-\\uDFFE])?))?)/g;\n};\n\nconst segmenter = globalThis.Intl?.Segmenter ? new Intl.Segmenter() : { segment: (str) => str.split('') };\n\nconst defaultIgnorableCodePointRegex = /^\\p{Default_Ignorable_Code_Point}$/u;\n\nfunction stringWidth$1(string, options = {}) {\n\tif (typeof string !== 'string' || string.length === 0) {\n\t\treturn 0;\n\t}\n\n\tconst {\n\t\tambiguousIsNarrow = true,\n\t\tcountAnsiEscapeCodes = false,\n\t} = options;\n\n\tif (!countAnsiEscapeCodes) {\n\t\tstring = stripAnsi(string);\n\t}\n\n\tif (string.length === 0) {\n\t\treturn 0;\n\t}\n\n\tlet width = 0;\n\tconst eastAsianWidthOptions = {ambiguousAsWide: !ambiguousIsNarrow};\n\n\tfor (const {segment: character} of segmenter.segment(string)) {\n\t\tconst codePoint = character.codePointAt(0);\n\n\t\t// Ignore control characters\n\t\tif (codePoint <= 0x1F || (codePoint >= 0x7F && codePoint <= 0x9F)) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Ignore zero-width characters\n\t\tif (\n\t\t\t(codePoint >= 0x20_0B && codePoint <= 0x20_0F) // Zero-width space, non-joiner, joiner, left-to-right mark, right-to-left mark\n\t\t\t|| codePoint === 0xFE_FF // Zero-width no-break space\n\t\t) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Ignore combining characters\n\t\tif (\n\t\t\t(codePoint >= 0x3_00 && codePoint <= 0x3_6F) // Combining diacritical marks\n\t\t\t|| (codePoint >= 0x1A_B0 && codePoint <= 0x1A_FF) // Combining diacritical marks extended\n\t\t\t|| (codePoint >= 0x1D_C0 && codePoint <= 0x1D_FF) // Combining diacritical marks supplement\n\t\t\t|| (codePoint >= 0x20_D0 && codePoint <= 0x20_FF) // Combining diacritical marks for symbols\n\t\t\t|| (codePoint >= 0xFE_20 && codePoint <= 0xFE_2F) // Combining half marks\n\t\t) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Ignore surrogate pairs\n\t\tif (codePoint >= 0xD8_00 && codePoint <= 0xDF_FF) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// Ignore variation selectors\n\t\tif (codePoint >= 0xFE_00 && codePoint <= 0xFE_0F) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// This covers some of the above cases, but we still keep them for performance reasons.\n\t\tif (defaultIgnorableCodePointRegex.test(character)) {\n\t\t\tcontinue;\n\t\t}\n\n\t\t// TODO: Use `/\\p{RGI_Emoji}/v` when targeting Node.js 20.\n\t\tif (emojiRegex().test(character)) {\n\t\t\twidth += 2;\n\t\t\tcontinue;\n\t\t}\n\n\t\twidth += eastAsianWidth(codePoint, eastAsianWidthOptions);\n\t}\n\n\treturn width;\n}\n\nfunction isUnicodeSupported() {\n\tconst {env} = g$1;\n\tconst {TERM, TERM_PROGRAM} = env;\n\n\tif (g$1.platform !== 'win32') {\n\t\treturn TERM !== 'linux'; // Linux console (kernel)\n\t}\n\n\treturn Boolean(env.WT_SESSION) // Windows Terminal\n\t\t|| Boolean(env.TERMINUS_SUBLIME) // Terminus (<0.2.27)\n\t\t|| env.ConEmuTask === '{cmd::Cmder}' // ConEmu and cmder\n\t\t|| TERM_PROGRAM === 'Terminus-Sublime'\n\t\t|| TERM_PROGRAM === 'vscode'\n\t\t|| TERM === 'xterm-256color'\n\t\t|| TERM === 'alacritty'\n\t\t|| TERM === 'rxvt-unicode'\n\t\t|| TERM === 'rxvt-unicode-256color'\n\t\t|| env.TERMINAL_EMULATOR === 'JetBrains-JediTerm';\n}\n\nconst TYPE_COLOR_MAP = {\n info: \"cyan\",\n fail: \"red\",\n success: \"green\",\n ready: \"green\",\n start: \"magenta\"\n};\nconst LEVEL_COLOR_MAP = {\n 0: \"red\",\n 1: \"yellow\"\n};\nconst unicode = isUnicodeSupported();\nconst s = (c, fallback) => unicode ? c : fallback;\nconst TYPE_ICONS = {\n error: s(\"\\u2716\", \"\\xD7\"),\n fatal: s(\"\\u2716\", \"\\xD7\"),\n ready: s(\"\\u2714\", \"\\u221A\"),\n warn: s(\"\\u26A0\", \"\\u203C\"),\n info: s(\"\\u2139\", \"i\"),\n success: s(\"\\u2714\", \"\\u221A\"),\n debug: s(\"\\u2699\", \"D\"),\n trace: s(\"\\u2192\", \"\\u2192\"),\n fail: s(\"\\u2716\", \"\\xD7\"),\n start: s(\"\\u25D0\", \"o\"),\n log: \"\"\n};\nfunction stringWidth(str) {\n const hasICU = typeof Intl === \"object\";\n if (!hasICU || !Intl.Segmenter) {\n return stripAnsi$1(str).length;\n }\n return stringWidth$1(str);\n}\nclass FancyReporter extends BasicReporter {\n formatStack(stack, message, opts) {\n const indent = \" \".repeat((opts?.errorLevel || 0) + 1);\n return `\n${indent}` + parseStack(stack, message).map(\n (line) => \" \" + line.replace(/^at +/, (m) => colors.gray(m)).replace(/\\((.+)\\)/, (_, m) => `(${colors.cyan(m)})`)\n ).join(`\n${indent}`);\n }\n formatType(logObj, isBadge, opts) {\n const typeColor = TYPE_COLOR_MAP[logObj.type] || LEVEL_COLOR_MAP[logObj.level] || \"gray\";\n if (isBadge) {\n return getBgColor(typeColor)(\n colors.black(` ${logObj.type.toUpperCase()} `)\n );\n }\n const _type = typeof TYPE_ICONS[logObj.type] === \"string\" ? TYPE_ICONS[logObj.type] : logObj.icon || logObj.type;\n return _type ? getColor(typeColor)(_type) : \"\";\n }\n formatLogObj(logObj, opts) {\n const [message, ...additional] = this.formatArgs(logObj.args, opts).split(\n \"\\n\"\n );\n if (logObj.type === \"box\") {\n return box(\n characterFormat(\n message + (additional.length > 0 ? \"\\n\" + additional.join(\"\\n\") : \"\")\n ),\n {\n title: logObj.title ? characterFormat(logObj.title) : void 0,\n style: logObj.style\n }\n );\n }\n const date = this.formatDate(logObj.date, opts);\n const coloredDate = date && colors.gray(date);\n const isBadge = logObj.badge ?? logObj.level < 2;\n const type = this.formatType(logObj, isBadge, opts);\n const tag = logObj.tag ? colors.gray(logObj.tag) : \"\";\n let line;\n const left = this.filterAndJoin([type, characterFormat(message)]);\n const right = this.filterAndJoin(opts.columns ? [tag, coloredDate] : [tag]);\n const space = (opts.columns || 0) - stringWidth(left) - stringWidth(right) - 2;\n line = space > 0 && (opts.columns || 0) >= 80 ? left + \" \".repeat(space) + right : (right ? `${colors.gray(`[${right}]`)} ` : \"\") + left;\n line += characterFormat(\n additional.length > 0 ? \"\\n\" + additional.join(\"\\n\") : \"\"\n );\n if (logObj.type === \"trace\") {\n const _err = new Error(\"Trace: \" + logObj.message);\n line += this.formatStack(_err.stack || \"\", _err.message);\n }\n return isBadge ? \"\\n\" + line + \"\\n\" : line;\n }\n}\nfunction characterFormat(str) {\n return str.replace(/`([^`]+)`/gm, (_, m) => colors.cyan(m)).replace(/\\s+_([^_]+)_\\s+/gm, (_, m) => ` ${colors.underline(m)} `);\n}\nfunction getColor(color = \"white\") {\n return colors[color] || colors.white;\n}\nfunction getBgColor(color = \"bgWhite\") {\n return colors[`bg${color[0].toUpperCase()}${color.slice(1)}`] || colors.bgWhite;\n}\n\nfunction createConsola(options = {}) {\n let level = _getDefaultLogLevel();\n if (process.env.CONSOLA_LEVEL) {\n level = Number.parseInt(process.env.CONSOLA_LEVEL) ?? level;\n }\n const consola2 = createConsola$1({\n level,\n defaults: { level },\n stdout: process.stdout,\n stderr: process.stderr,\n prompt: (...args) => import('./chunks/prompt.mjs').then((m) => m.prompt(...args)),\n reporters: options.reporters || [\n options.fancy ?? !(T || R) ? new FancyReporter() : new BasicReporter()\n ],\n ...options\n });\n return consola2;\n}\nfunction _getDefaultLogLevel() {\n if (g) {\n return LogLevels.debug;\n }\n if (R) {\n return LogLevels.warn;\n }\n return LogLevels.info;\n}\nconst consola = createConsola();\n\nexport { LogLevels, consola, createConsola, consola as default };\n","import consola from 'consola';\nimport { colors } from 'consola/utils';\n\nfunction toArray(val) {\n if (Array.isArray(val)) {\n return val;\n }\n return val === void 0 ? [] : [val];\n}\nfunction formatLineColumns(lines, linePrefix = \"\") {\n const maxLengh = [];\n for (const line of lines) {\n for (const [i, element] of line.entries()) {\n maxLengh[i] = Math.max(maxLengh[i] || 0, element.length);\n }\n }\n return lines.map(\n (l) => l.map(\n (c, i) => linePrefix + c[i === 0 ? \"padStart\" : \"padEnd\"](maxLengh[i])\n ).join(\" \")\n ).join(\"\\n\");\n}\nfunction resolveValue(input) {\n return typeof input === \"function\" ? input() : input;\n}\nclass CLIError extends Error {\n constructor(message, code) {\n super(message);\n this.code = code;\n this.name = \"CLIError\";\n }\n}\n\nconst NUMBER_CHAR_RE = /\\d/;\nconst STR_SPLITTERS = [\"-\", \"_\", \"/\", \".\"];\nfunction isUppercase(char = \"\") {\n if (NUMBER_CHAR_RE.test(char)) {\n return void 0;\n }\n return char !== char.toLowerCase();\n}\nfunction splitByCase(str, separators) {\n const splitters = separators ?? STR_SPLITTERS;\n const parts = [];\n if (!str || typeof str !== \"string\") {\n return parts;\n }\n let buff = \"\";\n let previousUpper;\n let previousSplitter;\n for (const char of str) {\n const isSplitter = splitters.includes(char);\n if (isSplitter === true) {\n parts.push(buff);\n buff = \"\";\n previousUpper = void 0;\n continue;\n }\n const isUpper = isUppercase(char);\n if (previousSplitter === false) {\n if (previousUpper === false && isUpper === true) {\n parts.push(buff);\n buff = char;\n previousUpper = isUpper;\n continue;\n }\n if (previousUpper === true && isUpper === false && buff.length > 1) {\n const lastChar = buff.at(-1);\n parts.push(buff.slice(0, Math.max(0, buff.length - 1)));\n buff = lastChar + char;\n previousUpper = isUpper;\n continue;\n }\n }\n buff += char;\n previousUpper = isUpper;\n previousSplitter = isSplitter;\n }\n parts.push(buff);\n return parts;\n}\nfunction upperFirst(str) {\n return str ? str[0].toUpperCase() + str.slice(1) : \"\";\n}\nfunction lowerFirst(str) {\n return str ? str[0].toLowerCase() + str.slice(1) : \"\";\n}\nfunction pascalCase(str, opts) {\n return str ? (Array.isArray(str) ? str : splitByCase(str)).map((p) => upperFirst(opts?.normalize ? p.toLowerCase() : p)).join(\"\") : \"\";\n}\nfunction camelCase(str, opts) {\n return lowerFirst(pascalCase(str || \"\", opts));\n}\nfunction kebabCase(str, joiner) {\n return str ? (Array.isArray(str) ? str : splitByCase(str)).map((p) => p.toLowerCase()).join(joiner ?? \"-\") : \"\";\n}\n\nfunction toArr(any) {\n return any == void 0 ? [] : Array.isArray(any) ? any : [any];\n}\nfunction toVal(out, key, val, opts) {\n let x;\n const old = out[key];\n const nxt = ~opts.string.indexOf(key) ? val == void 0 || val === true ? \"\" : String(val) : typeof val === \"boolean\" ? val : ~opts.boolean.indexOf(key) ? val === \"false\" ? false : val === \"true\" || (out._.push((x = +val, x * 0 === 0) ? x : val), !!val) : (x = +val, x * 0 === 0) ? x : val;\n out[key] = old == void 0 ? nxt : Array.isArray(old) ? old.concat(nxt) : [old, nxt];\n}\nfunction parseRawArgs(args = [], opts = {}) {\n let k;\n let arr;\n let arg;\n let name;\n let val;\n const out = { _: [] };\n let i = 0;\n let j = 0;\n let idx = 0;\n const len = args.length;\n const alibi = opts.alias !== void 0;\n const strict = opts.unknown !== void 0;\n const defaults = opts.default !== void 0;\n opts.alias = opts.alias || {};\n opts.string = toArr(opts.string);\n opts.boolean = toArr(opts.boolean);\n if (alibi) {\n for (k in opts.alias) {\n arr = opts.alias[k] = toArr(opts.alias[k]);\n for (i = 0; i < arr.length; i++) {\n (opts.alias[arr[i]] = arr.concat(k)).splice(i, 1);\n }\n }\n }\n for (i = opts.boolean.length; i-- > 0; ) {\n arr = opts.alias[opts.boolean[i]] || [];\n for (j = arr.length; j-- > 0; ) {\n opts.boolean.push(arr[j]);\n }\n }\n for (i = opts.string.length; i-- > 0; ) {\n arr = opts.alias[opts.string[i]] || [];\n for (j = arr.length; j-- > 0; ) {\n opts.string.push(arr[j]);\n }\n }\n if (defaults) {\n for (k in opts.default) {\n name = typeof opts.default[k];\n arr = opts.alias[k] = opts.alias[k] || [];\n if (opts[name] !== void 0) {\n opts[name].push(k);\n for (i = 0; i < arr.length; i++) {\n opts[name].push(arr[i]);\n }\n }\n }\n }\n const keys = strict ? Object.keys(opts.alias) : [];\n for (i = 0; i < len; i++) {\n arg = args[i];\n if (arg === \"--\") {\n out._ = out._.concat(args.slice(++i));\n break;\n }\n for (j = 0; j < arg.length; j++) {\n if (arg.charCodeAt(j) !== 45) {\n break;\n }\n }\n if (j === 0) {\n out._.push(arg);\n } else if (arg.substring(j, j + 3) === \"no-\") {\n name = arg.slice(Math.max(0, j + 3));\n if (strict && !~keys.indexOf(name)) {\n return opts.unknown(arg);\n }\n out[name] = false;\n } else {\n for (idx = j + 1; idx < arg.length; idx++) {\n if (arg.charCodeAt(idx) === 61) {\n break;\n }\n }\n name = arg.substring(j, idx);\n val = arg.slice(Math.max(0, ++idx)) || i + 1 === len || (\"\" + args[i + 1]).charCodeAt(0) === 45 || args[++i];\n arr = j === 2 ? [name] : name;\n for (idx = 0; idx < arr.length; idx++) {\n name = arr[idx];\n if (strict && !~keys.indexOf(name)) {\n return opts.unknown(\"-\".repeat(j) + name);\n }\n toVal(out, name, idx + 1 < arr.length || val, opts);\n }\n }\n }\n if (defaults) {\n for (k in opts.default) {\n if (out[k] === void 0) {\n out[k] = opts.default[k];\n }\n }\n }\n if (alibi) {\n for (k in out) {\n arr = opts.alias[k] || [];\n while (arr.length > 0) {\n out[arr.shift()] = out[k];\n }\n }\n }\n return out;\n}\n\nfunction parseArgs(rawArgs, argsDef) {\n const parseOptions = {\n boolean: [],\n string: [],\n mixed: [],\n alias: {},\n default: {}\n };\n const args = resolveArgs(argsDef);\n for (const arg of args) {\n if (arg.type === \"positional\") {\n continue;\n }\n if (arg.type === \"string\") {\n parseOptions.string.push(arg.name);\n } else if (arg.type === \"boolean\") {\n parseOptions.boolean.push(arg.name);\n }\n if (arg.default !== void 0) {\n parseOptions.default[arg.name] = arg.default;\n }\n if (arg.alias) {\n parseOptions.alias[arg.name] = arg.alias;\n }\n }\n const parsed = parseRawArgs(rawArgs, parseOptions);\n const [...positionalArguments] = parsed._;\n const parsedArgsProxy = new Proxy(parsed, {\n get(target, prop) {\n return target[prop] ?? target[camelCase(prop)] ?? target[kebabCase(prop)];\n }\n });\n for (const [, arg] of args.entries()) {\n if (arg.type === \"positional\") {\n const nextPositionalArgument = positionalArguments.shift();\n if (nextPositionalArgument !== void 0) {\n parsedArgsProxy[arg.name] = nextPositionalArgument;\n } else if (arg.default === void 0 && arg.required !== false) {\n throw new CLIError(\n `Missing required positional argument: ${arg.name.toUpperCase()}`,\n \"EARG\"\n );\n } else {\n parsedArgsProxy[arg.name] = arg.default;\n }\n } else if (arg.required && parsedArgsProxy[arg.name] === void 0) {\n throw new CLIError(`Missing required argument: --${arg.name}`, \"EARG\");\n }\n }\n return parsedArgsProxy;\n}\nfunction resolveArgs(argsDef) {\n const args = [];\n for (const [name, argDef] of Object.entries(argsDef || {})) {\n args.push({\n ...argDef,\n name,\n alias: toArray(argDef.alias)\n });\n }\n return args;\n}\n\nfunction defineCommand(def) {\n return def;\n}\nasync function runCommand(cmd, opts) {\n const cmdArgs = await resolveValue(cmd.args || {});\n const parsedArgs = parseArgs(opts.rawArgs, cmdArgs);\n const context = {\n rawArgs: opts.rawArgs,\n args: parsedArgs,\n data: opts.data,\n cmd\n };\n if (typeof cmd.setup === \"function\") {\n await cmd.setup(context);\n }\n let result;\n try {\n const subCommands = await resolveValue(cmd.subCommands);\n if (subCommands && Object.keys(subCommands).length > 0) {\n const subCommandArgIndex = opts.rawArgs.findIndex(\n (arg) => !arg.startsWith(\"-\")\n );\n const subCommandName = opts.rawArgs[subCommandArgIndex];\n if (subCommandName) {\n if (!subCommands[subCommandName]) {\n throw new CLIError(\n `Unknown command \\`${subCommandName}\\``,\n \"E_UNKNOWN_COMMAND\"\n );\n }\n const subCommand = await resolveValue(subCommands[subCommandName]);\n if (subCommand) {\n await runCommand(subCommand, {\n rawArgs: opts.rawArgs.slice(subCommandArgIndex + 1)\n });\n }\n } else if (!cmd.run) {\n throw new CLIError(`No command specified.`, \"E_NO_COMMAND\");\n }\n }\n if (typeof cmd.run === \"function\") {\n result = await cmd.run(context);\n }\n } finally {\n if (typeof cmd.cleanup === \"function\") {\n await cmd.cleanup(context);\n }\n }\n return { result };\n}\nasync function resolveSubCommand(cmd, rawArgs, parent) {\n const subCommands = await resolveValue(cmd.subCommands);\n if (subCommands && Object.keys(subCommands).length > 0) {\n const subCommandArgIndex = rawArgs.findIndex((arg) => !arg.startsWith(\"-\"));\n const subCommandName = rawArgs[subCommandArgIndex];\n const subCommand = await resolveValue(subCommands[subCommandName]);\n if (subCommand) {\n return resolveSubCommand(\n subCommand,\n rawArgs.slice(subCommandArgIndex + 1),\n cmd\n );\n }\n }\n return [cmd, parent];\n}\n\nasync function showUsage(cmd, parent) {\n try {\n consola.log(await renderUsage(cmd, parent) + \"\\n\");\n } catch (error) {\n consola.error(error);\n }\n}\nasync function renderUsage(cmd, parent) {\n const cmdMeta = await resolveValue(cmd.meta || {});\n const cmdArgs = resolveArgs(await resolveValue(cmd.args || {}));\n const parentMeta = await resolveValue(parent?.meta || {});\n const commandName = `${parentMeta.name ? `${parentMeta.name} ` : \"\"}` + (cmdMeta.name || process.argv[1]);\n const argLines = [];\n const posLines = [];\n const commandsLines = [];\n const usageLine = [];\n for (const arg of cmdArgs) {\n if (arg.type === \"positional\") {\n const name = arg.name.toUpperCase();\n const isRequired = arg.required !== false && arg.default === void 0;\n const defaultHint = arg.default ? `=\"${arg.default}\"` : \"\";\n posLines.push([\n \"`\" + name + defaultHint + \"`\",\n arg.description || \"\",\n arg.valueHint ? `<${arg.valueHint}>` : \"\"\n ]);\n usageLine.push(isRequired ? `<${name}>` : `[${name}]`);\n } else {\n const isRequired = arg.required === true && arg.default === void 0;\n const argStr = (arg.type === \"boolean\" && arg.default === true ? [\n ...(arg.alias || []).map((a) => `--no-${a}`),\n `--no-${arg.name}`\n ].join(\", \") : [...(arg.alias || []).map((a) => `-${a}`), `--${arg.name}`].join(\n \", \"\n )) + (arg.type === \"string\" && (arg.valueHint || arg.default) ? `=${arg.valueHint ? `<${arg.valueHint}>` : `\"${arg.default || \"\"}\"`}` : \"\");\n argLines.push([\n \"`\" + argStr + (isRequired ? \" (required)\" : \"\") + \"`\",\n arg.description || \"\"\n ]);\n if (isRequired) {\n usageLine.push(argStr);\n }\n }\n }\n if (cmd.subCommands) {\n const commandNames = [];\n const subCommands = await resolveValue(cmd.subCommands);\n for (const [name, sub] of Object.entries(subCommands)) {\n const subCmd = await resolveValue(sub);\n const meta = await resolveValue(subCmd?.meta);\n commandsLines.push([`\\`${name}\\``, meta?.description || \"\"]);\n commandNames.push(name);\n }\n usageLine.push(commandNames.join(\"|\"));\n }\n const usageLines = [];\n const version = cmdMeta.version || parentMeta.version;\n usageLines.push(\n colors.gray(\n `${cmdMeta.description} (${commandName + (version ? ` v${version}` : \"\")})`\n ),\n \"\"\n );\n const hasOptions = argLines.length > 0 || posLines.length > 0;\n usageLines.push(\n `${colors.underline(colors.bold(\"USAGE\"))} \\`${commandName}${hasOptions ? \" [OPTIONS]\" : \"\"} ${usageLine.join(\" \")}\\``,\n \"\"\n );\n if (posLines.length > 0) {\n usageLines.push(colors.underline(colors.bold(\"ARGUMENTS\")), \"\");\n usageLines.push(formatLineColumns(posLines, \" \"));\n usageLines.push(\"\");\n }\n if (argLines.length > 0) {\n usageLines.push(colors.underline(colors.bold(\"OPTIONS\")), \"\");\n usageLines.push(formatLineColumns(argLines, \" \"));\n usageLines.push(\"\");\n }\n if (commandsLines.length > 0) {\n usageLines.push(colors.underline(colors.bold(\"COMMANDS\")), \"\");\n usageLines.push(formatLineColumns(commandsLines, \" \"));\n usageLines.push(\n \"\",\n `Use \\`${commandName} <command> --help\\` for more information about a command.`\n );\n }\n return usageLines.filter((l) => typeof l === \"string\").join(\"\\n\");\n}\n\nasync function runMain(cmd, opts = {}) {\n const rawArgs = opts.rawArgs || process.argv.slice(2);\n const showUsage$1 = opts.showUsage || showUsage;\n try {\n if (rawArgs.includes(\"--help\") || rawArgs.includes(\"-h\")) {\n await showUsage$1(...await resolveSubCommand(cmd, rawArgs));\n process.exit(0);\n } else if (rawArgs.length === 1 && rawArgs[0] === \"--version\") {\n const meta = typeof cmd.meta === \"function\" ? await cmd.meta() : await cmd.meta;\n if (!meta?.version) {\n throw new CLIError(\"No version specified\", \"E_NO_VERSION\");\n }\n consola.log(meta.version);\n } else {\n await runCommand(cmd, { rawArgs });\n }\n } catch (error) {\n const isCLIError = error instanceof CLIError;\n if (!isCLIError) {\n consola.error(error, \"\\n\");\n }\n if (isCLIError) {\n await showUsage$1(...await resolveSubCommand(cmd, rawArgs));\n }\n consola.error(error.message);\n process.exit(1);\n }\n}\nfunction createMain(cmd) {\n return (opts = {}) => runMain(cmd, opts);\n}\n\nexport { createMain, defineCommand, parseArgs, renderUsage, runCommand, runMain, showUsage };\n","#!/usr/bin/env node\n\nimport { existsSync, readFileSync, writeFileSync, mkdirSync, copyFileSync } from 'fs';\nimport { join, resolve, dirname } from 'path';\nimport { fileURLToPath } from 'url';\nimport { execSync } from 'child_process';\nimport { consola } from 'consola';\nimport { defineCommand, runMain } from 'citty';\n\nconst __filename = fileURLToPath(import.meta.url);\nconst __dirname = dirname(__filename);\n\nconst main = defineCommand({\n meta: {\n name: 'nestjs-ssr',\n description: 'Initialize @nestjs-ssr/react in your NestJS project',\n version: '0.1.6',\n },\n args: {\n force: {\n type: 'boolean',\n description: 'Overwrite existing files',\n alias: 'f',\n },\n views: {\n type: 'string',\n description: 'Views directory path',\n default: 'src/views',\n },\n 'skip-install': {\n type: 'boolean',\n description: 'Skip automatic dependency installation',\n default: false,\n },\n },\n async run({ args }) {\n const cwd = process.cwd();\n const viewsDir = args.views;\n\n consola.box('@nestjs-ssr/react initialization');\n consola.start('Setting up your NestJS SSR React project...\\n');\n\n // Find template files - check both src/ (dev) and dist/ (production) locations\n const templateLocations = [\n resolve(__dirname, '../../src/templates'), // Development (ts-node/tsx)\n resolve(__dirname, '../templates'), // Built package (dist/cli -> dist/templates)\n ];\n const templateDir = templateLocations.find(loc => existsSync(join(loc, 'entry-client.tsx')));\n\n if (!templateDir) {\n consola.error('Failed to locate template files');\n consola.info('Searched:', templateLocations);\n process.exit(1);\n }\n\n // Find global.d.ts - check both src/ (dev) and package root (production)\n const globalTypesLocations = [\n resolve(__dirname, '../../src/global.d.ts'), // Development\n resolve(__dirname, '../global.d.ts'), // Built (dist/cli -> dist/../src/global.d.ts)\n ];\n const globalTypesSrc = globalTypesLocations.find(loc => existsSync(loc));\n\n if (!globalTypesSrc) {\n consola.error('Failed to locate global.d.ts');\n consola.info('Searched:', globalTypesLocations);\n process.exit(1);\n }\n\n // Check that tsconfig.json exists - we don't create it\n const tsconfigPath = join(cwd, 'tsconfig.json');\n if (!existsSync(tsconfigPath)) {\n consola.error('No tsconfig.json found in project root');\n consola.info('Please create a tsconfig.json file first');\n process.exit(1);\n }\n\n // 1. Copy entry-client.tsx to views directory\n consola.start('Creating entry-client.tsx...');\n const entryClientSrc = join(templateDir, 'entry-client.tsx');\n const entryClientDest = join(cwd, viewsDir, 'entry-client.tsx');\n\n // Create views directory if it doesn't exist\n mkdirSync(join(cwd, viewsDir), { recursive: true });\n\n if (existsSync(entryClientDest) && !args.force) {\n consola.warn(`${viewsDir}/entry-client.tsx already exists (use --force to overwrite)`);\n } else {\n copyFileSync(entryClientSrc, entryClientDest);\n consola.success(`Created ${viewsDir}/entry-client.tsx`);\n }\n\n // 2. Copy entry-server.tsx to views directory\n consola.start('Creating entry-server.tsx...');\n const entryServerSrc = join(templateDir, 'entry-server.tsx');\n const entryServerDest = join(cwd, viewsDir, 'entry-server.tsx');\n\n if (existsSync(entryServerDest) && !args.force) {\n consola.warn(`${viewsDir}/entry-server.tsx already exists (use --force to overwrite)`);\n } else {\n copyFileSync(entryServerSrc, entryServerDest);\n consola.success(`Created ${viewsDir}/entry-server.tsx`);\n }\n\n // 2. Copy global.d.ts\n consola.start('Creating global.d.ts...');\n const globalTypesDest = join(cwd, 'src/global.d.ts');\n\n if (existsSync(globalTypesDest) && !args.force) {\n consola.warn('src/global.d.ts already exists (use --force to overwrite)');\n } else {\n copyFileSync(globalTypesSrc, globalTypesDest);\n consola.success('Created src/global.d.ts');\n }\n\n // 4. Update/create vite.config.js\n consola.start('Configuring vite.config.js...');\n const viteConfigPath = join(cwd, 'vite.config.js');\n const viteConfigTs = join(cwd, 'vite.config.ts');\n const useTypeScript = existsSync(viteConfigTs);\n const configPath = useTypeScript ? viteConfigTs : viteConfigPath;\n\n if (existsSync(configPath)) {\n consola.warn(`${useTypeScript ? 'vite.config.ts' : 'vite.config.js'} already exists`);\n consola.info('Please manually add to your Vite config:');\n consola.log(' import { resolve } from \\'path\\';');\n consola.log(' build: {');\n consola.log(' rollupOptions: {');\n consola.log(` input: { client: resolve(__dirname, '${viewsDir}/entry-client.tsx') }`);\n consola.log(' }');\n consola.log(' }');\n } else {\n const viteConfig = `import { defineConfig } from 'vite';\nimport react from '@vitejs/plugin-react';\nimport { resolve } from 'path';\n\nexport default defineConfig({\n plugins: [react()],\n resolve: {\n alias: {\n '@': resolve(__dirname, 'src'),\n },\n },\n server: {\n port: 5173,\n strictPort: true,\n hmr: { port: 5173 },\n },\n build: {\n outDir: 'dist/client',\n manifest: true,\n rollupOptions: {\n input: {\n client: resolve(__dirname, '${viewsDir}/entry-client.tsx'),\n },\n },\n },\n});\n`;\n writeFileSync(viteConfigPath, viteConfig);\n consola.success('Created vite.config.js');\n }\n\n // 5. Update tsconfig.json\n consola.start('Configuring tsconfig.json...');\n try {\n const tsconfig = JSON.parse(readFileSync(tsconfigPath, 'utf-8'));\n\n let updated = false;\n\n if (!tsconfig.compilerOptions) {\n tsconfig.compilerOptions = {};\n }\n\n // Ensure jsx is set\n if (tsconfig.compilerOptions.jsx !== 'react-jsx') {\n tsconfig.compilerOptions.jsx = 'react-jsx';\n updated = true;\n }\n\n // Ensure paths includes @ alias\n if (!tsconfig.compilerOptions.paths) {\n tsconfig.compilerOptions.paths = {};\n }\n if (!tsconfig.compilerOptions.paths['@/*']) {\n tsconfig.compilerOptions.paths['@/*'] = ['./src/*'];\n updated = true;\n }\n\n // Ensure types includes vite/client\n if (!tsconfig.compilerOptions.types) {\n tsconfig.compilerOptions.types = [];\n }\n if (!tsconfig.compilerOptions.types.includes('vite/client')) {\n tsconfig.compilerOptions.types.push('vite/client');\n updated = true;\n }\n\n if (updated) {\n writeFileSync(tsconfigPath, JSON.stringify(tsconfig, null, 2));\n consola.success('Updated tsconfig.json');\n } else {\n consola.info('tsconfig.json already configured');\n }\n } catch (error) {\n consola.error('Failed to update tsconfig.json:', error);\n }\n\n // 6. Setup build scripts\n consola.start('Configuring build scripts...');\n const packageJsonPath = join(cwd, 'package.json');\n\n if (!existsSync(packageJsonPath)) {\n consola.warn('No package.json found, skipping build script setup');\n } else {\n try {\n const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));\n\n if (!packageJson.scripts) {\n packageJson.scripts = {};\n }\n\n const existingBuild = packageJson.scripts.build;\n const defaultNestBuild = 'nest build';\n const ssrBuildPrefix = 'vite build && ';\n\n let shouldUpdate = false;\n let newBuildScript = '';\n\n if (!existingBuild) {\n // No build script exists, create one\n newBuildScript = `${ssrBuildPrefix}${defaultNestBuild}`;\n shouldUpdate = true;\n } else if (existingBuild.includes('vite build')) {\n // Already has vite build\n consola.info('Build script already includes vite build');\n } else if (existingBuild === defaultNestBuild) {\n // Default nest build, prepend vite build\n newBuildScript = `${ssrBuildPrefix}${existingBuild}`;\n shouldUpdate = true;\n } else {\n // Custom build script, ask user\n consola.warn(`Found custom build script: \"${existingBuild}\"`);\n consola.info('SSR requires running \"vite build\" before your build command');\n consola.info(`Recommended: ${ssrBuildPrefix}${existingBuild}`);\n consola.info('Please manually update your build script in package.json');\n }\n\n if (shouldUpdate) {\n packageJson.scripts.build = newBuildScript;\n writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 2) + '\\n');\n consola.success(`Updated build script to: \"${newBuildScript}\"`);\n }\n\n // 7. Check and install dependencies\n if (!args['skip-install']) {\n consola.start('Checking dependencies...');\n const requiredDeps = {\n 'react': '^19.0.0',\n 'react-dom': '^19.0.0',\n 'vite': '^7.0.0',\n '@vitejs/plugin-react': '^4.0.0'\n };\n\n const missingDeps: string[] = [];\n const allDeps = { ...packageJson.dependencies, ...packageJson.devDependencies };\n\n for (const [dep, version] of Object.entries(requiredDeps)) {\n if (!allDeps[dep]) {\n missingDeps.push(`${dep}@${version}`);\n }\n }\n\n if (missingDeps.length > 0) {\n consola.info(`Missing dependencies: ${missingDeps.join(', ')}`);\n\n // Detect package manager\n let packageManager = 'npm';\n if (existsSync(join(cwd, 'pnpm-lock.yaml'))) packageManager = 'pnpm';\n else if (existsSync(join(cwd, 'yarn.lock'))) packageManager = 'yarn';\n\n const installCmd = packageManager === 'npm'\n ? `npm install ${missingDeps.join(' ')}`\n : `${packageManager} add ${missingDeps.join(' ')}`;\n\n try {\n consola.start(`Installing dependencies with ${packageManager}...`);\n execSync(installCmd, {\n cwd,\n stdio: 'inherit'\n });\n consola.success('Dependencies installed!');\n } catch (error) {\n consola.error('Failed to install dependencies:', error);\n consola.info(`Please manually run: ${installCmd}`);\n }\n } else {\n consola.success('All required dependencies are already installed');\n }\n }\n } catch (error) {\n consola.error('Failed to update package.json:', error);\n }\n }\n\n consola.success('\\nInitialization complete!');\n consola.box('Next steps');\n consola.info(`1. Create your first view component in ${viewsDir}/`);\n consola.info('2. Render it from a NestJS controller using render.render()');\n consola.info('3. Run your dev server with: pnpm start:dev');\n },\n});\n\nrunMain(main);\n"]}