create-mastra 0.1.0-alpha.24 → 0.1.0-alpha.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  #! /usr/bin/env node
2
2
  import { Command } from 'commander';
3
3
  import { randomUUID } from 'node:crypto';
4
- import * as fs from 'node:fs';
5
- import fs__default, { existsSync, readFileSync, writeFileSync } from 'node:fs';
4
+ import * as fs3__default from 'node:fs';
5
+ import fs3__default__default, { existsSync, readFileSync, writeFileSync } from 'node:fs';
6
6
  import os from 'node:os';
7
7
  import path, { dirname } from 'node:path';
8
8
  import { PostHog } from 'posthog-node';
@@ -14,15 +14,26 @@ import tty, { WriteStream } from 'node:tty';
14
14
  import child_process from 'node:child_process';
15
15
  import util from 'node:util';
16
16
  import prettier from 'prettier';
17
- import fsExtra from 'fs-extra/esm';
18
- import fs$1 from 'node:fs/promises';
17
+ import fsExtra3 from 'fs-extra/esm';
18
+ import fs4 from 'node:fs/promises';
19
19
  import { execa } from 'execa';
20
- import fsExtra$1 from 'fs-extra';
21
-
22
- const __filename = fileURLToPath(import.meta.url);
23
- const __dirname = path.dirname(__filename);
24
- class PosthogAnalytics {
25
- constructor({ version, apiKey, host = "https://app.posthog.com" }) {
20
+ import pino from 'pino';
21
+ import pretty from 'pino-pretty';
22
+ import { Transform } from 'node:stream';
23
+ import fsExtra from 'fs-extra';
24
+
25
+ var __filename = fileURLToPath(import.meta.url);
26
+ var __dirname = path.dirname(__filename);
27
+ var PosthogAnalytics = class {
28
+ sessionId;
29
+ client;
30
+ distinctId;
31
+ version;
32
+ constructor({
33
+ version,
34
+ apiKey,
35
+ host = "https://app.posthog.com"
36
+ }) {
26
37
  this.version = version;
27
38
  const cliConfigPath = path.join(__dirname, "mastra-cli.json");
28
39
  if (existsSync(cliConfigPath)) {
@@ -130,7 +141,11 @@ class PosthogAnalytics {
130
141
  }
131
142
  }
132
143
  // Helper method to wrap command execution with timing
133
- async trackCommandExecution({ command, args, execution }) {
144
+ async trackCommandExecution({
145
+ command,
146
+ args,
147
+ execution
148
+ }) {
134
149
  const startTime = process.hrtime();
135
150
  try {
136
151
  const result = await execution();
@@ -166,7 +181,7 @@ class PosthogAnalytics {
166
181
  } catch (e) {
167
182
  }
168
183
  }
169
- }
184
+ };
170
185
 
171
186
  function getDefaultExportFromCjs (x) {
172
187
  return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
@@ -326,7 +341,7 @@ function requirePicocolors () {
326
341
  }
327
342
 
328
343
  var picocolorsExports = /*@__PURE__*/ requirePicocolors();
329
- var color = /*@__PURE__*/getDefaultExportFromCjs(picocolorsExports);
344
+ var color2 = /*@__PURE__*/getDefaultExportFromCjs(picocolorsExports);
330
345
 
331
346
  function q({onlyFirst:e=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,e?undefined:"g")}const J=q();function S(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(J,"")}function T$1(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var j$1={exports:{}};(function(e){var u={};e.exports=u,u.eastAsianWidth=function(t){var s=t.charCodeAt(0),C=t.length==2?t.charCodeAt(1):0,D=s;return 55296<=s&&s<=56319&&56320<=C&&C<=57343&&(s&=1023,C&=1023,D=s<<10|C,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(t){var s=this.eastAsianWidth(t);return s=="F"||s=="W"||s=="A"?2:1};function F(t){return t.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}u.length=function(t){for(var s=F(t),C=0,D=0;D<s.length;D++)C=C+this.characterLength(s[D]);return C},u.slice=function(t,s,C){textLen=u.length(t),s=s||0,C=C||1,s<0&&(s=textLen+s),C<0&&(C=textLen+C);for(var D="",i=0,n=F(t),E=0;E<n.length;E++){var h=n[E],o=u.length(h);if(i>=s-(o==2?1:0))if(i+o<=C)D+=h;else break;i+=o;}return D};})(j$1);var Q$1=j$1.exports;const X=T$1(Q$1);var DD=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 uD=T$1(DD);function A(e,u={}){if(typeof e!="string"||e.length===0||(u={ambiguousIsNarrow:true,...u},e=S(e),e.length===0))return 0;e=e.replace(uD()," ");const F=u.ambiguousIsNarrow?1:2;let t=0;for(const s of e){const C=s.codePointAt(0);if(C<=31||C>=127&&C<=159||C>=768&&C<=879)continue;switch(X.eastAsianWidth(s)){case "F":case "W":t+=2;break;case "A":t+=F;break;default:t+=1;}}return t}const d=10,M$1=(e=0)=>u=>`\x1B[${u+e}m`,P$1=(e=0)=>u=>`\x1B[${38+e};5;${u}m`,W=(e=0)=>(u,F,t)=>`\x1B[${38+e};2;${u};${F};${t}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 FD=Object.keys(r.color),eD=Object.keys(r.bgColor);[...FD,...eD];function tD(){const e=new Map;for(const[u,F]of Object.entries(r)){for(const[t,s]of Object.entries(F))r[t]={open:`\x1B[${s[0]}m`,close:`\x1B[${s[1]}m`},F[t]=r[t],e.set(s[0],s[1]);Object.defineProperty(r,u,{value:F,enumerable:false});}return Object.defineProperty(r,"codes",{value:e,enumerable:false}),r.color.close="\x1B[39m",r.bgColor.close="\x1B[49m",r.color.ansi=M$1(),r.color.ansi256=P$1(),r.color.ansi16m=W(),r.bgColor.ansi=M$1(d),r.bgColor.ansi256=P$1(d),r.bgColor.ansi16m=W(d),Object.defineProperties(r,{rgbToAnsi256:{value:(u,F,t)=>u===F&&F===t?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(t/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[t]=F;t.length===3&&(t=[...t].map(C=>C+C).join(""));const s=Number.parseInt(t,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,t,s;if(u>=232)F=((u-232)*10+8)/255,t=F,s=F;else {u-=16;const i=u%36;F=Math.floor(u/36)/5,t=Math.floor(i/6)/5,s=i%6/5;}const C=Math.max(F,t,s)*2;if(C===0)return 30;let D=30+(Math.round(s)<<2|Math.round(t)<<1|Math.round(F));return C===2&&(D+=60),D},enumerable:false},rgbToAnsi:{value:(u,F,t)=>r.ansi256ToAnsi(r.rgbToAnsi256(u,F,t)),enumerable:false},hexToAnsi:{value:u=>r.ansi256ToAnsi(r.hexToAnsi256(u)),enumerable:false}}),r}const sD=tD(),g=new Set(["\x1B","\x9B"]),CD=39,b$1="\x07",O="[",iD="]",I$1="m",w=`${iD}8;;`,N=e=>`${g.values().next().value}${O}${e}${I$1}`,L=e=>`${g.values().next().value}${w}${e}${b$1}`,rD=e=>e.split(" ").map(u=>A(u)),y$1=(e,u,F)=>{const t=[...u];let s=false,C=false,D=A(S(e[e.length-1]));for(const[i,n]of t.entries()){const E=A(n);if(D+E<=F?e[e.length-1]+=n:(e.push(n),D=0),g.has(n)&&(s=true,C=t.slice(i+1).join("").startsWith(w)),s){C?n===b$1&&(s=false,C=false):n===I$1&&(s=false);continue}D+=E,D===F&&i<t.length-1&&(e.push(""),D=0);}!D&&e[e.length-1].length>0&&e.length>1&&(e[e.length-2]+=e.pop());},ED=e=>{const u=e.split(" ");let F=u.length;for(;F>0&&!(A(u[F-1])>0);)F--;return F===u.length?e:u.slice(0,F).join(" ")+u.slice(F).join("")},oD=(e,u,F={})=>{if(F.trim!==false&&e.trim()==="")return "";let t="",s,C;const D=rD(e);let i=[""];for(const[E,h]of e.split(" ").entries()){F.trim!==false&&(i[i.length-1]=i[i.length-1].trimStart());let o=A(i[i.length-1]);if(E!==0&&(o>=u&&(F.wordWrap===false||F.trim===false)&&(i.push(""),o=0),(o>0||F.trim===false)&&(i[i.length-1]+=" ",o++)),F.hard&&D[E]>u){const B=u-o,p=1+Math.floor((D[E]-B-1)/u);Math.floor((D[E]-1)/u)<p&&i.push(""),y$1(i,h,u);continue}if(o+D[E]>u&&o>0&&D[E]>0){if(F.wordWrap===false&&o<u){y$1(i,h,u);continue}i.push("");}if(o+D[E]>u&&F.wordWrap===false){y$1(i,h,u);continue}i[i.length-1]+=h;}F.trim!==false&&(i=i.map(E=>ED(E)));const n=[...i.join(`
332
347
  `)];for(const[E,h]of n.entries()){if(t+=h,g.has(h)){const{groups:B}=new RegExp(`(?:\\${O}(?<code>\\d+)m|\\${w}(?<uri>.*)${b$1})`).exec(n.slice(E).join(""))||{groups:{}};if(B.code!==undefined){const p=Number.parseFloat(B.code);s=p===CD?undefined:p;}else B.uri!==undefined&&(C=B.uri.length===0?undefined:B.uri);}const o=sD.codes.get(Number(s));n[E+1]===`
@@ -341,55 +356,55 @@ function q({onlyFirst:e=false}={}){const F=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(
341
356
  `).length-1;this.output.write(srcExports.cursor.move(-999,u*-1));}render(){const u=R$1(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=hD(this._prevFrame,u);if(this.restoreCursor(),F&&F?.length===1){const t=F[0];this.output.write(srcExports.cursor.move(0,t)),this.output.write(srcExports.erase.lines(1));const s=u.split(`
342
357
  `);this.output.write(s[t]),this._prevFrame=u,this.output.write(srcExports.cursor.move(0,s.length-t-1));return}else if(F&&F?.length>1){const t=F[0];this.output.write(srcExports.cursor.move(0,t)),this.output.write(srcExports.erase.down());const s=u.split(`
343
358
  `).slice(t);this.output.write(s.join(`
344
- `)),this._prevFrame=u;return}this.output.write(srcExports.erase.down());}this.output.write(u),this.state==="initial"&&(this.state="active"),this._prevFrame=u;}}}class BD 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 fD=Object.defineProperty,gD=(e,u,F)=>u in e?fD(e,u,{enumerable:true,configurable:true,writable:true,value:F}):e[u]=F,K$1=(e,u,F)=>(gD(e,typeof u!="symbol"?u+"":u,F),F);let vD=class extends x{constructor(u){super(u,false),K$1(this,"options"),K$1(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 wD=Object.defineProperty,yD=(e,u,F)=>u in e?wD(e,u,{enumerable:true,configurable:true,writable:true,value:F}):e[u]=F,Z=(e,u,F)=>(yD(e,typeof u!="symbol"?u+"":u,F),F);let $D=class extends x{constructor(u){super(u,false),Z(this,"options"),Z(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;}};var TD=Object.defineProperty,jD=(e,u,F)=>u in e?TD(e,u,{enumerable:true,configurable:true,writable:true,value:F}):e[u]=F,MD=(e,u,F)=>(jD(e,u+"",F),F);class PD extends x{constructor(u){super(u),MD(this,"valueWithCursor",""),this.on("finalize",()=>{this.value||(this.value=u.defaultValue),this.valueWithCursor=this.value;}),this.on("value",()=>{if(this.cursor>=this.value.length)this.valueWithCursor=`${this.value}${color.inverse(color.hidden("_"))}`;else {const F=this.value.slice(0,this.cursor),t=this.value.slice(this.cursor);this.valueWithCursor=`${F}${color.inverse(t[0])}${t.slice(1)}`;}});}get cursor(){return this._cursor}}const WD=globalThis.process.platform.startsWith("win");function OD({input:e=stdin,output:u=stdout,overwrite:F=true,hideCursor:t=true}={}){const s=f.createInterface({input:e,output:u,prompt:"",tabSize:1});f.emitKeypressEvents(e,s),e.isTTY&&e.setRawMode(true);const C=(D,{name:i})=>{if(String(D)===""){t&&u.write(srcExports.cursor.show),process.exit(0);return}if(!F)return;let n=i==="return"?0:-1,E=i==="return"?-1:0;f.moveCursor(u,n,E,()=>{f.clearLine(u,1,()=>{e.once("keypress",C);});});};return t&&u.write(srcExports.cursor.hide),e.once("keypress",C),()=>{e.off("keypress",C),t&&u.write(srcExports.cursor.show),e.isTTY&&!WD&&e.setRawMode(false),s.terminal=false,s.close();}}
359
+ `)),this._prevFrame=u;return}this.output.write(srcExports.erase.down());}this.output.write(u),this.state==="initial"&&(this.state="active"),this._prevFrame=u;}}}class BD 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 fD=Object.defineProperty,gD=(e,u,F)=>u in e?fD(e,u,{enumerable:true,configurable:true,writable:true,value:F}):e[u]=F,K$1=(e,u,F)=>(gD(e,typeof u!="symbol"?u+"":u,F),F);let vD=class extends x{constructor(u){super(u,false),K$1(this,"options"),K$1(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 wD=Object.defineProperty,yD=(e,u,F)=>u in e?wD(e,u,{enumerable:true,configurable:true,writable:true,value:F}):e[u]=F,Z=(e,u,F)=>(yD(e,typeof u!="symbol"?u+"":u,F),F);let $D=class extends x{constructor(u){super(u,false),Z(this,"options"),Z(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;}};var TD=Object.defineProperty,jD=(e,u,F)=>u in e?TD(e,u,{enumerable:true,configurable:true,writable:true,value:F}):e[u]=F,MD=(e,u,F)=>(jD(e,u+"",F),F);class PD extends x{constructor(u){super(u),MD(this,"valueWithCursor",""),this.on("finalize",()=>{this.value||(this.value=u.defaultValue),this.valueWithCursor=this.value;}),this.on("value",()=>{if(this.cursor>=this.value.length)this.valueWithCursor=`${this.value}${color2.inverse(color2.hidden("_"))}`;else {const F=this.value.slice(0,this.cursor),t=this.value.slice(this.cursor);this.valueWithCursor=`${F}${color2.inverse(t[0])}${t.slice(1)}`;}});}get cursor(){return this._cursor}}const WD=globalThis.process.platform.startsWith("win");function OD({input:e=stdin,output:u=stdout,overwrite:F=true,hideCursor:t=true}={}){const s=f.createInterface({input:e,output:u,prompt:"",tabSize:1});f.emitKeypressEvents(e,s),e.isTTY&&e.setRawMode(true);const C=(D,{name:i})=>{if(String(D)===""){t&&u.write(srcExports.cursor.show),process.exit(0);return}if(!F)return;let n=i==="return"?0:-1,E=i==="return"?-1:0;f.moveCursor(u,n,E,()=>{f.clearLine(u,1,()=>{e.once("keypress",C);});});};return t&&u.write(srcExports.cursor.hide),e.once("keypress",C),()=>{e.off("keypress",C),t&&u.write(srcExports.cursor.show),e.isTTY&&!WD&&e.setRawMode(false),s.terminal=false,s.close();}}
345
360
 
346
- function K(){return h.platform!=="win32"?h.env.TERM!=="linux":!!h.env.CI||!!h.env.WT_SESSION||!!h.env.TERMINUS_SUBLIME||h.env.ConEmuTask==="{cmd::Cmder}"||h.env.TERM_PROGRAM==="Terminus-Sublime"||h.env.TERM_PROGRAM==="vscode"||h.env.TERM==="xterm-256color"||h.env.TERM==="alacritty"||h.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}const C=K(),u=(s,n)=>C?s:n,Y=u("\u25C6","*"),P=u("\u25A0","x"),V=u("\u25B2","x"),M=u("\u25C7","o"),Q=u("\u250C","T"),a=u("\u2502","|"),$=u("\u2514","\u2014"),I=u("\u25CF",">"),T=u("\u25CB"," "),j=u("\u25FB","[\u2022]"),b=u("\u25FC","[+]"),B=u("\u25FB","[ ]"),G=u("\u2500","-"),H=u("\u256E","+"),ee=u("\u251C","+"),te=u("\u256F","+"),y=s=>{switch(s){case "initial":case "active":return color.cyan(Y);case "cancel":return color.red(P);case "error":return color.yellow(V);case "submit":return color.green(M)}},E=s=>{const{cursor:n,options:t,style:i}=s,r=s.maxItems??1/0,o=Math.max(process.stdout.rows-4,0),c=Math.min(o,Math.max(r,5));let l=0;n>=l+c-3?l=Math.max(Math.min(n-c+3,t.length-c),0):n<l+2&&(l=Math.max(n-2,0));const d=c<t.length&&l>0,p=c<t.length&&l+c<t.length;return t.slice(l,l+c).map((S,f,x)=>{const g=f===0&&d,m=f===x.length-1&&p;return g||m?color.dim("..."):i(S,f+l===n)})},ae=s=>new PD({validate:s.validate,placeholder:s.placeholder,defaultValue:s.defaultValue,initialValue:s.initialValue,render(){const n=`${color.gray(a)}
361
+ function K(){return h.platform!=="win32"?h.env.TERM!=="linux":!!h.env.CI||!!h.env.WT_SESSION||!!h.env.TERMINUS_SUBLIME||h.env.ConEmuTask==="{cmd::Cmder}"||h.env.TERM_PROGRAM==="Terminus-Sublime"||h.env.TERM_PROGRAM==="vscode"||h.env.TERM==="xterm-256color"||h.env.TERM==="alacritty"||h.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}const C=K(),u=(s,n)=>C?s:n,Y=u("\u25C6","*"),P=u("\u25A0","x"),V=u("\u25B2","x"),M=u("\u25C7","o"),Q=u("\u250C","T"),a=u("\u2502","|"),$=u("\u2514","\u2014"),I=u("\u25CF",">"),T=u("\u25CB"," "),j=u("\u25FB","[\u2022]"),b=u("\u25FC","[+]"),B=u("\u25FB","[ ]"),G=u("\u2500","-"),H=u("\u256E","+"),ee=u("\u251C","+"),te=u("\u256F","+"),y=s=>{switch(s){case "initial":case "active":return color2.cyan(Y);case "cancel":return color2.red(P);case "error":return color2.yellow(V);case "submit":return color2.green(M)}},E=s=>{const{cursor:n,options:t,style:i}=s,r=s.maxItems??1/0,o=Math.max(process.stdout.rows-4,0),c=Math.min(o,Math.max(r,5));let l=0;n>=l+c-3?l=Math.max(Math.min(n-c+3,t.length-c),0):n<l+2&&(l=Math.max(n-2,0));const d=c<t.length&&l>0,p=c<t.length&&l+c<t.length;return t.slice(l,l+c).map((S,f,x)=>{const g=f===0&&d,m=f===x.length-1&&p;return g||m?color2.dim("..."):i(S,f+l===n)})},ae=s=>new PD({validate:s.validate,placeholder:s.placeholder,defaultValue:s.defaultValue,initialValue:s.initialValue,render(){const n=`${color2.gray(a)}
347
362
  ${y(this.state)} ${s.message}
348
- `,t=s.placeholder?color.inverse(s.placeholder[0])+color.dim(s.placeholder.slice(1)):color.inverse(color.hidden("_")),i=this.value?this.valueWithCursor:t;switch(this.state){case "error":return `${n.trim()}
349
- ${color.yellow(a)} ${i}
350
- ${color.yellow($)} ${color.yellow(this.error)}
351
- `;case "submit":return `${n}${color.gray(a)} ${color.dim(this.value||s.placeholder)}`;case "cancel":return `${n}${color.gray(a)} ${color.strikethrough(color.dim(this.value??""))}${this.value?.trim()?`
352
- `+color.gray(a):""}`;default:return `${n}${color.cyan(a)} ${i}
353
- ${color.cyan($)}
354
- `}}}).prompt(),ce=s=>{const n=s.active??"Yes",t=s.inactive??"No";return new BD({active:n,inactive:t,initialValue:s.initialValue??true,render(){const i=`${color.gray(a)}
363
+ `,t=s.placeholder?color2.inverse(s.placeholder[0])+color2.dim(s.placeholder.slice(1)):color2.inverse(color2.hidden("_")),i=this.value?this.valueWithCursor:t;switch(this.state){case "error":return `${n.trim()}
364
+ ${color2.yellow(a)} ${i}
365
+ ${color2.yellow($)} ${color2.yellow(this.error)}
366
+ `;case "submit":return `${n}${color2.gray(a)} ${color2.dim(this.value||s.placeholder)}`;case "cancel":return `${n}${color2.gray(a)} ${color2.strikethrough(color2.dim(this.value??""))}${this.value?.trim()?`
367
+ `+color2.gray(a):""}`;default:return `${n}${color2.cyan(a)} ${i}
368
+ ${color2.cyan($)}
369
+ `}}}).prompt(),ce=s=>{const n=s.active??"Yes",t=s.inactive??"No";return new BD({active:n,inactive:t,initialValue:s.initialValue??true,render(){const i=`${color2.gray(a)}
355
370
  ${y(this.state)} ${s.message}
356
- `,r=this.value?n:t;switch(this.state){case "submit":return `${i}${color.gray(a)} ${color.dim(r)}`;case "cancel":return `${i}${color.gray(a)} ${color.strikethrough(color.dim(r))}
357
- ${color.gray(a)}`;default:return `${i}${color.cyan(a)} ${this.value?`${color.green(I)} ${n}`:`${color.dim(T)} ${color.dim(n)}`} ${color.dim("/")} ${this.value?`${color.dim(T)} ${color.dim(t)}`:`${color.green(I)} ${t}`}
358
- ${color.cyan($)}
359
- `}}}).prompt()},le=s=>{const n=(t,i)=>{const r=t.label??String(t.value);switch(i){case "selected":return `${color.dim(r)}`;case "active":return `${color.green(I)} ${r} ${t.hint?color.dim(`(${t.hint})`):""}`;case "cancelled":return `${color.strikethrough(color.dim(r))}`;default:return `${color.dim(T)} ${color.dim(r)}`}};return new $D({options:s.options,initialValue:s.initialValue,render(){const t=`${color.gray(a)}
371
+ `,r=this.value?n:t;switch(this.state){case "submit":return `${i}${color2.gray(a)} ${color2.dim(r)}`;case "cancel":return `${i}${color2.gray(a)} ${color2.strikethrough(color2.dim(r))}
372
+ ${color2.gray(a)}`;default:return `${i}${color2.cyan(a)} ${this.value?`${color2.green(I)} ${n}`:`${color2.dim(T)} ${color2.dim(n)}`} ${color2.dim("/")} ${this.value?`${color2.dim(T)} ${color2.dim(t)}`:`${color2.green(I)} ${t}`}
373
+ ${color2.cyan($)}
374
+ `}}}).prompt()},le=s=>{const n=(t,i)=>{const r=t.label??String(t.value);switch(i){case "selected":return `${color2.dim(r)}`;case "active":return `${color2.green(I)} ${r} ${t.hint?color2.dim(`(${t.hint})`):""}`;case "cancelled":return `${color2.strikethrough(color2.dim(r))}`;default:return `${color2.dim(T)} ${color2.dim(r)}`}};return new $D({options:s.options,initialValue:s.initialValue,render(){const t=`${color2.gray(a)}
360
375
  ${y(this.state)} ${s.message}
361
- `;switch(this.state){case "submit":return `${t}${color.gray(a)} ${n(this.options[this.cursor],"selected")}`;case "cancel":return `${t}${color.gray(a)} ${n(this.options[this.cursor],"cancelled")}
362
- ${color.gray(a)}`;default:return `${t}${color.cyan(a)} ${E({cursor:this.cursor,options:this.options,maxItems:s.maxItems,style:(i,r)=>n(i,r?"active":"inactive")}).join(`
363
- ${color.cyan(a)} `)}
364
- ${color.cyan($)}
365
- `}}}).prompt()},$e=s=>{const n=(t,i)=>{const r=t.label??String(t.value);return i==="active"?`${color.cyan(j)} ${r} ${t.hint?color.dim(`(${t.hint})`):""}`:i==="selected"?`${color.green(b)} ${color.dim(r)}`:i==="cancelled"?`${color.strikethrough(color.dim(r))}`:i==="active-selected"?`${color.green(b)} ${r} ${t.hint?color.dim(`(${t.hint})`):""}`:i==="submitted"?`${color.dim(r)}`:`${color.dim(B)} ${color.dim(r)}`};return new vD({options:s.options,initialValues:s.initialValues,required:s.required??true,cursorAt:s.cursorAt,validate(t){if(this.required&&t.length===0)return `Please select at least one option.
366
- ${color.reset(color.dim(`Press ${color.gray(color.bgWhite(color.inverse(" space ")))} to select, ${color.gray(color.bgWhite(color.inverse(" enter ")))} to submit`))}`},render(){let t=`${color.gray(a)}
376
+ `;switch(this.state){case "submit":return `${t}${color2.gray(a)} ${n(this.options[this.cursor],"selected")}`;case "cancel":return `${t}${color2.gray(a)} ${n(this.options[this.cursor],"cancelled")}
377
+ ${color2.gray(a)}`;default:return `${t}${color2.cyan(a)} ${E({cursor:this.cursor,options:this.options,maxItems:s.maxItems,style:(i,r)=>n(i,r?"active":"inactive")}).join(`
378
+ ${color2.cyan(a)} `)}
379
+ ${color2.cyan($)}
380
+ `}}}).prompt()},$e=s=>{const n=(t,i)=>{const r=t.label??String(t.value);return i==="active"?`${color2.cyan(j)} ${r} ${t.hint?color2.dim(`(${t.hint})`):""}`:i==="selected"?`${color2.green(b)} ${color2.dim(r)}`:i==="cancelled"?`${color2.strikethrough(color2.dim(r))}`:i==="active-selected"?`${color2.green(b)} ${r} ${t.hint?color2.dim(`(${t.hint})`):""}`:i==="submitted"?`${color2.dim(r)}`:`${color2.dim(B)} ${color2.dim(r)}`};return new vD({options:s.options,initialValues:s.initialValues,required:s.required??true,cursorAt:s.cursorAt,validate(t){if(this.required&&t.length===0)return `Please select at least one option.
381
+ ${color2.reset(color2.dim(`Press ${color2.gray(color2.bgWhite(color2.inverse(" space ")))} to select, ${color2.gray(color2.bgWhite(color2.inverse(" enter ")))} to submit`))}`},render(){let t=`${color2.gray(a)}
367
382
  ${y(this.state)} ${s.message}
368
- `;const i=(r,o)=>{const c=this.value.includes(r.value);return o&&c?n(r,"active-selected"):c?n(r,"selected"):n(r,o?"active":"inactive")};switch(this.state){case "submit":return `${t}${color.gray(a)} ${this.options.filter(({value:r})=>this.value.includes(r)).map(r=>n(r,"submitted")).join(color.dim(", "))||color.dim("none")}`;case "cancel":{const r=this.options.filter(({value:o})=>this.value.includes(o)).map(o=>n(o,"cancelled")).join(color.dim(", "));return `${t}${color.gray(a)} ${r.trim()?`${r}
369
- ${color.gray(a)}`:""}`}case "error":{const r=this.error.split(`
370
- `).map((o,c)=>c===0?`${color.yellow($)} ${color.yellow(o)}`:` ${o}`).join(`
371
- `);return t+color.yellow(a)+" "+E({options:this.options,cursor:this.cursor,maxItems:s.maxItems,style:i}).join(`
372
- ${color.yellow(a)} `)+`
383
+ `;const i=(r,o)=>{const c=this.value.includes(r.value);return o&&c?n(r,"active-selected"):c?n(r,"selected"):n(r,o?"active":"inactive")};switch(this.state){case "submit":return `${t}${color2.gray(a)} ${this.options.filter(({value:r})=>this.value.includes(r)).map(r=>n(r,"submitted")).join(color2.dim(", "))||color2.dim("none")}`;case "cancel":{const r=this.options.filter(({value:o})=>this.value.includes(o)).map(o=>n(o,"cancelled")).join(color2.dim(", "));return `${t}${color2.gray(a)} ${r.trim()?`${r}
384
+ ${color2.gray(a)}`:""}`}case "error":{const r=this.error.split(`
385
+ `).map((o,c)=>c===0?`${color2.yellow($)} ${color2.yellow(o)}`:` ${o}`).join(`
386
+ `);return t+color2.yellow(a)+" "+E({options:this.options,cursor:this.cursor,maxItems:s.maxItems,style:i}).join(`
387
+ ${color2.yellow(a)} `)+`
373
388
  `+r+`
374
- `}default:return `${t}${color.cyan(a)} ${E({options:this.options,cursor:this.cursor,maxItems:s.maxItems,style:i}).join(`
375
- ${color.cyan(a)} `)}
376
- ${color.cyan($)}
389
+ `}default:return `${t}${color2.cyan(a)} ${E({options:this.options,cursor:this.cursor,maxItems:s.maxItems,style:i}).join(`
390
+ ${color2.cyan(a)} `)}
391
+ ${color2.cyan($)}
377
392
  `}}}).prompt()},R=s=>s.replace(ye(),""),me=(s="",n="")=>{const t=`
378
393
  ${s}
379
394
  `.split(`
380
- `),i=R(n).length,r=Math.max(t.reduce((c,l)=>(l=R(l),l.length>c?l.length:c),0),i)+2,o=t.map(c=>`${color.gray(a)} ${color.dim(c)}${" ".repeat(r-R(c).length)}${color.gray(a)}`).join(`
381
- `);process.stdout.write(`${color.gray(a)}
382
- ${color.green(M)} ${color.reset(n)} ${color.gray(G.repeat(Math.max(r-i-1,1))+H)}
395
+ `),i=R(n).length,r=Math.max(t.reduce((c,l)=>(l=R(l),l.length>c?l.length:c),0),i)+2,o=t.map(c=>`${color2.gray(a)} ${color2.dim(c)}${" ".repeat(r-R(c).length)}${color2.gray(a)}`).join(`
396
+ `);process.stdout.write(`${color2.gray(a)}
397
+ ${color2.green(M)} ${color2.reset(n)} ${color2.gray(G.repeat(Math.max(r-i-1,1))+H)}
383
398
  ${o}
384
- ${color.gray(ee+G.repeat(r+2)+te)}
385
- `);},he=(s="")=>{process.stdout.write(`${color.gray($)} ${color.red(s)}
399
+ ${color2.gray(ee+G.repeat(r+2)+te)}
400
+ `);},he=(s="")=>{process.stdout.write(`${color2.gray($)} ${color2.red(s)}
386
401
 
387
- `);},pe=(s="")=>{process.stdout.write(`${color.gray(Q)} ${s}
388
- `);},ge=(s="")=>{process.stdout.write(`${color.gray(a)}
389
- ${color.gray($)} ${s}
402
+ `);},pe=(s="")=>{process.stdout.write(`${color2.gray(Q)} ${s}
403
+ `);},ge=(s="")=>{process.stdout.write(`${color2.gray(a)}
404
+ ${color2.gray($)} ${s}
390
405
 
391
- `);},_=()=>{const s=C?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],n=C?80:120;let t,i,r=false,o="";const c=g=>{const m=g>1?"Something went wrong":"Canceled";r&&x(m,g);},l=()=>c(2),d=()=>c(1),p=()=>{process.on("uncaughtExceptionMonitor",l),process.on("unhandledRejection",l),process.on("SIGINT",d),process.on("SIGTERM",d),process.on("exit",c);},S=()=>{process.removeListener("uncaughtExceptionMonitor",l),process.removeListener("unhandledRejection",l),process.removeListener("SIGINT",d),process.removeListener("SIGTERM",d),process.removeListener("exit",c);},f=(g="")=>{r=true,t=OD(),o=g.replace(/\.+$/,""),process.stdout.write(`${color.gray(a)}
392
- `);let m=0,w=0;p(),i=setInterval(()=>{const L=color.magenta(s[m]),O=".".repeat(Math.floor(w)).slice(0,3);process.stdout.write(srcExports.cursor.move(-999,0)),process.stdout.write(srcExports.erase.down(1)),process.stdout.write(`${L} ${o}${O}`),m=m+1<s.length?m+1:0,w=w<s.length?w+.125:0;},n);},x=(g="",m=0)=>{o=g??o,r=false,clearInterval(i);const w=m===0?color.green(M):m===1?color.red(P):color.red(V);process.stdout.write(srcExports.cursor.move(-999,0)),process.stdout.write(srcExports.erase.down(1)),process.stdout.write(`${w} ${o}
406
+ `);},_=()=>{const s=C?["\u25D2","\u25D0","\u25D3","\u25D1"]:["\u2022","o","O","0"],n=C?80:120;let t,i,r=false,o="";const c=g=>{const m=g>1?"Something went wrong":"Canceled";r&&x(m,g);},l=()=>c(2),d=()=>c(1),p=()=>{process.on("uncaughtExceptionMonitor",l),process.on("unhandledRejection",l),process.on("SIGINT",d),process.on("SIGTERM",d),process.on("exit",c);},S=()=>{process.removeListener("uncaughtExceptionMonitor",l),process.removeListener("unhandledRejection",l),process.removeListener("SIGINT",d),process.removeListener("SIGTERM",d),process.removeListener("exit",c);},f=(g="")=>{r=true,t=OD(),o=g.replace(/\.+$/,""),process.stdout.write(`${color2.gray(a)}
407
+ `);let m=0,w=0;p(),i=setInterval(()=>{const L=color2.magenta(s[m]),O=".".repeat(Math.floor(w)).slice(0,3);process.stdout.write(srcExports.cursor.move(-999,0)),process.stdout.write(srcExports.erase.down(1)),process.stdout.write(`${L} ${o}${O}`),m=m+1<s.length?m+1:0,w=w<s.length?w+.125:0;},n);},x=(g="",m=0)=>{o=g??o,r=false,clearInterval(i);const w=m===0?color2.green(M):m===1?color2.red(P):color2.red(V);process.stdout.write(srcExports.cursor.move(-999,0)),process.stdout.write(srcExports.erase.down(1)),process.stdout.write(`${w} ${o}
393
408
  `),S(),t();};return {start:f,stop:x,message:(g="")=>{o=g??o;}}};function ye(){const s=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(s,"g")}const ve=async(s,n)=>{const t={},i=Object.keys(s);for(const r of i){const o=s[r],c=await o({results:t})?.catch(l=>{throw l});if(typeof n?.onCancel=="function"&&lD(c)){t[r]="canceled",n.onCancel({results:t});continue}t[r]=c;}return t};
394
409
 
395
410
  // eslint-disable-next-line no-warning-comments
@@ -481,48 +496,48 @@ const bgCyanBright = format(106, 49);
481
496
  const bgWhiteBright = format(107, 49);
482
497
 
483
498
  var yoctocolors = /*#__PURE__*/Object.freeze({
484
- __proto__: null,
485
- bgBlack: bgBlack,
486
- bgBlue: bgBlue,
487
- bgBlueBright: bgBlueBright,
488
- bgCyan: bgCyan,
489
- bgCyanBright: bgCyanBright,
490
- bgGray: bgGray,
491
- bgGreen: bgGreen,
492
- bgGreenBright: bgGreenBright,
493
- bgMagenta: bgMagenta,
494
- bgMagentaBright: bgMagentaBright,
495
- bgRed: bgRed,
496
- bgRedBright: bgRedBright,
497
- bgWhite: bgWhite,
498
- bgWhiteBright: bgWhiteBright,
499
- bgYellow: bgYellow,
500
- bgYellowBright: bgYellowBright,
501
- black: black,
502
- blue: blue,
503
- blueBright: blueBright,
504
- bold: bold,
505
- cyan: cyan,
506
- cyanBright: cyanBright,
507
- dim: dim,
508
- gray: gray,
509
- green: green,
510
- greenBright: greenBright,
511
- hidden: hidden,
512
- inverse: inverse,
513
- italic: italic,
514
- magenta: magenta,
515
- magentaBright: magentaBright,
516
- overline: overline,
517
- red: red,
518
- redBright: redBright,
519
- reset: reset,
520
- strikethrough: strikethrough,
521
- underline: underline,
522
- white: white,
523
- whiteBright: whiteBright,
524
- yellow: yellow,
525
- yellowBright: yellowBright
499
+ __proto__: null,
500
+ bgBlack: bgBlack,
501
+ bgBlue: bgBlue,
502
+ bgBlueBright: bgBlueBright,
503
+ bgCyan: bgCyan,
504
+ bgCyanBright: bgCyanBright,
505
+ bgGray: bgGray,
506
+ bgGreen: bgGreen,
507
+ bgGreenBright: bgGreenBright,
508
+ bgMagenta: bgMagenta,
509
+ bgMagentaBright: bgMagentaBright,
510
+ bgRed: bgRed,
511
+ bgRedBright: bgRedBright,
512
+ bgWhite: bgWhite,
513
+ bgWhiteBright: bgWhiteBright,
514
+ bgYellow: bgYellow,
515
+ bgYellowBright: bgYellowBright,
516
+ black: black,
517
+ blue: blue,
518
+ blueBright: blueBright,
519
+ bold: bold,
520
+ cyan: cyan,
521
+ cyanBright: cyanBright,
522
+ dim: dim,
523
+ gray: gray,
524
+ green: green,
525
+ greenBright: greenBright,
526
+ hidden: hidden,
527
+ inverse: inverse,
528
+ italic: italic,
529
+ magenta: magenta,
530
+ magentaBright: magentaBright,
531
+ overline: overline,
532
+ red: red,
533
+ redBright: redBright,
534
+ reset: reset,
535
+ strikethrough: strikethrough,
536
+ underline: underline,
537
+ white: white,
538
+ whiteBright: whiteBright,
539
+ yellow: yellow,
540
+ yellowBright: yellowBright
526
541
  });
527
542
 
528
543
  const isUnicodeSupported = h.platform !== 'win32' || Boolean(h.env.WT_SESSION);
@@ -764,14 +779,446 @@ function yoctoSpinner(options) {
764
779
  return new YoctoSpinner(options);
765
780
  }
766
781
 
767
- class DepsService {
782
+ function asyncGeneratorStep(n, t, e, r, o, a, c) {
783
+ try {
784
+ var i = n[a](c), u = i.value;
785
+ } catch (n2) {
786
+ return void e(n2);
787
+ }
788
+ i.done ? t(u) : Promise.resolve(u).then(r, o);
789
+ }
790
+ function _asyncToGenerator(n) {
791
+ return function() {
792
+ var t = this, e = arguments;
793
+ return new Promise(function(r, o) {
794
+ var a = n.apply(t, e);
795
+ function _next(n2) {
796
+ asyncGeneratorStep(a, r, o, _next, _throw, "next", n2);
797
+ }
798
+ function _throw(n2) {
799
+ asyncGeneratorStep(a, r, o, _next, _throw, "throw", n2);
800
+ }
801
+ _next(undefined);
802
+ });
803
+ };
804
+ }
805
+ function _regeneratorRuntime() {
806
+ _regeneratorRuntime = function() {
807
+ return e;
808
+ };
809
+ var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function(t2, e2, r2) {
810
+ t2[e2] = r2.value;
811
+ }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag";
812
+ function define(t2, e2, r2) {
813
+ return Object.defineProperty(t2, e2, {
814
+ value: r2,
815
+ enumerable: true,
816
+ configurable: true,
817
+ writable: true
818
+ }), t2[e2];
819
+ }
820
+ try {
821
+ define({}, "");
822
+ } catch (t2) {
823
+ define = function(t3, e2, r2) {
824
+ return t3[e2] = r2;
825
+ };
826
+ }
827
+ function wrap(t2, e2, r2, n2) {
828
+ var i2 = e2 && e2.prototype instanceof Generator ? e2 : Generator, a2 = Object.create(i2.prototype), c2 = new Context(n2 || []);
829
+ return o(a2, "_invoke", {
830
+ value: makeInvokeMethod(t2, r2, c2)
831
+ }), a2;
832
+ }
833
+ function tryCatch(t2, e2, r2) {
834
+ try {
835
+ return {
836
+ type: "normal",
837
+ arg: t2.call(e2, r2)
838
+ };
839
+ } catch (t3) {
840
+ return {
841
+ type: "throw",
842
+ arg: t3
843
+ };
844
+ }
845
+ }
846
+ e.wrap = wrap;
847
+ var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {};
848
+ function Generator() {
849
+ }
850
+ function GeneratorFunction() {
851
+ }
852
+ function GeneratorFunctionPrototype() {
853
+ }
854
+ var p = {};
855
+ define(p, a, function() {
856
+ return this;
857
+ });
858
+ var d = Object.getPrototypeOf, v = d && d(d(values([])));
859
+ v && v !== r && n.call(v, a) && (p = v);
860
+ var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
861
+ function defineIteratorMethods(t2) {
862
+ ["next", "throw", "return"].forEach(function(e2) {
863
+ define(t2, e2, function(t3) {
864
+ return this._invoke(e2, t3);
865
+ });
866
+ });
867
+ }
868
+ function AsyncIterator(t2, e2) {
869
+ function invoke(r3, o2, i2, a2) {
870
+ var c2 = tryCatch(t2[r3], t2, o2);
871
+ if ("throw" !== c2.type) {
872
+ var u2 = c2.arg, h2 = u2.value;
873
+ return h2 && "object" == typeof h2 && n.call(h2, "__await") ? e2.resolve(h2.__await).then(function(t3) {
874
+ invoke("next", t3, i2, a2);
875
+ }, function(t3) {
876
+ invoke("throw", t3, i2, a2);
877
+ }) : e2.resolve(h2).then(function(t3) {
878
+ u2.value = t3, i2(u2);
879
+ }, function(t3) {
880
+ return invoke("throw", t3, i2, a2);
881
+ });
882
+ }
883
+ a2(c2.arg);
884
+ }
885
+ var r2;
886
+ o(this, "_invoke", {
887
+ value: function(t3, n2) {
888
+ function callInvokeWithMethodAndArg() {
889
+ return new e2(function(e3, r3) {
890
+ invoke(t3, n2, e3, r3);
891
+ });
892
+ }
893
+ return r2 = r2 ? r2.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
894
+ }
895
+ });
896
+ }
897
+ function makeInvokeMethod(e2, r2, n2) {
898
+ var o2 = h;
899
+ return function(i2, a2) {
900
+ if (o2 === f) throw Error("Generator is already running");
901
+ if (o2 === s) {
902
+ if ("throw" === i2) throw a2;
903
+ return {
904
+ value: t,
905
+ done: true
906
+ };
907
+ }
908
+ for (n2.method = i2, n2.arg = a2; ; ) {
909
+ var c2 = n2.delegate;
910
+ if (c2) {
911
+ var u2 = maybeInvokeDelegate(c2, n2);
912
+ if (u2) {
913
+ if (u2 === y) continue;
914
+ return u2;
915
+ }
916
+ }
917
+ if ("next" === n2.method) n2.sent = n2._sent = n2.arg;
918
+ else if ("throw" === n2.method) {
919
+ if (o2 === h) throw o2 = s, n2.arg;
920
+ n2.dispatchException(n2.arg);
921
+ } else "return" === n2.method && n2.abrupt("return", n2.arg);
922
+ o2 = f;
923
+ var p2 = tryCatch(e2, r2, n2);
924
+ if ("normal" === p2.type) {
925
+ if (o2 = n2.done ? s : l, p2.arg === y) continue;
926
+ return {
927
+ value: p2.arg,
928
+ done: n2.done
929
+ };
930
+ }
931
+ "throw" === p2.type && (o2 = s, n2.method = "throw", n2.arg = p2.arg);
932
+ }
933
+ };
934
+ }
935
+ function maybeInvokeDelegate(e2, r2) {
936
+ var n2 = r2.method, o2 = e2.iterator[n2];
937
+ if (o2 === t) return r2.delegate = null, "throw" === n2 && e2.iterator.return && (r2.method = "return", r2.arg = t, maybeInvokeDelegate(e2, r2), "throw" === r2.method) || "return" !== n2 && (r2.method = "throw", r2.arg = new TypeError("The iterator does not provide a '" + n2 + "' method")), y;
938
+ var i2 = tryCatch(o2, e2.iterator, r2.arg);
939
+ if ("throw" === i2.type) return r2.method = "throw", r2.arg = i2.arg, r2.delegate = null, y;
940
+ var a2 = i2.arg;
941
+ return a2 ? a2.done ? (r2[e2.resultName] = a2.value, r2.next = e2.nextLoc, "return" !== r2.method && (r2.method = "next", r2.arg = t), r2.delegate = null, y) : a2 : (r2.method = "throw", r2.arg = new TypeError("iterator result is not an object"), r2.delegate = null, y);
942
+ }
943
+ function pushTryEntry(t2) {
944
+ var e2 = {
945
+ tryLoc: t2[0]
946
+ };
947
+ 1 in t2 && (e2.catchLoc = t2[1]), 2 in t2 && (e2.finallyLoc = t2[2], e2.afterLoc = t2[3]), this.tryEntries.push(e2);
948
+ }
949
+ function resetTryEntry(t2) {
950
+ var e2 = t2.completion || {};
951
+ e2.type = "normal", delete e2.arg, t2.completion = e2;
952
+ }
953
+ function Context(t2) {
954
+ this.tryEntries = [{
955
+ tryLoc: "root"
956
+ }], t2.forEach(pushTryEntry, this), this.reset(true);
957
+ }
958
+ function values(e2) {
959
+ if (e2 || "" === e2) {
960
+ var r2 = e2[a];
961
+ if (r2) return r2.call(e2);
962
+ if ("function" == typeof e2.next) return e2;
963
+ if (!isNaN(e2.length)) {
964
+ var o2 = -1, i2 = function next() {
965
+ for (; ++o2 < e2.length; ) if (n.call(e2, o2)) return next.value = e2[o2], next.done = false, next;
966
+ return next.value = t, next.done = true, next;
967
+ };
968
+ return i2.next = i2;
969
+ }
970
+ }
971
+ throw new TypeError(typeof e2 + " is not iterable");
972
+ }
973
+ return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
974
+ value: GeneratorFunctionPrototype,
975
+ configurable: true
976
+ }), o(GeneratorFunctionPrototype, "constructor", {
977
+ value: GeneratorFunction,
978
+ configurable: true
979
+ }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function(t2) {
980
+ var e2 = "function" == typeof t2 && t2.constructor;
981
+ return !!e2 && (e2 === GeneratorFunction || "GeneratorFunction" === (e2.displayName || e2.name));
982
+ }, e.mark = function(t2) {
983
+ return Object.setPrototypeOf ? Object.setPrototypeOf(t2, GeneratorFunctionPrototype) : (t2.__proto__ = GeneratorFunctionPrototype, define(t2, u, "GeneratorFunction")), t2.prototype = Object.create(g), t2;
984
+ }, e.awrap = function(t2) {
985
+ return {
986
+ __await: t2
987
+ };
988
+ }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function() {
989
+ return this;
990
+ }), e.AsyncIterator = AsyncIterator, e.async = function(t2, r2, n2, o2, i2) {
991
+ undefined === i2 && (i2 = Promise);
992
+ var a2 = new AsyncIterator(wrap(t2, r2, n2, o2), i2);
993
+ return e.isGeneratorFunction(r2) ? a2 : a2.next().then(function(t3) {
994
+ return t3.done ? t3.value : a2.next();
995
+ });
996
+ }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function() {
997
+ return this;
998
+ }), define(g, "toString", function() {
999
+ return "[object Generator]";
1000
+ }), e.keys = function(t2) {
1001
+ var e2 = Object(t2), r2 = [];
1002
+ for (var n2 in e2) r2.push(n2);
1003
+ return r2.reverse(), function next() {
1004
+ for (; r2.length; ) {
1005
+ var t3 = r2.pop();
1006
+ if (t3 in e2) return next.value = t3, next.done = false, next;
1007
+ }
1008
+ return next.done = true, next;
1009
+ };
1010
+ }, e.values = values, Context.prototype = {
1011
+ constructor: Context,
1012
+ reset: function(e2) {
1013
+ if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = false, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e2) for (var r2 in this) "t" === r2.charAt(0) && n.call(this, r2) && !isNaN(+r2.slice(1)) && (this[r2] = t);
1014
+ },
1015
+ stop: function() {
1016
+ this.done = true;
1017
+ var t2 = this.tryEntries[0].completion;
1018
+ if ("throw" === t2.type) throw t2.arg;
1019
+ return this.rval;
1020
+ },
1021
+ dispatchException: function(e2) {
1022
+ if (this.done) throw e2;
1023
+ var r2 = this;
1024
+ function handle(n2, o3) {
1025
+ return a2.type = "throw", a2.arg = e2, r2.next = n2, o3 && (r2.method = "next", r2.arg = t), !!o3;
1026
+ }
1027
+ for (var o2 = this.tryEntries.length - 1; o2 >= 0; --o2) {
1028
+ var i2 = this.tryEntries[o2], a2 = i2.completion;
1029
+ if ("root" === i2.tryLoc) return handle("end");
1030
+ if (i2.tryLoc <= this.prev) {
1031
+ var c2 = n.call(i2, "catchLoc"), u2 = n.call(i2, "finallyLoc");
1032
+ if (c2 && u2) {
1033
+ if (this.prev < i2.catchLoc) return handle(i2.catchLoc, true);
1034
+ if (this.prev < i2.finallyLoc) return handle(i2.finallyLoc);
1035
+ } else if (c2) {
1036
+ if (this.prev < i2.catchLoc) return handle(i2.catchLoc, true);
1037
+ } else {
1038
+ if (!u2) throw Error("try statement without catch or finally");
1039
+ if (this.prev < i2.finallyLoc) return handle(i2.finallyLoc);
1040
+ }
1041
+ }
1042
+ }
1043
+ },
1044
+ abrupt: function(t2, e2) {
1045
+ for (var r2 = this.tryEntries.length - 1; r2 >= 0; --r2) {
1046
+ var o2 = this.tryEntries[r2];
1047
+ if (o2.tryLoc <= this.prev && n.call(o2, "finallyLoc") && this.prev < o2.finallyLoc) {
1048
+ var i2 = o2;
1049
+ break;
1050
+ }
1051
+ }
1052
+ i2 && ("break" === t2 || "continue" === t2) && i2.tryLoc <= e2 && e2 <= i2.finallyLoc && (i2 = null);
1053
+ var a2 = i2 ? i2.completion : {};
1054
+ return a2.type = t2, a2.arg = e2, i2 ? (this.method = "next", this.next = i2.finallyLoc, y) : this.complete(a2);
1055
+ },
1056
+ complete: function(t2, e2) {
1057
+ if ("throw" === t2.type) throw t2.arg;
1058
+ return "break" === t2.type || "continue" === t2.type ? this.next = t2.arg : "return" === t2.type ? (this.rval = this.arg = t2.arg, this.method = "return", this.next = "end") : "normal" === t2.type && e2 && (this.next = e2), y;
1059
+ },
1060
+ finish: function(t2) {
1061
+ for (var e2 = this.tryEntries.length - 1; e2 >= 0; --e2) {
1062
+ var r2 = this.tryEntries[e2];
1063
+ if (r2.finallyLoc === t2) return this.complete(r2.completion, r2.afterLoc), resetTryEntry(r2), y;
1064
+ }
1065
+ },
1066
+ catch: function(t2) {
1067
+ for (var e2 = this.tryEntries.length - 1; e2 >= 0; --e2) {
1068
+ var r2 = this.tryEntries[e2];
1069
+ if (r2.tryLoc === t2) {
1070
+ var n2 = r2.completion;
1071
+ if ("throw" === n2.type) {
1072
+ var o2 = n2.arg;
1073
+ resetTryEntry(r2);
1074
+ }
1075
+ return o2;
1076
+ }
1077
+ }
1078
+ throw Error("illegal catch attempt");
1079
+ },
1080
+ delegateYield: function(e2, r2, n2) {
1081
+ return this.delegate = {
1082
+ iterator: values(e2),
1083
+ resultName: r2,
1084
+ nextLoc: n2
1085
+ }, "next" === this.method && (this.arg = t), y;
1086
+ }
1087
+ }, e;
1088
+ }
1089
+ var LogLevel = {
1090
+ DEBUG: "debug",
1091
+ INFO: "info",
1092
+ WARN: "warn",
1093
+ ERROR: "error",
1094
+ NONE: "silent"
1095
+ };
1096
+ var Logger = /* @__PURE__ */ function() {
1097
+ function Logger2(options) {
1098
+ if (options === undefined) {
1099
+ options = {};
1100
+ }
1101
+ this.logger = undefined;
1102
+ this.transports = undefined;
1103
+ this.transports = options.transports || {};
1104
+ this.logger = pino({
1105
+ name: options.name || "app",
1106
+ level: options.level || LogLevel.INFO
1107
+ }, pino.multistream([].concat(Object.entries(this.transports).map(function(_ref2) {
1108
+ var transport = _ref2[1];
1109
+ return {
1110
+ stream: transport,
1111
+ level: options.level || LogLevel.INFO
1112
+ };
1113
+ }), [{
1114
+ stream: pretty({
1115
+ colorize: true,
1116
+ levelFirst: true,
1117
+ ignore: "pid,hostname",
1118
+ colorizeObjects: true,
1119
+ translateTime: "SYS:standard",
1120
+ singleLine: false
1121
+ }),
1122
+ level: options.level || LogLevel.INFO
1123
+ }])));
1124
+ }
1125
+ var _proto2 = Logger2.prototype;
1126
+ _proto2.debug = function debug2(message, args) {
1127
+ if (args === undefined) {
1128
+ args = {};
1129
+ }
1130
+ this.logger.debug(args, message);
1131
+ };
1132
+ _proto2.info = function info2(message, args) {
1133
+ if (args === undefined) {
1134
+ args = {};
1135
+ }
1136
+ this.logger.info(args, message);
1137
+ };
1138
+ _proto2.warn = function warn2(message, args) {
1139
+ if (args === undefined) {
1140
+ args = {};
1141
+ }
1142
+ this.logger.warn(args, message);
1143
+ };
1144
+ _proto2.error = function error2(message, args) {
1145
+ if (args === undefined) {
1146
+ args = {};
1147
+ }
1148
+ this.logger.error(args, message);
1149
+ };
1150
+ _proto2.createStream = function createStream() {
1151
+ var _this = this;
1152
+ return new Transform({
1153
+ transform: function transform(chunk, _encoding, callback) {
1154
+ var line = chunk.toString().trim();
1155
+ if (line) {
1156
+ _this.info(line);
1157
+ }
1158
+ callback(null, chunk);
1159
+ }
1160
+ });
1161
+ };
1162
+ _proto2.getLogs = /* @__PURE__ */ function() {
1163
+ var _getLogs2 = /* @__PURE__ */ _asyncToGenerator(/* @__PURE__ */ _regeneratorRuntime().mark(function _callee3(transportId) {
1164
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
1165
+ while (1) switch (_context3.prev = _context3.next) {
1166
+ case 0:
1167
+ if (!(!transportId || !this.transports[transportId])) {
1168
+ _context3.next = 2;
1169
+ break;
1170
+ }
1171
+ return _context3.abrupt("return", []);
1172
+ case 2:
1173
+ return _context3.abrupt("return", this.transports[transportId].getLogs());
1174
+ case 3:
1175
+ case "end":
1176
+ return _context3.stop();
1177
+ }
1178
+ }, _callee3, this);
1179
+ }));
1180
+ function getLogs(_x2) {
1181
+ return _getLogs2.apply(this, arguments);
1182
+ }
1183
+ return getLogs;
1184
+ }();
1185
+ _proto2.getLogsByRunId = /* @__PURE__ */ function() {
1186
+ var _getLogsByRunId2 = /* @__PURE__ */ _asyncToGenerator(/* @__PURE__ */ _regeneratorRuntime().mark(function _callee4(_ref3) {
1187
+ var _this$transports$tran;
1188
+ var runId, transportId;
1189
+ return _regeneratorRuntime().wrap(function _callee4$(_context4) {
1190
+ while (1) switch (_context4.prev = _context4.next) {
1191
+ case 0:
1192
+ runId = _ref3.runId, transportId = _ref3.transportId;
1193
+ return _context4.abrupt("return", (_this$transports$tran = this.transports[transportId]) == null ? undefined : _this$transports$tran.getLogsByRunId({
1194
+ runId
1195
+ }));
1196
+ case 2:
1197
+ case "end":
1198
+ return _context4.stop();
1199
+ }
1200
+ }, _callee4, this);
1201
+ }));
1202
+ function getLogsByRunId(_x3) {
1203
+ return _getLogsByRunId2.apply(this, arguments);
1204
+ }
1205
+ return getLogsByRunId;
1206
+ }();
1207
+ return Logger2;
1208
+ }();
1209
+ function createLogger(options) {
1210
+ return new Logger(options);
1211
+ }
1212
+
1213
+ var DepsService = class {
1214
+ packageManager;
768
1215
  constructor() {
769
1216
  this.packageManager = this.getPackageManager();
770
1217
  }
771
1218
  findLockFile(dir) {
772
- const lockFiles = ["pnpm-lock.yaml", "package-lock.json", "yarn.lock"];
1219
+ const lockFiles = ["pnpm-lock.yaml", "package-lock.json", "yarn.lock", "bun.lock"];
773
1220
  for (const file of lockFiles) {
774
- if (fs__default.existsSync(path.join(dir, file))) {
1221
+ if (fs3__default__default.existsSync(path.join(dir, file))) {
775
1222
  return file;
776
1223
  }
777
1224
  }
@@ -790,6 +1237,8 @@ class DepsService {
790
1237
  return "npm";
791
1238
  case "yarn.lock":
792
1239
  return "yarn";
1240
+ case "bun.lock":
1241
+ return "bun";
793
1242
  default:
794
1243
  return "npm";
795
1244
  }
@@ -812,11 +1261,11 @@ class DepsService {
812
1261
  try {
813
1262
  const packageJsonPath = path.join(process.cwd(), "package.json");
814
1263
  try {
815
- await fs$1.access(packageJsonPath);
1264
+ await fs4.access(packageJsonPath);
816
1265
  } catch {
817
1266
  return "No package.json file found in the current directory";
818
1267
  }
819
- const packageJson = JSON.parse(await fs$1.readFile(packageJsonPath, "utf-8"));
1268
+ const packageJson = JSON.parse(await fs4.readFile(packageJsonPath, "utf-8"));
820
1269
  for (const dependency of dependencies) {
821
1270
  if (!packageJson.dependencies || !packageJson.dependencies[dependency]) {
822
1271
  return `Please install ${dependency} before running this command (${this.packageManager} install ${dependency})`;
@@ -831,7 +1280,7 @@ class DepsService {
831
1280
  async getProjectName() {
832
1281
  try {
833
1282
  const packageJsonPath = path.join(process.cwd(), "package.json");
834
- const packageJson = await fs$1.readFile(packageJsonPath, "utf-8");
1283
+ const packageJson = await fs4.readFile(packageJsonPath, "utf-8");
835
1284
  const pkg = JSON.parse(packageJson);
836
1285
  return pkg.name;
837
1286
  } catch (err) {
@@ -841,49 +1290,49 @@ class DepsService {
841
1290
  async getPackageVersion() {
842
1291
  const __filename = fileURLToPath(import.meta.url);
843
1292
  const __dirname = dirname(__filename);
844
- const pkgJsonPath = path.join(__dirname, "..", "..", "package.json");
845
- const content = await fsExtra.readJSON(pkgJsonPath);
1293
+ const pkgJsonPath = path.join(__dirname, "..", "package.json");
1294
+ const content = await fsExtra3.readJSON(pkgJsonPath);
846
1295
  return content.version;
847
1296
  }
848
1297
  async addScriptsToPackageJson(scripts) {
849
- const packageJson = JSON.parse(await fs$1.readFile("package.json", "utf-8"));
1298
+ const packageJson = JSON.parse(await fs4.readFile("package.json", "utf-8"));
850
1299
  packageJson.scripts = {
851
1300
  ...packageJson.scripts,
852
1301
  ...scripts
853
1302
  };
854
- await fs$1.writeFile("package.json", JSON.stringify(packageJson, null, 2));
1303
+ await fs4.writeFile("package.json", JSON.stringify(packageJson, null, 2));
855
1304
  }
856
- }
857
-
858
- class EnvService {
859
- }
860
-
861
- class FileEnvService extends EnvService {
1305
+ };
1306
+ var EnvService = class {
1307
+ };
1308
+ var FileEnvService = class extends EnvService {
1309
+ filePath;
862
1310
  constructor(filePath) {
863
1311
  super();
864
1312
  this.filePath = filePath;
865
1313
  }
866
1314
  readFile(filePath) {
867
1315
  return new Promise((resolve, reject) => {
868
- fs.readFile(filePath, "utf8", (err, data) => {
869
- if (err)
870
- reject(err);
871
- else
872
- resolve(data);
1316
+ fs3__default.readFile(filePath, "utf8", (err, data) => {
1317
+ if (err) reject(err);
1318
+ else resolve(data);
873
1319
  });
874
1320
  });
875
1321
  }
876
1322
  writeFile({ filePath, data }) {
877
1323
  return new Promise((resolve, reject) => {
878
- fs.writeFile(filePath, data, "utf8", (err) => {
879
- if (err)
880
- reject(err);
881
- else
882
- resolve();
1324
+ fs3__default.writeFile(filePath, data, "utf8", (err) => {
1325
+ if (err) reject(err);
1326
+ else resolve();
883
1327
  });
884
1328
  });
885
1329
  }
886
- async updateEnvData({ key, value, filePath = this.filePath, data }) {
1330
+ async updateEnvData({
1331
+ key,
1332
+ value,
1333
+ filePath = this.filePath,
1334
+ data
1335
+ }) {
887
1336
  const regex = new RegExp(`^${key}=.*$`, "m");
888
1337
  if (data.match(regex)) {
889
1338
  data = data.replace(regex, `${key}=${value}`);
@@ -914,9 +1363,8 @@ ${key}=${value}`;
914
1363
  console.error(`Error writing ENV value: ${err}`);
915
1364
  }
916
1365
  }
917
- }
918
-
919
- class FileService {
1366
+ };
1367
+ var FileService = class {
920
1368
  /**
921
1369
  *
922
1370
  * @param inputFile the file in the starter files directory to copy
@@ -927,61 +1375,46 @@ class FileService {
927
1375
  async copyStarterFile(inputFile, outputFilePath, replaceIfExists) {
928
1376
  const __filename = fileURLToPath(import.meta.url);
929
1377
  const __dirname = path.dirname(__filename);
930
- const filePath = path.resolve(__dirname, "..", "starter-files", inputFile);
931
- const fileString = fs__default.readFileSync(filePath, "utf8");
932
- if (fs__default.existsSync(outputFilePath) && !replaceIfExists) {
1378
+ const filePath = path.resolve(__dirname, "templates", "starter-files", inputFile);
1379
+ const fileString = fs3__default__default.readFileSync(filePath, "utf8");
1380
+ if (fs3__default__default.existsSync(outputFilePath) && !replaceIfExists) {
933
1381
  console.log(`${outputFilePath} already exists`);
934
1382
  return false;
935
1383
  }
936
- await fsExtra.outputFile(outputFilePath, fileString);
1384
+ await fsExtra3.outputFile(outputFilePath, fileString);
937
1385
  return true;
938
1386
  }
939
1387
  async setupEnvFile({ dbUrl }) {
940
1388
  const envPath = path.join(process.cwd(), ".env.development");
941
- await fsExtra.ensureFile(envPath);
1389
+ await fsExtra3.ensureFile(envPath);
942
1390
  const fileEnvService = new FileEnvService(envPath);
943
1391
  await fileEnvService.setEnvValue("DB_URL", dbUrl);
944
1392
  }
945
1393
  getFirstExistingFile(files) {
946
1394
  for (const f of files) {
947
- if (fs__default.existsSync(f)) {
1395
+ if (fs3__default__default.existsSync(f)) {
948
1396
  return f;
949
1397
  }
950
1398
  }
951
1399
  throw new Error("Missing required file, checked the following paths: " + files.join(", "));
952
1400
  }
953
- replaceValuesInFile({ filePath, replacements }) {
954
- let fileContent = fs__default.readFileSync(filePath, "utf8");
1401
+ replaceValuesInFile({
1402
+ filePath,
1403
+ replacements
1404
+ }) {
1405
+ let fileContent = fs3__default__default.readFileSync(filePath, "utf8");
955
1406
  replacements.forEach(({ search, replace }) => {
956
1407
  fileContent = fileContent.replaceAll(search, replace);
957
1408
  });
958
- fs__default.writeFileSync(filePath, fileContent);
959
- }
960
- }
961
-
962
- const logger = {
963
- log(args) {
964
- console.log(args);
965
- },
966
- error(args) {
967
- console.log(color.red(args));
968
- },
969
- warn(args) {
970
- console.log(color.yellow(args));
971
- },
972
- info(args) {
973
- console.log(color.cyan(args));
974
- },
975
- success(args) {
976
- console.log(color.green(args));
977
- },
978
- break() {
979
- console.log("");
1409
+ fs3__default__default.writeFileSync(filePath, fileContent);
980
1410
  }
981
1411
  };
982
-
983
- const exec$1 = util.promisify(child_process.exec);
984
- const modelToConfigMap = {
1412
+ createLogger({
1413
+ name: "Mastra CLI",
1414
+ level: "debug"
1415
+ });
1416
+ var exec = util.promisify(child_process.exec);
1417
+ var modelToConfigMap = {
985
1418
  openai: { provider: "OPEN_AI", name: "gpt-4o", toolChoice: "auto" },
986
1419
  anthropic: { provider: "ANTHROPIC", name: "claude-3-5-sonnet-20241022", toolChoice: "auto" },
987
1420
  groq: { provider: "GROQ", name: "llama3-groq-70b-8192-tool-use-preview", toolChoice: "auto" }
@@ -1013,8 +1446,8 @@ export const weatherAgent = new Agent({
1013
1446
  parser: "typescript",
1014
1447
  singleQuote: true
1015
1448
  });
1016
- await fs$1.writeFile(destPath, "");
1017
- await fs$1.writeFile(destPath, formattedContent);
1449
+ await fs4.writeFile(destPath, "");
1450
+ await fs4.writeFile(destPath, formattedContent);
1018
1451
  }
1019
1452
  async function writeWorkflowSample(destPath) {
1020
1453
  const fileService = new FileService();
@@ -1036,46 +1469,58 @@ async function writeCodeSampleForComponents(llmprovider, component, destPath, co
1036
1469
  return "";
1037
1470
  }
1038
1471
  }
1039
- const createComponentsDir = async (dirPath, component) => {
1472
+ var createComponentsDir = async (dirPath, component) => {
1040
1473
  const componentPath = dirPath + `/${component}`;
1041
- await fsExtra.ensureDir(componentPath);
1474
+ await fsExtra3.ensureDir(componentPath);
1042
1475
  };
1043
- const writeIndexFile = async ({ dirPath, addAgent, addExample, addWorkflow }) => {
1476
+ var writeIndexFile = async ({
1477
+ dirPath,
1478
+ addAgent,
1479
+ addExample,
1480
+ addWorkflow
1481
+ }) => {
1044
1482
  const indexPath = dirPath + "/index.ts";
1045
1483
  const destPath = path.join(indexPath);
1046
1484
  try {
1047
- await fs$1.writeFile(destPath, "");
1485
+ await fs4.writeFile(destPath, "");
1048
1486
  const filteredExports = [
1049
1487
  addWorkflow ? `workflows: { weatherWorkflow },` : "",
1050
1488
  addAgent ? `agents: { weatherAgent },` : ""
1051
1489
  ].filter(Boolean);
1052
1490
  if (!addExample) {
1053
- await fs$1.writeFile(destPath, `
1491
+ await fs4.writeFile(
1492
+ destPath,
1493
+ `
1054
1494
  import { Mastra } from '@mastra/core';
1055
1495
 
1056
1496
  export const mastra = new Mastra()
1057
- `);
1497
+ `
1498
+ );
1058
1499
  return;
1059
1500
  }
1060
- await fs$1.writeFile(destPath, `
1061
- import { Mastra, createLogger } from '@mastra/core';
1501
+ await fs4.writeFile(
1502
+ destPath,
1503
+ `
1504
+ import { Mastra } from '@mastra/core';
1505
+ import { createLogger } from '@mastra/core/logger';
1062
1506
  ${addWorkflow ? `import { weatherWorkflow } from './workflows';` : ""}
1063
1507
  ${addAgent ? `import { weatherAgent } from './agents';` : ""}
1064
1508
 
1065
1509
  export const mastra = new Mastra({
1066
1510
  ${filteredExports.join("\n ")}
1067
1511
  logger: createLogger({
1068
- type: 'CONSOLE',
1069
- level: 'INFO',
1512
+ name: 'Mastra',
1513
+ level: 'info',
1070
1514
  }),
1071
1515
  });
1072
- `);
1516
+ `
1517
+ );
1073
1518
  } catch (err) {
1074
1519
  throw err;
1075
1520
  }
1076
1521
  };
1077
1522
  yoctoSpinner({ text: "Installing Mastra core dependencies\n" });
1078
- const getAPIKey = async (provider) => {
1523
+ var getAPIKey = async (provider) => {
1079
1524
  let key = "OPENAI_API_KEY";
1080
1525
  switch (provider) {
1081
1526
  case "anthropic":
@@ -1088,22 +1533,25 @@ const getAPIKey = async (provider) => {
1088
1533
  return key;
1089
1534
  }
1090
1535
  };
1091
- const writeAPIKey = async ({ provider, apiKey = "your-api-key" }) => {
1536
+ var writeAPIKey = async ({
1537
+ provider,
1538
+ apiKey = "your-api-key"
1539
+ }) => {
1092
1540
  const key = await getAPIKey(provider);
1093
- await exec$1(`echo ${key}=${apiKey} >> .env.development`);
1541
+ await exec(`echo ${key}=${apiKey} >> .env.development`);
1094
1542
  };
1095
- const createMastraDir = async (directory) => {
1543
+ var createMastraDir = async (directory) => {
1096
1544
  let dir = directory.trim().split("/").filter((item) => item !== "");
1097
1545
  const dirPath = path.join(process.cwd(), ...dir, "mastra");
1098
1546
  try {
1099
- await fs$1.access(dirPath);
1547
+ await fs4.access(dirPath);
1100
1548
  return { ok: false };
1101
1549
  } catch {
1102
- await fsExtra.ensureDir(dirPath);
1550
+ await fsExtra3.ensureDir(dirPath);
1103
1551
  return { ok: true, dirPath };
1104
1552
  }
1105
1553
  };
1106
- const writeCodeSample = async (dirPath, component, llmProvider, components) => {
1554
+ var writeCodeSample = async (dirPath, component, llmProvider, components) => {
1107
1555
  const destPath = dirPath + `/${component}/index.ts`;
1108
1556
  try {
1109
1557
  await writeCodeSampleForComponents(llmProvider, component, destPath, components);
@@ -1111,75 +1559,83 @@ const writeCodeSample = async (dirPath, component, llmProvider, components) => {
1111
1559
  throw err;
1112
1560
  }
1113
1561
  };
1114
- const interactivePrompt = async () => {
1115
- pe(color.inverse("Mastra Init"));
1116
- const mastraProject = await ve({
1117
- directory: () => ae({
1118
- message: "Where should we create the Mastra files? (default: src/)",
1119
- placeholder: "src/",
1120
- defaultValue: "src/"
1121
- }),
1122
- components: () => $e({
1123
- message: "Choose components to install:",
1124
- options: [
1125
- { value: "agents", label: "Agents", hint: "recommended" },
1126
- {
1127
- value: "workflows",
1128
- label: "Workflows"
1129
- }
1130
- ]
1131
- }),
1132
- shouldAddTools: () => ce({
1133
- message: "Add tools?",
1134
- initialValue: false
1135
- }),
1136
- llmProvider: () => le({
1137
- message: "Select default provider:",
1138
- options: [
1139
- { value: "openai", label: "OpenAI", hint: "recommended" },
1140
- { value: "anthropic", label: "Anthropic" },
1141
- { value: "groq", label: "Groq" }
1142
- ]
1143
- }),
1144
- llmApiKey: async ({ results: { llmProvider } }) => {
1145
- const keyChoice = await le({
1146
- message: `Enter your ${llmProvider} API key?`,
1562
+ var interactivePrompt = async () => {
1563
+ pe(color2.inverse("Mastra Init"));
1564
+ const mastraProject = await ve(
1565
+ {
1566
+ directory: () => ae({
1567
+ message: "Where should we create the Mastra files? (default: src/)",
1568
+ placeholder: "src/",
1569
+ defaultValue: "src/"
1570
+ }),
1571
+ components: () => $e({
1572
+ message: "Choose components to install:",
1147
1573
  options: [
1148
- { value: "skip", label: "Skip for now", hint: "default" },
1149
- { value: "enter", label: "Enter API key" }
1150
- ],
1151
- initialValue: "skip"
1152
- });
1153
- if (keyChoice === "enter") {
1154
- return ae({
1155
- message: "Enter your API key:",
1156
- placeholder: "sk-..."
1574
+ { value: "agents", label: "Agents", hint: "recommended" },
1575
+ {
1576
+ value: "workflows",
1577
+ label: "Workflows"
1578
+ }
1579
+ ]
1580
+ }),
1581
+ shouldAddTools: () => ce({
1582
+ message: "Add tools?",
1583
+ initialValue: false
1584
+ }),
1585
+ llmProvider: () => le({
1586
+ message: "Select default provider:",
1587
+ options: [
1588
+ { value: "openai", label: "OpenAI", hint: "recommended" },
1589
+ { value: "anthropic", label: "Anthropic" },
1590
+ { value: "groq", label: "Groq" }
1591
+ ]
1592
+ }),
1593
+ llmApiKey: async ({ results: { llmProvider } }) => {
1594
+ const keyChoice = await le({
1595
+ message: `Enter your ${llmProvider} API key?`,
1596
+ options: [
1597
+ { value: "skip", label: "Skip for now", hint: "default" },
1598
+ { value: "enter", label: "Enter API key" }
1599
+ ],
1600
+ initialValue: "skip"
1157
1601
  });
1158
- }
1159
- return undefined;
1602
+ if (keyChoice === "enter") {
1603
+ return ae({
1604
+ message: "Enter your API key:",
1605
+ placeholder: "sk-..."
1606
+ });
1607
+ }
1608
+ return undefined;
1609
+ },
1610
+ addExample: () => ce({
1611
+ message: "Add example",
1612
+ initialValue: false
1613
+ })
1160
1614
  },
1161
- addExample: () => ce({
1162
- message: "Add example",
1163
- initialValue: false
1164
- })
1165
- }, {
1166
- onCancel: () => {
1167
- he("Operation cancelled.");
1168
- process.exit(0);
1615
+ {
1616
+ onCancel: () => {
1617
+ he("Operation cancelled.");
1618
+ process.exit(0);
1619
+ }
1169
1620
  }
1170
- });
1621
+ );
1171
1622
  const { shouldAddTools, components, ...rest } = mastraProject;
1172
1623
  const mastraComponents = shouldAddTools ? [...components, "tools"] : components;
1173
1624
  return { ...rest, components: mastraComponents };
1174
1625
  };
1175
-
1176
- const s = _();
1177
- const init = async ({ directory, addExample = false, components, llmProvider = "openai", llmApiKey }) => {
1626
+ var s = _();
1627
+ var init = async ({
1628
+ directory,
1629
+ addExample = false,
1630
+ components,
1631
+ llmProvider = "openai",
1632
+ llmApiKey
1633
+ }) => {
1178
1634
  s.start("Initializing Mastra");
1179
1635
  try {
1180
1636
  const result = await createMastraDir(directory);
1181
1637
  if (!result.ok) {
1182
- s.stop(color.inverse(" Mastra already initialized "));
1638
+ s.stop(color2.inverse(" Mastra already initialized "));
1183
1639
  return { success: false };
1184
1640
  }
1185
1641
  const dirPath = result.dirPath;
@@ -1195,34 +1651,35 @@ const init = async ({ directory, addExample = false, components, llmProvider = "
1195
1651
  ]);
1196
1652
  if (addExample) {
1197
1653
  await Promise.all([
1198
- components.map((component) => writeCodeSample(dirPath, component, llmProvider, components))
1654
+ components.map(
1655
+ (component) => writeCodeSample(dirPath, component, llmProvider, components)
1656
+ )
1199
1657
  ]);
1200
1658
  }
1201
1659
  const key = await getAPIKey(llmProvider || "openai");
1202
1660
  s.stop();
1203
1661
  if (!llmApiKey) {
1204
1662
  me(`
1205
- ${color.green("Mastra initialized successfully!")}
1663
+ ${color2.green("Mastra initialized successfully!")}
1206
1664
 
1207
- Add your ${color.cyan(key)} as an environment variable
1208
- in your ${color.cyan(".env.development")} file
1665
+ Add your ${color2.cyan(key)} as an environment variable
1666
+ in your ${color2.cyan(".env.development")} file
1209
1667
  `);
1210
1668
  } else {
1211
1669
  me(`
1212
- ${color.green("Mastra initialized successfully!")}
1670
+ ${color2.green("Mastra initialized successfully!")}
1213
1671
  `);
1214
1672
  }
1215
1673
  return { success: true };
1216
1674
  } catch (err) {
1217
- s.stop(color.inverse("An error occurred while initializing Mastra"));
1675
+ s.stop(color2.inverse("An error occurred while initializing Mastra"));
1218
1676
  console.error(err);
1219
1677
  return { success: false };
1220
1678
  }
1221
1679
  };
1222
-
1223
- const exec = util.promisify(child_process.exec);
1224
- const createMastraProject = async () => {
1225
- pe(color.inverse("Mastra Create"));
1680
+ var exec2 = util.promisify(child_process.exec);
1681
+ var createMastraProject = async () => {
1682
+ pe(color2.inverse("Mastra Create"));
1226
1683
  const projectName = await ae({
1227
1684
  message: "What do you want to name your project?",
1228
1685
  placeholder: "my-mastra-app",
@@ -1232,46 +1689,61 @@ const createMastraProject = async () => {
1232
1689
  he("Operation cancelled");
1233
1690
  process.exit(0);
1234
1691
  }
1235
- const s = _();
1236
- s.start("Creating project");
1692
+ const s2 = _();
1693
+ s2.start("Creating project");
1237
1694
  try {
1238
- await fs$1.mkdir(projectName);
1695
+ await fs4.mkdir(projectName);
1239
1696
  } catch (error) {
1240
1697
  if (error instanceof Error && "code" in error && error.code === "EEXIST") {
1241
- s.stop(`A directory named "${projectName}" already exists. Please choose a different name or delete the existing directory.`);
1698
+ s2.stop(
1699
+ `A directory named "${projectName}" already exists. Please choose a different name or delete the existing directory.`
1700
+ );
1242
1701
  process.exit(1);
1243
1702
  }
1244
1703
  throw error;
1245
1704
  }
1246
1705
  process.chdir(projectName);
1247
- s.message("Creating project");
1248
- await exec(`npm init -y`);
1706
+ s2.message("Creating project");
1707
+ await exec2(`npm init -y`);
1249
1708
  const depsService = new DepsService();
1250
1709
  await depsService.addScriptsToPackageJson({
1251
1710
  dev: "mastra dev"
1252
1711
  });
1253
- s.stop("Project created");
1254
- s.start("Installing npm dependencies");
1255
- await exec(`npm i zod`);
1256
- await exec(`npm i typescript tsx @types/node --save-dev`);
1257
- s.stop("NPM dependencies installed");
1258
- s.start("Installing mastra");
1259
- await exec(`npm i -D mastra`);
1260
- s.stop("mastra installed");
1261
- s.start("Installing @mastra/core");
1262
- await exec(`npm i @mastra/core@alpha`);
1263
- s.stop("@mastra/core installed");
1264
- s.start("Adding .gitignore");
1265
- await exec(`echo output.txt >> .gitignore`);
1266
- await exec(`echo node_modules >> .gitignore`);
1267
- await exec(`echo dist >> .gitignore`);
1268
- s.stop(".gitignore added");
1712
+ s2.stop("Project created");
1713
+ s2.start("Installing npm dependencies");
1714
+ await exec2(`npm i zod`);
1715
+ await exec2(`npm i typescript tsx @types/node --save-dev`);
1716
+ await exec2(`echo '{
1717
+ "compilerOptions": {
1718
+ "target": "es2016",
1719
+ "module": "commonjs",
1720
+ "esModuleInterop": true,
1721
+ "forceConsistentCasingInFileNames": true,
1722
+ "strict": true,
1723
+ "skipLibCheck": true,
1724
+ "outDir": "dist"
1725
+ },
1726
+ "include": ["src/**/*"],
1727
+ "exclude": ["node_modules", "dist", ".mastra"]
1728
+ }' > tsconfig.json`);
1729
+ s2.stop("NPM dependencies installed");
1730
+ s2.start("Installing mastra");
1731
+ await exec2(`npm i -D mastra`);
1732
+ s2.stop("mastra installed");
1733
+ s2.start("Installing @mastra/core");
1734
+ await exec2(`npm i @mastra/core@alpha`);
1735
+ s2.stop("@mastra/core installed");
1736
+ s2.start("Adding .gitignore");
1737
+ await exec2(`echo output.txt >> .gitignore`);
1738
+ await exec2(`echo node_modules >> .gitignore`);
1739
+ await exec2(`echo dist >> .gitignore`);
1740
+ await exec2(`echo .mastra >> .gitignore`);
1741
+ s2.stop(".gitignore added");
1269
1742
  ge("Project created successfully");
1270
- logger.break();
1743
+ console.log("");
1271
1744
  return { projectName };
1272
1745
  };
1273
-
1274
- const create = async (args) => {
1746
+ var create = async (args) => {
1275
1747
  const { projectName } = await createMastraProject();
1276
1748
  const directory = "/src";
1277
1749
  if (!args.components || !args.llmProvider || !args.addExample) {
@@ -1293,12 +1765,12 @@ const create = async (args) => {
1293
1765
  });
1294
1766
  postCreate({ projectName });
1295
1767
  };
1296
- const postCreate = ({ projectName }) => {
1768
+ var postCreate = ({ projectName }) => {
1297
1769
  ge(`
1298
- ${color.green("To start your project:")}
1770
+ ${color2.green("To start your project:")}
1299
1771
 
1300
- ${color.cyan("cd")} ${projectName}
1301
- ${color.cyan("npm run dev")}
1772
+ ${color2.cyan("cd")} ${projectName}
1773
+ ${color2.cyan("npm run dev")}
1302
1774
  `);
1303
1775
  };
1304
1776
 
@@ -1306,7 +1778,7 @@ async function getPackageVersion() {
1306
1778
  const __filename = fileURLToPath(import.meta.url);
1307
1779
  const __dirname = dirname(__filename);
1308
1780
  const pkgJsonPath = path.join(__dirname, "..", "package.json");
1309
- const content = await fsExtra$1.readJSON(pkgJsonPath);
1781
+ const content = await fsExtra.readJSON(pkgJsonPath);
1310
1782
  return content.version;
1311
1783
  }
1312
1784